Index: trunk/admin/install.php =================================================================== diff -u -N --- trunk/admin/install.php (revision 8104) +++ trunk/admin/install.php (revision 0) @@ -1,2043 +0,0 @@ - $section) - { - foreach($section as $key => $value) - { - $key = "g_".str_replace('-', '', $key); - global $$key; - $$key = $value; - } - } -} -else -{ - $state=""; - $write_access = is_writable($pathtoroot); - if($write_access) - { - set_ini_value("Database", "DBType", ""); - set_ini_value("Database", "DBHost", ""); - set_ini_value("Database", "DBUser", ""); - set_ini_value("Database", "DBUserPassword", ""); - set_ini_value("Database", "DBName", ""); - set_ini_value("Module Versions", "In-Portal", ""); - - save_values(); - } -} - -$titles[1] = "General Site Setup"; -$configs[1] = "in-portal:configure_general"; -$mods[1] = "In-Portal"; - -$titles[2] = "User Setup"; -$configs[2] = "in-portal:configure_users"; -$mods[2] = "In-Portal:Users"; - -$titles[3] = "Category Display Setup"; -$configs[3] = "in-portal:configure_categories"; -$mods[3] = "In-Portal"; - -// simulate rootURL variable: begin - $rootURL = 'http://'.dirname($_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']); - $tmp = explode('/', $rootURL); - if( $tmp[ count($tmp) - 1 ] == $admin) unset( $tmp[ count($tmp) - 1 ] ); - $rootURL = implode('/', $tmp).'/'; - unset($tmp); - //echo "RU: $rootURL
"; -// simulate rootURL variable: end - -$db_savings = Array('dbinfo', 'db_config_save', 'db_reconfig_save'); //, 'reinstall_process' -if( isset($g_DBType) && $g_DBType && strlen($state)>0 && !in_array($state, $db_savings) ) -{ - define('REL_PATH', 'admin'); - require_once($pathtoroot."kernel/startup.php"); - $localURL=$rootURL."kernel/"; - $adminURL = $rootURL.$admin; - $imagesURL = $adminURL."/images"; - -//admin only util - - $pathtolocal = $pathtoroot."kernel/"; - require_once ($pathtoroot.$admin."/include/elements.php"); - //require_once ($pathtoroot."kernel/admin/include/navmenu.php"); - require_once ($pathtolocal."admin/include/navmenu.php"); - require_once($pathtoroot.$admin."/toolbar.php"); - - set_cookie(SESSION_COOKIE_NAME, '', adodb_mktime() - 3600, rtrim(BASE_PATH, '/') ); -} - -function GetPathChar($path = null) -{ - if( !isset($path) ) $path = $GLOBALS['pathtoroot']; - $pos = strpos($path, ':'); - return ($pos === false) ? "/" : "\\"; -} - -function SuperStrip($str, $inverse = false) -{ - $str = $inverse ? str_replace("%5C","\\",$str) : str_replace("\\","%5C",$str); - return stripslashes($str); -} - -$skip_step = false; - -require_once($pathtoroot.$admin."/install/inst_ado.php"); -$helpURL = $rootURL.$admin.'/help/install_help.php?destform=popup&help_usage=install'; -?> - - -In-Portal Installation - - - - - - - - -
-
"> - - - - - -
'; - } - $general_error .= "Install cannot write to config.php in the root directory of your in-portal installation ($pathtoroot)."; - //die(); - } - - if(!is_writable($pathtoroot."themes/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's Theme directory must be writable (".$pathtoroot."themes/)."; - //die(); - } - - if(!is_writable($pathtoroot."kernel/images/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's Image Upload directory must be writable (".$pathtoroot."kernel/images/)."; - //die(); - } - - if(!is_writable($pathtoroot."kernel/images/pending")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's Pending Image Upload directory must be writable (".$pathtoroot."kernel/images/pending)."; - //die(); - } - - if(!is_writable($pathtoroot."admin/backupdata/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's Backup directory must be writable (".$pathtoroot."admin/backupdata/)."; - //die(); - } - - if(!is_writable($pathtoroot."admin/export/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's Export directory must be writable (".$pathtoroot."admin/export/)."; - //die(); - } - - if(!is_writable($pathtoroot."kernel/stylesheets/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's stylesheets directory must be writable (".$pathtoroot."kernel/stylesheets/)."; - //die(); - } - - if(!is_writable($pathtoroot."kernel/user_files/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's CMS images directory must be writable (".$pathtoroot."kernel/user_files/)."; - //die(); - } - - if(!is_writable($pathtoroot."kernel/cache/")) - { - if ($general_error != '') { - $general_error .= '

