_dbDriver) { case 'mysql': case 'mysqli': case 'mysqlnd': case 'pgsql': $tmp = explode(":", $settings->_dbHostname); $dsn = $settings->_dbDriver.":dbname=".$settings->_dbDatabase.";host=".$tmp[0]; if(isset($tmp[1])) $dsn .= ";port=".$tmp[1]; break; case 'sqlite': $dsn = $settings->_dbDriver.":".$settings->_dbDatabase; break; } $connTmp = new PDO($dsn, $settings->_dbUser, $settings->_dbPass); return $connTmp; } /* }}} */ function printError($error) { /* {{{ */ print "
\n"; print $error; print "
"; } /* }}} */ function printWarning($error) { /* {{{ */ print "
"; print "Warning
"; print $error; print "
"; } /* }}} */ function printCheckError($resCheck) { /* {{{ */ $hasError = false; foreach($resCheck as $keyRes => $paramRes) { if(isset($paramRes['type']) && $paramRes['type'] == 'error') $hasError = true; $errorMes = getMLText("settings_$keyRes"). " : " . getMLText("settings_".$paramRes["status"]); if (isset($paramRes["currentvalue"])) $errorMes .= "
=> " . getMLText("settings_currentvalue") . " : " . $paramRes["currentvalue"]; if (isset($paramRes["suggestionvalue"])) $errorMes .= "
=> " . getMLText("settings_suggestionvalue") . " : " . $paramRes["suggestionvalue"]; if (isset($paramRes["suggestion"])) $errorMes .= "
=> " . getMLText("settings_".$paramRes["suggestion"]); if (isset($paramRes["systemerror"])) $errorMes .= "
=> " . $paramRes["systemerror"]; if(isset($paramRes['type']) && $paramRes['type'] == 'error') printError($errorMes); else printWarning($errorMes); } return $hasError; } /* }}} */ function fileExistsInIncludePath($file) { /* {{{ */ $paths = explode(PATH_SEPARATOR, get_include_path()); $found = false; foreach($paths as $p) { $fullname = $p.DIRECTORY_SEPARATOR.$file; if(is_file($fullname)) { $found = $fullname; break; } } return $found; } /* }}} */ /** * Load default settings + set */ require_once('../inc/inc.Version.php'); $ver = new SeedDMS_Version(); define("SEEDDMS_INSTALL", "on"); define("SEEDDMS_VERSION", $ver->version()); require_once('../inc/inc.ClassSettings.php'); $configDir = Settings::getConfigDir(); /** * Check if ENABLE_INSTALL_TOOL exists in config dir */ if (!$configDir) { echo "Fatal error! I could not even find a configuration directory."; exit; } if (!file_exists($configDir."/ENABLE_INSTALL_TOOL")) { echo "For installation of SeedDMS, you must create the file ".$configDir."ENABLE_INSTALL_TOOL"; exit; } if (!file_exists($configDir."/settings.xml")) { if(!copy("settings.xml.template_install", $configDir."/settings.xml")) { echo "Could not create initial configuration file from template. Check directory permission of conf/."; exit; } } // Set folders settings $settings = new Settings(); $settings->load($configDir."/settings.xml"); $rootDir = realpath (".."); $installPath = realpath ("install.php"); $installPath = str_replace ("\\", "/" , $installPath); $tmpToDel = str_replace ($rootDir, "" , $installPath); $httpRoot = str_replace ($tmpToDel, "" , $_SERVER["SCRIPT_NAME"]).'/'; /* Correct rootDir to ensure it points to 'www' instead of the versioned * seeddms dir. */ if(file_exists($rootDir.'/../www')) $rootDir = realpath($rootDir.'/..').'/www'; $rootDir = str_replace ("\\", "/" , $rootDir) . "/"; do { $httpRoot = str_replace ("//", "/" , $httpRoot, $count); } while ($count<>0); if($rootDir != $settings->_rootDir) { $msg = "Your Root directory has been modified to fit your installation path!"; } $settings->_rootDir = $rootDir; if(!$settings->_contentDir) { $settings->_contentDir = realpath($settings->_rootDir."..") . '/data/'; $settings->_luceneDir = $settings->_contentDir . 'lucene/'; $settings->_stagingDir = $settings->_contentDir . 'staging/'; $settings->_cacheDir = $settings->_contentDir . 'cache/'; $settings->_backupDir = $settings->_contentDir . 'backup/'; } else { if(!$settings->_cacheDir) { $settings->_cacheDir = $settings->_contentDir . 'cache/'; } } $settings->_httpRoot = $httpRoot; if(isset($settings->_extraPath)) ini_set('include_path', $settings->_extraPath. PATH_SEPARATOR .ini_get('include_path')); /** * Include GUI + Language */ $theme = "bootstrap"; include("../inc/inc.Language.php"); include "../languages/en_GB/lang.inc"; include("../inc/inc.ClassUI.php"); include("class.Install.php"); $view = new SeedDMS_View_Install(array('settings'=>$settings, 'session'=>null, 'sitename'=>'SeedDMS', 'printdisclaimer'=>0, 'showmissingtranslations'=>0, 'absbaseprefix'=>'/', 'enabledropfolderlist'=>0, 'enablemenutasks'=>0, 'configdir'=>$configDir)); $view->install(); ?>