Стаж на трекере (Звезды)

 • Просмотры: 3204
Аватара пользователя
d0ct0r
Откуда: СССР
Благодарил (а): 4 раза
Поблагодарили: 11 раз
Сообщения: 55
Зарегистрирован: 22 мар 2009, 11:16
Сообщение

Стаж на трекере (Звезды)

14 авг 2011, 03:03

phpBB версия 3.0.8
Установка: 3 минуты
Сложность: Легкая
Описание: Добавляет к информации о юзере стаж его нахождения на трекере, и отображает рядом с аватарой звезды, равное количеству стажа.
Установка:
root.zip

1. Распаковать архив относительно корневой директории.
Правка файлов:
2. Открыть: memberlist.php
Найти:

Код: Выделить всё

	// Dump it out to the template
Добавить перед:

Код: Выделить всё

	// annual stars
	$reg_stars = '';
	if ($reg_years = (int) ((time() - (int) $data['user_regdate']) / 31536000))
	{
		$reg_output = sprintf($user->lang['YEAR_OF_MEMBERSHIP'], $reg_years);
		if($reg_years > 1)
		{
			$reg_output = sprintf($user->lang['YEARS_OF_MEMBERSHIP'], $reg_years);
		}
		$reg_stars = str_repeat($user->img('icon_annual_star', $reg_output), $reg_years);
	}
Найти:

Код: Выделить всё

		'WARNINGS'		=> isset($data['user_warnings']) ? $data['user_warnings'] : 0,
Добавить после:

Код: Выделить всё

		// annual stars
		'MEMBERSHIP_STARS'	=> $reg_stars,
3. Открыть: viewtopic.php
Найти:

Код: Выделить всё

				'allow_pm'			=> 0,
			);
Добавить после:

Код: Выделить всё

			// annual stars
			$user_cache[$poster_id]['reg_stars'] = '';
Найти:

