Index: CHANGELOG.txt
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/adsense_injector/CHANGELOG.txt,v
retrieving revision 1.1.2.1.2.7
retrieving revision 1.1.4.4.2.5
diff -u -p -w -b -B -r1.1.2.1.2.7 -r1.1.4.4.2.5
--- CHANGELOG.txt	17 Dec 2008 02:05:23 -0000	1.1.2.1.2.7
+++ CHANGELOG.txt	17 Dec 2008 02:04:44 -0000	1.1.4.4.2.5
@@ -1,7 +1,27 @@
-// $Id: CHANGELOG.txt,v 1.1.2.1.2.7 2008/12/17 02:05:23 hswong3i Exp $
+// $Id: CHANGELOG.txt,v 1.1.4.4.2.5 2008/12/17 02:04:44 hswong3i Exp $
 
-AdSense Injector 5.x-2.x-dev, xxxx-xx-xx (development version)
+AdSense Injector 6.x-2.x-dev, xxxx-xx-xx (development version)
 ----------------------
+- simplify legacy _adsense_injector_count_words().
+- simplify legacy _adsense_injector_minwords_cfg().
+
+AdSense Injector 6.x-2.6-rc1, 2008-12-16
+----------------------
+- completely upgrade and port to D6.
+- version number starting with 2.6 (sync with D5).
+- tested with adsense 6.x-1.0-beta3.
+- renew hook_menu(). D6 coming with new implementation.
+- watchdog() no longer require for t().
+- hook_nodeapi() coming with new implementation for D6.
+- split admin related hook_settings() to adsense_injector.admin.inc.
+- retouch adsense_injector.info so group this module with Adsense.
+- coding style cleanup.
+- validate code with coder module.
+- add more documentation.
+- clean up license and developer information.
+- document project owner and co-maintainer.
+- remove legacy admin setting paypal banner.
+- remove legacy _dbg().
 
 AdSense Injector 5.x-2.6, 2008-12-16
 ----------------------
Index: LICENSE.txt
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/adsense_injector/LICENSE.txt,v
retrieving revision 1.1.2.1
retrieving revision 1.1.4.2
diff -u -p -w -b -B -r1.1.2.1 -r1.1.4.2
--- LICENSE.txt	16 Dec 2008 08:16:56 -0000	1.1.2.1
+++ LICENSE.txt	16 Dec 2008 08:18:18 -0000	1.1.4.2
@@ -1,4 +1,4 @@
-// $Id: LICENSE.txt,v 1.1.2.1 2008/12/16 08:16:56 hswong3i Exp $
+// $Id: LICENSE.txt,v 1.1.4.2 2008/12/16 08:18:18 hswong3i Exp $
 
         GNU GENERAL PUBLIC LICENSE
            Version 2, June 1991
Index: README.txt
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/adsense_injector/README.txt,v
retrieving revision 1.1.2.1.2.2
retrieving revision 1.1.4.3
diff -u -p -w -b -B -r1.1.2.1.2.2 -r1.1.4.3
--- README.txt	16 Dec 2008 08:50:57 -0000	1.1.2.1.2.2
+++ README.txt	16 Dec 2008 08:59:55 -0000	1.1.4.3
@@ -1,4 +1,4 @@
-// $Id: README.txt,v 1.1.2.1.2.2 2008/12/16 08:50:57 hswong3i Exp $
+// $Id: README.txt,v 1.1.4.3 2008/12/16 08:59:55 hswong3i Exp $
 
 ABOUT ADSENSE INJECTOR
 ----------------------
