Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Trotor

Лимит модерирования

Рекомендованные сообщения

Кстати. А можно в темы вывести дату окончания модерирования? Даже лучше не дату, а кол-во дней модерирования?

Поделиться сообщением


Ссылка на сообщение

Кстати. А можно в темы вывести дату окончания модерирования? Даже лучше не дату, а кол-во дней модерирования?

Или как лучший вариант, внести информацию о оставшихся кол-вах дней на страницу модераторов - /index.php?app=forums&module=extras&section=stats&do=leaders

Поделиться сообщением


Ссылка на сообщение

А куда его именно добавлять в файле moderator.php? В самый низ файла?

Без разницы. Лишь бы в класс попасть.

Если сомневаетесь, то добавьте перед

	/**
 * Rebuild moderator cache
 *
 * @return	void		[Outputs to screen]
 */
public function rebuildModeratorCache()

Или как лучший вариант, внести информацию о оставшихся кол-вах дней на страницу модераторов - /index.php?app=forums&module=extras&section=stats&do=leaders

Всем? Там же и администрация и супермодераторы

Поделиться сообщением


Ссылка на сообщение

Без разницы. Лишь бы в класс попасть.

Если сомневаетесь, то добавьте перед

Добавил в самый низ, сработало. Но лучше сделаю как вы советуете.

 

Всем? Там же и администрация и супермодераторы

Да, но админы и супермодераторы по умолчанию модерят все разделы, поэтому на них нет записей в таблице модераторов. Хотелось что бы там были записи о тех на кого есть запись в таблице модераторов.

Поделиться сообщением


Ссылка на сообщение

Да, но админы и супермодераторы по умолчанию модерят все разделы, поэтому на них нет записей в таблице модераторов. Хотелось что бы там были записи о тех на кого есть запись в таблице модераторов.

 

Что делать, если юзер модерирует 2 и более форумов, и для каждого установлено свое время?

Поделиться сообщением


Ссылка на сообщение

Что делать, если юзер модерирует 2 и более форумов, и для каждого установлено свое время?

На этой странице есть список выпадающих кто какие разделы модерит. Так не возможно?

Поделиться сообщением


Ссылка на сообщение

@newbie,

Пожалуйста очень нужно вывести где то информацию что бы человек знал сколько у него лимита модерирования дней (или до какого числа). Можно в профилях, можно на странице модераторов - главное что бы выводилась эта информация для ознакомления модераторов.

Поделиться сообщением


Ссылка на сообщение

Открыть \admin\applications\forums\modules_public\extras\stats.php

Найти

			$mod_array = array();

Выше добавить

			$modMidsWithLimit = array();
		$modGidsWithLimit = array();

		foreach ($this->cache->getCache('moderators') as $mod)
		{
			if (isset($mod['cmod_moderate_time']) and $mod['cmod_moderate_time'] > 0 and ($mod['cmod_moderate_time'] > time()))
			{
				$days = IPSTime::time_ago($mod['cmod_moderate_time'] - time());

				if ($mod['is_group'])
				{
					$modGidsWithLimit[$mod['group_id']][$mod['forum_id']] = $days;
				}
				else
				{
					$modMidsWithLimit[$mod['member_id']][$mod['forum_id']] = $days;
				}
			}
		}

 

Найти

						$mod_array[ $i['member_id'] ]['forums'][ $fid ] = ipsRegistry::getClass('class_forums')->forum_by_id[ $fid ]['name'];

Заменить на

						$d = '';
					if (isset($modMidsWithLimit[$i['member_id']][$fid]))
					{
						$d = $modMidsWithLimit[$i['member_id']][$fid];
					}
					elseif (isset($modGidsWithLimit[$i['member_group_id']][$fid]))
					{
						$d = $modGidsWithLimit[$i['member_group_id']][$fid];
					}
					$mod_array[ $i['member_id'] ]['forums'][ $fid ] = ipsRegistry::getClass('class_forums')->forum_by_id[ $fid ]['name'] . ($d ? ' Осталось ' . $d: '');

 

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

@newbie,

Большое спасибо, то что надо!

 

Скажите, а как изменить английское days на русское дней? И можно дату красным цветом выделить?

Поделиться сообщением


Ссылка на сообщение

Скажите, а как изменить английское days на русское дней?

\admin\sources\base\core.php

Смотрите метод time_ago

	static public function time_ago( $ts )

 

Только там еще и часы/минуты могут быть.

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

$days = floor(($mod['cmod_moderate_time'] - time()) / 86400);

И можно дату красным цветом выделить?

Нельзя использовать теги внутри option.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

@newbie,

А возможно что то подобное и для групп реализовывать? Что бы можно было назначать пользователю выбранную группу временно, а потом при истечение времени автоматически пользователь возвращался в исходную группу.

Поделиться сообщением


Ссылка на сообщение

А возможно что то подобное и для групп реализовывать? Что бы можно было назначать пользователю выбранную группу временно, а потом при истечение времени автоматически пользователь возвращался в исходную группу.

Это вопрос для другой темы.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...