/[dehs]/trunk/dehs_pg.php
ViewVC logotype

Diff of /trunk/dehs_pg.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 71 by atomo64-guest, Thu Dec 13 01:07:00 2007 UTC revision 79 by atomo64-guest, Mon Dec 17 00:08:14 2007 UTC
# Line 58  if (!function_exists('file_put_contents' Line 58  if (!function_exists('file_put_contents'
58      }      }
59  }  }
60    
61  if (in_array("-db_add",$argv))  db_add((isset($argv[2])?$argv[2]:''), false);  if (in_array("-db_add",$argv))  db_add((!empty($argv[2])?$argv[2]:''), false);
62      elseif (in_array("-db_query",$argv))  db_query($argv[2],$argv[3] );      elseif (in_array("-db_query",$argv))  db_query($argv[2],(!empty($argv[3])?$argv[3]:'%') );
63      elseif (in_array("-dl_diffs",$argv) || in_array("-keep_diff",$argv))  dl_diffs($argv[2]);      elseif (in_array("-dl_diffs",$argv) || in_array("-keep_diff",$argv))  dl_diffs($argv[2]);
64      elseif (in_array("-keep_sources",$argv) || in_array("-download_sources",$argv))  download_sources();      elseif (in_array("-keep_sources",$argv) || in_array("-download_sources",$argv))  download_sources();
65      elseif (in_array("-db_popcon",$argv))  db_popcon($argv[2]);      elseif (in_array("-db_popcon",$argv))  db_popcon($argv[2]);
# Line 73  if (in_array("-db_add",$argv))  db_add(( Line 73  if (in_array("-db_add",$argv))  db_add((
73      elseif (in_array("-clear_db",$argv))  clear_db();      elseif (in_array("-clear_db",$argv))  clear_db();
74      elseif (in_array("-db_up_error",$argv))  db_up_error();      elseif (in_array("-db_up_error",$argv))  db_up_error();
75      elseif (in_array("-up_changes",$argv))  up_changes($argv[2], true);      elseif (in_array("-up_changes",$argv))  up_changes($argv[2], true);
76      elseif (in_array("-watchf",$argv) || in_array("-wwiz",$argv))  watch_wizard($argv[2]);      elseif (in_array("-watchf",$argv) || in_array("-wwiz",$argv))  watch_wizard((!empty($argv[2])?$argv[2]:''));
77      elseif (in_array("-kb_total",$argv))  print "Diff      elseif (in_array("-kb_total",$argv))  print "Diff
78  #stat_up_error();  #stat_up_error();
79  #stat_up_error();to download Kb => " . kb_total($argv[2]) . "\n" ;  #stat_up_error();to download Kb => " . kb_total($argv[2]) . "\n" ;
# Line 207  function db_add($initial='', $clear_db = Line 207  function db_add($initial='', $clear_db =
207                              $matches[10]=pg_escape_string($matches[10]);                              $matches[10]=pg_escape_string($matches[10]);
208                          }                          }
209                          @pg_exec($db,"INSERT INTO pkgs_atsrc (name,dist) VALUES ('$matches[1]','$dist')") OR die_status("Temp table pkgs_atsrc query error");                          @pg_exec($db,"INSERT INTO pkgs_atsrc (name,dist) VALUES ('$matches[1]','$dist')") OR die_status("Temp table pkgs_atsrc query error");
210                          $rst=@pg_exec($db, "INSERT INTO pkgs (name,version,maint,dir,md5_atsource,bytes,dist,section,uploaders) VALUES ('$matches[1]','$matches[4]','$matches[5]','$matches[6]','$matches[7]','$matches[8]','$dist','$section','$matches[10]')") ;                          $rst=@pg_exec($db, "INSERT INTO pkgs (name,version,dversionmangled,maint,dir,md5_atsource,bytes,dist,section,uploaders) VALUES ('$matches[1]','$matches[4]','$matches[4]','$matches[5]','$matches[6]','$matches[7]','$matches[8]','$dist','$section','$matches[10]')") ;
211                          if (!$rst) {                          if (!$rst) {
212                              $rst=@pg_exec($db, "UPDATE pkgs SET name='$matches[1]',version='$matches[4]',maint='$matches[5]',dir='$matches[6]',md5_atsource='$matches[7]',bytes='$matches[8]',dist='$dist',section='$section',uploaders='$matches[10]' WHERE name='$matches[1]' AND dist='$dist'") OR die_status("\nDb adding error =>" . pg_last_error() . "\n");                              $rst=@pg_exec($db, "UPDATE pkgs SET name='$matches[1]',version='$matches[4]',dversionmangled='$matches[4]',maint='$matches[5]',dir='$matches[6]',md5_atsource='$matches[7]',bytes='$matches[8]',dist='$dist',section='$section',uploaders='$matches[10]' WHERE name='$matches[1]' AND dist='$dist'") OR die_status("\nDb adding error =>" . pg_last_error() . "\n");
213                          }                          }
214                          $bin_names=split(",", $matches[2]);                          $bin_names=split(",", $matches[2]);
215                          foreach ($bin_names as $bin_name) {                          foreach ($bin_names as $bin_name) {
# Line 234  function db_add($initial='', $clear_db = Line 234  function db_add($initial='', $clear_db =
234      clear_db($db);      clear_db($db);
235      pg_close($db);      pg_close($db);
236  }  }
237  function db_query($pkg,$dist) {  function db_query($pkg,$dist='%') {
238      global $dirs,$dbconn;      global $dirs,$dbconn;
239      $db = pg_pconnect($dbconn )  or  die_status(pg_last_error($db));      $db = pg_pconnect($dbconn )  or  die_status(pg_last_error($db));
240      $rsql=pg_exec($db, "SELECT pkgs.* ,mpop_inst FROM (SELECT name,MAX(binpkgs.pop_inst) AS mpop_inst FROM binpkgs GROUP BY name)      $rsql=pg_exec($db, "SELECT pkgs.* ,mpop_inst FROM (SELECT name,MAX(binpkgs.pop_inst) AS mpop_inst FROM binpkgs GROUP BY name)
241                                                                          AS binpkgs INNER JOIN pkgs ON pkgs.name=binpkgs.name                                                                          AS binpkgs INNER JOIN pkgs ON pkgs.name=binpkgs.name
242                                WHERE pkgs.name='$pkg' AND dist='$dist';");                                WHERE pkgs.name='$pkg' AND dist='$dist';");
243      if (pg_numrows($rsql)==1) {      while ($res_array=pg_fetch_array($rsql)) {
         $res_array=pg_fetch_array($rsql);  
244          print "Package=> " . $res_array['name'] . "\n";          print "Package=> " . $res_array['name'] . "\n";
245          print "Version => " . $res_array['version'] . "\n";          print "Version => " . $res_array['version'] . "\n";
246            print "Mangled version => " . $res_array['dversionmangled'] . "\n";
247          print "Diff MD5 Downloaded => " . $res_array['md5_diff'] . "\n";          print "Diff MD5 Downloaded => " . $res_array['md5_diff'] . "\n";
248          print "Diff MD5 at Sources => " . $res_array['md5_atsource'] . "\n";          print "Diff MD5 at Sources => " . $res_array['md5_atsource'] . "\n";
249          print "Distribution => " . $res_array['dist'] . "\n";          print "Distribution => " . $res_array['dist'] . "\n";
# Line 253  function db_query($pkg,$dist) { Line 253  function db_query($pkg,$dist) {
253          if ($res_array['watch']) {          if ($res_array['watch']) {
254              $uscan_res=uscan_foo($res_array['name'] ,$res_array['version'],$res_array['watch']);              $uscan_res=uscan_foo($res_array['name'] ,$res_array['version'],$res_array['watch']);
255              print "Version Upstream => " . $uscan_res[0] . "\n";              print "Version Upstream => " . $uscan_res[0] . "\n";
256              print "Watch => " . $res_array['watch'];              print "Watch => " . trim($res_array['watch'])."\n";
257              print "Watch Warnings => " . $uscan_res[1];              print "Watch Warnings => " . $uscan_res[1];
258          }          }
259          else print "Watch => Not present" . "\n";          else print "Watch => Not present" . "\n";
260          if ($res_array['wwiz_type']) {          if ($res_array['wwiz_type']) {
261              $uscan_res=uscan_foo($res_array['name'] ,$res_array['version'],$res_array['wwiz']);              $uscan_res=uscan_foo($res_array['name'] ,$res_array['version'],$res_array['wwiz']);
262              print "WWiz Upstream => " . $uscan_res[0] . "\n";              print "WWiz Upstream => " . $uscan_res[0] . "\n";
263              print "WWiz => " . $res_array['wwiz'];              print "WWiz => " . $res_array['wwiz']."\n";
264              print "WWiz Warings => " . $uscan_res[1];              print "WWiz Warings => " . $uscan_res[1];
265          }          }
266          print "\n";          print "\n";
267      }      }
268      else echo "Package=> " . $pkg . "\nNot found\n!!";      if (pg_numrows($rsql)==0) echo "Package=> " . $pkg . "\nNot found\n!!";
269      pg_close($db);      pg_close($db);
270  }  }
271  function byte_total(&$db,$initial) {  function byte_total(&$db,$initial) {
# Line 331  function check_db() { Line 331  function check_db() {
331      global $dirs,$dbconn;      global $dirs,$dbconn;
332      $db = pg_pconnect($dbconn) or die_status(1/*pg_last_notice($db)*/);      $db = pg_pconnect($dbconn) or die_status(1/*pg_last_notice($db)*/);
333      if (!pg_table_exists($db,"pkgs")){      if (!pg_table_exists($db,"pkgs")){
334          pg_exec($db, "CREATE TABLE pkgs (id serial PRIMARY KEY,name text,version text,maint text, uploaders text, dir text,watch text,md5_diff text,md5_atsource text,bytes numeric,dist text,section text,up_version text,up_changes text, up_url text,watch_warn text,updated bool, keep_changes bool, wwiz text,wwiz_version text, wwiz_type text)") or die_status('Error creating table pkgs\n');          pg_exec($db, "CREATE TABLE pkgs (id serial PRIMARY KEY,name text,version text, dversionmangled text,maint text, uploaders text, dir text,watch text,md5_diff text,md5_atsource text,bytes numeric,dist text,section text,up_version text,up_changes text, up_url text,watch_warn text,updated bool, keep_changes bool, wwiz text,wwiz_version text, wwiz_type text)") or die_status('Error creating table pkgs\n');
335          pg_exec($db, "CREATE UNIQUE INDEX idxname on pkgs (name,dist)") or die_status('Errore creating index - ' . pg_last_error($db));          pg_exec($db, "CREATE UNIQUE INDEX idxname on pkgs (name,dist)") or die_status('Errore creating index - ' . pg_last_error($db));
336          $sw=true;          $sw=true;
337      }      }
# Line 340  function check_db() { Line 340  function check_db() {
340          pg_exec($db, "CREATE UNIQUE INDEX idxbin on binpkgs (name,bin_name,dist)") or die_status('Errore creating index - ' . pg_last_error($db));          pg_exec($db, "CREATE UNIQUE INDEX idxbin on binpkgs (name,bin_name,dist)") or die_status('Errore creating index - ' . pg_last_error($db));
341          $sw=true;          $sw=true;
342      }      }
343        /*if (!pg_table_exists($db,"events")){
344            pg_exec($db, "CREATE TABLE events (id serial PRIMARY KEY, name text,type text, dist text)") or die_status('Error creating table binpkgs\n');
345            pg_exec($db, "CREATE UNIQUE INDEX idxevents on events (name,dist)") or die_status('Errore creating index - ' . pg_last_error($db));
346            $sw=true;
347        }*/
348      #if (!pg_table_exists($db,"upstream")){      #if (!pg_table_exists($db,"upstream")){
349      #  pg_exec($db, "CREATE TABLE upstream (name text,dist text,up_version text,watch_warn text,updated bool)") or die_status('Errore nel creare la tabella');      #  pg_exec($db, "CREATE TABLE upstream (name text,dist text,up_version text,watch_warn text,updated bool)") or die_status('Errore nel creare la tabella');
350      #  pg_exec($db, "CREATE UNIQUE INDEX idxupstrm on upstream (name,dist)") or die_status('Errore nel creare gli indici ' . pg_last_error($db));      #  pg_exec($db, "CREATE UNIQUE INDEX idxupstrm on upstream (name,dist)") or die_status('Errore nel creare gli indici ' . pg_last_error($db));
# Line 402  function db_popcon($initial='') { Line 407  function db_popcon($initial='') {
407              if (preg_match($regexp,$line,$matches)) {              if (preg_match($regexp,$line,$matches)) {
408                  #print "\rName => $matches[1] Install => $matches[2] Vote => $matches[3]";                  #print "\rName => $matches[1] Install => $matches[2] Vote => $matches[3]";
409                  @pg_exec($db, "UPDATE binpkgs SET pop_inst='$matches[2]',pop_vote='$matches[3]' WHERE bin_name='$matches[1]'");                  @pg_exec($db, "UPDATE binpkgs SET pop_inst='$matches[2]',pop_vote='$matches[3]' WHERE bin_name='$matches[1]'");
410                  $prcessed++;                  /*$processed++;
411                  /*$elapsed_time=time()-$tin;                  $elapsed_time=time()-$tin;
412                  if (($elapsed_time % 20)==0 AND $updtime!=$elapsed_time) {                  if (($elapsed_time % 20)==0 AND $updtime!=$elapsed_time) {
413                      $updtime=$elapsed_time;                      $updtime=$elapsed_time;
414                      $wprocessed=$processed-$wprocessed;                      $wprocessed=$processed-$wprocessed;
# Line 420  function db_popcon($initial='') { Line 425  function db_popcon($initial='') {
425      }      }
426      @pg_close($db);      @pg_close($db);
427  }  }
 function db_popcon_test() {  
     global $dirs,$dbconn;  
     $db = pg_pconnect($dbconn)  or  die_status(pg_last_error($db));  
     $filename=$dirs[popcon_dir] . "/all-popcon-results.txt.gz";  
     $regexp="/Package:\s(\S+)\s+(\d+)\s+(\d+)/";  
     $zp = gzfile($filename, "r") or die_status("Could not open $filename");  
     if(filesize($filename)>20) {  
         foreach ($zp as $line) {  
             if (preg_match($regexp,$line,$matches)) {  
                 # print "Name => $matches[1] \n Install => $matches[2] \n Vote => $matches[3]\n";  
                 print "\r" . $i++;  
                 #pg_unbuffered_query($db, "UPDATE binpkgs SET pop_inst='$matches[2]',pop_vote='$matches[3]' WHERE bin_name='$matches[1]'");  
             }  
         }  
     }  
     @pg_close($db);  
 }  
428  function dl_popcon() {  function dl_popcon() {
429      global $dirs,$dbconn;      global $dirs,$dbconn;
430      $localfile=$dirs[popcon_dir] . "/all-popcon-results.txt.gz";      $localfile=$dirs[popcon_dir] . "/all-popcon-results.txt.gz";
# Line 445  function dl_popcon() { Line 433  function dl_popcon() {
433  }  }
434  function is_updated ($up_vers,$debian_vers) {  function is_updated ($up_vers,$debian_vers) {
435      if ($up_vers=='') return 0;      if ($up_vers=='') return 0;
436      passthru("dpkg --compare-versions '".escapeshellarg($up_vers)."' eq '" . escapeshellarg(vers_conv($debian_vers)) . "'",$great);      passthru("dpkg --compare-versions '".escapeshellarg($up_vers)."' le '" . escapeshellarg(vers_conv($debian_vers)) . "'",$great);
437      if ($great!=0) return 1;      if ($great!=0) return 1;
438      else return 0;      else return 0;
439  }  }
# Line 459  function db_upstream($initial='%') { Line 447  function db_upstream($initial='%') {
447          $uscan_res=uscan_foo($res_array['name'],$res_array['version'],$res_array['watch']);          $uscan_res=uscan_foo($res_array['name'],$res_array['version'],$res_array['watch']);
448          #print $uscan_res[0] . "\n Name => $res_array[name]\n";          #print $uscan_res[0] . "\n Name => $res_array[name]\n";
449          $version=$res_array[version];          $version=$res_array[version];
450            $dversionmangled=$res_array['dversionmangled'];
451          print "\rVersion=>" . $uscan_res[3];          print "\rVersion=>" . $uscan_res[3];
452          if ($uscan_res[3]!=null) $version=$uscan_res[3];          if ($uscan_res[3]!=null) $version=$uscan_res[3];
453          #$updated=is_updated($uscan_res[0],$res_array[version]);          if ($uscan_res[5]!=null && $uscan_res[5] != vers_conv($res_array['version'])) $dversionmangled=$uscan_res[5];
454          $updated=$uscan_res[4];          $updated=$uscan_res[4];
455            if ($updated) {
456                $updated=is_updated($uscan_res[0],$dversionmangled);
457            }
458    
459          if (!$updated) {          if (!$updated) {
460              events::newVersion($res_array['name'], $res_array['version'], $uscan_res[0], $res_array['dist']);              events::newVersion($res_array['name'], $res_array['version'], $uscan_res[0], $res_array['dist']);
461          }          }
# Line 475  function db_upstream($initial='%') { Line 468  function db_upstream($initial='%') {
468          if($uscan_res[1] != null) {          if($uscan_res[1] != null) {
469              $watch_warn=pg_escape_string(iconv("ISO-8859-1","UTF-8",$uscan_res[1]));              $watch_warn=pg_escape_string(iconv("ISO-8859-1","UTF-8",$uscan_res[1]));
470          }          }
471          pg_exec($db, "UPDATE pkgs SET up_version='" . $up_version . "',up_url='" . $up_url . "', watch_warn='" . $watch_warn . "',keep_changes='$keep_changes', wwiz_version=NULL, wwiz_type=NULL, wwiz=NULL, updated='$updated' WHERE id=$res_array[id]") or die_status("Error in update pkgs upstream");          pg_exec($db, "UPDATE pkgs SET up_version='" . pg_escape_string($up_version) . "', dversionmangled='".pg_escape_string($dversionmangled)."',up_url='" . pg_escape_string($up_url) . "', watch_warn='" . $watch_warn . "',keep_changes='$keep_changes', wwiz_version=NULL, wwiz_type=NULL, wwiz=NULL, updated='$updated' WHERE id=$res_array[id]") or die_status("Error in update pkgs upstream");
472          #print "\rUpdated " . $res_array['name'] .  " => $updated Up Version => ". $uscan_res[0];          #print "\rUpdated " . $res_array['name'] .  " => $updated Up Version => ". $uscan_res[0];
473          print "\tUpstream left => " . $tot --;          print "\t Upstream left => " . $tot --;
474          #                               }          #                               }
475          #                                                       else print "Added ". $res_array['name'] ."\n";          #                                                       else print "Added ". $res_array['name'] ."\n";
476          #       if ($great==0) {          #       if ($great==0) {
# Line 599  function uscan_foo($name,$version,$watch Line 592  function uscan_foo($name,$version,$watch
592      $upstream=$vals[$index['UPSTREAM-VERSION'][0]][value];      $upstream=$vals[$index['UPSTREAM-VERSION'][0]][value];
593      $up_url=$vals[$index['UPSTREAM-URL'][0]][value];      $up_url=$vals[$index['UPSTREAM-URL'][0]][value];
594      $deb_vers=$vals[$index['DEBIAN-UVERSION'][0]][value];      $deb_vers=$vals[$index['DEBIAN-UVERSION'][0]][value];
595        $deb_mangled_vers=$vals[$index['DEBIAN-MANGLED-UVERSION'][0]][value];
596      $warnings=$vals[$index['WARNINGS'][0]][value];      $warnings=$vals[$index['WARNINGS'][0]][value];
597      $updated=$vals[$index['STATUS'][0]][value];      $updated=$vals[$index['STATUS'][0]][value];
598    
# Line 609  function uscan_foo($name,$version,$watch Line 603  function uscan_foo($name,$version,$watch
603      if ($up_url=='')  $up_url=null;      if ($up_url=='')  $up_url=null;
604      if ($deb_vers=='') $deb_vers=null;      if ($deb_vers=='') $deb_vers=null;
605      if ($warnings=='') $warnings=null;      if ($warnings=='') $warnings=null;
606        if ($deb_mangled_vers=='') $deb_mangled_vers=null;
607    
608      return array($upstream,$warnings,$up_url,$deb_vers,$updated);      return array($upstream, $warnings, $up_url, $deb_vers, $updated, $deb_mangled_vers);
609  }  }
610  function db_up_error() {  function db_up_error() {
611      global $dbconn;      global $dbconn;
# Line 645  function db_up_error() { Line 640  function db_up_error() {
640      pg_close($db);      pg_close($db);
641  }  }
642  function watch_wizard($src_name='%'){  function watch_wizard($src_name='%'){
643      global $dirs,$dbconn,$sfIgnore,$watchFileExts,$watchFormat;      global $dirs,$dbconn,$sfIgnore,$watchFileExts,$watchFileDversionMangle,$watchFormat;
644      $db = pg_pconnect($dbconn) or die_status ("Db error");      $db = pg_pconnect($dbconn) or die_status ("Db error");
645      $checked=$errors=$notfound=$verok=$notmatch=0;      $checked=$errors=$notfound=$verok=$notmatch=0;
646    
647      // prepare some stuff that needs to be done once per run      // prepare some stuff that needs to be done once per run
648      $opts = '';      $opts       = array();
649      $exts  = '(';      $exts       = '';
650        $dvmanglers = '';
651    
652      foreach ($watchFileExts as $ext) {      foreach ($watchFileExts as $ext) {
653          $exts .= $ext . '|';          $exts .= $ext . '|';
654      }      }
655      unset($ext);      unset($ext);
656    
657      $exts = substr($exts, 0, -1) . ')';      if ($exts != '') {
658      if ($exts == '()') {          $opts[] = 'uversionmangle=s/\.(' . substr($exts, 0, -1) . ')$//i';
659          $exts = '';      }
660      } else {  
661          $opts = 'opts=uversionmangle=s/\.' . $exts . '$// \\';      foreach ($watchFileDversionMangle as $dvmangler) {
662            $dvmanglers .= $dvmangler . '|';
663        }
664        unset($dvmangler);
665    
666        if ($dvmanglers != '') {
667            $opts[] = 'dversionmangle=s/[-.+~]?(' . substr($dvmanglers, 0, -1) . ')(.*)$//i';
668        }
669    
670        if (is_array($opts)) {
671            $_opts = '';
672            foreach ($opts as $opt) {
673                $_opts .= $opt . ',';
674            }
675            $opts = '';
676            if ($_opts != ',') {
677                $opts = 'opts=' . substr($_opts, 0, -1) . ' \\';
678            }
679      }      }
680    
681      $sqlstring="SELECT mpop_inst,name,pkgs.version,pkgs.section,pkgs.dist,tot_up_error, tot_avg_error_date, wwiz_version FROM pkgs INNER JOIN      $sqlstring="SELECT mpop_inst,name,pkgs.version,pkgs.dversionmangled,pkgs.section,pkgs.dist,tot_up_error, tot_avg_error_date, wwiz_version FROM pkgs INNER JOIN
682          (Select max(pop_inst) as mpop_inst,SUM(up_error) as tot_up_error,AVG(avg_error_date) as tot_avg_error_date,name,dist FROM binpkgs GROUP BY name,dist HAVING max(pop_inst) IS NOT NULL) as binpkgs using(name,dist)          (Select max(pop_inst) as mpop_inst,SUM(up_error) as tot_up_error,AVG(avg_error_date) as tot_avg_error_date,name,dist FROM binpkgs GROUP BY name,dist HAVING max(pop_inst) IS NOT NULL) as binpkgs using(name,dist)
683          WHERE (watch IS NULL OR watch='') AND name LIKE '$src_name%' ORDER BY mpop_inst DESC";          WHERE (watch IS NULL OR watch='') AND name LIKE '$src_name%' ORDER BY mpop_inst DESC";
684      $rsql=pg_exec($db, $sqlstring);      $rsql=pg_exec($db, $sqlstring);
# Line 696  function watch_wizard($src_name='%'){ Line 709  function watch_wizard($src_name='%'){
709              $contents=@file_get_contents($url) or '';              $contents=@file_get_contents($url) or '';
710          }          }
711    
712            if (!$contents) {
713                $url="http://packages.debian.org/changelogs/pool/" .
714                $res_array["section"] . "/" .
715                $initial . "/" .
716                $res_array["name"] ."/" .
717                "current/copyright";
718                $contents=@file_get_contents($url) or '';
719            }
720    
721          if ($contents) {          if ($contents) {
722    
723              if (preg_match ('/(sf\.net|sourceforge\.net)/i', $contents, $matches) ||              if (preg_match ('/(sf\.net|sourceforge\.net)/i', $contents, $matches) ||
# Line 760  function watch_wizard($src_name='%'){ Line 782  function watch_wizard($src_name='%'){
782    
783                      $uscan_res=uscan_foo($res_array['name'] ,$res_array['version'],$watch);                      $uscan_res=uscan_foo($res_array['name'] ,$res_array['version'],$watch);
784    
785                      if ($uscan_res[0]) {                      if ($uscan_res[0] && levenshtein($uscan_res[0], $res_array['version']) < strlen($res_array['version'])) {
786                          break;                          break;
787                      }                      }
788                  }                  }
# Line 775  function watch_wizard($src_name='%'){ Line 797  function watch_wizard($src_name='%'){
797                      } else {                      } else {
798                          $keep_changes = 0;                          $keep_changes = 0;
799                      }                      }
                     $updated=$uscan_res[4];  
800    
801                      if (!$updated) {                      $dversionmangled = $res_array[version];
802                          //FIXME: events::newVersion($res_array['name'], , $uscan_res[0], $res_array['dist']);                      if ($uscan_res[5]!=null && $uscan_res[5] != vers_conv($res_array['version'])) $dversionmangled=$uscan_res[5];
803    
804                        $updated=$uscan_res[4];
805                        if ($updated) {
806                            $updated=is_updated($uscan_res[0],$dversionmangled);
807                      }                      }
808    
809                      pg_exec($db, "UPDATE pkgs SET wwiz='" . pg_escape_string($watch) ."', wwiz_type='watch', wwiz_version='" . pg_escape_string($uscan_res[0]) . "', up_url='" . pg_escape_string($uscan_res[2]) . "', keep_changes='$keep_changes', updated='$updated' where name='" . pg_escape_string($res_array[name]) . "' AND dist='" . $res_array[dist] ."'");                      /*if (!$updated) {
810                            events::newVersion($res_array['name'], $res_array['version'], $uscan_res[0], $res_array['dist']);
811                        }*/
812    
813                        pg_exec($db, "UPDATE pkgs SET wwiz='" . pg_escape_string($watch) ."', wwiz_type='watch', wwiz_version='" . pg_escape_string($uscan_res[0]) . "',dversionmangled='".pg_escape_string($dversionmangled)."', up_url='" . pg_escape_string($uscan_res[2]) . "', keep_changes='$keep_changes', updated='$updated' where name='" . pg_escape_string($res_array[name]) . "' AND dist='" . $res_array[dist] ."'");
814                  }                  }
815              }              }
816          } else {          } else {
# Line 810  function dehsqa_db () { Line 839  function dehsqa_db () {
839      foreach ($dists as $dist) {      foreach ($dists as $dist) {
840          $id=dbqa_conn($dir1 . "dehs_qa_" . $dist . ".db",'n');          $id=dbqa_conn($dir1 . "dehs_qa_" . $dist . ".db",'n');
841          $db = pg_pconnect($dbconn) or die_status ("Db error");          $db = pg_pconnect($dbconn) or die_status ("Db error");
842          $sql="SELECT name, id, up_version, wwiz_version, watch, wwiz_type, watch_warn, updated, version FROM pkgs WHERE dist='$dist'";          $sql="SELECT name, id, up_version, wwiz_version, watch, wwiz_type, watch_warn, version, dversionmangled FROM pkgs WHERE dist='$dist'";
         //TOADD: versionmangled  
843          $rsql=pg_exec($db, $sql);          $rsql=pg_exec($db, $sql);
844          while($res_array=pg_fetch_array($rsql)) {          while($res_array=pg_fetch_array($rsql)) {
845    
# Line 824  function dehsqa_db () { Line 852  function dehsqa_db () {
852    
853              $xml="<data><id>$res_array[id]</id>" .              $xml="<data><id>$res_array[id]</id>" .
854              "<up_version>$version</up_version>" .              "<up_version>$version</up_version>" .
855              //"<dversion>$res_array[version]</dversion>" .              "<dversion>$res_array[version]</dversion>" .
856              //"<dversionmangled>$res_array[versionmangled]</dversionmangled>" .              "<dversionmangled>$res_array[dversionmangled]</dversionmangled>" .
857              "<wwiz>$wwiz</wwiz>" .              "<wwiz>$wwiz</wwiz>" .
             //"<updated>" . ($res_array['updated']=='t')? 'true': 'false' . "</updated>" .  
858              "</data>";              "</data>";
859              $value=addslashes($xml);              $value=addslashes($xml);
860              dba_replace($res_array[name],$xml,$id);              dba_replace($res_array[name],$xml,$id);
# Line 903  function update_bogus() { Line 930  function update_bogus() {
930      $sql="SELECT name FROM pkgs WHERE up_version='' AND watch!=''";      $sql="SELECT name FROM pkgs WHERE up_version='' AND watch!=''";
931      $rsql=pg_exec($db, $sql);      $rsql=pg_exec($db, $sql);
932      $res_array=pg_fetch_all($rsql);      $res_array=pg_fetch_all($rsql);
933      pg_close($db);      $orig_count = ((!is_array($res_array))?0:count($res_array));
934      if ($res_array !== false) {      if ($res_array !== false) {
935          foreach ($res_array as $entry) {          foreach ($res_array as $entry) {
936              db_upstream($entry['name']);              db_upstream($entry['name']);
# Line 911  function update_bogus() { Line 938  function update_bogus() {
938          }          }
939          dehsqa_db();          dehsqa_db();
940      }      }
941        $sql="SELECT COUNT(name) FROM pkgs WHERE up_version='' AND watch!=''";
942        $rsql=pg_exec($db, $sql);
943        $res_array=pg_fetch_array($rsql);
944        $new_count = (int)$res_array[0];
945        pg_close($db);
946      $endtime=gmdate('D, d M Y H:i:s \C\E\S\T',time()+3600*2);      $endtime=gmdate('D, d M Y H:i:s \C\E\S\T',time()+3600*2);
947      $messaggio="Dehs executed successful\nBegin: $intime\nPackages processed: ".((!is_array($res_array))?'none':count($res_array))."\nEnd: $endtime";      $messaggio="Dehs executed successful\nBegin: $intime\n".
948        "Packages processed: $orig_count\n" .
949        "New bogus watches count: $new_count\nEnd: $endtime";
950      mail($email_all, "DEHS update_bogus report", $messaggio,      mail($email_all, "DEHS update_bogus report", $messaggio,
951      "From: dehs-noreply@{$_SERVER['SERVER_NAME']}\r\n" .      "From: dehs-noreply@{$_SERVER['SERVER_NAME']}\r\n" .
952      "Reply-To: dehs-noreply@{$_SERVER['SERVER_NAME']}\r\n" .      "Reply-To: dehs-noreply@{$_SERVER['SERVER_NAME']}\r\n" .

Legend:
Removed from v.71  
changed lines
  Added in v.79

  ViewVC Help
Powered by ViewVC 1.1.5