1
0
Fork 0
mirror of synced 2025-04-20 01:21:01 +00:00

add component sale.order.ajax and template

This commit is contained in:
Sergey Chazov 2020-09-30 11:26:45 +03:00
parent 3d09cb1480
commit c9173bac0e
82 changed files with 51430 additions and 0 deletions

View file

@ -0,0 +1,17 @@
<?php
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
die();
}
$arComponentDescription = [
"NAME" => GetMessage("SOF_DEFAULT_TEMPLATE_NAME1"),
"DESCRIPTION" => GetMessage("SOF_DEFAULT_TEMPLATE_DESCRIPTION"),
"ICON" => "/images/sale_order_full.gif",
"PATH" => [
"ID" => "e-store",
"CHILD" => [
"ID" => "sale_order",
"NAME" => GetMessage("SOF_NAME"),
],
],
];

View file

@ -0,0 +1,406 @@
<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
use Bitrix\Main\Loader;
use Bitrix\Catalog;
use Bitrix\Iblock;
if (!Loader::includeModule('sale'))
return;
$siteId = isset($_REQUEST['src_site']) && is_string($_REQUEST['src_site']) ? $_REQUEST['src_site'] : '';
$siteId = substr(preg_replace('/[^a-z0-9_]/i', '', $siteId), 0, 2);
$arColumns = array(
"PREVIEW_PICTURE" => GetMessage("SOA_PREVIEW_PICTURE"),
"DETAIL_PICTURE" => GetMessage("SOA_DETAIL_PICTURE"),
"PREVIEW_TEXT" => GetMessage("SOA_PREVIEW_TEXT"),
"PROPS" => GetMessage("SOA_PROPS"),
"NOTES" => GetMessage("SOA_PRICE_TYPE"),
"DISCOUNT_PRICE_PERCENT_FORMATED" => GetMessage("SOA_DISCOUNT"),
"PRICE_FORMATED" => GetMessage("SOA_PRICE_FORMATED"),
"WEIGHT_FORMATED" => GetMessage("SOA_WEIGHT")
);
$arIblockIDs = array();
if (Loader::includeModule('catalog'))
{
$arIblockNames = array();
$parameters = array(
'select' => array('IBLOCK_ID', 'NAME' => 'IBLOCK.NAME', 'SITE_ID' => 'IBLOCK_SITE.SITE_ID'),
'order' => array('IBLOCK_ID' => 'ASC'),
'filter' => array('SITE_ID' => 's1'),
'runtime' => array(
'IBLOCK_SITE' => array(
'data_type' => 'Bitrix\Iblock\IblockSiteTable',
'reference' => array(
'ref.IBLOCK_ID' => 'this.IBLOCK_ID',
),
'join_type' => 'inner'
)
)
);
$parameters = array(
'select' => array('IBLOCK_ID', 'NAME' => 'IBLOCK.NAME'),
'order' => array('IBLOCK_ID' => 'ASC'),
);
if (!empty($siteId) && is_string($siteId))
{
$parameters['select']['SITE_ID'] = 'IBLOCK_SITE.SITE_ID';
$parameters['filter'] = array('SITE_ID' => $siteId);
$parameters['runtime'] = array(
'IBLOCK_SITE' => array(
'data_type' => 'Bitrix\Iblock\IblockSiteTable',
'reference' => array(
'ref.IBLOCK_ID' => 'this.IBLOCK_ID',
),
'join_type' => 'inner'
)
);
}
$catalogIterator = Catalog\CatalogIblockTable::getList($parameters);
while ($catalog = $catalogIterator->fetch())
{
$catalog['IBLOCK_ID'] = (int)$catalog['IBLOCK_ID'];
$arIblockIDs[] = $catalog['IBLOCK_ID'];
$arIblockNames[$catalog['IBLOCK_ID']] = $catalog['NAME'];
}
unset($catalog, $catalogIterator);
if (!empty($arIblockIDs))
{
$arProps = array();
$propertyIterator = Iblock\PropertyTable::getList(array(
'select' => array('ID', 'CODE', 'NAME', 'IBLOCK_ID'),
'filter' => array('@IBLOCK_ID' => $arIblockIDs, '=ACTIVE' => 'Y', '!=XML_ID' => CIBlockPropertyTools::XML_SKU_LINK),
'order' => array('IBLOCK_ID' => 'ASC', 'SORT' => 'ASC', 'ID' => 'ASC')
));
while ($property = $propertyIterator->fetch())
{
$property['ID'] = (int)$property['ID'];
$property['IBLOCK_ID'] = (int)$property['IBLOCK_ID'];
$property['CODE'] = (string)$property['CODE'];
if ($property['CODE'] == '')
$property['CODE'] = $property['ID'];
if (!isset($arProps[$property['CODE']]))
{
$arProps[$property['CODE']] = array(
'CODE' => $property['CODE'],
'TITLE' => $property['NAME'].' ['.$property['CODE'].']',
'ID' => array($property['ID']),
'IBLOCK_ID' => array($property['IBLOCK_ID'] => $property['IBLOCK_ID']),
'IBLOCK_TITLE' => array($property['IBLOCK_ID'] => $arIblockNames[$property['IBLOCK_ID']]),
'COUNT' => 1
);
}
else
{
$arProps[$property['CODE']]['ID'][] = $property['ID'];
$arProps[$property['CODE']]['IBLOCK_ID'][$property['IBLOCK_ID']] = $property['IBLOCK_ID'];
if ($arProps[$property['CODE']]['COUNT'] < 2)
$arProps[$property['CODE']]['IBLOCK_TITLE'][$property['IBLOCK_ID']] = $arIblockNames[$property['IBLOCK_ID']];
$arProps[$property['CODE']]['COUNT']++;
}
}
unset($property, $propertyIterator);
$propList = array();
foreach ($arProps as &$property)
{
$iblockList = '';
if ($property['COUNT'] > 1)
{
$iblockList = ($property['COUNT'] > 2 ? ' ( ... )' : ' ('.implode(', ', $property['IBLOCK_TITLE']).')');
}
$propList['PROPERTY_'.$property['CODE']] = $property['TITLE'].$iblockList;
}
unset($property, $arProps);
if (!empty($propList))
$arColumns = array_merge($arColumns, $propList);
unset($propList);
}
}
$arComponentParameters = array(
"GROUPS" => array(
"ANALYTICS_SETTINGS" => array(
"NAME" => GetMessage("SOA_ANALYTICS_SETTINGS")
),
"MAIN_MESSAGE_SETTINGS" => array(
"NAME" => GetMessage("SOA_MAIN_MESSAGE_SETTINGS")
),
"ADDITIONAL_MESSAGE_SETTINGS" => array(
"NAME" => GetMessage("SOA_ADDITIONAL_MESSAGE_SETTINGS")
),
"ERROR_MESSAGE_SETTINGS" => array(
"NAME" => GetMessage("SOA_ERROR_MESSAGE_SETTINGS1")
)
),
"PARAMETERS" => array(
"USER_CONSENT" => array(),
"ACTION_VARIABLE" => array(
"NAME" => GetMessage('SOA_ACTION_VARIABLE'),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "soa-action",
"PARENT" => "ADDITIONAL_SETTINGS",
),
"PATH_TO_BASKET" => array(
"NAME" => GetMessage("SOA_PATH_TO_BASKET1"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "/personal/cart/",
"COLS" => 25,
"PARENT" => "ADDITIONAL_SETTINGS",
),
"PATH_TO_PERSONAL" => array(
"NAME" => GetMessage("SOA_PATH_TO_PERSONAL1"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "index.php",
"COLS" => 25,
"PARENT" => "ADDITIONAL_SETTINGS",
),
"PATH_TO_PAYMENT" => array(
"NAME" => GetMessage("SOA_PATH_TO_PAYMENT"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "payment.php",
"COLS" => 25,
"PARENT" => "ADDITIONAL_SETTINGS",
),
"PATH_TO_AUTH" => array(
"NAME" => GetMessage("SOA_PATH_TO_AUTH1"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "/auth/",
"COLS" => 25,
"PARENT" => "ADDITIONAL_SETTINGS",
),
"PAY_FROM_ACCOUNT" => array(
"NAME" => GetMessage("SOA_ALLOW_PAY_FROM_ACCOUNT1"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "BASE",
),
"ONLY_FULL_PAY_FROM_ACCOUNT" => array(
"NAME" => GetMessage("SOA_ONLY_FULL_PAY_FROM_ACCOUNT1"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "BASE",
),
"ALLOW_AUTO_REGISTER" => array(
"NAME" => GetMessage("SOA_ALLOW_AUTO_REGISTER"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "BASE",
),
"ALLOW_APPEND_ORDER" => array(
"NAME" => GetMessage("SOA_ALLOW_APPEND_ORDER"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "BASE",
),
"SEND_NEW_USER_NOTIFY" => array(
"NAME" => GetMessage("SOA_SEND_NEW_USER_NOTIFY"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "BASE",
),
"DELIVERY_NO_AJAX" => array(
"NAME" => GetMessage("SOA_DELIVERY_NO_AJAX3"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
'N' => GetMessage("SOA_DELIVERY_NO_AJAX_NO"),
'H' => GetMessage("SOA_DELIVERY_NO_AJAX_HANDLER"),
'Y' => GetMessage("SOA_DELIVERY_NO_AJAX_YES"),
),
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "BASE",
),
"SHOW_NOT_CALCULATED_DELIVERIES" => array(
"NAME" => GetMessage("SOA_SHOW_NOT_CALCULATED_DELIVERIES"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"DEFAULT" => "L",
"VALUES" => array(
'N' => GetMessage("SOA_SHOW_NOT_CALCULATED_DELIVERIES_N"),
'L' => GetMessage("SOA_SHOW_NOT_CALCULATED_DELIVERIES_L"),
'Y' => GetMessage("SOA_SHOW_NOT_CALCULATED_DELIVERIES_Y"),
),
"HIDDEN" => isset($arCurrentValues['DELIVERY_NO_AJAX']) && $arCurrentValues['DELIVERY_NO_AJAX'] === 'Y' ? 'N' : 'Y',
"PARENT" => "BASE",
),
"DELIVERY_NO_SESSION" => array(
"NAME" => GetMessage("SOA_DELIVERY_NO_SESSION"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "BASE",
),
"TEMPLATE_LOCATION" => array(
"NAME" => GetMessage("SBB_TEMPLATE_LOCATION1"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
"popup" => GetMessage("SBB_TMP_POPUP"),
".default" => GetMessage("SBB_TMP_DEFAULT1")
),
"DEFAULT" => "popup",
"COLS" => 25,
"ADDITIONAL_VALUES" => "N",
"PARENT" => "BASE",
),
"SPOT_LOCATION_BY_GEOIP" => array(
"NAME" => GetMessage("SBB_SPOT_LOCATION_BY_GEOIP"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"ADDITIONAL_VALUES" => "N",
"PARENT" => "BASE",
),
"DELIVERY_TO_PAYSYSTEM" => array(
"NAME" => GetMessage("SBB_DELIVERY_PAYSYSTEM"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
"d2p" => GetMessage("SBB_TITLE_PD"),
"p2d" => GetMessage("SBB_TITLE_DP")
),
"PARENT" => "BASE",
),
"SHOW_VAT_PRICE" => array(
"NAME" => GetMessage('SOA_SHOW_VAT_PRICE'),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"ADDITIONAL_VALUES" => "N",
"PARENT" => "BASE",
),
"SET_TITLE" => array(),
"USE_PREPAYMENT" => array(
"NAME" => GetMessage('SBB_USE_PREPAYMENT'),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"ADDITIONAL_VALUES" => "N",
"PARENT" => "BASE",
),
"DISABLE_BASKET_REDIRECT" => array(
"NAME" => GetMessage('SOA_DISABLE_BASKET_REDIRECT2'),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N"
),
"EMPTY_BASKET_HINT_PATH" => array(
"NAME" => GetMessage('SOA_EMPTY_BASKET_HINT_PATH'),
"TYPE" => "STRING",
"DEFAULT" => "/"
),
"USE_PHONE_NORMALIZATION" => array(
"NAME" => GetMessage("SOA_USE_PHONE_NORMALIZATION"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "ADDITIONAL_SETTINGS"
)
)
);
//compatibility to old default columns in basket
$defaultColumns = array();
if (!isset($arCurrentValues['PRODUCT_COLUMNS']) && !isset($arCurrentValues['PRODUCT_COLUMNS_VISIBLE']))
$defaultColumns = array('PREVIEW_PICTURE', 'PROPS');
else if (!isset($arCurrentValues['PRODUCT_COLUMNS_VISIBLE']))
{
if (isset($arCurrentValues['PRODUCT_COLUMNS']))
$defaultColumns = array_merge($arCurrentValues['PRODUCT_COLUMNS'], array('PRICE_FORMATED'));
else
$defaultColumns = array('PROPS', 'DISCOUNT_PRICE_PERCENT_FORMATED', 'PRICE_FORMATED');
}
$arComponentParameters["PARAMETERS"]["PRODUCT_COLUMNS_VISIBLE"] = array(
"NAME" => GetMessage("SOA_PRODUCT_COLUMNS"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"COLS" => 25,
"SIZE" => 7,
"VALUES" => $arColumns,
"DEFAULT" => $defaultColumns,
"ADDITIONAL_VALUES" => "N",
"PARENT" => "ADDITIONAL_SETTINGS",
);
if (is_array($templateProperties['PRODUCT_COLUMNS_HIDDEN']) && !empty($templateProperties['PRODUCT_COLUMNS_HIDDEN']))
{
$templateProperties['PRODUCT_COLUMNS_HIDDEN']['VALUES'] = $arColumns;
}
if ($arCurrentValues['COUNT_DELIVERY_TAX'] == 'Y')
{
$arComponentParameters["PARAMETERS"]["COUNT_DELIVERY_TAX"] = array(
"NAME" => GetMessage("SOA_COUNT_DELIVERY_TAX"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "BASE",
);
}
$arComponentParameters["PARAMETERS"]['COMPATIBLE_MODE'] = array(
"NAME" => GetMessage("SOA_COMPATIBLE_MODE1"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "BASE"
);
$arComponentParameters["PARAMETERS"]['USE_PRELOAD'] = array(
"NAME" => GetMessage("SOA_USE_PRELOAD"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "BASE"
);
foreach ($arIblockIDs as $iblockId)
{
$fileProperties = array('-' => GetMessage("SOA_DEFAULT"));
$propertyIterator = CIBlockProperty::getList(
array("SORT" => "ASC", "NAME" => "ASC"),
array("IBLOCK_ID" => $iblockId, "ACTIVE" => "Y")
);
while ($property = $propertyIterator->fetch())
{
if ($property['PROPERTY_TYPE'] == 'F')
{
$property['ID'] = (int)$property['ID'];
$propertyName = '['.$property['ID'].']'.($property['CODE'] != '' ? '['.$property['CODE'].']' : '').' '.$property['NAME'];
if ($property['CODE'] == '')
$property['CODE'] = $property['ID'];
$fileProperties[$property['CODE']] = $propertyName;
}
}
$arComponentParameters["PARAMETERS"]['ADDITIONAL_PICT_PROP_'.$iblockId] = array(
"NAME" => GetMessage("SOA_ADDITIONAL_IMAGE").' ['.$arIblockNames[$iblockId].']',
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => $fileProperties,
"ADDITIONAL_VALUES" => "N",
"PARENT" => 'ADDITIONAL_SETTINGS'
);
}
$arComponentParameters["PARAMETERS"]['BASKET_IMAGES_SCALING'] = array(
"NAME" => GetMessage("SOA_BASKET_IMAGES_SCALING"),
"TYPE" => "LIST",
"VALUES" => array(
'standard' => GetMessage("SOA_STANDARD"),
'adaptive' => GetMessage("SOA_ADAPTIVE"),
'no_scale' => GetMessage("SOA_NO_SCALE")
),
"DEFAULT" => "adaptive",
"PARENT" => "ADDITIONAL_SETTINGS"
);

View file

@ -0,0 +1,48 @@
<?php
define('STOP_STATISTICS', true);
define('NO_KEEP_STATISTIC', 'Y');
define('NO_AGENT_STATISTIC','Y');
define('DisableEventsCheck', true);
define('BX_SECURITY_SHOW_MESSAGE', true);
define('NOT_CHECK_PERMISSIONS', true);
$siteId = isset($_REQUEST['SITE_ID']) && is_string($_REQUEST['SITE_ID']) ? $_REQUEST['SITE_ID'] : '';
$siteId = substr(preg_replace('/[^a-z0-9_]/i', '', $siteId), 0, 2);
if (!empty($siteId) && is_string($siteId))
{
define('SITE_ID', $siteId);
}
require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_before.php');
$request = Bitrix\Main\Application::getInstance()->getContext()->getRequest();
$request->addFilter(new \Bitrix\Main\Web\PostDecodeFilter);
if (!Bitrix\Main\Loader::includeModule('sale'))
return;
Bitrix\Main\Localization\Loc::loadMessages(dirname(__FILE__).'/class.php');
$signer = new \Bitrix\Main\Security\Sign\Signer;
try
{
$signedParamsString = $request->get('signedParamsString') ?: '';
$params = $signer->unsign($signedParamsString, 'sale.order.ajax');
$params = unserialize(base64_decode($params));
}
catch (\Bitrix\Main\Security\Sign\BadSignatureException $e)
{
die();
}
$action = $request->get($params['ACTION_VARIABLE']);
if (empty($action))
return;
global $APPLICATION;
$APPLICATION->IncludeComponent(
'bitrix:sale.order.ajax',
'.default',
$params
);

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,99 @@
<?
define("NO_KEEP_STATISTIC", true);
define("NO_AGENT_STATISTIC", true);
define('NOT_CHECK_PERMISSIONS', true);
use Bitrix\Main;
use Bitrix\Main\Loader;
use Bitrix\Sale\Location;
use Bitrix\Sale\Location\Admin\LocationHelper as Helper;
require_once($_SERVER["DOCUMENT_ROOT"].'/bitrix/modules/main/include/prolog_before.php');
Loader::includeModule('sale');
CUtil::JSPostUnescape();
$result = array(
'ERRORS' => array(),
'DATA' => array()
);
$siteId = '';
if(strlen($_REQUEST['SITE_ID']))
$siteId = $_REQUEST['SITE_ID'];
elseif(strlen(SITE_ID))
$siteId = SITE_ID;
if($_REQUEST['ACT'] != 'GET_LOCS_BY_ZIP')
{
$item = Helper::getLocationsByZip($_REQUEST['ZIP'], array('limit' => 1))->fetch();
if(!isset($item['LOCATION_ID']))
{
$result['ERRORS'] = array('Not found');
}
else
{
$result['DATA']['ID'] = intval($item['LOCATION_ID']);
if(strlen($siteId))
{
if(!Location\SiteLocationTable::checkConnectionExists($siteId, $result['DATA']['ID']))
$result['ERRORS'] = array('Found, but not connected');
}
}
}
else
{
$dbRes = Helper::getLocationsByZip($_REQUEST['ZIP'], array('select' => array('PARENT_ID' => 'LOCATION.PARENT_ID')));
$locationsId = array();
while($item = $dbRes->fetch())
{
if(!isset($item['LOCATION_ID']))
continue;
$locationId = intval($item['LOCATION_ID']);
if(strlen($siteId))
if(!Location\SiteLocationTable::checkConnectionExists($siteId, $locationId))
continue;
$parentId = intval($item['PARENT_ID']);
if(!is_array($locationsId[$parentId]))
$locationsId[$parentId] = array();
$locationsId[$parentId][] = $locationId;
}
/* If we have several locations on different levels, choose it with maximal count. */
if(!empty($locationsId))
{
$maxIdsCountParentId = 0;
foreach($locationsId as $parentId => $ids)
if(count($ids) > $maxIdsCountParentId)
$maxIdsCountParentId = $parentId;
if($maxIdsCountParentId > 0)
{
$result['DATA']['PARENT_ID'] = $maxIdsCountParentId;
$result['DATA']['IDS'] = $locationsId[$maxIdsCountParentId];
}
}
if(!isset($result['DATA']['PARENT_ID']))
{
$result['ERRORS'] = array('Not found');
}
}
header('Content-Type: application/x-javascript; charset='.LANG_CHARSET);
print(CUtil::PhpToJSObject(array(
'result' => empty($result['ERRORS']),
'errors' => $result['ERRORS'],
'data' => $result['DATA']
), false, false, true));

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

View file

@ -0,0 +1,4 @@
<?
$MESS["SOF_DEFAULT_TEMPLATE_DESCRIPTION"] = "Single-step ordering procedure without page reload";
$MESS["SOF_NAME"] = "Ordering Procedure";
$MESS["SOF_DEFAULT_TEMPLATE_NAME1"] = "Checkout";

View file

@ -0,0 +1,71 @@
<?
$MESS["ACTION_VARIABLE_TIP"] = "Specifies the name of a variable that contains the action identifier: processOrder, showOrder etc. Default value: <i>action</i>.";
$MESS["ALLOW_APPEND_ORDER_TIP"] = "If a user with the specified e-mail already exists, the new order will be attached to the existing account.
If the option is unchecked, the user already exists error will pop up.";
$MESS["COMPATIBLE_MODE_TIP"] = "Enable this option if you are using a template from previous module versions";
$MESS["DISABLE_BASKET_REDIRECT_TIP"] = "This will include the empty.php page that you can modify as required.";
$MESS["EMPTY_BASKET_HINT_PATH_TIP"] = "The \"Continue Shopping\" link is shown if the shopping cart is empty.<br>The text will be hidden if the link is empty.";
$MESS["SBB_DELIVERY_PAYSYSTEM"] = "Sequence of ordering process";
$MESS["SBB_SPOT_LOCATION_BY_GEOIP"] = "Determine customer's location by IP address";
$MESS["SBB_TEMPLATE_LOCATION1"] = "Location select control appearance";
$MESS["SBB_TITLE_DP"] = "Payment -> Delivery";
$MESS["SBB_TITLE_PD"] = "Delivery -> Payment";
$MESS["SBB_TMP_DEFAULT1"] = "Stepwise";
$MESS["SBB_TMP_POPUP"] = "Search string";
$MESS["SBB_USE_PREPAYMENT"] = "Use PayPal Express Checkout";
$MESS["SHOW_NOT_CALCULATED_DELIVERIES_TIP"] = "Enable the \"Pre-calculate deliveries that have external access to services\" option to sort deliveries of this type.";
$MESS["SHOW_VAT_PRICE_TIP"] = "Specifies to show tax value";
$MESS["SOA_ACTION_VARIABLE"] = "Variable containing the action";
$MESS["SOA_ADAPTIVE"] = "Adaptive";
$MESS["SOA_ADDITIONAL_IMAGE"] = "Additional image";
$MESS["SOA_ADDITIONAL_MESSAGE_SETTINGS"] = "Additional messages";
$MESS["SOA_ALLOW_APPEND_ORDER"] = "Allow binding new order to existing user account";
$MESS["SOA_ALLOW_AUTO_REGISTER"] = "Autoregister User At Ordering Time";
$MESS["SOA_ALLOW_PAY_FROM_ACCOUNT1"] = "Enable payment using internal account";
$MESS["SOA_ANALYTICS_SETTINGS"] = "Analytics settings";
$MESS["SOA_BASKET_IMAGES_SCALING"] = "Product image view mode";
$MESS["SOA_COMPATIBLE_MODE"] = "Compatibility mode (enable for legacy templates)";
$MESS["SOA_COMPATIBLE_MODE1"] = "Use compatibility mode for legacy template";
$MESS["SOA_COUNT_DELIVERY_TAX"] = "Calculate Delivery Tax";
$MESS["SOA_DEFAULT"] = "Default";
$MESS["SOA_DELIVERY_NO_AJAX1"] = "Calculate cost of each delivery instantly";
$MESS["SOA_DELIVERY_NO_AJAX3"] = "Calculate delivery if it uses external calculation service";
$MESS["SOA_DELIVERY_NO_AJAX_HANDLER"] = "Use delivery system preferences";
$MESS["SOA_DELIVERY_NO_AJAX_NO"] = "Don't calculate";
$MESS["SOA_DELIVERY_NO_AJAX_YES"] = "Calculate at once";
$MESS["SOA_DELIVERY_NO_SESSION"] = "Check session when creating an order";
$MESS["SOA_DESC_NO"] = "No";
$MESS["SOA_DESC_YES"] = "Yes";
$MESS["SOA_DETAIL_PICTURE"] = "Detailed image";
$MESS["SOA_DISABLE_BASKET_REDIRECT1"] = "Stay on checkout page if shopping cart is empty (this uses the customizable \"empty.php\" page)";
$MESS["SOA_DISABLE_BASKET_REDIRECT2"] = "Stay on checkout page if the shopping cart is empty";
$MESS["SOA_DISCOUNT"] = "Discount";
$MESS["SOA_EMPTY_BASKET_HINT_PATH"] = "Continue shopping page";
$MESS["SOA_ERROR_MESSAGE_SETTINGS"] = "Error messages";
$MESS["SOA_ERROR_MESSAGE_SETTINGS1"] = "Notification messages";
$MESS["SOA_MAIN_MESSAGE_SETTINGS"] = "Core messages";
$MESS["SOA_NO_SCALE"] = "Don't scale";
$MESS["SOA_ONLY_FULL_PAY_FROM_ACCOUNT1"] = "Allow only the full amount of order to be paid using internal account";
$MESS["SOA_PATH_TO_AUTH1"] = "Authentication page";
$MESS["SOA_PATH_TO_BASKET1"] = "Shopping cart page";
$MESS["SOA_PATH_TO_PAYMENT"] = "Payment System Page";
$MESS["SOA_PATH_TO_PERSONAL1"] = "Customer account page";
$MESS["SOA_PREVIEW_PICTURE"] = "Image";
$MESS["SOA_PREVIEW_TEXT"] = "Short description";
$MESS["SOA_PRICE_FORMATED"] = "Price";
$MESS["SOA_PRICE_TYPE"] = "Price type";
$MESS["SOA_PRODUCT_COLUMNS"] = "Extra columns in order product table";
$MESS["SOA_PROPS"] = "Properties";
$MESS["SOA_PROPS_NOT_SHOW"] = "Hide Properties for Payer Type";
$MESS["SOA_SEND_NEW_USER_NOTIFY"] = "Notify User Of Their Registration";
$MESS["SOA_SHOW_ALL"] = "(Show all)";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES"] = "Delivery services that failed to calculate correctly";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES_L"] = "Move to the bottom";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES_N"] = "Don't show";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES_Y"] = "Show as usual";
$MESS["SOA_SHOW_VAT_PRICE"] = "Show tax value";
$MESS["SOA_STANDARD"] = "Standard";
$MESS["SOA_USE_PHONE_NORMALIZATION"] = "Normalize phone number";
$MESS["SOA_USE_PRELOAD"] = "Auto fill payment and delivery details forms using previous order data";
$MESS["SOA_WEIGHT"] = "Weight";
?>

View file

@ -0,0 +1,59 @@
<?
$MESS["DELIVERY_CHANGE_WARNING"] = "First available delivery service selected";
$MESS["INFO_REQ"] = "You have been successfully registered.";
$MESS["INNER_PAYMENT_BALANCE_ERROR"] = "Insufficient funds on internal account";
$MESS["ORDER_CONSISTENCY_CHANGED"] = "The order has been changed while saving.";
$MESS["P2D_CALCULATE_ERROR"] = "Error while calculating order";
$MESS["PAY_SYSTEM_CHANGE_WARNING"] = "First available payment system selected";
$MESS["SALE_DELIV_PERIOD"] = "Shipping period ";
$MESS["SESSID_ERROR"] = "Your session has expired. Please reload your page.";
$MESS["SOA_CURRENCY_MODULE_NOT_INSTALL"] = "The Currency module is not installed.";
$MESS["SOA_DAY"] = "days";
$MESS["SOA_DELIVERY_CALCULATE_ERROR"] = "Cannot calculate delivery cost.";
$MESS["SOA_DISCOUNT_DEFAULT_COLUMN"] = "Discount";
$MESS["SOA_ERROR_EMAIL"] = "The e-mail address specified is incorrect.";
$MESS["SOA_ERROR_ORDER"] = "Error creating an order.";
$MESS["SOA_ERROR_PAY_SYSTEM"] = "No payment systems detected.";
$MESS["SOA_ERROR_PERSON_TYPE"] = "Payer type is not specified.";
$MESS["SOA_ERROR_REQUIRE"] = "The field is required:";
$MESS["SOA_FROM"] = "from";
$MESS["SOA_HOUR"] = "hours";
$MESS["SOA_MODULE_NOT_INSTALL"] = "The e-Store module is not installed.";
$MESS["SOA_MONTH"] = "months";
$MESS["SOA_N"] = "No";
$MESS["SOA_NAME_COLUMN_DETAIL_PICTURE"] = "Detailed image";
$MESS["SOA_NAME_COLUMN_PREVIEW_PICTURE"] = "Image";
$MESS["SOA_NAME_COLUMN_PREVIEW_TEXT"] = "Short description";
$MESS["SOA_NAME_DEFAULT_COLUMN"] = "Name";
$MESS["SOA_NEED_AUTH"] = "You need to authorise before you complete your order.";
$MESS["SOA_ORDER_CALCULATE_ERROR"] = "Error calculating the order.";
$MESS["SOA_PRICE_DEFAULT_COLUMN"] = "Price";
$MESS["SOA_PRICE_TYPE_DEFAULT_COLUMN"] = "Price type";
$MESS["SOA_PROFILE"] = "Profile";
$MESS["SOA_PROPS_DEFAULT_COLUMN"] = "Properties";
$MESS["SOA_QUANTITY_DEFAULT_COLUMN"] = "Quantity";
$MESS["SOA_SHT"] = "pcs.";
$MESS["SOA_SUM_DEFAULT_COLUMN"] = "Total";
$MESS["SOA_TEMPL_ORDER_PS_ERROR"] = "The selected payment method failed. Please contact the site administrator or select another method.";
$MESS["SOA_TITLE"] = "Complete Order";
$MESS["SOA_TO"] = "to";
$MESS["SOA_VAT"] = "VAT";
$MESS["SOA_VAT_INCLUDED"] = "included";
$MESS["SOA_WEIGHT_DEFAULT_COLUMN"] = "Weight";
$MESS["SOA_WRONG_SMS_CODE"] = "Incorrect SMS confirmation code.";
$MESS["SOA_Y"] = "Yes";
$MESS["STOF_AUTH"] = "Authorisation";
$MESS["STOF_ERROR_AUTH"] = "Authorisation error";
$MESS["STOF_ERROR_AUTH_LOGIN"] = "Authorisation error: please enter your login";
$MESS["STOF_ERROR_EMAIL"] = "Email for registration is not specified";
$MESS["STOF_ERROR_PAY_SYSTEM"] = "Payment system is not selected.";
$MESS["STOF_ERROR_REG"] = "Registration error";
$MESS["STOF_ERROR_REG_BAD_EMAIL"] = "Registration error: please check whether your e-mail is typed correctly";
$MESS["STOF_ERROR_REG_CONFIRM"] = "You have successfully registered. The registration confirmation message has been sent to your e-mail address.";
$MESS["STOF_ERROR_REG_EMAIL"] = "Registration error: please enter your e-mail address";
$MESS["STOF_ERROR_REG_FLAG"] = "Registration error: please enter the desired login or let the system generate it automatically";
$MESS["STOF_ERROR_REG_FLAG1"] = "Registration error: please enter the desired password or let the system generate it automatically";
$MESS["STOF_ERROR_REG_LASTNAME"] = "Registration error: please enter your last name";
$MESS["STOF_ERROR_REG_NAME"] = "Registration error: please enter your name";
$MESS["STOF_ERROR_REG_PASS"] = "Registration error: the password confirmation doesn't match the password";
?>

View file

@ -0,0 +1,8 @@
<?
$MESS["MAP_PHONE"] = "Phone";
$MESS["MAP_ADRES"] = "Address";
$MESS["MAP_WORK"] = "Business hours";
$MESS["MAP_STORE"] = "Warehouse";
$MESS["MAP_EMAIL"] = "E-Mail";
$MESS["MAP_DESC"] = "Description";
?>

View file

@ -0,0 +1,4 @@
<?
$MESS ['SOF_DEFAULT_TEMPLATE_NAME1'] = "retailCRM Оформление заказа";
$MESS ['SOF_DEFAULT_TEMPLATE_DESCRIPTION'] = "Компонент оформления заказа с функцией программой лояльность retailCRM";
$MESS ['SOF_NAME'] = "Процедура оформления заказа";

View file

@ -0,0 +1,72 @@
<?
$MESS["SOA_DESC_YES"] = "Да";
$MESS["SOA_DESC_NO"] = "Нет";
$MESS["SOA_ACTION_VARIABLE"] = "Название переменной, в которой передается действие";
$MESS["ACTION_VARIABLE_TIP"] = "В данном поле указывается имя переменной, в которой передается действие: processOrder, showOrder и другие. Значение поля по умолчанию - <i>action</i>.";
$MESS["SOA_PATH_TO_BASKET1"] = "Путь к странице корзины";
$MESS["SOA_PATH_TO_PERSONAL1"] = "Путь к странице персонального раздела";
$MESS["SOA_ALLOW_PAY_FROM_ACCOUNT1"] = "Разрешить оплату с внутреннего счета";
$MESS["SOA_PATH_TO_PAYMENT"] = "Страница подключения платежной системы";
$MESS["SOA_PATH_TO_AUTH1"] = "Путь к странице авторизации";
$MESS["SOA_COUNT_DELIVERY_TAX"] = "Рассчитывать налог для доставки";
$MESS["SOA_ONLY_FULL_PAY_FROM_ACCOUNT1"] = "Разрешить оплату с внутреннего счета только в полном объеме";
$MESS["SOA_PROPS_NOT_SHOW"] = "Не показывать свойства для типа плательщика";
$MESS["SOA_SHOW_ALL"] = "(Показывать все)";
$MESS["SOA_ALLOW_AUTO_REGISTER"] = "Оформлять заказ с автоматической регистрацией пользователя";
$MESS["SOA_ALLOW_APPEND_ORDER"] = "Разрешить оформлять заказ на существующего пользователя";
$MESS["ALLOW_APPEND_ORDER_TIP"] = "В случае, если пользователь с указанным e-mail уже существует, заказ прикрепится к этому пользователю.
При снятой опции будет выдана ошибка регистрации нового пользователя";
$MESS["SOA_SEND_NEW_USER_NOTIFY"] = "Отправлять пользователю письмо, что он зарегистрирован на сайте";
$MESS["SOA_DELIVERY_NO_AJAX1"] = "Рассчитывать стоимость каждой доставки сразу";
$MESS["SOA_DELIVERY_NO_SESSION"] = "Проверять сессию при оформлении заказа";
$MESS["SBB_TEMPLATE_LOCATION1"] = "Визуальный вид контрола выбора местоположений";
$MESS["SBB_TMP_DEFAULT1"] = "Пошаговый";
$MESS["SBB_TMP_POPUP"] = "Строка поиска";
$MESS["SBB_DELIVERY_PAYSYSTEM"] = "Последовательность оформления";
$MESS["SBB_TITLE_DP"] = "Оплата -> Доставка";
$MESS["SBB_TITLE_PD"] = "Доставка -> Оплата";
$MESS["SOA_SHOW_VAT_PRICE"] = "Отображать значение НДС";
$MESS["SHOW_VAT_PRICE_TIP"] = "Опция служит для показа величины НДС";
$MESS["SBB_USE_PREPAYMENT"] = "Использовать предавторизацию для оформления заказа (PayPal Express Checkout)";
$MESS["SOA_DISABLE_BASKET_REDIRECT1"] = "Оставаться на странице оформления заказа, если список товаров пуст (Подключается страница empty.php, которую можно кастомизировать)";
$MESS["SOA_DISABLE_BASKET_REDIRECT2"] = "Оставаться на странице оформления заказа, если список товаров пуст";
$MESS["SOA_EMPTY_BASKET_HINT_PATH"] = "Путь к странице для продолжения покупок";
$MESS["DISABLE_BASKET_REDIRECT_TIP"] = "Подключается страница empty.php, которую можно кастомизировать";
$MESS["SOA_PRODUCT_COLUMNS"] = "Выбранные колонки таблицы списка товаров";
$MESS["SOA_PREVIEW_PICTURE"] = "Изображение";
$MESS["SOA_DETAIL_PICTURE"] = "Детальное изображение";
$MESS["SOA_PREVIEW_TEXT"] = "Краткое описание";
$MESS["SOA_PROPS"] = "Свойства";
$MESS["SOA_PRICE_TYPE"] = "Тип цены";
$MESS["SOA_DISCOUNT"] = "Скидка";
$MESS["SOA_WEIGHT"] = "Вес";
$MESS["SOA_PRICE_FORMATED"] = "Цена";
$MESS["SOA_MAIN_MESSAGE_SETTINGS"] = "Основные фразы";
$MESS["SOA_ADDITIONAL_MESSAGE_SETTINGS"] = "Дополнительные фразы";
$MESS["SOA_ERROR_MESSAGE_SETTINGS"] = "Фразы ошибок";
$MESS["SOA_ERROR_MESSAGE_SETTINGS1"] = "Фразы уведомлений";
$MESS["SOA_COMPATIBLE_MODE"] = "Режим совместимости для предыдущего шаблона (Если вы используете предыдущий шаблон, вам необходимо включить данную настройку)";
$MESS["SOA_COMPATIBLE_MODE1"] = "Режим совместимости для предыдущего шаблона";
$MESS["COMPATIBLE_MODE_TIP"] = "Если вы используете предыдущий шаблон, вам необходимо включить данную настройку";
$MESS["SOA_BASKET_IMAGES_SCALING"] = "Режим отображения изображений товаров";
$MESS["SOA_ADAPTIVE"] = "Адаптивный";
$MESS["SOA_STANDARD"] = "Стандартный";
$MESS["SOA_NO_SCALE"] = "Без сжатия";
$MESS["SOA_DEFAULT"] = "По умолчанию";
$MESS["SOA_USE_PHONE_NORMALIZATION"] = "Использовать нормализацию номера телефона";
$MESS["SOA_ADDITIONAL_IMAGE"] = "Дополнительная картинка";
$MESS["SOA_ANALYTICS_SETTINGS"] = "Настройки аналитики";
$MESS["SOA_DELIVERY_NO_AJAX3"] = "Когда рассчитывать доставки с внешними системами расчета";
$MESS["SOA_DELIVERY_NO_AJAX_NO"] = "Не расчитывать";
$MESS["SOA_DELIVERY_NO_AJAX_YES"] = "Рассчитывать сразу";
$MESS["SOA_DELIVERY_NO_AJAX_HANDLER"] = "Учитывать настройки доставки";
$MESS["SOA_USE_PRELOAD"] = "Автозаполнение оплаты и доставки по предыдущему заказу";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES"] = "Отображение доставок с ошибками расчета";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES_N"] = "Не показывать";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES_L"] = "Показывать в конце";
$MESS["SOA_SHOW_NOT_CALCULATED_DELIVERIES_Y"] = "Показывать в общем списке";
$MESS["SHOW_NOT_CALCULATED_DELIVERIES_TIP"] = "Для сортировки доставок с внешним доступом к сервисам требуется
включить параметр \"Рассчитывать сразу доставки с внешним доступом к сервисам\"";
$MESS["SBB_SPOT_LOCATION_BY_GEOIP"] = "Определять местоположение покупателя по IP-адресу";
$MESS["EMPTY_BASKET_HINT_PATH_TIP"] = "Ссылка для продолжения покупок отображается в случае если корзина пуста.<br>При условии, что путь пустой, текст не будет отображен.";
?>

View file

@ -0,0 +1,58 @@
<?
$MESS["SOA_MODULE_NOT_INSTALL"] = "Модуль Интернет-магазина не установлен.";
$MESS["SOA_CURRENCY_MODULE_NOT_INSTALL"] = "Модуль валют не установлен в системе.";
$MESS["SOA_NEED_AUTH"] = "Для оформления заказа необходимо авторизоваться на сайте";
$MESS["SOA_TITLE"] = "Оформление заказа";
$MESS["SOA_ERROR_PERSON_TYPE"] = "Не выбран тип плательщика";
$MESS["SOA_ERROR_EMAIL"] = "Указанный адрес электронной почты неверен.";
$MESS["SOA_ERROR_REQUIRE"] = "Заполните поле";
$MESS["SOA_Y"] = "Да";
$MESS["SOA_N"] = "Нет";
$MESS["SOA_FROM"] = "от";
$MESS["SOA_TO"] = "до";
$MESS["SOA_HOUR"] = "часов";
$MESS["SOA_MONTH"] = "месяцев";
$MESS["SOA_DAY"] = "дней";
$MESS["SOA_ERROR_PAY_SYSTEM"] = "Нет платежных систем для оплаты";
$MESS["SOA_VAT_INCLUDED"] = "включен в цену";
$MESS["SOA_ERROR_ORDER"] = "Ошибка создания заказа";
$MESS["SOA_PROFILE"] = "Профиль";
$MESS["SOA_SHT"] = "шт.";
$MESS["SOA_VAT"] = "НДС";
$MESS["STOF_ERROR_AUTH_LOGIN"] = "Ошибка авторизации зарегистрированного пользователя: введите ваш логин";
$MESS["STOF_ERROR_AUTH"] = "Ошибка авторизации зарегистрированного пользователя";
$MESS["STOF_ERROR_REG_NAME"] = "Ошибка регистрации нового пользователя: введите ваше имя";
$MESS["STOF_ERROR_REG_LASTNAME"] = "Ошибка регистрации нового пользователя: введите вашу фамилию";
$MESS["STOF_ERROR_REG_EMAIL"] = "Ошибка регистрации нового пользователя: введите ваш E-Mail адрес";
$MESS["STOF_ERROR_REG_BAD_EMAIL"] = "Ошибка регистрации нового пользователя: проверьте правильность ввода E-Mail адреса";
$MESS["STOF_ERROR_REG_FLAG"] = "Ошибка регистрации нового пользователя: введите желаемый логин или разрешите системе сгенерировать его автоматически";
$MESS["STOF_ERROR_REG_FLAG1"] = "Ошибка регистрации нового пользователя: введите желаемый пароль или разрешите системе сгенерировать его автоматически";
$MESS["STOF_ERROR_REG_PASS"] = "Ошибка регистрации нового пользователя: повтор пароля не совпадает с паролем";
$MESS["STOF_ERROR_REG"] = "Ошибка регистрации нового пользователя";
$MESS["STOF_AUTH"] = "Авторизация";
$MESS["INFO_REQ"] = "Вы были успешно зарегистрированы.";
$MESS["STOF_ERROR_REG_CONFIRM"] = "Вы успешно зарегистрированы на сайте. Контрольная строка для подтверждения регистрации отправлена вам по E-Mail.";
$MESS["STOF_ERROR_EMAIL"] = "Не указан Email для регистрации пользователя";
$MESS["SALE_DELIV_PERIOD"] = "Срок доставки ";
$MESS["STOF_ERROR_PAY_SYSTEM"] = "Не указана платёжная система";
$MESS["SOA_NAME_DEFAULT_COLUMN"] = "Название";
$MESS["SOA_PROPS_DEFAULT_COLUMN"] = "Свойства";
$MESS["SOA_PRICE_TYPE_DEFAULT_COLUMN"] = "Тип цены";
$MESS["SOA_DISCOUNT_DEFAULT_COLUMN"] = "Скидка";
$MESS["SOA_WEIGHT_DEFAULT_COLUMN"] = "Вес";
$MESS["SOA_QUANTITY_DEFAULT_COLUMN"] = "Количество";
$MESS["SOA_PRICE_DEFAULT_COLUMN"] = "Цена";
$MESS["SOA_SUM_DEFAULT_COLUMN"] = "Сумма";
$MESS["SOA_NAME_COLUMN_PREVIEW_TEXT"] = "Краткое описание";
$MESS["SOA_NAME_COLUMN_PREVIEW_PICTURE"] = "Изображение";
$MESS["SOA_NAME_COLUMN_DETAIL_PICTURE"] = "Детальное изображение";
$MESS["SOA_ORDER_CALCULATE_ERROR"] = "Ошибка расчета заказа";
$MESS['SOA_TEMPL_ORDER_PS_ERROR'] = "Ошибка выбранного способа оплаты. Обратитесь к Администрации сайта, либо выберите другой способ оплаты.";
$MESS["SOA_DELIVERY_CALCULATE_ERROR"] = "Не удалось рассчитать стоимость доставки";
$MESS["INNER_PAYMENT_BALANCE_ERROR"] = "На внутреннем счете недостаточно средств";
$MESS["P2D_CALCULATE_ERROR"] = "При расчете заказа произошла ошибка";
$MESS["DELIVERY_CHANGE_WARNING"] = "Выбрана первая доступная доставка";
$MESS["PAY_SYSTEM_CHANGE_WARNING"] = "Выбрана первая доступная платежная система";
$MESS["SESSID_ERROR"] = "Ваша сессия истекла. Пожалуйста, перезагрузите страницу.";
$MESS["ORDER_CONSISTENCY_CHANGED"] = "Во время сохранения заказа состав заказа был изменен.";
$MESS["SOA_WRONG_SMS_CODE"] = "Неверный код подтверждения из СМС.";

View file

@ -0,0 +1,8 @@
<?
$MESS['MAP_PHONE'] = "Телефон";
$MESS['MAP_ADRES'] = "Адрес";
$MESS['MAP_WORK'] = "Режим работы";
$MESS['MAP_STORE'] = "Склад";
$MESS['MAP_EMAIL'] = "Электронная почта";
$MESS['MAP_DESC'] = "Описание";
?>

View file

@ -0,0 +1,785 @@
<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
use Bitrix\Main\Loader;
use Bitrix\Catalog;
use Bitrix\Iblock;
if (!Loader::includeModule('sale'))
return;
$arThemes = array();
if ($eshop = \Bitrix\Main\ModuleManager::isModuleInstalled('bitrix.eshop'))
{
$arThemes['site'] = GetMessage('THEME_SITE');
}
$arThemesList = array(
'blue' => GetMessage('THEME_BLUE'),
'green' => GetMessage('THEME_GREEN'),
'red' => GetMessage('THEME_RED'),
'yellow' => GetMessage('THEME_YELLOW')
);
$dir = $_SERVER["DOCUMENT_ROOT"]."/bitrix/css/main/themes/";
if (is_dir($dir))
{
foreach ($arThemesList as $themeID => $themeName)
{
if (!is_file($dir.$themeID.'/style.css'))
continue;
$arThemes[$themeID] = $themeName;
}
}
$arTemplateParameters = array(
"TEMPLATE_THEME" => array(
"NAME" => GetMessage("TEMPLATE_THEME"),
"TYPE" => "LIST",
'VALUES' => $arThemes,
'DEFAULT' => $eshop ? 'site' : 'blue',
"PARENT" => "VISUAL"
),
"SHOW_ORDER_BUTTON" => array(
"NAME" => GetMessage("SHOW_ORDER_BUTTON"),
"TYPE" => "LIST",
"VALUES" => array(
'final_step' => GetMessage("SHOW_FINAL_STEP"),
'always' => GetMessage("SHOW_ALWAYS")
),
"PARENT" => "VISUAL",
),
"SHOW_TOTAL_ORDER_BUTTON" => array(
"NAME" => GetMessage("SHOW_TOTAL_ORDER_BUTTON"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"SHOW_PAY_SYSTEM_LIST_NAMES" => array(
"NAME" => GetMessage("SHOW_PAY_SYSTEM_LIST_NAMES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_PAY_SYSTEM_INFO_NAME" => array(
"NAME" => GetMessage("SHOW_PAY_SYSTEM_INFO_NAME"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_DELIVERY_LIST_NAMES" => array(
"NAME" => GetMessage("SHOW_DELIVERY_LIST_NAMES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_DELIVERY_INFO_NAME" => array(
"NAME" => GetMessage("SHOW_DELIVERY_INFO_NAME"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_DELIVERY_PARENT_NAMES" => array(
"NAME" => GetMessage("DELIVERY_PARENT_NAMES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_STORES_IMAGES" => array(
"NAME" => GetMessage("SHOW_STORES_IMAGES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SKIP_USELESS_BLOCK" => array(
"NAME" => GetMessage("SKIP_USELESS_BLOCK"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"BASKET_POSITION" => array(
"NAME" => GetMessage("BASKET_POSITION"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
"after" => GetMessage("BASKET_POSITION_AFTER"),
"before" => GetMessage("BASKET_POSITION_BEFORE")
),
"DEFAULT" => "after",
"PARENT" => "VISUAL"
),
"SHOW_BASKET_HEADERS" => array(
"NAME" => GetMessage("SHOW_BASKET_HEADERS"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"DELIVERY_FADE_EXTRA_SERVICES" => array(
"NAME" => GetMessage("DELIVERY_FADE_EXTRA_SERVICES"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"SHOW_NEAREST_PICKUP" => array(
"NAME" => GetMessage("SHOW_NEAREST_PICKUP"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"DELIVERIES_PER_PAGE" => array(
"NAME" => GetMessage("DELIVERIES_PER_PAGE"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "9",
"PARENT" => "VISUAL",
),
"PAY_SYSTEMS_PER_PAGE" => array(
"NAME" => GetMessage("PAY_SYSTEMS_PER_PAGE"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "9",
"PARENT" => "VISUAL",
),
"PICKUPS_PER_PAGE" => array(
"NAME" => GetMessage("PICKUPS_PER_PAGE"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "5",
"PARENT" => "VISUAL",
),
"SHOW_PICKUP_MAP" => array(
"NAME" => GetMessage("SHOW_PICKUP_MAP"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_MAP_IN_PROPS" => array(
"NAME" => GetMessage("SHOW_MAP_IN_PROPS"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "VISUAL",
),
"PICKUP_MAP_TYPE" => array(
"NAME" => GetMessage("PICKUP_MAP_TYPE"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
"yandex" => GetMessage("PICKUP_MAP_TYPE_YANDEX"),
"google" => GetMessage("PICKUP_MAP_TYPE_GOOGLE")
),
"DEFAULT" => "yandex",
"PARENT" => "VISUAL"
),
"SERVICES_IMAGES_SCALING" => array(
"NAME" => GetMessage("SERVICES_IMAGES_SCALING"),
"TYPE" => "LIST",
"VALUES" => array(
'standard' => GetMessage("SOA_STANDARD"),
'adaptive' => GetMessage("SOA_ADAPTIVE"),
'no_scale' => GetMessage("SOA_NO_SCALE")
),
"DEFAULT" => "adaptive",
"PARENT" => "ADDITIONAL_SETTINGS"
),
"PRODUCT_COLUMNS_HIDDEN" => array(
"NAME" => GetMessage("PRODUCT_COLUMNS_HIDDEN"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"COLS" => 25,
"SIZE" => 7,
"VALUES" => array(),
"DEFAULT" => array(),
"ADDITIONAL_VALUES" => "N",
"PARENT" => "ADDITIONAL_SETTINGS"
),
"HIDE_ORDER_DESCRIPTION" => array(
"NAME" => GetMessage("HIDE_ORDER_DESCRIPTION"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "ADDITIONAL_SETTINGS"
),
"ALLOW_USER_PROFILES" => array(
"NAME" => GetMessage("ALLOW_USER_PROFILES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "BASE"
),
"ALLOW_NEW_PROFILE" => array(
"NAME" => GetMessage("ALLOW_NEW_PROFILE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"HIDDEN" => $arCurrentValues['ALLOW_USER_PROFILES'] !== 'Y' ? 'Y' : 'N',
"PARENT" => "BASE"
),
"SHOW_COUPONS" => array(
"NAME" => GetMessage("SHOW_COUPONS"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"REFRESH" => "Y",
"PARENT" => "VISUAL",
),
"USE_YM_GOALS" => array(
"NAME" => GetMessage("USE_YM_GOALS1"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "ANALYTICS_SETTINGS"
)
);
if (!isset($arCurrentValues['SHOW_COUPONS']) || $arCurrentValues['SHOW_COUPONS'] === 'Y')
{
$arTemplateParameters["SHOW_COUPONS_BASKET"] = [
"NAME" => GetMessage("SHOW_COUPONS_BASKET"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
];
$arTemplateParameters["SHOW_COUPONS_DELIVERY"] = [
"NAME" => GetMessage("SHOW_COUPONS_DELIVERY"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
];
$arTemplateParameters["SHOW_COUPONS_PAY_SYSTEM"] = [
"NAME" => GetMessage("SHOW_COUPONS_PAY_SYSTEM"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
];
}
if ($arCurrentValues['USE_YM_GOALS'] == 'Y')
{
$arTemplateParameters["YM_GOALS_COUNTER"] = array(
"NAME" => GetMessage("YM_GOALS_COUNTER"),
"TYPE" => "STRING",
"DEFAULT" => "",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_INITIALIZE"] = array(
"NAME" => GetMessage("YM_GOALS_INITIALIZE"),
"TYPE" => "STRING",
"DEFAULT" => "BX-order-init",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_REGION"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_REGION"),
"TYPE" => "STRING",
"DEFAULT" => "BX-region-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_DELIVERY"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_DELIVERY"),
"TYPE" => "STRING",
"DEFAULT" => "BX-delivery-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_PICKUP"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_PICKUP"),
"TYPE" => "STRING",
"DEFAULT" => "BX-pickUp-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_PAY_SYSTEM"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_PAY_SYSTEM"),
"TYPE" => "STRING",
"DEFAULT" => "BX-paySystem-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_PROPERTIES"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_PROPERTIES"),
"TYPE" => "STRING",
"DEFAULT" => "BX-properties-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_BASKET"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_BASKET"),
"TYPE" => "STRING",
"DEFAULT" => "BX-basket-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_REGION"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_REGION"),
"TYPE" => "STRING",
"DEFAULT" => "BX-region-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_DELIVERY"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_DELIVERY"),
"TYPE" => "STRING",
"DEFAULT" => "BX-delivery-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_PICKUP"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_PICKUP"),
"TYPE" => "STRING",
"DEFAULT" => "BX-pickUp-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_PAY_SYSTEM"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_PAY_SYSTEM"),
"TYPE" => "STRING",
"DEFAULT" => "BX-paySystem-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_PROPERTIES"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_PROPERTIES"),
"TYPE" => "STRING",
"DEFAULT" => "BX-properties-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_BASKET"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_BASKET"),
"TYPE" => "STRING",
"DEFAULT" => "BX-basket-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_SAVE_ORDER"] = array(
"NAME" => GetMessage("YM_GOALS_SAVE_ORDER"),
"TYPE" => "STRING",
"DEFAULT" => "BX-order-save",
"PARENT" => "ANALYTICS_SETTINGS"
);
}
$arTemplateParameters['USE_ENHANCED_ECOMMERCE'] = array(
'PARENT' => 'ANALYTICS_SETTINGS',
'NAME' => GetMessage('USE_ENHANCED_ECOMMERCE'),
'TYPE' => 'CHECKBOX',
'REFRESH' => 'Y',
'DEFAULT' => 'N'
);
if (isset($arCurrentValues['USE_ENHANCED_ECOMMERCE']) && $arCurrentValues['USE_ENHANCED_ECOMMERCE'] === 'Y')
{
if (Loader::includeModule('catalog'))
{
$arIblockIDs = array();
$arIblockNames = array();
$catalogIterator = Catalog\CatalogIblockTable::getList(array(
'select' => array('IBLOCK_ID', 'NAME' => 'IBLOCK.NAME'),
'order' => array('IBLOCK_ID' => 'ASC')
));
while ($catalog = $catalogIterator->fetch())
{
$catalog['IBLOCK_ID'] = (int)$catalog['IBLOCK_ID'];
$arIblockIDs[] = $catalog['IBLOCK_ID'];
$arIblockNames[$catalog['IBLOCK_ID']] = $catalog['NAME'];
}
unset($catalog, $catalogIterator);
if (!empty($arIblockIDs))
{
$arProps = array();
$propertyIterator = Iblock\PropertyTable::getList(array(
'select' => array('ID', 'CODE', 'NAME', 'IBLOCK_ID'),
'filter' => array('@IBLOCK_ID' => $arIblockIDs, '=ACTIVE' => 'Y', '!=XML_ID' => CIBlockPropertyTools::XML_SKU_LINK),
'order' => array('IBLOCK_ID' => 'ASC', 'SORT' => 'ASC', 'ID' => 'ASC')
));
while ($property = $propertyIterator->fetch())
{
$property['ID'] = (int)$property['ID'];
$property['IBLOCK_ID'] = (int)$property['IBLOCK_ID'];
$property['CODE'] = (string)$property['CODE'];
if ($property['CODE'] == '')
{
$property['CODE'] = $property['ID'];
}
if (!isset($arProps[$property['CODE']]))
{
$arProps[$property['CODE']] = array(
'CODE' => $property['CODE'],
'TITLE' => $property['NAME'].' ['.$property['CODE'].']',
'ID' => array($property['ID']),
'IBLOCK_ID' => array($property['IBLOCK_ID'] => $property['IBLOCK_ID']),
'IBLOCK_TITLE' => array($property['IBLOCK_ID'] => $arIblockNames[$property['IBLOCK_ID']]),
'COUNT' => 1
);
}
else
{
$arProps[$property['CODE']]['ID'][] = $property['ID'];
$arProps[$property['CODE']]['IBLOCK_ID'][$property['IBLOCK_ID']] = $property['IBLOCK_ID'];
if ($arProps[$property['CODE']]['COUNT'] < 2)
{
$arProps[$property['CODE']]['IBLOCK_TITLE'][$property['IBLOCK_ID']] = $arIblockNames[$property['IBLOCK_ID']];
}
$arProps[$property['CODE']]['COUNT']++;
}
}
unset($property, $propertyIterator, $arIblockNames, $arIblockIDs);
$propList = array();
foreach ($arProps as $property)
{
$iblockList = '';
if ($property['COUNT'] > 1)
{
$iblockList = ($property['COUNT'] > 2 ? ' ( ... )' : ' ('.implode(', ', $property['IBLOCK_TITLE']).')');
}
$propList['PROPERTY_'.$property['CODE']] = $property['TITLE'].$iblockList;
}
unset($property, $arProps);
}
}
$arTemplateParameters['DATA_LAYER_NAME'] = array(
'PARENT' => 'ANALYTICS_SETTINGS',
'NAME' => GetMessage('DATA_LAYER_NAME'),
'TYPE' => 'STRING',
'DEFAULT' => 'dataLayer'
);
if (!empty($propList))
{
$arTemplateParameters['BRAND_PROPERTY'] = array(
'PARENT' => 'ANALYTICS_SETTINGS',
'NAME' => GetMessage('BRAND_PROPERTY'),
'TYPE' => 'LIST',
'MULTIPLE' => 'N',
'DEFAULT' => '',
'VALUES' => array('' => '') + $propList
);
}
}
if ($arCurrentValues['SHOW_MAP_IN_PROPS'] == 'Y')
{
$arDelivery = array();
$services = Bitrix\Sale\Delivery\Services\Manager::getActiveList();
foreach ($services as $service)
{
$arDelivery[$service['ID']] = $service['NAME'];
}
$arTemplateParameters["SHOW_MAP_FOR_DELIVERIES"] = array(
"NAME" => GetMessage("SHOW_MAP_FOR_DELIVERIES"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arDelivery,
"DEFAULT" => "",
"COLS" => 25,
"ADDITIONAL_VALUES" => "N",
"PARENT" => "VISUAL"
);
}
$dbPerson = CSalePersonType::GetList(array("SORT" => "ASC", "NAME" => "ASC"), array('ACTIVE' => 'Y'));
while ($arPerson = $dbPerson->GetNext())
{
$arPers2Prop = array();
$dbProp = CSaleOrderProps::GetList(
array("SORT" => "ASC", "NAME" => "ASC"),
array("PERSON_TYPE_ID" => $arPerson["ID"], 'UTIL' => 'N')
);
while ($arProp = $dbProp->Fetch())
{
if ($arProp["IS_LOCATION"] == 'Y')
{
if (intval($arProp["INPUT_FIELD_LOCATION"]) > 0)
$altPropId = $arProp["INPUT_FIELD_LOCATION"];
continue;
}
$arPers2Prop[$arProp["ID"]] = $arProp["NAME"];
}
if (isset($altPropId))
unset($arPers2Prop[$altPropId]);
if (!empty($arPers2Prop))
{
$arTemplateParameters["PROPS_FADE_LIST_".$arPerson["ID"]] = array(
"NAME" => GetMessage("PROPS_FADE_LIST").' ('.$arPerson["NAME"].')'.'['.$arPerson["LID"].']',
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arPers2Prop,
"DEFAULT" => "",
"COLS" => 25,
"ADDITIONAL_VALUES" => "N",
"PARENT" => "VISUAL"
);
}
}
unset($arPerson, $dbPerson);
$arTemplateParameters["USE_CUSTOM_MAIN_MESSAGES"] = array(
"NAME" => GetMessage("USE_CUSTOM_MESSAGES"),
"TYPE" => "CHECKBOX",
"REFRESH" => 'Y',
"DEFAULT" => 'N',
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
if ($arCurrentValues['USE_CUSTOM_MAIN_MESSAGES'] == 'Y')
{
$arTemplateParameters["MESS_AUTH_BLOCK_NAME"] = array(
"NAME" => GetMessage("AUTH_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REG_BLOCK_NAME"] = array(
"NAME" => GetMessage("REG_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REG_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_BASKET_BLOCK_NAME"] = array(
"NAME" => GetMessage("BASKET_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("BASKET_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REGION_BLOCK_NAME"] = array(
"NAME" => GetMessage("REGION_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REGION_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PAYMENT_BLOCK_NAME"] = array(
"NAME" => GetMessage("PAYMENT_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PAYMENT_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_DELIVERY_BLOCK_NAME"] = array(
"NAME" => GetMessage("DELIVERY_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("DELIVERY_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_BUYER_BLOCK_NAME"] = array(
"NAME" => GetMessage("BUYER_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("BUYER_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_BACK"] = array(
"NAME" => GetMessage("BACK"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("BACK_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_FURTHER"] = array(
"NAME" => GetMessage("FURTHER"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("FURTHER_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_EDIT"] = array(
"NAME" => GetMessage("EDIT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("EDIT_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ORDER"] = array(
"NAME" => GetMessage("ORDER"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ORDER_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PRICE"] = array(
"NAME" => GetMessage("PRICE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PRICE_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PERIOD"] = array(
"NAME" => GetMessage("PERIOD"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PERIOD_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_NAV_BACK"] = array(
"NAME" => GetMessage("NAV_BACK"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("NAV_BACK_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_NAV_FORWARD"] = array(
"NAME" => GetMessage("NAV_FORWARD"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("NAV_FORWARD_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
}
$arTemplateParameters["USE_CUSTOM_ADDITIONAL_MESSAGES"] = array(
"NAME" => GetMessage("USE_CUSTOM_MESSAGES"),
"TYPE" => "CHECKBOX",
"REFRESH" => 'Y',
"DEFAULT" => 'N',
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
if ($arCurrentValues['USE_CUSTOM_ADDITIONAL_MESSAGES'] == 'Y')
{
$arTemplateParameters["MESS_PRICE_FREE"] = array(
"NAME" => GetMessage("PRICE_FREE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PRICE_FREE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ECONOMY"] = array(
"NAME" => GetMessage("ECONOMY"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ECONOMY_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REGISTRATION_REFERENCE"] = array(
"NAME" => GetMessage("REGISTRATION_REFERENCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REGISTRATION_REFERENCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_AUTH_REFERENCE_1"] = array(
"NAME" => GetMessage("AUTH_REFERENCE_1"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_REFERENCE_1_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_AUTH_REFERENCE_2"] = array(
"NAME" => GetMessage("AUTH_REFERENCE_2"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_REFERENCE_2_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_AUTH_REFERENCE_3"] = array(
"NAME" => GetMessage("AUTH_REFERENCE_3"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_REFERENCE_3_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ADDITIONAL_PROPS"] = array(
"NAME" => GetMessage("ADDITIONAL_PROPS"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ADDITIONAL_PROPS_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_USE_COUPON"] = array(
"NAME" => GetMessage("USE_COUPON"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("USE_COUPON_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_COUPON"] = array(
"NAME" => GetMessage("COUPON"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("COUPON_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PERSON_TYPE"] = array(
"NAME" => GetMessage("PERSON_TYPE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PERSON_TYPE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_SELECT_PROFILE"] = array(
"NAME" => GetMessage("SELECT_PROFILE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SELECT_PROFILE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REGION_REFERENCE"] = array(
"NAME" => GetMessage("REGION_REFERENCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REGION_REFERENCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PICKUP_LIST"] = array(
"NAME" => GetMessage("PICKUP_LIST"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PICKUP_LIST_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_NEAREST_PICKUP_LIST"] = array(
"NAME" => GetMessage("NEAREST_PICKUP_LIST"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("NEAREST_PICKUP_LIST_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_SELECT_PICKUP"] = array(
"NAME" => GetMessage("SELECT_PICKUP"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SELECT_PICKUP_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_INNER_PS_BALANCE"] = array(
"NAME" => GetMessage("INNER_PS_BALANCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("INNER_PS_BALANCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_INNER_PS_BALANCE"] = array(
"NAME" => GetMessage("INNER_PS_BALANCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("INNER_PS_BALANCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ORDER_DESC"] = array(
"NAME" => GetMessage("ORDER_DESC"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ORDER_DESC_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
}
$arTemplateParameters["USE_CUSTOM_ERROR_MESSAGES"] = array(
"NAME" => GetMessage("USE_CUSTOM_MESSAGES"),
"TYPE" => "CHECKBOX",
"REFRESH" => 'Y',
"DEFAULT" => 'N',
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
if ($arCurrentValues['USE_CUSTOM_ERROR_MESSAGES'] == 'Y')
{
$arTemplateParameters["MESS_SUCCESS_PRELOAD_TEXT"] = array(
"NAME" => GetMessage("SUCCESS_PRELOAD_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SUCCESS_PRELOAD_TEXT_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_FAIL_PRELOAD_TEXT"] = array(
"NAME" => GetMessage("FAIL_PRELOAD_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("FAIL_PRELOAD_TEXT_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_DELIVERY_CALC_ERROR_TITLE"] = array(
"NAME" => GetMessage("DELIVERY_CALC_ERROR_TITLE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("DELIVERY_CALC_ERROR_TITLE_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_DELIVERY_CALC_ERROR_TEXT"] = array(
"NAME" => GetMessage("DELIVERY_CALC_ERROR_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("DELIVERY_CALC_ERROR_TEXT_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PAY_SYSTEM_PAYABLE_ERROR"] = array(
"NAME" => GetMessage("PAY_SYSTEM_PAYABLE_ERROR_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
}

View file

@ -0,0 +1,131 @@
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
use Bitrix\Main\Localization\Loc;
/**
* @var array $arParams
* @var array $arResult
* @var $APPLICATION CMain
*/
if ($arParams["SET_TITLE"] == "Y")
{
$APPLICATION->SetTitle(Loc::getMessage("SOA_ORDER_COMPLETE"));
}
?>
<? if (!empty($arResult["ORDER"])): ?>
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ORDER_SUC", array(
"#ORDER_DATE#" => $arResult["ORDER"]["DATE_INSERT"]->toUserTime()->format('d.m.Y H:i'),
"#ORDER_ID#" => $arResult["ORDER"]["ACCOUNT_NUMBER"]
))?>
<? if (!empty($arResult['ORDER']["PAYMENT_ID"])): ?>
<?=Loc::getMessage("SOA_PAYMENT_SUC", array(
"#PAYMENT_ID#" => $arResult['PAYMENT'][$arResult['ORDER']["PAYMENT_ID"]]['ACCOUNT_NUMBER']
))?>
<? endif ?>
<? if ($arParams['NO_PERSONAL'] !== 'Y'): ?>
<br /><br />
<?=Loc::getMessage('SOA_ORDER_SUC1', ['#LINK#' => $arParams['PATH_TO_PERSONAL']])?>
<? endif; ?>
</td>
</tr>
</table>
<?
if ($arResult["ORDER"]["IS_ALLOW_PAY"] === 'Y')
{
if (!empty($arResult["PAYMENT"]))
{
foreach ($arResult["PAYMENT"] as $payment)
{
if ($payment["PAID"] != 'Y')
{
if (!empty($arResult['PAY_SYSTEM_LIST'])
&& array_key_exists($payment["PAY_SYSTEM_ID"], $arResult['PAY_SYSTEM_LIST'])
)
{
$arPaySystem = $arResult['PAY_SYSTEM_LIST_BY_PAYMENT_ID'][$payment["ID"]];
if (empty($arPaySystem["ERROR"]))
{
?>
<br /><br />
<table class="sale_order_full_table">
<tr>
<td class="ps_logo">
<div class="pay_name"><?=Loc::getMessage("SOA_PAY") ?></div>
<?=CFile::ShowImage($arPaySystem["LOGOTIP"], 100, 100, "border=0\" style=\"width:100px\"", "", false) ?>
<div class="paysystem_name"><?=$arPaySystem["NAME"] ?></div>
<br/>
</td>
</tr>
<tr>
<td>
<? if (strlen($arPaySystem["ACTION_FILE"]) > 0 && $arPaySystem["NEW_WINDOW"] == "Y" && $arPaySystem["IS_CASH"] != "Y"): ?>
<?
$orderAccountNumber = urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]));
$paymentAccountNumber = $payment["ACCOUNT_NUMBER"];
?>
<script>
window.open('<?=$arParams["PATH_TO_PAYMENT"]?>?ORDER_ID=<?=$orderAccountNumber?>&PAYMENT_ID=<?=$paymentAccountNumber?>');
</script>
<?=Loc::getMessage("SOA_PAY_LINK", array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".$orderAccountNumber."&PAYMENT_ID=".$paymentAccountNumber))?>
<? if (CSalePdf::isPdfAvailable() && $arPaySystem['IS_AFFORD_PDF']): ?>
<br/>
<?=Loc::getMessage("SOA_PAY_PDF", array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".$orderAccountNumber."&pdf=1&DOWNLOAD=Y"))?>
<? endif ?>
<? else: ?>
<?=$arPaySystem["BUFFERED_OUTPUT"]?>
<? endif ?>
</td>
</tr>
</table>
<?
}
else
{
?>
<span style="color:red;"><?=Loc::getMessage("SOA_ORDER_PS_ERROR")?></span>
<?
}
}
else
{
?>
<span style="color:red;"><?=Loc::getMessage("SOA_ORDER_PS_ERROR")?></span>
<?
}
}
}
}
}
else
{
?>
<br /><strong><?=$arParams['MESS_PAY_SYSTEM_PAYABLE_ERROR']?></strong>
<?
}
?>
<? else: ?>
<b><?=Loc::getMessage("SOA_ERROR_ORDER")?></b>
<br /><br />
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ERROR_ORDER_LOST", ["#ORDER_ID#" => htmlspecialcharsbx($arResult["ACCOUNT_NUMBER"])])?>
<?=Loc::getMessage("SOA_ERROR_ORDER_LOST1")?>
</td>
</tr>
</table>
<? endif ?>

View file

@ -0,0 +1,27 @@
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
use Bitrix\Main\Localization\Loc;
?>
<div class="bx-soa-empty-cart-container">
<div class="bx-soa-empty-cart-image">
<img src="" alt="">
</div>
<div class="bx-soa-empty-cart-text"><?=Loc::getMessage("EMPTY_BASKET_TITLE")?></div>
<?
if (!empty($arParams['EMPTY_BASKET_HINT_PATH']))
{
?>
<div class="bx-soa-empty-cart-desc">
<?=Loc::getMessage(
'EMPTY_BASKET_HINT',
[
'#A1#' => '<a href="'.$arParams['EMPTY_BASKET_HINT_PATH'].'">',
'#A2#' => '</a>',
]
)?>
</div>
<?
}
?>
</div>

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View file

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" width="15.875" height="15.78" viewBox="0 0 15.875 15.78">
<defs>
<style>
.cls-1 {
fill: #7e858e;
fill-rule: evenodd;
}
</style>
</defs>
<path id="Forma_1_copy_2" data-name="Forma 1 copy 2" class="cls-1" d="M525.611,3430.21a0.534,0.534,0,0,0-.534.53v2.52a0.534,0.534,0,0,0,.534.53h0.457a0.534,0.534,0,0,0,.534-0.53v-2.52a0.534,0.534,0,0,0-.534-0.53h-0.457Zm8.385,0a0.534,0.534,0,0,0-.534.53v2.52a0.534,0.534,0,0,0,.534.53h0.457a0.534,0.534,0,0,0,.534-0.53v-2.52a0.534,0.534,0,0,0-.534-0.53H534Zm-10.672,15.78h7.547a5.825,5.825,0,0,1-.114-1.15c0-.13,0-0.25.014-0.38h-6.38a0.914,0.914,0,0,1-.914-0.91v-7.32h13.111v2.83c0.1-.01.2-0.01,0.3-0.01a5.387,5.387,0,0,1,1.068.1v-5.97a1.222,1.222,0,0,0-1.22-1.22h-0.991v1.3a1.3,1.3,0,0,1-1.3,1.29H534a1.3,1.3,0,0,1-1.3-1.29v-1.3h-5.336v1.3a1.3,1.3,0,0,1-1.3,1.29h-0.457a1.3,1.3,0,0,1-1.3-1.29v-1.3h-0.991a1.222,1.222,0,0,0-1.219,1.22v11.59A1.222,1.222,0,0,0,523.324,3445.99Zm3.078-8.68a1.21,1.21,0,1,1-1.21,1.21A1.209,1.209,0,0,1,526.4,3437.31Zm3.63,0a1.21,1.21,0,1,1-1.21,1.21A1.209,1.209,0,0,1,530.032,3437.31Zm3.63,0a1.21,1.21,0,1,1-1.21,1.21A1.208,1.208,0,0,1,533.662,3437.31Zm-3.63,3.65a1.21,1.21,0,1,1-1.21,1.21A1.215,1.215,0,0,1,530.032,3440.96Zm-3.63,0a1.21,1.21,0,1,1-1.21,1.21A1.215,1.215,0,0,1,526.4,3440.96Zm11.548-7.78v11.59a1.222,1.222,0,0,1-1.22,1.22h-7.546a5.9,5.9,0,0,0,.114-1.15c0-.13-0.006-0.25-0.014-0.38h6.379a0.914,0.914,0,0,0,.915-0.91v-7.32" transform="translate(-522.094 -3430.22)"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View file

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" width="129.188" height="114.562" viewBox="0 0 129.188 114.562">
<defs>
<style>
.cls-1 {
fill-rule: evenodd;
opacity: 0.3;
}
</style>
</defs>
<path class="cls-1" d="M710.628,516.914a12.689,12.689,0,0,0,0,25.378A12.689,12.689,0,1,0,710.628,516.914Zm67.374,0a12.689,12.689,0,1,0,0,25.378A12.689,12.689,0,0,0,778,516.914Zm19.942-70.42a5.206,5.206,0,0,0-4.068-1.949H698.271L693.3,431.107a5.206,5.206,0,0,0-4.88-3.4H675.11a5.206,5.206,0,0,0,0,10.411h9.683L709.557,505a5.2,5.2,0,0,0,4.88,3.389c0.207,0,.417-0.013.624-0.027l69.421-8.331a5.218,5.218,0,0,0,4.473-4.046l10.019-45.108A5.215,5.215,0,0,0,797.944,446.494Zm-14.018,24.079h-20.8V454.956H787.4Zm-46.826,0V454.956h20.825v15.617H737.1Zm20.825,5.205v16.953L737.1,495.225V475.771h20.825v0.007Zm-26.031-20.822v15.617H707.906l-5.781-15.617h29.769Zm-22.059,20.822h22.059v20.084l-14,1.681Zm53.3,16.329V475.778h19.643l-3.186,14.35Z" transform="translate(-669.906 -427.719)"/>
</svg>

After

Width:  |  Height:  |  Size: 1,005 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,150 @@
<?
$MESS["ADDITIONAL_PROPS"] = "Extra product properties buttons";
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Additional properties";
$MESS["ALLOW_NEW_PROFILE"] = "Allow multiple customer profiles";
$MESS["ALLOW_USER_PROFILES"] = "Allow buyer profiles";
$MESS["AUTH_BLOCK_NAME"] = "Authentication block name";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Log in";
$MESS["AUTH_REFERENCE_1"] = "Hint #1 for \"Authentication\" block";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Fields marked with \"*\" are required.";
$MESS["AUTH_REFERENCE_2"] = "Hint #2 for \"Authentication\" block";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "You will receive the notification message upon completing the registration.";
$MESS["AUTH_REFERENCE_3"] = "Hint #3 for \"Authentication\" block";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Your personal information acquired upon registration, placing of an order, or by any other means will never be rented, sold or transferred to third parties unless required by legal authorities or court decision..";
$MESS["BACK"] = "Back to previous block button text";
$MESS["BACK_DEFAULT"] = "Back";
$MESS["BASKET_BLOCK_NAME"] = "Shopping cart block name";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Shopping cart";
$MESS["BASKET_POSITION"] = "Shopping cart placement";
$MESS["BASKET_POSITION_AFTER"] = "after";
$MESS["BASKET_POSITION_BEFORE"] = "before";
$MESS["BRAND_PROPERTY"] = "Property containing product brand name";
$MESS["BUYER_BLOCK_NAME"] = "Order preferences block name";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Customer";
$MESS["COUPON"] = "Applied coupons title";
$MESS["COUPON_DEFAULT"] = "Coupon";
$MESS["DATA_LAYER_NAME"] = "Data container name";
$MESS["DELIVERIES_PER_PAGE"] = "The number of deliveries per page";
$MESS["DELIVERY_BLOCK_NAME"] = "Delivery block name";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Delivery";
$MESS["DELIVERY_CALC_ERROR_TEXT"] = "Delivery calculation error text";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Continue checkout. Our sales representative will contact you with delivery details.";
$MESS["DELIVERY_CALC_ERROR_TITLE"] = "Delivery calculation error title";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Cannot calculate delivery cost.";
$MESS["DELIVERY_FADE_EXTRA_SERVICES"] = "Show selected extra services in a hidden block";
$MESS["DELIVERY_PARENT_NAMES"] = "Show parent delivery service name";
$MESS["ECONOMY"] = "\"Save\" text";
$MESS["ECONOMY_DEFAULT"] = "Save";
$MESS["EDIT"] = "Block edit button";
$MESS["EDIT_DEFAULT"] = "edit";
$MESS["FAIL_PRELOAD_TEXT"] = "Notification text to display on order data load failure";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "
You previously shopped with us and we remember you, so we have taken the liberty to fill in the fields for you.<br />
Check the order information thoroughly and edit your order if required. Once you see everything is good, click \"#ORDER_BUTTON#\".
";
$MESS["FURTHER"] = "Next block button text";
$MESS["FURTHER_DEFAULT"] = "Next";
$MESS["HIDE_ORDER_DESCRIPTION"] = "Hide order comment field";
$MESS["INNER_PS_BALANCE"] = "Internal account balance information";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "Your balance:";
$MESS["NAV_BACK"] = "Back to previous page button";
$MESS["NAV_BACK_DEFAULT"] = "Back";
$MESS["NAV_FORWARD"] = "Next page button";
$MESS["NAV_FORWARD_DEFAULT"] = "Next";
$MESS["NEAREST_PICKUP_LIST"] = "Nearest pick-up locations title";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Nearest locations:";
$MESS["ORDER"] = "Checkout button text";
$MESS["ORDER_DEFAULT"] = "Checkout";
$MESS["ORDER_DESC"] = "Order comments title";
$MESS["ORDER_DESC_DEFAULT"] = "Order comments:";
$MESS["PAYMENT_BLOCK_NAME"] = "Payment block name";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Payment";
$MESS["PAY_SYSTEMS_PER_PAGE"] = "The number of payment systems on the page";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "You'll be able to pay for the order after we verify that the items you have ordered are in stock. Once your order is fulfilled, you'll receive an email with payment instructions. You'll be able to complete the purchase inside your customer account.";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_TEXT"] = "Notification text to show when order cannot be paid";
$MESS["PERIOD"] = "Delivery time title";
$MESS["PERIOD_DEFAULT"] = "Delivery time";
$MESS["PERSON_TYPE"] = "Payer type selection title";
$MESS["PERSON_TYPE_DEFAULT"] = "Payer type";
$MESS["PICKUPS_PER_PAGE"] = "The number of pick-up locations on the page";
$MESS["PICKUP_LIST"] = "Pick-up location title";
$MESS["PICKUP_LIST_DEFAULT"] = "Pick-up locations:";
$MESS["PICKUP_MAP_TYPE"] = "Use maps";
$MESS["PICKUP_MAP_TYPE_GOOGLE"] = "Google Maps";
$MESS["PICKUP_MAP_TYPE_YANDEX"] = "Yandex.Maps";
$MESS["PRICE"] = "Price title";
$MESS["PRICE_DEFAULT"] = "Price";
$MESS["PRICE_FREE"] = "\"Free\" text";
$MESS["PRICE_FREE_DEFAULT"] = "free";
$MESS["PRODUCT_COLUMNS_HIDDEN"] = "Additional hidden columns in order products table";
$MESS["PROPS_FADE_LIST"] = "Visible order properties when block is hidden";
$MESS["REGION_BLOCK_NAME"] = "Delivery area block name";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Delivery area";
$MESS["REGION_REFERENCE"] = "Hint for \"Area\" block";
$MESS["REGION_REFERENCE_DEFAULT"] = "Select your city from the list. If you cannot find your city, select \"other location\" and enter your city in the \"City\" field.";
$MESS["REGISTRATION_REFERENCE"] = "Open registration page text";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Please register for better shopping experience and to keep your order history.";
$MESS["REG_BLOCK_NAME"] = "Registration block name";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Register";
$MESS["SELECT_PICKUP"] = "Pick-up location selection button";
$MESS["SELECT_PICKUP_DEFAULT"] = "Select";
$MESS["SELECT_PROFILE"] = "Profile selection title";
$MESS["SELECT_PROFILE_DEFAULT"] = "Select profile";
$MESS["SERVICES_IMAGES_SCALING"] = "View mode for additional images";
$MESS["SERVICES_IMAGES_SCALING_TIP"] = "This also affects logos of payment and delivery systems, and pick-up locations.";
$MESS["SHOW_ALWAYS"] = "Always";
$MESS["SHOW_BASKET_HEADERS"] = "Show shopping cart column header";
$MESS["SHOW_COUPONS"] = "Show coupon input field";
$MESS["SHOW_COUPONS_BASKET"] = "Show coupon entry field in shopping cart block";
$MESS["SHOW_COUPONS_DELIVERY"] = "Show coupon entry field in delivery block";
$MESS["SHOW_COUPONS_PAY_SYSTEM"] = "Show coupon code input field in payment block";
$MESS["SHOW_DELIVERY_INFO_NAME"] = "Show delivery name in delivery block";
$MESS["SHOW_DELIVERY_LIST_NAMES"] = "Show delivery name in the list";
$MESS["SHOW_FINAL_STEP"] = "Last step only";
$MESS["SHOW_MAP_FOR_DELIVERIES"] = "Show map for delivery services";
$MESS["SHOW_MAP_IN_PROPS"] = "Show map in order properties block";
$MESS["SHOW_NEAREST_PICKUP"] = "Show nearest pick-up locations";
$MESS["SHOW_ORDER_BUTTON"] = "Show checkout button (for unauthorized users)";
$MESS["SHOW_PAY_SYSTEM_INFO_NAME"] = "Show payment system name in the information block";
$MESS["SHOW_PAY_SYSTEM_LIST_NAMES"] = "Show payment system name in the list";
$MESS["SHOW_PICKUP_MAP"] = "Show map for pick-up locations";
$MESS["SHOW_STORES_IMAGES"] = "Show warehouse images in pick-up point selection form";
$MESS["SHOW_TOTAL_ORDER_BUTTON"] = "Show additional checkout button";
$MESS["SKIP_USELESS_BLOCK"] = "Skip steps with only one selectable item";
$MESS["SOA_ADAPTIVE"] = "Adaptive";
$MESS["SOA_NO_SCALE"] = "Don't scale";
$MESS["SOA_STANDARD"] = "Standard";
$MESS["SUCCESS_PRELOAD_TEXT"] = "Notification text to display on order data load success";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "
You previously shopped with us and we remember you, so we took the liberty to fill in the fields for you.<br />
If the information is correct, click \"#ORDER_BUTTON#\".
";
$MESS["TEMPLATE_THEME"] = "Color theme";
$MESS["THEME_BLUE"] = "Blue (default theme)";
$MESS["THEME_GREEN"] = "Green";
$MESS["THEME_RED"] = "Red";
$MESS["THEME_SITE"] = "Use theme as defined by the site (for bitrix.eshop)";
$MESS["THEME_YELLOW"] = "Yellow";
$MESS["USE_COUPON"] = "Coupon entry field title";
$MESS["USE_COUPON_DEFAULT"] = "Apply coupon";
$MESS["USE_CUSTOM_MESSAGES"] = "Use custom messages";
$MESS["USE_ENHANCED_ECOMMERCE"] = "Submit e-commerce data to Google";
$MESS["USE_ENHANCED_ECOMMERCE_TIP"] = "This requires Google Analytics Enhanced Ecommerce options to be configured";
$MESS["USE_YM_GOALS1"] = "Use Yandex.Metrics counter targets";
$MESS["USE_YM_GOALS_TIP"] = "This requires that a Yandex.Metrics counter is on the page.";
$MESS["YM_GOALS_COUNTER"] = "Yandex.Metrics counter code";
$MESS["YM_GOALS_EDIT_BASKET"] = "Goal ID for editing shopping cart";
$MESS["YM_GOALS_EDIT_DELIVERY"] = "Goal ID for editing delivery ";
$MESS["YM_GOALS_EDIT_PAY_SYSTEM"] = "Goal ID for editing payments";
$MESS["YM_GOALS_EDIT_PICKUP"] = "Goal ID for editing pick-up locations";
$MESS["YM_GOALS_EDIT_PROPERTIES"] = "Goal ID for editing product properties";
$MESS["YM_GOALS_EDIT_REGION"] = "Goal ID for editing delivery area";
$MESS["YM_GOALS_INITIALIZE"] = "Goal ID for component initialization";
$MESS["YM_GOALS_NEXT_BASKET"] = "Goal ID for transfer from shopping cart to 'Next' button";
$MESS["YM_GOALS_NEXT_DELIVERY"] = "Goal ID for transfer from delivery to 'Next' button";
$MESS["YM_GOALS_NEXT_PAY_SYSTEM"] = "Goal ID for transfer from payment to 'Next' button";
$MESS["YM_GOALS_NEXT_PICKUP"] = "Goal ID for transfer from pick-up locations to 'Next' button";
$MESS["YM_GOALS_NEXT_PROPERTIES"] = "Goal ID for transfer from product properties to 'Next' button";
$MESS["YM_GOALS_NEXT_REGION"] = "Goal ID for transfer from delivery area to 'Next' button";
$MESS["YM_GOALS_SAVE_ORDER"] = "Goal ID for order processing";
?>

View file

@ -0,0 +1,138 @@
<?
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Additional properties";
$MESS["ADD_DEFAULT"] = "Add";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Log in";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Fields marked with \"*\" are required.";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "You will receive the notification message upon completing the registration.";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Your personal information acquired upon registration, placing of an order, or by any other means will never be rented, sold or transferred to third parties unless required by legal authorities or court decision..";
$MESS["BACK_DEFAULT"] = "Back";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Shopping cart";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Customer";
$MESS["CAPTCHA_REGF_PROMT"] = "Type the characters you see on the picture";
$MESS["CAPTCHA_REGF_TITLE"] = "CAPTCHA";
$MESS["COUPON_DEFAULT"] = "Coupon";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Delivery";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Continue checkout. Our sales representative will contact you with delivery details.";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Cannot calculate delivery price.";
$MESS["ECONOMY_DEFAULT"] = "Save";
$MESS["EDIT_DEFAULT"] = "change";
$MESS["EMPTY_BASKET_HINT"] = "#A1#Click here#A2# to continue shopping";
$MESS["EMPTY_BASKET_TITLE"] = "Your cart is empty";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "You previously shopped with us and we remember you, so we have taken the liberty to fill in the fields for you.<br />
Check the order information thoroughly and edit your order if required. Once you see everything is good, click \"#ORDER_BUTTON#\".
";
$MESS["FURTHER_DEFAULT"] = "Next";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "Your balance:";
$MESS["NAV_BACK_DEFAULT"] = "Back";
$MESS["NAV_FORWARD_DEFAULT"] = "Next";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Nearest locations:";
$MESS["ORDER_DEFAULT"] = "Checkout";
$MESS["ORDER_DESC_DEFAULT"] = "Order comments:";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Payment";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "You'll be able to pay for the order after we verify that the items you have ordered are in stock. Once your order is fulfilled, you'll receive an email with payment instructions. You'll be able to complete the purchase inside your customer account.";
$MESS["PERIOD_DEFAULT"] = "Delivery time";
$MESS["PERSON_TYPE_DEFAULT"] = "Payer type";
$MESS["PICKUP_LIST_DEFAULT"] = "Pick-up locations:";
$MESS["PRICE_DEFAULT"] = "Price";
$MESS["PRICE_FREE_DEFAULT"] = "free";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Delivery area";
$MESS["REGION_REFERENCE_DEFAULT"] = "Select your city from the list. If you cannot find your city, select \"other location\" and enter your city in the \"City\" field.";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Please register for better shopping experience and to keep your order history.";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Register";
$MESS["SALE_SADC_TRANSIT"] = "Delivery time";
$MESS["SELECT_FILE_DEFAULT"] = "Select";
$MESS["SELECT_PICKUP_DEFAULT"] = "Select";
$MESS["SELECT_PROFILE_DEFAULT"] = "Select profile";
$MESS["SOA_BAD_EXTENSION"] = "Invalid file type";
$MESS["SOA_DELIVERY"] = "Delivery service";
$MESS["SOA_DELIVERY_SELECT_ERROR"] = "Delivery service not selected";
$MESS["SOA_DISTANCE_KM"] = "km";
$MESS["SOA_DO_SOC_SERV"] = "Social login";
$MESS["SOA_ERROR_ORDER"] = "Error creating the order.";
$MESS["SOA_ERROR_ORDER_LOST"] = "Order no. #ORDER_ID# cannot be found.";
$MESS["SOA_ERROR_ORDER_LOST1"] = "Please contact the store administration or try again.";
$MESS["SOA_FIELD"] = "Field";
$MESS["SOA_INVALID_EMAIL"] = "E-mail is incorrect";
$MESS["SOA_INVALID_PATTERN"] = "does not match the pattern";
$MESS["SOA_LESS"] = "at least";
$MESS["SOA_LOCATION_NOT_FOUND"] = "Location was not found";
$MESS["SOA_LOCATION_NOT_FOUND_PROMPT"] = "Click #ANCHOR#add location#ANCHOR_END# so we know where you want to have your order shipped to";
$MESS["SOA_MAP_COORDS"] = "Map coordinates";
$MESS["SOA_MAX_LENGTH"] = "Max. field length";
$MESS["SOA_MAX_SIZE"] = "Max. file size exceeded";
$MESS["SOA_MAX_VALUE"] = "Max. field value";
$MESS["SOA_MIN_LENGTH"] = "Min. field length";
$MESS["SOA_MIN_VALUE"] = "Min. field value";
$MESS["SOA_MORE"] = "less than";
$MESS["SOA_NO"] = "no";
$MESS["SOA_NOT_CALCULATED"] = "not calculated";
$MESS["SOA_NOT_FOUND"] = "Not found";
$MESS["SOA_NOT_NUMERIC"] = "numbers only";
$MESS["SOA_NOT_SELECTED"] = "not selected";
$MESS["SOA_NOT_SELECTED_ALT"] = "Make location more specific if required";
$MESS["SOA_NOT_SPECIFIED"] = "not specified";
$MESS["SOA_NO_JS"] = "The ordering process requires that JavaScript is enabled on your system. JavaScript is disabled or not supported by your browser. Please change the browser settings and <a href=\"\">try again</a>.";
$MESS["SOA_NUM_STEP"] = "doesn't match";
$MESS["SOA_ORDER_COMPLETE"] = "Order has been completed";
$MESS["SOA_ORDER_PROPS"] = "Order properties";
$MESS["SOA_ORDER_PS_ERROR"] = "The selected payment method failed. Please contact the site administrator or select another method.";
$MESS["SOA_ORDER_SUC"] = "Your order <b>##ORDER_ID#</b> of #ORDER_DATE# has been created successfully.";
$MESS["SOA_ORDER_SUC1"] = "You can track your order in your <a href=\"#LINK#\">personal account</a>. You will be asked to enter your login and password to access your account.";
$MESS["SOA_OTHER_LOCATION"] = "Other location";
$MESS["SOA_PAY"] = "Order payment";
$MESS["SOA_PAYMENT_SUC"] = "Payment <b>##PAYMENT_ID#</b>";
$MESS["SOA_PAYSYSTEM_PRICE"] = "Extra COD:";
$MESS["SOA_PAY_ACCOUNT3"] = "You have sufficient credit to pay the order in full.";
$MESS["SOA_PAY_LINK"] = "If you don't see any payment information, click here: <a href=\"#LINK#\" target=\"_blank\">Pay and place order</a>.";
$MESS["SOA_PAY_PDF"] = "Click <a href=\"#LINK#\" target=\"_blank\">Download invoice</a> to get the invoice in PDF format.";
$MESS["SOA_PAY_SYSTEM"] = "Payment system";
$MESS["SOA_PICKUP_ADDRESS"] = "Address";
$MESS["SOA_PICKUP_DESC"] = "Description";
$MESS["SOA_PICKUP_EMAIL"] = "E-Mail";
$MESS["SOA_PICKUP_PHONE"] = "Phone";
$MESS["SOA_PICKUP_STORE"] = "Warehouse";
$MESS["SOA_PICKUP_WORK"] = "Business hours";
$MESS["SOA_PROP_NEW_PROFILE"] = "New profile";
$MESS["SOA_PS_SELECT_ERROR"] = "Payment system not selected";
$MESS["SOA_REQUIRED"] = "this field is required";
$MESS["SOA_SUM_DELIVERY"] = "Delivery:";
$MESS["SOA_SUM_DISCOUNT"] = "Discount";
$MESS["SOA_SUM_IT"] = "Total:";
$MESS["SOA_SUM_LEFT_TO_PAY"] = "Amount payable:";
$MESS["SOA_SUM_NAME"] = "Name";
$MESS["SOA_SUM_PAYED"] = "Paid:";
$MESS["SOA_SUM_PRICE"] = "Price";
$MESS["SOA_SUM_QUANTITY"] = "Quantity";
$MESS["SOA_SUM_SUMMARY"] = "Total price:";
$MESS["SOA_SUM_VAT"] = "Tax:";
$MESS["SOA_SUM_WEIGHT"] = "Weight";
$MESS["SOA_SUM_WEIGHT_SUM"] = "Total weight:";
$MESS["SOA_SYMBOLS"] = "symbols";
$MESS["SOA_YES"] = "yes";
$MESS["STOF_AUTH_REQUEST"] = "Please log in.";
$MESS["STOF_DO_AUTHORIZE"] = "Log in";
$MESS["STOF_DO_REGISTER"] = "Register";
$MESS["STOF_EMAIL"] = "E-mail";
$MESS["STOF_ENTER"] = "Log in";
$MESS["STOF_FORGET_PASSWORD"] = "Forgot your password?";
$MESS["STOF_LASTNAME"] = "Last name";
$MESS["STOF_LOGIN"] = "Login";
$MESS["STOF_MY_PASSWORD"] = "Your login and password";
$MESS["STOF_NAME"] = "First name";
$MESS["STOF_NEXT_STEP"] = "Continue checkout";
$MESS["STOF_PASSWORD"] = "Password";
$MESS["STOF_PHONE"] = "Phone number";
$MESS["STOF_REGISTER"] = "Register";
$MESS["STOF_REG_HINT"] = "Please register for better shopping experience and to keep your order history.";
$MESS["STOF_REG_REQUEST"] = "Please register.";
$MESS["STOF_REG_SMS_REQUEST"] = "A confirmation code has been sent to your phone";
$MESS["STOF_REMEMBER"] = "Remember Me";
$MESS["STOF_RE_PASSWORD"] = "Repeat password";
$MESS["STOF_SEND"] = "Send";
$MESS["STOF_SMS_CODE"] = "SMS confirmation code";
$MESS["STOF_SYS_PASSWORD"] = "Generate login and password";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "You previously shopped with us and we remember you, so we have taken the liberty to fill in the fields for you.<br />
If the information is correct, click \"#ORDER_BUTTON#\".
";
$MESS["USE_COUPON_DEFAULT"] = "Apply coupon";
?>

View file

@ -0,0 +1,152 @@
<?
$MESS["SHOW_ORDER_BUTTON"] = "Отображать кнопку оформления заказа (для неавторизованных пользователей)";
$MESS["SHOW_ALWAYS"] = "Всегда";
$MESS["SHOW_FINAL_STEP"] = "Только на последнем шаге";
$MESS["SHOW_TOTAL_ORDER_BUTTON"] = "Отображать дополнительную кнопку оформления заказа";
$MESS["SHOW_PAY_SYSTEM_LIST_NAMES"] = "Отображать названия в списке платежных систем";
$MESS["SHOW_PAY_SYSTEM_INFO_NAME"] = "Отображать название в блоке информации по платежной системе";
$MESS["SHOW_DELIVERY_LIST_NAMES"] = "Отображать названия в списке доставок";
$MESS["SHOW_DELIVERY_INFO_NAME"] = "Отображать название в блоке информации по доставке";
$MESS["DELIVERY_PARENT_NAMES"] = "Показывать название родительской доставки";
$MESS["ALLOW_USER_PROFILES"] = "Разрешить использование профилей покупателей";
$MESS["HIDE_ORDER_DESCRIPTION"] = "Скрыть поле комментариев к заказу";
$MESS["ALLOW_NEW_PROFILE"] = "Разрешить множество профилей покупателей";
$MESS["SHOW_STORES_IMAGES"] = "Показывать изображения складов в окне выбора пункта выдачи";
$MESS["SKIP_USELESS_BLOCK"] = "Пропускать шаги, в которых один элемент для выбора";
$MESS["BASKET_POSITION"] = "Расположение списка товаров";
$MESS["BASKET_POSITION_BEFORE"] = "В начале";
$MESS["BASKET_POSITION_AFTER"] = "В конце";
$MESS["SHOW_BASKET_HEADERS"] = "Показывать заголовки колонок списка товаров";
$MESS["DELIVERY_FADE_EXTRA_SERVICES"] = "Дополнительные услуги, которые будут показаны в пройденном (свернутом) блоке";
$MESS["SHOW_COUPONS"] = "Отображать поля ввода купонов";
$MESS["SHOW_COUPONS_BASKET"] = "Показывать поле ввода купонов в блоке списка товаров";
$MESS["SHOW_COUPONS_DELIVERY"] = "Показывать поле ввода купонов в блоке доставки";
$MESS["SHOW_COUPONS_PAY_SYSTEM"] = "Показывать поле ввода купонов в блоке оплаты";
$MESS["SHOW_NEAREST_PICKUP"] = "Показывать ближайшие пункты самовывоза";
$MESS["DELIVERIES_PER_PAGE"] = "Количество доставок на странице";
$MESS["PAY_SYSTEMS_PER_PAGE"] = "Количество платежных систем на странице";
$MESS["PICKUPS_PER_PAGE"] = "Количество пунктов самовывоза на странице";
$MESS["SHOW_MAP_IN_PROPS"] = "Показывать карту в блоке свойств заказа";
$MESS["SHOW_PICKUP_MAP"] = "Показывать карту для доставок с самовывозом";
$MESS["PICKUP_MAP_TYPE"] = "Тип используемых карт";
$MESS["PICKUP_MAP_TYPE_YANDEX"] = "Яндекс.Карты";
$MESS["PICKUP_MAP_TYPE_GOOGLE"] = "Google Карты";
$MESS["PRODUCT_COLUMNS_HIDDEN"] = "Свойства товаров отображаемые в свернутом виде в списке товаров";
$MESS["SHOW_MAP_FOR_DELIVERIES"] = "Показывать карту для выбранных служб доставки";
$MESS["PROPS_FADE_LIST"] = "Свойства заказа, которые будут показаны в пройденном (свернутом) блоке";
$MESS["USE_CUSTOM_MESSAGES"] = "Заменить стандартные фразы на свои";
$MESS["USE_YM_GOALS1"] = "Использовать цели счетчика Яндекс.Метрики";
$MESS["USE_YM_GOALS_TIP"] = "Счетчик Яндекс.Метрики должен быть подключен на странице";
$MESS["YM_GOALS_COUNTER"] = "Номер счётчика Яндекс.Метрика";
$MESS["YM_GOALS_INITIALIZE"] = "Идентификатор цели при инициализации компонента на странице";
$MESS["YM_GOALS_EDIT_REGION"] = "Идентификатор цели при редактировании блока региона доставки";
$MESS["YM_GOALS_EDIT_DELIVERY"] = "Идентификатор цели при редактировании блока доставки";
$MESS["YM_GOALS_EDIT_PICKUP"] = "Идентификатор цели при редактировании блока пунктов самовывоза";
$MESS["YM_GOALS_EDIT_PAY_SYSTEM"] = "Идентификатор цели при редактировании блока оплаты";
$MESS["YM_GOALS_EDIT_PROPERTIES"] = "Идентификатор цели при редактировании блока свойств заказа";
$MESS["YM_GOALS_EDIT_BASKET"] = "Идентификатор цели при редактировании блока списка товаров";
$MESS["YM_GOALS_NEXT_REGION"] = "Идентификатор цели при переходе из блока региона доставки по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_DELIVERY"] = "Идентификатор цели при переходе из блока доставки по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_PICKUP"] = "Идентификатор цели при переходе из блока пунктов самовывоза по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_PAY_SYSTEM"] = "Идентификатор цели при переходе из блока оплаты по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_PROPERTIES"] = "Идентификатор цели при переходе из блока свойств заказа по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_BASKET"] = "Идентификатор цели при переходе из блока списка товаров по кнопке \"Далее\"";
$MESS["YM_GOALS_SAVE_ORDER"] = "Идентификатор цели при оформлении заказа";
$MESS["THEME_BLUE"] = "Синяя (тема по умолчанию)";
$MESS["THEME_GREEN"] = "Зеленая";
$MESS["THEME_RED"] = "Красная";
$MESS["THEME_YELLOW"] = "Желтая";
$MESS["TEMPLATE_THEME"] = "Цветовая тема";
$MESS["THEME_SITE"] = "Брать тему из настроек сайта (для решения bitrix.eshop)";
$MESS["AUTH_BLOCK_NAME"] = "Название блока авторизации";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Авторизация";
$MESS["REG_BLOCK_NAME"] = "Название блока регистрации";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Регистрация";
$MESS["BASKET_BLOCK_NAME"] = "Название блока списка товаров";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Товары в заказе";
$MESS["REGION_BLOCK_NAME"] = "Название блока региона доставки";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Регион доставки";
$MESS["PAYMENT_BLOCK_NAME"] = "Название блока оплаты";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Оплата";
$MESS["DELIVERY_BLOCK_NAME"] = "Название блока доставки";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Доставка";
$MESS["BUYER_BLOCK_NAME"] = "Название блока свойств заказа";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Покупатель";
$MESS["BACK"] = "Кнопка возврата к предыдущему блоку";
$MESS["BACK_DEFAULT"] = "Назад";
$MESS["FURTHER"] = "Кнопка перехода к следующему блоку";
$MESS["FURTHER_DEFAULT"] = "Далее";
$MESS["EDIT"] = "Кнопка редактирования блока";
$MESS["EDIT_DEFAULT"] = "изменить";
$MESS["ORDER"] = "Кнопка оформления заказа";
$MESS["ORDER_DEFAULT"] = "Оформить заказ";
$MESS["PRICE"] = "Заголовок для цены";
$MESS["PRICE_DEFAULT"] = "Стоимость";
$MESS["PERIOD"] = "Заголовок для срока доставки";
$MESS["PERIOD_DEFAULT"] = "Срок доставки";
$MESS["NAV_BACK"] = "Кнопка перехода к предыдущей странице";
$MESS["NAV_BACK_DEFAULT"] = "Назад";
$MESS["NAV_FORWARD"] = "Кнопка перехода к следующей странице";
$MESS["NAV_FORWARD_DEFAULT"] = "Вперед";
$MESS["PRICE_FREE"] = "Текст для \"бесплатно\"";
$MESS["PRICE_FREE_DEFAULT"] = "бесплатно";
$MESS["ECONOMY"] = "Текст для \"Экономия\"";
$MESS["ECONOMY_DEFAULT"] = "Экономия";
$MESS["REGISTRATION_REFERENCE"] = "Текст для перехода к блоку регистрации";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Если вы впервые на сайте, и хотите, чтобы мы вас помнили и все ваши заказы сохранялись, заполните регистрационную форму.";
$MESS["AUTH_REFERENCE_1"] = "Справочная информация №1 блока \"Авторизация\"";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Символом \"звездочка\" (*) отмечены обязательные для заполнения поля.";
$MESS["AUTH_REFERENCE_2"] = "Справочная информация №2 блока \"Авторизация\"";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "После регистрации вы получите информационное письмо.";
$MESS["AUTH_REFERENCE_3"] = "Справочная информация №3 блока \"Авторизация\"";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Личные сведения, полученные в распоряжение интернет-магазина при регистрации или каким-либо иным образом, не будут без разрешения пользователей передаваться третьим организациям и лицам за исключением ситуаций, когда этого требует закон или судебное решение.";
$MESS["ADDITIONAL_PROPS"] = "Кнопка дополнительных свойств товара";
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Дополнительные свойства";
$MESS["USE_COUPON"] = "Заголовок поля ввода купона";
$MESS["USE_COUPON_DEFAULT"] = "Применить купон";
$MESS["COUPON"] = "Заголовок для примененных купонов";
$MESS["COUPON_DEFAULT"] = "Купон";
$MESS["PERSON_TYPE"] = "Заголовок выбора типа плательщика";
$MESS["PERSON_TYPE_DEFAULT"] = "Тип плательщика";
$MESS["SELECT_PROFILE"] = "Заголовок выбора профиля";
$MESS["SELECT_PROFILE_DEFAULT"] = "Выберите профиль";
$MESS["REGION_REFERENCE"] = "Справочная информация блока \"Регион\"";
$MESS["REGION_REFERENCE_DEFAULT"] = "Выберите свой город в списке. Если вы не нашли свой город, выберите \"другое местоположение\", а город впишите в поле \"Город\"";
$MESS["PICKUP_LIST"] = "Заголовок пунктов самовывоза";
$MESS["PICKUP_LIST_DEFAULT"] = "Пункты самовывоза:";
$MESS["NEAREST_PICKUP_LIST"] = "Заголовок ближайших пунктов самовывоза";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Ближайшие пункты:";
$MESS["SELECT_PICKUP"] = "Кнопка выбора пункта самовывоза";
$MESS["SELECT_PICKUP_DEFAULT"] = "Выбрать";
$MESS["INNER_PS_BALANCE"] = "Информация о балансе внутреннего счета";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "На вашем пользовательском счете:";
$MESS["ORDER_DESC"] = "Заголовок комментариев к заказу";
$MESS["ORDER_DESC_DEFAULT"] = "Комментарии к заказу:";
$MESS["SUCCESS_PRELOAD_TEXT"] = "Текст уведомления о корректной загрузке данных заказа";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "
Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Если все заполнено верно, нажмите кнопку \"#ORDER_BUTTON#\".
";
$MESS["FAIL_PRELOAD_TEXT"] = "Текст уведомления о неудачной загрузке данных заказа";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "
Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Обратите внимание на развернутый блок с информацией о заказе. Здесь вы можете внести необходимые изменения или
оставить как есть и нажать кнопку \"#ORDER_BUTTON#\".
";
$MESS["DELIVERY_CALC_ERROR_TITLE"] = "Заголовок ошибки расчета доставки";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Не удалось рассчитать стоимость доставки.";
$MESS["DELIVERY_CALC_ERROR_TEXT"] = "Текст ошибки расчета доставки";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Вы можете продолжить оформление заказа, а чуть позже менеджер магазина свяжется с вами и уточнит информацию по доставке.";
$MESS["SERVICES_IMAGES_SCALING"] = "Режим отображения вспомагательных изображений";
$MESS["SERVICES_IMAGES_SCALING_TIP"] = "Включает изображения платежных систем, служб доставок и пунктов самовывоза";
$MESS["SOA_ADAPTIVE"] = "Адаптивный";
$MESS["SOA_STANDARD"] = "Стандартный";
$MESS["SOA_NO_SCALE"] = "Без сжатия";
$MESS["USE_ENHANCED_ECOMMERCE"] = "Отправлять данные электронной торговли в Google и Яндекс";
$MESS["USE_ENHANCED_ECOMMERCE_TIP"] = "Требуется дополнительная настройка в Google Analytics Enhanced
Ecommerce и/или Яндекс.Метрике";
$MESS["DATA_LAYER_NAME"] = "Имя контейнера данных";
$MESS["BRAND_PROPERTY"] = "Свойство, в котором указан бренд товара";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_TEXT"] = "Текст уведомления при статусе заказа, недоступном для оплаты";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "Вы сможете оплатить заказ после того, как менеджер проверит наличие полного комплекта товаров на складе. Сразу после проверки вы получите письмо с инструкциями по оплате. Оплатить заказ можно будет в персональном разделе сайта.";
?>

View file

@ -0,0 +1,140 @@
<?
$MESS["SOA_YES"] = "да";
$MESS["SOA_NO"] = "нет";
$MESS["SOA_DO_SOC_SERV"] = "Войти с помощью соцсетей";
$MESS["SOA_NOT_FOUND"] = "Не найден";
$MESS["SOA_NOT_SPECIFIED"] = "не указано";
$MESS["SOA_NOT_SELECTED"] = "не выбрано";
$MESS["SOA_NOT_CALCULATED"] = "не рассчитана";
$MESS["SOA_PS_SELECT_ERROR"] = "Платежная система не выбрана";
$MESS["SOA_DELIVERY_SELECT_ERROR"] = "Служба доставки не выбрана";
$MESS["SOA_PICKUP_PHONE"] = "Телефон";
$MESS["SOA_PICKUP_ADDRESS"] = "Адрес";
$MESS["SOA_PICKUP_WORK"] = "Режим работы";
$MESS["SOA_PICKUP_STORE"] = "Склад";
$MESS["SOA_PICKUP_EMAIL"] = "Электронная почта";
$MESS["SOA_PICKUP_DESC"] = "Описание";
$MESS["SOA_MAP_COORDS"] = "Координаты на карте";
$MESS["SOA_DISTANCE_KM"] = "км";
$MESS["SOA_ORDER_PROPS"] = "Свойства заказа";
$MESS["SOA_FIELD"] = "Поле";
$MESS["SOA_REQUIRED"] = "обязательно для заполнения";
$MESS["SOA_INVALID_EMAIL"] = "Введен неверный e-mail";
$MESS["SOA_MIN_LENGTH"] = "Минимальная длина поля";
$MESS["SOA_MAX_LENGTH"] = "Максимальная длина поля";
$MESS["SOA_NOT_NUMERIC"] = "должно быть числовым";
$MESS["SOA_MIN_VALUE"] = "Минимальное значение поля";
$MESS["SOA_MAX_VALUE"] = "Максимальное значение поля";
$MESS["SOA_NUM_STEP"] = "не соответствует шагу";
$MESS["SOA_LESS"] = "не менее";
$MESS["SOA_MORE"] = "не более";
$MESS["SOA_SYMBOLS"] = "символов";
$MESS["SOA_INVALID_PATTERN"] = "не соответствует шаблону";
$MESS["SOA_PROP_NEW_PROFILE"] = "Новый профиль";
$MESS["SOA_PAY_SYSTEM"] = "Платежная система";
$MESS["SOA_PAY_ACCOUNT3"] = "Средств достаточно для полной оплаты заказа.";
$MESS["SOA_DELIVERY"] = "Служба доставки";
$MESS["SOA_ORDER_SUC"] = "Ваш заказ <b>№#ORDER_ID#</b> от #ORDER_DATE# успешно создан.";
$MESS["SOA_PAYMENT_SUC"] = "Номер вашей оплаты: <b>№#PAYMENT_ID#</b>";
$MESS["SOA_ORDER_SUC1"] = "Вы можете следить за выполнением своего заказа в <a href=\"#LINK#\">Персональном разделе сайта</a>. Обратите внимание, что для входа в этот раздел вам необходимо будет ввести логин и пароль пользователя сайта.";
$MESS["SOA_PAY"] = "Оплата заказа";
$MESS["SOA_PAY_LINK"] = "Если окно с платежной информацией не открылось автоматически, нажмите на ссылку <a href=\"#LINK#\" target=\"_blank\">Оплатить заказ</a>.";
$MESS["SOA_PAY_PDF"] = "Для того, чтобы скачать счет в формате pdf, нажмите на ссылку <a href=\"#LINK#\" target=\"_blank\">Скачать счет</a>.";
$MESS["SOA_ERROR_ORDER"] = "Ошибка формирования заказа";
$MESS["SOA_ERROR_ORDER_LOST"] = "Заказ №#ORDER_ID# не найден.";
$MESS["SOA_ERROR_ORDER_LOST1"] = "Пожалуйста обратитесь к администрации интернет-магазина или попробуйте оформить ваш заказ еще раз.";
$MESS["SOA_SUM_NAME"] = "Наименование";
$MESS["SOA_SUM_DISCOUNT"] = "Скидка";
$MESS["SOA_SUM_WEIGHT"] = "Вес";
$MESS["SOA_SUM_QUANTITY"] = "Кол-во";
$MESS["SOA_SUM_PRICE"] = "Цена";
$MESS["SOA_SUM_WEIGHT_SUM"] = "Общий вес:";
$MESS["SOA_SUM_SUMMARY"] = "Товаров на:";
$MESS["SOA_SUM_VAT"] = "НДС:";
$MESS["SOA_SUM_DELIVERY"] = "Доставка:";
$MESS["SOA_SUM_IT"] = "Итого:";
$MESS["SOA_SUM_PAYED"] = "Оплачено:";
$MESS["SOA_SUM_LEFT_TO_PAY"] = "Осталось оплатить:";
$MESS["SOA_ORDER_COMPLETE"] = "Заказ сформирован";
$MESS["CAPTCHA_REGF_TITLE"] = "Защита от автоматической регистрации";
$MESS["CAPTCHA_REGF_PROMT"] = "Введите слово на картинке";
$MESS["STOF_LOGIN"] = "Логин";
$MESS["STOF_PASSWORD"] = "Пароль";
$MESS["STOF_REMEMBER"] = "Запомнить меня";
$MESS["STOF_ENTER"] = "Войти";
$MESS["STOF_REGISTER"] = "Регистрация";
$MESS["STOF_DO_AUTHORIZE"] = "Авторизоваться";
$MESS["STOF_DO_REGISTER"] = "Зарегистрироваться";
$MESS["STOF_AUTH_REQUEST"] = "Пожалуйста, авторизуйтесь";
$MESS["STOF_REG_REQUEST"] = "Пожалуйста, зарегистрируйтесь";
$MESS["STOF_PHONE"] = "Номер телефона";
$MESS["STOF_REG_SMS_REQUEST"] = "На ваш номер было выслано СМС с кодом подтверждения";
$MESS["STOF_SMS_CODE"] = "Код подтверждения из СМС";
$MESS["STOF_SEND"] = "Отправить";
$MESS["STOF_REG_HINT"] = "Если вы впервые на сайте, и хотите, чтобы мы вас помнили, и все ваши заказы сохранялись,
заполните регистрационную форму.";
$MESS["STOF_FORGET_PASSWORD"] = "Забыли пароль?";
$MESS["STOF_NEXT_STEP"] = "Продолжить оформление заказа";
$MESS["STOF_NAME"] = "Имя";
$MESS["STOF_LASTNAME"] = "Фамилия";
$MESS["STOF_EMAIL"] = "E-mail";
$MESS["STOF_MY_PASSWORD"] = "Задать логин и пароль";
$MESS["STOF_RE_PASSWORD"] = "Повтор пароля";
$MESS["STOF_SYS_PASSWORD"] = "Сгенерировать логин и пароль";
$MESS["SALE_SADC_TRANSIT"] = "Срок доставки";
$MESS["SOA_NO_JS"] = "Для оформления заказа необходимо включить JavaScript. По-видимому, JavaScript либо не поддерживается браузером, либо отключен. Измените настройки браузера и затем <a href=\"\">повторите попытку</a>.";
$MESS["SOA_PAYSYSTEM_PRICE"] = "Дополнительно наложенный платеж:";
$MESS["SOA_OTHER_LOCATION"] = "Другое местоположение";
$MESS["SOA_LOCATION_NOT_FOUND"] = "Местоположение не найдено";
$MESS["SOA_LOCATION_NOT_FOUND_PROMPT"] = "#ANCHOR#Выберите местоположение из списка#ANCHOR_END#, чтобы мы узнали, куда нам доставить ваш заказ";
$MESS["SOA_NOT_SELECTED_ALT"] = "При необходимости уточнить местоположение";
$MESS["SOA_ORDER_PS_ERROR"] = "Ошибка выбранного способа оплаты. Обратитесь к Администрации сайта, либо выберите другой способ оплаты.";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Авторизация";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Регистрация";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Товары в заказе";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Регион доставки";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Оплата";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Доставка";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Покупатель";
$MESS["BACK_DEFAULT"] = "Назад";
$MESS["FURTHER_DEFAULT"] = "Далее";
$MESS["EDIT_DEFAULT"] = "изменить";
$MESS["ORDER_DEFAULT"] = "Оформить заказ";
$MESS["ADD_DEFAULT"] = "Добавить";
$MESS["PRICE_DEFAULT"] = "Стоимость";
$MESS["PERIOD_DEFAULT"] = "Срок доставки";
$MESS["NAV_BACK_DEFAULT"] = "Назад";
$MESS["NAV_FORWARD_DEFAULT"] = "Вперед";
$MESS["PRICE_FREE_DEFAULT"] = "бесплатно";
$MESS["ECONOMY_DEFAULT"] = "Экономия";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Если вы впервые на сайте, и хотите, чтобы мы вас помнили, и все ваши заказы сохранялись, заполните регистрационную форму.";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Символом \"звездочка\" (*) отмечены обязательные для заполнения поля.";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "После регистрации вы получите информационное письмо.";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Личные сведения, полученные в распоряжение интернет-магазина при регистрации или каким-либо иным образом, не будут без разрешения пользователей передаваться третьим организациям и лицам за исключением ситуаций, когда этого требует закон или судебное решение.";
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Дополнительные свойства";
$MESS["USE_COUPON_DEFAULT"] = "Применить купон";
$MESS["COUPON_DEFAULT"] = "Купон";
$MESS["PERSON_TYPE_DEFAULT"] = "Тип плательщика";
$MESS["SELECT_PROFILE_DEFAULT"] = "Выберите профиль";
$MESS["REGION_REFERENCE_DEFAULT"] = "Выберите свой город в списке. Если вы не нашли свой город, выберите \"другое местоположение\", а город впишите в поле \"Город\"";
$MESS["PICKUP_LIST_DEFAULT"] = "Пункты самовывоза:";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Ближайшие пункты:";
$MESS["SELECT_PICKUP_DEFAULT"] = "Выбрать";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "На вашем пользовательском счете:";
$MESS["ORDER_DESC_DEFAULT"] = "Комментарии к заказу:";
$MESS["SELECT_FILE_DEFAULT"] = "Выбрать";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Если все заполнено верно, нажмите кнопку \"#ORDER_BUTTON#\".
";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Обратите внимание на развернутый блок с информацией о заказе. Здесь вы можете внести необходимые изменения или
оставить как есть и нажать кнопку \"#ORDER_BUTTON#\".
";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Не удалось рассчитать стоимость доставки.";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Вы можете продолжить оформление заказа, а чуть позже менеджер магазина свяжется с вами и уточнит информацию по доставке.";
$MESS["EMPTY_BASKET_TITLE"] = "Ваша корзина пуста";
$MESS["EMPTY_BASKET_HINT"] = "#A1#Нажмите здесь#A2#, чтобы продолжить покупки";
$MESS["SOA_BAD_EXTENSION"] = "Неверный тип файла";
$MESS["SOA_MAX_SIZE"] = "Превышен максимальный размер файла";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "Вы сможете оплатить заказ после того, как менеджер проверит наличие полного комплекта товаров на складе. Сразу после проверки вы получите письмо с инструкциями по оплате. Оплатить заказ можно будет в персональном разделе сайта.";
?>

View file

@ -0,0 +1,14 @@
<? use Intaro\RetailCrm\Component\ConfigProvider;
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
/**
* @var array $arParams
* @var array $arResult
* @var SaleOrderAjax $component
*/
$arResult['LOYALTY_STATUS'] = ConfigProvider::getLoyaltyProgramStatus();
$arResult['AVAILABLE_BONUSES'] = 300;
$component = $this->__component;
$component::scaleImages($arResult['JS_DATA'], $arParams['SERVICES_IMAGES_SCALING']);

View file

@ -0,0 +1,444 @@
BX.saleOrderAjax = { // bad solution, actually, a singleton at the page
BXCallAllowed: false,
options: {},
indexCache: {},
controls: {},
modes: {},
properties: {},
// called once, on component load
init: function(options)
{
var ctx = this;
this.options = options;
window.submitFormProxy = BX.proxy(function(){
ctx.submitFormProxy.apply(ctx, arguments);
}, this);
BX(function(){
ctx.initDeferredControl();
});
BX(function(){
ctx.BXCallAllowed = true; // unlock form refresher
});
this.controls.scope = BX('bx-soa-order');
// user presses "add location" when he cannot find location in popup mode
BX.bindDelegate(this.controls.scope, 'click', {className: '-bx-popup-set-mode-add-loc'}, function(){
var input = BX.create('input', {
attrs: {
type: 'hidden',
name: 'PERMANENT_MODE_STEPS',
value: '1'
}
});
BX.prepend(input, BX('bx-soa-order'));
ctx.BXCallAllowed = false;
BX.Sale.OrderAjaxComponent.sendRequest();
});
},
cleanUp: function(){
for(var k in this.properties)
{
if (this.properties.hasOwnProperty(k))
{
if(typeof this.properties[k].input != 'undefined')
{
BX.unbindAll(this.properties[k].input);
this.properties[k].input = null;
}
if(typeof this.properties[k].control != 'undefined')
BX.unbindAll(this.properties[k].control);
}
}
this.properties = {};
},
addPropertyDesc: function(desc){
this.properties[desc.id] = desc.attributes;
this.properties[desc.id].id = desc.id;
},
// called each time form refreshes
initDeferredControl: function()
{
var ctx = this,
k,
row,
input,
locPropId,
m,
control,
code,
townInputFlag,
adapter;
// first, init all controls
if(typeof window.BX.locationsDeferred != 'undefined'){
this.BXCallAllowed = false;
for(k in window.BX.locationsDeferred){
window.BX.locationsDeferred[k].call(this);
window.BX.locationsDeferred[k] = null;
delete(window.BX.locationsDeferred[k]);
this.properties[k].control = window.BX.locationSelectors[k];
delete(window.BX.locationSelectors[k]);
}
}
for(k in this.properties){
// zip input handling
if(this.properties[k].isZip){
row = this.controls.scope.querySelector('[data-property-id-row="'+k+'"]');
if(BX.type.isElementNode(row)){
input = row.querySelector('input[type="text"]');
if(BX.type.isElementNode(input)){
this.properties[k].input = input;
// set value for the first "location" property met
locPropId = false;
for(m in this.properties){
if(this.properties[m].type == 'LOCATION'){
locPropId = m;
break;
}
}
if(locPropId !== false){
BX.bindDebouncedChange(input, function(value){
var zipChangedNode = BX('ZIP_PROPERTY_CHANGED');
zipChangedNode && (zipChangedNode.value = 'Y');
input = null;
row = null;
if(BX.type.isNotEmptyString(value) && /^\s*\d+\s*$/.test(value) && value.length > 3){
ctx.getLocationsByZip(value, function(locationsData){
ctx.properties[locPropId].control.setValueByLocationIds(locationsData);
}, function(){
try{
// ctx.properties[locPropId].control.clearSelected();
}catch(e){}
});
}
});
}
}
}
}
// location handling, town property, etc...
if(this.properties[k].type == 'LOCATION')
{
if(typeof this.properties[k].control != 'undefined'){
control = this.properties[k].control; // reference to sale.location.selector.*
code = control.getSysCode();
// we have town property (alternative location)
if(typeof this.properties[k].altLocationPropId != 'undefined')
{
if(code == 'sls') // for sale.location.selector.search
{
// replace default boring "nothing found" label for popup with "-bx-popup-set-mode-add-loc" inside
control.replaceTemplate('nothing-found', this.options.messages.notFoundPrompt);
}
if(code == 'slst') // for sale.location.selector.steps
{
(function(k, control){
// control can have "select other location" option
control.setOption('pseudoValues', ['other']);
// insert "other location" option to popup
control.bindEvent('control-before-display-page', function(adapter){
control = null;
var parentValue = adapter.getParentValue();
// you can choose "other" location only if parentNode is not root and is selectable
if(parentValue == this.getOption('rootNodeValue') || !this.checkCanSelectItem(parentValue))
return;
var controlInApater = adapter.getControl();
if(typeof controlInApater.vars.cache.nodes['other'] == 'undefined')
{
controlInApater.fillCache([{
CODE: 'other',
DISPLAY: ctx.options.messages.otherLocation,
IS_PARENT: false,
VALUE: 'other'
}], {
modifyOrigin: true,
modifyOriginPosition: 'prepend'
});
}
});
townInputFlag = BX('LOCATION_ALT_PROP_DISPLAY_MANUAL['+parseInt(k)+']');
control.bindEvent('after-select-real-value', function(){
// some location chosen
if(BX.type.isDomNode(townInputFlag))
townInputFlag.value = '0';
});
control.bindEvent('after-select-pseudo-value', function(){
// option "other location" chosen
if(BX.type.isDomNode(townInputFlag))
townInputFlag.value = '1';
});
// when user click at default location or call .setValueByLocation*()
control.bindEvent('before-set-value', function(){
if(BX.type.isDomNode(townInputFlag))
townInputFlag.value = '0';
});
// restore "other location" label on the last control
if(BX.type.isDomNode(townInputFlag) && townInputFlag.value == '1'){
// a little hack: set "other location" text display
adapter = control.getAdapterAtPosition(control.getStackSize() - 1);
if(typeof adapter != 'undefined' && adapter !== null)
adapter.setValuePair('other', ctx.options.messages.otherLocation);
}
})(k, control);
}
}
}
}
}
this.BXCallAllowed = true;
//set location initialized flag and refresh region & property actual content
if (BX.Sale.OrderAjaxComponent)
BX.Sale.OrderAjaxComponent.locationsCompletion();
},
checkMode: function(propId, mode){
//if(typeof this.modes[propId] == 'undefined')
// this.modes[propId] = {};
//if(typeof this.modes[propId] != 'undefined' && this.modes[propId][mode])
// return true;
if(mode == 'altLocationChoosen'){
if(this.checkAbility(propId, 'canHaveAltLocation')){
var input = this.getInputByPropId(this.properties[propId].altLocationPropId);
var altPropId = this.properties[propId].altLocationPropId;
if(input !== false && input.value.length > 0 && !input.disabled && this.properties[altPropId].valueSource != 'default'){
//this.modes[propId][mode] = true;
return true;
}
}
}
return false;
},
checkAbility: function(propId, ability){
if(typeof this.properties[propId] == 'undefined')
this.properties[propId] = {};
if(typeof this.properties[propId].abilities == 'undefined')
this.properties[propId].abilities = {};
if(typeof this.properties[propId].abilities != 'undefined' && this.properties[propId].abilities[ability])
return true;
if(ability == 'canHaveAltLocation'){
if(this.properties[propId].type == 'LOCATION'){
// try to find corresponding alternate location prop
if(typeof this.properties[propId].altLocationPropId != 'undefined' && typeof this.properties[this.properties[propId].altLocationPropId]){
var altLocPropId = this.properties[propId].altLocationPropId;
if(typeof this.properties[propId].control != 'undefined' && this.properties[propId].control.getSysCode() == 'slst'){
if(this.getInputByPropId(altLocPropId) !== false){
this.properties[propId].abilities[ability] = true;
return true;
}
}
}
}
}
return false;
},
getInputByPropId: function(propId){
if(typeof this.properties[propId].input != 'undefined')
return this.properties[propId].input;
var row = this.getRowByPropId(propId);
if(BX.type.isElementNode(row)){
var input = row.querySelector('input[type="text"]');
if(BX.type.isElementNode(input)){
this.properties[propId].input = input;
return input;
}
}
return false;
},
getRowByPropId: function(propId){
if(typeof this.properties[propId].row != 'undefined')
return this.properties[propId].row;
var row = this.controls.scope.querySelector('[data-property-id-row="'+propId+'"]');
if(BX.type.isElementNode(row)){
this.properties[propId].row = row;
return row;
}
return false;
},
getAltLocPropByRealLocProp: function(propId){
if(typeof this.properties[propId].altLocationPropId != 'undefined')
return this.properties[this.properties[propId].altLocationPropId];
return false;
},
toggleProperty: function(propId, way, dontModifyRow){
var prop = this.properties[propId];
if(typeof prop.row == 'undefined')
prop.row = this.getRowByPropId(propId);
if(typeof prop.input == 'undefined')
prop.input = this.getInputByPropId(propId);
if(!way){
if(!dontModifyRow)
BX.hide(prop.row);
prop.input.disabled = true;
}else{
if(!dontModifyRow)
BX.show(prop.row);
prop.input.disabled = false;
}
},
submitFormProxy: function(item, control)
{
var propId = false;
for(var k in this.properties){
if(typeof this.properties[k].control != 'undefined' && this.properties[k].control == control){
propId = k;
break;
}
}
// turning LOCATION_ALT_PROP_DISPLAY_MANUAL on\off
if(item != 'other'){
if(this.BXCallAllowed){
this.BXCallAllowed = false;
setTimeout(function(){BX.Sale.OrderAjaxComponent.sendRequest()}, 20);
}
}
},
getPreviousAdapterSelectedNode: function(control, adapter){
var index = adapter.getIndex();
var prevAdapter = control.getAdapterAtPosition(index - 1);
if(typeof prevAdapter !== 'undefined' && prevAdapter != null){
var prevValue = prevAdapter.getControl().getValue();
if(typeof prevValue != 'undefined'){
var node = control.getNodeByValue(prevValue);
if(typeof node != 'undefined')
return node;
return false;
}
}
return false;
},
getLocationsByZip: function(value, successCallback, notFoundCallback)
{
if(typeof this.indexCache[value] != 'undefined')
{
successCallback.apply(this, [this.indexCache[value]]);
return;
}
var ctx = this;
BX.ajax({
url: this.options.source,
method: 'post',
dataType: 'json',
async: true,
processData: true,
emulateOnload: true,
start: true,
data: {'ACT': 'GET_LOCS_BY_ZIP', 'ZIP': value},
//cache: true,
onsuccess: function(result){
if(result.result)
{
ctx.indexCache[value] = result.data;
successCallback.apply(ctx, [result.data]);
}
else
{
notFoundCallback.call(ctx);
}
},
onfailure: function(type, e){
// on error do nothing
}
});
}
};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,264 @@
BX.namespace('BX.Sale.OrderAjaxComponent.Maps');
(function() {
'use strict';
BX.Sale.OrderAjaxComponent.Maps = {
init: function(ctx)
{
this.context = ctx || {};
this.pickUpOptions = this.context.options.pickUpMap;
this.propsOptions = this.context.options.propertyMap;
this.maxWaitTimeExpired = false;
this.scheme = this.context.isHttps ? 'https' : 'http';
this.icons = {
red: this.scheme + '://maps.google.com/mapfiles/ms/icons/red-dot.png',
green: this.scheme + '://maps.google.com/mapfiles/ms/icons/green-dot.png'
};
return this;
},
initializePickUpMap: function(selected)
{
if (!google)
return;
this.markers = [];
this.bounds = new google.maps.LatLngBounds();
var lat = !!selected ? parseFloat(BX.util.trim(selected.GPS_N)) : this.pickUpOptions.defaultMapPosition.lat,
lng = !!selected ? parseFloat(BX.util.trim(selected.GPS_S)) : this.pickUpOptions.defaultMapPosition.lon;
this.pickUpMap = new google.maps.Map(BX('pickUpMap'), {
center: {lat: lat, lng: lng},
zoom: this.pickUpOptions.defaultMapPosition.zoom,
scrollwheel: false
});
google.maps.event.addListener(this.pickUpMap, 'click', BX.proxy(this.closeAllBalloons, this));
},
canUseRecommendList: function()
{
return false;
},
getRecommendedStoreIds: function(geoLocation, length)
{
return [];
},
getDistance: function(from, to)
{
return false;
},
pickUpMapFocusWaiter: function()
{
if (this.pickUpMap && this.markers.length)
{
this.setPickUpMapFocus();
}
else
{
setTimeout(BX.proxy(this.pickUpMapFocusWaiter, this), 100);
}
},
setPickUpMapFocus: function()
{
google.maps.event.trigger(this.pickUpMap, 'resize');
this.pickUpMap.fitBounds(this.bounds);
},
showNearestPickups: function(successCb, failCb)
{
},
buildBalloons: function(activeStores)
{
if (!google)
return;
var i, marker;
var that = this;
for (i = 0; i < activeStores.length; i++)
{
marker = new google.maps.Marker({
position: {lat: parseFloat(activeStores[i].GPS_N), lng: parseFloat(activeStores[i].GPS_S)},
map: this.pickUpMap,
title: activeStores[i].TITLE
});
marker.info = new google.maps.InfoWindow({
content: '<h3>' + BX.util.htmlspecialchars(activeStores[i].TITLE) + '</h3>' + this.getStoreInfoHtml(activeStores[i]) + '<br />'
+ '<a class="btn btn-sm btn-default" data-store="' + activeStores[i].ID + '">'
+ this.context.params.MESS_SELECT_PICKUP + '</a>'
});
marker.storeId = activeStores[i].ID;
google.maps.event.addListener(marker.info, 'domready', function(){
var button = document.querySelector('a[data-store]');
if (button)
{
BX.bind(button, 'click', BX.proxy(that.selectStoreByClick, that));
}
});
google.maps.event.addListener(marker, 'click', function(){
that.closeAllBalloons();
this.info.open(this.getMap(), this);
});
if (BX('BUYER_STORE').value === activeStores[i].ID)
{
marker.setIcon(this.icons.green);
}
else
{
marker.setIcon(this.icons.red);
}
this.markers.push(marker);
this.bounds.extend(marker.getPosition());
}
},
selectStoreByClick: function(e)
{
var target = e.target || e.srcElement;
this.context.selectStore(target.getAttribute('data-store'));
this.context.clickNextAction(e);
this.closeAllBalloons();
},
closeAllBalloons: function()
{
for (var i = 0; i < this.markers.length; i++)
{
this.markers[i].info.close();
}
},
selectBalloon: function(storeItemId)
{
if (!this.pickUpMap || !this.markers || !this.markers.length)
return;
for (var i = 0; i < this.markers.length; i++)
{
if (this.markers[i].storeId === storeItemId)
{
this.markers[i].setIcon(this.icons.green);
this.pickUpMap.panTo(this.markers[i].getPosition())
}
else
{
this.markers[i].setIcon(this.icons.red);
}
}
},
pickUpFinalAction: function()
{
},
initializePropsMap: function(propsMapData)
{
if (!google)
return;
this.propsMap = new google.maps.Map(BX('propsMap'), {
center: {lat: propsMapData.lat, lng: propsMapData.lon},
zoom: propsMapData.zoom,
scrollwheel: false
});
this.currentPropsMapCenter = this.propsMap.getCenter();
google.maps.event.addListener(this.propsMap, 'click', BX.delegate(function(e){
if (!this.propsMarker)
{
this.propsMarker = new google.maps.Marker({
position: e.latLng,
map: this.propsMap,
draggable: true
});
this.propsMarker.addListener('drag', BX.proxy(this.onPropsMarkerChanged, this));
this.propsMarker.addListener('dragend', BX.proxy(this.onPropsMarkerChanged, this));
}
else
{
this.propsMarker.setPosition(e.latLng);
}
this.currentPropsMapCenter = e.latLng;
this.onPropsMarkerChanged({latLng: e.latLng});
}, this));
},
onPropsMarkerChanged: function(event)
{
var orderDesc = BX('orderDescription', true),
lat = event.latLng.lat(),
lng = event.latLng.lng(),
ind, before, after, string;
if (orderDesc)
{
ind = orderDesc.value.indexOf(BX.message('SOA_MAP_COORDS') + ':');
if (ind === -1)
{
orderDesc.value = BX.message('SOA_MAP_COORDS') + ': ' + lat + ', ' + lng + '\r\n' + orderDesc.value;
}
else
{
string = BX.message('SOA_MAP_COORDS') + ': ' + lat + ', ' + lng;
before = orderDesc.value.substring(0, ind);
after = orderDesc.value.substring(ind + string.length);
orderDesc.value = before + string + after;
}
}
},
propsMapFocusWaiter: function()
{
if (this.propsMap)
{
this.setPropsMapFocus();
}
else
{
setTimeout(BX.proxy(this.propsMapFocusWaiter, this), 100);
}
},
setPropsMapFocus: function()
{
google.maps.event.trigger(this.propsMap, 'resize');
this.propsMap.setCenter(this.currentPropsMapCenter);
},
getStoreInfoHtml: function(currentStore)
{
var html = '';
if (currentStore.ADDRESS)
html += BX.message('SOA_PICKUP_ADDRESS') + ': ' + BX.util.htmlspecialchars(currentStore.ADDRESS) + '<br />';
if (currentStore.PHONE)
html += BX.message('SOA_PICKUP_PHONE') + ': ' + BX.util.htmlspecialchars(currentStore.PHONE) + '<br />';
if (currentStore.SCHEDULE)
html += BX.message('SOA_PICKUP_WORK') + ': ' + BX.util.htmlspecialchars(currentStore.SCHEDULE) + '<br />';
if (currentStore.DESCRIPTION)
html += BX.message('SOA_PICKUP_DESC') + ': ' + BX.util.htmlspecialchars(currentStore.DESCRIPTION) + '<br />';
return html;
}
};
})();

View file

@ -0,0 +1 @@
BX.namespace("BX.Sale.OrderAjaxComponent.Maps");(function(){"use strict";BX.Sale.OrderAjaxComponent.Maps={init:function(t){this.context=t||{};this.pickUpOptions=this.context.options.pickUpMap;this.propsOptions=this.context.options.propertyMap;this.maxWaitTimeExpired=false;this.scheme=this.context.isHttps?"https":"http";this.icons={red:this.scheme+"://maps.google.com/mapfiles/ms/icons/red-dot.png",green:this.scheme+"://maps.google.com/mapfiles/ms/icons/green-dot.png"};return this},initializePickUpMap:function(t){if(!google)return;this.markers=[];this.bounds=new google.maps.LatLngBounds;var e=!!t?parseFloat(BX.util.trim(t.GPS_N)):this.pickUpOptions.defaultMapPosition.lat,s=!!t?parseFloat(BX.util.trim(t.GPS_S)):this.pickUpOptions.defaultMapPosition.lon;this.pickUpMap=new google.maps.Map(BX("pickUpMap"),{center:{lat:e,lng:s},zoom:this.pickUpOptions.defaultMapPosition.zoom,scrollwheel:false});google.maps.event.addListener(this.pickUpMap,"click",BX.proxy(this.closeAllBalloons,this))},canUseRecommendList:function(){return false},getRecommendedStoreIds:function(t,e){return[]},getDistance:function(t,e){return false},pickUpMapFocusWaiter:function(){if(this.pickUpMap&&this.markers.length){this.setPickUpMapFocus()}else{setTimeout(BX.proxy(this.pickUpMapFocusWaiter,this),100)}},setPickUpMapFocus:function(){google.maps.event.trigger(this.pickUpMap,"resize");this.pickUpMap.fitBounds(this.bounds)},showNearestPickups:function(t,e){},buildBalloons:function(t){if(!google)return;var e,s;var i=this;for(e=0;e<t.length;e++){s=new google.maps.Marker({position:{lat:parseFloat(t[e].GPS_N),lng:parseFloat(t[e].GPS_S)},map:this.pickUpMap,title:t[e].TITLE});s.info=new google.maps.InfoWindow({content:"<h3>"+BX.util.htmlspecialchars(t[e].TITLE)+"</h3>"+this.getStoreInfoHtml(t[e])+"<br />"+'<a class="btn btn-sm btn-default" data-store="'+t[e].ID+'">'+this.context.params.MESS_SELECT_PICKUP+"</a>"});s.storeId=t[e].ID;google.maps.event.addListener(s.info,"domready",function(){var t=document.querySelector("a[data-store]");if(t){BX.bind(t,"click",BX.proxy(i.selectStoreByClick,i))}});google.maps.event.addListener(s,"click",function(){i.closeAllBalloons();this.info.open(this.getMap(),this)});if(BX("BUYER_STORE").value===t[e].ID){s.setIcon(this.icons.green)}else{s.setIcon(this.icons.red)}this.markers.push(s);this.bounds.extend(s.getPosition())}},selectStoreByClick:function(t){var e=t.target||t.srcElement;this.context.selectStore(e.getAttribute("data-store"));this.context.clickNextAction(t);this.closeAllBalloons()},closeAllBalloons:function(){for(var t=0;t<this.markers.length;t++){this.markers[t].info.close()}},selectBalloon:function(t){if(!this.pickUpMap||!this.markers||!this.markers.length)return;for(var e=0;e<this.markers.length;e++){if(this.markers[e].storeId===t){this.markers[e].setIcon(this.icons.green);this.pickUpMap.panTo(this.markers[e].getPosition())}else{this.markers[e].setIcon(this.icons.red)}}},pickUpFinalAction:function(){},initializePropsMap:function(t){if(!google)return;this.propsMap=new google.maps.Map(BX("propsMap"),{center:{lat:t.lat,lng:t.lon},zoom:t.zoom,scrollwheel:false});this.currentPropsMapCenter=this.propsMap.getCenter();google.maps.event.addListener(this.propsMap,"click",BX.delegate(function(t){if(!this.propsMarker){this.propsMarker=new google.maps.Marker({position:t.latLng,map:this.propsMap,draggable:true});this.propsMarker.addListener("drag",BX.proxy(this.onPropsMarkerChanged,this));this.propsMarker.addListener("dragend",BX.proxy(this.onPropsMarkerChanged,this))}else{this.propsMarker.setPosition(t.latLng)}this.currentPropsMapCenter=t.latLng;this.onPropsMarkerChanged({latLng:t.latLng})},this))},onPropsMarkerChanged:function(t){var e=BX("orderDescription",true),s=t.latLng.lat(),i=t.latLng.lng(),o,r,a,n;if(e){o=e.value.indexOf(BX.message("SOA_MAP_COORDS")+":");if(o===-1){e.value=BX.message("SOA_MAP_COORDS")+": "+s+", "+i+"\r\n"+e.value}else{n=BX.message("SOA_MAP_COORDS")+": "+s+", "+i;r=e.value.substring(0,o);a=e.value.substring(o+n.length);e.value=r+n+a}}},propsMapFocusWaiter:function(){if(this.propsMap){this.setPropsMapFocus()}else{setTimeout(BX.proxy(this.propsMapFocusWaiter,this),100)}},setPropsMapFocus:function(){google.maps.event.trigger(this.propsMap,"resize");this.propsMap.setCenter(this.currentPropsMapCenter)},getStoreInfoHtml:function(t){var e="";if(t.ADDRESS)e+=BX.message("SOA_PICKUP_ADDRESS")+": "+BX.util.htmlspecialchars(t.ADDRESS)+"<br />";if(t.PHONE)e+=BX.message("SOA_PICKUP_PHONE")+": "+BX.util.htmlspecialchars(t.PHONE)+"<br />";if(t.SCHEDULE)e+=BX.message("SOA_PICKUP_WORK")+": "+BX.util.htmlspecialchars(t.SCHEDULE)+"<br />";if(t.DESCRIPTION)e+=BX.message("SOA_PICKUP_DESC")+": "+BX.util.htmlspecialchars(t.DESCRIPTION)+"<br />";return e}}})();

View file

@ -0,0 +1,7 @@
function calculateBonuses(leading) {
console.log(leading);
}
jQuery('#bonus-input').on('click', _.debounce(calculateBonuses, 300, {
'leading': 'test',
}));

View file

@ -0,0 +1,334 @@
BX.namespace('BX.Sale.OrderAjaxComponent.Maps');
(function() {
'use strict';
BX.Sale.OrderAjaxComponent.Maps = {
init: function(ctx)
{
this.context = ctx || {};
this.pickUpOptions = this.context.options.pickUpMap;
this.propsOptions = this.context.options.propertyMap;
this.maxWaitTimeExpired = false;
return this;
},
initializePickUpMap: function(selected)
{
if (!ymaps)
return;
this.pickUpMap = new ymaps.Map('pickUpMap', {
center: !!selected
? [selected.GPS_N, selected.GPS_S]
: [this.pickUpOptions.defaultMapPosition.lat, this.pickUpOptions.defaultMapPosition.lon],
zoom: this.pickUpOptions.defaultMapPosition.zoom
});
this.pickUpMap.behaviors.disable('scrollZoom');
this.pickUpMap.events.add('click', BX.delegate(function(){
if (this.pickUpMap.balloon.isOpen())
{
this.pickUpMap.balloon.close();
}
}, this));
},
pickUpMapFocusWaiter: function()
{
if (this.pickUpMap && this.pickUpMap.geoObjects)
{
this.setPickUpMapFocus();
}
else
{
setTimeout(BX.proxy(this.pickUpMapFocusWaiter, this), 100);
}
},
setPickUpMapFocus: function()
{
var bounds, diff0, diff1;
bounds = this.pickUpMap.geoObjects.getBounds();
if (bounds && bounds.length)
{
diff0 = bounds[1][0] - bounds[0][0];
diff1 = bounds[1][1] - bounds[0][1];
bounds[0][0] -= diff0/10;
bounds[0][1] -= diff1/10;
bounds[1][0] += diff0/10;
bounds[1][1] += diff1/10;
this.pickUpMap.setBounds(bounds, {checkZoomRange: true});
}
},
showNearestPickups: function(successCb, failCb)
{
if (!ymaps)
return;
var provider = this.pickUpOptions.secureGeoLocation && BX.browser.IsChrome() && !this.context.isHttps
? 'yandex'
: 'auto';
var maxTime = this.pickUpOptions.geoLocationMaxTime || 5000;
ymaps.geolocation.get({
provider: provider,
timeOut: maxTime
}).then(
BX.delegate(function(result){
if (!this.maxWaitTimeExpired)
{
this.maxWaitTimeExpired = true;
result.geoObjects.options.set('preset', 'islands#darkGreenCircleDotIcon');
this.pickUpMap.geoObjects.add(result.geoObjects);
successCb(result);
}
}, this),
BX.delegate(function() {
if (!this.maxWaitTimeExpired)
{
this.maxWaitTimeExpired = true;
failCb();
}
}, this)
);
},
buildBalloons: function(activeStores)
{
if (!ymaps)
return;
var that = this;
this.pickUpPointsJSON = [];
for (var i = 0; i < activeStores.length; i++)
{
var storeInfoHtml = this.getStoreInfoHtml(activeStores[i]);
this.pickUpPointsJSON.push({
type: 'Feature',
geometry: {type: 'Point', coordinates: [activeStores[i].GPS_N, activeStores[i].GPS_S]},
properties: {storeId: activeStores[i].ID}
});
var geoObj = new ymaps.Placemark([activeStores[i].GPS_N, activeStores[i].GPS_S], {
hintContent: BX.util.htmlspecialchars(activeStores[i].TITLE) + '<br />' + BX.util.htmlspecialchars(activeStores[i].ADDRESS),
storeTitle: activeStores[i].TITLE,
storeBody: storeInfoHtml,
id: activeStores[i].ID,
text: this.context.params.MESS_SELECT_PICKUP
}, {
balloonContentLayout: ymaps.templateLayoutFactory.createClass(
'<h3>{{ properties.storeTitle }}</h3>' +
'{{ properties.storeBody|raw }}' +
'<br /><a class="btn btn-sm btn-default" data-store="{{ properties.id }}">{{ properties.text }}</a>',
{
build: function() {
this.constructor.superclass.build.call(this);
var button = document.querySelector('a[data-store]');
if (button)
BX.bind(button, 'click', this.selectStoreByClick);
},
clear: function() {
var button = document.querySelector('a[data-store]');
if (button)
BX.unbind(button, 'click', this.selectStoreByClick);
this.constructor.superclass.clear.call(this);
},
selectStoreByClick: function(e) {
var target = e.target || e.srcElement;
if (that.pickUpMap.container.isFullscreen())
{
that.pickUpMap.container.exitFullscreen();
}
that.context.selectStore(target.getAttribute('data-store'));
that.context.clickNextAction(e);
that.pickUpMap.balloon.close();
}
}
)
});
if (BX('BUYER_STORE').value === activeStores[i].ID)
{
geoObj.options.set('preset', 'islands#redDotIcon');
}
this.pickUpMap.geoObjects.add(geoObj);
}
},
selectBalloon: function(storeItemId)
{
if (this.pickUpMap && this.pickUpMap.geoObjects)
{
this.pickUpMap.geoObjects.each(BX.delegate(function(placeMark){
if (placeMark.properties.get('id'))
{
placeMark.options.unset('preset');
}
if (placeMark.properties.get('id') === storeItemId)
{
placeMark.options.set({preset: 'islands#redDotIcon'});
this.pickUpMap.panTo([placeMark.geometry.getCoordinates()])
}
}, this));
}
},
pickUpFinalAction: function()
{
if (this.pickUpMap && this.pickUpMap.geoObjects)
{
var buyerStoreInput = BX('BUYER_STORE');
this.pickUpMap.geoObjects.each(function(geoObject){
if (geoObject.properties.get('id') === buyerStoreInput.value)
{
geoObject.options.set({preset: 'islands#redDotIcon'});
}
else if (parseInt(geoObject.properties.get('id')) > 0)
{
geoObject.options.unset('preset');
}
});
}
},
initializePropsMap: function(propsMapData)
{
if (!ymaps)
return;
this.propsMap = new ymaps.Map('propsMap', {
center: [propsMapData.lat, propsMapData.lon],
zoom: propsMapData.zoom
});
this.propsMap.behaviors.disable('scrollZoom');
this.propsMap.events.add('click', BX.delegate(function(e){
var coordinates = e.get('coords'), placeMark;
if (this.propsMap.geoObjects.getLength() === 0)
{
placeMark = new ymaps.Placemark([coordinates[0], coordinates[1]], {}, {
draggable:true,
preset: 'islands#redDotIcon'
});
placeMark.events.add(['parentchange', 'geometrychange'], function() {
var orderDesc = BX('orderDescription'),
coordinates = placeMark.geometry.getCoordinates(),
ind, before, after, string;
if (orderDesc)
{
ind = orderDesc.value.indexOf(BX.message('SOA_MAP_COORDS') + ':');
if (ind === -1)
{
orderDesc.value = BX.message('SOA_MAP_COORDS') + ': ' + coordinates[0] + ', '
+ coordinates[1] + '\r\n' + orderDesc.value;
}
else
{
string = BX.message('SOA_MAP_COORDS') + ': ' + coordinates[0] + ', ' + coordinates[1];
before = orderDesc.value.substring(0, ind);
after = orderDesc.value.substring(ind + string.length);
orderDesc.value = before + string + after;
}
}
});
this.propsMap.geoObjects.add(placeMark);
}
else
{
this.propsMap.geoObjects.get(0).geometry.setCoordinates([coordinates[0], coordinates[1]]);
}
}, this));
},
canUseRecommendList: function()
{
return (this.pickUpPointsJSON && this.pickUpPointsJSON.length);
},
getRecommendedStoreIds: function(geoLocation)
{
if (!geoLocation)
return [];
var storeIds = [];
var length = this.pickUpPointsJSON.length < this.pickUpOptions.nearestPickUpsToShow
? this.pickUpPointsJSON.length
: this.pickUpOptions.nearestPickUpsToShow;
this.storeQueryResult = {};
for (var i = 0; i < length; i++)
{
var pointsGeoQuery = ymaps.geoQuery({
type: 'FeatureCollection',
features: this.pickUpPointsJSON
});
var res = pointsGeoQuery.getClosestTo(geoLocation);
var storeId = res.properties.get('storeId');
this.storeQueryResult[storeId] = res;
storeIds.push(storeId);
this.pickUpPointsJSON.splice(pointsGeoQuery.indexOf(res), 1);
}
return storeIds;
},
getDistance: function(geoLocation, storeId)
{
if (!geoLocation || !storeId)
return false;
var storeGeoQuery = this.storeQueryResult[storeId];
var distance = ymaps.coordSystem.geo.getDistance(geoLocation.geometry.getCoordinates(), storeGeoQuery.geometry.getCoordinates());
distance = Math.round(distance / 100) / 10;
return distance;
},
propsMapFocusWaiter: function(){},
getStoreInfoHtml: function(currentStore)
{
var html = '';
if (currentStore.ADDRESS)
html += BX.message('SOA_PICKUP_ADDRESS') + ': ' + BX.util.htmlspecialchars(currentStore.ADDRESS) + '<br />';
if (currentStore.PHONE)
html += BX.message('SOA_PICKUP_PHONE') + ': ' + BX.util.htmlspecialchars(currentStore.PHONE) + '<br />';
if (currentStore.SCHEDULE)
html += BX.message('SOA_PICKUP_WORK') + ': ' + BX.util.htmlspecialchars(currentStore.SCHEDULE) + '<br />';
if (currentStore.DESCRIPTION)
html += BX.message('SOA_PICKUP_DESC') + ': ' + BX.util.htmlspecialchars(currentStore.DESCRIPTION) + '<br />';
return html;
}
};
})();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,444 @@
/*
* Project:----------Store-2013
* Component---------CART_PAGE
* Last Refactoring:-31.10.2013
*
* @version:---------13.10.31[r1704]
*/
/*.bx_ordercart .bx_sort_container{
margin-bottom:15px;
min-height:32px;
color:#919191;
vertical-align:middle;
font-size:15px;
line-height:32px;
}
.bx_ordercart .bx_sort_container a{
display:inline-block;
margin-left:20px;
padding:0 20px;
border:1px solid #cdcdcd;
border-radius:3px;
background:#f9f9f9;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlM2UzZTMiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#e3e3e3));
background:-webkit-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: -moz-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: -ms-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: -o-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: linear-gradient(to bottom, #f9f9f9 0%,#e3e3e3 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#e3e3e3',GradientType=0 );
color:#4f4f4f;
text-decoration:none;
text-shadow:0 1px 0 rgba(255,255,255,.8);
line-height:32px;
}*/
.bx_ordercart .bx_sort_container a:hover{
background:#f9f9f9;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZGVkZWQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#ededed));
background:-webkit-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: -moz-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: -ms-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: -o-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: linear-gradient(to bottom, #f9f9f9 0%,#ededed 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#ededed',GradientType=0 );
}
.bx_ordercart .bx_sort_container a:active{
background:#707070;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzcwNzA3MCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNhMmEyYTIiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#707070), color-stop(100%,#a2a2a2));
background:-webkit-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: -moz-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: -ms-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: -o-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: linear-gradient(to bottom, #707070 0%,#a2a2a2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#707070', endColorstr='#a2a2a2',GradientType=0 );
box-shadow:inset 0 1px 2px 0 #3e3e3e;
color:#fff;
text-shadow:0 1px 0 #505050;
}
.bx_ordercart .bx_ordercart_order_table_container{
overflow-x:auto;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
margin:0;
padding:0;
width:100%;
border:1px solid #c9c9c9;
border-radius:3px;
font-size:14px;
}
.bx_ordercart .bx_ordercart_order_table_container table{
margin:0;
padding:0;
min-width:100%;
border-collapse:collapse;
}
.bx_ordercart .bx_ordercart_order_table_container table td{
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
white-space:nowrap;
}
.bx_ordercart .bx_ordercart_order_table_container table td.margin{
padding:0;
width:2%;
border-bottom:none !important;
}
.bx_ordercart .bx_ordercart_order_table_container table thead td{
padding:0 5px;
min-height:39px;
background:#f5f5f5;
color:#000;
font-size:14px;
line-height:39px;
}
.bx_ordercart .bx_ordercart_order_table_container table tbody td{
padding:2% 1%;
border-bottom:1px solid #e5e5e5;
vertical-align:top;
}
.bx_ordercart .bx_ordercart_order_table_container table tbody tr:last-child td{border-bottom:none;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.itemphoto{width:20%;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.item,
.bx_ordercart .bx_ordercart_order_table_container tbody td.custom,
/*.bx_ordercart .bx_ordercart_order_table_container tbody td.control,*/
.bx_ordercart .bx_ordercart_order_table_container tbody td.price{
text-align:left;
font-size:16px;
line-height:22px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.custom span{display:none;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.item{width:70%;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{
color:#000;
font-weight:bold;
font-size:17px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .old_price{
color:#b8b8b8;
text-decoration:line-through;
font-size:13px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price{
color:#7f7f7f;
font-size:11px;
line-height:13px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price_value{
font-size:11px;
line-height:13px;
}
/*.bx_ordercart .bx_ordercart_order_table_container tbody td.control a{
color:#327ab7;
font-size:11px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.control a:hover{text-decoration:none;}*/
.bx_ordercart .bx_ordercart_photo_container{
position:relative;
padding-top:100%;
min-width:50px;
max-width:100%;
height:0;
border:1px solid #c0cfda;
border-radius:2px;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_photo{
position:absolute;
top: 4%;
right: 4%;
bottom:4%;
left: 4%;
background-position:center;
-webkit-background-size:auto 100%;
background-size:auto 100%;
background-repeat:no-repeat;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand{
position:relative;
margin-top:3%;
min-width:50px;
max-width:100%;
border:1px solid #c0cfda;
border-radius:2px;
line-height:0;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand img{
margin:0;
padding:0;
width:100%;
height:auto;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle{
margin:0;
padding:0;
white-space:normal;
line-height:18px;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a{
color:#000;
text-decoration:none;
font-weight:bold;
font-size:16px;
line-height:16px;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemart{
margin-bottom:10px;
color:#b4b4b4;
font-size:13px;
}
.bx-touch .bx_ordercart td.custom .centered,
.bx-no-touch .bx_ordercart td.custom .some-class{display: none}
.bx_ordercart .bx_ordercart_order_pay{
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
margin:20px auto 0;
padding:0 20px;
}
/*.bx_ordercart .bx_ordercart_order_pay_left{
float:left;
width:50%;
}*/
/*.bx_ordercart .bx_ordercart_order_pay_right{
float:left;
width:50%;
text-align:right;
}*/
/*.bx_ordercart .bx_ordercart_coupon{ }*/
/*.bx_ordercart .bx_ordercart_coupon span{
display:block;
margin-bottom:13px;
color:#7f7f7f;
font-size:13px;
}*/
/*.bx_ordercart .bx_ordercart_coupon input{
height:34px;
border:1px solid #bababa;
border-radius:3px;
box-shadow:inset 0 1px 2px 0 rgba(0,0,0,.21);
color:#000;
text-align:center;
font-weight:bold;
font-size:16px;
line-height:34px;
}*/
/*.bx_ordercart .bx_ordercart_coupon input.good{
border:1px solid #59a62a;
background:rgba(89,166,42,.16);
box-shadow:0 0 2px 0 rgba(89,166,42,.8);
}*/
/*.bx_ordercart .bx_ordercart_coupon input.bad{
border:1px solid #e16565;
background:rgba(225,101,101,.16);
box-shadow:0 0 2px 0 rgba(225,101,101,.8);
}*/
.bx_ordercart .bx_ordercart_order_sum{float:right;}
.bx_ordercart .bx_ordercart_order_sum tr{ }
.bx_ordercart .bx_ordercart_order_sum tr td{
padding:1px;
text-align:right;
font-size:13px;
}
.bx_ordercart .bx_ordercart_order_sum tr td.custom_t1{width:100%;}
.bx_ordercart .bx_ordercart_order_sum tr td.custom_t2{white-space:nowrap;}
.bx_ordercart .bx_ordercart_order_sum tr td.fwb{font-weight:bold;}
.bx_ordercart_order_pay_center{
margin-top:20px;
padding-top:20px;
border-top:1px solid #e4e6e8;
text-align:right;
}
.bx_ordercart_order_pay_center span,
.bx_ordercart_order_pay_center a{
vertical-align:top;
line-height:53px;
}
.bx_ordercart_order_pay_center span{
margin:0 30px;
font-weight:bold;
font-size:17px;
}
.bx_ordercart_order_pay_center .checkout{
position:relative;
top:-9px;
display:inline-block;
padding:0 18px;
border-radius:3px;
background:#00a2df;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYTJkZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDZmY2IiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#00a2df), color-stop(100%,#006fcb));
background:-webkit-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: -moz-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: -ms-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: -o-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: linear-gradient(to bottom, #00a2df 0%,#006fcb 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a2df', endColorstr='#006fcb',GradientType=0 );
color:#fff;
vertical-align:bottom;
text-decoration:none;
text-shadow:0 1px 0 #0075b6;
font-weight:bold;
line-height:36px;
}
.bx_ordercart_order_pay_center .checkout:hover{
background:#00a2df;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYTJkZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwYTdkZGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#00a2df), color-stop(100%,#0a7ddd));
background:-webkit-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: -moz-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: -ms-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: -o-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: linear-gradient(to bottom, #00a2df 0%,#0a7ddd 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a2df', endColorstr='#0a7ddd',GradientType=0 );
}
.bx_ordercart_order_pay_center .checkout:active{
background:#0a7ddd;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzBhN2RkZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMGEyZGYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#0a7ddd), color-stop(100%,#00a2df));
background:-webkit-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: -moz-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: -ms-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: -o-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: linear-gradient(to bottom, #0a7ddd 0%,#00a2df 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0a7ddd', endColorstr='#00a2df',GradientType=0 );
box-shadow:inset 0 3px 2px 1px rgba(0,0,0,.22);
}
@media (max-width:980px){
.bx-touch .bx_ordercart .bx_sort_container span{display:block;}
.bx-touch .bx_ordercart .bx_sort_container a{margin:0 20px 10px 0;}
.bx_ordercart .bx_ordercart_order_table_container table thead td{font-size:13px;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.custom,
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a,
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{font-size:14px;}
}
@media (max-width:680px){
.bx_ordercart .bx_ordercart_order_table_container table thead td{font-size:12px;}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a,
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{font-size:12px;}
}
@media (max-width:600px){
.bx-touch .bx_ordercart .bx_ordercart_order_pay{width:100%;}
/*.bx-touch .bx_ordercart .bx_ordercart_order_pay_left,*/
.bx-touch .bx_ordercart .bx_ordercart_order_pay_right{
float:none;
width:100%;
text-align:center;
}
.bx-touch .bx_ordercart .bx_ordercart_order_sum{
float:none;
margin-top:20px;
width:100%;
}
}
@media (max-width:530px){
.bx-touch .bx_ordercart .bx_sort_container{
margin:10px 0;
text-align:left;
line-height:13px;
}
.bx-touch .bx_ordercart .bx_sort_container a{
display:inline;
margin:0 10px 0 0;
padding:0;
border:none;
background:none;
color:#327ab7;
text-decoration:underline;
font-size:13px;
}
.bx-touch .bx_ordercart .bx_sort_container a:hover{text-decoration:none;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td{display:block}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td{padding:2% 6%}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr{
margin-bottom:20px;
border-bottom:3px double #c9c9c9;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr:last-child{
margin-bottom:0;
border-bottom:none;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table thead{display:none;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td.item,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td.itemphoto{width:100%;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td.item{padding-bottom:20px;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.item .bx_item_detail_size_small_noadaptive,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.item .bx_item_detail_scu_small_noadaptive{margin:5px auto !important;}
.bx-touch .bx_ordercart .bx_ordercart_photo_container{
margin:0 auto;
padding-top:50%;
max-width:250px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand {
border:none;
text-align:center;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand img {
max-width:100%;
width:auto;
border-radius:2px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody td{border:none}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.custom span{
display:inline-block;
margin-right:10px;
font-weight:bold;
}
/*.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.control{text-align:center;word-spacing:15px;}*/
/*.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.control br{display:none}*/
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price{
padding-top:20px;
text-align:center;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{
margin-top:10px;
margin-bottom:10px;
font-size:28px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .old_price{
margin-left:10px;
font-size:19px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price_value{display:inline-block;}
}
@media (max-width:490px){
.bx-touch .bx_ordercart_order_pay_center{
margin-bottom:40px;
text-align:center;
}
.bx-touch .bx_ordercart_order_pay_center span{display:block;}
.bx-touch .bx_ordercart_order_pay_center .checkout{top:0;}
}
.bx_ordercart .bx_ordercart_order_pay,
.bx_ordercart .bx_ordercart_order_sum,
/*.bx_ordercart .bx_ordercart_order_pay_left,*/
.bx_ordercart .bx_ordercart_order_pay_right,
.bx_ordercart_order_pay_center,
.bx_ordercart_order_pay_center span,
.bx_ordercart_order_pay_center .checkout,
.bx_ordercart .bx_ordercart_order_table_container table,
.bx_ordercart .bx_ordercart_order_table_container table tbody,
.bx_ordercart .bx_ordercart_order_table_container table tbody tr,
.bx_ordercart .bx_ordercart_order_table_container table tbody tr td,
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a,
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price
{
-webkit-transition:all 0.3s ease;
-moz-transition:all 0.3s ease;
-ms-transition:all 0.3s ease;
-o-transition:all 0.3s ease;
transition:all 0.3s ease;
}

View file

@ -0,0 +1,671 @@
<? if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) {
die();
}
use Bitrix\Main;
use Bitrix\Main\Localization\Loc;
use Bitrix\Sale\Location\TypeTable;
use Bitrix\Sale\PropertyValueCollection;
/**
* @var array $arParams
* @var array $arResult
* @var CMain $APPLICATION
* @var CUser $USER
* @var SaleOrderAjax $component
* @var string $templateFolder
*/
$context = Main\Application::getInstance()->getContext();
$request = $context->getRequest();
if (empty($arParams['TEMPLATE_THEME'])) {
$arParams['TEMPLATE_THEME'] = Main\ModuleManager::isModuleInstalled('bitrix.eshop') ? 'site' : 'blue';
}
if ($arParams['TEMPLATE_THEME'] === 'site') {
$templateId = Main\Config\Option::get('main', 'wizard_template_id', 'eshop_bootstrap', $component->getSiteId());
$templateId = preg_match('/^eshop_adapt/', $templateId) ? 'eshop_adapt' : $templateId;
$arParams['TEMPLATE_THEME'] = Main\Config\Option::get('main', 'wizard_' . $templateId . '_theme_id', 'blue', $component->getSiteId());
}
if (!empty($arParams['TEMPLATE_THEME'])) {
if (!is_file(Main\Application::getDocumentRoot() . '/bitrix/css/main/themes/' . $arParams['TEMPLATE_THEME'] . '/style.css')) {
$arParams['TEMPLATE_THEME'] = 'blue';
}
}
$arParams['ALLOW_USER_PROFILES'] = $arParams['ALLOW_USER_PROFILES'] === 'Y' ? 'Y' : 'N';
$arParams['SKIP_USELESS_BLOCK'] = $arParams['SKIP_USELESS_BLOCK'] === 'N' ? 'N' : 'Y';
if (!isset($arParams['SHOW_ORDER_BUTTON'])) {
$arParams['SHOW_ORDER_BUTTON'] = 'final_step';
}
$arParams['HIDE_ORDER_DESCRIPTION'] = isset($arParams['HIDE_ORDER_DESCRIPTION']) && $arParams['HIDE_ORDER_DESCRIPTION'] === 'Y' ? 'Y' : 'N';
$arParams['SHOW_TOTAL_ORDER_BUTTON'] = $arParams['SHOW_TOTAL_ORDER_BUTTON'] === 'Y' ? 'Y' : 'N';
$arParams['SHOW_PAY_SYSTEM_LIST_NAMES'] = $arParams['SHOW_PAY_SYSTEM_LIST_NAMES'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_PAY_SYSTEM_INFO_NAME'] = $arParams['SHOW_PAY_SYSTEM_INFO_NAME'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_DELIVERY_LIST_NAMES'] = $arParams['SHOW_DELIVERY_LIST_NAMES'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_DELIVERY_INFO_NAME'] = $arParams['SHOW_DELIVERY_INFO_NAME'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_DELIVERY_PARENT_NAMES'] = $arParams['SHOW_DELIVERY_PARENT_NAMES'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_STORES_IMAGES'] = $arParams['SHOW_STORES_IMAGES'] === 'N' ? 'N' : 'Y';
if (!isset($arParams['BASKET_POSITION']) || !in_array($arParams['BASKET_POSITION'], ['before', 'after'])) {
$arParams['BASKET_POSITION'] = 'after';
}
$arParams['EMPTY_BASKET_HINT_PATH'] = isset($arParams['EMPTY_BASKET_HINT_PATH']) ? (string)$arParams['EMPTY_BASKET_HINT_PATH'] : '/';
$arParams['SHOW_BASKET_HEADERS'] = $arParams['SHOW_BASKET_HEADERS'] === 'Y' ? 'Y' : 'N';
$arParams['HIDE_DETAIL_PAGE_URL'] = isset($arParams['HIDE_DETAIL_PAGE_URL']) && $arParams['HIDE_DETAIL_PAGE_URL'] === 'Y' ? 'Y' : 'N';
$arParams['DELIVERY_FADE_EXTRA_SERVICES'] = $arParams['DELIVERY_FADE_EXTRA_SERVICES'] === 'Y' ? 'Y' : 'N';
$arParams['SHOW_COUPONS'] = isset($arParams['SHOW_COUPONS']) && $arParams['SHOW_COUPONS'] === 'N' ? 'N' : 'Y';
if ($arParams['SHOW_COUPONS'] === 'N') {
$arParams['SHOW_COUPONS_BASKET'] = 'N';
$arParams['SHOW_COUPONS_DELIVERY'] = 'N';
$arParams['SHOW_COUPONS_PAY_SYSTEM'] = 'N';
} else {
$arParams['SHOW_COUPONS_BASKET'] = isset($arParams['SHOW_COUPONS_BASKET']) && $arParams['SHOW_COUPONS_BASKET'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_COUPONS_DELIVERY'] = isset($arParams['SHOW_COUPONS_DELIVERY']) && $arParams['SHOW_COUPONS_DELIVERY'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_COUPONS_PAY_SYSTEM'] = isset($arParams['SHOW_COUPONS_PAY_SYSTEM']) && $arParams['SHOW_COUPONS_PAY_SYSTEM'] === 'N' ? 'N' : 'Y';
}
$arParams['SHOW_NEAREST_PICKUP'] = $arParams['SHOW_NEAREST_PICKUP'] === 'Y' ? 'Y' : 'N';
$arParams['DELIVERIES_PER_PAGE'] = isset($arParams['DELIVERIES_PER_PAGE']) ? intval($arParams['DELIVERIES_PER_PAGE']) : 9;
$arParams['PAY_SYSTEMS_PER_PAGE'] = isset($arParams['PAY_SYSTEMS_PER_PAGE']) ? intval($arParams['PAY_SYSTEMS_PER_PAGE']) : 9;
$arParams['PICKUPS_PER_PAGE'] = isset($arParams['PICKUPS_PER_PAGE']) ? intval($arParams['PICKUPS_PER_PAGE']) : 5;
$arParams['SHOW_PICKUP_MAP'] = $arParams['SHOW_PICKUP_MAP'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_MAP_IN_PROPS'] = $arParams['SHOW_MAP_IN_PROPS'] === 'Y' ? 'Y' : 'N';
$arParams['USE_YM_GOALS'] = $arParams['USE_YM_GOALS'] === 'Y' ? 'Y' : 'N';
$arParams['USE_ENHANCED_ECOMMERCE'] = isset($arParams['USE_ENHANCED_ECOMMERCE']) && $arParams['USE_ENHANCED_ECOMMERCE'] === 'Y' ? 'Y' : 'N';
$arParams['DATA_LAYER_NAME'] = isset($arParams['DATA_LAYER_NAME']) ? trim($arParams['DATA_LAYER_NAME']) : 'dataLayer';
$arParams['BRAND_PROPERTY'] = isset($arParams['BRAND_PROPERTY']) ? trim($arParams['BRAND_PROPERTY']) : '';
$useDefaultMessages = !isset($arParams['USE_CUSTOM_MAIN_MESSAGES']) || $arParams['USE_CUSTOM_MAIN_MESSAGES'] != 'Y';
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_BLOCK_NAME'])) {
$arParams['MESS_AUTH_BLOCK_NAME'] = Loc::getMessage('AUTH_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REG_BLOCK_NAME'])) {
$arParams['MESS_REG_BLOCK_NAME'] = Loc::getMessage('REG_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_BASKET_BLOCK_NAME'])) {
$arParams['MESS_BASKET_BLOCK_NAME'] = Loc::getMessage('BASKET_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REGION_BLOCK_NAME'])) {
$arParams['MESS_REGION_BLOCK_NAME'] = Loc::getMessage('REGION_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PAYMENT_BLOCK_NAME'])) {
$arParams['MESS_PAYMENT_BLOCK_NAME'] = Loc::getMessage('PAYMENT_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_DELIVERY_BLOCK_NAME'])) {
$arParams['MESS_DELIVERY_BLOCK_NAME'] = Loc::getMessage('DELIVERY_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_BUYER_BLOCK_NAME'])) {
$arParams['MESS_BUYER_BLOCK_NAME'] = Loc::getMessage('BUYER_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_BACK'])) {
$arParams['MESS_BACK'] = Loc::getMessage('BACK_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_FURTHER'])) {
$arParams['MESS_FURTHER'] = Loc::getMessage('FURTHER_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_EDIT'])) {
$arParams['MESS_EDIT'] = Loc::getMessage('EDIT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ORDER'])) {
$arParams['MESS_ORDER'] = $arParams['~MESS_ORDER'] = Loc::getMessage('ORDER_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PRICE'])) {
$arParams['MESS_PRICE'] = Loc::getMessage('PRICE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PERIOD'])) {
$arParams['MESS_PERIOD'] = Loc::getMessage('PERIOD_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_NAV_BACK'])) {
$arParams['MESS_NAV_BACK'] = Loc::getMessage('NAV_BACK_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_NAV_FORWARD'])) {
$arParams['MESS_NAV_FORWARD'] = Loc::getMessage('NAV_FORWARD_DEFAULT');
}
$useDefaultMessages = !isset($arParams['USE_CUSTOM_ADDITIONAL_MESSAGES']) || $arParams['USE_CUSTOM_ADDITIONAL_MESSAGES'] != 'Y';
if ($useDefaultMessages || !isset($arParams['MESS_PRICE_FREE'])) {
$arParams['MESS_PRICE_FREE'] = Loc::getMessage('PRICE_FREE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ECONOMY'])) {
$arParams['MESS_ECONOMY'] = Loc::getMessage('ECONOMY_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REGISTRATION_REFERENCE'])) {
$arParams['MESS_REGISTRATION_REFERENCE'] = Loc::getMessage('REGISTRATION_REFERENCE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_REFERENCE_1'])) {
$arParams['MESS_AUTH_REFERENCE_1'] = Loc::getMessage('AUTH_REFERENCE_1_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_REFERENCE_2'])) {
$arParams['MESS_AUTH_REFERENCE_2'] = Loc::getMessage('AUTH_REFERENCE_2_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_REFERENCE_3'])) {
$arParams['MESS_AUTH_REFERENCE_3'] = Loc::getMessage('AUTH_REFERENCE_3_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ADDITIONAL_PROPS'])) {
$arParams['MESS_ADDITIONAL_PROPS'] = Loc::getMessage('ADDITIONAL_PROPS_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_USE_COUPON'])) {
$arParams['MESS_USE_COUPON'] = Loc::getMessage('USE_COUPON_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_COUPON'])) {
$arParams['MESS_COUPON'] = Loc::getMessage('COUPON_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PERSON_TYPE'])) {
$arParams['MESS_PERSON_TYPE'] = Loc::getMessage('PERSON_TYPE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_SELECT_PROFILE'])) {
$arParams['MESS_SELECT_PROFILE'] = Loc::getMessage('SELECT_PROFILE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REGION_REFERENCE'])) {
$arParams['MESS_REGION_REFERENCE'] = Loc::getMessage('REGION_REFERENCE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PICKUP_LIST'])) {
$arParams['MESS_PICKUP_LIST'] = Loc::getMessage('PICKUP_LIST_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_NEAREST_PICKUP_LIST'])) {
$arParams['MESS_NEAREST_PICKUP_LIST'] = Loc::getMessage('NEAREST_PICKUP_LIST_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_SELECT_PICKUP'])) {
$arParams['MESS_SELECT_PICKUP'] = Loc::getMessage('SELECT_PICKUP_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_INNER_PS_BALANCE'])) {
$arParams['MESS_INNER_PS_BALANCE'] = Loc::getMessage('INNER_PS_BALANCE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ORDER_DESC'])) {
$arParams['MESS_ORDER_DESC'] = Loc::getMessage('ORDER_DESC_DEFAULT');
}
$useDefaultMessages = !isset($arParams['USE_CUSTOM_ERROR_MESSAGES']) || $arParams['USE_CUSTOM_ERROR_MESSAGES'] != 'Y';
if ($useDefaultMessages || !isset($arParams['MESS_PRELOAD_ORDER_TITLE'])) {
$arParams['MESS_PRELOAD_ORDER_TITLE'] = Loc::getMessage('PRELOAD_ORDER_TITLE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_SUCCESS_PRELOAD_TEXT'])) {
$arParams['MESS_SUCCESS_PRELOAD_TEXT'] = Loc::getMessage('SUCCESS_PRELOAD_TEXT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_FAIL_PRELOAD_TEXT'])) {
$arParams['MESS_FAIL_PRELOAD_TEXT'] = Loc::getMessage('FAIL_PRELOAD_TEXT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_DELIVERY_CALC_ERROR_TITLE'])) {
$arParams['MESS_DELIVERY_CALC_ERROR_TITLE'] = Loc::getMessage('DELIVERY_CALC_ERROR_TITLE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_DELIVERY_CALC_ERROR_TEXT'])) {
$arParams['MESS_DELIVERY_CALC_ERROR_TEXT'] = Loc::getMessage('DELIVERY_CALC_ERROR_TEXT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PAY_SYSTEM_PAYABLE_ERROR'])) {
$arParams['MESS_PAY_SYSTEM_PAYABLE_ERROR'] = Loc::getMessage('PAY_SYSTEM_PAYABLE_ERROR_DEFAULT');
}
$scheme = $request->isHttps() ? 'https' : 'http';
switch (LANGUAGE_ID) {
case 'ru':
$locale = 'ru-RU';
break;
case 'ua':
$locale = 'ru-UA';
break;
case 'tk':
$locale = 'tr-TR';
break;
default:
$locale = 'en-US';
break;
}
$this->addExternalCss('/bitrix/css/main/bootstrap.css');
$APPLICATION->SetAdditionalCSS('/bitrix/css/main/themes/' . $arParams['TEMPLATE_THEME'] . '/style.css', true);
$APPLICATION->SetAdditionalCSS($templateFolder . '/style.css', true);
$this->addExternalJs($templateFolder . '/order_ajax.js');
PropertyValueCollection::initJs();
$this->addExternalJs($templateFolder . '/script.js');
$this->addExternalJs($templateFolder . '/scripts/lodash.js');
$this->addExternalJs($templateFolder . '/scripts/intaro.js');
?>
<NOSCRIPT>
<div style="color:red"><?=Loc::getMessage('SOA_NO_JS')?></div>
</NOSCRIPT>
<?
if (strlen($request->get('ORDER_ID')) > 0) {
include(Main\Application::getDocumentRoot() . $templateFolder . '/confirm.php');
} elseif ($arParams['DISABLE_BASKET_REDIRECT'] === 'Y' && $arResult['SHOW_EMPTY_BASKET']) {
include(Main\Application::getDocumentRoot() . $templateFolder . '/empty.php');
} else {
Main\UI\Extension::load('phone_auth');
$hideDelivery = empty($arResult['DELIVERY']);
?>
<form action="<?=POST_FORM_ACTION_URI?>" method="POST" name="ORDER_FORM" id="bx-soa-order-form" enctype="multipart/form-data">
<?
echo bitrix_sessid_post();
if (strlen($arResult['PREPAY_ADIT_FIELDS']) > 0) {
echo $arResult['PREPAY_ADIT_FIELDS'];
}
?>
<input type="hidden" name="<?=$arParams['ACTION_VARIABLE']?>" value="saveOrderAjax">
<input type="hidden" name="location_type" value="code">
<input type="hidden" name="BUYER_STORE" id="BUYER_STORE" value="<?=$arResult['BUYER_STORE']?>">
<div id="bx-soa-order" class="row bx-<?=$arParams['TEMPLATE_THEME']?>" style="opacity: 0">
<!-- MAIN BLOCK -->
<div class="col-sm-9 bx-soa">
<div id="bx-soa-main-notifications">
<div class="alert alert-danger" style="display:none"></div>
<div data-type="informer" style="display:none"></div>
</div>
<!-- AUTH BLOCK -->
<div id="bx-soa-auth" class="bx-soa-section bx-soa-auth" style="display:none">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_AUTH_BLOCK_NAME']?>
</h2>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- DUPLICATE MOBILE ORDER SAVE BLOCK -->
<div id="bx-soa-total-mobile" style="margin-bottom: 6px;"></div>
<? if ($arParams['BASKET_POSITION'] === 'before'): ?>
<!-- BASKET ITEMS BLOCK -->
<div id="bx-soa-basket" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_BASKET_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="javascript:void(0)" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? endif ?>
<!-- REGION BLOCK -->
<div id="bx-soa-region" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_REGION_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? if ($arParams['DELIVERY_TO_PAYSYSTEM'] === 'p2d'): ?>
<!-- PAY SYSTEMS BLOCK -->
<div id="bx-soa-paysystem" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_PAYMENT_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- DELIVERY BLOCK -->
<div id="bx-soa-delivery" data-visited="false" class="bx-soa-section bx-active" <?=($hideDelivery ? 'style="display:none"' : '')?>>
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_DELIVERY_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- PICKUP BLOCK -->
<div id="bx-soa-pickup" data-visited="false" class="bx-soa-section" style="display:none">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? else: ?>
<!-- DELIVERY BLOCK -->
<div id="bx-soa-delivery" data-visited="false" class="bx-soa-section bx-active" <?=($hideDelivery ? 'style="display:none"' : '')?>>
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_DELIVERY_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- PICKUP BLOCK -->
<div id="bx-soa-pickup" data-visited="false" class="bx-soa-section" style="display:none">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- PAY SYSTEMS BLOCK -->
<div id="bx-soa-paysystem" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_PAYMENT_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? endif ?>
<!-- BUYER PROPS BLOCK -->
<div id="bx-soa-properties" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_BUYER_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? if ($arParams['BASKET_POSITION'] === 'after'): ?>
<!-- BASKET ITEMS BLOCK -->
<div id="bx-soa-basket" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_BASKET_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="javascript:void(0)" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? endif ?>
<!-- INTARO BONUS BLOCK -->
<? if ($arResult['LOYALTY_STATUS'] === 'Y'): ?>
<div id="bx-soa-intaro" data-visited="true" class="bx-soa-section bx-selected">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span> Оплата бонусами
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="javascript:void(0)" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid" id="bx-soa-intaro-content">
<div class="bx-soa-coupon">
Сколько бонусов потратить:
<div class="bx-soa-coupon-block">
<div class="bx-input"><input class="form-control" type="text" id='bonus-input'>
<a href="javascript:void(0)" class="pull-right btn btn-default btn-md" onclick="updateOrder()">Пересчитать</a>
</div>
</div>
<div class="bx-soa-coupon-label">Доступно бонусов: <label id="available-bonuses"><?= $arResult['AVAILABLE_BONUSES']?></label></div>
</div>
</div>
<? endif ?>
<!-- ORDER SAVE BLOCK -->
<div id="bx-soa-orderSave">
<div class="checkbox">
<?
if ($arParams['USER_CONSENT'] === 'Y') {
$APPLICATION->IncludeComponent(
'bitrix:main.userconsent.request',
'',
[
'ID' => $arParams['USER_CONSENT_ID'],
'IS_CHECKED' => $arParams['USER_CONSENT_IS_CHECKED'],
'IS_LOADED' => $arParams['USER_CONSENT_IS_LOADED'],
'AUTO_SAVE' => 'N',
'SUBMIT_EVENT_NAME' => 'bx-soa-order-save',
'REPLACE' => [
'button_caption' => isset($arParams['~MESS_ORDER']) ? $arParams['~MESS_ORDER'] : $arParams['MESS_ORDER'],
'fields' => $arResult['USER_CONSENT_PROPERTY_DATA'],
],
]
);
}
?>
</div>
<a href="javascript:void(0)" style="margin: 10px 0" class="pull-right btn btn-default btn-lg hidden-xs" data-save-button="true">
<?=$arParams['MESS_ORDER']?>
</a>
</div>
<div style="display: none;">
<div id='bx-soa-basket-hidden' class="bx-soa-section"></div>
<div id='bx-soa-region-hidden' class="bx-soa-section"></div>
<div id='bx-soa-paysystem-hidden' class="bx-soa-section"></div>
<div id='bx-soa-delivery-hidden' class="bx-soa-section"></div>
<div id='bx-soa-pickup-hidden' class="bx-soa-section"></div>
<div id="bx-soa-properties-hidden" class="bx-soa-section"></div>
<div id="bx-soa-auth-hidden" class="bx-soa-section">
<div class="bx-soa-section-content container-fluid reg"></div>
</div>
</div>
</div>
<!-- SIDEBAR BLOCK -->
<div id="bx-soa-total" class="col-sm-3 bx-soa-sidebar">
<div class="bx-soa-cart-total-ghost"></div>
<div class="bx-soa-cart-total"></div>
</div>
</div>
</form>
<div id="bx-soa-saved-files" style="display:none"></div>
<div id="bx-soa-soc-auth-services" style="display:none">
<?
$arServices = false;
$arResult['ALLOW_SOCSERV_AUTHORIZATION'] = Main\Config\Option::get('main', 'allow_socserv_authorization', 'Y') != 'N' ? 'Y' : 'N';
$arResult['FOR_INTRANET'] = false;
if (Main\ModuleManager::isModuleInstalled('intranet') || Main\ModuleManager::isModuleInstalled('rest')) {
$arResult['FOR_INTRANET'] = true;
}
if (Main\Loader::includeModule('socialservices') && $arResult['ALLOW_SOCSERV_AUTHORIZATION'] === 'Y') {
$oAuthManager = new CSocServAuthManager();
$arServices = $oAuthManager->GetActiveAuthServices([
'BACKURL' => $this->arParams['~CURRENT_PAGE'],
'FOR_INTRANET' => $arResult['FOR_INTRANET'],
]);
if (!empty($arServices)) {
$APPLICATION->IncludeComponent(
'bitrix:socserv.auth.form',
'flat',
[
'AUTH_SERVICES' => $arServices,
'AUTH_URL' => $arParams['~CURRENT_PAGE'],
'POST' => $arResult['POST'],
],
$component,
['HIDE_ICONS' => 'Y']
);
}
}
?>
</div>
<div style="display: none">
<?
// we need to have all styles for sale.location.selector.steps, but RestartBuffer() cuts off document head with styles in it
$APPLICATION->IncludeComponent(
'bitrix:sale.location.selector.steps',
'.default',
[],
false
);
$APPLICATION->IncludeComponent(
'bitrix:sale.location.selector.search',
'.default',
[],
false
);
?>
</div>
<?
$signer = new Main\Security\Sign\Signer;
$signedParams = $signer->sign(base64_encode(serialize($arParams)), 'sale.order.ajax');
$messages = Loc::loadLanguageFile(__FILE__);
?>
<script>
BX.message(<?=CUtil::PhpToJSObject($messages)?>);
BX.Sale.OrderAjaxComponent.init({
result: <?=CUtil::PhpToJSObject($arResult['JS_DATA'])?>,
locations: <?=CUtil::PhpToJSObject($arResult['LOCATIONS'])?>,
params: <?=CUtil::PhpToJSObject($arParams)?>,
signedParamsString: '<?=CUtil::JSEscape($signedParams)?>',
siteID: '<?=CUtil::JSEscape($component->getSiteId())?>',
ajaxUrl: '<?=CUtil::JSEscape($component->getPath() . '/ajax.php')?>',
templateFolder: '<?=CUtil::JSEscape($templateFolder)?>',
propertyValidation: true,
showWarnings: true,
pickUpMap: {
defaultMapPosition: {
lat: 55.76,
lon: 37.64,
zoom: 7
},
secureGeoLocation: false,
geoLocationMaxTime: 5000,
minToShowNearestBlock: 3,
nearestPickUpsToShow: 3
},
propertyMap: {
defaultMapPosition: {
lat: 55.76,
lon: 37.64,
zoom: 7
}
},
orderBlockId: 'bx-soa-order',
authBlockId: 'bx-soa-auth',
basketBlockId: 'bx-soa-basket',
regionBlockId: 'bx-soa-region',
paySystemBlockId: 'bx-soa-paysystem',
deliveryBlockId: 'bx-soa-delivery',
pickUpBlockId: 'bx-soa-pickup',
propsBlockId: 'bx-soa-properties',
totalBlockId: 'bx-soa-total',
loyaltyStatus: '<?=$arResult['LOYALTY_STATUS']?>'
});
</script>
<script>
<?
// spike: for children of cities we place this prompt
$city = TypeTable::getList(['filter' => ['=CODE' => 'CITY'], 'select' => ['ID']])->fetch();
?>
BX.saleOrderAjax.init(<?=CUtil::PhpToJSObject([
'source' => $component->getPath() . '/get.php',
'cityTypeId' => intval($city['ID']),
'messages' => [
'otherLocation' => '--- ' . Loc::getMessage('SOA_OTHER_LOCATION'),
'moreInfoLocation' => '--- ' . Loc::getMessage('SOA_NOT_SELECTED_ALT'), // spike: for children of cities we place this prompt
'notFoundPrompt' => '<div class="-bx-popup-special-prompt">' . Loc::getMessage('SOA_LOCATION_NOT_FOUND') . '.<br />' . Loc::getMessage('SOA_LOCATION_NOT_FOUND_PROMPT', [
'#ANCHOR#' => '<a href="javascript:void(0)" class="-bx-popup-set-mode-add-loc">',
'#ANCHOR_END#' => '</a>',
]) . '</div>',
],
])?>);
</script>
<?
if ($arParams['SHOW_PICKUP_MAP'] === 'Y' || $arParams['SHOW_MAP_IN_PROPS'] === 'Y') {
if ($arParams['PICKUP_MAP_TYPE'] === 'yandex') {
$this->addExternalJs($templateFolder . '/scripts/yandex_maps.js');
?>
<script src="<?=$scheme?>://api-maps.yandex.ru/2.1.50/?load=package.full&lang=<?=$locale?>"></script>
<script>
(function bx_ymaps_waiter() {
if (typeof ymaps !== 'undefined' && BX.Sale && BX.Sale.OrderAjaxComponent)
ymaps.ready(BX.proxy(BX.Sale.OrderAjaxComponent.initMaps, BX.Sale.OrderAjaxComponent));
else
setTimeout(bx_ymaps_waiter, 100);
})();
</script>
<?
}
if ($arParams['PICKUP_MAP_TYPE'] === 'google') {
$this->addExternalJs($templateFolder . '/scripts/google_maps.js');
$apiKey = htmlspecialcharsbx(Main\Config\Option::get('fileman', 'google_map_api_key', ''));
?>
<script async defer
src="<?=$scheme?>://maps.googleapis.com/maps/api/js?key=<?=$apiKey?>&callback=bx_gmaps_waiter">
</script>
<script>
function bx_gmaps_waiter() {
if (BX.Sale && BX.Sale.OrderAjaxComponent)
BX.Sale.OrderAjaxComponent.initMaps();
else
setTimeout(bx_gmaps_waiter, 100);
}
</script>
<?
}
}
if ($arParams['USE_YM_GOALS'] === 'Y') {
?>
<script>
(function bx_counter_waiter(i) {
i = i || 0;
if (i > 50)
return;
if (typeof window['yaCounter<?=$arParams['YM_GOALS_COUNTER']?>'] !== 'undefined')
BX.Sale.OrderAjaxComponent.reachGoal('initialization');
else
setTimeout(function() {
bx_counter_waiter(++i)
}, 100);
})();
</script>
<?
}
}

View file

@ -0,0 +1,785 @@
<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
use Bitrix\Main\Loader;
use Bitrix\Catalog;
use Bitrix\Iblock;
if (!Loader::includeModule('sale'))
return;
$arThemes = array();
if ($eshop = \Bitrix\Main\ModuleManager::isModuleInstalled('bitrix.eshop'))
{
$arThemes['site'] = GetMessage('THEME_SITE');
}
$arThemesList = array(
'blue' => GetMessage('THEME_BLUE'),
'green' => GetMessage('THEME_GREEN'),
'red' => GetMessage('THEME_RED'),
'yellow' => GetMessage('THEME_YELLOW')
);
$dir = $_SERVER["DOCUMENT_ROOT"]."/bitrix/css/main/themes/";
if (is_dir($dir))
{
foreach ($arThemesList as $themeID => $themeName)
{
if (!is_file($dir.$themeID.'/style.css'))
continue;
$arThemes[$themeID] = $themeName;
}
}
$arTemplateParameters = array(
"TEMPLATE_THEME" => array(
"NAME" => GetMessage("TEMPLATE_THEME"),
"TYPE" => "LIST",
'VALUES' => $arThemes,
'DEFAULT' => $eshop ? 'site' : 'blue',
"PARENT" => "VISUAL"
),
"SHOW_ORDER_BUTTON" => array(
"NAME" => GetMessage("SHOW_ORDER_BUTTON"),
"TYPE" => "LIST",
"VALUES" => array(
'final_step' => GetMessage("SHOW_FINAL_STEP"),
'always' => GetMessage("SHOW_ALWAYS")
),
"PARENT" => "VISUAL",
),
"SHOW_TOTAL_ORDER_BUTTON" => array(
"NAME" => GetMessage("SHOW_TOTAL_ORDER_BUTTON"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"SHOW_PAY_SYSTEM_LIST_NAMES" => array(
"NAME" => GetMessage("SHOW_PAY_SYSTEM_LIST_NAMES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_PAY_SYSTEM_INFO_NAME" => array(
"NAME" => GetMessage("SHOW_PAY_SYSTEM_INFO_NAME"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_DELIVERY_LIST_NAMES" => array(
"NAME" => GetMessage("SHOW_DELIVERY_LIST_NAMES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_DELIVERY_INFO_NAME" => array(
"NAME" => GetMessage("SHOW_DELIVERY_INFO_NAME"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_DELIVERY_PARENT_NAMES" => array(
"NAME" => GetMessage("DELIVERY_PARENT_NAMES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_STORES_IMAGES" => array(
"NAME" => GetMessage("SHOW_STORES_IMAGES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SKIP_USELESS_BLOCK" => array(
"NAME" => GetMessage("SKIP_USELESS_BLOCK"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"BASKET_POSITION" => array(
"NAME" => GetMessage("BASKET_POSITION"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
"after" => GetMessage("BASKET_POSITION_AFTER"),
"before" => GetMessage("BASKET_POSITION_BEFORE")
),
"DEFAULT" => "after",
"PARENT" => "VISUAL"
),
"SHOW_BASKET_HEADERS" => array(
"NAME" => GetMessage("SHOW_BASKET_HEADERS"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"DELIVERY_FADE_EXTRA_SERVICES" => array(
"NAME" => GetMessage("DELIVERY_FADE_EXTRA_SERVICES"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"SHOW_NEAREST_PICKUP" => array(
"NAME" => GetMessage("SHOW_NEAREST_PICKUP"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"PARENT" => "VISUAL",
),
"DELIVERIES_PER_PAGE" => array(
"NAME" => GetMessage("DELIVERIES_PER_PAGE"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "9",
"PARENT" => "VISUAL",
),
"PAY_SYSTEMS_PER_PAGE" => array(
"NAME" => GetMessage("PAY_SYSTEMS_PER_PAGE"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "9",
"PARENT" => "VISUAL",
),
"PICKUPS_PER_PAGE" => array(
"NAME" => GetMessage("PICKUPS_PER_PAGE"),
"TYPE" => "STRING",
"MULTIPLE" => "N",
"DEFAULT" => "5",
"PARENT" => "VISUAL",
),
"SHOW_PICKUP_MAP" => array(
"NAME" => GetMessage("SHOW_PICKUP_MAP"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
),
"SHOW_MAP_IN_PROPS" => array(
"NAME" => GetMessage("SHOW_MAP_IN_PROPS"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "VISUAL",
),
"PICKUP_MAP_TYPE" => array(
"NAME" => GetMessage("PICKUP_MAP_TYPE"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"VALUES" => array(
"yandex" => GetMessage("PICKUP_MAP_TYPE_YANDEX"),
"google" => GetMessage("PICKUP_MAP_TYPE_GOOGLE")
),
"DEFAULT" => "yandex",
"PARENT" => "VISUAL"
),
"SERVICES_IMAGES_SCALING" => array(
"NAME" => GetMessage("SERVICES_IMAGES_SCALING"),
"TYPE" => "LIST",
"VALUES" => array(
'standard' => GetMessage("SOA_STANDARD"),
'adaptive' => GetMessage("SOA_ADAPTIVE"),
'no_scale' => GetMessage("SOA_NO_SCALE")
),
"DEFAULT" => "adaptive",
"PARENT" => "ADDITIONAL_SETTINGS"
),
"PRODUCT_COLUMNS_HIDDEN" => array(
"NAME" => GetMessage("PRODUCT_COLUMNS_HIDDEN"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"COLS" => 25,
"SIZE" => 7,
"VALUES" => array(),
"DEFAULT" => array(),
"ADDITIONAL_VALUES" => "N",
"PARENT" => "ADDITIONAL_SETTINGS"
),
"HIDE_ORDER_DESCRIPTION" => array(
"NAME" => GetMessage("HIDE_ORDER_DESCRIPTION"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"PARENT" => "ADDITIONAL_SETTINGS"
),
"ALLOW_USER_PROFILES" => array(
"NAME" => GetMessage("ALLOW_USER_PROFILES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "BASE"
),
"ALLOW_NEW_PROFILE" => array(
"NAME" => GetMessage("ALLOW_NEW_PROFILE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"HIDDEN" => $arCurrentValues['ALLOW_USER_PROFILES'] !== 'Y' ? 'Y' : 'N',
"PARENT" => "BASE"
),
"SHOW_COUPONS" => array(
"NAME" => GetMessage("SHOW_COUPONS"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"REFRESH" => "Y",
"PARENT" => "VISUAL",
),
"USE_YM_GOALS" => array(
"NAME" => GetMessage("USE_YM_GOALS1"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"REFRESH" => "Y",
"PARENT" => "ANALYTICS_SETTINGS"
)
);
if (!isset($arCurrentValues['SHOW_COUPONS']) || $arCurrentValues['SHOW_COUPONS'] === 'Y')
{
$arTemplateParameters["SHOW_COUPONS_BASKET"] = [
"NAME" => GetMessage("SHOW_COUPONS_BASKET"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
];
$arTemplateParameters["SHOW_COUPONS_DELIVERY"] = [
"NAME" => GetMessage("SHOW_COUPONS_DELIVERY"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
];
$arTemplateParameters["SHOW_COUPONS_PAY_SYSTEM"] = [
"NAME" => GetMessage("SHOW_COUPONS_PAY_SYSTEM"),
"TYPE" => "CHECKBOX",
"MULTIPLE" => "N",
"DEFAULT" => "Y",
"PARENT" => "VISUAL",
];
}
if ($arCurrentValues['USE_YM_GOALS'] == 'Y')
{
$arTemplateParameters["YM_GOALS_COUNTER"] = array(
"NAME" => GetMessage("YM_GOALS_COUNTER"),
"TYPE" => "STRING",
"DEFAULT" => "",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_INITIALIZE"] = array(
"NAME" => GetMessage("YM_GOALS_INITIALIZE"),
"TYPE" => "STRING",
"DEFAULT" => "BX-order-init",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_REGION"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_REGION"),
"TYPE" => "STRING",
"DEFAULT" => "BX-region-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_DELIVERY"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_DELIVERY"),
"TYPE" => "STRING",
"DEFAULT" => "BX-delivery-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_PICKUP"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_PICKUP"),
"TYPE" => "STRING",
"DEFAULT" => "BX-pickUp-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_PAY_SYSTEM"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_PAY_SYSTEM"),
"TYPE" => "STRING",
"DEFAULT" => "BX-paySystem-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_PROPERTIES"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_PROPERTIES"),
"TYPE" => "STRING",
"DEFAULT" => "BX-properties-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_EDIT_BASKET"] = array(
"NAME" => GetMessage("YM_GOALS_EDIT_BASKET"),
"TYPE" => "STRING",
"DEFAULT" => "BX-basket-edit",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_REGION"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_REGION"),
"TYPE" => "STRING",
"DEFAULT" => "BX-region-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_DELIVERY"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_DELIVERY"),
"TYPE" => "STRING",
"DEFAULT" => "BX-delivery-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_PICKUP"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_PICKUP"),
"TYPE" => "STRING",
"DEFAULT" => "BX-pickUp-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_PAY_SYSTEM"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_PAY_SYSTEM"),
"TYPE" => "STRING",
"DEFAULT" => "BX-paySystem-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_PROPERTIES"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_PROPERTIES"),
"TYPE" => "STRING",
"DEFAULT" => "BX-properties-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_NEXT_BASKET"] = array(
"NAME" => GetMessage("YM_GOALS_NEXT_BASKET"),
"TYPE" => "STRING",
"DEFAULT" => "BX-basket-next",
"PARENT" => "ANALYTICS_SETTINGS"
);
$arTemplateParameters["YM_GOALS_SAVE_ORDER"] = array(
"NAME" => GetMessage("YM_GOALS_SAVE_ORDER"),
"TYPE" => "STRING",
"DEFAULT" => "BX-order-save",
"PARENT" => "ANALYTICS_SETTINGS"
);
}
$arTemplateParameters['USE_ENHANCED_ECOMMERCE'] = array(
'PARENT' => 'ANALYTICS_SETTINGS',
'NAME' => GetMessage('USE_ENHANCED_ECOMMERCE'),
'TYPE' => 'CHECKBOX',
'REFRESH' => 'Y',
'DEFAULT' => 'N'
);
if (isset($arCurrentValues['USE_ENHANCED_ECOMMERCE']) && $arCurrentValues['USE_ENHANCED_ECOMMERCE'] === 'Y')
{
if (Loader::includeModule('catalog'))
{
$arIblockIDs = array();
$arIblockNames = array();
$catalogIterator = Catalog\CatalogIblockTable::getList(array(
'select' => array('IBLOCK_ID', 'NAME' => 'IBLOCK.NAME'),
'order' => array('IBLOCK_ID' => 'ASC')
));
while ($catalog = $catalogIterator->fetch())
{
$catalog['IBLOCK_ID'] = (int)$catalog['IBLOCK_ID'];
$arIblockIDs[] = $catalog['IBLOCK_ID'];
$arIblockNames[$catalog['IBLOCK_ID']] = $catalog['NAME'];
}
unset($catalog, $catalogIterator);
if (!empty($arIblockIDs))
{
$arProps = array();
$propertyIterator = Iblock\PropertyTable::getList(array(
'select' => array('ID', 'CODE', 'NAME', 'IBLOCK_ID'),
'filter' => array('@IBLOCK_ID' => $arIblockIDs, '=ACTIVE' => 'Y', '!=XML_ID' => CIBlockPropertyTools::XML_SKU_LINK),
'order' => array('IBLOCK_ID' => 'ASC', 'SORT' => 'ASC', 'ID' => 'ASC')
));
while ($property = $propertyIterator->fetch())
{
$property['ID'] = (int)$property['ID'];
$property['IBLOCK_ID'] = (int)$property['IBLOCK_ID'];
$property['CODE'] = (string)$property['CODE'];
if ($property['CODE'] == '')
{
$property['CODE'] = $property['ID'];
}
if (!isset($arProps[$property['CODE']]))
{
$arProps[$property['CODE']] = array(
'CODE' => $property['CODE'],
'TITLE' => $property['NAME'].' ['.$property['CODE'].']',
'ID' => array($property['ID']),
'IBLOCK_ID' => array($property['IBLOCK_ID'] => $property['IBLOCK_ID']),
'IBLOCK_TITLE' => array($property['IBLOCK_ID'] => $arIblockNames[$property['IBLOCK_ID']]),
'COUNT' => 1
);
}
else
{
$arProps[$property['CODE']]['ID'][] = $property['ID'];
$arProps[$property['CODE']]['IBLOCK_ID'][$property['IBLOCK_ID']] = $property['IBLOCK_ID'];
if ($arProps[$property['CODE']]['COUNT'] < 2)
{
$arProps[$property['CODE']]['IBLOCK_TITLE'][$property['IBLOCK_ID']] = $arIblockNames[$property['IBLOCK_ID']];
}
$arProps[$property['CODE']]['COUNT']++;
}
}
unset($property, $propertyIterator, $arIblockNames, $arIblockIDs);
$propList = array();
foreach ($arProps as $property)
{
$iblockList = '';
if ($property['COUNT'] > 1)
{
$iblockList = ($property['COUNT'] > 2 ? ' ( ... )' : ' ('.implode(', ', $property['IBLOCK_TITLE']).')');
}
$propList['PROPERTY_'.$property['CODE']] = $property['TITLE'].$iblockList;
}
unset($property, $arProps);
}
}
$arTemplateParameters['DATA_LAYER_NAME'] = array(
'PARENT' => 'ANALYTICS_SETTINGS',
'NAME' => GetMessage('DATA_LAYER_NAME'),
'TYPE' => 'STRING',
'DEFAULT' => 'dataLayer'
);
if (!empty($propList))
{
$arTemplateParameters['BRAND_PROPERTY'] = array(
'PARENT' => 'ANALYTICS_SETTINGS',
'NAME' => GetMessage('BRAND_PROPERTY'),
'TYPE' => 'LIST',
'MULTIPLE' => 'N',
'DEFAULT' => '',
'VALUES' => array('' => '') + $propList
);
}
}
if ($arCurrentValues['SHOW_MAP_IN_PROPS'] == 'Y')
{
$arDelivery = array();
$services = Bitrix\Sale\Delivery\Services\Manager::getActiveList();
foreach ($services as $service)
{
$arDelivery[$service['ID']] = $service['NAME'];
}
$arTemplateParameters["SHOW_MAP_FOR_DELIVERIES"] = array(
"NAME" => GetMessage("SHOW_MAP_FOR_DELIVERIES"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arDelivery,
"DEFAULT" => "",
"COLS" => 25,
"ADDITIONAL_VALUES" => "N",
"PARENT" => "VISUAL"
);
}
$dbPerson = CSalePersonType::GetList(array("SORT" => "ASC", "NAME" => "ASC"), array('ACTIVE' => 'Y'));
while ($arPerson = $dbPerson->GetNext())
{
$arPers2Prop = array();
$dbProp = CSaleOrderProps::GetList(
array("SORT" => "ASC", "NAME" => "ASC"),
array("PERSON_TYPE_ID" => $arPerson["ID"], 'UTIL' => 'N')
);
while ($arProp = $dbProp->Fetch())
{
if ($arProp["IS_LOCATION"] == 'Y')
{
if (intval($arProp["INPUT_FIELD_LOCATION"]) > 0)
$altPropId = $arProp["INPUT_FIELD_LOCATION"];
continue;
}
$arPers2Prop[$arProp["ID"]] = $arProp["NAME"];
}
if (isset($altPropId))
unset($arPers2Prop[$altPropId]);
if (!empty($arPers2Prop))
{
$arTemplateParameters["PROPS_FADE_LIST_".$arPerson["ID"]] = array(
"NAME" => GetMessage("PROPS_FADE_LIST").' ('.$arPerson["NAME"].')'.'['.$arPerson["LID"].']',
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arPers2Prop,
"DEFAULT" => "",
"COLS" => 25,
"ADDITIONAL_VALUES" => "N",
"PARENT" => "VISUAL"
);
}
}
unset($arPerson, $dbPerson);
$arTemplateParameters["USE_CUSTOM_MAIN_MESSAGES"] = array(
"NAME" => GetMessage("USE_CUSTOM_MESSAGES"),
"TYPE" => "CHECKBOX",
"REFRESH" => 'Y',
"DEFAULT" => 'N',
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
if ($arCurrentValues['USE_CUSTOM_MAIN_MESSAGES'] == 'Y')
{
$arTemplateParameters["MESS_AUTH_BLOCK_NAME"] = array(
"NAME" => GetMessage("AUTH_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REG_BLOCK_NAME"] = array(
"NAME" => GetMessage("REG_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REG_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_BASKET_BLOCK_NAME"] = array(
"NAME" => GetMessage("BASKET_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("BASKET_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REGION_BLOCK_NAME"] = array(
"NAME" => GetMessage("REGION_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REGION_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PAYMENT_BLOCK_NAME"] = array(
"NAME" => GetMessage("PAYMENT_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PAYMENT_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_DELIVERY_BLOCK_NAME"] = array(
"NAME" => GetMessage("DELIVERY_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("DELIVERY_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_BUYER_BLOCK_NAME"] = array(
"NAME" => GetMessage("BUYER_BLOCK_NAME"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("BUYER_BLOCK_NAME_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_BACK"] = array(
"NAME" => GetMessage("BACK"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("BACK_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_FURTHER"] = array(
"NAME" => GetMessage("FURTHER"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("FURTHER_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_EDIT"] = array(
"NAME" => GetMessage("EDIT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("EDIT_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ORDER"] = array(
"NAME" => GetMessage("ORDER"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ORDER_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PRICE"] = array(
"NAME" => GetMessage("PRICE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PRICE_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PERIOD"] = array(
"NAME" => GetMessage("PERIOD"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PERIOD_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_NAV_BACK"] = array(
"NAME" => GetMessage("NAV_BACK"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("NAV_BACK_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_NAV_FORWARD"] = array(
"NAME" => GetMessage("NAV_FORWARD"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("NAV_FORWARD_DEFAULT"),
"PARENT" => "MAIN_MESSAGE_SETTINGS"
);
}
$arTemplateParameters["USE_CUSTOM_ADDITIONAL_MESSAGES"] = array(
"NAME" => GetMessage("USE_CUSTOM_MESSAGES"),
"TYPE" => "CHECKBOX",
"REFRESH" => 'Y',
"DEFAULT" => 'N',
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
if ($arCurrentValues['USE_CUSTOM_ADDITIONAL_MESSAGES'] == 'Y')
{
$arTemplateParameters["MESS_PRICE_FREE"] = array(
"NAME" => GetMessage("PRICE_FREE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PRICE_FREE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ECONOMY"] = array(
"NAME" => GetMessage("ECONOMY"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ECONOMY_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REGISTRATION_REFERENCE"] = array(
"NAME" => GetMessage("REGISTRATION_REFERENCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REGISTRATION_REFERENCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_AUTH_REFERENCE_1"] = array(
"NAME" => GetMessage("AUTH_REFERENCE_1"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_REFERENCE_1_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_AUTH_REFERENCE_2"] = array(
"NAME" => GetMessage("AUTH_REFERENCE_2"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_REFERENCE_2_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_AUTH_REFERENCE_3"] = array(
"NAME" => GetMessage("AUTH_REFERENCE_3"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("AUTH_REFERENCE_3_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ADDITIONAL_PROPS"] = array(
"NAME" => GetMessage("ADDITIONAL_PROPS"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ADDITIONAL_PROPS_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_USE_COUPON"] = array(
"NAME" => GetMessage("USE_COUPON"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("USE_COUPON_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_COUPON"] = array(
"NAME" => GetMessage("COUPON"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("COUPON_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PERSON_TYPE"] = array(
"NAME" => GetMessage("PERSON_TYPE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PERSON_TYPE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_SELECT_PROFILE"] = array(
"NAME" => GetMessage("SELECT_PROFILE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SELECT_PROFILE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_REGION_REFERENCE"] = array(
"NAME" => GetMessage("REGION_REFERENCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("REGION_REFERENCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PICKUP_LIST"] = array(
"NAME" => GetMessage("PICKUP_LIST"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PICKUP_LIST_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_NEAREST_PICKUP_LIST"] = array(
"NAME" => GetMessage("NEAREST_PICKUP_LIST"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("NEAREST_PICKUP_LIST_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_SELECT_PICKUP"] = array(
"NAME" => GetMessage("SELECT_PICKUP"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SELECT_PICKUP_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_INNER_PS_BALANCE"] = array(
"NAME" => GetMessage("INNER_PS_BALANCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("INNER_PS_BALANCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_INNER_PS_BALANCE"] = array(
"NAME" => GetMessage("INNER_PS_BALANCE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("INNER_PS_BALANCE_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_ORDER_DESC"] = array(
"NAME" => GetMessage("ORDER_DESC"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("ORDER_DESC_DEFAULT"),
"PARENT" => "ADDITIONAL_MESSAGE_SETTINGS"
);
}
$arTemplateParameters["USE_CUSTOM_ERROR_MESSAGES"] = array(
"NAME" => GetMessage("USE_CUSTOM_MESSAGES"),
"TYPE" => "CHECKBOX",
"REFRESH" => 'Y',
"DEFAULT" => 'N',
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
if ($arCurrentValues['USE_CUSTOM_ERROR_MESSAGES'] == 'Y')
{
$arTemplateParameters["MESS_SUCCESS_PRELOAD_TEXT"] = array(
"NAME" => GetMessage("SUCCESS_PRELOAD_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SUCCESS_PRELOAD_TEXT_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_FAIL_PRELOAD_TEXT"] = array(
"NAME" => GetMessage("FAIL_PRELOAD_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("FAIL_PRELOAD_TEXT_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_DELIVERY_CALC_ERROR_TITLE"] = array(
"NAME" => GetMessage("DELIVERY_CALC_ERROR_TITLE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("DELIVERY_CALC_ERROR_TITLE_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_DELIVERY_CALC_ERROR_TEXT"] = array(
"NAME" => GetMessage("DELIVERY_CALC_ERROR_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("DELIVERY_CALC_ERROR_TEXT_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
$arTemplateParameters["MESS_PAY_SYSTEM_PAYABLE_ERROR"] = array(
"NAME" => GetMessage("PAY_SYSTEM_PAYABLE_ERROR_TEXT"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"),
"PARENT" => "ERROR_MESSAGE_SETTINGS"
);
}

View file

@ -0,0 +1,131 @@
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
use Bitrix\Main\Localization\Loc;
/**
* @var array $arParams
* @var array $arResult
* @var $APPLICATION CMain
*/
if ($arParams["SET_TITLE"] == "Y")
{
$APPLICATION->SetTitle(Loc::getMessage("SOA_ORDER_COMPLETE"));
}
?>
<? if (!empty($arResult["ORDER"])): ?>
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ORDER_SUC", array(
"#ORDER_DATE#" => $arResult["ORDER"]["DATE_INSERT"]->toUserTime()->format('d.m.Y H:i'),
"#ORDER_ID#" => $arResult["ORDER"]["ACCOUNT_NUMBER"]
))?>
<? if (!empty($arResult['ORDER']["PAYMENT_ID"])): ?>
<?=Loc::getMessage("SOA_PAYMENT_SUC", array(
"#PAYMENT_ID#" => $arResult['PAYMENT'][$arResult['ORDER']["PAYMENT_ID"]]['ACCOUNT_NUMBER']
))?>
<? endif ?>
<? if ($arParams['NO_PERSONAL'] !== 'Y'): ?>
<br /><br />
<?=Loc::getMessage('SOA_ORDER_SUC1', ['#LINK#' => $arParams['PATH_TO_PERSONAL']])?>
<? endif; ?>
</td>
</tr>
</table>
<?
if ($arResult["ORDER"]["IS_ALLOW_PAY"] === 'Y')
{
if (!empty($arResult["PAYMENT"]))
{
foreach ($arResult["PAYMENT"] as $payment)
{
if ($payment["PAID"] != 'Y')
{
if (!empty($arResult['PAY_SYSTEM_LIST'])
&& array_key_exists($payment["PAY_SYSTEM_ID"], $arResult['PAY_SYSTEM_LIST'])
)
{
$arPaySystem = $arResult['PAY_SYSTEM_LIST_BY_PAYMENT_ID'][$payment["ID"]];
if (empty($arPaySystem["ERROR"]))
{
?>
<br /><br />
<table class="sale_order_full_table">
<tr>
<td class="ps_logo">
<div class="pay_name"><?=Loc::getMessage("SOA_PAY") ?></div>
<?=CFile::ShowImage($arPaySystem["LOGOTIP"], 100, 100, "border=0\" style=\"width:100px\"", "", false) ?>
<div class="paysystem_name"><?=$arPaySystem["NAME"] ?></div>
<br/>
</td>
</tr>
<tr>
<td>
<? if (strlen($arPaySystem["ACTION_FILE"]) > 0 && $arPaySystem["NEW_WINDOW"] == "Y" && $arPaySystem["IS_CASH"] != "Y"): ?>
<?
$orderAccountNumber = urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]));
$paymentAccountNumber = $payment["ACCOUNT_NUMBER"];
?>
<script>
window.open('<?=$arParams["PATH_TO_PAYMENT"]?>?ORDER_ID=<?=$orderAccountNumber?>&PAYMENT_ID=<?=$paymentAccountNumber?>');
</script>
<?=Loc::getMessage("SOA_PAY_LINK", array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".$orderAccountNumber."&PAYMENT_ID=".$paymentAccountNumber))?>
<? if (CSalePdf::isPdfAvailable() && $arPaySystem['IS_AFFORD_PDF']): ?>
<br/>
<?=Loc::getMessage("SOA_PAY_PDF", array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".$orderAccountNumber."&pdf=1&DOWNLOAD=Y"))?>
<? endif ?>
<? else: ?>
<?=$arPaySystem["BUFFERED_OUTPUT"]?>
<? endif ?>
</td>
</tr>
</table>
<?
}
else
{
?>
<span style="color:red;"><?=Loc::getMessage("SOA_ORDER_PS_ERROR")?></span>
<?
}
}
else
{
?>
<span style="color:red;"><?=Loc::getMessage("SOA_ORDER_PS_ERROR")?></span>
<?
}
}
}
}
}
else
{
?>
<br /><strong><?=$arParams['MESS_PAY_SYSTEM_PAYABLE_ERROR']?></strong>
<?
}
?>
<? else: ?>
<b><?=Loc::getMessage("SOA_ERROR_ORDER")?></b>
<br /><br />
<table class="sale_order_full_table">
<tr>
<td>
<?=Loc::getMessage("SOA_ERROR_ORDER_LOST", ["#ORDER_ID#" => htmlspecialcharsbx($arResult["ACCOUNT_NUMBER"])])?>
<?=Loc::getMessage("SOA_ERROR_ORDER_LOST1")?>
</td>
</tr>
</table>
<? endif ?>

View file

@ -0,0 +1,27 @@
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
use Bitrix\Main\Localization\Loc;
?>
<div class="bx-soa-empty-cart-container">
<div class="bx-soa-empty-cart-image">
<img src="" alt="">
</div>
<div class="bx-soa-empty-cart-text"><?=Loc::getMessage("EMPTY_BASKET_TITLE")?></div>
<?
if (!empty($arParams['EMPTY_BASKET_HINT_PATH']))
{
?>
<div class="bx-soa-empty-cart-desc">
<?=Loc::getMessage(
'EMPTY_BASKET_HINT',
[
'#A1#' => '<a href="'.$arParams['EMPTY_BASKET_HINT_PATH'].'">',
'#A2#' => '</a>',
]
)?>
</div>
<?
}
?>
</div>

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View file

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" width="15.875" height="15.78" viewBox="0 0 15.875 15.78">
<defs>
<style>
.cls-1 {
fill: #7e858e;
fill-rule: evenodd;
}
</style>
</defs>
<path id="Forma_1_copy_2" data-name="Forma 1 copy 2" class="cls-1" d="M525.611,3430.21a0.534,0.534,0,0,0-.534.53v2.52a0.534,0.534,0,0,0,.534.53h0.457a0.534,0.534,0,0,0,.534-0.53v-2.52a0.534,0.534,0,0,0-.534-0.53h-0.457Zm8.385,0a0.534,0.534,0,0,0-.534.53v2.52a0.534,0.534,0,0,0,.534.53h0.457a0.534,0.534,0,0,0,.534-0.53v-2.52a0.534,0.534,0,0,0-.534-0.53H534Zm-10.672,15.78h7.547a5.825,5.825,0,0,1-.114-1.15c0-.13,0-0.25.014-0.38h-6.38a0.914,0.914,0,0,1-.914-0.91v-7.32h13.111v2.83c0.1-.01.2-0.01,0.3-0.01a5.387,5.387,0,0,1,1.068.1v-5.97a1.222,1.222,0,0,0-1.22-1.22h-0.991v1.3a1.3,1.3,0,0,1-1.3,1.29H534a1.3,1.3,0,0,1-1.3-1.29v-1.3h-5.336v1.3a1.3,1.3,0,0,1-1.3,1.29h-0.457a1.3,1.3,0,0,1-1.3-1.29v-1.3h-0.991a1.222,1.222,0,0,0-1.219,1.22v11.59A1.222,1.222,0,0,0,523.324,3445.99Zm3.078-8.68a1.21,1.21,0,1,1-1.21,1.21A1.209,1.209,0,0,1,526.4,3437.31Zm3.63,0a1.21,1.21,0,1,1-1.21,1.21A1.209,1.209,0,0,1,530.032,3437.31Zm3.63,0a1.21,1.21,0,1,1-1.21,1.21A1.208,1.208,0,0,1,533.662,3437.31Zm-3.63,3.65a1.21,1.21,0,1,1-1.21,1.21A1.215,1.215,0,0,1,530.032,3440.96Zm-3.63,0a1.21,1.21,0,1,1-1.21,1.21A1.215,1.215,0,0,1,526.4,3440.96Zm11.548-7.78v11.59a1.222,1.222,0,0,1-1.22,1.22h-7.546a5.9,5.9,0,0,0,.114-1.15c0-.13-0.006-0.25-0.014-0.38h6.379a0.914,0.914,0,0,0,.915-0.91v-7.32" transform="translate(-522.094 -3430.22)"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5 KiB

View file

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" width="129.188" height="114.562" viewBox="0 0 129.188 114.562">
<defs>
<style>
.cls-1 {
fill-rule: evenodd;
opacity: 0.3;
}
</style>
</defs>
<path class="cls-1" d="M710.628,516.914a12.689,12.689,0,0,0,0,25.378A12.689,12.689,0,1,0,710.628,516.914Zm67.374,0a12.689,12.689,0,1,0,0,25.378A12.689,12.689,0,0,0,778,516.914Zm19.942-70.42a5.206,5.206,0,0,0-4.068-1.949H698.271L693.3,431.107a5.206,5.206,0,0,0-4.88-3.4H675.11a5.206,5.206,0,0,0,0,10.411h9.683L709.557,505a5.2,5.2,0,0,0,4.88,3.389c0.207,0,.417-0.013.624-0.027l69.421-8.331a5.218,5.218,0,0,0,4.473-4.046l10.019-45.108A5.215,5.215,0,0,0,797.944,446.494Zm-14.018,24.079h-20.8V454.956H787.4Zm-46.826,0V454.956h20.825v15.617H737.1Zm20.825,5.205v16.953L737.1,495.225V475.771h20.825v0.007Zm-26.031-20.822v15.617H707.906l-5.781-15.617h29.769Zm-22.059,20.822h22.059v20.084l-14,1.681Zm53.3,16.329V475.778h19.643l-3.186,14.35Z" transform="translate(-669.906 -427.719)"/>
</svg>

After

Width:  |  Height:  |  Size: 1,005 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,150 @@
<?
$MESS["ADDITIONAL_PROPS"] = "Extra product properties buttons";
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Additional properties";
$MESS["ALLOW_NEW_PROFILE"] = "Allow multiple customer profiles";
$MESS["ALLOW_USER_PROFILES"] = "Allow buyer profiles";
$MESS["AUTH_BLOCK_NAME"] = "Authentication block name";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Log in";
$MESS["AUTH_REFERENCE_1"] = "Hint #1 for \"Authentication\" block";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Fields marked with \"*\" are required.";
$MESS["AUTH_REFERENCE_2"] = "Hint #2 for \"Authentication\" block";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "You will receive the notification message upon completing the registration.";
$MESS["AUTH_REFERENCE_3"] = "Hint #3 for \"Authentication\" block";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Your personal information acquired upon registration, placing of an order, or by any other means will never be rented, sold or transferred to third parties unless required by legal authorities or court decision..";
$MESS["BACK"] = "Back to previous block button text";
$MESS["BACK_DEFAULT"] = "Back";
$MESS["BASKET_BLOCK_NAME"] = "Shopping cart block name";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Shopping cart";
$MESS["BASKET_POSITION"] = "Shopping cart placement";
$MESS["BASKET_POSITION_AFTER"] = "after";
$MESS["BASKET_POSITION_BEFORE"] = "before";
$MESS["BRAND_PROPERTY"] = "Property containing product brand name";
$MESS["BUYER_BLOCK_NAME"] = "Order preferences block name";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Customer";
$MESS["COUPON"] = "Applied coupons title";
$MESS["COUPON_DEFAULT"] = "Coupon";
$MESS["DATA_LAYER_NAME"] = "Data container name";
$MESS["DELIVERIES_PER_PAGE"] = "The number of deliveries per page";
$MESS["DELIVERY_BLOCK_NAME"] = "Delivery block name";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Delivery";
$MESS["DELIVERY_CALC_ERROR_TEXT"] = "Delivery calculation error text";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Continue checkout. Our sales representative will contact you with delivery details.";
$MESS["DELIVERY_CALC_ERROR_TITLE"] = "Delivery calculation error title";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Cannot calculate delivery cost.";
$MESS["DELIVERY_FADE_EXTRA_SERVICES"] = "Show selected extra services in a hidden block";
$MESS["DELIVERY_PARENT_NAMES"] = "Show parent delivery service name";
$MESS["ECONOMY"] = "\"Save\" text";
$MESS["ECONOMY_DEFAULT"] = "Save";
$MESS["EDIT"] = "Block edit button";
$MESS["EDIT_DEFAULT"] = "edit";
$MESS["FAIL_PRELOAD_TEXT"] = "Notification text to display on order data load failure";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "
You previously shopped with us and we remember you, so we have taken the liberty to fill in the fields for you.<br />
Check the order information thoroughly and edit your order if required. Once you see everything is good, click \"#ORDER_BUTTON#\".
";
$MESS["FURTHER"] = "Next block button text";
$MESS["FURTHER_DEFAULT"] = "Next";
$MESS["HIDE_ORDER_DESCRIPTION"] = "Hide order comment field";
$MESS["INNER_PS_BALANCE"] = "Internal account balance information";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "Your balance:";
$MESS["NAV_BACK"] = "Back to previous page button";
$MESS["NAV_BACK_DEFAULT"] = "Back";
$MESS["NAV_FORWARD"] = "Next page button";
$MESS["NAV_FORWARD_DEFAULT"] = "Next";
$MESS["NEAREST_PICKUP_LIST"] = "Nearest pick-up locations title";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Nearest locations:";
$MESS["ORDER"] = "Checkout button text";
$MESS["ORDER_DEFAULT"] = "Checkout";
$MESS["ORDER_DESC"] = "Order comments title";
$MESS["ORDER_DESC_DEFAULT"] = "Order comments:";
$MESS["PAYMENT_BLOCK_NAME"] = "Payment block name";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Payment";
$MESS["PAY_SYSTEMS_PER_PAGE"] = "The number of payment systems on the page";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "You'll be able to pay for the order after we verify that the items you have ordered are in stock. Once your order is fulfilled, you'll receive an email with payment instructions. You'll be able to complete the purchase inside your customer account.";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_TEXT"] = "Notification text to show when order cannot be paid";
$MESS["PERIOD"] = "Delivery time title";
$MESS["PERIOD_DEFAULT"] = "Delivery time";
$MESS["PERSON_TYPE"] = "Payer type selection title";
$MESS["PERSON_TYPE_DEFAULT"] = "Payer type";
$MESS["PICKUPS_PER_PAGE"] = "The number of pick-up locations on the page";
$MESS["PICKUP_LIST"] = "Pick-up location title";
$MESS["PICKUP_LIST_DEFAULT"] = "Pick-up locations:";
$MESS["PICKUP_MAP_TYPE"] = "Use maps";
$MESS["PICKUP_MAP_TYPE_GOOGLE"] = "Google Maps";
$MESS["PICKUP_MAP_TYPE_YANDEX"] = "Yandex.Maps";
$MESS["PRICE"] = "Price title";
$MESS["PRICE_DEFAULT"] = "Price";
$MESS["PRICE_FREE"] = "\"Free\" text";
$MESS["PRICE_FREE_DEFAULT"] = "free";
$MESS["PRODUCT_COLUMNS_HIDDEN"] = "Additional hidden columns in order products table";
$MESS["PROPS_FADE_LIST"] = "Visible order properties when block is hidden";
$MESS["REGION_BLOCK_NAME"] = "Delivery area block name";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Delivery area";
$MESS["REGION_REFERENCE"] = "Hint for \"Area\" block";
$MESS["REGION_REFERENCE_DEFAULT"] = "Select your city from the list. If you cannot find your city, select \"other location\" and enter your city in the \"City\" field.";
$MESS["REGISTRATION_REFERENCE"] = "Open registration page text";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Please register for better shopping experience and to keep your order history.";
$MESS["REG_BLOCK_NAME"] = "Registration block name";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Register";
$MESS["SELECT_PICKUP"] = "Pick-up location selection button";
$MESS["SELECT_PICKUP_DEFAULT"] = "Select";
$MESS["SELECT_PROFILE"] = "Profile selection title";
$MESS["SELECT_PROFILE_DEFAULT"] = "Select profile";
$MESS["SERVICES_IMAGES_SCALING"] = "View mode for additional images";
$MESS["SERVICES_IMAGES_SCALING_TIP"] = "This also affects logos of payment and delivery systems, and pick-up locations.";
$MESS["SHOW_ALWAYS"] = "Always";
$MESS["SHOW_BASKET_HEADERS"] = "Show shopping cart column header";
$MESS["SHOW_COUPONS"] = "Show coupon input field";
$MESS["SHOW_COUPONS_BASKET"] = "Show coupon entry field in shopping cart block";
$MESS["SHOW_COUPONS_DELIVERY"] = "Show coupon entry field in delivery block";
$MESS["SHOW_COUPONS_PAY_SYSTEM"] = "Show coupon code input field in payment block";
$MESS["SHOW_DELIVERY_INFO_NAME"] = "Show delivery name in delivery block";
$MESS["SHOW_DELIVERY_LIST_NAMES"] = "Show delivery name in the list";
$MESS["SHOW_FINAL_STEP"] = "Last step only";
$MESS["SHOW_MAP_FOR_DELIVERIES"] = "Show map for delivery services";
$MESS["SHOW_MAP_IN_PROPS"] = "Show map in order properties block";
$MESS["SHOW_NEAREST_PICKUP"] = "Show nearest pick-up locations";
$MESS["SHOW_ORDER_BUTTON"] = "Show checkout button (for unauthorized users)";
$MESS["SHOW_PAY_SYSTEM_INFO_NAME"] = "Show payment system name in the information block";
$MESS["SHOW_PAY_SYSTEM_LIST_NAMES"] = "Show payment system name in the list";
$MESS["SHOW_PICKUP_MAP"] = "Show map for pick-up locations";
$MESS["SHOW_STORES_IMAGES"] = "Show warehouse images in pick-up point selection form";
$MESS["SHOW_TOTAL_ORDER_BUTTON"] = "Show additional checkout button";
$MESS["SKIP_USELESS_BLOCK"] = "Skip steps with only one selectable item";
$MESS["SOA_ADAPTIVE"] = "Adaptive";
$MESS["SOA_NO_SCALE"] = "Don't scale";
$MESS["SOA_STANDARD"] = "Standard";
$MESS["SUCCESS_PRELOAD_TEXT"] = "Notification text to display on order data load success";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "
You previously shopped with us and we remember you, so we took the liberty to fill in the fields for you.<br />
If the information is correct, click \"#ORDER_BUTTON#\".
";
$MESS["TEMPLATE_THEME"] = "Color theme";
$MESS["THEME_BLUE"] = "Blue (default theme)";
$MESS["THEME_GREEN"] = "Green";
$MESS["THEME_RED"] = "Red";
$MESS["THEME_SITE"] = "Use theme as defined by the site (for bitrix.eshop)";
$MESS["THEME_YELLOW"] = "Yellow";
$MESS["USE_COUPON"] = "Coupon entry field title";
$MESS["USE_COUPON_DEFAULT"] = "Apply coupon";
$MESS["USE_CUSTOM_MESSAGES"] = "Use custom messages";
$MESS["USE_ENHANCED_ECOMMERCE"] = "Submit e-commerce data to Google";
$MESS["USE_ENHANCED_ECOMMERCE_TIP"] = "This requires Google Analytics Enhanced Ecommerce options to be configured";
$MESS["USE_YM_GOALS1"] = "Use Yandex.Metrics counter targets";
$MESS["USE_YM_GOALS_TIP"] = "This requires that a Yandex.Metrics counter is on the page.";
$MESS["YM_GOALS_COUNTER"] = "Yandex.Metrics counter code";
$MESS["YM_GOALS_EDIT_BASKET"] = "Goal ID for editing shopping cart";
$MESS["YM_GOALS_EDIT_DELIVERY"] = "Goal ID for editing delivery ";
$MESS["YM_GOALS_EDIT_PAY_SYSTEM"] = "Goal ID for editing payments";
$MESS["YM_GOALS_EDIT_PICKUP"] = "Goal ID for editing pick-up locations";
$MESS["YM_GOALS_EDIT_PROPERTIES"] = "Goal ID for editing product properties";
$MESS["YM_GOALS_EDIT_REGION"] = "Goal ID for editing delivery area";
$MESS["YM_GOALS_INITIALIZE"] = "Goal ID for component initialization";
$MESS["YM_GOALS_NEXT_BASKET"] = "Goal ID for transfer from shopping cart to 'Next' button";
$MESS["YM_GOALS_NEXT_DELIVERY"] = "Goal ID for transfer from delivery to 'Next' button";
$MESS["YM_GOALS_NEXT_PAY_SYSTEM"] = "Goal ID for transfer from payment to 'Next' button";
$MESS["YM_GOALS_NEXT_PICKUP"] = "Goal ID for transfer from pick-up locations to 'Next' button";
$MESS["YM_GOALS_NEXT_PROPERTIES"] = "Goal ID for transfer from product properties to 'Next' button";
$MESS["YM_GOALS_NEXT_REGION"] = "Goal ID for transfer from delivery area to 'Next' button";
$MESS["YM_GOALS_SAVE_ORDER"] = "Goal ID for order processing";
?>

View file

@ -0,0 +1,138 @@
<?
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Additional properties";
$MESS["ADD_DEFAULT"] = "Add";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Log in";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Fields marked with \"*\" are required.";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "You will receive the notification message upon completing the registration.";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Your personal information acquired upon registration, placing of an order, or by any other means will never be rented, sold or transferred to third parties unless required by legal authorities or court decision..";
$MESS["BACK_DEFAULT"] = "Back";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Shopping cart";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Customer";
$MESS["CAPTCHA_REGF_PROMT"] = "Type the characters you see on the picture";
$MESS["CAPTCHA_REGF_TITLE"] = "CAPTCHA";
$MESS["COUPON_DEFAULT"] = "Coupon";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Delivery";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Continue checkout. Our sales representative will contact you with delivery details.";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Cannot calculate delivery price.";
$MESS["ECONOMY_DEFAULT"] = "Save";
$MESS["EDIT_DEFAULT"] = "change";
$MESS["EMPTY_BASKET_HINT"] = "#A1#Click here#A2# to continue shopping";
$MESS["EMPTY_BASKET_TITLE"] = "Your cart is empty";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "You previously shopped with us and we remember you, so we have taken the liberty to fill in the fields for you.<br />
Check the order information thoroughly and edit your order if required. Once you see everything is good, click \"#ORDER_BUTTON#\".
";
$MESS["FURTHER_DEFAULT"] = "Next";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "Your balance:";
$MESS["NAV_BACK_DEFAULT"] = "Back";
$MESS["NAV_FORWARD_DEFAULT"] = "Next";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Nearest locations:";
$MESS["ORDER_DEFAULT"] = "Checkout";
$MESS["ORDER_DESC_DEFAULT"] = "Order comments:";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Payment";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "You'll be able to pay for the order after we verify that the items you have ordered are in stock. Once your order is fulfilled, you'll receive an email with payment instructions. You'll be able to complete the purchase inside your customer account.";
$MESS["PERIOD_DEFAULT"] = "Delivery time";
$MESS["PERSON_TYPE_DEFAULT"] = "Payer type";
$MESS["PICKUP_LIST_DEFAULT"] = "Pick-up locations:";
$MESS["PRICE_DEFAULT"] = "Price";
$MESS["PRICE_FREE_DEFAULT"] = "free";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Delivery area";
$MESS["REGION_REFERENCE_DEFAULT"] = "Select your city from the list. If you cannot find your city, select \"other location\" and enter your city in the \"City\" field.";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Please register for better shopping experience and to keep your order history.";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Register";
$MESS["SALE_SADC_TRANSIT"] = "Delivery time";
$MESS["SELECT_FILE_DEFAULT"] = "Select";
$MESS["SELECT_PICKUP_DEFAULT"] = "Select";
$MESS["SELECT_PROFILE_DEFAULT"] = "Select profile";
$MESS["SOA_BAD_EXTENSION"] = "Invalid file type";
$MESS["SOA_DELIVERY"] = "Delivery service";
$MESS["SOA_DELIVERY_SELECT_ERROR"] = "Delivery service not selected";
$MESS["SOA_DISTANCE_KM"] = "km";
$MESS["SOA_DO_SOC_SERV"] = "Social login";
$MESS["SOA_ERROR_ORDER"] = "Error creating the order.";
$MESS["SOA_ERROR_ORDER_LOST"] = "Order no. #ORDER_ID# cannot be found.";
$MESS["SOA_ERROR_ORDER_LOST1"] = "Please contact the store administration or try again.";
$MESS["SOA_FIELD"] = "Field";
$MESS["SOA_INVALID_EMAIL"] = "E-mail is incorrect";
$MESS["SOA_INVALID_PATTERN"] = "does not match the pattern";
$MESS["SOA_LESS"] = "at least";
$MESS["SOA_LOCATION_NOT_FOUND"] = "Location was not found";
$MESS["SOA_LOCATION_NOT_FOUND_PROMPT"] = "Click #ANCHOR#add location#ANCHOR_END# so we know where you want to have your order shipped to";
$MESS["SOA_MAP_COORDS"] = "Map coordinates";
$MESS["SOA_MAX_LENGTH"] = "Max. field length";
$MESS["SOA_MAX_SIZE"] = "Max. file size exceeded";
$MESS["SOA_MAX_VALUE"] = "Max. field value";
$MESS["SOA_MIN_LENGTH"] = "Min. field length";
$MESS["SOA_MIN_VALUE"] = "Min. field value";
$MESS["SOA_MORE"] = "less than";
$MESS["SOA_NO"] = "no";
$MESS["SOA_NOT_CALCULATED"] = "not calculated";
$MESS["SOA_NOT_FOUND"] = "Not found";
$MESS["SOA_NOT_NUMERIC"] = "numbers only";
$MESS["SOA_NOT_SELECTED"] = "not selected";
$MESS["SOA_NOT_SELECTED_ALT"] = "Make location more specific if required";
$MESS["SOA_NOT_SPECIFIED"] = "not specified";
$MESS["SOA_NO_JS"] = "The ordering process requires that JavaScript is enabled on your system. JavaScript is disabled or not supported by your browser. Please change the browser settings and <a href=\"\">try again</a>.";
$MESS["SOA_NUM_STEP"] = "doesn't match";
$MESS["SOA_ORDER_COMPLETE"] = "Order has been completed";
$MESS["SOA_ORDER_PROPS"] = "Order properties";
$MESS["SOA_ORDER_PS_ERROR"] = "The selected payment method failed. Please contact the site administrator or select another method.";
$MESS["SOA_ORDER_SUC"] = "Your order <b>##ORDER_ID#</b> of #ORDER_DATE# has been created successfully.";
$MESS["SOA_ORDER_SUC1"] = "You can track your order in your <a href=\"#LINK#\">personal account</a>. You will be asked to enter your login and password to access your account.";
$MESS["SOA_OTHER_LOCATION"] = "Other location";
$MESS["SOA_PAY"] = "Order payment";
$MESS["SOA_PAYMENT_SUC"] = "Payment <b>##PAYMENT_ID#</b>";
$MESS["SOA_PAYSYSTEM_PRICE"] = "Extra COD:";
$MESS["SOA_PAY_ACCOUNT3"] = "You have sufficient credit to pay the order in full.";
$MESS["SOA_PAY_LINK"] = "If you don't see any payment information, click here: <a href=\"#LINK#\" target=\"_blank\">Pay and place order</a>.";
$MESS["SOA_PAY_PDF"] = "Click <a href=\"#LINK#\" target=\"_blank\">Download invoice</a> to get the invoice in PDF format.";
$MESS["SOA_PAY_SYSTEM"] = "Payment system";
$MESS["SOA_PICKUP_ADDRESS"] = "Address";
$MESS["SOA_PICKUP_DESC"] = "Description";
$MESS["SOA_PICKUP_EMAIL"] = "E-Mail";
$MESS["SOA_PICKUP_PHONE"] = "Phone";
$MESS["SOA_PICKUP_STORE"] = "Warehouse";
$MESS["SOA_PICKUP_WORK"] = "Business hours";
$MESS["SOA_PROP_NEW_PROFILE"] = "New profile";
$MESS["SOA_PS_SELECT_ERROR"] = "Payment system not selected";
$MESS["SOA_REQUIRED"] = "this field is required";
$MESS["SOA_SUM_DELIVERY"] = "Delivery:";
$MESS["SOA_SUM_DISCOUNT"] = "Discount";
$MESS["SOA_SUM_IT"] = "Total:";
$MESS["SOA_SUM_LEFT_TO_PAY"] = "Amount payable:";
$MESS["SOA_SUM_NAME"] = "Name";
$MESS["SOA_SUM_PAYED"] = "Paid:";
$MESS["SOA_SUM_PRICE"] = "Price";
$MESS["SOA_SUM_QUANTITY"] = "Quantity";
$MESS["SOA_SUM_SUMMARY"] = "Total price:";
$MESS["SOA_SUM_VAT"] = "Tax:";
$MESS["SOA_SUM_WEIGHT"] = "Weight";
$MESS["SOA_SUM_WEIGHT_SUM"] = "Total weight:";
$MESS["SOA_SYMBOLS"] = "symbols";
$MESS["SOA_YES"] = "yes";
$MESS["STOF_AUTH_REQUEST"] = "Please log in.";
$MESS["STOF_DO_AUTHORIZE"] = "Log in";
$MESS["STOF_DO_REGISTER"] = "Register";
$MESS["STOF_EMAIL"] = "E-mail";
$MESS["STOF_ENTER"] = "Log in";
$MESS["STOF_FORGET_PASSWORD"] = "Forgot your password?";
$MESS["STOF_LASTNAME"] = "Last name";
$MESS["STOF_LOGIN"] = "Login";
$MESS["STOF_MY_PASSWORD"] = "Your login and password";
$MESS["STOF_NAME"] = "First name";
$MESS["STOF_NEXT_STEP"] = "Continue checkout";
$MESS["STOF_PASSWORD"] = "Password";
$MESS["STOF_PHONE"] = "Phone number";
$MESS["STOF_REGISTER"] = "Register";
$MESS["STOF_REG_HINT"] = "Please register for better shopping experience and to keep your order history.";
$MESS["STOF_REG_REQUEST"] = "Please register.";
$MESS["STOF_REG_SMS_REQUEST"] = "A confirmation code has been sent to your phone";
$MESS["STOF_REMEMBER"] = "Remember Me";
$MESS["STOF_RE_PASSWORD"] = "Repeat password";
$MESS["STOF_SEND"] = "Send";
$MESS["STOF_SMS_CODE"] = "SMS confirmation code";
$MESS["STOF_SYS_PASSWORD"] = "Generate login and password";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "You previously shopped with us and we remember you, so we have taken the liberty to fill in the fields for you.<br />
If the information is correct, click \"#ORDER_BUTTON#\".
";
$MESS["USE_COUPON_DEFAULT"] = "Apply coupon";
?>

View file

@ -0,0 +1,152 @@
<?
$MESS["SHOW_ORDER_BUTTON"] = "Отображать кнопку оформления заказа (для неавторизованных пользователей)";
$MESS["SHOW_ALWAYS"] = "Всегда";
$MESS["SHOW_FINAL_STEP"] = "Только на последнем шаге";
$MESS["SHOW_TOTAL_ORDER_BUTTON"] = "Отображать дополнительную кнопку оформления заказа";
$MESS["SHOW_PAY_SYSTEM_LIST_NAMES"] = "Отображать названия в списке платежных систем";
$MESS["SHOW_PAY_SYSTEM_INFO_NAME"] = "Отображать название в блоке информации по платежной системе";
$MESS["SHOW_DELIVERY_LIST_NAMES"] = "Отображать названия в списке доставок";
$MESS["SHOW_DELIVERY_INFO_NAME"] = "Отображать название в блоке информации по доставке";
$MESS["DELIVERY_PARENT_NAMES"] = "Показывать название родительской доставки";
$MESS["ALLOW_USER_PROFILES"] = "Разрешить использование профилей покупателей";
$MESS["HIDE_ORDER_DESCRIPTION"] = "Скрыть поле комментариев к заказу";
$MESS["ALLOW_NEW_PROFILE"] = "Разрешить множество профилей покупателей";
$MESS["SHOW_STORES_IMAGES"] = "Показывать изображения складов в окне выбора пункта выдачи";
$MESS["SKIP_USELESS_BLOCK"] = "Пропускать шаги, в которых один элемент для выбора";
$MESS["BASKET_POSITION"] = "Расположение списка товаров";
$MESS["BASKET_POSITION_BEFORE"] = "В начале";
$MESS["BASKET_POSITION_AFTER"] = "В конце";
$MESS["SHOW_BASKET_HEADERS"] = "Показывать заголовки колонок списка товаров";
$MESS["DELIVERY_FADE_EXTRA_SERVICES"] = "Дополнительные услуги, которые будут показаны в пройденном (свернутом) блоке";
$MESS["SHOW_COUPONS"] = "Отображать поля ввода купонов";
$MESS["SHOW_COUPONS_BASKET"] = "Показывать поле ввода купонов в блоке списка товаров";
$MESS["SHOW_COUPONS_DELIVERY"] = "Показывать поле ввода купонов в блоке доставки";
$MESS["SHOW_COUPONS_PAY_SYSTEM"] = "Показывать поле ввода купонов в блоке оплаты";
$MESS["SHOW_NEAREST_PICKUP"] = "Показывать ближайшие пункты самовывоза";
$MESS["DELIVERIES_PER_PAGE"] = "Количество доставок на странице";
$MESS["PAY_SYSTEMS_PER_PAGE"] = "Количество платежных систем на странице";
$MESS["PICKUPS_PER_PAGE"] = "Количество пунктов самовывоза на странице";
$MESS["SHOW_MAP_IN_PROPS"] = "Показывать карту в блоке свойств заказа";
$MESS["SHOW_PICKUP_MAP"] = "Показывать карту для доставок с самовывозом";
$MESS["PICKUP_MAP_TYPE"] = "Тип используемых карт";
$MESS["PICKUP_MAP_TYPE_YANDEX"] = "Яндекс.Карты";
$MESS["PICKUP_MAP_TYPE_GOOGLE"] = "Google Карты";
$MESS["PRODUCT_COLUMNS_HIDDEN"] = "Свойства товаров отображаемые в свернутом виде в списке товаров";
$MESS["SHOW_MAP_FOR_DELIVERIES"] = "Показывать карту для выбранных служб доставки";
$MESS["PROPS_FADE_LIST"] = "Свойства заказа, которые будут показаны в пройденном (свернутом) блоке";
$MESS["USE_CUSTOM_MESSAGES"] = "Заменить стандартные фразы на свои";
$MESS["USE_YM_GOALS1"] = "Использовать цели счетчика Яндекс.Метрики";
$MESS["USE_YM_GOALS_TIP"] = "Счетчик Яндекс.Метрики должен быть подключен на странице";
$MESS["YM_GOALS_COUNTER"] = "Номер счётчика Яндекс.Метрика";
$MESS["YM_GOALS_INITIALIZE"] = "Идентификатор цели при инициализации компонента на странице";
$MESS["YM_GOALS_EDIT_REGION"] = "Идентификатор цели при редактировании блока региона доставки";
$MESS["YM_GOALS_EDIT_DELIVERY"] = "Идентификатор цели при редактировании блока доставки";
$MESS["YM_GOALS_EDIT_PICKUP"] = "Идентификатор цели при редактировании блока пунктов самовывоза";
$MESS["YM_GOALS_EDIT_PAY_SYSTEM"] = "Идентификатор цели при редактировании блока оплаты";
$MESS["YM_GOALS_EDIT_PROPERTIES"] = "Идентификатор цели при редактировании блока свойств заказа";
$MESS["YM_GOALS_EDIT_BASKET"] = "Идентификатор цели при редактировании блока списка товаров";
$MESS["YM_GOALS_NEXT_REGION"] = "Идентификатор цели при переходе из блока региона доставки по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_DELIVERY"] = "Идентификатор цели при переходе из блока доставки по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_PICKUP"] = "Идентификатор цели при переходе из блока пунктов самовывоза по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_PAY_SYSTEM"] = "Идентификатор цели при переходе из блока оплаты по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_PROPERTIES"] = "Идентификатор цели при переходе из блока свойств заказа по кнопке \"Далее\"";
$MESS["YM_GOALS_NEXT_BASKET"] = "Идентификатор цели при переходе из блока списка товаров по кнопке \"Далее\"";
$MESS["YM_GOALS_SAVE_ORDER"] = "Идентификатор цели при оформлении заказа";
$MESS["THEME_BLUE"] = "Синяя (тема по умолчанию)";
$MESS["THEME_GREEN"] = "Зеленая";
$MESS["THEME_RED"] = "Красная";
$MESS["THEME_YELLOW"] = "Желтая";
$MESS["TEMPLATE_THEME"] = "Цветовая тема";
$MESS["THEME_SITE"] = "Брать тему из настроек сайта (для решения bitrix.eshop)";
$MESS["AUTH_BLOCK_NAME"] = "Название блока авторизации";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Авторизация";
$MESS["REG_BLOCK_NAME"] = "Название блока регистрации";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Регистрация";
$MESS["BASKET_BLOCK_NAME"] = "Название блока списка товаров";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Товары в заказе";
$MESS["REGION_BLOCK_NAME"] = "Название блока региона доставки";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Регион доставки";
$MESS["PAYMENT_BLOCK_NAME"] = "Название блока оплаты";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Оплата";
$MESS["DELIVERY_BLOCK_NAME"] = "Название блока доставки";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Доставка";
$MESS["BUYER_BLOCK_NAME"] = "Название блока свойств заказа";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Покупатель";
$MESS["BACK"] = "Кнопка возврата к предыдущему блоку";
$MESS["BACK_DEFAULT"] = "Назад";
$MESS["FURTHER"] = "Кнопка перехода к следующему блоку";
$MESS["FURTHER_DEFAULT"] = "Далее";
$MESS["EDIT"] = "Кнопка редактирования блока";
$MESS["EDIT_DEFAULT"] = "изменить";
$MESS["ORDER"] = "Кнопка оформления заказа";
$MESS["ORDER_DEFAULT"] = "Оформить заказ";
$MESS["PRICE"] = "Заголовок для цены";
$MESS["PRICE_DEFAULT"] = "Стоимость";
$MESS["PERIOD"] = "Заголовок для срока доставки";
$MESS["PERIOD_DEFAULT"] = "Срок доставки";
$MESS["NAV_BACK"] = "Кнопка перехода к предыдущей странице";
$MESS["NAV_BACK_DEFAULT"] = "Назад";
$MESS["NAV_FORWARD"] = "Кнопка перехода к следующей странице";
$MESS["NAV_FORWARD_DEFAULT"] = "Вперед";
$MESS["PRICE_FREE"] = "Текст для \"бесплатно\"";
$MESS["PRICE_FREE_DEFAULT"] = "бесплатно";
$MESS["ECONOMY"] = "Текст для \"Экономия\"";
$MESS["ECONOMY_DEFAULT"] = "Экономия";
$MESS["REGISTRATION_REFERENCE"] = "Текст для перехода к блоку регистрации";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Если вы впервые на сайте, и хотите, чтобы мы вас помнили и все ваши заказы сохранялись, заполните регистрационную форму.";
$MESS["AUTH_REFERENCE_1"] = "Справочная информация №1 блока \"Авторизация\"";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Символом \"звездочка\" (*) отмечены обязательные для заполнения поля.";
$MESS["AUTH_REFERENCE_2"] = "Справочная информация №2 блока \"Авторизация\"";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "После регистрации вы получите информационное письмо.";
$MESS["AUTH_REFERENCE_3"] = "Справочная информация №3 блока \"Авторизация\"";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Личные сведения, полученные в распоряжение интернет-магазина при регистрации или каким-либо иным образом, не будут без разрешения пользователей передаваться третьим организациям и лицам за исключением ситуаций, когда этого требует закон или судебное решение.";
$MESS["ADDITIONAL_PROPS"] = "Кнопка дополнительных свойств товара";
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Дополнительные свойства";
$MESS["USE_COUPON"] = "Заголовок поля ввода купона";
$MESS["USE_COUPON_DEFAULT"] = "Применить купон";
$MESS["COUPON"] = "Заголовок для примененных купонов";
$MESS["COUPON_DEFAULT"] = "Купон";
$MESS["PERSON_TYPE"] = "Заголовок выбора типа плательщика";
$MESS["PERSON_TYPE_DEFAULT"] = "Тип плательщика";
$MESS["SELECT_PROFILE"] = "Заголовок выбора профиля";
$MESS["SELECT_PROFILE_DEFAULT"] = "Выберите профиль";
$MESS["REGION_REFERENCE"] = "Справочная информация блока \"Регион\"";
$MESS["REGION_REFERENCE_DEFAULT"] = "Выберите свой город в списке. Если вы не нашли свой город, выберите \"другое местоположение\", а город впишите в поле \"Город\"";
$MESS["PICKUP_LIST"] = "Заголовок пунктов самовывоза";
$MESS["PICKUP_LIST_DEFAULT"] = "Пункты самовывоза:";
$MESS["NEAREST_PICKUP_LIST"] = "Заголовок ближайших пунктов самовывоза";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Ближайшие пункты:";
$MESS["SELECT_PICKUP"] = "Кнопка выбора пункта самовывоза";
$MESS["SELECT_PICKUP_DEFAULT"] = "Выбрать";
$MESS["INNER_PS_BALANCE"] = "Информация о балансе внутреннего счета";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "На вашем пользовательском счете:";
$MESS["ORDER_DESC"] = "Заголовок комментариев к заказу";
$MESS["ORDER_DESC_DEFAULT"] = "Комментарии к заказу:";
$MESS["SUCCESS_PRELOAD_TEXT"] = "Текст уведомления о корректной загрузке данных заказа";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "
Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Если все заполнено верно, нажмите кнопку \"#ORDER_BUTTON#\".
";
$MESS["FAIL_PRELOAD_TEXT"] = "Текст уведомления о неудачной загрузке данных заказа";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "
Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Обратите внимание на развернутый блок с информацией о заказе. Здесь вы можете внести необходимые изменения или
оставить как есть и нажать кнопку \"#ORDER_BUTTON#\".
";
$MESS["DELIVERY_CALC_ERROR_TITLE"] = "Заголовок ошибки расчета доставки";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Не удалось рассчитать стоимость доставки.";
$MESS["DELIVERY_CALC_ERROR_TEXT"] = "Текст ошибки расчета доставки";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Вы можете продолжить оформление заказа, а чуть позже менеджер магазина свяжется с вами и уточнит информацию по доставке.";
$MESS["SERVICES_IMAGES_SCALING"] = "Режим отображения вспомагательных изображений";
$MESS["SERVICES_IMAGES_SCALING_TIP"] = "Включает изображения платежных систем, служб доставок и пунктов самовывоза";
$MESS["SOA_ADAPTIVE"] = "Адаптивный";
$MESS["SOA_STANDARD"] = "Стандартный";
$MESS["SOA_NO_SCALE"] = "Без сжатия";
$MESS["USE_ENHANCED_ECOMMERCE"] = "Отправлять данные электронной торговли в Google и Яндекс";
$MESS["USE_ENHANCED_ECOMMERCE_TIP"] = "Требуется дополнительная настройка в Google Analytics Enhanced
Ecommerce и/или Яндекс.Метрике";
$MESS["DATA_LAYER_NAME"] = "Имя контейнера данных";
$MESS["BRAND_PROPERTY"] = "Свойство, в котором указан бренд товара";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_TEXT"] = "Текст уведомления при статусе заказа, недоступном для оплаты";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "Вы сможете оплатить заказ после того, как менеджер проверит наличие полного комплекта товаров на складе. Сразу после проверки вы получите письмо с инструкциями по оплате. Оплатить заказ можно будет в персональном разделе сайта.";
?>

View file

@ -0,0 +1,140 @@
<?
$MESS["SOA_YES"] = "да";
$MESS["SOA_NO"] = "нет";
$MESS["SOA_DO_SOC_SERV"] = "Войти с помощью соцсетей";
$MESS["SOA_NOT_FOUND"] = "Не найден";
$MESS["SOA_NOT_SPECIFIED"] = "не указано";
$MESS["SOA_NOT_SELECTED"] = "не выбрано";
$MESS["SOA_NOT_CALCULATED"] = "не рассчитана";
$MESS["SOA_PS_SELECT_ERROR"] = "Платежная система не выбрана";
$MESS["SOA_DELIVERY_SELECT_ERROR"] = "Служба доставки не выбрана";
$MESS["SOA_PICKUP_PHONE"] = "Телефон";
$MESS["SOA_PICKUP_ADDRESS"] = "Адрес";
$MESS["SOA_PICKUP_WORK"] = "Режим работы";
$MESS["SOA_PICKUP_STORE"] = "Склад";
$MESS["SOA_PICKUP_EMAIL"] = "Электронная почта";
$MESS["SOA_PICKUP_DESC"] = "Описание";
$MESS["SOA_MAP_COORDS"] = "Координаты на карте";
$MESS["SOA_DISTANCE_KM"] = "км";
$MESS["SOA_ORDER_PROPS"] = "Свойства заказа";
$MESS["SOA_FIELD"] = "Поле";
$MESS["SOA_REQUIRED"] = "обязательно для заполнения";
$MESS["SOA_INVALID_EMAIL"] = "Введен неверный e-mail";
$MESS["SOA_MIN_LENGTH"] = "Минимальная длина поля";
$MESS["SOA_MAX_LENGTH"] = "Максимальная длина поля";
$MESS["SOA_NOT_NUMERIC"] = "должно быть числовым";
$MESS["SOA_MIN_VALUE"] = "Минимальное значение поля";
$MESS["SOA_MAX_VALUE"] = "Максимальное значение поля";
$MESS["SOA_NUM_STEP"] = "не соответствует шагу";
$MESS["SOA_LESS"] = "не менее";
$MESS["SOA_MORE"] = "не более";
$MESS["SOA_SYMBOLS"] = "символов";
$MESS["SOA_INVALID_PATTERN"] = "не соответствует шаблону";
$MESS["SOA_PROP_NEW_PROFILE"] = "Новый профиль";
$MESS["SOA_PAY_SYSTEM"] = "Платежная система";
$MESS["SOA_PAY_ACCOUNT3"] = "Средств достаточно для полной оплаты заказа.";
$MESS["SOA_DELIVERY"] = "Служба доставки";
$MESS["SOA_ORDER_SUC"] = "Ваш заказ <b>№#ORDER_ID#</b> от #ORDER_DATE# успешно создан.";
$MESS["SOA_PAYMENT_SUC"] = "Номер вашей оплаты: <b>№#PAYMENT_ID#</b>";
$MESS["SOA_ORDER_SUC1"] = "Вы можете следить за выполнением своего заказа в <a href=\"#LINK#\">Персональном разделе сайта</a>. Обратите внимание, что для входа в этот раздел вам необходимо будет ввести логин и пароль пользователя сайта.";
$MESS["SOA_PAY"] = "Оплата заказа";
$MESS["SOA_PAY_LINK"] = "Если окно с платежной информацией не открылось автоматически, нажмите на ссылку <a href=\"#LINK#\" target=\"_blank\">Оплатить заказ</a>.";
$MESS["SOA_PAY_PDF"] = "Для того, чтобы скачать счет в формате pdf, нажмите на ссылку <a href=\"#LINK#\" target=\"_blank\">Скачать счет</a>.";
$MESS["SOA_ERROR_ORDER"] = "Ошибка формирования заказа";
$MESS["SOA_ERROR_ORDER_LOST"] = "Заказ №#ORDER_ID# не найден.";
$MESS["SOA_ERROR_ORDER_LOST1"] = "Пожалуйста обратитесь к администрации интернет-магазина или попробуйте оформить ваш заказ еще раз.";
$MESS["SOA_SUM_NAME"] = "Наименование";
$MESS["SOA_SUM_DISCOUNT"] = "Скидка";
$MESS["SOA_SUM_WEIGHT"] = "Вес";
$MESS["SOA_SUM_QUANTITY"] = "Кол-во";
$MESS["SOA_SUM_PRICE"] = "Цена";
$MESS["SOA_SUM_WEIGHT_SUM"] = "Общий вес:";
$MESS["SOA_SUM_SUMMARY"] = "Товаров на:";
$MESS["SOA_SUM_VAT"] = "НДС:";
$MESS["SOA_SUM_DELIVERY"] = "Доставка:";
$MESS["SOA_SUM_IT"] = "Итого:";
$MESS["SOA_SUM_PAYED"] = "Оплачено:";
$MESS["SOA_SUM_LEFT_TO_PAY"] = "Осталось оплатить:";
$MESS["SOA_ORDER_COMPLETE"] = "Заказ сформирован";
$MESS["CAPTCHA_REGF_TITLE"] = "Защита от автоматической регистрации";
$MESS["CAPTCHA_REGF_PROMT"] = "Введите слово на картинке";
$MESS["STOF_LOGIN"] = "Логин";
$MESS["STOF_PASSWORD"] = "Пароль";
$MESS["STOF_REMEMBER"] = "Запомнить меня";
$MESS["STOF_ENTER"] = "Войти";
$MESS["STOF_REGISTER"] = "Регистрация";
$MESS["STOF_DO_AUTHORIZE"] = "Авторизоваться";
$MESS["STOF_DO_REGISTER"] = "Зарегистрироваться";
$MESS["STOF_AUTH_REQUEST"] = "Пожалуйста, авторизуйтесь";
$MESS["STOF_REG_REQUEST"] = "Пожалуйста, зарегистрируйтесь";
$MESS["STOF_PHONE"] = "Номер телефона";
$MESS["STOF_REG_SMS_REQUEST"] = "На ваш номер было выслано СМС с кодом подтверждения";
$MESS["STOF_SMS_CODE"] = "Код подтверждения из СМС";
$MESS["STOF_SEND"] = "Отправить";
$MESS["STOF_REG_HINT"] = "Если вы впервые на сайте, и хотите, чтобы мы вас помнили, и все ваши заказы сохранялись,
заполните регистрационную форму.";
$MESS["STOF_FORGET_PASSWORD"] = "Забыли пароль?";
$MESS["STOF_NEXT_STEP"] = "Продолжить оформление заказа";
$MESS["STOF_NAME"] = "Имя";
$MESS["STOF_LASTNAME"] = "Фамилия";
$MESS["STOF_EMAIL"] = "E-mail";
$MESS["STOF_MY_PASSWORD"] = "Задать логин и пароль";
$MESS["STOF_RE_PASSWORD"] = "Повтор пароля";
$MESS["STOF_SYS_PASSWORD"] = "Сгенерировать логин и пароль";
$MESS["SALE_SADC_TRANSIT"] = "Срок доставки";
$MESS["SOA_NO_JS"] = "Для оформления заказа необходимо включить JavaScript. По-видимому, JavaScript либо не поддерживается браузером, либо отключен. Измените настройки браузера и затем <a href=\"\">повторите попытку</a>.";
$MESS["SOA_PAYSYSTEM_PRICE"] = "Дополнительно наложенный платеж:";
$MESS["SOA_OTHER_LOCATION"] = "Другое местоположение";
$MESS["SOA_LOCATION_NOT_FOUND"] = "Местоположение не найдено";
$MESS["SOA_LOCATION_NOT_FOUND_PROMPT"] = "#ANCHOR#Выберите местоположение из списка#ANCHOR_END#, чтобы мы узнали, куда нам доставить ваш заказ";
$MESS["SOA_NOT_SELECTED_ALT"] = "При необходимости уточнить местоположение";
$MESS["SOA_ORDER_PS_ERROR"] = "Ошибка выбранного способа оплаты. Обратитесь к Администрации сайта, либо выберите другой способ оплаты.";
$MESS["AUTH_BLOCK_NAME_DEFAULT"] = "Авторизация";
$MESS["REG_BLOCK_NAME_DEFAULT"] = "Регистрация";
$MESS["BASKET_BLOCK_NAME_DEFAULT"] = "Товары в заказе";
$MESS["REGION_BLOCK_NAME_DEFAULT"] = "Регион доставки";
$MESS["PAYMENT_BLOCK_NAME_DEFAULT"] = "Оплата";
$MESS["DELIVERY_BLOCK_NAME_DEFAULT"] = "Доставка";
$MESS["BUYER_BLOCK_NAME_DEFAULT"] = "Покупатель";
$MESS["BACK_DEFAULT"] = "Назад";
$MESS["FURTHER_DEFAULT"] = "Далее";
$MESS["EDIT_DEFAULT"] = "изменить";
$MESS["ORDER_DEFAULT"] = "Оформить заказ";
$MESS["ADD_DEFAULT"] = "Добавить";
$MESS["PRICE_DEFAULT"] = "Стоимость";
$MESS["PERIOD_DEFAULT"] = "Срок доставки";
$MESS["NAV_BACK_DEFAULT"] = "Назад";
$MESS["NAV_FORWARD_DEFAULT"] = "Вперед";
$MESS["PRICE_FREE_DEFAULT"] = "бесплатно";
$MESS["ECONOMY_DEFAULT"] = "Экономия";
$MESS["REGISTRATION_REFERENCE_DEFAULT"] = "Если вы впервые на сайте, и хотите, чтобы мы вас помнили, и все ваши заказы сохранялись, заполните регистрационную форму.";
$MESS["AUTH_REFERENCE_1_DEFAULT"] = "Символом \"звездочка\" (*) отмечены обязательные для заполнения поля.";
$MESS["AUTH_REFERENCE_2_DEFAULT"] = "После регистрации вы получите информационное письмо.";
$MESS["AUTH_REFERENCE_3_DEFAULT"] = "Личные сведения, полученные в распоряжение интернет-магазина при регистрации или каким-либо иным образом, не будут без разрешения пользователей передаваться третьим организациям и лицам за исключением ситуаций, когда этого требует закон или судебное решение.";
$MESS["ADDITIONAL_PROPS_DEFAULT"] = "Дополнительные свойства";
$MESS["USE_COUPON_DEFAULT"] = "Применить купон";
$MESS["COUPON_DEFAULT"] = "Купон";
$MESS["PERSON_TYPE_DEFAULT"] = "Тип плательщика";
$MESS["SELECT_PROFILE_DEFAULT"] = "Выберите профиль";
$MESS["REGION_REFERENCE_DEFAULT"] = "Выберите свой город в списке. Если вы не нашли свой город, выберите \"другое местоположение\", а город впишите в поле \"Город\"";
$MESS["PICKUP_LIST_DEFAULT"] = "Пункты самовывоза:";
$MESS["NEAREST_PICKUP_LIST_DEFAULT"] = "Ближайшие пункты:";
$MESS["SELECT_PICKUP_DEFAULT"] = "Выбрать";
$MESS["INNER_PS_BALANCE_DEFAULT"] = "На вашем пользовательском счете:";
$MESS["ORDER_DESC_DEFAULT"] = "Комментарии к заказу:";
$MESS["SELECT_FILE_DEFAULT"] = "Выбрать";
$MESS["SUCCESS_PRELOAD_TEXT_DEFAULT"] = "Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Если все заполнено верно, нажмите кнопку \"#ORDER_BUTTON#\".
";
$MESS["FAIL_PRELOAD_TEXT_DEFAULT"] = "Вы заказывали в нашем интернет-магазине, поэтому мы заполнили все данные автоматически.<br />
Обратите внимание на развернутый блок с информацией о заказе. Здесь вы можете внести необходимые изменения или
оставить как есть и нажать кнопку \"#ORDER_BUTTON#\".
";
$MESS["DELIVERY_CALC_ERROR_TITLE_DEFAULT"] = "Не удалось рассчитать стоимость доставки.";
$MESS["DELIVERY_CALC_ERROR_TEXT_DEFAULT"] = "Вы можете продолжить оформление заказа, а чуть позже менеджер магазина свяжется с вами и уточнит информацию по доставке.";
$MESS["EMPTY_BASKET_TITLE"] = "Ваша корзина пуста";
$MESS["EMPTY_BASKET_HINT"] = "#A1#Нажмите здесь#A2#, чтобы продолжить покупки";
$MESS["SOA_BAD_EXTENSION"] = "Неверный тип файла";
$MESS["SOA_MAX_SIZE"] = "Превышен максимальный размер файла";
$MESS["PAY_SYSTEM_PAYABLE_ERROR_DEFAULT"] = "Вы сможете оплатить заказ после того, как менеджер проверит наличие полного комплекта товаров на складе. Сразу после проверки вы получите письмо с инструкциями по оплате. Оплатить заказ можно будет в персональном разделе сайта.";
?>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,13 @@
<? use Intaro\RetailCrm\Component\ConfigProvider;
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
/**
* @var array $arParams
* @var array $arResult
* @var SaleOrderAjax $component
*/
$arResult['LOYALTY_STATUS'] = ConfigProvider::getLoyaltyProgramStatus();
$component = $this->__component;
$component::scaleImages($arResult['JS_DATA'], $arParams['SERVICES_IMAGES_SCALING']);

View file

@ -0,0 +1,444 @@
BX.saleOrderAjax = { // bad solution, actually, a singleton at the page
BXCallAllowed: false,
options: {},
indexCache: {},
controls: {},
modes: {},
properties: {},
// called once, on component load
init: function(options)
{
var ctx = this;
this.options = options;
window.submitFormProxy = BX.proxy(function(){
ctx.submitFormProxy.apply(ctx, arguments);
}, this);
BX(function(){
ctx.initDeferredControl();
});
BX(function(){
ctx.BXCallAllowed = true; // unlock form refresher
});
this.controls.scope = BX('bx-soa-order');
// user presses "add location" when he cannot find location in popup mode
BX.bindDelegate(this.controls.scope, 'click', {className: '-bx-popup-set-mode-add-loc'}, function(){
var input = BX.create('input', {
attrs: {
type: 'hidden',
name: 'PERMANENT_MODE_STEPS',
value: '1'
}
});
BX.prepend(input, BX('bx-soa-order'));
ctx.BXCallAllowed = false;
BX.Sale.OrderAjaxComponent.sendRequest();
});
},
cleanUp: function(){
for(var k in this.properties)
{
if (this.properties.hasOwnProperty(k))
{
if(typeof this.properties[k].input != 'undefined')
{
BX.unbindAll(this.properties[k].input);
this.properties[k].input = null;
}
if(typeof this.properties[k].control != 'undefined')
BX.unbindAll(this.properties[k].control);
}
}
this.properties = {};
},
addPropertyDesc: function(desc){
this.properties[desc.id] = desc.attributes;
this.properties[desc.id].id = desc.id;
},
// called each time form refreshes
initDeferredControl: function()
{
var ctx = this,
k,
row,
input,
locPropId,
m,
control,
code,
townInputFlag,
adapter;
// first, init all controls
if(typeof window.BX.locationsDeferred != 'undefined'){
this.BXCallAllowed = false;
for(k in window.BX.locationsDeferred){
window.BX.locationsDeferred[k].call(this);
window.BX.locationsDeferred[k] = null;
delete(window.BX.locationsDeferred[k]);
this.properties[k].control = window.BX.locationSelectors[k];
delete(window.BX.locationSelectors[k]);
}
}
for(k in this.properties){
// zip input handling
if(this.properties[k].isZip){
row = this.controls.scope.querySelector('[data-property-id-row="'+k+'"]');
if(BX.type.isElementNode(row)){
input = row.querySelector('input[type="text"]');
if(BX.type.isElementNode(input)){
this.properties[k].input = input;
// set value for the first "location" property met
locPropId = false;
for(m in this.properties){
if(this.properties[m].type == 'LOCATION'){
locPropId = m;
break;
}
}
if(locPropId !== false){
BX.bindDebouncedChange(input, function(value){
var zipChangedNode = BX('ZIP_PROPERTY_CHANGED');
zipChangedNode && (zipChangedNode.value = 'Y');
input = null;
row = null;
if(BX.type.isNotEmptyString(value) && /^\s*\d+\s*$/.test(value) && value.length > 3){
ctx.getLocationsByZip(value, function(locationsData){
ctx.properties[locPropId].control.setValueByLocationIds(locationsData);
}, function(){
try{
// ctx.properties[locPropId].control.clearSelected();
}catch(e){}
});
}
});
}
}
}
}
// location handling, town property, etc...
if(this.properties[k].type == 'LOCATION')
{
if(typeof this.properties[k].control != 'undefined'){
control = this.properties[k].control; // reference to sale.location.selector.*
code = control.getSysCode();
// we have town property (alternative location)
if(typeof this.properties[k].altLocationPropId != 'undefined')
{
if(code == 'sls') // for sale.location.selector.search
{
// replace default boring "nothing found" label for popup with "-bx-popup-set-mode-add-loc" inside
control.replaceTemplate('nothing-found', this.options.messages.notFoundPrompt);
}
if(code == 'slst') // for sale.location.selector.steps
{
(function(k, control){
// control can have "select other location" option
control.setOption('pseudoValues', ['other']);
// insert "other location" option to popup
control.bindEvent('control-before-display-page', function(adapter){
control = null;
var parentValue = adapter.getParentValue();
// you can choose "other" location only if parentNode is not root and is selectable
if(parentValue == this.getOption('rootNodeValue') || !this.checkCanSelectItem(parentValue))
return;
var controlInApater = adapter.getControl();
if(typeof controlInApater.vars.cache.nodes['other'] == 'undefined')
{
controlInApater.fillCache([{
CODE: 'other',
DISPLAY: ctx.options.messages.otherLocation,
IS_PARENT: false,
VALUE: 'other'
}], {
modifyOrigin: true,
modifyOriginPosition: 'prepend'
});
}
});
townInputFlag = BX('LOCATION_ALT_PROP_DISPLAY_MANUAL['+parseInt(k)+']');
control.bindEvent('after-select-real-value', function(){
// some location chosen
if(BX.type.isDomNode(townInputFlag))
townInputFlag.value = '0';
});
control.bindEvent('after-select-pseudo-value', function(){
// option "other location" chosen
if(BX.type.isDomNode(townInputFlag))
townInputFlag.value = '1';
});
// when user click at default location or call .setValueByLocation*()
control.bindEvent('before-set-value', function(){
if(BX.type.isDomNode(townInputFlag))
townInputFlag.value = '0';
});
// restore "other location" label on the last control
if(BX.type.isDomNode(townInputFlag) && townInputFlag.value == '1'){
// a little hack: set "other location" text display
adapter = control.getAdapterAtPosition(control.getStackSize() - 1);
if(typeof adapter != 'undefined' && adapter !== null)
adapter.setValuePair('other', ctx.options.messages.otherLocation);
}
})(k, control);
}
}
}
}
}
this.BXCallAllowed = true;
//set location initialized flag and refresh region & property actual content
if (BX.Sale.OrderAjaxComponent)
BX.Sale.OrderAjaxComponent.locationsCompletion();
},
checkMode: function(propId, mode){
//if(typeof this.modes[propId] == 'undefined')
// this.modes[propId] = {};
//if(typeof this.modes[propId] != 'undefined' && this.modes[propId][mode])
// return true;
if(mode == 'altLocationChoosen'){
if(this.checkAbility(propId, 'canHaveAltLocation')){
var input = this.getInputByPropId(this.properties[propId].altLocationPropId);
var altPropId = this.properties[propId].altLocationPropId;
if(input !== false && input.value.length > 0 && !input.disabled && this.properties[altPropId].valueSource != 'default'){
//this.modes[propId][mode] = true;
return true;
}
}
}
return false;
},
checkAbility: function(propId, ability){
if(typeof this.properties[propId] == 'undefined')
this.properties[propId] = {};
if(typeof this.properties[propId].abilities == 'undefined')
this.properties[propId].abilities = {};
if(typeof this.properties[propId].abilities != 'undefined' && this.properties[propId].abilities[ability])
return true;
if(ability == 'canHaveAltLocation'){
if(this.properties[propId].type == 'LOCATION'){
// try to find corresponding alternate location prop
if(typeof this.properties[propId].altLocationPropId != 'undefined' && typeof this.properties[this.properties[propId].altLocationPropId]){
var altLocPropId = this.properties[propId].altLocationPropId;
if(typeof this.properties[propId].control != 'undefined' && this.properties[propId].control.getSysCode() == 'slst'){
if(this.getInputByPropId(altLocPropId) !== false){
this.properties[propId].abilities[ability] = true;
return true;
}
}
}
}
}
return false;
},
getInputByPropId: function(propId){
if(typeof this.properties[propId].input != 'undefined')
return this.properties[propId].input;
var row = this.getRowByPropId(propId);
if(BX.type.isElementNode(row)){
var input = row.querySelector('input[type="text"]');
if(BX.type.isElementNode(input)){
this.properties[propId].input = input;
return input;
}
}
return false;
},
getRowByPropId: function(propId){
if(typeof this.properties[propId].row != 'undefined')
return this.properties[propId].row;
var row = this.controls.scope.querySelector('[data-property-id-row="'+propId+'"]');
if(BX.type.isElementNode(row)){
this.properties[propId].row = row;
return row;
}
return false;
},
getAltLocPropByRealLocProp: function(propId){
if(typeof this.properties[propId].altLocationPropId != 'undefined')
return this.properties[this.properties[propId].altLocationPropId];
return false;
},
toggleProperty: function(propId, way, dontModifyRow){
var prop = this.properties[propId];
if(typeof prop.row == 'undefined')
prop.row = this.getRowByPropId(propId);
if(typeof prop.input == 'undefined')
prop.input = this.getInputByPropId(propId);
if(!way){
if(!dontModifyRow)
BX.hide(prop.row);
prop.input.disabled = true;
}else{
if(!dontModifyRow)
BX.show(prop.row);
prop.input.disabled = false;
}
},
submitFormProxy: function(item, control)
{
var propId = false;
for(var k in this.properties){
if(typeof this.properties[k].control != 'undefined' && this.properties[k].control == control){
propId = k;
break;
}
}
// turning LOCATION_ALT_PROP_DISPLAY_MANUAL on\off
if(item != 'other'){
if(this.BXCallAllowed){
this.BXCallAllowed = false;
setTimeout(function(){BX.Sale.OrderAjaxComponent.sendRequest()}, 20);
}
}
},
getPreviousAdapterSelectedNode: function(control, adapter){
var index = adapter.getIndex();
var prevAdapter = control.getAdapterAtPosition(index - 1);
if(typeof prevAdapter !== 'undefined' && prevAdapter != null){
var prevValue = prevAdapter.getControl().getValue();
if(typeof prevValue != 'undefined'){
var node = control.getNodeByValue(prevValue);
if(typeof node != 'undefined')
return node;
return false;
}
}
return false;
},
getLocationsByZip: function(value, successCallback, notFoundCallback)
{
if(typeof this.indexCache[value] != 'undefined')
{
successCallback.apply(this, [this.indexCache[value]]);
return;
}
var ctx = this;
BX.ajax({
url: this.options.source,
method: 'post',
dataType: 'json',
async: true,
processData: true,
emulateOnload: true,
start: true,
data: {'ACT': 'GET_LOCS_BY_ZIP', 'ZIP': value},
//cache: true,
onsuccess: function(result){
if(result.result)
{
ctx.indexCache[value] = result.data;
successCallback.apply(ctx, [result.data]);
}
else
{
notFoundCallback.call(ctx);
}
},
onfailure: function(type, e){
// on error do nothing
}
});
}
};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,264 @@
BX.namespace('BX.Sale.OrderAjaxComponent.Maps');
(function() {
'use strict';
BX.Sale.OrderAjaxComponent.Maps = {
init: function(ctx)
{
this.context = ctx || {};
this.pickUpOptions = this.context.options.pickUpMap;
this.propsOptions = this.context.options.propertyMap;
this.maxWaitTimeExpired = false;
this.scheme = this.context.isHttps ? 'https' : 'http';
this.icons = {
red: this.scheme + '://maps.google.com/mapfiles/ms/icons/red-dot.png',
green: this.scheme + '://maps.google.com/mapfiles/ms/icons/green-dot.png'
};
return this;
},
initializePickUpMap: function(selected)
{
if (!google)
return;
this.markers = [];
this.bounds = new google.maps.LatLngBounds();
var lat = !!selected ? parseFloat(BX.util.trim(selected.GPS_N)) : this.pickUpOptions.defaultMapPosition.lat,
lng = !!selected ? parseFloat(BX.util.trim(selected.GPS_S)) : this.pickUpOptions.defaultMapPosition.lon;
this.pickUpMap = new google.maps.Map(BX('pickUpMap'), {
center: {lat: lat, lng: lng},
zoom: this.pickUpOptions.defaultMapPosition.zoom,
scrollwheel: false
});
google.maps.event.addListener(this.pickUpMap, 'click', BX.proxy(this.closeAllBalloons, this));
},
canUseRecommendList: function()
{
return false;
},
getRecommendedStoreIds: function(geoLocation, length)
{
return [];
},
getDistance: function(from, to)
{
return false;
},
pickUpMapFocusWaiter: function()
{
if (this.pickUpMap && this.markers.length)
{
this.setPickUpMapFocus();
}
else
{
setTimeout(BX.proxy(this.pickUpMapFocusWaiter, this), 100);
}
},
setPickUpMapFocus: function()
{
google.maps.event.trigger(this.pickUpMap, 'resize');
this.pickUpMap.fitBounds(this.bounds);
},
showNearestPickups: function(successCb, failCb)
{
},
buildBalloons: function(activeStores)
{
if (!google)
return;
var i, marker;
var that = this;
for (i = 0; i < activeStores.length; i++)
{
marker = new google.maps.Marker({
position: {lat: parseFloat(activeStores[i].GPS_N), lng: parseFloat(activeStores[i].GPS_S)},
map: this.pickUpMap,
title: activeStores[i].TITLE
});
marker.info = new google.maps.InfoWindow({
content: '<h3>' + BX.util.htmlspecialchars(activeStores[i].TITLE) + '</h3>' + this.getStoreInfoHtml(activeStores[i]) + '<br />'
+ '<a class="btn btn-sm btn-default" data-store="' + activeStores[i].ID + '">'
+ this.context.params.MESS_SELECT_PICKUP + '</a>'
});
marker.storeId = activeStores[i].ID;
google.maps.event.addListener(marker.info, 'domready', function(){
var button = document.querySelector('a[data-store]');
if (button)
{
BX.bind(button, 'click', BX.proxy(that.selectStoreByClick, that));
}
});
google.maps.event.addListener(marker, 'click', function(){
that.closeAllBalloons();
this.info.open(this.getMap(), this);
});
if (BX('BUYER_STORE').value === activeStores[i].ID)
{
marker.setIcon(this.icons.green);
}
else
{
marker.setIcon(this.icons.red);
}
this.markers.push(marker);
this.bounds.extend(marker.getPosition());
}
},
selectStoreByClick: function(e)
{
var target = e.target || e.srcElement;
this.context.selectStore(target.getAttribute('data-store'));
this.context.clickNextAction(e);
this.closeAllBalloons();
},
closeAllBalloons: function()
{
for (var i = 0; i < this.markers.length; i++)
{
this.markers[i].info.close();
}
},
selectBalloon: function(storeItemId)
{
if (!this.pickUpMap || !this.markers || !this.markers.length)
return;
for (var i = 0; i < this.markers.length; i++)
{
if (this.markers[i].storeId === storeItemId)
{
this.markers[i].setIcon(this.icons.green);
this.pickUpMap.panTo(this.markers[i].getPosition())
}
else
{
this.markers[i].setIcon(this.icons.red);
}
}
},
pickUpFinalAction: function()
{
},
initializePropsMap: function(propsMapData)
{
if (!google)
return;
this.propsMap = new google.maps.Map(BX('propsMap'), {
center: {lat: propsMapData.lat, lng: propsMapData.lon},
zoom: propsMapData.zoom,
scrollwheel: false
});
this.currentPropsMapCenter = this.propsMap.getCenter();
google.maps.event.addListener(this.propsMap, 'click', BX.delegate(function(e){
if (!this.propsMarker)
{
this.propsMarker = new google.maps.Marker({
position: e.latLng,
map: this.propsMap,
draggable: true
});
this.propsMarker.addListener('drag', BX.proxy(this.onPropsMarkerChanged, this));
this.propsMarker.addListener('dragend', BX.proxy(this.onPropsMarkerChanged, this));
}
else
{
this.propsMarker.setPosition(e.latLng);
}
this.currentPropsMapCenter = e.latLng;
this.onPropsMarkerChanged({latLng: e.latLng});
}, this));
},
onPropsMarkerChanged: function(event)
{
var orderDesc = BX('orderDescription', true),
lat = event.latLng.lat(),
lng = event.latLng.lng(),
ind, before, after, string;
if (orderDesc)
{
ind = orderDesc.value.indexOf(BX.message('SOA_MAP_COORDS') + ':');
if (ind === -1)
{
orderDesc.value = BX.message('SOA_MAP_COORDS') + ': ' + lat + ', ' + lng + '\r\n' + orderDesc.value;
}
else
{
string = BX.message('SOA_MAP_COORDS') + ': ' + lat + ', ' + lng;
before = orderDesc.value.substring(0, ind);
after = orderDesc.value.substring(ind + string.length);
orderDesc.value = before + string + after;
}
}
},
propsMapFocusWaiter: function()
{
if (this.propsMap)
{
this.setPropsMapFocus();
}
else
{
setTimeout(BX.proxy(this.propsMapFocusWaiter, this), 100);
}
},
setPropsMapFocus: function()
{
google.maps.event.trigger(this.propsMap, 'resize');
this.propsMap.setCenter(this.currentPropsMapCenter);
},
getStoreInfoHtml: function(currentStore)
{
var html = '';
if (currentStore.ADDRESS)
html += BX.message('SOA_PICKUP_ADDRESS') + ': ' + BX.util.htmlspecialchars(currentStore.ADDRESS) + '<br />';
if (currentStore.PHONE)
html += BX.message('SOA_PICKUP_PHONE') + ': ' + BX.util.htmlspecialchars(currentStore.PHONE) + '<br />';
if (currentStore.SCHEDULE)
html += BX.message('SOA_PICKUP_WORK') + ': ' + BX.util.htmlspecialchars(currentStore.SCHEDULE) + '<br />';
if (currentStore.DESCRIPTION)
html += BX.message('SOA_PICKUP_DESC') + ': ' + BX.util.htmlspecialchars(currentStore.DESCRIPTION) + '<br />';
return html;
}
};
})();

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
BX.namespace("BX.Sale.OrderAjaxComponent.Maps");(function(){"use strict";BX.Sale.OrderAjaxComponent.Maps={init:function(t){this.context=t||{};this.pickUpOptions=this.context.options.pickUpMap;this.propsOptions=this.context.options.propertyMap;this.maxWaitTimeExpired=false;this.scheme=this.context.isHttps?"https":"http";this.icons={red:this.scheme+"://maps.google.com/mapfiles/ms/icons/red-dot.png",green:this.scheme+"://maps.google.com/mapfiles/ms/icons/green-dot.png"};return this},initializePickUpMap:function(t){if(!google)return;this.markers=[];this.bounds=new google.maps.LatLngBounds;var e=!!t?parseFloat(BX.util.trim(t.GPS_N)):this.pickUpOptions.defaultMapPosition.lat,s=!!t?parseFloat(BX.util.trim(t.GPS_S)):this.pickUpOptions.defaultMapPosition.lon;this.pickUpMap=new google.maps.Map(BX("pickUpMap"),{center:{lat:e,lng:s},zoom:this.pickUpOptions.defaultMapPosition.zoom,scrollwheel:false});google.maps.event.addListener(this.pickUpMap,"click",BX.proxy(this.closeAllBalloons,this))},canUseRecommendList:function(){return false},getRecommendedStoreIds:function(t,e){return[]},getDistance:function(t,e){return false},pickUpMapFocusWaiter:function(){if(this.pickUpMap&&this.markers.length){this.setPickUpMapFocus()}else{setTimeout(BX.proxy(this.pickUpMapFocusWaiter,this),100)}},setPickUpMapFocus:function(){google.maps.event.trigger(this.pickUpMap,"resize");this.pickUpMap.fitBounds(this.bounds)},showNearestPickups:function(t,e){},buildBalloons:function(t){if(!google)return;var e,s;var i=this;for(e=0;e<t.length;e++){s=new google.maps.Marker({position:{lat:parseFloat(t[e].GPS_N),lng:parseFloat(t[e].GPS_S)},map:this.pickUpMap,title:t[e].TITLE});s.info=new google.maps.InfoWindow({content:"<h3>"+BX.util.htmlspecialchars(t[e].TITLE)+"</h3>"+this.getStoreInfoHtml(t[e])+"<br />"+'<a class="btn btn-sm btn-default" data-store="'+t[e].ID+'">'+this.context.params.MESS_SELECT_PICKUP+"</a>"});s.storeId=t[e].ID;google.maps.event.addListener(s.info,"domready",function(){var t=document.querySelector("a[data-store]");if(t){BX.bind(t,"click",BX.proxy(i.selectStoreByClick,i))}});google.maps.event.addListener(s,"click",function(){i.closeAllBalloons();this.info.open(this.getMap(),this)});if(BX("BUYER_STORE").value===t[e].ID){s.setIcon(this.icons.green)}else{s.setIcon(this.icons.red)}this.markers.push(s);this.bounds.extend(s.getPosition())}},selectStoreByClick:function(t){var e=t.target||t.srcElement;this.context.selectStore(e.getAttribute("data-store"));this.context.clickNextAction(t);this.closeAllBalloons()},closeAllBalloons:function(){for(var t=0;t<this.markers.length;t++){this.markers[t].info.close()}},selectBalloon:function(t){if(!this.pickUpMap||!this.markers||!this.markers.length)return;for(var e=0;e<this.markers.length;e++){if(this.markers[e].storeId===t){this.markers[e].setIcon(this.icons.green);this.pickUpMap.panTo(this.markers[e].getPosition())}else{this.markers[e].setIcon(this.icons.red)}}},pickUpFinalAction:function(){},initializePropsMap:function(t){if(!google)return;this.propsMap=new google.maps.Map(BX("propsMap"),{center:{lat:t.lat,lng:t.lon},zoom:t.zoom,scrollwheel:false});this.currentPropsMapCenter=this.propsMap.getCenter();google.maps.event.addListener(this.propsMap,"click",BX.delegate(function(t){if(!this.propsMarker){this.propsMarker=new google.maps.Marker({position:t.latLng,map:this.propsMap,draggable:true});this.propsMarker.addListener("drag",BX.proxy(this.onPropsMarkerChanged,this));this.propsMarker.addListener("dragend",BX.proxy(this.onPropsMarkerChanged,this))}else{this.propsMarker.setPosition(t.latLng)}this.currentPropsMapCenter=t.latLng;this.onPropsMarkerChanged({latLng:t.latLng})},this))},onPropsMarkerChanged:function(t){var e=BX("orderDescription",true),s=t.latLng.lat(),i=t.latLng.lng(),o,r,a,n;if(e){o=e.value.indexOf(BX.message("SOA_MAP_COORDS")+":");if(o===-1){e.value=BX.message("SOA_MAP_COORDS")+": "+s+", "+i+"\r\n"+e.value}else{n=BX.message("SOA_MAP_COORDS")+": "+s+", "+i;r=e.value.substring(0,o);a=e.value.substring(o+n.length);e.value=r+n+a}}},propsMapFocusWaiter:function(){if(this.propsMap){this.setPropsMapFocus()}else{setTimeout(BX.proxy(this.propsMapFocusWaiter,this),100)}},setPropsMapFocus:function(){google.maps.event.trigger(this.propsMap,"resize");this.propsMap.setCenter(this.currentPropsMapCenter)},getStoreInfoHtml:function(t){var e="";if(t.ADDRESS)e+=BX.message("SOA_PICKUP_ADDRESS")+": "+BX.util.htmlspecialchars(t.ADDRESS)+"<br />";if(t.PHONE)e+=BX.message("SOA_PICKUP_PHONE")+": "+BX.util.htmlspecialchars(t.PHONE)+"<br />";if(t.SCHEDULE)e+=BX.message("SOA_PICKUP_WORK")+": "+BX.util.htmlspecialchars(t.SCHEDULE)+"<br />";if(t.DESCRIPTION)e+=BX.message("SOA_PICKUP_DESC")+": "+BX.util.htmlspecialchars(t.DESCRIPTION)+"<br />";return e}}})();

View file

@ -0,0 +1,334 @@
BX.namespace('BX.Sale.OrderAjaxComponent.Maps');
(function() {
'use strict';
BX.Sale.OrderAjaxComponent.Maps = {
init: function(ctx)
{
this.context = ctx || {};
this.pickUpOptions = this.context.options.pickUpMap;
this.propsOptions = this.context.options.propertyMap;
this.maxWaitTimeExpired = false;
return this;
},
initializePickUpMap: function(selected)
{
if (!ymaps)
return;
this.pickUpMap = new ymaps.Map('pickUpMap', {
center: !!selected
? [selected.GPS_N, selected.GPS_S]
: [this.pickUpOptions.defaultMapPosition.lat, this.pickUpOptions.defaultMapPosition.lon],
zoom: this.pickUpOptions.defaultMapPosition.zoom
});
this.pickUpMap.behaviors.disable('scrollZoom');
this.pickUpMap.events.add('click', BX.delegate(function(){
if (this.pickUpMap.balloon.isOpen())
{
this.pickUpMap.balloon.close();
}
}, this));
},
pickUpMapFocusWaiter: function()
{
if (this.pickUpMap && this.pickUpMap.geoObjects)
{
this.setPickUpMapFocus();
}
else
{
setTimeout(BX.proxy(this.pickUpMapFocusWaiter, this), 100);
}
},
setPickUpMapFocus: function()
{
var bounds, diff0, diff1;
bounds = this.pickUpMap.geoObjects.getBounds();
if (bounds && bounds.length)
{
diff0 = bounds[1][0] - bounds[0][0];
diff1 = bounds[1][1] - bounds[0][1];
bounds[0][0] -= diff0/10;
bounds[0][1] -= diff1/10;
bounds[1][0] += diff0/10;
bounds[1][1] += diff1/10;
this.pickUpMap.setBounds(bounds, {checkZoomRange: true});
}
},
showNearestPickups: function(successCb, failCb)
{
if (!ymaps)
return;
var provider = this.pickUpOptions.secureGeoLocation && BX.browser.IsChrome() && !this.context.isHttps
? 'yandex'
: 'auto';
var maxTime = this.pickUpOptions.geoLocationMaxTime || 5000;
ymaps.geolocation.get({
provider: provider,
timeOut: maxTime
}).then(
BX.delegate(function(result){
if (!this.maxWaitTimeExpired)
{
this.maxWaitTimeExpired = true;
result.geoObjects.options.set('preset', 'islands#darkGreenCircleDotIcon');
this.pickUpMap.geoObjects.add(result.geoObjects);
successCb(result);
}
}, this),
BX.delegate(function() {
if (!this.maxWaitTimeExpired)
{
this.maxWaitTimeExpired = true;
failCb();
}
}, this)
);
},
buildBalloons: function(activeStores)
{
if (!ymaps)
return;
var that = this;
this.pickUpPointsJSON = [];
for (var i = 0; i < activeStores.length; i++)
{
var storeInfoHtml = this.getStoreInfoHtml(activeStores[i]);
this.pickUpPointsJSON.push({
type: 'Feature',
geometry: {type: 'Point', coordinates: [activeStores[i].GPS_N, activeStores[i].GPS_S]},
properties: {storeId: activeStores[i].ID}
});
var geoObj = new ymaps.Placemark([activeStores[i].GPS_N, activeStores[i].GPS_S], {
hintContent: BX.util.htmlspecialchars(activeStores[i].TITLE) + '<br />' + BX.util.htmlspecialchars(activeStores[i].ADDRESS),
storeTitle: activeStores[i].TITLE,
storeBody: storeInfoHtml,
id: activeStores[i].ID,
text: this.context.params.MESS_SELECT_PICKUP
}, {
balloonContentLayout: ymaps.templateLayoutFactory.createClass(
'<h3>{{ properties.storeTitle }}</h3>' +
'{{ properties.storeBody|raw }}' +
'<br /><a class="btn btn-sm btn-default" data-store="{{ properties.id }}">{{ properties.text }}</a>',
{
build: function() {
this.constructor.superclass.build.call(this);
var button = document.querySelector('a[data-store]');
if (button)
BX.bind(button, 'click', this.selectStoreByClick);
},
clear: function() {
var button = document.querySelector('a[data-store]');
if (button)
BX.unbind(button, 'click', this.selectStoreByClick);
this.constructor.superclass.clear.call(this);
},
selectStoreByClick: function(e) {
var target = e.target || e.srcElement;
if (that.pickUpMap.container.isFullscreen())
{
that.pickUpMap.container.exitFullscreen();
}
that.context.selectStore(target.getAttribute('data-store'));
that.context.clickNextAction(e);
that.pickUpMap.balloon.close();
}
}
)
});
if (BX('BUYER_STORE').value === activeStores[i].ID)
{
geoObj.options.set('preset', 'islands#redDotIcon');
}
this.pickUpMap.geoObjects.add(geoObj);
}
},
selectBalloon: function(storeItemId)
{
if (this.pickUpMap && this.pickUpMap.geoObjects)
{
this.pickUpMap.geoObjects.each(BX.delegate(function(placeMark){
if (placeMark.properties.get('id'))
{
placeMark.options.unset('preset');
}
if (placeMark.properties.get('id') === storeItemId)
{
placeMark.options.set({preset: 'islands#redDotIcon'});
this.pickUpMap.panTo([placeMark.geometry.getCoordinates()])
}
}, this));
}
},
pickUpFinalAction: function()
{
if (this.pickUpMap && this.pickUpMap.geoObjects)
{
var buyerStoreInput = BX('BUYER_STORE');
this.pickUpMap.geoObjects.each(function(geoObject){
if (geoObject.properties.get('id') === buyerStoreInput.value)
{
geoObject.options.set({preset: 'islands#redDotIcon'});
}
else if (parseInt(geoObject.properties.get('id')) > 0)
{
geoObject.options.unset('preset');
}
});
}
},
initializePropsMap: function(propsMapData)
{
if (!ymaps)
return;
this.propsMap = new ymaps.Map('propsMap', {
center: [propsMapData.lat, propsMapData.lon],
zoom: propsMapData.zoom
});
this.propsMap.behaviors.disable('scrollZoom');
this.propsMap.events.add('click', BX.delegate(function(e){
var coordinates = e.get('coords'), placeMark;
if (this.propsMap.geoObjects.getLength() === 0)
{
placeMark = new ymaps.Placemark([coordinates[0], coordinates[1]], {}, {
draggable:true,
preset: 'islands#redDotIcon'
});
placeMark.events.add(['parentchange', 'geometrychange'], function() {
var orderDesc = BX('orderDescription'),
coordinates = placeMark.geometry.getCoordinates(),
ind, before, after, string;
if (orderDesc)
{
ind = orderDesc.value.indexOf(BX.message('SOA_MAP_COORDS') + ':');
if (ind === -1)
{
orderDesc.value = BX.message('SOA_MAP_COORDS') + ': ' + coordinates[0] + ', '
+ coordinates[1] + '\r\n' + orderDesc.value;
}
else
{
string = BX.message('SOA_MAP_COORDS') + ': ' + coordinates[0] + ', ' + coordinates[1];
before = orderDesc.value.substring(0, ind);
after = orderDesc.value.substring(ind + string.length);
orderDesc.value = before + string + after;
}
}
});
this.propsMap.geoObjects.add(placeMark);
}
else
{
this.propsMap.geoObjects.get(0).geometry.setCoordinates([coordinates[0], coordinates[1]]);
}
}, this));
},
canUseRecommendList: function()
{
return (this.pickUpPointsJSON && this.pickUpPointsJSON.length);
},
getRecommendedStoreIds: function(geoLocation)
{
if (!geoLocation)
return [];
var storeIds = [];
var length = this.pickUpPointsJSON.length < this.pickUpOptions.nearestPickUpsToShow
? this.pickUpPointsJSON.length
: this.pickUpOptions.nearestPickUpsToShow;
this.storeQueryResult = {};
for (var i = 0; i < length; i++)
{
var pointsGeoQuery = ymaps.geoQuery({
type: 'FeatureCollection',
features: this.pickUpPointsJSON
});
var res = pointsGeoQuery.getClosestTo(geoLocation);
var storeId = res.properties.get('storeId');
this.storeQueryResult[storeId] = res;
storeIds.push(storeId);
this.pickUpPointsJSON.splice(pointsGeoQuery.indexOf(res), 1);
}
return storeIds;
},
getDistance: function(geoLocation, storeId)
{
if (!geoLocation || !storeId)
return false;
var storeGeoQuery = this.storeQueryResult[storeId];
var distance = ymaps.coordSystem.geo.getDistance(geoLocation.geometry.getCoordinates(), storeGeoQuery.geometry.getCoordinates());
distance = Math.round(distance / 100) / 10;
return distance;
},
propsMapFocusWaiter: function(){},
getStoreInfoHtml: function(currentStore)
{
var html = '';
if (currentStore.ADDRESS)
html += BX.message('SOA_PICKUP_ADDRESS') + ': ' + BX.util.htmlspecialchars(currentStore.ADDRESS) + '<br />';
if (currentStore.PHONE)
html += BX.message('SOA_PICKUP_PHONE') + ': ' + BX.util.htmlspecialchars(currentStore.PHONE) + '<br />';
if (currentStore.SCHEDULE)
html += BX.message('SOA_PICKUP_WORK') + ': ' + BX.util.htmlspecialchars(currentStore.SCHEDULE) + '<br />';
if (currentStore.DESCRIPTION)
html += BX.message('SOA_PICKUP_DESC') + ': ' + BX.util.htmlspecialchars(currentStore.DESCRIPTION) + '<br />';
return html;
}
};
})();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,444 @@
/*
* Project:----------Store-2013
* Component---------CART_PAGE
* Last Refactoring:-31.10.2013
*
* @version:---------13.10.31[r1704]
*/
/*.bx_ordercart .bx_sort_container{
margin-bottom:15px;
min-height:32px;
color:#919191;
vertical-align:middle;
font-size:15px;
line-height:32px;
}
.bx_ordercart .bx_sort_container a{
display:inline-block;
margin-left:20px;
padding:0 20px;
border:1px solid #cdcdcd;
border-radius:3px;
background:#f9f9f9;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlM2UzZTMiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#e3e3e3));
background:-webkit-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: -moz-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: -ms-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: -o-linear-gradient(top, #f9f9f9 0%,#e3e3e3 100%);
background: linear-gradient(to bottom, #f9f9f9 0%,#e3e3e3 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#e3e3e3',GradientType=0 );
color:#4f4f4f;
text-decoration:none;
text-shadow:0 1px 0 rgba(255,255,255,.8);
line-height:32px;
}*/
.bx_ordercart .bx_sort_container a:hover{
background:#f9f9f9;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZGVkZWQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#ededed));
background:-webkit-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: -moz-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: -ms-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: -o-linear-gradient(top, #f9f9f9 0%,#ededed 100%);
background: linear-gradient(to bottom, #f9f9f9 0%,#ededed 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#ededed',GradientType=0 );
}
.bx_ordercart .bx_sort_container a:active{
background:#707070;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzcwNzA3MCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNhMmEyYTIiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#707070), color-stop(100%,#a2a2a2));
background:-webkit-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: -moz-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: -ms-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: -o-linear-gradient(top, #707070 0%,#a2a2a2 100%);
background: linear-gradient(to bottom, #707070 0%,#a2a2a2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#707070', endColorstr='#a2a2a2',GradientType=0 );
box-shadow:inset 0 1px 2px 0 #3e3e3e;
color:#fff;
text-shadow:0 1px 0 #505050;
}
.bx_ordercart .bx_ordercart_order_table_container{
overflow-x:auto;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
margin:0;
padding:0;
width:100%;
border:1px solid #c9c9c9;
border-radius:3px;
font-size:14px;
}
.bx_ordercart .bx_ordercart_order_table_container table{
margin:0;
padding:0;
min-width:100%;
border-collapse:collapse;
}
.bx_ordercart .bx_ordercart_order_table_container table td{
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
white-space:nowrap;
}
.bx_ordercart .bx_ordercart_order_table_container table td.margin{
padding:0;
width:2%;
border-bottom:none !important;
}
.bx_ordercart .bx_ordercart_order_table_container table thead td{
padding:0 5px;
min-height:39px;
background:#f5f5f5;
color:#000;
font-size:14px;
line-height:39px;
}
.bx_ordercart .bx_ordercart_order_table_container table tbody td{
padding:2% 1%;
border-bottom:1px solid #e5e5e5;
vertical-align:top;
}
.bx_ordercart .bx_ordercart_order_table_container table tbody tr:last-child td{border-bottom:none;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.itemphoto{width:20%;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.item,
.bx_ordercart .bx_ordercart_order_table_container tbody td.custom,
/*.bx_ordercart .bx_ordercart_order_table_container tbody td.control,*/
.bx_ordercart .bx_ordercart_order_table_container tbody td.price{
text-align:left;
font-size:16px;
line-height:22px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.custom span{display:none;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.item{width:70%;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{
color:#000;
font-weight:bold;
font-size:17px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .old_price{
color:#b8b8b8;
text-decoration:line-through;
font-size:13px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price{
color:#7f7f7f;
font-size:11px;
line-height:13px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price_value{
font-size:11px;
line-height:13px;
}
/*.bx_ordercart .bx_ordercart_order_table_container tbody td.control a{
color:#327ab7;
font-size:11px;
}
.bx_ordercart .bx_ordercart_order_table_container tbody td.control a:hover{text-decoration:none;}*/
.bx_ordercart .bx_ordercart_photo_container{
position:relative;
padding-top:100%;
min-width:50px;
max-width:100%;
height:0;
border:1px solid #c0cfda;
border-radius:2px;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_photo{
position:absolute;
top: 4%;
right: 4%;
bottom:4%;
left: 4%;
background-position:center;
-webkit-background-size:auto 100%;
background-size:auto 100%;
background-repeat:no-repeat;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand{
position:relative;
margin-top:3%;
min-width:50px;
max-width:100%;
border:1px solid #c0cfda;
border-radius:2px;
line-height:0;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand img{
margin:0;
padding:0;
width:100%;
height:auto;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle{
margin:0;
padding:0;
white-space:normal;
line-height:18px;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a{
color:#000;
text-decoration:none;
font-weight:bold;
font-size:16px;
line-height:16px;
}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemart{
margin-bottom:10px;
color:#b4b4b4;
font-size:13px;
}
.bx-touch .bx_ordercart td.custom .centered,
.bx-no-touch .bx_ordercart td.custom .some-class{display: none}
.bx_ordercart .bx_ordercart_order_pay{
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
margin:20px auto 0;
padding:0 20px;
}
/*.bx_ordercart .bx_ordercart_order_pay_left{
float:left;
width:50%;
}*/
/*.bx_ordercart .bx_ordercart_order_pay_right{
float:left;
width:50%;
text-align:right;
}*/
/*.bx_ordercart .bx_ordercart_coupon{ }*/
/*.bx_ordercart .bx_ordercart_coupon span{
display:block;
margin-bottom:13px;
color:#7f7f7f;
font-size:13px;
}*/
/*.bx_ordercart .bx_ordercart_coupon input{
height:34px;
border:1px solid #bababa;
border-radius:3px;
box-shadow:inset 0 1px 2px 0 rgba(0,0,0,.21);
color:#000;
text-align:center;
font-weight:bold;
font-size:16px;
line-height:34px;
}*/
/*.bx_ordercart .bx_ordercart_coupon input.good{
border:1px solid #59a62a;
background:rgba(89,166,42,.16);
box-shadow:0 0 2px 0 rgba(89,166,42,.8);
}*/
/*.bx_ordercart .bx_ordercart_coupon input.bad{
border:1px solid #e16565;
background:rgba(225,101,101,.16);
box-shadow:0 0 2px 0 rgba(225,101,101,.8);
}*/
.bx_ordercart .bx_ordercart_order_sum{float:right;}
.bx_ordercart .bx_ordercart_order_sum tr{ }
.bx_ordercart .bx_ordercart_order_sum tr td{
padding:1px;
text-align:right;
font-size:13px;
}
.bx_ordercart .bx_ordercart_order_sum tr td.custom_t1{width:100%;}
.bx_ordercart .bx_ordercart_order_sum tr td.custom_t2{white-space:nowrap;}
.bx_ordercart .bx_ordercart_order_sum tr td.fwb{font-weight:bold;}
.bx_ordercart_order_pay_center{
margin-top:20px;
padding-top:20px;
border-top:1px solid #e4e6e8;
text-align:right;
}
.bx_ordercart_order_pay_center span,
.bx_ordercart_order_pay_center a{
vertical-align:top;
line-height:53px;
}
.bx_ordercart_order_pay_center span{
margin:0 30px;
font-weight:bold;
font-size:17px;
}
.bx_ordercart_order_pay_center .checkout{
position:relative;
top:-9px;
display:inline-block;
padding:0 18px;
border-radius:3px;
background:#00a2df;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYTJkZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDZmY2IiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#00a2df), color-stop(100%,#006fcb));
background:-webkit-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: -moz-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: -ms-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: -o-linear-gradient(top, #00a2df 0%,#006fcb 100%);
background: linear-gradient(to bottom, #00a2df 0%,#006fcb 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a2df', endColorstr='#006fcb',GradientType=0 );
color:#fff;
vertical-align:bottom;
text-decoration:none;
text-shadow:0 1px 0 #0075b6;
font-weight:bold;
line-height:36px;
}
.bx_ordercart_order_pay_center .checkout:hover{
background:#00a2df;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYTJkZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwYTdkZGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#00a2df), color-stop(100%,#0a7ddd));
background:-webkit-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: -moz-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: -ms-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: -o-linear-gradient(top, #00a2df 0%,#0a7ddd 100%);
background: linear-gradient(to bottom, #00a2df 0%,#0a7ddd 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a2df', endColorstr='#0a7ddd',GradientType=0 );
}
.bx_ordercart_order_pay_center .checkout:active{
background:#0a7ddd;
background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzBhN2RkZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMGEyZGYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#0a7ddd), color-stop(100%,#00a2df));
background:-webkit-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: -moz-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: -ms-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: -o-linear-gradient(top, #0a7ddd 0%,#00a2df 100%);
background: linear-gradient(to bottom, #0a7ddd 0%,#00a2df 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0a7ddd', endColorstr='#00a2df',GradientType=0 );
box-shadow:inset 0 3px 2px 1px rgba(0,0,0,.22);
}
@media (max-width:980px){
.bx-touch .bx_ordercart .bx_sort_container span{display:block;}
.bx-touch .bx_ordercart .bx_sort_container a{margin:0 20px 10px 0;}
.bx_ordercart .bx_ordercart_order_table_container table thead td{font-size:13px;}
.bx_ordercart .bx_ordercart_order_table_container tbody td.custom,
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a,
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{font-size:14px;}
}
@media (max-width:680px){
.bx_ordercart .bx_ordercart_order_table_container table thead td{font-size:12px;}
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a,
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{font-size:12px;}
}
@media (max-width:600px){
.bx-touch .bx_ordercart .bx_ordercart_order_pay{width:100%;}
/*.bx-touch .bx_ordercart .bx_ordercart_order_pay_left,*/
.bx-touch .bx_ordercart .bx_ordercart_order_pay_right{
float:none;
width:100%;
text-align:center;
}
.bx-touch .bx_ordercart .bx_ordercart_order_sum{
float:none;
margin-top:20px;
width:100%;
}
}
@media (max-width:530px){
.bx-touch .bx_ordercart .bx_sort_container{
margin:10px 0;
text-align:left;
line-height:13px;
}
.bx-touch .bx_ordercart .bx_sort_container a{
display:inline;
margin:0 10px 0 0;
padding:0;
border:none;
background:none;
color:#327ab7;
text-decoration:underline;
font-size:13px;
}
.bx-touch .bx_ordercart .bx_sort_container a:hover{text-decoration:none;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td{display:block}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td{padding:2% 6%}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr{
margin-bottom:20px;
border-bottom:3px double #c9c9c9;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr:last-child{
margin-bottom:0;
border-bottom:none;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table thead{display:none;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td.item,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td.itemphoto{width:100%;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody tr td.item{padding-bottom:20px;}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.item .bx_item_detail_size_small_noadaptive,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.item .bx_item_detail_scu_small_noadaptive{margin:5px auto !important;}
.bx-touch .bx_ordercart .bx_ordercart_photo_container{
margin:0 auto;
padding-top:50%;
max-width:250px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand {
border:none;
text-align:center;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_brand img {
max-width:100%;
width:auto;
border-radius:2px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container table tbody td{border:none}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.custom span{
display:inline-block;
margin-right:10px;
font-weight:bold;
}
/*.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.control{text-align:center;word-spacing:15px;}*/
/*.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.control br{display:none}*/
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price{
padding-top:20px;
text-align:center;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price{
margin-top:10px;
margin-bottom:10px;
font-size:28px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .old_price{
margin-left:10px;
font-size:19px;
}
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price,
.bx-touch .bx_ordercart .bx_ordercart_order_table_container tbody td.price .type_price_value{display:inline-block;}
}
@media (max-width:490px){
.bx-touch .bx_ordercart_order_pay_center{
margin-bottom:40px;
text-align:center;
}
.bx-touch .bx_ordercart_order_pay_center span{display:block;}
.bx-touch .bx_ordercart_order_pay_center .checkout{top:0;}
}
.bx_ordercart .bx_ordercart_order_pay,
.bx_ordercart .bx_ordercart_order_sum,
/*.bx_ordercart .bx_ordercart_order_pay_left,*/
.bx_ordercart .bx_ordercart_order_pay_right,
.bx_ordercart_order_pay_center,
.bx_ordercart_order_pay_center span,
.bx_ordercart_order_pay_center .checkout,
.bx_ordercart .bx_ordercart_order_table_container table,
.bx_ordercart .bx_ordercart_order_table_container table tbody,
.bx_ordercart .bx_ordercart_order_table_container table tbody tr,
.bx_ordercart .bx_ordercart_order_table_container table tbody tr td,
.bx_ordercart .bx_ordercart_order_table_container .bx_ordercart_itemtitle a,
.bx_ordercart .bx_ordercart_order_table_container tbody td.price .current_price
{
-webkit-transition:all 0.3s ease;
-moz-transition:all 0.3s ease;
-ms-transition:all 0.3s ease;
-o-transition:all 0.3s ease;
transition:all 0.3s ease;
}

View file

@ -0,0 +1,668 @@
<? if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) {
die();
}
use Bitrix\Main;
use Bitrix\Main\Localization\Loc;
use Bitrix\Sale\Location\TypeTable;
/**
* @var array $arParams
* @var array $arResult
* @var CMain $APPLICATION
* @var CUser $USER
* @var SaleOrderAjax $component
* @var string $templateFolder
*/
$context = Main\Application::getInstance()->getContext();
$request = $context->getRequest();
if (empty($arParams['TEMPLATE_THEME'])) {
$arParams['TEMPLATE_THEME'] = Main\ModuleManager::isModuleInstalled('bitrix.eshop') ? 'site' : 'blue';
}
if ($arParams['TEMPLATE_THEME'] === 'site') {
$templateId = Main\Config\Option::get('main', 'wizard_template_id', 'eshop_bootstrap', $component->getSiteId());
$templateId = preg_match('/^eshop_adapt/', $templateId) ? 'eshop_adapt' : $templateId;
$arParams['TEMPLATE_THEME'] = Main\Config\Option::get('main', 'wizard_' . $templateId . '_theme_id', 'blue', $component->getSiteId());
}
if (!empty($arParams['TEMPLATE_THEME'])) {
if (!is_file(Main\Application::getDocumentRoot() . '/bitrix/css/main/themes/' . $arParams['TEMPLATE_THEME'] . '/style.css')) {
$arParams['TEMPLATE_THEME'] = 'blue';
}
}
$arParams['ALLOW_USER_PROFILES'] = $arParams['ALLOW_USER_PROFILES'] === 'Y' ? 'Y' : 'N';
$arParams['SKIP_USELESS_BLOCK'] = $arParams['SKIP_USELESS_BLOCK'] === 'N' ? 'N' : 'Y';
if (!isset($arParams['SHOW_ORDER_BUTTON'])) {
$arParams['SHOW_ORDER_BUTTON'] = 'final_step';
}
$arParams['HIDE_ORDER_DESCRIPTION'] = isset($arParams['HIDE_ORDER_DESCRIPTION']) && $arParams['HIDE_ORDER_DESCRIPTION'] === 'Y' ? 'Y' : 'N';
$arParams['SHOW_TOTAL_ORDER_BUTTON'] = $arParams['SHOW_TOTAL_ORDER_BUTTON'] === 'Y' ? 'Y' : 'N';
$arParams['SHOW_PAY_SYSTEM_LIST_NAMES'] = $arParams['SHOW_PAY_SYSTEM_LIST_NAMES'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_PAY_SYSTEM_INFO_NAME'] = $arParams['SHOW_PAY_SYSTEM_INFO_NAME'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_DELIVERY_LIST_NAMES'] = $arParams['SHOW_DELIVERY_LIST_NAMES'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_DELIVERY_INFO_NAME'] = $arParams['SHOW_DELIVERY_INFO_NAME'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_DELIVERY_PARENT_NAMES'] = $arParams['SHOW_DELIVERY_PARENT_NAMES'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_STORES_IMAGES'] = $arParams['SHOW_STORES_IMAGES'] === 'N' ? 'N' : 'Y';
if (!isset($arParams['BASKET_POSITION']) || !in_array($arParams['BASKET_POSITION'], ['before', 'after'])) {
$arParams['BASKET_POSITION'] = 'after';
}
$arParams['EMPTY_BASKET_HINT_PATH'] = isset($arParams['EMPTY_BASKET_HINT_PATH']) ? (string)$arParams['EMPTY_BASKET_HINT_PATH'] : '/';
$arParams['SHOW_BASKET_HEADERS'] = $arParams['SHOW_BASKET_HEADERS'] === 'Y' ? 'Y' : 'N';
$arParams['HIDE_DETAIL_PAGE_URL'] = isset($arParams['HIDE_DETAIL_PAGE_URL']) && $arParams['HIDE_DETAIL_PAGE_URL'] === 'Y' ? 'Y' : 'N';
$arParams['DELIVERY_FADE_EXTRA_SERVICES'] = $arParams['DELIVERY_FADE_EXTRA_SERVICES'] === 'Y' ? 'Y' : 'N';
$arParams['SHOW_COUPONS'] = isset($arParams['SHOW_COUPONS']) && $arParams['SHOW_COUPONS'] === 'N' ? 'N' : 'Y';
if ($arParams['SHOW_COUPONS'] === 'N') {
$arParams['SHOW_COUPONS_BASKET'] = 'N';
$arParams['SHOW_COUPONS_DELIVERY'] = 'N';
$arParams['SHOW_COUPONS_PAY_SYSTEM'] = 'N';
} else {
$arParams['SHOW_COUPONS_BASKET'] = isset($arParams['SHOW_COUPONS_BASKET']) && $arParams['SHOW_COUPONS_BASKET'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_COUPONS_DELIVERY'] = isset($arParams['SHOW_COUPONS_DELIVERY']) && $arParams['SHOW_COUPONS_DELIVERY'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_COUPONS_PAY_SYSTEM'] = isset($arParams['SHOW_COUPONS_PAY_SYSTEM']) && $arParams['SHOW_COUPONS_PAY_SYSTEM'] === 'N' ? 'N' : 'Y';
}
$arParams['SHOW_NEAREST_PICKUP'] = $arParams['SHOW_NEAREST_PICKUP'] === 'Y' ? 'Y' : 'N';
$arParams['DELIVERIES_PER_PAGE'] = isset($arParams['DELIVERIES_PER_PAGE']) ? intval($arParams['DELIVERIES_PER_PAGE']) : 9;
$arParams['PAY_SYSTEMS_PER_PAGE'] = isset($arParams['PAY_SYSTEMS_PER_PAGE']) ? intval($arParams['PAY_SYSTEMS_PER_PAGE']) : 9;
$arParams['PICKUPS_PER_PAGE'] = isset($arParams['PICKUPS_PER_PAGE']) ? intval($arParams['PICKUPS_PER_PAGE']) : 5;
$arParams['SHOW_PICKUP_MAP'] = $arParams['SHOW_PICKUP_MAP'] === 'N' ? 'N' : 'Y';
$arParams['SHOW_MAP_IN_PROPS'] = $arParams['SHOW_MAP_IN_PROPS'] === 'Y' ? 'Y' : 'N';
$arParams['USE_YM_GOALS'] = $arParams['USE_YM_GOALS'] === 'Y' ? 'Y' : 'N';
$arParams['USE_ENHANCED_ECOMMERCE'] = isset($arParams['USE_ENHANCED_ECOMMERCE']) && $arParams['USE_ENHANCED_ECOMMERCE'] === 'Y' ? 'Y' : 'N';
$arParams['DATA_LAYER_NAME'] = isset($arParams['DATA_LAYER_NAME']) ? trim($arParams['DATA_LAYER_NAME']) : 'dataLayer';
$arParams['BRAND_PROPERTY'] = isset($arParams['BRAND_PROPERTY']) ? trim($arParams['BRAND_PROPERTY']) : '';
$useDefaultMessages = !isset($arParams['USE_CUSTOM_MAIN_MESSAGES']) || $arParams['USE_CUSTOM_MAIN_MESSAGES'] != 'Y';
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_BLOCK_NAME'])) {
$arParams['MESS_AUTH_BLOCK_NAME'] = Loc::getMessage('AUTH_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REG_BLOCK_NAME'])) {
$arParams['MESS_REG_BLOCK_NAME'] = Loc::getMessage('REG_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_BASKET_BLOCK_NAME'])) {
$arParams['MESS_BASKET_BLOCK_NAME'] = Loc::getMessage('BASKET_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REGION_BLOCK_NAME'])) {
$arParams['MESS_REGION_BLOCK_NAME'] = Loc::getMessage('REGION_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PAYMENT_BLOCK_NAME'])) {
$arParams['MESS_PAYMENT_BLOCK_NAME'] = Loc::getMessage('PAYMENT_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_DELIVERY_BLOCK_NAME'])) {
$arParams['MESS_DELIVERY_BLOCK_NAME'] = Loc::getMessage('DELIVERY_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_BUYER_BLOCK_NAME'])) {
$arParams['MESS_BUYER_BLOCK_NAME'] = Loc::getMessage('BUYER_BLOCK_NAME_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_BACK'])) {
$arParams['MESS_BACK'] = Loc::getMessage('BACK_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_FURTHER'])) {
$arParams['MESS_FURTHER'] = Loc::getMessage('FURTHER_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_EDIT'])) {
$arParams['MESS_EDIT'] = Loc::getMessage('EDIT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ORDER'])) {
$arParams['MESS_ORDER'] = $arParams['~MESS_ORDER'] = Loc::getMessage('ORDER_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PRICE'])) {
$arParams['MESS_PRICE'] = Loc::getMessage('PRICE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PERIOD'])) {
$arParams['MESS_PERIOD'] = Loc::getMessage('PERIOD_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_NAV_BACK'])) {
$arParams['MESS_NAV_BACK'] = Loc::getMessage('NAV_BACK_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_NAV_FORWARD'])) {
$arParams['MESS_NAV_FORWARD'] = Loc::getMessage('NAV_FORWARD_DEFAULT');
}
$useDefaultMessages = !isset($arParams['USE_CUSTOM_ADDITIONAL_MESSAGES']) || $arParams['USE_CUSTOM_ADDITIONAL_MESSAGES'] != 'Y';
if ($useDefaultMessages || !isset($arParams['MESS_PRICE_FREE'])) {
$arParams['MESS_PRICE_FREE'] = Loc::getMessage('PRICE_FREE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ECONOMY'])) {
$arParams['MESS_ECONOMY'] = Loc::getMessage('ECONOMY_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REGISTRATION_REFERENCE'])) {
$arParams['MESS_REGISTRATION_REFERENCE'] = Loc::getMessage('REGISTRATION_REFERENCE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_REFERENCE_1'])) {
$arParams['MESS_AUTH_REFERENCE_1'] = Loc::getMessage('AUTH_REFERENCE_1_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_REFERENCE_2'])) {
$arParams['MESS_AUTH_REFERENCE_2'] = Loc::getMessage('AUTH_REFERENCE_2_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_AUTH_REFERENCE_3'])) {
$arParams['MESS_AUTH_REFERENCE_3'] = Loc::getMessage('AUTH_REFERENCE_3_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ADDITIONAL_PROPS'])) {
$arParams['MESS_ADDITIONAL_PROPS'] = Loc::getMessage('ADDITIONAL_PROPS_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_USE_COUPON'])) {
$arParams['MESS_USE_COUPON'] = Loc::getMessage('USE_COUPON_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_COUPON'])) {
$arParams['MESS_COUPON'] = Loc::getMessage('COUPON_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PERSON_TYPE'])) {
$arParams['MESS_PERSON_TYPE'] = Loc::getMessage('PERSON_TYPE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_SELECT_PROFILE'])) {
$arParams['MESS_SELECT_PROFILE'] = Loc::getMessage('SELECT_PROFILE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_REGION_REFERENCE'])) {
$arParams['MESS_REGION_REFERENCE'] = Loc::getMessage('REGION_REFERENCE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PICKUP_LIST'])) {
$arParams['MESS_PICKUP_LIST'] = Loc::getMessage('PICKUP_LIST_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_NEAREST_PICKUP_LIST'])) {
$arParams['MESS_NEAREST_PICKUP_LIST'] = Loc::getMessage('NEAREST_PICKUP_LIST_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_SELECT_PICKUP'])) {
$arParams['MESS_SELECT_PICKUP'] = Loc::getMessage('SELECT_PICKUP_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_INNER_PS_BALANCE'])) {
$arParams['MESS_INNER_PS_BALANCE'] = Loc::getMessage('INNER_PS_BALANCE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_ORDER_DESC'])) {
$arParams['MESS_ORDER_DESC'] = Loc::getMessage('ORDER_DESC_DEFAULT');
}
$useDefaultMessages = !isset($arParams['USE_CUSTOM_ERROR_MESSAGES']) || $arParams['USE_CUSTOM_ERROR_MESSAGES'] != 'Y';
if ($useDefaultMessages || !isset($arParams['MESS_PRELOAD_ORDER_TITLE'])) {
$arParams['MESS_PRELOAD_ORDER_TITLE'] = Loc::getMessage('PRELOAD_ORDER_TITLE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_SUCCESS_PRELOAD_TEXT'])) {
$arParams['MESS_SUCCESS_PRELOAD_TEXT'] = Loc::getMessage('SUCCESS_PRELOAD_TEXT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_FAIL_PRELOAD_TEXT'])) {
$arParams['MESS_FAIL_PRELOAD_TEXT'] = Loc::getMessage('FAIL_PRELOAD_TEXT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_DELIVERY_CALC_ERROR_TITLE'])) {
$arParams['MESS_DELIVERY_CALC_ERROR_TITLE'] = Loc::getMessage('DELIVERY_CALC_ERROR_TITLE_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_DELIVERY_CALC_ERROR_TEXT'])) {
$arParams['MESS_DELIVERY_CALC_ERROR_TEXT'] = Loc::getMessage('DELIVERY_CALC_ERROR_TEXT_DEFAULT');
}
if ($useDefaultMessages || !isset($arParams['MESS_PAY_SYSTEM_PAYABLE_ERROR'])) {
$arParams['MESS_PAY_SYSTEM_PAYABLE_ERROR'] = Loc::getMessage('PAY_SYSTEM_PAYABLE_ERROR_DEFAULT');
}
$scheme = $request->isHttps() ? 'https' : 'http';
switch (LANGUAGE_ID) {
case 'ru':
$locale = 'ru-RU';
break;
case 'ua':
$locale = 'ru-UA';
break;
case 'tk':
$locale = 'tr-TR';
break;
default:
$locale = 'en-US';
break;
}
$this->addExternalCss('/bitrix/css/main/bootstrap.css');
$APPLICATION->SetAdditionalCSS('/bitrix/css/main/themes/' . $arParams['TEMPLATE_THEME'] . '/style.css', true);
$APPLICATION->SetAdditionalCSS($templateFolder . '/style.css', true);
$this->addExternalJs($templateFolder . '/order_ajax.js');
\Bitrix\Sale\PropertyValueCollection::initJs();
$this->addExternalJs($templateFolder . '/script.js');
?>
<NOSCRIPT>
<div style="color:red"><?=Loc::getMessage('SOA_NO_JS')?></div>
</NOSCRIPT>
<?
if (strlen($request->get('ORDER_ID')) > 0) {
include(Main\Application::getDocumentRoot() . $templateFolder . '/confirm.php');
} elseif ($arParams['DISABLE_BASKET_REDIRECT'] === 'Y' && $arResult['SHOW_EMPTY_BASKET']) {
include(Main\Application::getDocumentRoot() . $templateFolder . '/empty.php');
} else {
Main\UI\Extension::load('phone_auth');
$hideDelivery = empty($arResult['DELIVERY']);
?>
<form action="<?=POST_FORM_ACTION_URI?>" method="POST" name="ORDER_FORM" id="bx-soa-order-form" enctype="multipart/form-data">
<?
echo bitrix_sessid_post();
if (strlen($arResult['PREPAY_ADIT_FIELDS']) > 0) {
echo $arResult['PREPAY_ADIT_FIELDS'];
}
?>
<input type="hidden" name="<?=$arParams['ACTION_VARIABLE']?>" value="saveOrderAjax">
<input type="hidden" name="location_type" value="code">
<input type="hidden" name="BUYER_STORE" id="BUYER_STORE" value="<?=$arResult['BUYER_STORE']?>">
<div id="bx-soa-order" class="row bx-<?=$arParams['TEMPLATE_THEME']?>" style="opacity: 0">
<!-- MAIN BLOCK -->
<div class="col-sm-9 bx-soa">
<div id="bx-soa-main-notifications">
<div class="alert alert-danger" style="display:none"></div>
<div data-type="informer" style="display:none"></div>
</div>
<!-- AUTH BLOCK -->
<div id="bx-soa-auth" class="bx-soa-section bx-soa-auth" style="display:none">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_AUTH_BLOCK_NAME']?>
</h2>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- DUPLICATE MOBILE ORDER SAVE BLOCK -->
<div id="bx-soa-total-mobile" style="margin-bottom: 6px;"></div>
<? if ($arParams['BASKET_POSITION'] === 'before'): ?>
<!-- BASKET ITEMS BLOCK -->
<div id="bx-soa-basket" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_BASKET_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="javascript:void(0)" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? endif ?>
<!-- REGION BLOCK -->
<div id="bx-soa-region" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_REGION_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? if ($arParams['DELIVERY_TO_PAYSYSTEM'] === 'p2d'): ?>
<!-- PAY SYSTEMS BLOCK -->
<div id="bx-soa-paysystem" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_PAYMENT_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- DELIVERY BLOCK -->
<div id="bx-soa-delivery" data-visited="false" class="bx-soa-section bx-active" <?=($hideDelivery ? 'style="display:none"' : '')?>>
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_DELIVERY_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- PICKUP BLOCK -->
<div id="bx-soa-pickup" data-visited="false" class="bx-soa-section" style="display:none">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? else: ?>
<!-- DELIVERY BLOCK -->
<div id="bx-soa-delivery" data-visited="false" class="bx-soa-section bx-active" <?=($hideDelivery ? 'style="display:none"' : '')?>>
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_DELIVERY_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- PICKUP BLOCK -->
<div id="bx-soa-pickup" data-visited="false" class="bx-soa-section" style="display:none">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<!-- PAY SYSTEMS BLOCK -->
<div id="bx-soa-paysystem" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_PAYMENT_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? endif ?>
<!-- BUYER PROPS BLOCK -->
<div id="bx-soa-properties" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_BUYER_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? if ($arParams['BASKET_POSITION'] === 'after'): ?>
<!-- BASKET ITEMS BLOCK -->
<div id="bx-soa-basket" data-visited="false" class="bx-soa-section bx-active">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span><?=$arParams['MESS_BASKET_BLOCK_NAME']?>
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="javascript:void(0)" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid"></div>
</div>
<? endif ?>
<!-- INTARO BONUS BLOCK -->
<? if ($arResult['LOYALTY_STATUS'] === 'Y'): ?>
<div id="bx-soa-intaro" data-visited="true" class="bx-soa-section bx-selected">
<div class="bx-soa-section-title-container">
<h2 class="bx-soa-section-title col-sm-9">
<span class="bx-soa-section-title-count"></span> Оплата бонусами
</h2>
<div class="col-xs-12 col-sm-3 text-right"><a href="javascript:void(0)" class="bx-soa-editstep"><?=$arParams['MESS_EDIT']?></a></div>
</div>
<div class="bx-soa-section-content container-fluid" id="bx-soa-intaro-content">
<div class="bx-soa-coupon">
Сколько бонусов потратить: <?= $arResult['AVAILABLE_BONUS']?>
<div class="bx-soa-coupon-block">
<div class="bx-input"><input class="form-control" type="text" id='bonus-input' >
<a href="javascript:void(0)" class="pull-right btn btn-default btn-md" onclick="updateOrder()">Пересчитать</a>
</div>
</div>
<div class="bx-soa-coupon-label"><label id="available-bonuses"></label></div>
</div>
</div>
<? endif ?>
<!-- ORDER SAVE BLOCK -->
<div id="bx-soa-orderSave">
<div class="checkbox">
<?
if ($arParams['USER_CONSENT'] === 'Y') {
$APPLICATION->IncludeComponent(
'bitrix:main.userconsent.request',
'',
[
'ID' => $arParams['USER_CONSENT_ID'],
'IS_CHECKED' => $arParams['USER_CONSENT_IS_CHECKED'],
'IS_LOADED' => $arParams['USER_CONSENT_IS_LOADED'],
'AUTO_SAVE' => 'N',
'SUBMIT_EVENT_NAME' => 'bx-soa-order-save',
'REPLACE' => [
'button_caption' => isset($arParams['~MESS_ORDER']) ? $arParams['~MESS_ORDER'] : $arParams['MESS_ORDER'],
'fields' => $arResult['USER_CONSENT_PROPERTY_DATA'],
],
]
);
}
?>
</div>
<a href="javascript:void(0)" style="margin: 10px 0" class="pull-right btn btn-default btn-lg hidden-xs" data-save-button="true">
<?=$arParams['MESS_ORDER']?>
</a>
</div>
<div style="display: none;">
<div id='bx-soa-basket-hidden' class="bx-soa-section"></div>
<div id='bx-soa-region-hidden' class="bx-soa-section"></div>
<div id='bx-soa-paysystem-hidden' class="bx-soa-section"></div>
<div id='bx-soa-delivery-hidden' class="bx-soa-section"></div>
<div id='bx-soa-pickup-hidden' class="bx-soa-section"></div>
<div id="bx-soa-properties-hidden" class="bx-soa-section"></div>
<div id="bx-soa-auth-hidden" class="bx-soa-section">
<div class="bx-soa-section-content container-fluid reg"></div>
</div>
</div>
</div>
<!-- SIDEBAR BLOCK -->
<div id="bx-soa-total" class="col-sm-3 bx-soa-sidebar">
<div class="bx-soa-cart-total-ghost"></div>
<div class="bx-soa-cart-total"></div>
</div>
</div>
</form>
<div id="bx-soa-saved-files" style="display:none"></div>
<div id="bx-soa-soc-auth-services" style="display:none">
<?
$arServices = false;
$arResult['ALLOW_SOCSERV_AUTHORIZATION'] = Main\Config\Option::get('main', 'allow_socserv_authorization', 'Y') != 'N' ? 'Y' : 'N';
$arResult['FOR_INTRANET'] = false;
if (Main\ModuleManager::isModuleInstalled('intranet') || Main\ModuleManager::isModuleInstalled('rest')) {
$arResult['FOR_INTRANET'] = true;
}
if (Main\Loader::includeModule('socialservices') && $arResult['ALLOW_SOCSERV_AUTHORIZATION'] === 'Y') {
$oAuthManager = new CSocServAuthManager();
$arServices = $oAuthManager->GetActiveAuthServices([
'BACKURL' => $this->arParams['~CURRENT_PAGE'],
'FOR_INTRANET' => $arResult['FOR_INTRANET'],
]);
if (!empty($arServices)) {
$APPLICATION->IncludeComponent(
'bitrix:socserv.auth.form',
'flat',
[
'AUTH_SERVICES' => $arServices,
'AUTH_URL' => $arParams['~CURRENT_PAGE'],
'POST' => $arResult['POST'],
],
$component,
['HIDE_ICONS' => 'Y']
);
}
}
?>
</div>
<div style="display: none">
<?
// we need to have all styles for sale.location.selector.steps, but RestartBuffer() cuts off document head with styles in it
$APPLICATION->IncludeComponent(
'bitrix:sale.location.selector.steps',
'.default',
[],
false
);
$APPLICATION->IncludeComponent(
'bitrix:sale.location.selector.search',
'.default',
[],
false
);
?>
</div>
<?
$signer = new Main\Security\Sign\Signer;
$signedParams = $signer->sign(base64_encode(serialize($arParams)), 'sale.order.ajax');
$messages = Loc::loadLanguageFile(__FILE__);
?>
<script>
BX.message(<?=CUtil::PhpToJSObject($messages)?>);
BX.Sale.OrderAjaxComponent.init({
result: <?=CUtil::PhpToJSObject($arResult['JS_DATA'])?>,
locations: <?=CUtil::PhpToJSObject($arResult['LOCATIONS'])?>,
params: <?=CUtil::PhpToJSObject($arParams)?>,
signedParamsString: '<?=CUtil::JSEscape($signedParams)?>',
siteID: '<?=CUtil::JSEscape($component->getSiteId())?>',
ajaxUrl: '<?=CUtil::JSEscape($component->getPath() . '/ajax.php')?>',
templateFolder: '<?=CUtil::JSEscape($templateFolder)?>',
propertyValidation: true,
showWarnings: true,
pickUpMap: {
defaultMapPosition: {
lat: 55.76,
lon: 37.64,
zoom: 7
},
secureGeoLocation: false,
geoLocationMaxTime: 5000,
minToShowNearestBlock: 3,
nearestPickUpsToShow: 3
},
propertyMap: {
defaultMapPosition: {
lat: 55.76,
lon: 37.64,
zoom: 7
}
},
orderBlockId: 'bx-soa-order',
authBlockId: 'bx-soa-auth',
basketBlockId: 'bx-soa-basket',
regionBlockId: 'bx-soa-region',
paySystemBlockId: 'bx-soa-paysystem',
deliveryBlockId: 'bx-soa-delivery',
pickUpBlockId: 'bx-soa-pickup',
propsBlockId: 'bx-soa-properties',
totalBlockId: 'bx-soa-total',
loyaltyStatus: '<?=$arResult['LOYALTY_STATUS']?>'
});
</script>
<script>
<?
// spike: for children of cities we place this prompt
$city = TypeTable::getList(['filter' => ['=CODE' => 'CITY'], 'select' => ['ID']])->fetch();
?>
BX.saleOrderAjax.init(<?=CUtil::PhpToJSObject([
'source' => $component->getPath() . '/get.php',
'cityTypeId' => intval($city['ID']),
'messages' => [
'otherLocation' => '--- ' . Loc::getMessage('SOA_OTHER_LOCATION'),
'moreInfoLocation' => '--- ' . Loc::getMessage('SOA_NOT_SELECTED_ALT'), // spike: for children of cities we place this prompt
'notFoundPrompt' => '<div class="-bx-popup-special-prompt">' . Loc::getMessage('SOA_LOCATION_NOT_FOUND') . '.<br />' . Loc::getMessage('SOA_LOCATION_NOT_FOUND_PROMPT', [
'#ANCHOR#' => '<a href="javascript:void(0)" class="-bx-popup-set-mode-add-loc">',
'#ANCHOR_END#' => '</a>',
]) . '</div>',
],
])?>);
</script>
<?
if ($arParams['SHOW_PICKUP_MAP'] === 'Y' || $arParams['SHOW_MAP_IN_PROPS'] === 'Y') {
if ($arParams['PICKUP_MAP_TYPE'] === 'yandex') {
$this->addExternalJs($templateFolder . '/scripts/yandex_maps.js');
?>
<script src="<?=$scheme?>://api-maps.yandex.ru/2.1.50/?load=package.full&lang=<?=$locale?>"></script>
<script>
(function bx_ymaps_waiter() {
if (typeof ymaps !== 'undefined' && BX.Sale && BX.Sale.OrderAjaxComponent)
ymaps.ready(BX.proxy(BX.Sale.OrderAjaxComponent.initMaps, BX.Sale.OrderAjaxComponent));
else
setTimeout(bx_ymaps_waiter, 100);
})();
</script>
<?
}
if ($arParams['PICKUP_MAP_TYPE'] === 'google') {
$this->addExternalJs($templateFolder . '/scripts/google_maps.js');
$apiKey = htmlspecialcharsbx(Main\Config\Option::get('fileman', 'google_map_api_key', ''));
?>
<script async defer
src="<?=$scheme?>://maps.googleapis.com/maps/api/js?key=<?=$apiKey?>&callback=bx_gmaps_waiter">
</script>
<script>
function bx_gmaps_waiter() {
if (BX.Sale && BX.Sale.OrderAjaxComponent)
BX.Sale.OrderAjaxComponent.initMaps();
else
setTimeout(bx_gmaps_waiter, 100);
}
</script>
<?
}
}
if ($arParams['USE_YM_GOALS'] === 'Y') {
?>
<script>
(function bx_counter_waiter(i) {
i = i || 0;
if (i > 50)
return;
if (typeof window['yaCounter<?=$arParams['YM_GOALS_COUNTER']?>'] !== 'undefined')
BX.Sale.OrderAjaxComponent.reachGoal('initialization');
else
setTimeout(function() {
bx_counter_waiter(++i)
}, 100);
})();
</script>
<?
}
}