Николай Савин

Николай Савин

С нами с 06 июня 2015; Место в рейтинге пользователей: #5
Николай Савин
27 мая 2017, 12:34
0
Огромное спасибо.
Николай Савин
27 мая 2017, 10:49
0
Хорошая идея. Я как раз думаю, чего бы полезного выложить
Николай Савин
27 мая 2017, 09:38
0
Начал с первой презентации. У Василия, что не пункт — то сокровище. Хоть сиди да пакеты накидывай сразу по его презентации.
Николай Савин
27 мая 2017, 08:19
0
Здравствуйте.
5 тыс. Руб.
Вы указали 5 дней, так и оставим.
Если стоимость и срок устраивает контакты в профиле.
Николай Савин
26 мая 2017, 07:45
0
Ох. С чего бы начать
Николай Савин
24 мая 2017, 14:46
0
&hooks=`modSendPulseHook,email`
   &emailTpl=`CentralizedDebtObligationEmailTpl`
   &emailSubject=`Some Sucker Bought Another CDO`
   &emailTo=`sales@mortgagemoney.com`
Николай Савин
24 мая 2017, 14:45
0
Вы можете добавить в параметр hooks Хук email, а также добавить параметр emailTo и письма будут отправляться по указанному адресу. Все просто. ПО вкусу также можно добавить чанк с текстом письма.
Смотрите типовые настройки FormIt
Николай Савин
24 мая 2017, 14:31
0
Программа сделает все, что вы сами предусмотрите. Я не понимаю Вас.
Каким образом вы отправляете рассылку? Через что? Через Formit?
Николай Савин
24 мая 2017, 12:34
0
Ну в приведенных выше примерах подписка срабатывает на какое либо стороннее событие. Например на регистрацию пользователя или заполнение формы. Подписка тут является дополнительным действием, менеджер по идее и так должен получить уведомление по основному действию.
На крайний случай вы можете дописать сниппет или плагин (смотря что используется) и настроить отправку почты посредством встроенных в MODX средств отправки почты modMail
Николай Савин
24 мая 2017, 12:14
0
Здравствуйте. Уведомление о чем?
Николай Савин
17 мая 2017, 06:06
-2
Здравствуйте. Специализируюсь на интеграции MODX и различных CRM.
Готов и Вам помочь.
Стоимость работы 5 тыс. руб.
Срок — неделя.
Если предложение устраивает все контактные данные можете посмотреть в профиле.
Николай Савин
15 мая 2017, 14:02
0
Спасибо за сигнал. Я использовал заготовку от modsendpulse. Видимо где то забыл заменить адрес каталога.
Николай Савин
15 мая 2017, 06:58
0
Здравствуйте. Если заказ еще свободен с удовольствием поработаю с вами.
Мои контакты в профиле
Николай Савин
10 мая 2017, 20:35
0
Здравствуйте. Готов обсудить.
Все контакты в профиле.
Николай Савин
10 мая 2017, 07:18
0
5000 дорого видимо. Хотя дешевле никто предложить не смог.
Николай Савин
06 мая 2017, 20:42
+2
Готова интеграция с обсуждаемой RetailCRM
Николай Савин
06 мая 2017, 09:10
+1
<?php
if (!$RetailCrm = $modx->getService('RetailCrm','modretailcrm',MODX_CORE_PATH.'components/modretailcrm/model/modretailcrm/')) {
    $modx->log(1, '[RetailCrm] - Not found class RetailCrm');
    return;
} 
$site = $modx->getOption('modretailcrm_siteCode');
/** @var modX $modx */
switch ($modx->event->name) {
   
    case 'msOnCreateOrder':
        $Address = $msOrder->getOne('Address');
        $orderData = array();
        $orderData['customer']['externalId'] = $Address->get('user_id');
        //Отправляем данные клиента
        if ($profile = $modx->getObject('modUserProfile', $Address->get('user_id'))) {
            $customer = array();
            $customer['externalId'] =  $Address->get('user_id');
            $customer['firstName'] = $profile->fullname;
            $customer['email'] = $profile->email;
            if(!empty($profile->phone)){
                $customer['phones'][]['number'] = $profile->phone;
            }
            if(!empty($profile->mobilephone)){
                $customer['phones'][]['number'] = $profile->mobilephone;
            }
            $response = $RetailCrm->customersCreate($customer, $site);  
        }
        
        $orderData['externalId'] = $Address->get('id');
        $orderData['firstName'] = $Address->get('receiver');
        $orderData['phone'] = $Address->get('phone');
        $orderData['email'] = $Address->get('email');
        
        $Products = $msOrder->getMany('Products');
        
        $items = array();
        $key = 0;
        foreach ($Products as $pr) {
            $options = $pr->toArray();
            $orderData['items'][$key]['initialPrice'] = $pr->get('cost');
            $orderData['items'][$key]['purchasePrice'] = $pr->get('cost');
            $orderData['items'][$key]['productName'] = $pr->get('name');
            $orderData['items'][$key]['quantity'] = $pr->get('count');
            $orderData['items'][$key]['offer']['externalId'] = $pr->get('id');
            $key ++;
		}
        //Указываем какие поля заполняются в корзине
        $fields = array(
            'index' => 'Индекс', 
            'country' => 'Страна', 
            'region' => 'Регион', 
            'city' => 'Город', 
            'metro' => 'Метро', 
            'street' => 'Улица', 
            'building' => 'Дом', 
            'room' => 'Квартира\офис',
            'comment' => 'Комментарий к адресу'
        );
        $address = '';
        foreach($fields as $field=>$comment){
            if(!empty($Address->get($field))){
                $address .= $comment.':'.$Address->get($field).' ';
                $orderData['delivery']['address'][$field] = $Address->get($field);
            }
        }
        $orderData['delivery']['address']['text'] = $address;
//Оплата и доставка довольно индивидуальны
//Если надо заполнять данные о сервисе и методе доставки заполняем поля раздела order[delivery] 
	//Данные об оплате заполняются в order[paymentType] order[paymentStatus] order[paymentDetail]
        $response = $RetailCrm->ordersCreate($orderData, $site);
      
        break;
}