コード例 #1
0
ファイル: automatic.php プロジェクト: Satariall/izurit
 public static function convertNewServiceToOld($service, $sid = false)
 {
     if (!isset($service["CONFIG"]["MAIN"]["SID"])) {
         return false;
     }
     self::initHandlers();
     $handlers = self::getRegisteredHandlers("SID");
     if ($sid !== false) {
         $service["SID"] = $sid;
     } else {
         $service["SID"] = $service["CONFIG"]["MAIN"]["SID"];
     }
     $service["TAX_RATE"] = $service["CONFIG"]["MAIN"]["MARGIN_VALUE"];
     //todo: %, CURRENCY
     $service["INSTALLED"] = 'Y';
     $service["BASE_CURRENCY"] = $service["CURRENCY"];
     $service["SETTINGS"] = $service["CONFIG"]["MAIN"]["OLD_SETTINGS"];
     $service["HANDLER"] = $handlers[$service["SID"]]["HANDLER"];
     if (intval($service["LOGOTIP"]) > 0) {
         $service["LOGOTIP"] = \CFile::getFileArray($service["LOGOTIP"]);
     }
     $siteId = false;
     if (isset($service["ID"]) && intval($service["ID"]) > 0) {
         $restrictions = \Bitrix\Sale\Delivery\Services\Manager::getRestrictionsByDeliveryId($service["ID"]);
         foreach ($restrictions as $restriction) {
             if ($restriction["CLASS_NAME"] == '\\Bitrix\\Sale\\Delivery\\Restrictions\\BySite' && !empty($restriction["PARAMS"]["SITE_ID"])) {
                 if (is_array($restriction["PARAMS"]["SITE_ID"])) {
                     reset($restriction["PARAMS"]["SITE_ID"]);
                     $siteId = current($restriction["PARAMS"]["SITE_ID"]);
                 } else {
                     $siteId = $restriction["PARAMS"]["SITE_ID"];
                 }
                 break;
             }
         }
     }
     if (!$siteId) {
         $siteId = Helper::getDefaultSiteId();
     }
     $service["CONFIG"] = self::createConfig($handlers[$service["SID"]], $service["SETTINGS"], $siteId);
     $service["SETTINGS"] = unserialize($service["SETTINGS"]);
     $service["PROFILES"] = array();
     if (isset($service["ID"]) && intval($service["ID"]) > 0) {
         foreach (Manager::getByParentId($service["ID"]) as $profile) {
             $profileId = $profile["CONFIG"]["MAIN"]["PROFILE_ID"];
             $profileParams = array("TITLE" => $profile["NAME"], "DESCRIPTION" => $profile["DESCRIPTION"], "TAX_RATE" => $service["CONFIG"]["MAIN"]["MARGIN_VALUE"], "ACTIVE" => $profile["ACTIVE"]);
             $restrictions = Manager::getRestrictionsByDeliveryId($profile["ID"]);
             foreach ($restrictions as $restriction) {
                 switch ($restriction["CLASS_NAME"]) {
                     case '\\Bitrix\\Sale\\Delivery\\Restrictions\\ByWeight':
                         $profileParams["RESTRICTIONS_WEIGHT"] = array($restriction["PARAMS"]["MIN_WEIGHT"], $restriction["PARAMS"]["MAX_WEIGHT"]);
                         break;
                     case '\\Bitrix\\Sale\\Delivery\\Restrictions\\ByPrice':
                         $profileParams["RESTRICTIONS_SUM"] = array($restriction["PARAMS"]["MIN_PRICE"], $restriction["PARAMS"]["MAX_PRICE"]);
                         break;
                     case '\\Bitrix\\Sale\\Delivery\\Restrictions\\ByDimensions':
                         $profileParams["RESTRICTIONS_DIMENSIONS"] = array($restriction["PARAMS"]["LENGTH"], $restriction["PARAMS"]["WIDTH"], $restriction["PARAMS"]["HEIGHT"]);
                         $profileParams["RESTRICTIONS_MAX_SIZE"] = $restriction["PARAMS"]["MAX_DIMENSION"];
                         $profileParams["RESTRICTIONS_DIMENSIONS_SUM"] = $restriction["PARAMS"]["MAX_DIMENSIONS_SUM"];
                         break;
                     default:
                         break;
                 }
             }
             $service["PROFILES"][$profileId] = $profileParams;
         }
     }
     unset($service["CODE"]);
     if (strlen($service["SID"]) > 0 && isset($handlers[$service["SID"]])) {
         $result = array_merge($handlers[$service["SID"]], $service);
     } else {
         $result = $service;
     }
     return $result;
 }
