Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Характеристики в object-view.xsl - как скрыть параметр?

Автор samРаздел Шаблоны XSLT

Ответов: 5
Просмотров: 1132
Последний ответ 02 Октябрь 2014, 17:07:01
от admin
параметр s_days_interval в news lastlist

Автор bosyaРаздел Макросы UMI.CMS

Ответов: 5
Просмотров: 3249
Последний ответ 14 Январь 2012, 17:17:39
от admin
Задать параметр template-resources

Автор BabajkaРаздел Шаблоны XSLT

Ответов: 16
Просмотров: 5808
Последний ответ 22 Январь 2013, 16:22:52
от sergeron
дополнительный параметр к товару в корзину

Автор shotoРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 794
Последний ответ 02 Октябрь 2014, 16:28:40
от shoto
Добавить в модуль параметр

Автор yk_qvРаздел Шаблоны TPL

Ответов: 6
Просмотров: 339
Последний ответ 22 Май 2017, 10:50:08
от pandus

0 Пользователей и 1 Гость просматривают эту тему.

*

john

  • ***
  • 206
  • +6/-0
    • Просмотр профиля
Передать параметр email
« : 24 Март 2016, 22:30:55 »
Как получить email пользователя?
если вручную написать то передаст mail@mail.ru
$param["userEmail"] = "mail@mail.ru";

А что написать, чтобы он каждый раз подхватывал email введенный пользователем при оформление заказа.
$param["userEmail"] = $email; - не передает.
Спасибо.

*

aghigay

  • *****
  • 607
  • +28/-3
  • Просто пытаюсь помочь. Иногда пинком
    • Просмотр профиля
    • umicms.me
Re: Передать параметр email
« Ответ #1 : 24 Март 2016, 23:21:34 »
Откуда вы хотите получить параметры пользователя и в каком месте: макросе, шаблоне, свой вариант?
Мой блог http://umicms.me

*

john

  • ***
  • 206
  • +6/-0
    • Просмотр профиля
Re: Передать параметр email
« Ответ #2 : 24 Март 2016, 23:44:04 »
В payment.xsl я написал.
<input type="hidden" name="user_email" value="{userEmail}" />
далее
/emarket/classes/payment/systems/rbk.php
Интересует строчка $param["userEmail"] = $email;
Хочу получить e-mail в момент когда пользователь оформляет заказ и выбирает способ оплаты, чтобы передать e-mail в RBK money.

      public function process($template = null) {
         $this->order->order();
         $currency = strtoupper( mainConfiguration::getInstance()->get('system', 'default-currency') );
         $amount = number_format($this->order->getActualPrice(), 2, '.', '');
         $param = array();
         $param["formAction"] = "https://rbkmoney.ru/acceptpurchase.aspx";
         $param["eshopId"] = $this->object->eshopId;
         $param["orderId"] = $this->order->id;
         $param["recipientAmount"] = $amount;
         $param["recipientCurrency"] = $currency;
         $param["userEmail"] = $email;
         $param["version"] = "2"; // May be 1 or 2, see documentation
         $this->order->setPaymentStatus('initialized');
         list($templateString) = def_module::loadTemplates("emarket/payment/rbk/".$template, "form_block");
         return def_module::parseTemplate($templateString, $param);
      }

*

aghigay

  • *****
  • 607
  • +28/-3
  • Просто пытаюсь помочь. Иногда пинком
    • Просмотр профиля
    • umicms.me
Re: Передать параметр email
« Ответ #3 : 24 Март 2016, 23:46:30 »
а чем плох getRequest('userEmail')?
Мой блог http://umicms.me

*

aghigay

  • *****
  • 607
  • +28/-3
  • Просто пытаюсь помочь. Иногда пинком
    • Просмотр профиля
    • umicms.me
Re: Передать параметр email
« Ответ #4 : 24 Март 2016, 23:47:09 »
Только, естественно, нужно брать getRequest('user_email')
Мой блог http://umicms.me

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re: Передать параметр email
« Ответ #5 : 24 Март 2016, 23:49:16 »
Цитировать
Хочу получить e-mail в момент когда пользователь оформляет заказ и выбирает способ оплаты, чтобы передать e-mail в RBK money.

Получаете объект текущего покупателя:

$customer = customer::get();

Далее есть два варианта - покупатель зарегистрирован, тогда у него email хранится в поле e-mail. Если не зарегистрирован, то email хранится в поле email (без дефиса). Соответственно, код:

$email = $customer->getValue('e-mail');

if(!$email) {
$email = $customer->getValue('email');
}
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

*

john

  • ***
  • 206
  • +6/-0
    • Просмотр профиля
Re: Передать параметр email
« Ответ #6 : 25 Март 2016, 00:06:23 »
getRequest('user_email'), хоть тресни не хотел работать.
Последний вариант заработал, спасибо.