Index: adsense_injector.admin.inc
===================================================================
RCS file: adsense_injector.admin.inc
diff -N adsense_injector.admin.inc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ adsense_injector.admin.inc	16 Dec 2008 09:25:58 -0000	1.1.2.3
@@ -0,0 +1,116 @@
+<?php
+// $Id: adsense_injector.admin.inc,v 1.1.2.3 2008/12/16 09:25:58 hswong3i Exp $
+
+/**
+ * @file
+ * Administrative page callbacks for the adsense_injector module.
+ */
+
+/**
+ * Implementation of hook_settings().
+ */
+function adsense_injector_admin_settings() {
+  $form = array();
+
+  $form['node_ad_body_insertion'] = array(
+    '#type' => 'fieldset',
+    '#collapsible' => TRUE,
+    '#collapsed' => FALSE,
+    '#title' => t('Node body ad insertion'),
+    '#description' => t('Requires adsense.module'),
+  );
+
+  if (module_exists('adsense')) {
+    $form['node_ad_body_insertion']['adsense_injector_insert_body_ad'] = array(
+      '#type' => 'checkbox',
+      '#title' => t('Insert inline ad in node body on page views'),
+      '#default_value' => variable_get('adsense_injector_insert_body_ad', ADSENSE_INJECTOR_INSERT_BODY_AD_DEFAULT),
+      '#description' => t('Description'),
+      '#required' => FALSE,
+    );
+    $form['node_ad_body_insertion']['adsense_injector_body_minwords'] = array(
+      '#type' => 'textfield',
+      '#title' => t('Minimum node body word count'),
+      '#default_value' => variable_get('adsense_injector_body_minwords', ADSENSE_INJECTOR_BODY_MINWORDS_DEFAULT),
+      '#description' => t('The minimum node body word count threshold - only inject if node body has at least this many words.'),
+    );
+    $form['node_ad_body_insertion']['adsense_injector_body_template'] = array(
+      '#type' => 'textarea',
+      '#title' => t('Node body ad insertion template'),
+      '#rows' => 5,
+      '#cols' => 40,
+      '#default_value' => variable_get('adsense_injector_body_template', ADSENSE_INJECTOR_BODY_INSERTION_TEMPLATE_DEFAULT),
+      '#description' => t('Ad insertion template. Substitution variables: %body = full node body text. Insert adsense module filter tags. See the <a href="/admin/settings/adsense">adsense.module settings page</a> for a list of supported formats and help with filter tags.'),
+      '#required' => TRUE,
+    );
+
+    /**
+     * 'list' insertion (frontpage, taxonomy, etc).
+     */
+    $form['node_ad_list_insertion'] = array(
+      '#type' => 'fieldset',
+      '#collapsible' => TRUE,
+      '#collapsed' => FALSE,
+      '#title' => t('Node list ad insertion'),
+      '#description' => t('Ad insertion in node lists or other non-page view, like front page, taxonomy views.'),
+    );
+    $form['node_ad_list_insertion']['adsense_injector_append_in_listview'] = array(
+      '#type' => 'checkbox',
+      '#title' => t('Append an ad after teaser on frontpage and taxonomy lists'),
+      '#default_value' => variable_get('adsense_injector_append_in_listview', ADSENSE_INJECTOR_APPEND_IN_LISTVIEW_DEFAULT),
+      '#description' => t('Note: this does not currently support Views module based lists.'),
+      '#required' => FALSE,
+    );
+    $form['node_ad_list_insertion']['adsense_injector_listview_insertion_template'] = array(
+      '#type' => 'textarea',
+      '#title' => t('List ad insertion template'),
+      '#rows' => 3,
+      '#cols' => 40,
+      '#default_value' => variable_get('adsense_injector_listview_insertion_template', ADSENSE_INJECTOR_LISTVIEW_INSERTION_TEMPLATE_DEFAULT),
+      '#description' => t('Template to use when inserting adsense ad. "%teaser" will be replaced with the node teaser. Insert adsense filter tags. See the <a href="/admin/settings/adsense">adsense.module settings page</a> for a list of supported formats and help with filter tags.'),
+      '#required' => TRUE,
+    );
+
+    /**
+     * What kinds of nodes do we want to insert on...?
+     */
+    $form['injection_control'] = array(
+      '#type' => 'fieldset',
+      '#collapsible' => TRUE,
+      '#collapsed' => FALSE,
+      '#title' => t('Select Node Types for Insertion'),
+      '#description' => t('Nodes types to display inline ads - ads are inserted <strong>only</strong> in the selected node types.'),
+    );
+
+    /**
+     * Enumerate node types, and set up form fields for each.
+     */
+    $enabled_count = 0;
+    $nodetypes = array();
+    foreach (node_get_types() as $type => $obj) {
+      $nodetypes[$type] = $obj->name;
+      $enabled = variable_get(ADSENSE_INJECTOR_INSERT_AD_NODETYPE . $type, FALSE);
+      if ($enabled) $enabled_count++;
+      $form['injection_control']['node_types'][ADSENSE_INJECTOR_INSERT_AD_NODETYPE . $type] = array(
+        '#type' => 'checkbox',
+        '#title' => $obj->name,
+        '#default_value' => $enabled,
+        '#description' => t('Display inline ads on %nodetype nodes', array('%nodetype' => $obj->name)),
+        '#required' => FALSE,
+      );
+    }
+
+    // Do some sanity checking.
+    if ($enabled_count == 0) {
+      $msg = t('No node types selected (no ads will be inserted because you haven\'t selected any node types for automatic ad insertion.)');
+      $form['injection_control']['#collapsed'] = FALSE;
+      $form['injection_control']['no_nodes_enabled'] = array(
+        '#type' => 'markup',
+        '#weight' => -1,
+        '#value' => '<div id="message"><div class="messages error"><strong>'. $msg .'</strong></div></div>',
+      );
+    }
+  }
+
+  return system_settings_form($form);
+}
Index: adsense_injector.info
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/adsense_injector/adsense_injector.info,v
retrieving revision 1.1.2.4.2.1
retrieving revision 1.1.2.2.2.1.2.1
diff -u -p -w -b -B -r1.1.2.4.2.1 -r1.1.2.2.2.1.2.1
--- adsense_injector.info	16 Dec 2008 16:08:49 -0000	1.1.2.4.2.1
+++ adsense_injector.info	16 Dec 2008 16:08:30 -0000	1.1.2.2.2.1.2.1
@@ -1,6 +1,7 @@
-; $Id: adsense_injector.info,v 1.1.2.4.2.1 2008/12/16 16:08:49 hswong3i Exp $
+; $Id: adsense_injector.info,v 1.1.2.2.2.1.2.1 2008/12/16 16:08:30 hswong3i Exp $
 
 name = AdSense Injector
 description = Insert adsense ads into full-page node view, and front page or other list views automatically.