コード例 #2
0
ファイル: delivery_ajax.php プロジェクト: webgksupport/alpina
require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php";
$lang = isset($_REQUEST['lang']) ? trim($_REQUEST['lang']) : "ru";
\Bitrix\Main\Context::getCurrent()->setLanguage($lang);
Loc::loadMessages(__FILE__);
$arResult = array("ERROR" => "");
if (!\Bitrix\Main\Loader::includeModule('sale')) {
    $arResult["ERROR"] = "Error! Can't include module \"Sale\"";
}
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/sale/lib/delivery/inputs.php";
$saleModulePermissions = $APPLICATION->GetGroupRight("sale");
if (strlen($arResult["ERROR"]) <= 0 && $saleModulePermissions >= "W" && check_bitrix_sessid()) {
    $action = isset($_REQUEST['action']) ? trim($_REQUEST['action']) : '';
    switch ($action) {
        case "get_group_dialog_content":
            $selectedGroupId = isset($_REQUEST['selectedGroupId']) ? trim($_REQUEST['selectedGroupId']) : '';
            die("<table><tr><td>" . \Bitrix\Sale\Delivery\Helper::getGroupChooseControl($selectedGroupId, "DELIVERY_GROUP[]", ' size="10" style="width: 300px;"') . "</td></tr></table>");
            break;
        case "get_restriction_params_html":
            $className = isset($_REQUEST['className']) ? trim($_REQUEST['className']) : '';
            $params = isset($_REQUEST['params']) ? $_REQUEST['params'] : array();
            $deliveryId = isset($_REQUEST['deliveryId']) ? intval($_REQUEST['deliveryId']) : 0;
            $sort = isset($_REQUEST['sort']) ? intval($_REQUEST['sort']) : 100;
            if (!$className) {
                throw new \Bitrix\Main\ArgumentNullException("className");
            }
            $restriction = Services\Manager::getRestrictionObject($className);
            $paramsStructure = $restriction->getParamsStructure($deliveryId);
            $params = $restriction->prepareParamsValues($params, $deliveryId);
            $paramsField = "<table width='100%'>";
            foreach ($paramsStructure as $name => $param) {
                $paramsField .= "<tr>" . "<td valign=\"top\" style=\"padding-right:20px;\">" . (strlen($param["LABEL"]) > 0 ? $param["LABEL"] . ": " : "") . "</td>" . "<td>" . \Bitrix\Sale\Internals\Input\Manager::getEditHtml("RESTRICTION[" . $name . "]", $param, isset($params[$name]) ? $params[$name] : false) . "</td>" . "</tr>";
コード例 #3
0
        ?>
</a>
				</td>
			</tr>
		<?php 
    } else {
        ?>
			<tr>
				<td width="40%">
					<?php 
        echo Loc::getMessage("SALE_DSE_FORM_GROUP_ID");
        ?>
					:</td>
				<td width="60%">
					<?php 
        echo \Bitrix\Sale\Delivery\Helper::getGroupChooseControl($fields["PARENT_ID"], "PARENT_ID");
        ?>
 &nbsp;
					<a
						href="javascript:void(0);"
						style="border-bottom: 1px dashed; cursor: pointer; text-decoration: none;"
						onclick="BX.Sale.Delivery.createGroup();"
					>
						<?php 
        echo Loc::getMessage("SALE_DSE_ADD");
        ?>
					</a>
					<input type="hidden" name="GROUP_NAME" id="GROUP_NAME" value="">
				</td>
			</tr>
		<?php 
コード例 #4
0
ファイル: byprice.php プロジェクト: andy-profi/bxApiDocs
 public static function getParamsStructure()
 {
     return array("MIN_PRICE" => array("TYPE" => "NUMBER", "DEFAULT" => "0", 'MIN' => 0, "LABEL" => Loc::getMessage("SALE_DLVR_RSTR_BY_PRICE_MIN_PRICE")), "MAX_PRICE" => array("TYPE" => "NUMBER", "DEFAULT" => "0", 'MIN' => 0, "LABEL" => Loc::getMessage("SALE_DLVR_RSTR_BY_PRICE_MAX_PRICE")), "CURRENCY" => array("TYPE" => "ENUM", "DEFAULT" => "RUB", "LABEL" => Loc::getMessage("SALE_DLVR_RSTR_BY_PRICE_CURRECY"), "OPTIONS" => \Bitrix\Sale\Delivery\Helper::getCurrenciesList()));
 }
コード例 #5
0
        echo htmlspecialcharsbx($className::getClassTitle());
        ?>
</option>
					<?php 
    }
    ?>
				<?php 
}
?>
			</select>
		</td>
	</tr>
	<tr>
		<td><?php 
echo Loc::getMessage("SALE_SDL_FILTER_GROUP");
?>
:</td>
		<td>
			<?php 
echo \Bitrix\Sale\Delivery\Helper::getGroupChooseControl($filter_group, "filter_group", "", true);
?>
		</td>
	</tr>
	<?php 
$oFilter->Buttons(array("table_id" => $sTableID, "url" => $APPLICATION->GetCurPageParam(), "form" => "find_form"));
$oFilter->End();
?>
</form>
<?php 
$lAdmin->DisplayList();
require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php";