public function DoUninstall() { $this->uninstallFiles(); Bitrix\Main\Config\Option::delete($this->MODULE_ID); \Bitrix\Main\ModuleManager::unRegisterModule($this->MODULE_ID); return true; }
public static function getDomainsList() { static $arDomains = null; if ($arDomains === null) { $arDomains = array(); $dbSites = Bitrix\Main\SiteDomainTable::getList(array('select' => array('DOMAIN', 'LID', 'SITE_NAME' => 'SITE.NAME', 'SITE_ACTIVE' => 'SITE.ACTIVE', 'SITE_DIR' => 'SITE.DIR', 'SITE_DOC_ROOT' => 'SITE.DOC_ROOT'))); $defaultDomain = CBXPunycode::ToASCII(Bitrix\Main\Config\Option::getRealValue('main', 'server_name'), $e = null); $bCurrentHostFound = false; while ($arSite = $dbSites->fetch()) { $arDomains[] = $arSite; if ($arSite['DOMAIN'] == $defaultDomain) { $bCurrentHostFound = true; } } if (!$bCurrentHostFound) { $dbDefSite = Bitrix\Main\SiteTable::getList(array('filter' => array('DEF' => 'Y'), 'select' => array('LID', 'NAME', 'ACTIVE'))); $arDefSite = $dbDefSite->fetch(); if ($arDefSite) { array_unshift($arDomains, array('DOMAIN' => $defaultDomain, 'LID' => $arDefSite['LID'], 'SITE_NAME' => $arDefSite['NAME'], 'SITE_ACTIVE' => $arDefSite['ACTIVE'], 'SITE_DIR' => $arDefSite['DIR'], 'SITE_DOC_ROOT' => $arDefSite['DOC_ROOT'])); } } } return $arDomains; }
echo Admin\OrderEdit::getFastNavigationHtml($fastNavItems); // yellow block with brief echo Admin\Blocks\OrderInfo::getView($saleOrder, $orderBasket); // Problem block if ($saleOrder->getField("MARKED") == "Y") { echo Admin\OrderEdit::getProblemBlockHtml($saleOrder->getField("REASON_MARKED")); } $aTabs = array(array("DIV" => "tab_order", "TAB" => Loc::getMessage("SALE_OVIEW_TAB_ORDER"), "TITLE" => Loc::getMessage("SALE_OVIEW_TAB_ORDER"), "SHOW_WRAP" => "N", "IS_DRAGGABLE" => "Y"), array("DIV" => "tab_history", "TAB" => Loc::getMessage("SALE_OVIEW_TAB_HISTORY"), "TITLE" => Loc::getMessage("SALE_OVIEW_TAB_HISTORY")), array("DIV" => "tab_analysis", "TAB" => Loc::getMessage("SALE_OVIEW_TAB_ANALYSIS"), "TITLE" => Loc::getMessage("SALE_OVIEW_TAB_ANALYSIS"))); $tabControl = new CAdminTabControlDrag($formId, $aTabs, $moduleId, false, true); $tabControl->Begin(); //TAB order -- $tabControl->BeginNextTab(); $blocksOrder = $tabControl->getCurrentTabBlocksOrder($defaultBlocksOrder); $statusOnPaid = Bitrix\Main\Config\Option::get('sale', 'status_on_paid'); $statusOnAllowDelivery = Bitrix\Main\Config\Option::get('sale', 'status_on_allow_delivery'); $statusOnPaid2AllowDelivery = Bitrix\Main\Config\Option::get('sale', 'status_on_payed_2_allow_delivery'); $autoChangeStatus = 'Y'; if (empty($statusOnPaid) && (empty($statusOnAllowDelivery) || empty($statusOnPaid2AllowDelivery))) { $autoChangeStatus = 'N'; } ?> <tr><td> <input type="hidden" id="ID" name="ID" value="<?php echo $ID; ?> "> <input type="hidden" id="SITE_ID" name="SITE_ID" value="<?php echo htmlspecialcharsbx($saleOrder->getSiteId()); ?> "> <input type="hidden" id="AUTO_CHANGE_STATUS_ON_PAID" name="AUTO_CHANGE_STATUS_ON_PAID" value="<?php
public function DoUninstall() { try { //удаление платёжной системы $this->deletePaysys(); //удаление статуса заказа [ЕРИП]Ожидание оплаты $this->deleteOStatus(); //удаление обработчика $this->deleteHandlers(); //удаление почтового шаблона $this->deleteMailTemplate(); //удаление почтового события $this->deleteMailEvType(); //удаляем обработчики пл. системы $this->deletePaysysHandler(); //удаления файлов обработчика пл. системы $this->deleteHandlerFiles(); //удаление настроек модуля Bitrix\Main\Config\Option::delete($this->MODULE_ID); //удаление модуля из системы Bitrix\Main\ModuleManager::unRegisterModule($this->MODULE_ID); return true; } catch (Exception $e) { $GLOBALS["APPLICATION"]->ThrowException($e->getMessage()); return false; } }
echo GetMessage('BIGDATA_ENABLED'); ?> <?php if (!$available) { ?> <div class="adm-c-bigdata-activate-content-task-list-warning"><span><?php echo GetMessage('BIGDATA_DISABLED'); ?> </span></div> <?php } ?> </li> <?php $installed = time() - Bitrix\Main\Config\Option::get('main', 'rcm_component_usage', 0) < 3600 * 24; ?> <li <?php echo $installed ? 'class="good"' : ''; ?> > <?php echo GetMessage('BIGDATA_INSTALLED'); ?> <?php if (!$installed) { ?> <div class="adm-c-bigdata-activate-content-task-list-warning"><span><?php echo GetMessage('BIGDATA_UNINSTALLED'); ?> </span></div>
public static function AgentCountDayOrders() { global $DB; if (Bitrix\Main\Loader::includeModule("sale")) { //count orders $arFilter = array("STATUS_ID" => array("F", "P"), "PAYED" => "Y"); $dateFromTs = MakeTimeStamp(date("d", time() - 3600 * 24 * 2) . "." . date("m", time() - 3600 * 24 * 2) . "." . date("Y", time() - 3600 * 24 * 2) . " 23:59:59", "DD.MM.YYYY HH:MI:SS"); $dateToTs = MakeTimeStamp(date("d") . "." . date("m") . "." . date("Y") . " 00:00:00", "DD.MM.YYYY HH:MI:SS"); $arFilter[">DATE_STATUS"] = date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL", SITE_ID)), $dateFromTs); $arFilter["<DATE_STATUS"] = date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL", SITE_ID)), $dateToTs); $dbOrders = CSaleOrder::GetList(array(), $arFilter); $numOrders = $dbOrders->SelectedRowsCount(); $newNumOrders = array("newDay" => $numOrders); $curNumOrders = Bitrix\Main\Config\Option::get("storeassist", "num_orders", ""); if ($curNumOrders) { $curNumOrders = unserialize($curNumOrders); } $newNumOrders["prevDay"] = isset($curNumOrders["newDay"]) ? $curNumOrders["newDay"] : 0; Bitrix\Main\Config\Option::set("storeassist", "num_orders", serialize($newNumOrders), ""); //count progress $progress = Bitrix\Main\Config\Option::get("storeassist", "progress_percent", 0); $newProgress = 0; if ($newNumOrders["newDay"] >= $newNumOrders["prevDay"] && $newNumOrders["newDay"] > 0) { $newProgress = ++$progress > 10 ? 10 : $progress; } else { $newProgress = --$progress > 0 ? $progress : 0; } Bitrix\Main\Config\Option::set("storeassist", "progress_percent", $newProgress, ""); } return "CStoreAssist::AgentCountDayOrders();"; }
?> ?mid=<?php echo urlencode($module_id); ?> &lang=<?php echo LANGUAGE_ID; ?> "> <?php $o_tab->BeginNextTab(); foreach ($all_options as &$option) { $type = $option[2]; if ($option[0] == "group_ids") { $cur_opt_val = explode("|", Bitrix\Main\Config\Option::get($module_id, $option[0])); } else { $cur_opt_val = Bitrix\Main\Config\Option::get($module_id, $option[0]); } ?> <tr> <td width="40%" <?php if ($type == "textarea") { echo "class=\"adm-detail-valign-top\""; } ?> > <label for="<?php echo htmlspecialcharsbx($option[0]); ?> "><?php echo $option[1]; ?>
public static function CheckNumberForBlackList($number) { $blackListTime = Bitrix\Main\Config\Option::get("voximplant", "blacklist_time", 5); $blackListCount = Bitrix\Main\Config\Option::get("voximplant", "blacklist_count", 5); $minTime = new Bitrix\Main\Type\DateTime(); $minTime->add('-' . $blackListTime . ' minutes'); $dbData = VI\StatisticTable::getList(array('filter' => array("PHONE_NUMBER" => $number, '>CALL_START_DATE' => $minTime), 'select' => array('ID'))); $callsCount = 0; while ($dbData->fetch()) { $callsCount++; if ($callsCount >= $blackListCount) { $number = substr($number, 0, 20); VI\BlacklistTable::add(array("PHONE_NUMBER" => $number)); $messageUserId = Bitrix\Main\Config\Option::get("voximplant", "blacklist_user_id", ""); CVoxImplantHistory::SendMessageToChat($messageUserId, $number, CVoxImplantMain::CALL_INCOMING, GetMessage("BLACKLIST_NUMBER")); return true; } } return false; }
<?php Bitrix\Main\Config\Option::set("catalog", "product_form_simple_search", "N"); $arFilter['PARAM2'] = $this->getIblockId(); if (!empty($arFilter['SECTION_ID'])) { $arFilter['PARAMS'] = array('iblock_section' => $arFilter['SECTION_ID']); } $obSearch = new \CSearch(); $obSearch->Search($arFilter); $cnt = 0; $activeSectionId = $this->getSectionId(); while ($ar = $obSearch->Fetch()) { if (strpos($ar['ITEM_ID'], 'S') === 0) { $sectionId = preg_replace('#[^0-9]+#', '', $ar['ITEM_ID']); if ($sectionId != $activeSectionId) { $arSearchedSectionIds[] = $sectionId; } } else { $arSearchedIds[] = $ar['ITEM_ID']; } if (++$cnt >= 100) { break; } }
$newNumber = substr($_POST["BLACKLIST_NEW_NUMBER"], 0, 20); $newNumber = CVoxImplantPhone::Normalize($newNumber); if ($newNumber) { $dbBlacklist = Bitrix\Voximplant\BlacklistTable::getList(array("filter" => array("PHONE_NUMBER" => $newNumber))); if (!$dbBlacklist->Fetch()) { Bitrix\Voximplant\BlacklistTable::add(array("PHONE_NUMBER" => $newNumber)); } LocalRedirect(POST_FORM_ACTION_URI); } else { $arResult["ERROR"] = GetMessage("VI_BLACKLIST_NUMBER_ERROR"); } } if (isset($_POST["action"]) && $_POST["action"] == "delete_number") { $dbBlacklist = Bitrix\Voximplant\BlacklistTable::getList(array("filter" => array("PHONE_NUMBER" => $_POST["number"]))); if ($arBlacklist = $dbBlacklist->Fetch()) { Bitrix\Voximplant\BlacklistTable::delete($arBlacklist["ID"]); } $APPLICATION->RestartBuffer(); echo \Bitrix\Main\Web\Json::encode(array("success" => "Y")); die; } } $arResult["ITEMS"] = array(); $dbBlacklist = Bitrix\Voximplant\BlacklistTable::getList(); while ($arBlacklist = $dbBlacklist->Fetch()) { $arResult["ITEMS"][] = $arBlacklist; } $arResult["BLACKLIST_AUTO"] = Bitrix\Main\Config\Option::get("voximplant", "blacklist_auto", "N"); $arResult["BLACKLIST_TIME"] = intval(Bitrix\Main\Config\Option::get("voximplant", "blacklist_time", 5)); $arResult["BLACKLIST_COUNT"] = intval(Bitrix\Main\Config\Option::get("voximplant", "blacklist_count", 5)); $this->IncludeComponentTemplate();
?> <form method="post" action="<?php echo $APPLICATION->GetCurPage(); ?> ?mid=<?php echo urlencode($module_id); ?> &lang=<?php echo LANGUAGE_ID; ?> "> <?php $o_tab->BeginNextTab(); foreach ($all_options as $name => $desc) { $cur_opt_val = htmlspecialcharsbx(Bitrix\Main\Config\Option::get($module_id, $name)); $name = htmlspecialcharsbx($name); ?> <tr> <td width="40%"> <label for="<?php echo $name; ?> "><?php echo $desc; ?> :</label> </td> <td width="60%"> <?php if ($name == "set_automatic") {
unset($reportSettings); } if (empty($error)) { $message = Loc::getMessage('SALE_CONVERTER_AJAX_STEP_UPDATE_BASKET'); $type = 'PROCESS'; // SITE_START COption::SetOptionString("main", "site_stopped", "N"); $result['NEXT_STEP'] = ++$ajax_step; } else { $message = Loc::getMessage('SALE_CONVERTER_AJAX_STEP_UPDATE_REPORT'); $result['ERROR'] = true; $type = 'ERROR'; $message .= "<br>" . $error; } $result['DATA'] = $message; Bitrix\Main\Config\Option::set("main", "~sale_converted_15", 'Y'); CAdminNotify::DeleteByTag('SALE_ORDER_MASTER_CONVERT'); break; case 22: if ($DB->TableExists('b_sale_basket')) { if ($DB->type == 'MYSQL') { if (!$DB->Query('ALTER TABLE b_sale_basket CHANGE PRICE PRICE DECIMAL(18,4) not null', true)) { $error .= $DB->GetErrorMessage(); } if (!$DB->Query('ALTER TABLE b_sale_basket CHANGE DISCOUNT_PRICE DISCOUNT_PRICE DECIMAL(18,4) not null', true)) { $error .= $DB->GetErrorMessage(); } if (!$DB->Query('ALTER TABLE b_sale_basket CHANGE QUANTITY QUANTITY DECIMAL(18,4) not null', true)) { $error .= $DB->GetErrorMessage(); } if (!$DB->Query("SELECT BASE_PRICE FROM b_sale_basket WHERE 1=0", true)) {
foreach ($arBlock["MAIN_ITEMS"] as $itemCode => $arItem) { if (!$arItem["available"]) { continue; } ?> <li class="adm-s-setting-task <?php if (in_array($itemCode, $arStoreAssistOption)) { ?> complited<?php } ?> "> <?php switch ($itemCode) { case "support_developer": $partnerName = Bitrix\Main\Config\Option::get("storeassist", "partner_name", ""); $message = htmlspecialcharsbx(GetMessage("STOREAS_ITEMS_" . $itemCode, array("#NAME#" => $partnerName ? "\"" . $partnerName . "\"" : ""))); ?> <a href="<?php echo $arItem["path"]; ?> " title="<?php echo $message; ?> " onclick="BX.Storeassist.Admin.setOption('<?php echo CUtil::JSEscape($itemCode); ?> ', 'Y')" target="_blank"> <span><?php echo $message; ?>
CVoxImplantHistory::WriteToLog($params, 'PORTAL ADD HISTORY'); if (isset($params['PORTAL_NUMBER']) && isset($params['ACCOUNT_SEARCH_ID'])) { $params['PORTAL_NUMBER'] = $params['ACCOUNT_SEARCH_ID']; } CVoxImplantHistory::Add($params); $ViAccount = new CVoxImplantAccount(); $ViAccount->SetAccountBalance($params["balance"]); echo "200 OK"; } elseif ($params["COMMAND"] == "IncomingGetConfig") { $result = CVoxImplantIncoming::GetConfigBySearchId($params['PHONE_NUMBER']); CVoxImplantHistory::WriteToLog($result, 'PORTAL GET INCOMING CONFIG'); if ($result['ID']) { $result = CVoxImplantIncoming::RegisterCall($result, $params); } $isNumberInBlacklist = CVoxImplantIncoming::IsNumberInBlackList($params["CALLER_ID"]); $isBlacklistAutoEnable = Bitrix\Main\Config\Option::get("voximplant", "blacklist_auto", "N") == "Y"; if ($result["WORKTIME_SKIP_CALL"] == "Y" && !$isNumberInBlacklist && $isBlacklistAutoEnable) { $isNumberInBlacklist = CVoxImplantIncoming::CheckNumberForBlackList($params["CALLER_ID"]); } if ($isNumberInBlacklist) { $result["NUMBER_IN_BLACKLIST"] = "Y"; } if (!CVoxImplantAccount::IsPro()) { $result["CRM_SOURCE"] = 'CALL'; $result["CALL_VOTE"] = 'N'; if ($result["QUEUE_TYPE"] == CVoxImplantConfig::QUEUE_TYPE_ALL) { $result["QUEUE_TYPE"] = CVoxImplantConfig::QUEUE_TYPE_EVENLY; $result["NO_ANSWER_RULE"] = CVoxImplantIncoming::RULE_VOICEMAIL; } } foreach (GetModuleEvents("voximplant", "onCallInit", true) as $arEvent) {