getTickets + ajax пагинация не работает Решено

Дополнение: Tickets

Приветствую!

Вопрос по Аякс-пагинации, т.е. getTickets обернутая в pdoPage с параметром: ajaxmode=default или любым другим

Вопрос в следующем, сама то пагинация работает как надо, грехов нет!

Но вот Мета-инфорация типа: Избранное, кол-во комментариев и рейтинг не выводятся при переходе на другую страницу или при нажатии на кнопку (если настроена ajaxmode=button)

Прошу помочь разобраться в данной теме! Очень интригующий момент!
Заранее спасибо за помощь!

РЕШЕНИЕ!
Добавить в вызов:
&nestedChunkPrefix=`tickets_`
или использовать синтаксис Fenom вместо быстрых плейсхолдеров, что уже давно сделано на modx.pro.

За помощь как всегда спасибо Василию Наумкину!
09 сентября 2016, 17:15    Andrey   
1    438 0

Комментарии (17)

  1. Andrey 10 сентября 2016, 18:52 # 0
    ну неужели не кто не знает!
    1. Andrey 13 сентября 2016, 12:15 # 0
      :(
      1. Василий Наумкин 13 сентября 2016, 14:05 # 0
        Здесь же как-то работает.

        Проверь, может стоит уже обновить pdoTools?
        1. Andrey 13 сентября 2016, 19:18 # 0
          Да вот в том то и дело, что последняя версия pdoTools и Tickets стоит! Это ж первое на что внимание обратил внимание! Я просто думал, может какой нибудь хитрый вызов должен быть! Но если нет, значит я что то сломал :(
          1. Andrey 13 сентября 2016, 19:27 # 0
            Единственное, что MODX не обновлен до самой последней версии! Т.к. там были проблемы с TinyMCE из которой не грузились ресурсы! Может из-за этого, но я подумал, что это мало вероятно!
            1. Andrey 13 сентября 2016, 19:50 # 0
              обновил MODX, интересного не чего не произошло! :(
          2. but1head 13 сентября 2016, 20:35 # +1
            <div id="pdopage">
                [[!+page.nav]]
                <div class="rows">
                    [[!pdoPage?
                        &parents=`0`
                        &ajaxMode=`button`
                        &limit=`5`
                    ]]
                </div>
            </div>
            Прекрасно работает.
            1. Andrey 13 сентября 2016, 21:41 # 0
              Совершенно согласен! Но не с компонентом getTickets! Тут ведь задача стоит так, чтобы при аякс-пагинации работала Мета-информация (добавить в избранное, секции тикетов, рейтинг)! Сама то пагинация на ура работает! А вот с компонентом работать отказывается, но без этого:
              &element=`getTickets`
              не работает Мета-инфомарция!
              Я бы не спрашивал про эту тему, если бы не видел, что она прекрасно работает на modx.pro! Вопрос тов чем, может все же вызов какой нибудь хитрый? Потому как он не работает даже со стандартными чанками! Вызов соответсвенно такой:
              <div class="col-md-8" id="pdopage">
                  <div class="rows">
                      [[!pdoPage:default=`<div class="alert alert-info alert-dismissable" style="font-size:15px;margin-top:10px;">
              				<a class="panel-close close" data-dismiss="alert">×</a> 
              				<i class="fa fa-info"></i>
              				<strong>ВНИМАНИЕ!</strong> Статей еще нет!
              			   </div>`?
              	&element=`getTickets`
                      &limit=`5`
                      &ajaxMode=`default`
              	&showLog=`1`
              	&user=`[[!+modx.user.id]]`
                      &includeContent=`1`
                      &includeTVs=`myTV`
                      &prepareTVs=`1`
                      &processTVs=`1`
                      &tvPrefix=`tv.`
                      &parents=`0`
                      &tpl=`my-Tpl`
                      ]]
                  </div>
                  <div style="margin:10px 0;">[[!+page.nav]]</div>
                 </div>
              1. Andrei D. 13 сентября 2016, 23:47 # 0
                забей… я два раза тут задавал этот вопрос, никто не ответил… пришлось убрать ajaxmode и подключить jquery ias, но до последнего верил, что будет какая-то совместимость с тикетами
                1. Andrey 14 сентября 2016, 07:47 # 0
                  та вот не могу! С аякс-пагинацией реально быстрее работает! Ну не может быть такого, что бы здесь работало, а у нас нет! Я почему то просто уверен, что вызов хитрый должен быть! Или надо в чанк ченить добавить!
                2. but1head 14 сентября 2016, 01:44 # 0
                  А &loadModels=`Tickets` или &class=`Ticket` не забыли?
                  1. Andrei D. 14 сентября 2016, 07:44 # 0
                    увы, не помогло
                    1. Andrey 14 сентября 2016, 07:46 # 0
                      не помогает, да плюс и не к чему это, т.к.
                      &element=`getTickets`
                      вот этот параметр как раз и организует выборку только ресурсов с классом
                      Tickets
                3. Andrey 14 сентября 2016, 07:50 # 0
                  короче сегодня буду чистый MODX ставить и на нем эксперименты проводить! Есть еще подозрение!
                  1. Василий Наумкин 14 сентября 2016, 08:03 # +2
                    Раз больше никому не интересно докопаться до сути вопроса, пришлось это сделать мне.

                    Итак, в стандартных чанках Tickets используются "быстрые плейсхолдеры", с префиксом «tickets_» — и это отлично работает при стандартном вызове.

                    При вызове же через Ajax, все настройки сохраняются в сессию, чтобы восстановить их потом при запросе. При этом, pdoTools сохраняет так же и default настройки, которые обычно не указаны.

                    Таким образом, вот здесь
                    $default = array(
                    	'class' => $class,
                    	...
                    	'nestedChunkPrefix' => 'tickets_',
                    );
                    
                    // Merge all properties and run!
                    $pdoFetch->setConfig(array_merge($default, $scriptProperties));
                    
                    происходит перезапись &nestedChunkPrefix с «tickets_» массива $default на «pdotools_» массива $scriptProperties, из-за чего быстрые плейсхолдеры перестают работать.

                    Поэтому решение — или указать явно
                    &nestedChunkPrefix=`tickets_`
                    или использовать синтаксис Fenom вместо быстрых плейсхолдеров, что уже давно сделано на modx.pro.
                    1. Andrey 14 сентября 2016, 08:11 # 0
                      Уиииии! Работает!
                      Ну Василий, дело ведь не в том, что я например не пытался, перерыл весь сайт! Но за то что балбес каюсь :(
                      1. Andrei D. 14 сентября 2016, 08:27 # 0
                        спасибо!
                      Вы должны авторизоваться, чтобы оставлять комментарии.