'; - } - $general_error .= "In-portal's templates cache directory must be writable (".$pathtoroot."kernel/cache/)."; - //die(); - } - - if($installed) - { - $state="reinstall"; - } - else { - $state="dbinfo"; - } - -} - -if($state=="reinstall_process") -{ - $login_err_mesg = ''; // always init vars before use - if( !isset($g_License) ) $g_License = ''; - $lic = base64_decode($g_License); - if(strlen($lic)) - { - a83570933e44bc66b31dd7127cf3f23a($lic); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - } - - $LoggedIn = FALSE; - if($_POST["UserName"]=="root") - { - $ado =& inst_GetADODBConnection(); - $sql = "SELECT * FROM ".$g_TablePrefix."ConfigurationValues WHERE VariableName='RootPass'"; - - $rs = $ado->Execute($sql); - if($rs && !$rs->EOF) - { - $RootPass = $rs->fields["VariableValue"]; - - if(strlen($RootPass)>0) { - if (ConvertVersion($g_InPortal) >= ConvertVersion("1.3.0")) { - $LoggedIn = ($RootPass==md5(md5($_POST["UserPass"]).'b38')); - } - else { - $LoggedIn = ($RootPass==md5($_POST["UserPass"])); - } - } - } - else { - $login_err_mesg = 'Invalid username or password'; - } - } - else - { - $act = ''; - 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=".GetMaxPortalVersion($pathtoroot.$admin)."&domain=".base64_encode($_SERVER['HTTP_HOST']), "r"); - if (!$rfile) { - $login_err_mesg = "Unable to connect to the Intechnic server!"; - $LoggedIn = false; - } - else { - $rcontents = ''; - while (!feof($rfile)) { - $line = fgets($rfile, 10000); - $rcontents .= $line; - } - @fclose($rfile); - - if (substr($rcontents, 0, 5) == 'Error') { - $login_err_mesg = substr($rcontents, 6); - $LoggedIn = false; - } - else { - $LoggedIn = true; - } - } - //$LoggedIn = ($i_User == $_POST["UserName"] && ($i_Pswd == $_POST["UserPass"]) && strlen($i_User)>0) || strlen($i_User)==0; - } - - if($LoggedIn) - { - if (!(int)$_POST["inp_opt"]) { - $state="reinstall"; - $inst_error = "Please select one of the options above!"; - } - else { - switch((int)$_POST["inp_opt"]) - { - case 0: - $inst_error = "Please select an option above"; - break; - case 1: - /* clean out all tables */ - $install_type = 4; - $ado =& inst_GetADODBConnection(); - $filename = $pathtoroot.$admin."/install/inportal_remove.sql"; - RunSchemaFile($ado,$filename); - - // removing other tables - $tables = $ado->MetaTables(); - - foreach($tables as $tab_name) { - if (stristr($tab_name, $g_TablePrefix."ses_")) { - $sql = "DROP TABLE IF EXISTS $tab_name"; - $ado->Execute($sql); - } - } - - /* run install again */ - $state="license"; - break; - case 2: - $install_type = 3; - $state="dbinfo"; - break; - case 3: - $install_type = 5; - $state="license"; - break; - case 4: - $install_type = 6; - /* clean out all tables */ - $ado =& inst_GetADODBConnection(); - //$filename = $pathtoroot.$admin."/install/inportal_remove.sql"; - //RunSchemaFile($ado,$filename); - /* run install again */ - $state="restore_select"; - break; - case 5: - $install_type = 7; - /* change DB config */ - $state="db_reconfig"; - break; - case 6: - $install_type = 8; - $state = "upgrade"; - break; - case 7: - $install_type = 9; - $state = "fix_paths"; - break; - } - } - } - else - { - $state="reinstall"; - $login_error = $login_err_mesg;//"Invalid Username or Password - Try Again"; - } -} - -if ($state == "upgrade") { - $ado =& inst_GetADODBConnection(); - - $Modules = array(); - $Texts = array(); - - if (ConvertVersion(GetMaxPortalVersion($pathtoroot.$admin)) >= ConvertVersion("1.0.5") && ($g_LicenseCode == '' && $g_License != '')) { - $state = 'reinstall'; - $inst_error = "Your license must be updated before you can upgrade. Please don't use 'Existing License' option, instead either Download from Intechnic or Upload a new license file!"; - } - else { - $sql = "SELECT Name, Version, Path FROM ".$g_TablePrefix."Modules ORDER BY LoadOrder asc"; - - $rs = $ado->Execute($sql); - - $i = 0; - while ($rs && !$rs->EOF) { - $p = $rs->fields['Path']; - - if ($rs->fields['Name'] == 'In-Portal') { - $p = ''; - } - - $dir_name = $pathtoroot.$p."admin";///install/upgrades/"; - - if($rs->fields['Version'] != $newver = GetMaxPortalVersion($dir_name)) - { - -//////////////////// - - $mod_path = $rs->fields['Path']; - $current_version = $rs->fields['Version']; - if ($rs->fields['Name'] == 'In-Portal') $mod_path = ''; - - $dir_name = $pathtoroot.$mod_path."/admin/install/upgrades/"; - $dir = @dir($dir_name); - - if (!$dir) { - $rs->MoveNext(); - continue; - } - - $upgrades_arr = Array(); - - $new_version = ''; - while ($file = $dir->read()) { - if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) { - if (strstr($file, 'inportal_check_v')) { - $upgrades_arr[] = $file; - } - } - } - - usort($upgrades_arr, "VersionSort"); - - $result=0; - $failCheck=1; - $stopCheck=2; - $CheckErrors = Array(); - - foreach($upgrades_arr as $file) - { - $file_tmp = str_replace("inportal_check_v", "", $file); - $file_tmp = str_replace(".php", "", $file_tmp); - - if (ConvertVersion($file_tmp) > ConvertVersion($current_version)) { - $filename = $pathtoroot.$mod_path."/admin/install/upgrades/$file"; - if(file_exists($filename)) - { - include($filename); - if( $result & 2 ) break; - } - } - } - -//////////////////// - - $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()) { - if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) - { - 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 && 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.")"; - $i--; - } - else { - $Texts[$i] = $rs->fields['Name']." (".$rs->fields['Version']." ".prompt_language("la_to")." ".$file.")"; - $Modules[$i] = $rs->fields['Name']; - } - - $i++; - } - } - } - }*/ - - $rs->MoveNext(); - } - - $sql = 'DELETE FROM '.$g_TablePrefix.'Cache WHERE VarName IN ("config_files","configs_parsed","sections_parsed")'; - $ado->Execute($sql); - - $include_file = $pathtoroot.$admin."/install/upgrade.php"; - } -} - -if ($state == "upgrade_process") { - // K4 applition is now always available during upgrade process - if (!defined('FULL_PATH')) { - define('FULL_PATH', realpath(dirname(__FILE__).'/..')); - } - - include_once(FULL_PATH.'/core/kernel/startup.php'); - $application =& kApplication::Instance(); - $application->Init(); - - // force rereading of configs - $unit_config_reader =& $application->recallObject('kUnitConfigReader'); - $unit_config_reader->scanModules(MODULES_PATH); - - $ado =& inst_GetADODBConnection(); - $mod_arr = $_POST['modules']; - - $mod_str = ''; - foreach ($mod_arr as $tmp_mod) { - $mod_str .= "'$tmp_mod',"; - } - - $mod_str = substr($mod_str, 0, strlen($mod_str) - 1); - - $sql = "SELECT Name FROM ".$g_TablePrefix."Modules WHERE Name IN ($mod_str) ORDER BY LoadOrder"; - $rs = $ado->Execute($sql); - - $mod_arr = array(); - while ($rs && !$rs->EOF) { - $mod_arr[] = $rs->fields['Name']; - $rs->MoveNext(); - } - - foreach($mod_arr as $p) - { - $mod_name = strtolower($p); - - $sql = "SELECT Version, Path FROM ".$g_TablePrefix."Modules WHERE Name = '$p'"; - $rs = $ado->Execute($sql); - - $current_version = $rs->fields['Version']; - - if ($mod_name == 'in-portal') { - $mod_path = ''; - } - else { - $mod_path = $rs->fields['Path']; - } - - $dir_name = $pathtoroot.$mod_path."/admin/install/upgrades/"; - $dir = @dir($dir_name); - - $upgrades_arr = Array(); - - $new_version = ''; - while ($file = $dir->read()) { - if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) { - if (strstr($file, 'inportal_upgrade_v')) { - $upgrades_arr[] = $file; - } - } - } - - usort($upgrades_arr, "VersionSort"); - - foreach($upgrades_arr as $file) - { - preg_match('/inportal_upgrade_v(.*).(php|sql)$/', $file, $rets); - $tmp_version = $rets[1]; - $tmp_extension = $rets[2]; - - if (ConvertVersion($tmp_version) > ConvertVersion($current_version) ) - { - $filename = $pathtoroot.$mod_path."/admin/install/upgrades/$file"; - //echo "Running: $filename
"; - - // SQL is processed FIRST (before corresponding PHP according to the sorting order in VersionSort() - if( file_exists($filename) ) - { - if($tmp_extension == 'sql') - { - RunSQLFile($ado, $filename); - } - else - { - include_once $filename; - } - } - } - } - - set_ini_value("Module Versions", $p, GetMaxPortalVersion($pathtoroot.$mod_path."/admin/")); - save_values(); - } - - // compile stylesheets: begin - define('FULL_PATH', realpath(dirname(__FILE__).'/..')); - include_once(FULL_PATH.'/core/kernel/startup.php'); - $application =& kApplication::Instance(); - $application->Init(); - -// $objThemes->CreateMissingThemes(false); - $application->HandleEvent($theme_event, 'adm:OnRebuildThemes'); - - $css_hash = $application->Conn->GetCol('SELECT LOWER(Name) AS Name, StylesheetId FROM '.TABLE_PREFIX.'Stylesheets', 'StylesheetId'); - - $css_table = $application->getUnitOption('css','TableName'); - $css_idfield = $application->getUnitOption('css','IDField'); - - $theme_table = $application->getUnitOption('theme', 'TableName'); - $theme_idfield = $application->getUnitOption('theme', 'IDField'); - - $theme_update_sql = 'UPDATE '.$theme_table.' SET '.$css_idfield.' = %s WHERE LOWER(Name) = %s'; - foreach($css_hash as $stylesheet_id => $theme_name) - { - $css_item =& $application->recallObject('css', null, Array('skip_autoload' => true)); - $css_item->Load($stylesheet_id); - $css_item->Compile(); - $application->Conn->Query( sprintf($theme_update_sql, $stylesheet_id, $application->Conn->qstr( getArrayValue($css_hash,$stylesheet_id) ) ) ); - } - - // do redirect, because upgrade scripts can eat a lot or memory used for language pack upgrade operation - $application->Redirect('install', Array('state' => 'languagepack_upgrade'), '', 'install.php'); - // compile stylesheets: end - - $state = 'languagepack_upgrade'; -} - -// upgrade language pack -if($state=='languagepack_upgrade') -{ - $state = 'lang_install_init'; - if( is_object($application) ) $application->SetVar('lang', Array('english.lang') ); - $force_finish = true; -} - -if ($state == 'fix_paths') { - $ado = inst_GetADODBConnection(); - $sql = "SELECT * FROM ".$g_TablePrefix."ConfigurationValues WHERE VariableName = 'Site_Name' OR VariableName LIKE '%Path%'"; - $path_rs = $ado->Execute($sql); - $include_file = $pathtoroot.$admin."/install/fix_paths.php"; -} - -if ($state == 'fix_paths_process') { - $ado = inst_GetADODBConnection(); - //$state = 'fix_paths'; - //$include_file = $pathtoroot.$admin."/install/fix_paths.php"; - foreach($_POST["values"] as $key => $value) { - $sql = "UPDATE ".$g_TablePrefix."ConfigurationValues SET VariableValue = '".$value."' WHERE VariableName = '".$key."'"; - $ado->Execute($sql); - } - - $state = "finish"; -} - -if($state=="db_reconfig_save") -{ - $ini_vars = inst_parse_portal_ini($ini_file,TRUE); - - foreach($ini_vars as $secname => $section) - { - foreach($section as $key => $value) - { - $key = "g_".str_replace("-", "", $key); - global $$key; - $$key = $value; - } - } - unset($ado); - $ado = VerifyDB('db_reconfig', 'finish', 'SaveDBConfig', true); -} - - -if($state=="db_reconfig") -{ - $include_file = $pathtoroot.$admin."/install/db_reconfig.php"; -} - -if($state=="restore_file") -{ - if($_POST["submit"]=="Update") - { - $filepath = $_POST["backupdir"]; - $state="restore_select"; - } - else - { - $filepath = stripslashes($_POST['backupdir']); - $backupfile = $filepath.$path_char.str_replace('(.*)', $_POST['backupdate'], BACKUP_NAME); - - if(file_exists($backupfile) && is_readable($backupfile)) - { - $ado =& inst_GetADODBConnection(); - - $show_warning = false; - - if (!$_POST['warning_ok']) { - // Here we comapre versions between backup and config - $file_contents = file_get_contents($backupfile); - - $file_tmp_cont = explode("#------------------------------------------", $file_contents); - $tmp_vers = $file_tmp_cont[0]; - - $vers_arr = explode(";", $tmp_vers); - $ini_values = inst_parse_portal_ini($ini_file); - - foreach ($ini_values as $key => $value) { - foreach ($vers_arr as $k) { - if (strstr($k, $key)) { - if (!strstr($k, $value)) { - $show_warning = true; - } - } - } - } - //$show_warning = true; - } - - if (!$show_warning) { - $filename = $pathtoroot.$admin.$path_char.'install'.$path_char.'inportal_remove.sql'; - RunSchemaFile($ado,$filename); - $state="restore_run"; - } - else { - $state = "warning"; - $include_file = $pathtoroot.$admin."/install/warning.php"; - } - } - else { - if ($_POST['backupdate'] != '') { - $include_file = $pathtoroot.$admin."/install/restore_select.php"; - $restore_error = "$backupfile not found or could not be read"; - } - else { - $include_file = $pathtoroot.$admin."/install/restore_select.php"; - $restore_error = "No backup selected!!!"; - } - } - } - //echo $restore_error; -} - -if($state=="restore_select") -{ - if( isset($_POST['backupdir']) ) $filepath = stripslashes($_POST['backupdir']); - $include_file = $pathtoroot.$admin."/install/restore_select.php"; -} - -if($state=="restore_run") -{ - $ado =& inst_GetADODBConnection(); - $FileOffset = (int)$_GET["Offset"]; - if(!strlen($backupfile)) - $backupfile = SuperStrip($_GET['File'], true); - - $include_file = $pathtoroot.$admin."/install/restore_run.php"; -} - -if($state=="db_config_save") -{ - set_ini_value("Database", "DBType",$_POST["ServerType"]); - set_ini_value("Database", "DBHost",$_POST["ServerHost"]); - set_ini_value("Database", "DBName",$_POST["ServerDB"]); - set_ini_value("Database", "DBUser",$_POST["ServerUser"]); - set_ini_value("Database", "DBUserPassword",$_POST["ServerPass"]); - set_ini_value("Database","TablePrefix",$_POST["TablePrefix"]); - - save_values(); - $ini_vars = inst_parse_portal_ini($ini_file,TRUE); - - foreach($ini_vars as $secname => $section) - { - foreach($section as $key => $value) - { - $key = "g_".str_replace("-", "", $key); - global $$key; - $$key = $value; - } - } - unset($ado); - $ado = VerifyDB('dbinfo', 'license'); -} - -if($state=="dbinfo") -{ - if ($install_type == '') { - $install_type = 1; - } - $include_file = $pathtoroot.$admin."/install/dbinfo.php"; -} - -if ($state == "download_license") { - $ValidLicense = FALSE; - - $lic_login = isset($_POST['login']) ? $_POST['login'] : ''; - $lic_password = isset($_POST['password']) ? $_POST['password'] : ''; - - if ($lic_login != '' && $lic_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=".GetMaxPortalVersion($pathtoroot.$admin)."&domain=".base64_encode($_SERVER['HTTP_HOST']), "r"); - if (!$rfile) { - $get_license_error = "Unable to connect to the Intechnic server! Please try again later!"; - $state = "get_license"; - $include_file = $pathtoroot.$admin."/install/get_license.php"; - } - else { - $rcontents = ''; - while (!feof($rfile)) { - $line = fgets($rfile, 10000); - $rcontents .= $line; - } - @fclose($rfile); - - if (substr($rcontents, 0, 5) == 'Error') { - $get_license_error = substr($rcontents, 6); - $state = "get_license"; - $include_file = $pathtoroot.$admin."/install/get_license.php"; - } - else { - if (substr($rcontents, 0, 3) == "SEL") { - $state = "download_license"; - $license_select = substr($rcontents, 4); - $include_file = $pathtoroot.$admin."/install/download_license.php"; - } - else { - // Here we get one license - $tmp_data = explode('Code==:', $rcontents); - - $data = base64_decode(str_replace("In-Portal License File - do not edit!\n", "", $tmp_data[0])); - a83570933e44bc66b31dd7127cf3f23a($data); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - if($ValidLicense) - { - set_ini_value("Intechnic","License",base64_encode($data)); - set_ini_value("Intechnic","LicenseCode",$tmp_data[1]); - save_values(); - $state="domain_select"; - $got_license = 1; - } - else { - $license_error="Invalid License File"; - } - if(!$ValidLicense) - { - $state="license"; - } - } - } - } - - } - else if ($_POST['licenses'] == '') { - $state = "get_license"; - $get_license_error = "Username and / or password not specified!!!"; - $include_file = $pathtoroot.$admin."/install/get_license.php"; - } - else { - // Here we download license - $rfile = @fopen(GET_LICENSE_URL."?license_id=".md5($_POST['licenses'])."&dlog=".md5($_POST['dlog'])."&dpass=".md5($_POST['dpass'])."&version=".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"; - $include_file = $pathtoroot.$admin."/install/get_license.php"; - } - else { - $rcontents = ''; - while (!feof($rfile)) { - $line = fgets($rfile, 10000); - $rcontents .= $line; - } - @fclose($rfile); - - if (substr($rcontents, 0, 5) == 'Error') { - $download_license_error = substr($rcontents, 6); - $state = "download_license"; - $include_file = $pathtoroot.$admin."/install/download_license.php"; - } - else { - $tmp_data = explode('Code==:', $rcontents); - - $data = base64_decode(str_replace("In-Portal License File - do not edit!\n", "", $tmp_data[0])); - a83570933e44bc66b31dd7127cf3f23a($data); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - if($ValidLicense) - { - set_ini_value("Intechnic","License",base64_encode($data)); - // old licensing script doen't return 2nd parameter (licanse code) - if( isset($tmp_data[1]) ) set_ini_value("Intechnic","LicenseCode",$tmp_data[1]); - save_values(); - $state="domain_select"; - } - else { - $license_error="Invalid License File"; - } - if(!$ValidLicense) - { - $state="license"; - } - } - } - } -} - -if($state=="license_process") -{ - $ValidLicense = FALSE; - $tmp_lic_opt = GetVar('lic_opt', true); - switch($tmp_lic_opt) - { - case 1: /* download from intechnic */ - $include_file = $pathtoroot.$admin."/install/get_license.php"; - $state = "get_license"; - //if(!$ValidLicense) - //{ - // $state="license"; - //} - break; - case 2: /* upload file */ - $file = $_FILES["licfile"]; - if(is_array($file)) - { - move_uploaded_file($file["tmp_name"],$pathtoroot."themes/tmp.lic"); - @chmod($pathtoroot."themes/tmp.lic", 0666); - - $fp = @fopen($pathtoroot."themes/tmp.lic","rb"); - if($fp) - { - $lic = fread($fp,filesize($pathtoroot."themes/tmp.lic")); - fclose($fp); - } - - $tmp_data = ae666b1b8279502f4c4b570f133d513e(FALSE,$pathtoroot."themes/tmp.lic"); - $data = $tmp_data[0]; - - @unlink($pathtoroot."themes/tmp.lic"); - a83570933e44bc66b31dd7127cf3f23a($data); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - if($ValidLicense) - { - set_ini_value("Intechnic","License",base64_encode($data)); - set_ini_value("Intechnic","LicenseCode",$tmp_data[1]); - save_values(); - $state="domain_select"; - } - else - $license_error="Invalid License File"; - } - if(!$ValidLicense) - { - $state="license"; - } - break; - case 3: /* existing */ - if(strlen($g_License)) - { - $lic = base64_decode($g_License); - a83570933e44bc66b31dd7127cf3f23a($lic); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - if($ValidLicense) - { - $state="domain_select"; - } - else - { - $state="license"; - $license_error="Invalid or corrupt license detected"; - } - } - else - { - $state="license"; - $license_error="Missing License File"; - } - if(!$ValidLicense) - { - $state="license"; - } - break; - case 4: - //set_ini_value("Intechnic","License",base64_encode("local")); - //set_ini_value("Intechnic","LicenseCode",base64_encode("local")); - //save_values(); - $state="domain_select"; - break; - } - if($ValidLicense) - $state="domain_select"; -} - -if($state=="license") -{ - $include_file = $pathtoroot.$admin."/install/sel_license.php"; - -} - -if($state=="reinstall") -{ - $ado =& inst_GetADODBConnection(); - - $show_upgrade = false; - - $sql = "SELECT Name FROM ".$g_TablePrefix."Modules"; - $rs = $ado->Execute($sql); - - $modules = ''; - while ($rs && !$rs->EOF) { - $modules .= strtolower($rs->fields['Name']).','; - $rs->MoveNext(); - } - - $mod_arr = explode(",", substr($modules, 0, strlen($modules) - 1)); - - foreach($mod_arr as $p) - { - if ($p == 'in-portal') { - $p = ''; - } - - $dir_name = $pathtoroot.$p."/admin/install/upgrades/"; - - $dir = @dir($dir_name); - //echo "
"; print_r($dir); echo "
"; - - if ($dir === false) continue; - - while ($file = $dir->read()) { - if ($file != "." && $file != ".." && !is_dir($dir_name.$file)) - { - if( preg_match('/inportal_upgrade_v(.*).(php|sql)$/', $file, $rets) ) - { - if($p == '') $p = 'in-portal'; - - $sql = "SELECT Version FROM ".$g_TablePrefix."Modules WHERE Name = '".$p."'"; - $rs = $ado->Execute($sql); - - if( ConvertVersion($rs->fields['Version']) < ConvertVersion( $rets[1] ) ) - { - $show_upgrade = true; - } - } - } - } - } - - if ( !isset($install_type) || $install_type == '') { - $install_type = 2; - } - - $include_file = $pathtoroot.$admin."/install/reinstall.php"; -} - -if($state=="login") -{ - $lic = base64_decode($g_License); - if(strlen($lic)) - { - a83570933e44bc66b31dd7127cf3f23a($lic); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - } - - if(!$ValidLicense) - { - $state="license"; - } - else - if($i_User == $_POST["UserName"] || $i_Pswd == $_POST["UserPass"]) - { - $state = "domain_select"; - } - else - { - $state="getuser"; - $login_error = "Invalid User Name or Password. If you don't know your username or password, contact Intechnic Support"; - } - - //die(); -} - -if($state=="getuser") -{ - $include_file = $pathtoroot.$admin."/install/login.php"; -} - -if($state=="set_domain") -{ - if( !is_array($i_Keys) || !count($i_Keys) ) - { - $lic = base64_decode($g_License); - if(strlen($lic)) - { - a83570933e44bc66b31dd7127cf3f23a($lic); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - } - } - - if($_POST["domain"]==1) - { - $domain = $_SERVER['HTTP_HOST']; - - if (strstr($domain, $i_Keys[0]['domain']) || de3ec1b7a142cccd0d51f03d24280744($domain)) { - set_ini_value("Intechnic","Domain",$domain); - save_values(); - $state="runsql"; - } - else { - $DomainError = 'Domain name selected does not match domain name in the license!'; - $state = "domain_select"; - } - } - else - { - $domain = str_replace(" ", "", $_POST["other"]); - if ($domain != '') { - if (strstr($domain, $i_Keys[0]['domain']) || de3ec1b7a142cccd0d51f03d24280744($domain)) { - set_ini_value("Intechnic","Domain",$domain); - save_values(); - $state="runsql"; - } - else { - $DomainError = 'Domain name entered does not match domain name in the license!'; - $state = "domain_select"; - } - } - else { - $DomainError = 'Please enter valid domain!'; - $state = "domain_select"; - } - } -} - -if($state=="domain_select") -{ - if(!is_array($i_Keys)) - { - $lic = base64_decode($g_License); - if(strlen($lic)) - { - a83570933e44bc66b31dd7127cf3f23a($lic); - $ValidLicense = ((strlen($i_User)>0) && (strlen($i_Pswd)>0)); - } - } - - $include_file = $pathtoroot.$admin."/install/domain.php"; -} - - -if($state=="runsql") -{ - $ado =& inst_GetADODBConnection(); - $installed = TableExists($ado,"ConfigurationAdmin,Category,Permissions"); - if(!$installed) - { - // run core install script - K4_RunSQL('/core/install/install_schema.sql'); - K4_RunSQL('/core/install/install_data.sql'); - K4_SetModuleVersion('Core'); - - // run in-portal install script - $filename = $pathtoroot.$admin."/install/inportal_schema.sql"; - RunSchemaFile($ado,$filename); - $filename = $pathtoroot.$admin."/install/inportal_data.sql"; - RunSQLFile($ado,$filename); - - $sql = 'UPDATE '.$g_TablePrefix.'ConfigurationValues SET VariableValue = %s WHERE VariableName = %s'; - $ado->Execute( sprintf($sql, $ado->qstr('portal@'.$ini_vars['Intechnic']['Domain']), $ado->qstr('Smtp_AdminMailFrom') ) ); - - $sql = "SELECT Version FROM ".$g_TablePrefix."Modules WHERE Name = 'In-Portal'"; - $rs = $ado->Execute($sql); - - set_ini_value("Module Versions", "In-Portal", $rs->fields['Version']); - save_values(); - - require_once $pathtoroot.'kernel/include/tag-class.php'; - if( !is_object($objTagList) ) $objTagList = new clsTagList(); - - // install kernel specific tags - $objTagList->DeleteTags(); // delete all existing tags in db - - // create 3 predifined tags (because there no functions with such names - $t = new clsTagFunction(); - $t->Set("name","include"); - $t->Set("description","insert template output into the current template"); - $t->Create(); - $t->AddAttribute("_template","tpl","Template to insert","",TRUE); - $t->AddAttribute("_supresserror","bool","Supress missing template errors","",FALSE); - $t->AddAttribute("_dataexists","bool","Only include template output if content exists (content is defined by the tags in the template)","",FALSE); - $t->AddAttribute("_nodatatemplate","tpl","Template to include if the nodataexists condition is true","",FALSE); - unset($t); - - $t = new clsTagFunction(); - $t->Set("name","perm_include"); - $t->Set("description","insert template output into the current template if permissions are set"); - $t->Create(); - $t->AddAttribute("_template","tpl","Template to insert","",TRUE); - $t->AddAttribute("_noaccess","tpl","Template to insert if access is denied","",FALSE); - $t->AddAttribute("_permission","","Comma-separated list of permissions, any of which will grant access","",FALSE); - $t->AddAttribute("_module","","Used in place of the _permission attribute, this attribute verifies the module listed is enabled","",FALSE); - $t->AddAttribute("_system","bool","Must be set to true if any permissions in _permission list is a system permission","",FALSE); - $t->AddAttribute("_supresserror","bool","Supress missing template errors","",FALSE); - $t->AddAttribute("_dataexists","bool","Only include template output if content exists (content is defined by the tags in the template)","",FALSE); - $t->AddAttribute("_nodatatemplate","tpl","Template to include if the nodataexists condition is true","",FALSE); - unset($t); - - $t = new clsTagFunction(); - $t->Set("name","mod_include"); - $t->Set("description","insert templates from all enabled modules. No error occurs if the template does not exist."); - $t->Create(); - $t->AddAttribute("_template","tpl","Template to insert. This template path should be relative to the module template root directory","",TRUE); - $t->AddAttribute("_modules","","Comma-separated list of modules. Defaults to all enabled modules if not set","",FALSE); - $t->AddAttribute("_supresserror","bool","Supress missing template errors","",FALSE); - $t->AddAttribute("_dataexists","bool","Only include template output if content exists (content is defined by the tags in the template)","",FALSE); - $t->AddAttribute("_nodatatemplate","tpl","Template to include if the nodataexists condition is true","",FALSE); - - $objTagList->ParseFile($pathtoroot.'kernel/parser.php'); // insert module tags - - if( is_array($ItemTagFiles) ) - foreach($ItemTagFiles as $file) - $objTagList->ParseItemFile($pathtoroot.$file); - - $state="RootPass"; - } - else { - $include_file = $pathtoroot.$admin."/install/install_finish.php"; - $state="finish"; - } -} - -if($state=="RootSetPass") -{ - $pass = $_POST["RootPass"]; - if(strlen($pass)<4) - { - $PassError = "Root Password must be at least 4 characters"; - $state = "RootPass"; - - } - else if ($pass != $_POST["RootPassConfirm"]) { - $PassError = "Passwords does not match"; - $state = "RootPass"; - } - else - { - $pass = md5(md5($pass).'b38'); - $sql = ' UPDATE '.$g_TablePrefix.'ConfigurationValues - SET VariableValue = '.$ado->qstr($pass).' - WHERE VariableName = "RootPass";'; - $ado =& inst_GetADODBConnection(); - $ado->Execute($sql); - $state="modselect"; - } -} - -if($state=="RootPass") -{ - $include_file = $pathtoroot.$admin."/install/rootpass.php"; -} - -if($state=="lang_install_init") -{ - - $ado =& inst_GetADODBConnection(); - - if( TableExists($ado, 'Language,Phrase') ) - { - // KERNEL 4 INIT: BEGIN - define('FULL_PATH', realpath(dirname(__FILE__).'/..')); - include_once(FULL_PATH.'/core/kernel/startup.php'); - - $application =& kApplication::Instance(); - $application->Init(); - // KERNEL 4 INIT: END - - $lang_xml =& $application->recallObject('LangXML'); - - if (defined('DBG_FAST_INSTALL') && DBG_FAST_INSTALL) { - $lang_xml->tables['phrases'] = TABLE_PREFIX.'Phrase'; - $lang_xml->tables['emailmessages'] = TABLE_PREFIX.'EmailMessage'; - } - else { - $lang_xml->renameTable('phrases', TABLE_PREFIX.'ImportPhrases'); - $lang_xml->renameTable('emailmessages', TABLE_PREFIX.'ImportEvents'); - } - - $lang_xml->lang_object->TableName = $application->getUnitOption('lang','TableName'); - - $languages = $application->GetVar('lang'); - if($languages) - { - $kernel_db =& $application->GetADODBConnection(); - $modules_table = $application->getUnitOption('mod','TableName'); - - $modules = $kernel_db->GetCol('SELECT Path, Name FROM '.$modules_table, 'Name'); - $modules['In-Portal'] = ''; - - foreach($languages as $lang_file) - { - foreach($modules as $module_name => $module_folder) - { - $lang_path = MODULES_PATH.'/'.$module_folder.'admin/install/langpacks'; - $lang_xml->Parse($lang_path.'/'.$lang_file, '|0|1|2|', ''); - if($force_finish) $lang_xml->lang_object->Update(); - } - } - - if (defined('DBG_FAST_INSTALL') && DBG_FAST_INSTALL) { - $state = 'lang_default'; - } - else { - $state = 'lang_install'; - } - } - else - { - $state = 'lang_select'; - } - - $application->Done(); - } - else - { - $general_error = 'Database error! No language tables found!'; - } -} - -if($state=="lang_install") -{ - define('FORCE_CONFIG_CACHE', 1); - /* do pack install */ - $Offset = (int)$_GET["Offset"]; - $Status = (int)$_GET["Status"]; - - $PhraseTable = $g_TablePrefix."ImportPhrases"; - $EventTable = $g_TablePrefix."ImportEvents"; - - $Total = TableCount($Status == 0 ? $PhraseTable : $EventTable, '', 0); - - if($Status == 0) - { - $Offset = $objLanguages->ReadImportTable($PhraseTable, 1,"0,1,2", $force_finish ? false : true, 200,$Offset); - if($Offset >= $Total) - { - $Offset=0; - $Status=1; - } - - $next_step = GetVar('next_step', true); - - if($force_finish == true) $next_step = 3; - $NextUrl = $_SERVER['PHP_SELF']."?Offset=$Offset&Status=$Status&state=lang_install&next_step=$next_step&install_type=$install_type"; - if($force_finish == true) $NextUrl .= '&ff=1'; - $include_file = $pathtoroot.$admin."/install/lang_run.php"; - } - else - { - if(!is_object($objMessageList)) - $objMessageList = new clsEmailMessageList(); - - $Offset = $objMessageList->ReadImportTable($EventTable, $force_finish ? false : true,300,$Offset); - - if($Offset > $Total) - { - $next_step = GetVar('next_step', true); - - if($force_finish == true) $next_step = 3; - $NextUrl = $_SERVER['PHP_SELF']."?Offset=$Offset&Status=$Status&State=lang_install&next_step=$next_step&install_type=$install_type"; - if($force_finish == true) $NextUrl .= '&ff=1'; - $include_file = $pathtoroot.$admin."/install/lang_run.php"; - } - else - { - $db =& GetADODBConnection(); - $prefix = $g_TablePrefix; - $db->Execute('DROP TABLE IF EXISTS '.$PhraseTable); - $db->Execute('DROP TABLE IF EXISTS '.$EventTable); - - if(!$force_finish) - { - $state = 'lang_default'; - } - else - { - $_POST['next_step'] = 4; - $state = 'finish'; - $include_file = $pathtoroot.$admin."/install/install_finish.php"; - } - } - } -} - -if($state=="lang_default_set") -{ -// phpinfo(INFO_VARIABLES); - /*$ado =& inst_GetADODBConnection(); - $PhraseTable = GetTablePrefix()."ImportPhrases"; - $EventTable = GetTablePrefix()."ImportEvents"; - $ado->Execute("DROP TABLE IF EXISTS $PhraseTable"); - $ado->Execute("DROP TABLE IF EXISTS $EventTable");*/ - - $Id = $_POST["lang"]; - - $objLanguages->SetPrimary($Id); - if (defined('DBG_FAST_INSTALL')) { - $state = 'theme_sel'; - } - else { - $state="postconfig_1"; - } -} - -if($state=="lang_default") -{ - $Packs = Array(); - $objLanguages->Clear(); - - $objLanguages->LoadAllLanguages(); - foreach($objLanguages->Items as $l) - { - $Packs[$l->Get("LanguageId")] = $l->Get("PackName"); - } - $include_file = $pathtoroot.$admin."/install/lang_default.php"; -} - - - -if($state=="modinstall") -{ - $doms = $_POST["domain"]; - if(is_array($doms)) - { - $ado =& inst_GetADODBConnection(); - require_once $pathtoroot.'kernel/include/tag-class.php'; - if( !isset($objTagList) || !is_object($objTagList) ) $objTagList = new clsTagList(); - foreach($doms as $p) - { - $filename = $pathtoroot.$p.'/admin/install.php'; - if(file_exists($filename) ) - { - include($filename); - } - } - - } - -/* $sql = "SELECT Name FROM ".GetTablePrefix()."Modules"; - $rs = $ado->Execute($sql); - - while($rs && !$rs->EOF) - { - $p = $rs->fields['Name']; - $mod_name = strtolower($p); - - if ($mod_name == 'in-portal') { - $mod_name = ''; - } - - $dir_name = $pathtoroot.$mod_name."/admin/install/upgrades/"; - $dir = @dir($dir_name); - - $new_version = ''; - $tmp1 = 0; - $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 ($tmp1 > $tmp2) { - $new_version = $file; - } - } - } - $tmp2 = $tmp1; - } - - - $version_nrs = explode(".", $new_version); - - for ($i = 0; $i < $version_nrs[0] + 1; $i++) { - for ($j = 0; $j < $version_nrs[1] + 1; $j++) { - for ($k = 0; $k < $version_nrs[2] + 1; $k++) { - $try_version = "$i.$j.$k"; - - $filename = $pathtoroot.$mod_name."/admin/install/upgrades/inportal_upgrade_v$try_version.sql"; - - if(file_exists($filename)) - { - RunSQLFile($ado, $filename); - set_ini_value("Module Versions", $p, $try_version); - save_values(); - } - } - } - } - - $rs->MoveNext(); - } -*/ - $state="lang_select"; -} - -if($state=="modselect") -{ - /* /admin/install.php */ - $UrlLen = (strlen($admin) + 12)*-1; - $pathguess =substr($_SERVER["SCRIPT_NAME"],0,$UrlLen); - $sitepath = $pathguess; - $esc_path = str_replace("\\","/",$pathtoroot); - $esc_path = str_replace("/","\\",$esc_path); - //set_ini_value("Site","DomainName",$_SERVER["HTTP_HOST"]); - //$g_DomainName= $_SERVER["HTTP_HOST"]; - save_values(); - - $ado =& inst_GetADODBConnection(); - if(substr($sitepath,0,1)!="/") - $sitepath="/".$sitepath; - if(substr($sitepath,-1)!="/") - $sitepath .= "/"; - - $sql = "UPDATE ".$g_TablePrefix."ConfigurationValues SET VariableValue = '$sitepath' WHERE VariableName='Site_Path'"; - $ado->Execute($sql); - $sql = "UPDATE ".$g_TablePrefix."ConfigurationValues SET VariableValue = '$g_Domain' WHERE VariableName='Server_Name'"; - $ado->Execute($sql); - $sql = "UPDATE ".$g_TablePrefix."ConfigurationValues SET VariableValue = '".$_SERVER['DOCUMENT_ROOT'].$sitepath."admin/backupdata' WHERE VariableName='Backup_Path'"; - $ado->Execute($sql); - $Modules = a48d819089308a9aeb447e7248b2587f(); - - if (count($Modules) > 0) { - $include_file = $pathtoroot.$admin."/install/modselect.php"; - } - else { - $state = "lang_select"; - $skip_step = true; - } -} - -if($state=="lang_select") -{ - $Packs = GetLanguageList(); - $include_file = $pathtoroot.$admin."/install/lang_select.php"; -} - -if(substr($state,0,10)=="postconfig") -{ - $p = explode("_",$state); - $step = $p[1]; - - if ($_POST['Site_Path'] != '') { - $sql = "SELECT Name, Version FROM ".$g_TablePrefix."Modules"; - $rs = $ado->Execute($sql); - - $modules_str = ''; - while ($rs && !$rs->EOF) { - $modules_str .= $rs->fields['Name'].' ('.$rs->fields['Version'].'),'; - $rs->MoveNext(); - } - - $modules_str = substr($modules_str, 0, strlen($modules_str) - 1); - $rfile = @fopen(GET_LICENSE_URL."?url=".base64_encode($_SERVER['HTTP_HOST'].$_POST['Site_Path'])."&modules=".base64_encode($modules_str)."&license_code=".base64_encode($g_LicenseCode)."&version=".GetMaxPortalVersion($pathtoroot.$admin)."&domain=".md5($_SERVER['HTTP_HOST']), "r"); - if (!$rfile) { - //$get_license_error = "Unable to connect to the Intechnic server! Please try again later!"; - //$state = "postconfig_1"; - //$include_file = $pathtoroot.$admin."/install/postconfig.php"; - } - else { - $rcontents = ''; - while (!feof($rfile)) { - $line = fgets($rfile, 10000); - $rcontents .= $line; - } - @fclose($rfile); - } - - } - - if(strlen($_POST["oldstate"])>0) - { - $s = explode("_",$_POST["oldstate"]); - $oldstep = $s[1]; - if($oldstepSaveItems($_POST,TRUE); - } - } - $section = $configs[$step]; - $module = $mods[$step]; - $title = $titles[$step]; - - $step++; - - if($step <= count($configs)+1) - { - $include_file = $pathtoroot.$admin."/install/postconfig.php"; - } - else - $state = "theme_sel"; -} - -if($state=="theme_sel") -{ - $objThemes->CreateMissingThemes(true); - $include_file = $pathtoroot.$admin."/install/theme_select.php"; -} - -if($state=="theme_set") -{ - ## get & define Non-Blocking & Blocking versions ## - $blocking_sockets = minimum_php_version("4.3.0")? 0 : 1; - - $ado =& inst_GetADODBConnection(); - $sql = "UPDATE ".$g_TablePrefix."ConfigurationValues SET VariableValue = '$blocking_sockets' WHERE VariableName='SocketBlockingMode'"; - $ado->Execute($sql); - ## get & define Non-Blocking & Blocking versions ## - - - $theme_id = $_POST["theme"]; - $pathchar="/"; - //$objThemes->SetPrimaryTheme($theme_id); - $t = $objThemes->GetItem($theme_id); - $t->Set("Enabled",1); - $t->Set("PrimaryTheme",1); - $t->Update(); - $t->VerifyTemplates(); - $include_file = $pathtoroot.$admin."/install/install_finish.php"; - $state="finish"; -} - -if ($state == "adm_login") { - $ado =& inst_GetADODBConnection(); - $sql = 'UPDATE '.TABLE_PREFIX.'UserSession - SET LastAccessed = 0 - WHERE PortalUserId IN (0,-2)'; - $ado->Execute($sql); - - echo ""; -} - -if ($state == "finish") { - $ado =& inst_GetADODBConnection(); - $PhraseTable = $g_TablePrefix."ImportPhrases"; - $EventTable = $g_TablePrefix."ImportEvents"; - $ado->Execute("DROP TABLE IF EXISTS $PhraseTable"); - $ado->Execute("DROP TABLE IF EXISTS $EventTable"); - $ado->Execute('INSERT INTO '.$g_TablePrefix.'Cache (VarName, Data) VALUES (\'ForcePermCacheUpdate\', \'1\')'); - - $include_file = $pathtoroot.$admin."/install/install_finish.php"; -} - -// init variables -$vars = Array('db_error','restore_error','PassError','DomainError','login_error','inst_error'); -foreach($vars as $var_name) ReSetVar($var_name); - -switch($state) -{ -case "modselect": - $title = "Select Modules"; - $help = "

