Index: trunk/admin/install.php =================================================================== diff -u -r1943 -r2000 --- trunk/admin/install.php (.../install.php) (revision 1943) +++ trunk/admin/install.php (.../install.php) (revision 2000) @@ -529,8 +529,9 @@ } } } - + usort($upgrades_arr, "VersionSort"); + $result=0; $failCheck=1; $stopCheck=2; @@ -556,6 +557,7 @@ $Modules[] = Array('module'=>$rs->fields['Name'],'curver'=>$rs->fields['Version'],'newver'=>$newver,'error'=>$result!='pass'); // $Texts[] = $rs->fields['Name']." (".$rs->fields['Version']." ".prompt_language("la_to")." ".GetMaxPortalVersion($dir_name).")"; } + /*$dir = @dir($dir_name); while ($file = $dir->read()) { @@ -643,17 +645,27 @@ usort($upgrades_arr, "VersionSort"); - foreach($upgrades_arr as $file) { - $file_tmp = str_replace("inportal_upgrade_v", "", $file); - $file_tmp = str_replace(".sql", "", $file_tmp); + foreach($upgrades_arr as $file) + { + preg_match('/inportal_upgrade_v(.*).(php|sql)$/', $file, $rets); + $tmp_version = $rets[1]; + $tmp_extension = $rets[2]; - if (ConvertVersion($file_tmp) > ConvertVersion($current_version)) { + if (ConvertVersion($tmp_version) > ConvertVersion($current_version) ) + { $filename = $pathtoroot.$mod_path."/admin/install/upgrades/$file"; //echo "Running: $filename
"; - if(file_exists($filename)) - { - RunSQLFile($ado, $filename); - } + if( file_exists($filename) ) + { + if($tmp_extension == 'sql') + { + RunSQLFile($ado, $filename); + } + else + { + include_once $filename; + } + } } }