Вопросы

Почта для домена

Добрый день!
Есть выделенный сервер. Настроена на нем почта через msmtp -> yandex
Все работало прекрасно, но случилось так, что из-за большого наплыва посетителей был превышен лимит на суточную отправку писем. Сразу скажу, что спамом и рекламной рассылкой писем не занимаюсь. Пользователи отправляют результаты прохождения тестов через форму обратной связи. Пользователей было много, отправляли интенсивно => лимит превышен

Собственно, вопрос сейчас в том, как отправлять мою почту так, чтобы либо не подпадать под лимиты Яндекса, либо вообще минуя его, но с минимальными шансами попадания писем в спам

Спасибо за понимание
Роман
16 апреля 2020, 02:03
modx.pro
1 023
0

Два и более родительских ресурса у документа (дочернего ресурса)

Здравствуйте, скажите пожалуйста, возможно ли, у дочернего ресурса, указать два и более родительских?
Что бы дочерний ресурс «физически» находился в двух (и более) родительских ресурсах одновременно, формировался правильный url и хлебные крошки. Что бы не создавать дубли ресурса.
Например:
Категория-1/Страница
Категория-2/Страница
Категория-товара-99/Товар
Категория-товара-46/Товар
Sergey
16 апреля 2020, 01:46
modx.pro
903
0

Как запретить менеджеру добавлять ресурс в группу, к которой у него нет доступа?

Ребята, собственно вопрос в заголовке.
Группы ресурсов используются для организации скидок. Менеджер заходит в товар и отмечает группы соответствующие акции в которой товар участвует.

Группа System используется для ресурсов типа Login и к ней доступ ограничен чтобы скрыть соответствующие ресурсы из дерева.
Так как сделать чтобы эта группа не отображалась у пользователей, у которых нет к ней доступа?
Андрей
16 апреля 2020, 00:55
modx.pro
661
0

Удаление компонентов modX через api

Доброго времени суток! Может кто в курсе на счет удаления компонентов, используя api modx?
То есть, желательно, чтобы производились аналогичные действия как и при удалении через админку:
  1. Удаляются регистрационные записи из базы
  2. Удаляются папки из assets/components/ и core/components/
  3. Удаляются чанки со сниппетами, пространства имен и т.д.
Думаю, что через процессоры 99% можно, но в доках инфы, вроде бы, не нашел
unreal_serg
15 апреля 2020, 23:39
modx.pro
884
0

Всплывающие подсказки в форме поиска mSearch2

Добрый день.

На сайте работает mSearch2.
Форма поиска выводится:
[[!mSearchForm?
   &pageId=`31`
   &tplForm=`mSearchForm`
   &autocomplete=`queries`
]]
При наборе какого-либо текста в форме поиска появляются всплывающие подсказки. Некоторые из них отображаются в верхнем регистре, некоторые в нижнем.

Как сделать (где настроить), чтобы все всплывающие подсказки появлялись в нижним регистре?
Maxim
15 апреля 2020, 21:24
modx.pro
1 350
0

Вывод ошибки в AjaxForm

Друзья, проверяю форму на заполненность одного поля из двух. Вот вызов сниппета:
{'!AjaxForm' | snippet : [
       'snippet'=>'FormIt'
       'hooks'=>'spam,email'
       'emailFrom'=>'noreply@test.loc'
       'form'=>'tpl.callBack'
       'emailTpl'=>'tpl.callBackMail'
       'emailTo'=>'inbox@mail.local'
       'emailSubject'=>'Обратная связь с сайта'
       'validate'=>'name:required,phone:oneOfTwoFields,email:email:oneOfTwoFields,link:blank'
       'customValidators' => 'oneOfTwoFields'
       'validationErrorMessage'=>'Пожалуйста, заполните необходимые поля.'
       'successMessage'=>'Ваше обращение отправлено. Мы свяжемся с вами!'
    ]}
А вот сниппет кастомного валидатора:
<?php
$success = true;

$phone = trim($_POST['phone']);
$email = trim($_POST['email']);

if (empty($phone) && empty($email)) {
    $success = false;
    $validator->addError($key, 'Заполните поле Телефон или Email.');
}

return $success;
Валидация работает, но не могу понять как выводить во всплывающем окне эту ошибку (когда не заполнены оба поля)? Всегда выводится 'Пожалуйста, заполните необходимые поля.'
Анатолий
15 апреля 2020, 16:05
modx.pro
1 405
0

TV с флагом страны

Кто-нибудь заморачивался с созданием TV, которое выводит выпадающий список с флагами стран непосредственно в админке? Если прописать значение в формате css, к примеру:
<span class="flag-icon flag-icon-gr"></span>
на бэккенде подхватится при условии подключения файла стилей.
Как с этим быть в админке?
Антон
15 апреля 2020, 15:45
modx.pro
673
0

