function installDB() { global $DB, $APPLICATION; $this->errors = false; if (!$DB->query("SELECT 'x' FROM b_abtest", true)) { $createTestTemplates = true; $this->errors = $DB->runSQLBatch($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/abtest/install/db/' . strtolower($DB->type) . '/install.sql'); } if ($this->errors !== false) { $APPLICATION->throwException(implode('', $this->errors)); return false; } $eventManager = Bitrix\Main\EventManager::getInstance(); $eventManager->registerEventHandler('main', 'OnGetCurrentSiteTemplate', 'abtest', '\\Bitrix\\ABTest\\EventHandler', 'onGetCurrentSiteTemplate'); $eventManager->registerEventHandler('main', 'OnFileRewrite', 'abtest', '\\Bitrix\\ABTest\\EventHandler', 'onFileRewrite'); $eventManager->registerEventHandlerCompatible('main', 'OnPageStart', 'abtest', '\\Bitrix\\ABTest\\EventHandler', 'onPageStart'); $eventManager->registerEventHandlerCompatible('main', 'OnPanelCreate', 'abtest', '\\Bitrix\\ABTest\\EventHandler', 'onPanelCreate'); $eventManager->registerEventHandlerCompatible('conversion', 'OnGetAttributeTypes', 'abtest', '\\Bitrix\\ABTest\\EventHandler', 'onGetAttributeTypes'); $eventManager->registerEventHandlerCompatible('conversion', 'OnSetDayContextAttributes', 'abtest', '\\Bitrix\\ABTest\\EventHandler', 'onConversionSetContextAttributes'); registerModule($this->MODULE_ID); $defSite = Bitrix\Main\SiteTable::getList(array('order' => array('ACTIVE' => 'DESC', 'DEF' => 'DESC', 'SORT' => 'ASC'), 'select' => array('LID')))->fetch(); if (!empty($createTestTemplates) && CModule::includeModule('abtest') && !empty($defSite)) { $arTestTemplates = array(100 => array('ENABLED' => 'T', 'NAME' => getMessage('ABTEST_SAMPLE1_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE1_DESCR'), 'TEST_DATA' => array('id' => 'sample1', 'list' => array(array('type' => 'template', 'old_value' => '', 'new_value' => '')))), 200 => array('ENABLED' => 'T', 'NAME' => getMessage('ABTEST_SAMPLE2_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE2_DESCR'), 'TEST_DATA' => array('id' => 'sample2', 'list' => array(array('type' => 'page', 'old_value' => '', 'new_value' => '')))), 300 => array('ENABLED' => 'T', 'NAME' => getMessage('ABTEST_SAMPLE3_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE3_DESCR'), 'TEST_DATA' => array('id' => 'sample3', 'list' => array(array('type' => 'page', 'old_value' => '', 'new_value' => '')))), 400 => array('ENABLED' => 'T', 'NAME' => getMessage('ABTEST_SAMPLE4_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE4_DESCR'), 'TEST_DATA' => array('id' => 'sample4', 'list' => array(array('type' => 'page', 'old_value' => '', 'new_value' => '')))), 500 => array('ENABLED' => 'T', 'NAME' => getMessage('ABTEST_SAMPLE5_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE5_DESCR'), 'TEST_DATA' => array('id' => 'sample5', 'list' => array(array('type' => 'page', 'old_value' => '', 'new_value' => '')))), 600 => array('ENABLED' => 'T', 'NAME' => getMessage('ABTEST_SAMPLE6_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE6_DESCR'), 'TEST_DATA' => array('id' => 'sample6', 'list' => array(array('type' => 'page', 'old_value' => '', 'new_value' => '')))), 700 => array('ENABLED' => 'N', 'NAME' => getMessage('ABTEST_SAMPLE7_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE7_DESCR'), 'TEST_DATA' => array('id' => 'sample7', 'list' => array(array('type' => 'composite', 'old_value' => 'N', 'new_value' => 'Y')))), 800 => array('ENABLED' => 'N', 'NAME' => getMessage('ABTEST_SAMPLE8_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE8_DESCR'), 'TEST_DATA' => array('id' => 'sample8', 'list' => array(array('type' => 'cdn', 'old_value' => 'N', 'new_value' => 'Y')))), 900 => array('ENABLED' => 'N', 'NAME' => getMessage('ABTEST_SAMPLE9_NAME'), 'DESCR' => getMessage('ABTEST_SAMPLE9_DESCR'), 'TEST_DATA' => array('id' => 'sample9', 'list' => array(array('type' => 'bigdata', 'old_value' => 'N', 'new_value' => 'Y'))))); foreach ($arTestTemplates as $sort => $test) { $test['SITE_ID'] = $defSite['LID']; $test['ACTIVE'] = 'N'; $test['DURATION'] = 0; $test['PORTION'] = 30; $test['SORT'] = $sort; Bitrix\ABTest\ABTestTable::add($test); } } return true; }
function installDB() { global $DB, $APPLICATION; CModule::IncludeModule('iblock'); CModule::IncludeModule('highloadblock'); $this->errors = false; if (!$DB->query("SELECT 'x' FROM hw_channel", true)) { $this->errors = $DB->runSQLBatch($_SERVER['DOCUMENT_ROOT'] . '/local/modules/hawkart.megatv/install/db/' . strtolower($DB->type) . '/install.sql'); } /*$arTables = array("Image"=>"hw_image"); foreach($arTables as $key=>$table_name) { $data = array( 'NAME' => str_replace('_','',trim($key)), 'TABLE_NAME' => trim($table_name) ); $result = \Bitrix\Highloadblock\HighloadBlockTable::add($data); if ($result->isSuccess()) { $ID = $result->getId(); $oUserTypeEntity = new CUserTypeEntity(); $aUserFields = array( 'ENTITY_ID' => 'HLBLOCK_'.$ID, 'FIELD_NAME' => 'UF_MYFIELD', 'USER_TYPE_ID' => 'string', 'MULTIPLE' => 'N', 'MANDATORY' => 'N', 'SHOW_FILTER' => 'I', 'EDIT_FORM_LABEL' => array( 'ru' => 'MYFIELD', 'en' => 'MYFIELD', ) ); $iUserFieldId = $oUserTypeEntity->Add( $aUserFields ); }else{ $errors = $result->getErrorMessages(); } }*/ if ($this->errors !== false) { $APPLICATION->throwException(implode('', $this->errors)); return false; } registerModule($this->MODULE_ID); return true; }
//debug($query); $result = $database->query($query); if (!$result) { return null; } $files = array(); while ($file = $result->fetch_object()) { $files[] = $file; } return $files; } public function searchFilesFromDBByCategory($unit_id, $category, $limit = 50, $offset = 0) { $category = addslashes($category); $database = getSQLDB(); $query = "SELECT * FROM `" . DB_PREFIX . "files` WHERE `category` = '" . $category . "' AND unit_id = " . intval($unit_id) . " LIMIT " . intval($offset) . "," . intval($limit); //debug($query); $result = $database->query($query); if (!$result) { return null; } $files = array(); while ($file = $result->fetch_object()) { $files[] = $file; } return $files; } } //make it public registerModule("files", "FilesModule");
} public function postRestart() { debug("Creating default users"); if ($this->createUser("admin", self::$ADMIN_PASS, self::$ADMIN_MAIL, "admin", "{}", "VALID") == false) { $this->result["msg"] = "Admin user not created"; $this->result["status"] = -1; return; } if (1) { //create guest user if ($this->createUser("guest", "guest", "*****@*****.**", "", "{}", "VALID") == false) { $this->result["msg"] = "Guest user not created"; $this->result["status"] = -1; return; } } } //used to upgrade tables and so public function upgrade() { debug("Upgrading user tables"); if (!$this->createTables()) { return false; } return true; } } //make it public registerModule("user", "UsersModule");
} } } return true; } public function restartSystem() { $tmp = array(); debug("Restarting system"); dispatchEventToModules("preRestart", $tmp); //remove all dispatchEventToModules("restart", $tmp); //create tables and folders dispatchEventToModules("postRestart", $tmp); //fill stuff debug("System restarted"); return true; } public function upgradeSystem() { $tmp = array(); debug("Upgrading system"); dispatchEventToModules("upgrade", $tmp); //create tables and folders debug("System upgraded"); return true; } } //make it public registerModule("system", "SystemModule");