Index: trunk/admin/install.php =================================================================== diff -u -r271 -r282 --- trunk/admin/install.php (.../install.php) (revision 271) +++ trunk/admin/install.php (.../install.php) (revision 282) @@ -349,10 +349,10 @@ else { $act = ''; - if (str_replace('.', '', $g_InPortal) >= 105) { + if (ConvertVersion($g_InPortal) >= ConvertVersion("1.0.5")) { $act = 'check'; } - $rfile = @fopen(GET_LICENSE_URL."?login=".md5($_POST['UserName'])."&password=".md5($_POST['UserPass'])."&action=$act&license_code=".base64_encode($g_LicenseCode)."&version=".str_replace('.', '', GetMaxPortalVersion($pathtoroot.$admin))."&domain=".base64_encode($_SERVER['SERVER_NAME']), "r"); + $rfile = @fopen(GET_LICENSE_URL."?login=".md5($_POST['UserName'])."&password=".md5($_POST['UserPass'])."&action=$act&license_code=".base64_encode($g_LicenseCode)."&version=".ConvertVersion(GetMaxPortalVersion($pathtoroot.$admin))."&domain=".base64_encode($_SERVER['SERVER_NAME']), "r"); if (!$rfile) { $login_err_mesg = "Unable to connect to the Intechnic server!"; $LoggedIn = false; @@ -447,20 +447,10 @@ $sql = "SELECT Name, Version FROM ".$g_TablePrefix."Modules"; $rs = $ado->Execute($sql); - //echo '
'.print_r($rs->GetRows(), true).'
'; - $i = 0; - + $i = 0; while ($rs && !$rs->EOF) { - $p = strtolower($rs->fields['Name']); - // $modules .= strtolower($rs->fields['Name']).','; - // $rs->MoveNext(); - // } - - // $mod_arr = explode(",", substr($modules, 0, strlen($modules) - 1)); - - // foreach($mod_arr as $p) - // { + $p = strtolower($rs->fields['Name']); if ($p == 'in-portal') { $p = ''; @@ -469,24 +459,20 @@ $dir_name = $pathtoroot.$p."/admin/install/upgrades/"; $dir = @dir($dir_name); - //echo "
"; print_r($dir); echo "
"; while ($file = $dir->read()) { if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) - { - $file = str_replace("inportal_upgrade_v", "", $file); - $file = str_replace(".sql", "", $file); - - if ($file != '' && !strstr($file, 'changelog') && !strstr($file, 'readme')) { + { + if (strstr($file, 'inportal_upgrade_v')) { + $file = str_replace("inportal_upgrade_v", "", $file); + $file = str_replace(".sql", "", $file); + $sql = "SELECT count(*) AS count FROM ".$g_TablePrefix."Modules WHERE Name = '".$rs->fields['Name']."' AND Version = '$file'"; $rs1 = $ado->Execute($sql); - if ($rs1->fields['count'] == 0 && str_replace('.', '', $file) > str_replace('.', '', $rs->fields['Version'])) { - //$sql = "SELECT Version FROM ".$g_TablePrefix."Modules WHERE Name = '".$p."'"; - //$rs2 = $ado->Execute($sql); + if ($rs1->fields['count'] == 0 && ConvertVersion($file) > ConvertVersion($rs->fields['Version'])) { if ($Modules[$i-1] == $rs->fields['Name']) { $Texts[$i-1] = $rs->fields['Name']." (".$rs->fields['Version']." ".prompt_language("la_to")." ".$file.")"; - //$Modules[] = $rs->fields['Name']; $i--; } else { @@ -532,22 +518,32 @@ $tmp2 = 0; while ($file = $dir->read()) { if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) - { - $file = str_replace("inportal_upgrade_v", "", $file); - $file = str_replace(".sql", "", $file); - - if ($file != '' && !strstr($file, 'changelog') && !strstr($file, 'readme')) { - $tmp1 = str_replace(".", "", $file); + { + if (strstr($file, 'inportal_upgrade_v')) { + $file_tmp = str_replace("inportal_upgrade_v", "", $file); + $file_tmp = str_replace(".sql", "", $file); + + if (ConvertVersion($file_tmp) > ConvertVersion($current_version)) { + $filename = $pathtoroot.$mod_name."/admin/install/upgrades/$file"; + //echo "Trying Version: $try_version
"; + if(file_exists($filename)) + { + RunSQLFile($ado, $filename); + set_ini_value("Module Versions", $p, $try_version); + save_values(); + } + +/* $tmp1 = str_replace(".", "", $file); if ($tmp1 > $tmp2) { $new_version = $file; - } + }*/ } } - $tmp2 = $tmp1; + //$tmp2 = $tmp1; } - $version_nrs = explode(".", $new_version); +/* $version_nrs = explode(".", $new_version); for ($i = 0; $i < $version_nrs[0] + 1; $i++) { for ($j = 0; $j < $version_nrs[1] + 1; $j++) { @@ -566,10 +562,10 @@ } } } - } - - $state = 'languagepack_upgrade'; + }*/ } + + $state = 'languagepack_upgrade'; } // upgrade language pack @@ -721,7 +717,7 @@ if ($_POST['login'] != '' && $_POST['password'] != '') { // Here we determine weather login is ok & check available licenses - $rfile = @fopen(GET_LICENSE_URL."?login=".md5($_POST['login'])."&password=".md5($_POST['password'])."&version=".str_replace('.', '', GetMaxPortalVersion($pathtoroot.$admin))."&domain=".base64_encode($_SERVER['SERVER_NAME']), "r"); + $rfile = @fopen(GET_LICENSE_URL."?login=".md5($_POST['login'])."&password=".md5($_POST['password'])."&version=".ConvertVersion(GetMaxPortalVersion($pathtoroot.$admin))."&domain=".base64_encode($_SERVER['SERVER_NAME']), "r"); if (!$rfile) { $get_license_error = "Unable to connect to the Intechnic server! Please try again later!"; $state = "get_license"; @@ -780,7 +776,7 @@ } else { // Here we download license - $rfile = @fopen(GET_LICENSE_URL."?license_id=".md5($_POST['licenses'])."&dlog=".md5($_POST['dlog'])."&dpass=".md5($_POST['dpass'])."&version=".str_replace('.', '', GetMaxPortalVersion($pathtoroot.$admin))."&domain=".base64_encode($_POST['domain']), "r"); + $rfile = @fopen(GET_LICENSE_URL."?license_id=".md5($_POST['licenses'])."&dlog=".md5($_POST['dlog'])."&dpass=".md5($_POST['dpass'])."&version=".ConvertVersion(GetMaxPortalVersion($pathtoroot.$admin))."&domain=".base64_encode($_POST['domain']), "r"); if (!$rfile) { $get_license_error = "Unable to connect to the Intechnic server! Please try again later!"; $state = "get_license"; @@ -941,17 +937,17 @@ while ($file = $dir->read()) { if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) { - $file = str_replace("inportal_upgrade_v", "", $file); - $file = str_replace(".sql", "", $file); - if ($file != '' && !strstr($file, 'changelog') && !strstr($file, 'readme')) { + if (strstr($file, 'inportal_upgrade_v')) { + $file = str_replace("inportal_upgrade_v", "", $file); + $file = str_replace(".sql", "", $file); if ($p == '') { $p = 'in-portal'; } $sql = "SELECT Version FROM ".$g_TablePrefix."Modules WHERE Name = '".$p."'"; $rs = $ado->Execute($sql); - if (str_replace(".", "", $rs->fields['Version']) < str_replace(".", "", $file)) { + if (ConvertVersion($rs->fields['Version']) < ConvertVersion($file)) { $show_upgrade = true; } } @@ -1425,7 +1421,7 @@ } - $sql = "SELECT Name FROM ".GetTablePrefix()."Modules"; +/* $sql = "SELECT Name FROM ".GetTablePrefix()."Modules"; $rs = $ado->Execute($sql); while($rs && !$rs->EOF) @@ -1481,7 +1477,7 @@ $rs->MoveNext(); } - +*/ $state="lang_select"; } Index: trunk/admin/install/install_lib.php =================================================================== diff -u -r271 -r282 --- trunk/admin/install/install_lib.php (.../install_lib.php) (revision 271) +++ trunk/admin/install/install_lib.php (.../install_lib.php) (revision 282) @@ -20,12 +20,12 @@ $version = ''; while ($file = $dir->read()) { if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) - { - $file = str_replace("inportal_upgrade_v", "", $file); - $file = str_replace(".sql", "", $file); - - if ($file != '' && !strstr($file, 'changelog') && !strstr($file, 'readme')) { - if (str_replace('.', '', $file) > str_replace('.', '', $version)) { + { + if (strstr($file, 'inportal_upgrade_v')) { + $file = str_replace("inportal_upgrade_v", "", $file); + $file = str_replace(".sql", "", $file); + + if (ConvertVersion($file) > ConvertVersion($version)) { $version = $file; } } @@ -35,6 +35,19 @@ return $version; } +function ConvertVersion($version) +{ + $parts = explode('.', $version); + + foreach ($parts as $part) { + $bin .= str_pad(decbin($part), 8, '0', STR_PAD_LEFT); + } + + $dec = bindec($bin); + + return $dec; +} + function TableExists($ado, $tables) { global $g_TablePrefix; Index: trunk/kernel/searchaction.php =================================================================== diff -u -r123 -r282 --- trunk/kernel/searchaction.php (.../searchaction.php) (revision 123) +++ trunk/kernel/searchaction.php (.../searchaction.php) (revision 282) @@ -175,7 +175,6 @@ // Theme List Search case 'm_theme_search': - echo "in search action (themes)
"; $searchlist = trim( $objSession->GetVariable("ThemeSearchWord") ); if(strlen($searchlist) > 0) $searchlist = ","; $searchlist = $_POST["list_search"]; Index: trunk/admin/config/config_theme.php =================================================================== diff -u -r91 -r282 --- trunk/admin/config/config_theme.php (.../config_theme.php) (revision 91) +++ trunk/admin/config/config_theme.php (.../config_theme.php) (revision 282) @@ -143,14 +143,14 @@ if(strlen($SearchWords)) { - $where = $objUsers->AdminSearchWhereClause($SearchWords); + $where = $objThemes->AdminSearchWhereClause($SearchWords); } else $where = ""; $order = trim($objConfig->Get("Theme_LV_Sortfield")." ".$objConfig->Get("Theme_LV_Sortorder")); $sql = "SELECT t.*,ELT(t.enabled+1,'".admin_language("la_Text_Disabled")."','".admin_language("la_Text_Enabled")."') as Status "; -$sql .= "FROM ".GetTablePrefix()."Theme as t"; +$sql .= "FROM ".GetTablePrefix()."Theme as t "; if(strlen($where)) $sql .= "WHERE ".$where." "; if(strlen($order)) @@ -216,6 +216,10 @@ +
+ + +