? cvslog_namespace_76.patch
? cvslog_namespace_82.patch
Index: /Applications/MAMP/htdocs/oct2/drupal/sites/all/modules/cvslog/cvs.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/cvslog/cvs.module,v
retrieving revision 1.172.2.4
diff -u -p -r1.172.2.4 cvs.module
--- cvs.module	22 Oct 2008 23:16:35 -0000	1.172.2.4
+++ cvs.module	25 Oct 2008 23:34:19 -0000
@@ -1,6 +1,6 @@
 <?php
 // $Id: cvs.module,v 1.172.2.4 2008/10/22 23:16:35 dww Exp $
-// $Name:  $
+// $Name: DRUPAL-5 $
 
 /**
  * @file
@@ -468,16 +468,16 @@ function cvs_nodeapi(&$node, $op, $arg =
       case 'load':
         $result = db_query('SELECT * FROM {cvs_projects} WHERE nid = %d', $node->nid);
         if ($project = db_fetch_object($result)) {
-          $node->cvs_repository = $project->rid;
-          $node->cvs_directory = $project->directory;
+          $node->cvs['cvs_repository'] = $project->rid;
+          $node->cvs['cvs_directory'] = $project->directory;
         }
         break;
       case 'insert':
       case 'update':
-        _cvs_directory_fix($node->cvs_directory);
+        _cvs_directory_fix($node->cvs['cvs_directory']);
         db_query('DELETE FROM {cvs_projects} WHERE nid = %d', $node->nid);
-        db_query("INSERT INTO {cvs_projects} (nid, rid, directory) VALUES (%d, %d, '%s')", $node->nid, $node->cvs_repository, $node->cvs_directory);
-        db_query("UPDATE {cvs_files} SET nid = %d WHERE rid = %d AND file LIKE '%s%%'", $node->nid, $node->cvs_repository, $node->cvs_directory);
+        db_query("INSERT INTO {cvs_projects} (nid, rid, directory) VALUES (%d, %d, '%s')", $node->nid, $node->cvs['cvs_repository'], $node->cvs['cvs_directory']);
+        db_query("UPDATE {cvs_files} SET nid = %d WHERE rid = %d AND file LIKE '%s%%'", $node->nid, $node->cvs['cvs_repository'], $node->cvs['cvs_directory']);
         break;
       case 'validate':
         if ($node->title) {
@@ -486,32 +486,32 @@ function cvs_nodeapi(&$node, $op, $arg =
           if (!empty($node->cvs_repository) && !db_num_rows(db_query('SELECT * FROM {cvs_repositories} WHERE rid=%d', $node->cvs_repository))) {
             form_set_error('cvs_repository', t('You must select a valid CVS repository.'));
           }
-          if (!$admin && $project && $node->cvs_repository != $project->cvs_repository) {
+          if (!$admin && $project && $node->cvs['cvs_repository'] != $project->cvs['cvs_repository']) {
             form_set_error('cvs_repository', t('You do not have permission to modify the CVS repository for this project.'));
           }
-          if (empty($node->cvs_repository)) {
+          if (empty($node->cvs['cvs_repository'])) {
             // The rest of this validation only makes sense if we have
             // a CVS repository for this project
-            if (!empty($node->cvs_directory)) {
+            if (!empty($node->cvs['cvs_directory'])) {
               form_set_error('cvs_directory', t('You can not specify a CVS directory if there is no CVS repository for this project.'));
             }
             break;
           }
-          _cvs_directory_fix($node->cvs_directory);
-          if (!$node->cvs_directory) {
+          _cvs_directory_fix($node->cvs['cvs_directory']);
+          if (!$node->cvs['cvs_directory']) {
             form_set_error('cvs_directory', t('You have to specify a valid CVS directory.'));
           }
-          else if (!preg_match('/^[a-zA-Z0-9\/_-]+$/', $node->cvs_directory)) {
+          else if (!preg_match('/^[a-zA-Z0-9\/_-]+$/', $node->cvs['cvs_directory'])) {
             form_set_error('cvs_directory', t("The path of the CVS directory can only contain letters, numbers, slashes ('/'), hyphens ('-') and underscores ('_')."));
           }
-          else if (preg_match('/\/\//', $node->cvs_directory)) {
+          else if (preg_match('/\/\//', $node->cvs['cvs_directory'])) {
             form_set_error('cvs_directory', t("The path of the CVS directory cannot contain two slashes next to each other '//'."));
           }
-          else if (db_result(db_query("SELECT nid FROM {cvs_projects} WHERE nid != %d AND rid = %d AND directory = '%s'", $node->nid, $node->cvs_repository, $node->cvs_directory))) {
+          else if (db_result(db_query("SELECT nid FROM {cvs_projects} WHERE nid != %d AND rid = %d AND directory = '%s'", $node->nid, $node->cvs['cvs_repository'], $node->cvs['cvs_directory']))) {
             form_set_error('cvs_directory', t('The specified CVS directory conflicts with that of an existing project.'));
           }
           else if (!$admin) {
-            $path_elems = explode('/', $node->cvs_directory);
+            $path_elems = explode('/', $node->cvs['cvs_directory']);
             // Remove empty elements caused by the trailing and leading '/'.
             $path_elems = array_filter($path_elems);
             if (variable_get('cvs_directory_validate_dir_root_by_case', 1)) {
@@ -720,14 +720,16 @@ function cvs_user_edit_form_submit($form
 function cvs_alter_project_project_form(&$form) {
   $node = $form['#node'];
   $repositories = _cvs_get_repository_options(t('<none>'));
-  $form['cvs_nodeapi'] = array(
+  $form['cvs'] = array(
     '#type' => 'fieldset',
     '#title' => t('CVS integration'),
     '#collapsible' => TRUE,
+    '#tree' => TRUE,
+    '#weight' => 4,
   );
-  $default_repo = isset($node->cvs_repository) ? $node->cvs_repository : variable_get('cvs_default_repo', 0);
+  $default_repo = isset($node->cvs['cvs_repository']) ? $node->cvs['cvs_repository'] : variable_get('cvs_default_repo', 0);
   if (count($repositories) > 1) {
-    $form['cvs_nodeapi']['cvs_repository'] = array(
+    $form['cvs']['cvs_repository'] = array(
       '#type' => 'select',
       '#title' => t('Repository'),
       '#default_value' => $default_repo,
@@ -735,21 +737,21 @@ function cvs_alter_project_project_form(
       '#description' => t("Specify the project's CVS repository."),
     );
   }
-  $form['cvs_nodeapi']['cvs_directory'] = array(
+  $form['cvs']['cvs_directory'] = array(
     '#type' => 'textfield',
     '#title' => t('CVS directory'),
-    '#default_value' => $node->cvs_directory,
+    '#default_value' => $node->cvs['cvs_directory'],
     '#size' => 40,
     '#maxlength' => 255,
     '#description' => t("Specify the project's directory within the selected CVS repository. Directory names should start with a leading slash and end with a trailing slash, and must be unique for each project. For example: <code>/modules/foo/</code>, <code>/themes/foo/</code> or <code>/translations/foo/</code>. If there is no CVS repository associated with the project, this setting should be left blank."),
   );
-  if ($default_repo == 0 || $node->cvs_directory) {
+  if ($default_repo == 0 || $node->cvs['cvs_directory']) {
     // If the default for the repository selector is <none> (either
     // because the project has already been saved with 0 for the
     // repository, or because that's the site-wide default), or if we
     // already have the value for the CVS directory, we should hide
     // these gory details by default.
-    $form['cvs_nodeapi']['#collapsed'] = TRUE;
+    $form['cvs']['#collapsed'] = TRUE;
   }
 }
 
@@ -1034,7 +1036,7 @@ function cvs_alter_project_release_form(
 function cvs_alter_project_release_form_edit(&$form) {
   global $user;
   $release = $form['#node'];
-  $project = node_load($release->pid);
+  $project = node_load($release->project_release['pid']);
   $tags = array();
 
   // Always include the current tag as an option, unless the tag is empty.
@@ -1048,7 +1050,7 @@ function cvs_alter_project_release_form_
   // node, see if another tag exists which has the same version info
   // but isn't associated with a release.
   if (user_access('administer projects') || ($release->tag == 'HEAD')) {
-    $args[] = $release->pid;
+    $args[] = $release->project_release['pid'];
     $head_where = '';
     if (!user_access('administer projects')) {
       // A non-admin editing a HEAD node. Search for another tag (if
@@ -1068,7 +1070,7 @@ function cvs_alter_project_release_form_
   if (!empty($tags)) {
     $form['rel_id']['tag'] = array(
       '#type' => 'select',
-      '#title' => $release->rebuild ? t('CVS branch') : t('CVS tag'),
+      '#title' => $release->project_release['rebuild'] ? t('CVS branch') : t('CVS tag'),
       '#options' => $tags,
       '#required' => TRUE,
     );
