Наумов Алексей

Наумов Алексей

С нами с 31 марта 2013; Место в рейтинге пользователей: #13
Наумов Алексей
05 мая 2015, 11:29
0
Подозреваю, что для таких случаев и созданы CRC, что бы все сделать красиво. А в вашем случае может быть простых плагинов (к примеру на сохранение OnDocFormSave ) хватит?
Наумов Алексей
01 мая 2015, 09:21
+1
Кстати, я тут подумал, на примере моего сайта.
Считать рейтинг за создание modResource и за плюсы к ним совсем не нужно, ведь их администратор добавляет, а не пользователи. Много ли ситуаций, когда ресурсы-не тикеты добавляют пользователи?..

Остаются тогда только действия добавления комментария, голос за комментарий, добавление в избранное.

Может только эти действия считать тогда у НЕ тикетов?
Наумов Алексей
30 апреля 2015, 14:44
0
Необходимо проверить, что:
1. База данных и ВСЕ таблицы в ней в кодировке utf-8
2. Подключение к базе в файле настроек тоже в utf-8
3. Что нет с php файлов, сохраненных в не в utf-8.

Но, думаю, пункта 1 будет достаточно.
Наумов Алексей
30 апреля 2015, 08:58
0
В конце метода prepareQueryBeforeCount процессора TicketGetListProcessor добавляю:

$c->prepare();
echo $c->toSql();
die;
в инструментах разработчика браузера при обновлении списка в админке получаю запрос:
SELECT `Ticket`.`id`, `Ticket`.`type`, `Ticket`.`contentType`, `Ticket`.`pagetitle`, `Ticket`.`longtitle`, `Ticket`.`description`, `Ticket`.`alias`, `Ticket`.`link_attributes`, `Ticket`.`published`, `Ticket`.`pub_date`, `Ticket`.`unpub_date`, `Ticket`.`parent`, `Ticket`.`isfolder`, `Ticket`.`introtext`, `Ticket`.`content`, `Ticket`.`richtext`, `Ticket`.`template`, `Ticket`.`menuindex`, `Ticket`.`searchable`, `Ticket`.`cacheable`, `Ticket`.`createdby`, `Ticket`.`createdon`, `Ticket`.`editedby`, `Ticket`.`editedon`, `Ticket`.`deleted`, `Ticket`.`deletedon`, `Ticket`.`deletedby`, `Ticket`.`publishedon`, `Ticket`.`publishedby`, `Ticket`.`menutitle`, `Ticket`.`donthit`, `Ticket`.`privateweb`, `Ticket`.`privatemgr`, `Ticket`.`content_dispo`, `Ticket`.`hidemenu`, `Ticket`.`class_key`, `Ticket`.`context_key`, `Ticket`.`content_type`, `Ticket`.`uri`, `Ticket`.`uri_override`, `Ticket`.`hide_children_in_tree`, `Ticket`.`show_in_tree`, `Ticket`.`properties`, CreatedBy.username AS username, UserProfile.fullname AS author, Thread.comments AS comments, Parent.id AS section_id, Parent.pagetitle AS section FROM `modx_site_content` AS `Ticket` LEFT JOIN `modx_users` `CreatedBy` ON `Ticket`.`createdby` = `CreatedBy`.`id` LEFT JOIN `modx_user_attributes` `UserProfile` ON UserProfile.internalKey = Ticket.createdby LEFT JOIN `modx_tickets_threads` `Thread` ON Thread.resource = Ticket.id LEFT JOIN `modx_site_content` `Parent` ON `Ticket`.`parent` = `Parent`.`id` WHERE `Ticket`.`class_key` = 'Ticket'
Иду с ним в phpMyAdmin — все ок, колонка comments есть, цифры в ней есть.

А куда они потом пропадают — не пойму. Хотя уже 100 раз код сам проверил, вроде все в порядке.
Наумов Алексей
30 апреля 2015, 08:47
0
Чего то вообще не пойму в чем дело.
В процессоре в методе prepareQueryBeforeCount формируется верный запрос, и при его выполнении в pma комментарии считаются, а в prepareRow уже поле comments равно 0. Странная ситуация.
Наумов Алексей
29 апреля 2015, 20:46
0
Иди отдыхать))) Хорошо, что это просто любительский проект, восстановлюсь как нибудь!
Наумов Алексей
29 апреля 2015, 20:41
0
Чет у меня благополучно таблица modx_tickets_votes удалилась и более не создается при переустановке компонента))) сайт соответственно не работает)) огонь)))
Наумов Алексей
29 апреля 2015, 20:29
0
Таблицу удалил, обновился, пересчитал все, а тут все равно нули:
Наумов Алексей
29 апреля 2015, 20:15
0
Небольшое замечание — в сводной таблице всех тикетов в колонке Комментарии у меня везде нули, хотя комментарии есть.
Наумов Алексей
29 апреля 2015, 20:12
0
Думается мне, что может быть такой вариант:
1. Основной «источник» настроек очков рейтинга — в системных настройках. Это логично, на то они и настройки. Пусть там же будут и настройки для начисления очков.
2. Для тикетов — дополнительная возможность переопределить их через вкладку у секий, как сделано сейчас. Это тоже удобно, т.к. для каждой секции мы указываем ее значимость. К примеру на modx.pro секция Вопросы мало значима, а секция Готовые решения — дает высокий рейтинг.
3. Что делать с остальными страницами… действительно, четкого видения нет, либо пусть их настройки будут те, что в п.1 и нечего заморачивться, либо… как ты сказал, например отдельная вкладка. Можно ее показывать для ресурсов с определенным шаблоном или id.

Но в принципе пункт 3 можно сделать и потом) а вот почему сразу ты сделал сразу более сложный пункт 2 вместо более простого пункта 1 я не понял =)
Наумов Алексей
29 апреля 2015, 19:54
0
Ок, обкатываем) я уже поставил, хотел вывести рейтинг, да увидел, что на моем сайте есть человек, оставивший 600 комментариев, и ни одного из них у тикетов))) в итоге его рейтинг — 0, хотя на сайте он мегаполезный и активный персонаж))
Наумов Алексей
29 апреля 2015, 19:27
+1
Не, выше чуть не про то.

Вот смотри: комментарии можно оставлять не только к тикетам же, так? Почему же не добавлять рейтинг за эти комментарии? Правда придется продублировать очки рейтинга в настройках видимо, т.к. сейчас они только у секции…
Наумов Алексей
29 апреля 2015, 17:37
0
Эм, а если комментарии добавляются не к тикетам, а просто к ресурсам, они в подсчете рейтинга не участвуют? Это как-то плохо =)))
Наумов Алексей
29 апреля 2015, 16:52
0
Ну суть в том, что можно сделать отдельный вызов для рейтинга, убрав из него все поля, кроме самого рейтинга =)

Остается только открытым вопрос с премодерацией, сейчас она по-умолчанию включена и отключить нельзя. Попробую в след версиях это убрать. Но тогда встает вопрос спама и многократных голосований, непонятно что делать, то ли куки вешать, толи по IP проверять, не знаю в общем.
Наумов Алексей
29 апреля 2015, 10:40
0
Gallery, ms2Gallery, MoreGallery — дополнения для управления фотоальбомами
Наумов Алексей
29 апреля 2015, 08:38
0
Я бы что-то свое писал видимо… для сбора данных можно Formit с хуком, но объект Заявка сделал бы отдельным классом, а не ресурсом.

easyComm — не подойдет