Andrey

Andrey

Был в сети 27 апреля 2023, 14:37
Заказы принимаю
Приветствую! Понимаю что уже прошло много времени и воды утекло, но нашел это решение и применил его. Все круто (почти), комменты при первом сохранении разбивает как надо! НО!
После редактирования уже начинают появляться проблемы…
При редактировании прикрепленные фотографии не отображаются, почему?
потому что при этой записи:
'list' => 'comment-' ~ $thread,
Форма Добавления комментария и Форма редактирования комментария ведут себя по разному…
Форма комментария получается записывает (соответственно и сниппет отрабатывает) все это дело как:
comment-[[+id]]
А форма редактирования, вот так:
comment-resource-[[+здесь ID ресурса есена, т.к. написано $thread]]
И получается чехарда, сохраняю (формой редактирования), получается, что в базу (а именно в поле LIST) улетает:
comment-resource-[[+здесь ID ресурса есена, т.к. написано $thread]]
И при этом комментарии начинают глючить и тупить, а так же файл остается висеть, т.к. теперь у него назначно в LIST:
comment-resource-[[+здесь ID ресурса есена, т.к. написано $thread]]
Если есесна я назначу ему принудительно, например так:
'list' => 'comment-10'
То есесна как только я захочу отредактировать этот комментарий, то все чики пуки, файлы отображаются, перезагружаются, удаляются или загружаются новые именно к этому комменту!

Помогите пожалуйста понять, сделал все как описано именно в этой теме! Заранее огромное спасибо!
Хотя, не, настройка работает, это я клоун… Но теперь просмотр доступен всем!
Все равно стоит задача скрыть его для остальных и оставить только для пользователя создавшего документ!
ну тут вроде все правильно сделано, ошибок не вижу…
Попробуйте тогда сделать так:
1. Убрать поле counts из Требуемых к заполнению.
2. В настройках этого ТВ поля назначить «Значение по умолчанию» — «0»
3. Вуоля! Когда документ создается с фронта, то если ничего не вписывать (например забыл вписать или намеренно вписал 0), то в любом случае значение поля примет цифра «0».
Думаю так подойдет.
+ «required» не обязательно добавлять, т.к. это один фиг не на каждом браузере работает, можно просто после поля дописать вот такую запись:
<span class="error"></span>
Вроде и на ТВ-шках работают
аааа, кажется я понял… Это та ошибка по поводу которой я писал тогда Вам в ТП, не знаю с чего она вдруг началась у компонента. В общем дело такое, что сейчас Категория с тикетами создается с ошибкой, после которой невозможно отредактировать Дополнительные параметры Тикетами, а именно те, что хранится в базе в столбике как раз Properties. Приходится заходить напрямую в БД и добавлять туда значения вручную.

Может как раз поэтому ошибка. Но значения там прописаны… Скопированны из соседней Секции с Тикетами.
В БД прописано вот это:
{"tickets":{"template":"7","uri":"%alias","show_in_tree":false,"hidemenu":true,"disable_jevix":false,"process_tags":false},"ratings":{"ticket":"0","comment":"0","view":"0","vote_ticket":"0","star_ticket":"0","vote_comment":"0","star_comment":"0","min_ticket_create":"","days_ticket_vote":"","min_comment_create":"","days_comment_vote":""}}
В секции того тикета, вот это:
{"tickets":{"disable_jevix":false,"process_tags":false}}
Вроде все правильно, но ошибка. У меня кстати на другом проекте тоже самое было… но как то само прошло, ну или по крайней мере до сих пор не всплывало.
Секция с тикетами добавлена в Группу ресурсов.
У Группы пользователей стоят политики доступа к контексту:
TicketVioPolicy
К группе ресурсов:
TicketAddSectionPolicy

Ситуация крайне интересная, не разу не сталкивался, даже на проекте где у меня было уйма костылей, такой шибки не разу не было.
Да, конечно. Совсем забыл! Вот:
2018/07/15 03:02:57 [error] 16197#16197: *16145149 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to a member function getProperties() on null in /home/s14072/www/bK30fl4UHXsK/components/tickets/processors/mgr/ticket/update.class.php:110
Stack trace:
#0 /home/s14072/www/bK30fl4UHXsK/components/tickets/processors/mgr/ticket/update.class.php(79): TicketUpdateProcessor->setFieldDefault()
#1 /home/s14072/www/bK30fl4UHXsK/model/modx/modprocessor.class.php(803): TicketUpdateProcessor->beforeSet()
#2 /home/s14072/www/bK30fl4UHXsK/model/modx/modprocessor.class.php(173): modObjectUpdateProcessor->process()
#3 /home/s14072/www/bK30fl4UHXsK/model/modx/modx.class.php(1704): modProcessor->run()
#4 /home/s14072/www/bK30fl4UHXsK/components/tickets/model/tickets/tickets.class.php(246): modX->runProcessor('resource/update', Array)
#5 /home/s14072/www/assets/components/tickets/action.php(81): Tickets->saveTicket(Array)
#6 {main}
  thrown in /home/s14072/www/bK30fl4UHXsK/components/tickets/processors/mgr/ticket/update.class.php on line 110" while reading response header from upstream, client: 92.50.223.82, server: s14072.h10.modhost.pro, request: "POST /assets/components/tickets/action.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:24072", host: "poddomen.myesite.ru", referrer: "http://poddomen.myesite.ru/lk/company/marteditor?&tid=87"
Так, полагаю это она, три-четыре раза подряд всплыла.
ууу, где ж вы раньше были :DDD
Да, сам уже дошел до этого, сделал вот такой костыль:
[[pdoMenu?
&parents=`[[*id:pdofield=`{«topLevel»:2,«field»:«id»}`]]`
]]
Таким образом, теперь все вызывается как надо!
Но Вам тем не менее спасибо, за подтверждение! :D
та емае! :D
Я ж говорю не выход!
Т.к. генерировать надо так:
-Категория 1 (id — 2) — захожу сюда и генерируется меню так:
--Подкатегория 1.1 (Раздел с тикетами) (id — 5)
--Подкатегория 1.2 (Раздел с тикетами) (id — 6)
--Подкатегория 1.3 (обычный документ) (id — 7)
НО! Если я зайду например в дочерний документ подкатегории:
--Подкатегории 1.2 (Раздел с тикетами) (id — 6)
то меню начнет генерироваться с учетом её родителя, а именно вот как так:
--Подкатегории 1.2 (Раздел с тикетами) (id — 6)
И все, больше в меню по идее ничего не будет!
+ ко всему теряется динамичность, ведь мне надо чтобы меню само генерировалось для обоих категории со своими подкатегориями!
&context=`[[*context_key]]`
Вот это надо подставлять в форму вывода сниппета и попробуйте для начала чанки стандартные, чтобы проверить работоспособность, кстати фот это должно работать:
<form class="navbar-form msearch2" id="mse2_form" action="[[~2]]" method="get">
атрибут
action="[[~2]]"
как раз и должен перенаправлять на страницу с результатом поиска