Pdopage через where в плагине фильтрует по всем контекстам, хотя айди родителя в 1 конектсте, как исправить?

Код фильтра
P.S как только не пытался сделать простое действие вывести объекты по tv он выводит во всех контекстах, при получении данных на плагин они нормальные, на выход where они нормальные, такие же как и обычные. P.S. не смотрите на бред в некоторых местах пробовал по разному, если вводить только год то ищет по всем контекстам, если выбрать пункт какой-либо фильтрует нормально, так же выбирал заказчик и год, тоже фильтрует нормально, если выбрать только год то ищет по всем, хотя parent указан, указывал по разному, и :Like, и :IN и :=
На выходе where имеет это

{"parent:LIKE":4,"from-year:=":"2012","OR:by-year:=":"2012"}
.
<?php
if(sizeof($_POST) != 0){
    switch ($_POST['action']) {
        case 'filter':
            $Data = $_POST;
          if (sizeof($Data['fields']) >= 0) {

                $hash = (string) $_POST['hash'];
                $parentit = $Data["parent"];
                $where = array();
                // $where["template:="] = $templ;
                $fields = $Data['fields'];
                $where["parent"] = (int)$parentit;
                foreach($fields as $key => $value){
                    switch ($key){
                        case 'project-type':
                            if(sizeof($fields[$key]) != 1){
                                $where = array();
                            } else{
                                $where["parent"] = (int)$parentit;
                                $where[$key] = $fields[$key];
                            }
    
     
                            break;
    
                        case 'form':
                            $where = array();
                            
                            if(!empty($fields[$key]['customer']) && !empty($fields[$key]['year'])){
                                $where['customers-choose:LIKE'] = $fields[$key]['customer'];
                                $where["AND:parent:LIKE"] = (int)$parentit;
                                $year = $fields[$key]['year'];
                                $where["AND:from-year:="] = $year;
                                $where["OR:by-year:="] = $year;
                                
                                break;
                            } else {
                                if(!empty($fields[$key]['customer'])){
                                    $where['customers-choose:='] = $fields[$key]['customer'];
                                    
                                }
                                if(!empty($fields[$key]['year'])){
                                    $year = $fields[$key]['year'];
                                    $where["parent:LIKE"] = (int)$parentit;
                                    $where["from-year:="] = $year;
                                    $where["OR:by-year:="] = $year;
    
                                } 
                                
                            }
                            

                            
                            break;
                        default:

                            break;
                    }
                }


            
                $_SESSION['pdoPage'][$hash]['where'] = $where;
                $output['message'] = $where;
                $output['success'] = true;
                $_SESSION['pdoPage'][$hash]['parents'] = (int)$parentit;
 
                echo $modx->toJSON($output);
                die();
            } else {
                $output['message'] = 'Error';
                echo 'Error';
                die();
            }


            break;

    }
}
Slava
15 апреля 2020, 15:32
modx.pro
823
0

Вопрос по PdoMenu

Алексей
15 апреля 2020, 15:28
modx.pro
1
584
0

Как вывести родителей ресурса (категории товаров)?

Привет, в ms2 есть вкладка у товара, называется «категории»

Как бы на странице ресурса (товара) вывести список всех категорий в которых он находится? Спасибо.

Спасибо за ответ Евгений Webinmd
Сниппет выводит все вложенные категории товара в виде ссылок.
<?php
if (empty($rid)) {$rid = $modx->resource->id;}
if (empty($pid)) {$pid = $modx->resource->parent;}
if (empty($delimeter)) {$delimeter = ' , ';}
$scheme = $modx->getOption('link_tag_scheme', null, 'full', true);

$q = $modx->newQuery('msCategory');
$q->leftJoin('msCategoryMember', 'msCategoryMember', array(
    '`msCategory`.`id` = `msCategoryMember`.`category_id`'
));
$q->sortby('pagetitle','ASC');
$q->groupby('id');
$q->select(array('id','pagetitle'));
$q->where('`msCategoryMember`.`product_id` = '.$rid.' OR `id` = '.$pid);

$result = array();
if ($q->prepare() && $q->stmt->execute()) {
    while ($row = $q->stmt->fetch(PDO::FETCH_ASSOC)) {
        $url = $modx->makeUrl($row['id'], '', '', $scheme);
        $result[] = '<a href="'.$url.'">'.$row['pagetitle'].'</a>';
    }
}
return implode($delimeter, $result);
Jazz
15 апреля 2020, 15:00
modx.pro
1
1 847
0