/[phpcompta]/phpcompta/html/admin/setup.php
ViewVC logotype

Diff of /phpcompta/html/admin/setup.php

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

revision 1.32 by sparkyx, Wed Sep 28 15:07:48 2005 UTC revision 1.33 by sparkyx, Sun Oct 23 18:52:59 2005 UTC
# Line 97  function GetVersion($p_cn) { Line 97  function GetVersion($p_cn) {
97  function ExecuteScript($p_cn,$script) {  function ExecuteScript($p_cn,$script) {
98    $hf=fopen($script,'r');    $hf=fopen($script,'r');
99    $sql="";    $sql="";
100      $flag_function=false;
101    while (!feof($hf)) {    while (!feof($hf)) {
102      $buffer=fgets($hf);      $buffer=fgets($hf);
103        $buffer=str_replace ("$","\$",$buffer);
104        print $buffer."<br>";
105      // comment are not execute      // comment are not execute
106      if ( substr($buffer,0,2) == "--" ) {      if ( substr($buffer,0,2) == "--" ) {
107        //echo "comment $buffer";        //echo "comment $buffer";
# Line 109  function ExecuteScript($p_cn,$script) { Line 112  function ExecuteScript($p_cn,$script) {
112              //echo "Blank $buffer";              //echo "Blank $buffer";
113        Continue;        Continue;
114      }      }
115        if ( strpos($buffer,"create function")===0 ) {
116                echo "found a function";
117                $flag_function=true;
118                $sql=$buffer;
119                continue;
120        }
121      // No semi colon -> multiline command      // No semi colon -> multiline command
122      if ( strpos($buffer,';') == false ) {      if ( $flag_function== false && strpos($buffer,';') == false ) {
123        $sql.=$buffer;        $sql.=$buffer;
124        continue;        continue;
125      }      }
126      // cut the semi colon      if ( $flag_function ) {
127      $buffer=str_replace (';','',$buffer);              if ( strpos($buffer, "language plpgsql") == false ) {
128                    $sql.=$buffer;
129                    continue;
130                }
131        } else  {
132                // cut the semi colon
133                $buffer=str_replace (';','',$buffer);
134                }
135      $sql.=$buffer;      $sql.=$buffer;
136      ExecSql($p_cn,$sql);      if ( ExecSql($p_cn,$sql) == false ) {
137                Rollback($p_cn);
138                print "ERROR : $sql";
139                break;
140                }
141      $sql="";      $sql="";
142        $flag_function=false;
143        print "<hr>";
144    } // while (feof)    } // while (feof)
145    fclose($hf);    fclose($hf);
146  }  }
# Line 275  $MaxDossier=pg_NumRows($Resdossier); Line 296  $MaxDossier=pg_NumRows($Resdossier);
296    
297  for ($e=0;$e < $MaxDossier;$e++) {  for ($e=0;$e < $MaxDossier;$e++) {
298    $db_row=pg_fetch_array($Resdossier,$e);    $db_row=pg_fetch_array($Resdossier,$e);
   echo "Patching ".$db_row['dos_name']."<hr>";  
299    $db=DbConnect($db_row['dos_id'],'dossier');    $db=DbConnect($db_row['dos_id'],'dossier');
300      echo "Patching ".$db_row['dos_name']." from the version ".GetVersion($db)."<hr>";
301    
302    if ( GetVersion($db) <= 4 ) {    if ( GetVersion($db) <= 4 ) {
303      ExecuteScript($db,'sql/patch/upgrade4.sql');      ExecuteScript($db,'sql/patch/upgrade4.sql');
304                

Legend:
Removed from v.1.32  
changed lines
  Added in v.1.33

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26