GetGroupRight("storeassist"); if (!($ST_RIGHT >= "R")) { return false; } $partnerUrl = Bitrix\Main\Config\Option::get("storeassist", "partner_url", ''); if ($partnerUrl) $bxProductConfig["admin"]["links"] = 'www.1c-bitrix.ru  |  '.Loc::getMessage("STOREAS_SUPPORT").''; if (!$pageId) { preg_match("/([^\/]*?)\.php/i", $pageUrl, $matches); if (isset($matches[1])) $pageId = $matches[1]; else return false; } if (!in_array($pageId, self::$arAllPageId)) return false; $arSettingOption = self::getSettingOption(); $isItemDone = (in_array($pageId, $arSettingOption)) ? true : false; CJSCore::Init(array('storeassist', 'fx')); $APPLICATION->SetAdditionalCSS('/bitrix/panel/storeassist/storeassist.css'); //Bitrix\Main\Page\Asset::getInstance()->addCss('/bitrix/panel/storeassist/storeassist.css'); $hash = (isset($_GET["back"])) ? "#".htmlspecialcharsbx($_GET["back"]) : ""; echo '
'.Loc::getMessage("STOREAS_BACK_BUTTON").' '.Loc::getMessage(($isItemDone ? 'STOREAS_DONE' : 'STOREAS_NOT_DONE')).'
'.Loc::getMessage("STOREAS_DOCUMENTATION").'
'.Loc::getMessage("STOREAS_TASK").': '.Loc::getMessage("STOREAS_TASK_".(isset($_GET["subId"]) ? htmlspecialcharsbx($_GET["subId"]) : $pageId)). ($ST_RIGHT >= "W" ? '' : '') .'
'; if (!$isItemDone) { echo ''; } } public static function onBuildGlobalMenu(&$arGlobalMenu, &$arModuleMenu) { if (!in_array(LANGUAGE_ID, array("ru", "ua"))) return; global $APPLICATION; if ($APPLICATION->GetGroupRight("storeassist") >= "R") { $storeAssistItem = array( "text" => Loc::getMessage("STOREAS_MENU_TEXT"), "url" => "storeassist.php?lang=".LANGUAGE_ID, "title" => Loc::getMessage("STOREAS_MENU_TITLE"), ); foreach ($arModuleMenu as &$arMenuItem) { if (!isset($arMenuItem["items_id"]) || $arMenuItem["items_id"] !== "menu_sale_settings") { continue; } if (isset($arMenuItem["items"]) && is_array($arMenuItem["items"])) { array_unshift($arMenuItem["items"], $storeAssistItem); } else { $arMenuItem["items"] = array($storeAssistItem); } break; } } } public static function getProgressPercent() { $progress = Bitrix\Main\Config\Option::get("storeassist", "progress_percent", 0); if ($progress < 0) $progress = 0; elseif ($progress > 10) $progress = 10; return $progress; } 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["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, ["allowed_classes" => false]); } $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();"; } } ?>