Index: terms_of_use.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/terms_of_use/terms_of_use.module,v
retrieving revision 1.1.2.7
diff -u -p -r1.1.2.7 terms_of_use.module
--- terms_of_use.module	6 Jun 2008 21:19:27 -0000	1.1.2.7
+++ terms_of_use.module	20 Mar 2009 08:48:10 -0000
@@ -85,7 +85,7 @@ function terms_of_use_admin_settings() {
     '#type' => 'textfield',
     '#title' => t('Label for the ckeckbox'),
     '#default_value' => variable_get('terms_of_use_checkbox_label', t('I agree with these terms.')),
-    '#description' => t('Type here something like "I agree with these terms." or "I CERTIFY THAT I AM OVER THE AGE OF 18 YEARS OLD.", without quotes.'),
+    '#description' => t('Type here something like "I agree with these terms." or "I CERTIFY THAT I AM OVER THE AGE OF 18 YEARS OLD.", without quotes. Use @link to create a link to the terms of use in the checkbox label instead of adding the full text on the form.'),
   );
 
   return system_settings_form($form);
@@ -142,9 +142,16 @@ function terms_of_use_form_user_register
   if ($node) {
     // Adding the Terms of Use to the fieldset.
     $terms = node_prepare($node);
-    $form['terms_of_use']['terms_of_use_text'] = array(
-      '#value' => theme('terms_of_use', $terms->body, $node),
-    );
+    if (strpos($str_agree, '@link') !== FALSE) {
+      // Add a link to the terms of use inside of the checkbox label.
+      $str_agree = str_replace('@link', l($node->title, 'node/'. $node->nid), $str_agree);
+    }
+    else {
+      // Display the terms of use directly on the form.
+      $form['terms_of_use']['terms_of_use_text'] = array(
+          '#value' => theme('terms_of_use', $terms->body, $node),
+      );
+    }
   }
 
   // Adding the checkbox to the fieldset.
