/** * Constructor doing the usual setup things */ private function __construct() { $this->objDb = class_carrier::getInstance()->getObjDb(); $this->objSession = class_carrier::getInstance()->getObjSession(); if (count($this->objDb->getTables()) > 0) { $objModule = class_module_system_module::getModuleByName("system"); if ($objModule !== null && version_compare($objModule->getStrVersion(), "4.3.1") < 0) { $this->bitChangelog = false; } } }
private function updateFilemanager() { echo "Updating filemanager to new mediamanager structure...\n"; echo "Checking installation state of mediamanager...\n"; if (!in_array(_dbprefix_ . "filemanager", $this->objDB->getTables())) { echo "Filemanager table missing, no update required.\n"; return true; } $strOldDefaultImagesRepo = $this->getValueOfSetting("_filemanager_default_imagesrepoid_"); $strOldDefaultFilesRepo = $this->getValueOfSetting("_filemanager_default_filesrepoid_"); echo "Migrating old filemanager repos to new mediamanager repos...\n"; $strQuery = "SELECT * FROM " . _dbprefix_ . "filemanager"; $arrRows = $this->objDB->getPArray($strQuery, array()); foreach ($arrRows as $arrOneRow) { if (!validateSystemid($arrOneRow["filemanager_foreign_id"])) { echo "migrating old repo " . $arrOneRow["filemanager_name"] . "\n"; echo " old path: " . $arrOneRow["filemanager_path"] . "\n"; //convert the path $strPath = $this->convertOldPath($arrOneRow["filemanager_path"]); echo " new path: " . $strPath . "\n"; $objRepo = new class_module_mediamanager_repo(); $objRepo->setStrPath($strPath); $objRepo->setStrTitle($arrOneRow["filemanager_name"]); $objRepo->setStrViewFilter($arrOneRow["filemanager_view_filter"]); $objRepo->setStrUploadFilter($arrOneRow["filemanager_upload_filter"]); $objRepo->updateObjectToDb(); $objRepo->syncRepo(); if ($arrOneRow["filemanager_id"] == $strOldDefaultFilesRepo) { $objSetting = class_module_system_setting::getConfigByName("_mediamanager_default_filesrepoid_"); $objSetting->setStrValue($objRepo->getSystemid()); $objSetting->updateObjectToDb(); echo " setting as default files repo\n"; } if ($arrOneRow["filemanager_id"] == $strOldDefaultImagesRepo) { $objSetting = class_module_system_setting::getConfigByName("_mediamanager_default_imagesrepoid_"); $objSetting->setStrValue($objRepo->getSystemid()); $objSetting->updateObjectToDb(); echo " setting as default images repo\n"; } } echo " deleting repo from tables\n"; $strQuery = "DELETE FROM " . _dbprefix_ . "filemanager WHERE filemanager_id = ?"; $this->objDB->_pQuery($strQuery, array($arrOneRow["filemanager_id"])); $this->deleteSystemRecord($arrOneRow["filemanager_id"]); } echo "Deleting filemanager module...\n"; $this->removeModule("filemanager"); $this->objDB->_pQuery("DROP TABLE " . _dbprefix_ . "filemanager", array()); $this->removeSetting("_filemanager_default_imagesrepoid_"); $this->removeSetting("_filemanager_default_filesrepoid_"); $this->removeSetting("_filemanager_foldersize_"); $this->removeSetting("_filemanager_show_foreign_"); return true; }