-dependencies = adsense
+dependencies[] = adsense
 package = Adsense
+core = 6.x
Index: adsense_injector.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/adsense_injector/adsense_injector.module,v
retrieving revision 1.1.2.8.2.7
retrieving revision 1.1.2.6.2.3.2.1
diff -u -p -w -b -B -r1.1.2.8.2.7 -r1.1.2.6.2.3.2.1
--- adsense_injector.module	17 Dec 2008 01:43:13 -0000	1.1.2.8.2.7
+++ adsense_injector.module	17 Dec 2008 01:42:48 -0000	1.1.2.6.2.3.2.1
@@ -1,5 +1,5 @@
 <?php
-// $Id: adsense_injector.module,v 1.1.2.8.2.7 2008/12/17 01:43:13 hswong3i Exp $
+// $Id: adsense_injector.module,v 1.1.2.6.2.3.2.1 2008/12/17 01:42:48 hswong3i Exp $
 
 /**
  * @file
@@ -28,11 +28,11 @@ define('ADSENSE_INJECTOR_INSERT_AD_NODET
  */
 function adsense_injector_nodeapi(&$node, $op, $teaser, $page) {
   // insert an ad into the body.
-  if ($op == 'view') {
+  if ($op == 'alter') {
     if (module_exists('adsense') && _adsense_page_match() && variable_get(ADSENSE_INJECTOR_INSERT_AD_NODETYPE . $node->type, FALSE)) {
       if ($page) {
         if (variable_get('adsense_injector_insert_body_ad', ADSENSE_INJECTOR_INSERT_BODY_AD_DEFAULT)) {
-          $body = $node->content['body']['#value'];
+          $body = $node->body;
           // Get the minimum node body wordcount for insertion.
           $minwords = variable_get('adsense_injector_body_minwords', ADSENSE_INJECTOR_BODY_MINWORDS_DEFAULT);
           // Count words in a string.
@@ -45,12 +45,12 @@ function adsense_injector_nodeapi(&$node
               $template = _adsense_process_tags($template);
             }
             else {
-              watchdog('adsense_injector', t('adsense module function _adsense_process_tags() not found'), WATCHDOG_ERROR);
+              watchdog('adsense_injector', 'adsense module function _adsense_process_tags() not found', WATCHDOG_ERROR);
             }
-            $node->content['body']['#value'] = strtr($template, array('%body' => $body));
+            $node->body = strtr($template, array('%body' => $body));
           }
           else {
-            $node->content['body']['#value'] = "<!-- adsense_injector: node body word count ($wordcount) is insufficient ($minwords required), so we won't insert an ad. -->". $body;
+            $node->body = "<!-- adsense_injector: node body word count ($wordcount) is insufficient ($minwords required), so we won't insert an ad. -->". $body;
           }
         }
       }
@@ -61,9 +61,9 @@ function adsense_injector_nodeapi(&$node
           $template = _adsense_process_tags($template);
         }
         else {
-          watchdog('adsense_injector', t('adsense module function _adsense_process_tags() not found'), WATCHDOG_ERROR);
+          watchdog('adsense_injector', 'adsense module function _adsense_process_tags() not found', WATCHDOG_ERROR);
         }
-        $node->content['body']['#value'] = strtr($template, array('%teaser' => $node->teaser));
+        $node->body = strtr($template, array('%teaser' => $node->teaser));
       }
     }
   }
