File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/modules/ammina.regions/install/index.php
Back
<? IncludeModuleLangFile(__FILE__); require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/classes/general/update_client.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/classes/general/update_client_partner.php"); include_once($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/ammina.regions/mbfunc.php"); class ammina_regions extends CModule { const MODULE_ID = 'ammina.regions'; var $MODULE_ID = 'ammina.regions'; var $MODULE_VERSION; var $MODULE_VERSION_DATE; var $MODULE_NAME; var $MODULE_DESCRIPTION; var $MODULE_CSS; var $strError = ''; function __construct() { $arModuleVersion = array(); include(dirname(__FILE__) . "/version.php"); $this->MODULE_VERSION = $arModuleVersion["VERSION"]; $this->MODULE_VERSION_DATE = $arModuleVersion["VERSION_DATE"]; $this->MODULE_NAME = GetMessage("ammina.regions_MODULE_NAME"); $this->MODULE_DESCRIPTION = GetMessage("ammina.regions_MODULE_DESC"); $this->PARTNER_NAME = GetMessage("ammina.regions_PARTNER_NAME"); $this->PARTNER_URI = GetMessage("ammina.regions_PARTNER_URI"); } function InstallDB($arParams = array()) { global $DB, $DBType, $APPLICATION; $errors = $DB->RunSQLBatch($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/db/" . $DBType . "/install.sql"); if (!empty($errors)) { $APPLICATION->ThrowException(implode("", $errors)); return false; } RegisterModuleDependences('main', 'OnBuildGlobalMenu', self::MODULE_ID, 'CAmminaRegions', 'OnBuildGlobalMenu'); RegisterModuleDependences('main', 'onMainGeoIpHandlersBuildList', self::MODULE_ID, 'CAmminaRegions', 'onMainGeoIpHandlersBuildList'); RegisterModuleDependences('main', 'OnProlog', self::MODULE_ID, 'CAmminaRegions', 'OnProlog'); RegisterModuleDependences('catalog', 'OnGetOptimalPrice', self::MODULE_ID, 'CAmminaRegions', 'OnGetOptimalPrice'); RegisterModuleDependences('main', 'OnEndBufferContent', self::MODULE_ID, 'CAmminaRegions', 'OnEndBufferContent'); RegisterModuleDependences('main', 'onAfterAjaxResponse', self::MODULE_ID, 'CAmminaRegions', 'onAfterAjaxResponse',200); RegisterModuleDependences('sale', 'OnSaleOrderBeforeSaved', self::MODULE_ID, 'CAmminaRegions', 'OnSaleOrderBeforeSaved'); RegisterModuleDependences('main', 'OnBeforeEventAdd', self::MODULE_ID, 'CAmminaRegions', 'OnBeforeEventAdd'); RegisterModuleDependences("sale", "OnCondSaleControlBuildList", self::MODULE_ID, "CAmminaRegionsSaleCondCtrlDomain", "GetControlDescr", 10000); $eventManager = \Bitrix\Main\EventManager::getInstance(); $eventManager->registerEventHandler('sale', 'onSaleCompanyRulesClassNamesBuildList', self::MODULE_ID, '\Ammina\Regions\Rules\Sale\CompanyRules\Domain', 'onSaleCompanyRulesClassNamesBuildList'); $eventManager->registerEventHandler('sale', 'onSaleDeliveryRestrictionsClassNamesBuildList', self::MODULE_ID, '\Ammina\Regions\Rules\Sale\DeliveryRestrictions\Domain', 'onSaleDeliveryRestrictionsClassNamesBuildList'); $eventManager->registerEventHandler('sale', 'onSalePaySystemRestrictionsClassNamesBuildList', self::MODULE_ID, '\Ammina\Regions\Rules\Sale\PaySystemRestrictions\Domain', 'onSalePaySystemRestrictionsClassNamesBuildList'); $eventManager->registerEventHandler('main', '\Bitrix\Main\Mail\Internal\Event::OnBeforeAdd', self::MODULE_ID, 'CAmminaRegions', 'OnEventBeforeAddBitrixMainEvent'); RegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\Domain', 'GetUserTypeDescription'); RegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\Country', 'GetUserTypeDescription'); RegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\Region', 'GetUserTypeDescription'); RegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\City', 'GetUserTypeDescription'); RegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\Domain', 'GetUserTypeDescription'); RegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\Country', 'GetUserTypeDescription'); RegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\Region', 'GetUserTypeDescription'); RegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\City', 'GetUserTypeDescription'); return true; } function UnInstallDB($arParams = array()) { global $DB, $DBType, $APPLICATION; if (array_key_exists("savedata", $arParams) && $arParams["savedata"] != "Y") { $errors = $DB->RunSQLBatch($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/db/" . $DBType . "/uninstall.sql"); if (!empty($errors)) { $APPLICATION->ThrowException(implode("", $errors)); return false; } } UnRegisterModuleDependences("sale", "OnCondSaleControlBuildList", self::MODULE_ID, "CAmminaRegionsSaleCondCtrlDomain", "GetControlDescr"); UnRegisterModuleDependences('main', 'OnProlog', self::MODULE_ID, 'CAmminaRegions', 'OnProlog'); UnRegisterModuleDependences('main', 'onMainGeoIpHandlersBuildList', self::MODULE_ID, 'CAmminaRegions', 'onMainGeoIpHandlersBuildList'); UnRegisterModuleDependences('main', 'OnBuildGlobalMenu', self::MODULE_ID, 'CAmminaRegions', 'OnBuildGlobalMenu'); UnRegisterModuleDependences('catalog', 'OnGetOptimalPrice', self::MODULE_ID, 'CAmminaRegions', 'OnGetOptimalPrice'); UnRegisterModuleDependences('main', 'OnEndBufferContent', self::MODULE_ID, 'CAmminaRegions', 'OnEndBufferContent'); UnRegisterModuleDependences('main', 'onAfterAjaxResponse', self::MODULE_ID, 'CAmminaRegions', 'onAfterAjaxResponse'); UnRegisterModuleDependences('sale', 'OnSaleOrderBeforeSaved', self::MODULE_ID, 'CAmminaRegions', 'OnSaleOrderBeforeSaved'); UnRegisterModuleDependences('main', 'OnBeforeEventAdd', self::MODULE_ID, 'CAmminaRegions', 'OnBeforeEventAdd'); $eventManager = \Bitrix\Main\EventManager::getInstance(); $eventManager->unregisterEventHandler('main', '\Bitrix\Main\Mail\Internal\Event::OnBeforeAdd', self::MODULE_ID, 'CAmminaRegions', 'OnEventBeforeAddBitrixMainEvent'); $eventManager->unregisterEventHandler('sale', 'onSaleCompanyRulesClassNamesBuildList', self::MODULE_ID, '\Ammina\Regions\Rules\SaleCompanyRules\Domain', 'onSaleCompanyRulesClassNamesBuildList'); $eventManager->unregisterEventHandler('sale', 'onSaleDeliveryRestrictionsClassNamesBuildList', self::MODULE_ID, '\Ammina\Regions\Rules\Sale\DeliveryRestrictions\Domain', 'onSaleDeliveryRestrictionsClassNamesBuildList'); $eventManager->unregisterEventHandler('sale', 'onSalePaySystemRestrictionsClassNamesBuildList', self::MODULE_ID, '\Ammina\Regions\Rules\Sale\PaySystemRestrictions\Domain', 'onSalePaySystemRestrictionsClassNamesBuildList'); UnRegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\Domain', 'GetUserTypeDescription'); UnRegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\Country', 'GetUserTypeDescription'); UnRegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\Region', 'GetUserTypeDescription'); UnRegisterModuleDependences('iblock', 'OnIBlockPropertyBuildList', self::MODULE_ID, '\Ammina\Regions\IblockProp\City', 'GetUserTypeDescription'); UnRegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\Domain', 'GetUserTypeDescription'); UnRegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\Country', 'GetUserTypeDescription'); UnRegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\Region', 'GetUserTypeDescription'); UnRegisterModuleDependences('main', 'OnUserTypeBuildList', self::MODULE_ID, '\Ammina\Regions\UserProp\City', 'GetUserTypeDescription'); return true; } function InstallEvents() { return true; } function UnInstallEvents() { return true; } function InstallFiles($arParams = array()) { CopyDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/admin", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/admin", true); CopyDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/components", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/components", true, true); CopyDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/js/ammina.regions", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/js/ammina.regions", true, true); CopyDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/themes/.default", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/themes/.default", true, true); CopyDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/tools", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/tools", true); return true; } function UnInstallFiles() { DeleteDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/tools", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/tools"); DeleteDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/admin", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/admin"); DeleteDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/components", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/components"); DeleteDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/js/ammina.regions", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/js/ammina.regions"); DeleteDirFiles($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/themes/.default/", $_SERVER["DOCUMENT_ROOT"] . "/bitrix/themes/.default");//css return true; } function DoInstall() { global $APPLICATION, $step; CJSCore::Init(array("jquery2")); $step = intval($step); if ($step < 2) { $APPLICATION->IncludeAdminFile(GetMessage("ammina.regions_INSTALL_TITLE"), $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/step1.php"); } elseif ($step == 2) { if (amreg_strlen($_REQUEST['AFIELDS']['NAME']) <= 0 || amreg_strlen($_REQUEST['AFIELDS']['EMAIL']) <= 0 || amreg_strlen($_REQUEST['AFIELDS']['PHONE']) <= 0) { LocalRedirect($APPLICATION->GetCurPageParam("lang=" . LANG . "&install=Y&id=" . self::MODULE_ID)); } $this->doSendRegData(); $this->InstallFiles(); $this->InstallDB(); RegisterModule(self::MODULE_ID); CModule::IncludeModule(self::MODULE_ID); $this->doInstallSystemVariables(); $GLOBALS["errors"] = $this->strError; $APPLICATION->IncludeAdminFile(GetMessage("ammina.regions_INSTALL_TITLE"), $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/step2.php"); } } function DoUninstall() { global $APPLICATION, $step; $step = IntVal($step); if ($step < 2) { $APPLICATION->IncludeAdminFile(GetMessage("ammina.regions_UNINSTALL_TITLE"), $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/unstep1.php"); } elseif ($step == 2) { UnRegisterModule(self::MODULE_ID); $this->UnInstallDB(array( "savedata" => $_REQUEST["savedata"], )); $this->UnInstallFiles(); $GLOBALS["errors"] = $this->strError; $APPLICATION->IncludeAdminFile(GetMessage("ammina.regions_UNINSTALL_TITLE"), $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/" . self::MODULE_ID . "/install/unstep2.php"); } } function doInstallSystemVariables() { $arVariables = include(dirname(__FILE__) . "/system.variables.php"); foreach ($arVariables as $arVariable) { $arDBVariable = \Ammina\Regions\VariableTable::getList(array( "filter" => array( "IS_SYSTEM" => array("Y", "E"), "CODE" => $arVariable['CODE'], ), ))->fetch(); if (!$arDBVariable) { \Ammina\Regions\VariableTable::add(array( "NAME" => $arVariable['NAME'], "DESCRIPTION" => $arVariable['DESCRIPTION'], "CODE" => $arVariable['CODE'], "IS_SYSTEM" => ($arVariable['IS_EDIT'] === "Y" ? "E" : "Y"), )); } } } function doSendRegData() { $strHost = $_SERVER['SERVER_NAME']; if (amreg_strlen($strHost) <= 0) { $strHost = $_SERVER['HTTP_HOST']; } $strError = ""; $arClient = CUpdateClient::GetUpdatesList($strError); $arFields = array( "LEAD_NAME" => $_REQUEST['AFIELDS']['NAME'], "LEAD_EMAIL" => $_REQUEST['AFIELDS']['EMAIL'], "LEAD_PHONE" => $_REQUEST['AFIELDS']['PHONE'], "LEAD_UF_CRM_1551200754705" => md5('BITRIX' . CUpdateClientPartner::GetLicenseKey() . 'LICENSE'), "LEAD_UF_CRM_1551200838989" => $arClient['CLIENT'][0]['@']['LICENSE'], "LEAD_UF_CRM_1551200902405" => $strHost, "LEAD_UF_CRM_1551200882741" => self::MODULE_ID, "LEAD_UF_CRM_1551200966047" => $arClient['CLIENT'][0]['@']['DATE_FROM'], "LEAD_UF_CRM_1551200977499" => $arClient['CLIENT'][0]['@']['DATE_TO'], "from" => $_SERVER['HTTP_REFERER'], ); if (!defined("BX_UTF") || BX_UTF !== true) { $arFields = $GLOBALS['APPLICATION']->ConvertCharsetArray($arFields, (amreg_strlen(LANG_CHARSET) > 0 ? LANG_CHARSET : SITE_CHARSET), "UTF-8"); } $strUrl = "https://www.ammina24.ru/pub/form/6_kontaktnye_dannye_po_modulyu_ammina_ip/dyvcqd/?form_code=6_kontaktnye_dannye_po_modulyu_ammina_ip&sec=dyvcqd"; $oHttpClient = new \Bitrix\Main\Web\HttpClient(array( 'redirect' => true, 'redirectMax' => 10, 'version' => '1.1', 'disableSslVerification' => true, 'waitResponse' => true, 'socketTimeout' => 15, 'streamTimeout' => 30, 'charset' => "UTF-8", )); $strResult1 = $oHttpClient->get("https://www.ammina24.ru/pub/form/6_kontaktnye_dannye_po_modulyu_ammina_ip/dyvcqd/"); $status = $oHttpClient->getStatus(); if ($status == 200) { $s1 = amreg_strpos($strResult1, "'bitrix_sessid':'"); $s2 = amreg_strpos($strResult1, "'", $s1 + 17); $strSessId = amreg_substr($strResult1, $s1 + 17, $s2 - $s1 - 17); $arFields['sessid'] = $strSessId; $oCookie = $oHttpClient->getCookies(); $oHttpClient->setCookies($oCookie->toArray()); $oHttpClient->setHeader('Referer', 'https://www.ammina24.ru/pub/form/6_kontaktnye_dannye_po_modulyu_ammina_ip/dyvcqd/'); $response = $oHttpClient->post($strUrl, $arFields); unset($oHttpClient); } } } ?>
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.27 |
proxy
|
phpinfo
|
Settings