From 8c3c7b3535548d2d7892abb41811c1b8ff5d5d85 Mon Sep 17 00:00:00 2001 From: pherum83 Date: Sat, 3 Sep 2011 01:44:50 +0000 Subject: [PATCH] r279 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Перенос удаления юзера и его сообщений в Ajax git-svn-id: https://torrentpier2.googlecode.com/svn/trunk@279 a8ac35ab-4ca4-ca47-4c2d-a49a94f06293 --- upload/ajax.php | 43 +++++++++++++++++++ upload/config.php | 4 +- upload/includes/ucp/usercp_register.php | 26 ----------- upload/language/lang_english/lang_admin.php | 6 --- upload/language/lang_english/lang_main.php | 11 +++++ upload/language/lang_russian/lang_admin.php | 6 --- upload/language/lang_russian/lang_main.php | 10 +++++ upload/templates/default/posting.tpl | 2 +- upload/templates/default/usercp_register.tpl | 8 ---- .../templates/default/usercp_viewprofile.tpl | 16 +++++++ 10 files changed, 83 insertions(+), 49 deletions(-) diff --git a/upload/ajax.php b/upload/ajax.php index 753306ffa..9c99b2447 100644 --- a/upload/ajax.php +++ b/upload/ajax.php @@ -63,6 +63,7 @@ class ajax_common 'edit_user_profile' => array('admin'), 'change_user_rank' => array('admin'), 'change_user_opt' => array('admin'), + 'delete_userdata' => array('admin'), 'change_tor_status' => array('mod'), 'mod_action' => array('mod'), @@ -448,6 +449,48 @@ class ajax_common unset($moderators, $mod); $datastore->rm('moderators'); } + + function delete_userdata() + { + global $userdata, $lang, $bb_cfg; + $mode = (string) $this->request['mode']; + $user_id = $this->request['user_id']; + if (!IS_ADMIN) $this->ajax_die($lang['NOT_ADMIN']); + + if ($mode == 'delete_profile') + { + if ($userdata['user_id'] == $user_id) $this->ajax_die($lang['USER_DELETE_ME']); + if (empty($this->request['confirmed'])) $this->prompt_for_confirm($lang['USER_DELETE_CONFIRM']); + + if ($user_id != 2 && $user_id != BOT_UID) + { + require(INC_DIR .'functions_admin.php'); + + user_delete($user_id); + delete_user_sessions($user_id); + + $this->response['info'] = $lang['USER_DELETED']; + } + else $this->ajax_die($lang['USER_DELETE_CSV']); + } + if ($mode == 'delete_message') + { + if (empty($this->request['confirmed']) && $userdata['user_id'] == $user_id) $this->prompt_for_confirm($lang['DELETE_USER_POSTS_ME']); + if (empty($this->request['confirmed'])) $this->prompt_for_confirm($lang['DELETE_USER_POSTS_CONFIRM']); + if (IS_ADMIN) + { + require(INC_DIR .'functions_admin.php'); + + post_delete('user', $user_id); + + $this->response['info'] = $lang['USER_DELETED_POSTS']; + } + else $this->ajax_die($lang['NOT_ADMIN']); + } + + $this->response['mode'] = $mode; + $this->response['url'] = html_entity_decode(make_url('/') . PROFILE_URL . $user_id); + } function view_post () { diff --git a/upload/config.php b/upload/config.php index f951f375d..d80c875dc 100644 --- a/upload/config.php +++ b/upload/config.php @@ -53,8 +53,8 @@ $bb_cfg = $tr_cfg = $page_cfg = array(); // Increase number of revision after update $bb_cfg['tp_version'] = '2.1 Stable'; -$bb_cfg['tp_release_state'] = 'R278'; -$bb_cfg['tp_release_date'] = '02-09-2011'; +$bb_cfg['tp_release_state'] = 'R279'; +$bb_cfg['tp_release_date'] = '03-09-2011'; // Database $charset = 'utf8'; diff --git a/upload/includes/ucp/usercp_register.php b/upload/includes/ucp/usercp_register.php index e4a78bac4..b08b08321 100644 --- a/upload/includes/ucp/usercp_register.php +++ b/upload/includes/ucp/usercp_register.php @@ -842,32 +842,6 @@ if ($submit && !$errors) */ else { - // Удаление пользователя и сообщений для админа - if ($userdata['user_id'] != $pr_data['user_id'] && IS_ADMIN) - { - require(INC_DIR .'functions_admin.php'); - - $del_msg = false; - if (!empty($_POST['delete_user'])) - { - delete_user_sessions($pr_data['user_id']); - user_delete($pr_data['user_id'], !empty($_POST['delete_user_posts'])); - - if ($pr_data['user_level'] == MOD) - { - $datastore->update('moderators'); - } - - $del_msg .= $lang['USER_DELETED']; - } - if (!empty($_POST['delete_user_posts'])) - { - post_delete('user', $pr_data['user_id']); - $del_msg .= ($del_msg) ? '