@@ -73,124 +73,14 @@ function adsense_injector_nodeapi(&$node
  * Implementation of hook_menu().
  */
 function adsense_injector_menu() {
-  $items[] = array(
-    'path' => 'admin/settings/adsense_injector',
-    'title' => t('AdSense Injector'),
-    'description' => t('Insert Google AdSense ads into full node views automatically.'),
-    'callback' => 'drupal_get_form',
-    'callback arguments' => array('adsense_injector_admin_settings'),
-    'access' => user_access('administer site configuration'),
+  $items['admin/settings/adsense_injector'] = array(
+    'title' => 'AdSense Injector',
+    'description' => 'Insert Google AdSense ads into full node views automatically.',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('adsense_injector_admin_settings'),
+    'access arguments' => array('administer site configuration'),
+    'file' => 'adsense_injector.admin.inc',
     'type' => MENU_NORMAL_ITEM,
   );
   return $items;
 }
-
-
-/**
- * Implementation of hook_settings().
- */
-function adsense_injector_admin_settings() {
-  $form = array();
-
-  $form['node_ad_body_insertion'] = array(
-    '#type' => 'fieldset',
-    '#collapsible' => TRUE,
-    '#collapsed' => FALSE,
-    '#title' => t('Node body ad insertion'),
-    '#description' => t('Requires adsense.module'),
-  );
-
-  if (module_exists('adsense')) {
-    $form['node_ad_body_insertion']['adsense_injector_insert_body_ad'] = array(
-      '#type' => 'checkbox',
-      '#title' => t('Insert inline ad in node body on page views'),
-      '#default_value' => variable_get('adsense_injector_insert_body_ad', ADSENSE_INJECTOR_INSERT_BODY_AD_DEFAULT),
-      '#description' => t('Description'),
-      '#required' => FALSE,
-    );
-    $form['node_ad_body_insertion']['adsense_injector_body_minwords'] = array(
-      '#type' => 'textfield',
-      '#title' => t('Minimum node body word count'),
-      '#default_value' => variable_get('adsense_injector_body_minwords', ADSENSE_INJECTOR_BODY_MINWORDS_DEFAULT),
-      '#description' => t('The minimum node body word count threshold - only inject if node body has at least this many words.'),
-    );
-    $form['node_ad_body_insertion']['adsense_injector_body_template'] = array(
-      '#type' => 'textarea',
-      '#title' => t('Node body ad insertion template'),
-      '#rows' => 5,
-      '#cols' => 40,
-      '#default_value' => variable_get('adsense_injector_body_template', ADSENSE_INJECTOR_BODY_INSERTION_TEMPLATE_DEFAULT),
-      '#description' => t('Ad insertion template. Substitution variables: %body = full node body text. Insert adsense module filter tags. See the <a href="/admin/settings/adsense">adsense.module settings page</a> for a list of supported formats and help with filter tags.'),
-      '#required' => TRUE,
-    );
-
-    /**
-     * 'list' insertion (frontpage, taxonomy, etc).
-     */
-    $form['node_ad_list_insertion'] = array(
-      '#type' => 'fieldset',
-      '#collapsible' => TRUE,
-      '#collapsed' => FALSE,
-      '#title' => t('Node list ad insertion'),
-      '#description' => t('Ad insertion in node lists or other non-page view, like front page, taxonomy views.'),
-    );
-    $form['node_ad_list_insertion']['adsense_injector_append_in_listview'] = array(
-      '#type' => 'checkbox',
-      '#title' => t('Append an ad after teaser on frontpage and taxonomy lists'),
-      '#default_value' => variable_get('adsense_injector_append_in_listview', ADSENSE_INJECTOR_APPEND_IN_LISTVIEW_DEFAULT),
-      '#description' => t('Note: this does not currently support Views module based lists.'),
-      '#required' => FALSE,
-    );
-    $form['node_ad_list_insertion']['adsense_injector_listview_insertion_template'] = array(
-      '#type' => 'textarea',
-      '#title' => t('List ad insertion template'),
-      '#rows' => 3,
-      '#cols' => 40,
-      '#default_value' => variable_get('adsense_injector_listview_insertion_template', ADSENSE_INJECTOR_LISTVIEW_INSERTION_TEMPLATE_DEFAULT),
-      '#description' => t('Template to use when inserting adsense ad. "%teaser" will be replaced with the node teaser. Insert adsense filter tags. See the <a href="/admin/settings/adsense">adsense.module settings page</a> for a list of supported formats and help with filter tags.'),
-      '#required' => TRUE,
-    );
-
-    /**
-     * What kinds of nodes do we want to insert on...?
-     */
-    $form['injection_control'] = array(
-      '#type' => 'fieldset',
-      '#collapsible' => TRUE,
-      '#collapsed' => FALSE,
-      '#title' => t('Select Node Types for Insertion'),
-      '#description' => t('Nodes types to display inline ads - ads are inserted <strong>only</strong> in the selected node types.'),
-    );
-
-    /**
-     * Enumerate node types, and set up form fields for each.
-     */
-    $enabled_count = 0;
-    $nodetypes = array();
-    foreach (node_get_types() as $type => $obj) {
-      $nodetypes[$type] = $obj->name;
-      $enabled = variable_get(ADSENSE_INJECTOR_INSERT_AD_NODETYPE . $type, FALSE);
-      if ($enabled) $enabled_count++;
-      $form['injection_control']['node_types'][ADSENSE_INJECTOR_INSERT_AD_NODETYPE . $type] = array(
-        '#type' => 'checkbox',
-        '#title' => $obj->name,
-        '#default_value' => $enabled,
-        '#description' => t('Display inline ads on %nodetype nodes', array('%nodetype' => $obj->name)),
-        '#required' => FALSE,
-      );
-    }
-
-    // Do some sanity checking.
-    if ($enabled_count == 0) {
-      $msg = t('No node types selected (no ads will be inserted because you haven\'t selected any node types for automatic ad insertion.)');
-      $form['injection_control']['#collapsed'] = FALSE;
-      $form['injection_control']['no_nodes_enabled'] = array(
-        '#type' => 'markup',
-        '#weight' => -1,
-        '#value' => '<div id="message"><div class="messages error"><strong>'. $msg .'</strong></div></div>',
-      );
-    }
-  }
-
-  return system_settings_form($form);
-}
