+0.05
Рейтинг
1.10
Сила

Серега

[РЕШЕНО] Что за аномалия?

Хочу реализовать прибавление рейтинга за публикацию топика:
В Action.Topic.class.php добавляю 3 строчки:
if ($this->Topic_AddTopic($oTopic)) {
			$this->Hook_Run('topic_add_after', array('oTopic'=>$oTopic,'oBlog'=>$oBlog));
			/**
			 * Получаем топик, чтоб подцепить связанные данные
			 */
			$oTopic=$this->Topic_GetTopicById($oTopic->getId());
			/**
			 * Прибавляем 0.4 рейтинга за публикацию топика
			 */
			$oUserTopic = $this->oUserCurrent;
            $oUserTopic->setRating($oUserTopic->getRating()+0.4); // можно в конфиге val вместо 0.4
            $this->User_Update($oUserTopic);


Всё ок, работает на ура!
В этом же файле, только ниже, в функции удаления (вконце) добавляю 3 строчки отнимания рейтинга при удалении топика:
protected function EventDelete() {
		$this->Security_ValidateSendForm();
		/**
		 * Получаем номер топика из УРЛ и проверяем существует ли он
		 */
		$sTopicId=$this->GetParam(0);
		if (!($oTopic=$this->Topic_GetTopicById($sTopicId))) {
			return parent::EventNotFound();
		}
		/**
		 * проверяем есть ли право на удаление топика
		 */
		if (!$this->ACL_IsAllowDeleteTopic($oTopic,$this->oUserCurrent)) {
			return parent::EventNotFound();
		}
		
		/**
		 * Удаляем топик
		 */
		$this->Hook_Run('topic_delete_before', array('oTopic'=>$oTopic));
		$this->Topic_DeleteTopic($oTopic);
		$this->Hook_Run('topic_delete_after', array('oTopic'=>$oTopic));
		/**
		 * Отнимаем 0.4 рейтинга
		 */
		$oUserTopic = $this->oUserCurrent;
        $oUserTopic->setRating($oUserTopic->getRating()-0.4);
        $this->User_Update($oUserTopic);

Теже 3 строчки, но только знак минус. НЕ РАБОТАЕТ. РЕЙТИНГ НЕ ОТНИМАЕТСЯ!

Понял, потом, что функция отнимания неверна, т.к. если удалит админ или редактор, то у него отнимется рейтинг.

Пределал:
$oUserTopic=$this->User_GetUserById($oTopic->getUserId());
		$oUserTopic->setRating($oUserTopic->getRating()-0.4);
        $this->User_Update($oUserTopic);

Заменил, и всё равно рейтинг не отнимается. Что не так?

Разные шаблоны новотей для полной и краткой новости

Я думаю многие задавались и не знали как просто и эффективно задать разные шаблоны для полной и краткой новостей, к сожалению в стандартных шаблонах Лайвстрита — такая функция не предусмотрена.



Итак обмозговав и протестировав, выкладываю Вам свой мануал, решение данной проблемы вывода новостей.

Читать дальше →

Как выводить блок только в топиках? [РЕШЕНО]

Здравствуйте!

В конфиге плагина прописан вывод блока в сайдбар:
Config::Set('block.plugin_shoutbox', array(																//block (sidebar)
	'action' => array(
		'blog'
	),
	'blocks' => array(
		'right' => array(
			'shoutbox'=> array('params' => array('plugin' => 'shoutbox'), 'priority' => 101),
		)
	),
	'clear' => false,
));

И у меня вопрос, как его выводить только в топиках, ведь экшена Топик нет, насколько я понимаю?

Спасибо за ответ!

Премодерация топиков. Теперь с модераторами.


Представляю вам новую версию плагина «Премодерация топиков» — пока что единственный плагин, который позволяет решить проблему со спамботами. В новой версии:

(+) Добавлена возможность работы плагина под Livestreet 0.5.*
(+) Добавлена возможность задействовать администраторов и модераторов блогов в процессе премодерации
(+) Добавлена возможность указывать типы блогов, в которых активна премодерация (например можно разрешить публиковать в персональные блоги без модерации)

(*) Уведомления о топике и событие в ленте появляется только после прохождения модерации
(*) При повторном сохранении, опубликованный топик вновь может быть отправлен на модерацию
(*) Исправлены баги с хождением уведомлений админам и модераторам

Купить плагин можно в каталоге
livestreetcms.com/addons/view/459/

Напоминаю, что для некоторых категорий проектов действуют скидки
livestreet.ru/blog/14487.html

Обсуждение по ссылке
livestreet.ru/blog/pay/12235.html

Дата рождения пользователя и часовой пользователей

Доброго всем времени суток!

Недавно заметил странное, на мой взгляд, поведение системы. Если у пользователя установлен часовой пояс с GMT меньшим, чем на сервере, то у всех пользователей в графе «День рождения» он видит дату на день меньше.

Это происходит из-за того, что дата рождения обрабатывается форматером date_format, который дополнительно «переводит» часы на GMT пользователя. В итоге вместо 12-12-2012 00:00:00, записаных в БД, форматированеи проходит что-то вроде 11-12-2012 23:00:00.

Какие есть мысли по поводу такого поведения системы? Я у себя признал это багой и в форматтер в итоге добавил флаг, который задает необходимость применения GMT смещений.

Ограничение в блогах

Здравствуйте.
Возник вопрос: А как ввести дополнительные ограничение на постинг в определенных блогах, помимо рейтингового ограничения.
А точнее мне нужно сделать чтобы в блог могли постить только администраторы и модераторы блога, а читать блог могли все…
Как такое можно решить, может быть есть готовое решение?

Следите за целостностью БД: топик -> блог

Сегодня на сайте вылезла ошибка, которая ложила плагин похожих записей. Советую проверить БД своего сайта на целостность (особенно если он существует давно) и если Вы когда-либо удаляли блоги. Этот топик немного поможет Вам в этом.
Читать дальше →

Ошибка в поле "ТЕКСТ"... Как убрать ограничение в 2 символа?

Уважаемые знатоки, подскажите пожалуйста где и как убрать ограничение на на обязательное заполнение поля «ТЕКСТ» при создании топика?

Не могу найти где исправить. Появляется вот такая ошибка «Ошибка: Поле Текст слишком короткое (минимально допустимо 2 символов)»

Извните за глупый вопрос. Но уж очень надо снять это ограничение вообще.

Убираем тормоз synio

На этот топик меня сподвиг тот факт, что последние 3-4 дня наблюдаются регулярные тормоза в работе и этого сайта и всех сайтов на LS с шаблоном synio в частности.

Вооружившись этим топиком от PSNet я понял, что все проблемы исходят от корпорации зла Google, т.е. серверы, которые отдают шрифт PT Sans регулярно глючат и тормозят работу сайта.

Читать дальше →