Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Thursday, October 15, 2026

Diff for scripts/php/parsecvs/parsecvs.php between version 1.12 and 1.13

version 1.12, 2002/06/03 07:49:08 version 1.13, 2002/06/03 10:38:15
Line 6 
Line 6 
         $output_file = 'php://stdout';          $output_file = 'php://stdout';
   
         $begin_line = '----------------------------------------------';          $begin_line = '----------------------------------------------';
           $msg_log_begin = '^Log Message:';
           $date_format = '^([A-Z][a-z]{2} )?([A-Z][a-z]{2} [0-9]+ ' .
                           '[0-9]{2}:[0-9]{2}:[0-9]{2}) CES?T ([0-9]{4})';
           $user_format = '^CVSUSER=([0-9a-zA-Z]*)';
           $directory_format = '^In directory';
           $project_name_format = '^Update of /home/cvs/(.*)';
           $add_files_begin = '^Added Files:';
           $mod_files_begin = '^Modified Files:';
           $del_files_begin = '^Removed Files:';
           $in_file_list = "^(\t|        )";
   
         function my_array_walk($x) {          function my_array_walk($x) {
                 // This will do array_unique() on third-level values of $x                  // This will do array_unique() on third-level values of $x
Line 31 
Line 41 
         $in_del_files = false;          $in_del_files = false;
   
         while ($i < sizeof($in)) {          while ($i < sizeof($in)) {
                   // BEGIN NEW COMMIT
                 if (ereg($begin_line, $in[$i])) {                  if (ereg($begin_line, $in[$i])) {
                         $j++;                          $j++;
                 }                  }
   
                 // LOG MESSAGE                  // LOG MESSAGE
                   if (ereg($msg_log_begin, $in[$i])) {
                           $in_msg_log = true;
                           $i++;
                           continue;
                   }
   
                 if ($in_msg_log) {                  if ($in_msg_log) {
                         if (ereg($begin_line, $in[$i])) {                          if (ereg($begin_line, $in[$i])) {
                                 $in_msg_log = false;                                  $in_msg_log = false;
Line 49 
Line 66 
                         }                          }
                 }                  }
   
                 if (ereg('^Log Message:', $in[$i])) {                  // ADDED FILES
                         $in_msg_log = true;                  if (ereg($add_files_begin, $in[$i])) {
                           $in_add_files = true;
                         $i++;                          $i++;
                         continue;                          continue;
                 }                  }
                   
                 // ADDED FILES  
                 if ($in_add_files) {                  if ($in_add_files) {
                         if (!ereg("^(\t|        )", $in[$i])) {                          if (!ereg($in_file_list, $in[$i])) {
                                 $in_add_files = false;                                  $in_add_files = false;
                                 continue;                                  continue;
                         }                          }
Line 66 
Line 83 
                                 array_merge($reports[$j]['added'],                                  array_merge($reports[$j]['added'],
                                         explode(' ', trim($in[$i])));                                          explode(' ', trim($in[$i])));
                 }                  }
                   
                 if (ereg('^Added Files:', $in[$i])) {                  // MODIFIED FILES
                         $in_add_files = true;                  if (ereg($mod_files_begin, $in[$i])) {
                           $in_mod_files = true;
                         $i++;                          $i++;
                         continue;                          continue;
                 }                  }
                                   
                 // MODIFIED FILES  
                 if ($in_mod_files) {                  if ($in_mod_files) {
                         if (!ereg("^(\t|        )", $in[$i])) {                          if (!ereg($in_file_list, $in[$i])) {
                                 echo "!";  
                                 $in_mod_files = false;                                  $in_mod_files = false;
                                 continue;                                  continue;
                         }                          }
Line 86 
Line 102 
                                 explode(' ', trim($in[$i])));                                  explode(' ', trim($in[$i])));
                 }                  }
   
                 if (ereg('^Modified Files:', $in[$i])) {                  // DELETED FILES
                         $in_mod_files = true;                  if (ereg($del_files_begin, $in[$i])) {
                           $in_del_files = true;
                         $i++;                          $i++;
                         continue;                          continue;
                 }                  }
                                   
                 // DELETED FILES  
                 if ($in_del_files) {                  if ($in_del_files) {
                         if (!ereg("^(\t|        )", $in[$i])) {                          if (!ereg($in_file_list, $in[$i])) {
                                 $in_del_files = false;                                  $in_del_files = false;
                                 continue;                                  continue;
                         }                          }
Line 104 
Line 120 
                                         explode(' ', trim($in[$i])));                                          explode(' ', trim($in[$i])));
                 }                  }
   
                 if (ereg('^Removed Files:', $in[$i])) {  
                         $in_del_files = true;  
                 }  
                   
                 // DATE         //Accepted format: Mon May 20 18:06:09 CEST 2002                  // DATE         //Accepted format: Mon May 20 18:06:09 CEST 2002
                 if (ereg('^([A-Z][a-z]{2} )?([A-Z][a-z]{2} [0-9]+ ' .                  if (ereg($date_format, $in[$i], $regs)) {
                         '[0-9]{2}:[0-9]{2}:[0-9]{2}) CES?T ([0-9]{4})',  
                         $in[$i], $regs)) {  
                         $reports[$j]['date'][] = $regs[2] . ' ' . $regs[3];                          $reports[$j]['date'][] = $regs[2] . ' ' . $regs[3];
                 }                  }
   
                 // USERS                  // USERS
                 if (ereg('^CVSUSER=([0-9a-zA-Z]*)', $in[$i], $regs)) {                  if (ereg($user_format, $in[$i], $regs)) {
                         $reports[$j]['users'][] = $regs[1];                          $reports[$j]['users'][] = $regs[1];
                 }                  }
   
                 // DIRECTORY                  // DIRECTORY
                 if (ereg('^In directory', $in[$i])) {                  if (ereg($directory_format, $in[$i])) {
                         // This is redundant, simply ignoring it                          // This is redundant, simply ignoring it
                 }                  }
   
                 // NAME                  // NAME
                 if (ereg('^Update of /home/cvs/(.*)', $in[$i], $regs)) {                  if (ereg($project_name_format, $in[$i], $regs)) {
                         // only project name                          // only project name
                         $reports[$j]['name'] = trim(strtok($regs[1], '/'));                          $reports[$j]['name'] = trim(strtok($regs[1], '/'));
                         $reports[$j]['directory'] = trim($regs[1]);                          $reports[$j]['directory'] = trim($regs[1]);
Line 146 
Line 156 
                 $merged = array_merge_recursive($merged, $a);                  $merged = array_merge_recursive($merged, $a);
                 $i++;                  $i++;
         }          }
           unset($i);
           unset($a);
   
         $merged_unique = my_array_walk($merged);          $merged_unique = my_array_walk($merged);
   
           // DEBUG
         //var_dump($reports);          //var_dump($reports);
         //var_dump($merged);          //var_dump($merged);
         //var_dump($merged_unique);          //var_dump($merged_unique);
   
           unset($reports);
           unset($merged);
   
         $out = fopen($output_file, 'w');          $out = fopen($output_file, 'w');
   
         $keys = array_keys($merged_unique);          $keys = array_keys($merged_unique);
         $i = 0;          $i = 0;
         $name = '';          $name = '';
   
           // OUTPUT:
         // Print out the merged/unique to $out          // Print out the merged/unique to $out
   
         while ($i < sizeof($merged_unique)) {          while ($i < sizeof($merged_unique)) {

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top