Tickets - виджет новых комментариев со ссылкой на модерацию


Виджет в админку с количеством новых комментов и возможностью перейти на страницу модерации.

<?php

$comments = $modx->getCount('TicketComment', array('published'=>0) );

if( $comments )
{
	$action = $modx->getObject('modAction', array('namespace'=>'tickets', 'controller'=>'index') );
	
	if( is_object($action) )
	{
		$href = '?a='. $action->get('id');
	}
	
	$return = '<div style="font-size:190%; line-height:140%;">Комментариев на модерации: <b style="color:red">'. $comments .'</b>
<a href="'. $href .'">Перейти к обработке</a></div>';
}
else {
	$return = 'Нет комментариев для модерации';
}

return $return;
Тип виджета: Встроенный PHP-виджет

P.S.: Этот топик был вопросом, поэтому внизу комментарий Василия — это ответ на мой вопрос.
Павел Гвоздь
23 сентября 2015, 04:09
modx.pro
8
2 935
+4
Поблагодарить автора Отправить деньги

Комментарии: 7

Василий Наумкин
23 сентября 2015, 07:19
+1
Не думаю.

Но ты легко можешь сделать себе ссылку через QuickButtons в раздел работы с комментариями:

А там всё уже отсортировано по дате + есть возможность выделить и одобрить сразу несколько комментов через Shift или Ctrl.
    Павел Гвоздь
    23 сентября 2015, 09:11
    +1
    Сделал простенько без использования QuickButtons:


    Если кому интересно, вот код виджета:
    <?php
    
    $comments = $modx->getCollection('TicketComment', array('published'=>0) );
    
    if( !empty($comments) )
    {
    	$action = $modx->getObject('modAction', array('namespace'=>'tickets', 'controller'=>'index') );
    	
    	if( is_object($action) )
    	{
    		$href = '?a='. $action->get('id');
    	}
    	
    	$return = '<div style="font-size:190%; line-height:140%;">Комментариев на модерации: <b style="color:red">'. count($comments) .'</b>
    <a href="'. $href .'">Перейти к обработке</a></div>';
    }
    else {
    	$return = 'Нет комментариев для модерации';
    }
    
    return $return;
    Тип виджета: Встроенный PHP-виджет
      Василий Наумкин
      23 сентября 2015, 09:38
      1
      +2
      Не стоит выбирать все комментарии, если можно сразу получить их количество.
      $comments = $modx->getCount('TicketComment', array('published'=>0) );
      Это быстрее на порядки.
    r5uY40
    02 октября 2015, 14:58
    0
    Василий, немного оффтоп. Предлагаю при наведении на цифру плюсиков и минусиков рядом со стрелочками показывать всплывающие мини-аватарки тех, кто плюсует и минусует посты и сообщения. Как во ВКонтакте или Фейсбуке. Зачем: я часто говорю «спасибо именно плюсами, в комментах „спасибами“ не отписываюсь. Мне кажется, что автору полезного коммента или топика было бы приятно знать, кто ему сказал спасибо „плюсом“.
      Максим Кузнецов
      02 октября 2015, 15:26
      +2
      Такой формат, если не ошибаюсь, пошел с хабра. Оттуда же и невозможность «переголосовать».

      *улыбнувшись* А вообще (вспоминая темперамент некоторых авторов) вы, пожалуй, даже представить не сможете, насколько здесь может повысится градус прений, когда люди смогут увидеть тех, кто им поставил минус.
        r5uY40
        02 октября 2015, 15:28
        0
        Да, Вы правы, минусы можно не персонализировать :)
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7