Select the In-Portal modules you wish to install. The modules listed to the right "; - $help .="are all modules included in this installation that are licensed to run on this server.

"; -break; -case "reinstall": - $title = "Installation Maintenance"; - $help = "

A Configuration file has been detected on your system and it appears In-Portal is correctly installed. "; - $help .="In order to work with the maintenance functions provided to the left you must provide the Intechnic "; - $help .="Username and Password you used when obtaining the license file residing on the server, or your admin Root password. "; - $help .=" (Use Username 'root' if using your root password)

"; - $help .= "

To removing your existing database and start with a fresh installation, select the first option "; - $help .= "provided. Note that this operation cannot be undone and no backups are made! Use at your own risk.

"; - $help .="

If you wish to scrap your current installation and install to a new location, choose the second option. "; - $help .="If this option is selected you will be prompted for new database configuration information.

"; - $help .="

The Update License Information option is used to update your In-Portal license data. Select this option if you have "; - $help .="modified your licensing status with Intechnic, or you have received new license data via email

"; - $help .="

The Fix Paths option should be used when the location of the In-portal files has changed. For example, if you moved them from one folder to another. It will update all settings and ensure the program is operational at the new location.

"; -break; -case "fix_paths": - $title = "Fix Paths"; - $help = "

The Fix Paths option should be used when the location of the In-portal files has changed. For example, if you moved them from one folder to another. It will update all settings and ensure the program is operational at the new location.

