Nk-CS.Ru: Все для вашего портала uCoz
Авторизация

Account delete DLE

Account delete DLE Название Account delete
Автор: Qnut


Данный ха даёт возможность пользователю удалить свой аккаунт, при этом все его новости и комментарии останутся на сайте. По возможности можно сделать запрос на удаление комментариев и новостей пользователя. Проверено на работоспособность на DLE 11.2.



Установка:

Открыть engine/modules/profile.php, найти:

$tpl->set( '{ip}', $_IP );


Выше вставить:


//################### Удаление профиля пользователя ######################//
if( $member_id['user_id'] == $row['user_id'] and $row['user_group'] >= 4) 
		$user_delete = "<input type=\"checkbox\" name=\"user_delete\" id=\"user_delete\" value=\"yes\"> <label for=\"user_delete\">Удалить аккаунт <b>(Внимание: после удаления аккаунта дальнейшее его восстановление будет невозможным!!!)</b></label>";
		if($_POST['user_delete'] == "yes" ) {
			$id = $row['user_id'];
			if( $_REQUEST['dle_allow_hash'] == "" or $_REQUEST['dle_allow_hash'] != $dle_login_hash ) die( "Hacking attempt! User not found" );
	
			if( !$id ) die( $lang['user_nouser'] );
	
			if( ! $row['user_id'] ) die( "User not found" );

			if (($member_id['user_group'] != 1 AND $row['user_group'] == 1 ) || ($is_login)) die( $lang['user_undel'] );

			$db->query( "DELETE FROM " . USERPREFIX . "_pm WHERE user_from = '{$row['name']}' AND folder = 'outbox'" );
	
			@unlink( ROOT_DIR . "/uploads/fotos/" . $row['foto'] );
	
			$db->query( "delete FROM " . USERPREFIX . "_users WHERE user_id='$id'" );
			$db->query( "delete FROM " . USERPREFIX . "_banned WHERE users_id='$id'" );
			$db->query( "delete FROM " . USERPREFIX . "_pm WHERE user='$id'" );
			$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '65', '{$row['name']}')" );
			clear_cache();
			header( "Location: {$_SERVER['REQUEST_URI']}" );
		} else 
			$stop .= "Удаление невозможно!";
		$tpl->set( '{user_delete}', $user_delete );

	//################### Удаление профиля пользователя ######################//


Открыть templates//templates/Default-Black/userinfo.tpl, найти:

[/not-logged]


Перед ним вставить:

{user_delete}


Пользователь может удалить себя если он не находится в группе 1, 2 и 3. При желании можно добавить и другие группы пользователей.

Открыть engine/modules/profile.php, найти:

if( $member_id['user_id'] == $row['user_id'] and $row['user_group'] >= 4) 


Добавить выше:

if( $member_id['user_id'] == $row['user_id'] and $row['user_group'] >= ID_ГРУППЫ) 
		$user_delete = "<input type=\"checkbox\" name=\"user_delete\" id=\"user_delete\" value=\"yes\"> <label for=\"user_delete\">Удалить аккаунт <b>(Внимание: после удаления аккаунта дальнейшее его восстановление будет невозможным!!!)</b></label>";

5.3
8 оценок
5.5
Дизайн:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
5.0
Функционал:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
5.0
Мобильность:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
5.5
Общая оценка:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Читайте также
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Авторизация
лучший сайт где можно скачать шаблоны для dle 11.3 бесплатно