Перейти к контенту

Люди , а ести такой мод?


L2jtomara

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

Привет всем!

 

Хотел бы спросить у вас, есть ли такой мод как "Удаление пользователей", которые не посещали форум в течении 1 месяца или на подобие, что бы можно установить время самому...

 

С уважением Александр!

Ссылка на комментарий
Поделиться на других сайтах

Задание автоматически удаляет участников, зарегенных более чем указанное время

и с количеством постов менее чем указано.

Это не совсем то. Такое удаление я сделаю и штатными средствами админки, без всякого мода.

 

Согласен, что требуется удалить тех, кто не появлялся на форуме больше хх дней, независимо от числа сообщений и от даты регистрации (или зависимо).

 

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

Ссылка на комментарий
Поделиться на других сайтах

У меня давно есть такая.

При наличии неактивности в теч. 5-ти мес. посылается письмо с предупреждением об удалении аккаунта.

Если чел так и не зашёл, ещё через месяц аккаунт стирается.

Ссылка на комментарий
Поделиться на других сайтах

У меня давно есть такая.

При наличии неактивности в теч. 5-ти мес. посылается письмо с предупреждением об удалении аккаунта.

Если чел так и не зашёл, ещё через месяц аккаунт стирается.

А поделиться не желаете? :D

Ссылка на комментарий
Поделиться на других сайтах

А я честно говоря не знаю чем делиться.

Полем в ibf_members? :D

Ссылка на комментарий
Поделиться на других сайтах

А я честно говоря не знаю чем делиться.

Полем в ibf_members? :D

Это я и сам сумею. ;)

Я думал, мод, который сам следит за интервалами времени, сам мейлы предупреждающие шлет, и сам удаляет.

Ссылка на комментарий
Поделиться на других сайтах

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

разве что только запросы.

 

Так запросы и делаются на это поле в ibf_members :D

 

сам следит за интервалами времени

не надо никаких интервалов.

 

1) Создаёшь поле, типа int

2) Делаешь скрипт на php или перле (у меня - последнее), в котором выгребаешь всех у кого время последней активности меньше чем x дней назад (у меня 150 дней) и поле (1) = 0

3) Рассылаешь им всем емэйлы

4) Ставишь им в поле (1) единичку

5) Тем же скриптом удаляешь всех у кого время последней активности меньше y дней назад (у меня 180 дней) и поле(1) = 1

6) При авторизации сбрасываешь поле (1) в нолик

7) Ставишь скрипт на автозапуск нужное количество раз

8) Наслаждаешься и готовишься к тому, что статистика пользователей будет падать

 

Хотя конечно можно как-нить и написать.

Меня вот ещё отлупы за####али. Высылается древним чувакам письмо о непосещении, а у них всесто мыла полная билиберда, соответственно каждый день приходит куча отлупов..

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

Ссылка на комментарий
Поделиться на других сайтах

Я сделал в 1.3 в админке дополнительный критерий удаления - по дате последней активности.

 

ad_member.php

Перед

		$ADMIN->html .= $SKIN->add_td_row( array( "<b><u>и</u> пользователей группы...</b>" ,
											  $SKIN->form_dropdown( "mgroup",
																	$mem_group,
																	  0
																	)
									 )	  );

добавил:

		$ADMIN->html .= $SKIN->add_td_row( array( "<b>Пользователей, последний раз заходивших на форум [x] дней назад.</b><br>([x] = кол-во дней)<br>(Не заполняйте, если хотите пропустить этот шаг)" ,
											  $SKIN->form_input( "last_activity", '150')
									 )	  );

 

Строку

		foreach( array( 'posts', 'last_post', 'joined' ) as $field )

заменил на

		foreach( array( 'posts', 'last_post', 'joined', 'last_activity' ) as $field )

 

В строке if ($blanks == 3)исправил "3" на "4".

 

После

		if ($IN['posts'] > 0)
	{
		$add_query[] = " posts < ".$IN['posts']." ";
	}

добавил

		if ($IN['last_activity'] > 0)
	{
		$v = $time_now - ($IN['last_activity'] *60*60*24);
		$add_query[] = " (last_activity < $v or last_activity is null)";
	}

 

И для себя маленькое удобство:

			$ADMIN->html .= $SKIN->add_td_row( array( "<b>Удаляемые пользователи</b>" ,
												  implode( ', ', $member_arr )
										 )	  );

заменил на

 			$ADMIN->html .= $SKIN->add_td_row( array( "<b>Удаляемые пользователи</b>" ,
												  str_replace("<a ","<a target='_blank'",implode( ',    ', $member_arr ))
										 )	  );

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.