"; -break; -case "RootPass": - $title = "Set Admin Root Password"; - $help = "

The Root Password is initially required to access the admin sections of In-Portal. "; - $help .="The root user cannot be used to access the front-end of the system, so it is recommended that you "; - $help .="create additional users with admin privlidges.

"; -break; -case "finish": - $title = "Thank You!"; - $help ="

Thanks for using In-Portal! Be sure to visit www.in-portal.net "; - $help.=" for the latest news, module releases and support.

"; - $help.="

*Make sure to clean your browser' cache after upgrading In-portal version

"; -break; -case "license": - $title = "License Configuration"; - $help ="

A License is required to run In-Portal on a server connected to the Internet. You "; - $help.="can run In-Portal on localhost, non-routable IP addresses, or other computers on your LAN. "; - $help.="If Intechnic has provided you with a license file, upload it here. Otherwise select the first "; - $help.="option to allow Install to download your license for you.

"; - $help.="

If a valid license has been detected on your server, you can choose the Use Existing License "; - $help.="and continue the installation process

"; -break; -case "domain_select": - $title="Select Licensed Domain"; - $help ="

Select the domain you wish to configure In-Portal for. The Other option "; - $help.=" can be used to configure In-Portal for use on a local domain.

"; - $help.="

For local domains, enter the hostname or LAN IP Address of the machine running In-Portal.

