%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 18.222.179.204 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/storeassist/classes/general/ |
Upload File : |
<? use Bitrix\Main\Localization\Loc; Loc::loadMessages(__FILE__); class CStoreAssist { static $arAllPageId = array( "currencies", "cat_group_admin", "cat_measure_list", "sale_report_edit", "sale_person_type", "locations", "sale_buyers", "sale_status", "cat_store_list", "storeassist_social", "cat_product_list", "quantity", "cat_store_document_list", "order_setting", "reserve_setting", "storeassist_1c_catalog_fill", "1c_integration", "storeassist_1c_unloading", "1c_exchange", "storeassist_1c_exchange_realtime", "storeassist_1c_small_firm", "sale_pay_system", "sale_delivery", "sale_delivery_service_list", "storeassist_seo_settings", "seo_robots", "seo_sitemap", "seo_search_yandex", "seo_search_google", "search_reindex", "storeassist_adaptive", "opening", "checklist", "storeassist_context_adv", "cat_discount_admin", "storeassist_marketing", "posting_admin", "cat_export_setup", "sale_ymarket", "ebay", "sale_order", "sale_report", "storeassist_print", "client", "sale_account_admin", "sale_basket", "sale_personalization", "sale_crm", "storeassist_crm_client", "storeassist_crm_calls", "site_speed", "composite", "bitrixcloud_cdn", "perfmon_panel", "security_filter", "dump_auto", "bitrixcloud_monitoring_admin", "security_scanner", "security_otp", "scale_graph", "cluster_index", "storeassist_virtual", "blog_comment", "ticket_desktop", "site_checker", "info_vk", "info_blog", "info_forum_guest", "info_forum_client", "info_idea", "info_user_doc", "info_api_doc", "info_courses", "support_developer", "support_bitrix" ); public static function setSettingOption($pageId, $isDone) { if (!in_array($pageId, self::$arAllPageId)) return false; if (!in_array($isDone, array("Y", "N"))) return false; $option = Bitrix\Main\Config\Option::get('storeassist', 'storeassist_settings', ''); if (!$option) $option = array(); else $option = explode(",", $option); if ($isDone == "Y" && !in_array($pageId, $option)) { $option[] = $pageId; } elseif($isDone == "N" && in_array($pageId, $option)) { $key = array_search($pageId, $option); unset($option[$key]); } $option = implode(",", $option); Bitrix\Main\Config\Option::set('storeassist', 'storeassist_settings', $option, ''); return $option; } public static function getSettingOption() { $option = Bitrix\Main\Config\Option::get('storeassist', 'storeassist_settings', ''); if (!$option) $option = array(); else $option = explode(",", $option); return $option; } public static function getDocumentationLink($pageId) { if (!$pageId) return false; if (!in_array($pageId, self::$arAllPageId)) return false; return Loc::getMessage("STOREAS_DOCURL_".$pageId); } public static function onPrologAdminTitle($pageUrl, $pageId = "") { if (!in_array(LANGUAGE_ID, array("ru", "ua"))) return; global $APPLICATION, $bxProductConfig; $ST_RIGHT = $APPLICATION->GetGroupRight("storeassist"); if (!($ST_RIGHT >= "R")) { return false; } $partnerUrl = Bitrix\Main\Config\Option::get("storeassist", "partner_url", ''); if ($partnerUrl) $bxProductConfig["admin"]["links"] = '<a href="http://www.1c-bitrix.ru/">www.1c-bitrix.ru</a> | <a href="'.htmlspecialcharsbx($partnerUrl).'" class="adm-main-support-link">'.Loc::getMessage("STOREAS_SUPPORT").'</a>'; 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 '<div class="adm-s-toolbar" data-role="adm-task-toolbar" onmouseout="BX.removeClass(this, \'hover\')"> <div class="adm-s-toolbar-shadow"> <div class="adm-detail-toolbar" style="margin-bottom: 0;"> <a href="/bitrix/admin/storeassist.php?lang='.LANGUAGE_ID.$hash.'" class="adm-detail-toolbar-btn"><span class="adm-detail-toolbar-btn-l"></span><span class="adm-detail-toolbar-btn-text">'.Loc::getMessage("STOREAS_BACK_BUTTON").'</span><span class="adm-detail-toolbar-btn-r"></span></a> <span class="adm-s-toolbar-task '.($isItemDone ? 'checked' : '').'">'.Loc::getMessage(($isItemDone ? 'STOREAS_DONE' : 'STOREAS_NOT_DONE')).'</span> <div class="adm-detail-toolbar-right"> <span class="adm-btn-wrap adm-btn-delete"> <span class="adm-btn" onclick="BX.Storeassist.Admin.showDocumentation(\''.CUtil::JSEscape(Loc::getMessage("STOREAS_DOCURL_".$pageId)).'\')">'.Loc::getMessage("STOREAS_DOCUMENTATION").'</span> </span> </div> </div> <div class="adm-s-toolbar-hidden-block"> <strong>'.Loc::getMessage("STOREAS_TASK").':</strong> '.Loc::getMessage("STOREAS_TASK_".(isset($_GET["subId"]) ? htmlspecialcharsbx($_GET["subId"]) : $pageId)). ($ST_RIGHT >= "W" ? '<div class="adm-s-toolbar-hidden-block-btn">'.($isItemDone ? '<a href="javascript:void(0)" onclick="BX.Storeassist.Admin.setOption(\''.$pageId.'\', \'N\')" class="adm-btn">'.Loc::getMessage("STOREAS_NOT_DONE_BUTTON").'</a>' : '<a href="javascript:void(0)" onclick="BX.Storeassist.Admin.setOption(\''.$pageId.'\', \'Y\')" class="adm-btn adm-btn-green">'.Loc::getMessage("STOREAS_DONE_BUTTON").'</a>'). '</div>' : '') .'</div> </div> </div>'; if (!$isItemDone) { echo '<script> BX.ready(function(){ var hash = window.location.hash; if (hash.indexOf("showtask") != -1) { var toolbar = document.querySelector(\'[data-role="adm-task-toolbar"]\'); if (toolbar) { new BX.easing({ duration : 600, start : { opacity : 0 }, finish : { opacity : 1 }, transition : BX.easing.transitions.linear, step : function(state){ toolbar.style.opacity = state.opacity; }, complete : function() { BX.addClass(toolbar, "hover"); } }).animate(); } } }); </script>'; } } 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["<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, ["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();"; } } ?>