Код: Выделить всё

			get_user_rank($row['user_rank'], $row['user_posts'], $user_cache[$poster_id]['rank_title'], $user_cache
Добавить перед:

Код: Выделить всё

			// annual stars
			$user_cache[$poster_id]['reg_stars'] = '';
			if ($reg_years = (int) ((time() - (int) $row['user_regdate']) / 31536000))
			{
				$reg_output = sprintf($user->lang['YEAR_OF_MEMBERSHIP'], $reg_years);
				if($reg_years > 1)
				{
					$reg_output = sprintf($user->lang['YEARS_OF_MEMBERSHIP'], $reg_years);
				}
				$user_cache[$poster_id]['reg_stars'] = str_repeat($user->img('icon_annual_star', $reg_output), $reg_years);
			}
Найти:

Код: Выделить всё

		'POSTER_AGE'		=> $user_cache[$poster_id]['age'],
Добавить после:

Код: Выделить всё

		// annual stars
		'MEMBERSHIP_STARS'	=> $user_cache[$poster_id]['reg_stars'],
4. Открыть: includes/acp/acp_styles.php
Найти:

Код: Выделить всё

		// Execute overall actions
		switch ($action)
Добавить перед:

Код: Выделить всё

		// annual stars
		$this->imageset_keys['icons'][] = 'icon_annual_star';
5. Открыть: language/en/common.php
Найти:Добавить перед:

Код: Выделить всё

// annual stars
$lang['LENGTH_OF_MEMBERSHIP'] = 'лет на трекере';
$lang['YEARS_OF_MEMBERSHIP'] = '%d лет на трекере';
$lang['YEAR_OF_MEMBERSHIP'] = '%d год на трекере';
$lang['IMG_ICON_ANNUAL_STAR']   = 'Звездун';
6. Открыть: styles/prosilver/imageset/imageset.cfg
Найти:

Код: Выделить всё

img_icon_user_warn = icon_user_warn.gif*20*20
Добавить после:

Код: Выделить всё

img_icon_annual_star = icon_annual_star.gif
7. Открыть: styles/prosilver/template/memberlist_view.html
Найти:

Код: Выделить всё

			<dt>{L_JOINED}:</dt> <dd>{JOINED}</dd>
Добавить после:

Код: Выделить всё

		<!-- IF MEMBERSHIP_STARS -->
			<dt>{L_LENGTH_OF_MEMBERSHIP}:</dt> <dd>{MEMBERSHIP_STARS}</dd>
		<!-- ENDIF -->
8. Открыть: styles/prosilver/template/viewtopic_body.html
Найти:

Код: Выделить всё

		<dd>&nbsp;</dd>
Добавить перед:

Код: Выделить всё

			<!-- IF postrow.MEMBERSHIP_STARS -->
				<dd>&nbsp;</dd>
				<dd>{postrow.MEMBERSHIP_STARS}</dd>
			<!-- ENDIF -->
9. Админраздел: Обновить шаблон, темы, рисунки, очистить кэш
Выглядит это так:

В реале смотрим тут: http://rustorrent.su/viewtopic.php?f=202&t=806
У вас нет необходимых прав для просмотра вложений в этом сообщении.
RusTorrent.Su - Русский Торрент-трекер
Аватара пользователя
9CaraTT
Благодарил (а): 230 раз
Поблагодарили: 228 раз
Сообщения: 3085
Зарегистрирован: 13 мар 2011, 15:23
Сообщение

Стаж на трекере (Звезды)

14 авг 2011, 03:14

2лет членства
2 года наверно правильнее было бы
за мод пасибо!
Аватара пользователя
d0ct0r
Откуда: СССР
Благодарил (а): 4 раза
Поблагодарили: 11 раз
Сообщения: 55
Зарегистрирован: 22 мар 2009, 11:16
Сообщение

Стаж на трекере (Звезды)

14 авг 2011, 05:04

DizeL85 писал(а):2 года наверно правильнее было бы
Разумеется... Ну это каждый под себя подправит...
RusTorrent.Su - Русский Торрент-трекер
Аватара пользователя
9CaraTT
Благодарил (а): 230 раз
Поблагодарили: 228 раз
Сообщения: 3085
Зарегистрирован: 13 мар 2011, 15:23
Сообщение

Стаж на трекере (Звезды)

31 июл 2012, 00:48

Можно к примеру чтобы каждые 3 месяца выходило по 1 звёздочке, просто заменив это

Код: Выделить всё

if ($reg_years = (int) ((time() - (int) $data['user_regdate']) / 31536000))
на это

Код: Выделить всё

if ($reg_years = (int) ((time() - (int) $data['user_regdate']) / 10512000))
самое главное что нагрузки это не какой от данного хака
Аватара пользователя
and_luk
Откуда: г.Анадырь
Благодарил (а): 1 раз
Поблагодарили: 3 раза
Сообщения: 91
Зарегистрирован: 31 авг 2011, 02:39
Сообщение

Стаж на трекере (Звезды)

26 окт 2012, 02:42

на 48-м обновлении работать будет?
Аватара пользователя
9CaraTT
Благодарил (а): 230 раз
Поблагодарили: 228 раз
Сообщения: 3085
Зарегистрирован: 13 мар 2011, 15:23
Сообщение

Стаж на трекере (Звезды)

27 окт 2012, 09:45

ну поставь и проверь
vo
vova-69
Благодарил (а): 1 раз
Поблагодарили: 1 раз
Сообщения: 135
Зарегистрирован: 25 сен 2010, 16:33
Сообщение

Стаж на трекере (Звезды)

13 фев 2014, 17:37

После установки мода выдало такую ошибку

Код: Выделить всё

Parse error: syntax error, unexpected ';', expecting ')' in W:\domains\test-best\viewtopic.php on line 1279
Я так понял что в этой строчке

Код: Выделить всё

// annual stars
               $user_cache[$poster_id]['reg_stars'] = '';
Подскажите плиз , что тут подправить.
Последний раз редактировалось vova-69 14 фев 2014, 11:21, всего редактировалось 2 раза.
An
Anna
Благодарил (а): 3 раза
Сообщения: 63
Зарегистрирован: 01 фев 2015, 22:27
Сообщение

Стаж на трекере (Звезды)

25 фев 2015, 23:01

В этой папке только звездочка, так надо?

Вернуться в «Готовые моды для трекера»