. ну сделаю наверное сам, только времени займет больше.. может кто-то уже делал?
кому надо - вот это// get commentsнадо добавить в коде сниппета UserComments после этого
$ds = $modx->db->select(’content’,$modx->getFullTableName(’site_content’),’ parent=\’’.$folder.’\’ AND alias=\’’.$alias.’\’’);
$content = $modx->db->getValue($ds);
// split content into separate comments
$parts = explode($splitter,$content);
array_pop($parts);
// count comments
$countComments = count($parts);
//у меня стоит 30 комментариев ($countComments>30), кому надо, тот поставит меньше
if ($countComments>30) {
$parts = implode($splitter,$parts);
$sql = ’ UPDATE ’.$modx->getFullTableName(’site_content’).
’ SET content = \’’.$parts.’\’’.
’ WHERE parent=\’’.$folder.’\’ AND alias=\’’.$alias.’\’’;
$modx->db->query($sql);
}
// save comment
$sql = ’SELECT pagetitle FROM ’.$modx->getFullTableName(’site_content’).’ WHERE parent=\’’.$folder.’\’ AND alias=\’’.$alias.’\’ LIMIT 1’;
if($modx->db->getValue($sql)) {
// update comments
$sql = ’ UPDATE ’.$modx->getFullTableName(’site_content’).
’ SET content = CONCAT(\’’.$comment.$splitter.’\’,content)’.
’ WHERE parent=\’’.$folder.’\’ AND alias=\’’.$alias.’\’’;
$modx->db->query($sql);
Каким образом можно сохранять IP адреса запостивших коммент? Или точнее - сохранить то не проблема, например в том же документе, где и сам коммент хранится, но выводить на сайте их IP совсем не надо. Значит каким-то образом скрипт должен вырезать этот IP адрес из выводимого на экран сообщения..
Ну насколько рабочий - пока не знаю, но принцип такой: скажем IP адрес запишем в строку, обрамленную с двух сторон какой-нибудь подобной конструкцией **ip**127.0.0.1**/ip**.. а потом скриптом при выводе вырезаем вместе с ее содержимым. Наверное, должно получится
завтра допишу про IP, если успею.
ссылку можно, где эти классы хранятся?
Кстати, в данном случае тоже проверка идет на этапе добавления комментария.
это я насчёт проверки!