Здравствуйте.
В общем возникла идея связать личный кабинет покупателя с оформлением заказа. А именно, заинтересовал момент подхватывать нужное местоположение при оформлении заказа.
Суть: на странице регистрации и в форму профиля ставим компонент sale.location.selector.search с указанием поля PERSONAL_CITY. То есть при регистрации/редактировании профиля, когда пользователь находит свой город через этот компонент и сохраняет, то ему в поле PERSONAL_CITY (ну или стандартное поле "Город" у всех пользователей в админке) пишется код города. Собственно с этим компонентом проблема не встала - все пишется и сохраняется.
Проблема возникает при оформлении заказа. Логично, что надо определить текущего пользователя, взять его поле PERSONAL_CITY и передать компоненту sale.location.selector.search на странице оформления заказа. Но тут возникла загвоздка. Никак не могу найти, куда передавать этот самый код. В шаблоне компонента sale.order.ajax, в файле props_format.php немного изменяю код, касаемый условия $arProperties["TYPE"] == "LOCATION"
[CODE]if (is_array($arProperties["VARIANTS"]) && count($arProperties["VARIANTS"]) > 0)
{
foreach ($arProperties["VARIANTS"] as $arVariant)
{
if ($arVariant["SELECTED"] == "Y")
{
//$value = $arVariant["ID"]; //было
$value = $city; // то что я подправил, в $city хранится код города
break;
}
}
}
[/CODE]Город прописывается, все норм. Но возникает проблема. Если я ввожу другой какой-нить город в поле и нахожу его, то значение опять сбрасывается до того города, который я подставил изначально. То есть, например, у пользователя в личном кабинете указан город Казань, он подставляется в поле местоположения при заходе на страницу оформления заказа. Но если при оформлении заказа вместо Казани хочу указать, например, Питер, - ввожу, нахожу, выбираю - и в этот момент поле опять сбрасывается на Казань. Я так понимаю, что при изменении поля местоположения происходит перезагрузка страницы - тогда понятно, почему город сбрасывается. Но как тогда изначально прописать город, чтобы сброса не было?
PS Перерыл весь шаблон - не могу найти. Ведь как то же город по-умолчанию прописывается и потом спокойно меняется, без сброса.