'. $lang['USER_DELETED_POSTS'] : $lang['USER_DELETED_POSTS']; - } - if($del_msg) bb_die($del_msg); - } - // если что-то было изменено if ($db_data) { diff --git a/upload/language/lang_english/lang_admin.php b/upload/language/lang_english/lang_admin.php index 3b409b5af..0ec79a259 100644 --- a/upload/language/lang_english/lang_admin.php +++ b/upload/language/lang_english/lang_admin.php @@ -384,12 +384,6 @@ $lang['ADMIN_USER_FAIL'] = 'Couldn\'t update the user\'s profile.'; $lang['ADMIN_USER_UPDATED'] = 'The user\'s profile was successfully updated.'; $lang['CLICK_RETURN_USERADMIN'] = 'Click %sHere%s to return to User Administration'; -$lang['USER_DELETE'] = 'Delete'; -$lang['USER_DELETE_EXPLAIN'] = 'Delete this user'; -$lang['USER_DELETED'] = 'User was successfully deleted'; -$lang['DELETE_USER_POSTS'] = 'Delete all user posts'; -$lang['USER_DELETED_POSTS'] = 'Posts were successfully removed'; - $lang['USER_STATUS'] = 'User is active'; $lang['USER_ALLOWPM'] = 'Can send Private Messages'; $lang['USER_ALLOWAVATAR'] = 'Can display avatar'; diff --git a/upload/language/lang_english/lang_main.php b/upload/language/lang_english/lang_main.php index 6c37da373..ff613dee0 100644 --- a/upload/language/lang_english/lang_main.php +++ b/upload/language/lang_english/lang_main.php @@ -1589,6 +1589,17 @@ $lang['SEND_MESSAGE'] = 'Send message'; $lang['EDIT_POST'] = 'Edit Post'; $lang['NEW_THREADS'] = 'New Threads'; +$lang['USER_DELETE'] = 'Delete'; +$lang['USER_DELETE_EXPLAIN'] = 'Delete this user'; +$lang['USER_DELETE_ME'] = 'Sorry, your account is forbidden to remove!'; +$lang['USER_DELETE_CSV'] = 'Sorry, this account is not allowed to delete!'; +$lang['USER_DELETE_CONFIRM'] = 'Are you sure you want to delete this user?'; +$lang['USER_DELETED'] = 'User was successfully deleted'; +$lang['DELETE_USER_POSTS'] = 'Delete all user posts'; +$lang['DELETE_USER_POSTS_ME'] = 'Are you sure you want to delete all my posts?'; +$lang['DELETE_USER_POSTS_CONFIRM'] = 'Are you sure you want to delete all of your users?'; +$lang['USER_DELETED_POSTS'] = 'Posts were successfully removed'; + // Register $lang['CHOOSE_A_NAME'] = 'You should choose a name'; $lang['CHOOSE_E_MAIL'] = 'You must specify the e-mail'; diff --git a/upload/language/lang_russian/lang_admin.php b/upload/language/lang_russian/lang_admin.php index 9543d5802..18e6e9988 100644 --- a/upload/language/lang_russian/lang_admin.php +++ b/upload/language/lang_russian/lang_admin.php @@ -384,12 +384,6 @@ $lang['ADMIN_USER_FAIL'] = 'Не могу изменить профиль пол $lang['ADMIN_USER_UPDATED'] = 'Профиль пользователя был успешно изменён'; $lang['CLICK_RETURN_USERADMIN'] = '%sВернуться к управлению пользователями%s'; -$lang['USER_DELETE'] = 'Удаление'; -$lang['USER_DELETE_EXPLAIN'] = 'Удалить этого пользователя'; -$lang['USER_DELETED'] = 'Пользователь был успешно удалён'; -$lang['DELETE_USER_POSTS'] = 'Удалить все сообщения пользователя'; -$lang['USER_DELETED_POSTS'] = 'Сообщения пользователя успешно удалены'; - $lang['USER_STATUS'] = 'Пользователь активен'; $lang['USER_ALLOWPM'] = 'Может посылать личные сообщения'; $lang['USER_ALLOWAVATAR'] = 'Может показывать аватару'; diff --git a/upload/language/lang_russian/lang_main.php b/upload/language/lang_russian/lang_main.php index 9c8866bee..8c8cf3f33 100644 --- a/upload/language/lang_russian/lang_main.php +++ b/upload/language/lang_russian/lang_main.php @@ -1595,6 +1595,16 @@ $lang['SEND_MESSAGE'] = 'Отправлять сообщения'; $lang['EDIT_POST'] = 'Редактировать сообщения'; $lang['NEW_THREADS'] = 'Создавать темы'; +$lang['USER_DELETE'] = 'Удаление'; +$lang['USER_DELETE_EXPLAIN'] = 'Удалить этого пользователя'; +$lang['USER_DELETE_ME'] = 'Извините, свой аккаунт запрещено удалять!'; +$lang['USER_DELETE_CSV'] = 'Извините, этот аккаунт запрещено удалять!'; +$lang['USER_DELETE_CONFIRM'] = 'Вы действительно хотите удалить этого пользователя?'; +$lang['USER_DELETED'] = 'Пользователь был успешно удалён'; +$lang['DELETE_USER_POSTS'] = 'Удалить все сообщения пользователя'; +$lang['DELETE_USER_POSTS_ME'] = 'Вы действительно хотите удалить все свои сообщения?'; +$lang['DELETE_USER_POSTS_CONFIRM'] = 'Вы действительно хотите удалить все свои пользователя?'; +$lang['USER_DELETED_POSTS'] = 'Сообщения успешно удалены'; // Регистрация $lang['CHOOSE_A_NAME'] = 'Вы должны выбрать имя'; diff --git a/upload/templates/default/posting.tpl b/upload/templates/default/posting.tpl index 1b3bbdead..62bf6ee94 100644 --- a/upload/templates/default/posting.tpl +++ b/upload/templates/default/posting.tpl @@ -105,7 +105,7 @@ - {L_MORE_EMOTICONS} + {L_MORE_EMOTICONS} diff --git a/upload/templates/default/usercp_register.tpl b/upload/templates/default/usercp_register.tpl index ce6b5fdb7..7d3fc35ee 100644 --- a/upload/templates/default/usercp_register.tpl +++ b/upload/templates/default/usercp_register.tpl @@ -292,14 +292,6 @@ ajax.callback.posts = function(data){ - - {L_USER_DELETE}? - - -
- - - diff --git a/upload/templates/default/usercp_viewprofile.tpl b/upload/templates/default/usercp_viewprofile.tpl index 84aa3c169..277f7270e 100644 --- a/upload/templates/default/usercp_viewprofile.tpl +++ b/upload/templates/default/usercp_viewprofile.tpl @@ -230,9 +230,25 @@ $(document).ready(function(){ [ {L_SEARCH_USER_POSTS} ] [ {L_SEARCH_USER_TOPICS} ] [ {L_SEARCH_RELEASES} ] + [ {L_USER_DELETE} ]

+ + + + [ {L_USER_DELETE_EXPLAIN} ]  + [ {L_DELETE_USER_POSTS} ] + + + + + {L_LOCATION}: