Aslero

Aslero

С нами с 26 февраля 2019; Место в рейтинге пользователей: #490

Импорт из 1с в минишоп

есть плагин на событие
mSyncOnProductImport
if ($modx->event->name != 'mSyncOnProductImport') return;
  $modx->log(1, 'в лог: ' . print_r($properties,1));
 echo $properties["Полное наименование"];
  echo $properties["Цвет маркера"];
как записать в
pagetitle
товара значение
$properties["Полное наименование"]
?
Aslero
11 сентября 2019, 14:53
modx.pro
107
0

Редирект в плагине

подскажите, почему не редиректит в плагине?

$url = $modx->makeUrl(91);
 return $modx->sendRedirect($url,array('responseCode' => 'HTTP/1.1 301 Moved Permanently'));
Aslero
20 июня 2019, 10:23
modx.pro
124
0

Регистрация

Добрый день, есть форма регистрации

<form  method="post" class="form-horizontal" id="office-auth-register">
    <input type="hidden" name="action" value="auth/formRegister"/>
    <input type="text" name="fullname" placeholder="Имя" id="office-register-form-fullname" value=""/>
    <input type="text" name="mobilephone" placeholder="Номер телефона"  id="office-auth-register-phone" value=""/>
	<input type="email" name="email" placeholder="E-mail" id="office-auth-register-email"value=""/>
	<input type="password" name="password" placeholder="Пароль"  id="office-register-form-password" value=""/>
	<button type="submit" class="btn-gray">Зарегистрироваться</button>
	<button type="button" class="btn-bdark">Войти</button>
</form>
вызываю так

[[!Office?
    	        &tplLogin=`Office.register`
    	        &action=`Auth`
    	        &groups=`Users`
            	&loginResourceId=`37`
            ]]
но при вводе пароля его система не видит и в письме не присылает
Aslero
18 июня 2019, 16:21
modx.pro
135
0

Office активация

подскажите, может кто делал, как отключить активацию профиля после регистрации?
Aslero
18 июня 2019, 15:28
modx.pro
114
0

Отправка на почту в плагине

почему не отправляется почта в плагине при регистрации?
<?php
if ($modx->context->key != 'mgr') {
    switch ($modx->event->name) {
        // Событие перед регистрацией пользователя
        case 'OnBeforeUserFormSave':
            if ($mode != 'new') {
                return;
            }
            if (empty($_POST['email'])) {
                 $modx->event->output('Укажите электронную почту');
            }
 
            break;
         case 'OnUserFormSave':
            if ($mode == 'new') {
                $message = $modx->getChunk('myEmailTemplate',array('name' => $_POST['email']));
                //$modx->event->output($message);
                $modx->getService('mail', 'mail.modPHPMailer');
                $modx->mail->set(modMail::MAIL_BODY,$message);
                $modx->mail->set(modMail::MAIL_FROM,'maksim@outlook.com');
                $modx->mail->set(modMail::MAIL_FROM_NAME,'site.im');
                $modx->mail->set(modMail::MAIL_SUBJECT,'ваши данные site.im');
                $modx->mail->address('to', $_POST['email']);
                $modx->mail->address('reply-to','maksim@outlook.com');
                $modx->mail->setHTML(true);
                if (!$modx->mail->send()) {
                    $modx->log(modX::LOG_LEVEL_ERROR,'An error occurred while trying to send the email: '.$modx->mail->mailer->ErrorInfo);
                }else{
                    $modx->log(modX::LOG_LEVEL_ERROR,$message);
                }
                $modx->mail->reset(); 
                $user->Profile->set('active', 1);
            }
            break;
    }
}
Aslero
18 июня 2019, 13:45
modx.pro
167
0

Контексты и ресурсы

есть два контекста web и catalog

когда вывожу товары контекста catalog и кликаю по товару, то бывает что перекидывает на товар, который лежит в контексте web
вот ссылка на товар из контекста catalog
https://site.ru/product/kombinezon-ly-2
а при клике вот сюда перекидывает

https://site.ru/kombinezonyi/kombinezon-ly
Переключения между контекстами нет, просто вынес старые товары в отдельный контекст

есть плагин, который обрабатывает вывод товаров из контекста catalog

<?php
if ($modx->event->name == 'OnPageNotFound') { 
    
    $alias = $modx->context->getOption('request_param_alias', 'q');
    if (!isset($_REQUEST[$alias])) {return false;}
    $request = $_REQUEST[$alias];
    $tmp = explode('/', $request);
    
    $req = 'product';
    
    if (($tmp[0] == $req && count($tmp) == 1) || (count($tmp) == 2 && empty($tmp[1])) ) {
        
		$modx->sendForward('2068');
		return;
		
    } else if ($tmp[0] == $req && count($tmp) >= 2 && !empty($tmp[1])) {
        
        $obj = $modx->getObject('modResource', array('uri' => $request));
        $modx->sendForward($obj->get('id'));
        return;
        
    } else if ($tmp[0] != $req && $tmp[0] != 'assets') {
        
        $modx->switchContext('web');
        return;
    }

}
Aslero
05 июня 2019, 17:29
modx.pro
96
0

PdoMenu группировка пунктов

как можно реализовать в меню второго уровня, что если навпример нет подменю, то все пункты помещаем в контейнер:

то есть получить такую структуру

<ul class="topmenu">
     <li><a href="">Главная</a></li>
     <li><a href="">Каталог</a>
         <ul>
             <li class="category"><a href="">Подпункт с подкатегориями</a>
                 <ul>
                     <li><a href="">Подподкатегория</a></li>
                  </ul>
             </li> 
             <li class="category"><a href="">Подпункт с подкатегориями</a>
                 <ul>
                     <li><a href="">Подподкатегория</a></li>
                  </ul>
             </li> 
             <li class="categories">
                 <a href="">Подпункт без  подкатегорий</a>
                 <a href="">Подпункт без подкатегорий</a>
             </li>               
         </ul>
     </li>
</ul>
пока застрял на этом

{'!pdoMenu' | snippet : [
  'parents' => 0,
  'level' => 3,
  'templates' => '-3',
  'tplOuter' => '@INLINE <ul class="topmenus">{$wrapper}</ul>',
  'tpl' => '@INLINE <li><a href="{$link}" {$attributes} {$classes}> {$menutitle} </a>{$wrapper}</li>',
  'tplInner' => '@INLINE <ul>{$wrapper}</ul>',
  'tplInnerRow' => '@INLINE <li {if $wrapper}class="category"{/if}><a href="{$link}" {$attributes}> {$menutitle}</a>{$wrapper}</li>',
  'sortby' => 'menuindex',
  'sortdir' => 'asc'
]}
Aslero
31 мая 2019, 05:27
modx.pro
116
0

Плагин — вырезать из урл

как можно вырезать из урл «katalog»?
пробовал так, но не работает и на какое событие вешать?
if (!isset($_REQUEST[$alias])) {return false;}
$request = $_REQUEST[$alias];
$tmp = explode('/', $request);
// Ссылка подходит под заданный формат: katalog/product
if ($tmp[0] == 'katalog' && count($tmp) >= 2) {
	$name = str_replace('katalog/', '', $request);
	$modx->sendForward($name)ж
}
Aslero
23 мая 2019, 18:26
modx.pro
160
0

пагинация при скроллинге msearch

подскажите, что не так, в мобильном телефоне при скроллинге не работает пагинация

[[!mFilter2?
					&limit=`21`
					&parents=`[[*id]]`
					&loadModels=`pdoPage`
                                        &element=`msProducts`
					&setMeta=`1`
					&filters=`
                                        tv|etaj,
			                ms|price:number,
					&showLog=`0`
					&suggestionsRadio=`ms|vendor`
					&_filterOptions=`{"autoLoad":0}`
					&tpls=`producthomefilter`
                                        &includeTVs=`tgsize,gsize,osize`
					&class=`msProduct`
                                        &sort=`ms|price:asc`
					&tplOuter=`mFilter2.outer`
					&tplFilter.outer.ms|price=`tpl.mFilter2.filter.slider`
					&tplFilter.row.ms|price=`mFilter2.filter.number`
					&tplFilter.outer.tv|osize=`tpl.mFilter2.filter.slider`
					&tplFilter.row.tv|osize=`mFilter2.filter.number`
                                        &ajaxMode=`scroll`
]]
Aslero
16 мая 2019, 18:26
modx.pro
134
0

Office

Добрый день, как сделать редирект на страницу после успешной регистрации? Использую модуль Office
Aslero
08 мая 2019, 16:44
modx.pro
166
0