Index: creativecommons.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/creativecommons/creativecommons.module,v
retrieving revision 1.9.2.90
diff -u -p -r1.9.2.90 creativecommons.module
--- creativecommons.module	31 Jan 2011 04:01:29 -0000	1.9.2.90
+++ creativecommons.module	3 Feb 2011 00:25:06 -0000
@@ -1761,6 +1761,11 @@ function creativecommons_view($node, $te
  * Implementation of hook_link().
  */
 function creativecommons_link($type, $node = NULL, $teaser = FALSE) {
+  // Check for redundant site license
+  if (_creativecommons_redundant_site_license($node)) {
+    return;
+  }
+
   $links = array();
 
   if ($type == 'node') {
@@ -1813,10 +1818,7 @@ function creativecommons_block($op='list
           if ($node = menu_get_object()) {
             if (isset($node->cc) && $node->cc->is_available()) {
               // Check for redundant site license
-              $site_license_display = variable_get('creativecommons_site_license_display', FALSE);
-              $site_license = creativecommons_get_site_license();
-              $redundant_display = variable_get('creativecommons_node_license_redundant_display', TRUE);
-              if ($site_license_display && !$redundant_display && $node->cc->uri == $site_license->uri) {
+              if (_creativecommons_redundant_site_license($node)) {
                 return;
               }
 
@@ -2359,3 +2361,26 @@ function creativecommons_token_values($t
   }
   return $values;
 }
+
+/**
+ * Checks whether a node license is redundant.
+ *
+ * Determines if node license is redundant with respect
+ * to the site license.
+ *
+ * @param $node
+ *   the node to test for a redundant site license
+ *
+ * @return
+ *   TRUE  if node license matches the site license
+ *   FALSE if node license differs from the site license
+ */
+function _creativecommons_redundant_site_license($node) {
+  $site_license_display = variable_get('creativecommons_site_license_display', FALSE);
+  $site_license = creativecommons_get_site_license();
+  $redundant_display = variable_get('creativecommons_node_license_redundant_display', TRUE);
+  if ($site_license_display && !$redundant_display && $node->cc->uri == $site_license->uri) {
+    return true;
+  }
+  else return false;
+}