"; -break; -case "db_reconfig": -case "dbinfo": - $title="Database Configuration"; - $help = "

In-Portal needs to connect to your Database Server. Please provide the database server type*, "; - $help .="host name (normally \"localhost\"), Database user name, and database Password. "; - $help .="These fields are required to connect to the database.

If you would like In-Portal "; - $help .="to use a table prefix, enter it in the field provided. This prefix can be any "; - $help .=" text which can be used in the names of tables on your system. The characters entered in this field "; - $help .=" are placed before the names of the tables used by In-Portal. For example, if you enter \"inp_\""; - $help .=" into the prefix field, the table named Category will be named inp_Category.

"; -break; -case "lang_select": - $title="Language Pack Installation"; - $help = "

Select the language packs you wish to install. Each language pack contains all the phrases "; - $help .="used by the In-Portal administration and the default template set. Note that at least one "; - $help .="pack must be installed.

"; -break; -case "lang_default": - $title="Select Default Language"; - $help = "

Select which language should be considered the \"default\" language. This is the language "; - $help .="used by In-Portal when a language has not been selected by the user. This selection is applicable "; - $help .="to both the administration and front-end.

"; -break; -case "lang_install": - $title="Installing Language Packs"; - $help = "

The language packs you have selected are being installed. You may install more languages at a "; - $help.="later time from the Regional admin section.

"; -break; -case "postconfig_1": - $help = "

These options define the general operation of In-Portal. Items listed here are "; - $help .="required for In-Portal's operation.

When you have finished, click save to continue.

"; -break; -case "postconfig_2": - $help = "

User Management configuration options determine how In-Portal manages your user base.

"; - $help .="

The groups listed to the right are pre-defined by the installation process and may be changed "; - $help .="through the Groups section of admin.

"; -break; -case "postconfig_3": - $help = "

The options listed here are used to control the category list display functions of In-Portal.

"; -break; -case "theme_sel": - $title="Select Default Theme"; - $help = "

This theme will be used whenever a front-end session is started. "; - $help .="If you intend to upload a new theme and use that as default, you can do so through the "; - $help .="admin at a later date. A default theme is required for session management.

"; -break; -case "get_license": - $title="Download License from Intechnic"; - $help ="

A License is required to run In-Portal on a server connected to the Internet. You "; - $help.="can run In-Portal on localhost, non-routable IP addresses, or other computers on your LAN.

"; - $help.="

Here as you have selected download license from Intechnic you have to input your username and "; - $help.="password of your In-Business account in order to download all your available licenses.

"; -break; -case "download_license": - $title="Download License from Intechnic"; - $help ="

A License is required to run In-Portal on a server connected to the Internet. You "; - $help.="can run In-Portal on localhost, non-routable IP addresses, or other computers on your LAN.

"; - $help.="

Please choose the license from the drop down for this site!

"; -break; -case "restore_select": - $title="Select Restore File"; - $help = "

Select the restore file to use to reinstall In-Portal. If your backups are not performed "; - $help .= "in the default location, you can enter the location of the backup directory and click the "; - $help .="Update button.

"; -case "restore_run": - $title= "Restore in Progress"; - $help = "

Restoration of your system is in progress. When the restore has completed, the installation "; - $help .="will continue as normal. Hitting the Cancel button will restart the entire installation process. "; -break; -case "warning": - $title = "Restore in Progress"; - $help = "

Please approve that you understand that you are restoring your In-Portal data base from other version of In-Portal.

"; -break; -case "update": - $title = "Update In-Portal"; - $help = "

Select modules from the list, you need to update to the last downloaded version of In-Portal

"; -break; -} - -$tmp_step = GetVar('next_step', true); - -if (!$tmp_step) { - $tmp_step = 1; -} - -if ( isset($got_license) && $got_license == 1) { - $tmp_step++; -} - -$next_step = $tmp_step + 1; - -if ($general_error != '') { - $state = ''; - $title = ''; - $help = ''; - $general_error = $general_error.'

Installation cannot continue!'; -} - -if ($include_file == '' && $general_error == '' && $state == '') { - $state = ''; - $title = ''; - $help = ''; - $filename = $pathtoroot.$admin."/install/inportal_remove.sql"; - RunSQLFile($ado,$filename); - $general_error = 'Unexpected installation error!

Installation has been stopped!'; -} - -if ($restore_error != '') { - $next_step = 3; - $tmp_step = 2; -} - -if ($PassError != '') { - $tmp_step = 4; - $next_step = 5; -} - -if ($DomainError != '') { - $tmp_step--; - $next_step = $tmp_step + 1; -} - -if ($db_error != '') { - $tmp_step--; - $next_step = $tmp_step + 1; -} - -if ($state == "warning") { - $tmp_step--; - $next_step = $tmp_step + 1; -} - -if ($skip_step) { - $tmp_step++; - $next_step = $tmp_step + 1; -} -?> - -
- - -
- - - - - - - - - - -
 
In-Portal Version : English US


-
- - - - -
-
- Installation - - - -
    -
  1. class="current">Database Configuration -
  2. class="current">Select License -
  3. class="current">Select Domain -
  4. class="current">Set Root Password -
  5. class="current">Select Modules to Install -
  6. class="current">Install Language Packs -
  7. class="current">Post-Install Configuration -
  8. class="current">Finish -
- -
    -
  1. class="current">License Verification - -
- -
    -
  1. License Verification -
  2. class="current">Database Configuration -
  3. class="current">Select License -
  4. class="current">Select Domain -
  5. class="current">Set Root Password -
  6. class="current">Select Modules to Install -
  7. class="current">Install Language Packs -
  8. class="current">Post-Install Configuration -
  9. class="current">Finish -
- -
    -
  1. class="current">License Verification -
  2. class="current">Select License -
  3. class="current">Select Domain -
  4. class="current">Set Root Password -
  5. class="current">Select Modules to Install -
  6. class="current">Install Language Packs -
  7. class="current">Post-Install Configuration -
  8. class="current">Finish -
- -
    -
  1. class="current">License Verification -
  2. class="current">Select License -
  3. class="current">Select Domain -
  4. class="current">Finish -
- -
    -
  1. class="current">License Verification -
  2. class="current">Select Backup File -
  3. class="current">Finish -
- -
    -
  1. class="current">License Verification -
  2. class="current">Database Configuration -
  3. class="current">Finish -
- -
    -
  1. class="current">License Verification -
  2. class="current">Select Modules to Upgrade -
  3. class="current">Language Pack Upgrade -
  4. class="current">Finish -
- -
    -
  1. class="current">License Verification -
  2. class="current">Fix Paths -
  3. class="current">Finish -
- - - - - -
- - - - - - - -
-
-
-
- - - - - - Powered by In-portal © 1997-2007, Intechnic Corporation. All rights reserved. -
- - - -
- - - \ No newline at end of file