mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-22 14:23:57 -07:00
r286
Перенос деактивации юзера в Ajax git-svn-id: https://torrentpier2.googlecode.com/svn/trunk@286 a8ac35ab-4ca4-ca47-4c2d-a49a94f06293
This commit is contained in:
parent
12a888cbf0
commit
7f5443a08c
11 changed files with 92 additions and 76 deletions
|
@ -450,48 +450,6 @@ class ajax_common
|
||||||
$datastore->rm('moderators');
|
$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 ()
|
function view_post ()
|
||||||
{
|
{
|
||||||
require(AJAX_DIR .'view_post.php');
|
require(AJAX_DIR .'view_post.php');
|
||||||
|
@ -526,5 +484,10 @@ class ajax_common
|
||||||
{
|
{
|
||||||
require(AJAX_DIR .'posts.php');
|
require(AJAX_DIR .'posts.php');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function delete_userdata()
|
||||||
|
{
|
||||||
|
require(AJAX_DIR .'delete_userdata.php');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
63
upload/ajax/delete_userdata.php
Normal file
63
upload/ajax/delete_userdata.php
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if (!defined('IN_AJAX')) die(basename(__FILE__));
|
||||||
|
|
||||||
|
global $userdata, $lang;
|
||||||
|
|
||||||
|
$mode = (string) $this->request['mode'];
|
||||||
|
$user_id = $this->request['user_id'];
|
||||||
|
|
||||||
|
switch($mode)
|
||||||
|
{
|
||||||
|
case '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']);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case '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']);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'user_activate':
|
||||||
|
if (empty($this->request['confirmed'])) $this->prompt_for_confirm($lang['DEACTIVATE_CONFIRM']);
|
||||||
|
|
||||||
|
DB()->query("UPDATE ". BB_USERS ." SET user_active = '1' WHERE user_id = ". $user_id);
|
||||||
|
|
||||||
|
$this->response['info'] = $lang['USER_ACTIVATE_ON'];
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'user_deactivate':
|
||||||
|
if ($userdata['user_id'] == $user_id) $this->ajax_die($lang['USER_DEACTIVATE_ME']);
|
||||||
|
if (empty($this->request['confirmed'])) $this->prompt_for_confirm($lang['ACTIVATE_CONFIRM']);
|
||||||
|
|
||||||
|
DB()->query("UPDATE ". BB_USERS ." SET user_active = '0' WHERE user_id = ". $user_id);
|
||||||
|
delete_user_sessions($user_id);
|
||||||
|
|
||||||
|
$this->response['info'] = $lang['USER_ACTIVATE_OFF'];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->response['mode'] = $mode;
|
||||||
|
$this->response['url'] = html_entity_decode(make_url('/') . PROFILE_URL . $user_id);
|
|
@ -53,8 +53,8 @@ $bb_cfg = $tr_cfg = $page_cfg = array();
|
||||||
|
|
||||||
// Increase number of revision after update
|
// Increase number of revision after update
|
||||||
$bb_cfg['tp_version'] = '2.1 Stable';
|
$bb_cfg['tp_version'] = '2.1 Stable';
|
||||||
$bb_cfg['tp_release_state'] = 'R284';
|
$bb_cfg['tp_release_state'] = 'R286';
|
||||||
$bb_cfg['tp_release_date'] = '04-09-2011';
|
$bb_cfg['tp_release_date'] = '05-09-2011';
|
||||||
|
|
||||||
// Database
|
// Database
|
||||||
$charset = 'utf8';
|
$charset = 'utf8';
|
||||||
|
|
|
@ -2829,8 +2829,8 @@ function profile_url($data)
|
||||||
if(isset($ranks[$user_rank]))
|
if(isset($ranks[$user_rank]))
|
||||||
{
$title = $ranks[$user_rank]['rank_title'];
$style = $ranks[$user_rank]['rank_style'];
|
{
$title = $ranks[$user_rank]['rank_title'];
$style = $ranks[$user_rank]['rank_style'];
|
||||||
}
|
}
|
||||||
if(empty($title)) $title = 'User';
|
if(empty($title)) $title = '';
|
||||||
if(empty($style)) $style = 'colorUser';
|
if(empty($style)) $style = '';
|
||||||
|
|
||||||
if(!$bb_cfg['color_nick']) $style = '';
|
if(!$bb_cfg['color_nick']) $style = '';
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,6 @@ switch ($mode)
|
||||||
|
|
||||||
// field => can_edit
|
// field => can_edit
|
||||||
$profile_fields = array(
|
$profile_fields = array(
|
||||||
'user_active' => IS_ADMIN,
|
|
||||||
'username' => (IS_ADMIN || $bb_cfg['allow_namechange']),
|
'username' => (IS_ADMIN || $bb_cfg['allow_namechange']),
|
||||||
'user_password' => true,
|
'user_password' => true,
|
||||||
'user_email' => true, // должен быть после user_password
|
'user_email' => true, // должен быть после user_password
|
||||||
|
@ -195,19 +194,6 @@ foreach ($profile_fields as $field => $can_edit)
|
||||||
{
|
{
|
||||||
switch ($field)
|
switch ($field)
|
||||||
{
/**
|
{
/**
|
||||||
* Активация (edit, reg)
|
|
||||||
*/
|
|
||||||
case 'user_active':
|
|
||||||
$active = isset($_POST['user_active']) ? (int) $_POST['user_active'] : $pr_data['user_active'];
|
|
||||||
if ($submit && $active != $pr_data['user_active'] && $adm_edit)
|
|
||||||
{
|
|
||||||
$pr_data['user_active'] = $active;
|
|
||||||
$db_data['user_active'] = $active;
|
|
||||||
}
|
|
||||||
$tp_data['USER_ACTIVE'] = $pr_data['user_active'];
|
|
||||||
break;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Имя (edit, reg)
|
* Имя (edit, reg)
|
||||||
*/
|
*/
|
||||||
case 'username':
|
case 'username':
|
||||||
|
@ -528,11 +514,10 @@ foreach ($profile_fields as $field => $can_edit)
|
||||||
$skype = isset($_POST['user_skype']) ? (string) $_POST['user_skype'] : $pr_data['user_skype'];
|
$skype = isset($_POST['user_skype']) ? (string) $_POST['user_skype'] : $pr_data['user_skype'];
|
||||||
if ($submit && $skype != $pr_data['user_skype'])
|
if ($submit && $skype != $pr_data['user_skype'])
|
||||||
{
|
{
|
||||||
if (!preg_match("#^[a-zA-Z0-9_.\-@,]{6,32}$#", $skype))
|
if ($skype != '' && !preg_match("#^[a-zA-Z0-9_.\-@,]{6,32}$#", $skype))
|
||||||
{
|
{
|
||||||
$errors[] = $lang['SKYPE_ERROR'];
|
$errors[] = $lang['SKYPE_ERROR'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$pr_data['user_skype'] = $skype;
|
$pr_data['user_skype'] = $skype;
|
||||||
$db_data['user_skype'] = (string) $skype;
|
$db_data['user_skype'] = (string) $skype;
|
||||||
}
|
}
|
||||||
|
|
|
@ -384,7 +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['ADMIN_USER_UPDATED'] = 'The user\'s profile was successfully updated.';
|
||||||
$lang['CLICK_RETURN_USERADMIN'] = 'Click %sHere%s to return to User Administration';
|
$lang['CLICK_RETURN_USERADMIN'] = 'Click %sHere%s to return to User Administration';
|
||||||
|
|
||||||
$lang['USER_STATUS'] = 'User is active';
|
|
||||||
$lang['USER_ALLOWPM'] = 'Can send Private Messages';
|
$lang['USER_ALLOWPM'] = 'Can send Private Messages';
|
||||||
$lang['USER_ALLOWAVATAR'] = 'Can display avatar';
|
$lang['USER_ALLOWAVATAR'] = 'Can display avatar';
|
||||||
|
|
||||||
|
|
|
@ -1600,6 +1600,14 @@ $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['DELETE_USER_POSTS_CONFIRM'] = 'Are you sure you want to delete all of your users?';
|
||||||
$lang['USER_DELETED_POSTS'] = 'Posts were successfully removed';
|
$lang['USER_DELETED_POSTS'] = 'Posts were successfully removed';
|
||||||
|
|
||||||
|
$lang['USER_ACTIVATE'] = 'Activate';
|
||||||
|
$lang['USER_DEACTIVATE'] = 'Deactivate';
|
||||||
|
$lang['DEACTIVATE_CONFIRM'] = 'Are you sure you want to enable this user?';
|
||||||
|
$lang['USER_ACTIVATE_ON'] = 'User has successfully activated';
|
||||||
|
$lang['USER_DEACTIVATE_ME'] = 'You can not deactivate my account!';
|
||||||
|
$lang['ACTIVATE_CONFIRM'] = 'Are you sure you want to disable this user?';
|
||||||
|
$lang['USER_ACTIVATE_OFF'] = 'User successfully deactivated';
|
||||||
|
|
||||||
// Register
|
// Register
|
||||||
$lang['CHOOSE_A_NAME'] = 'You should choose a name';
|
$lang['CHOOSE_A_NAME'] = 'You should choose a name';
|
||||||
$lang['CHOOSE_E_MAIL'] = 'You must specify the e-mail';
|
$lang['CHOOSE_E_MAIL'] = 'You must specify the e-mail';
|
||||||
|
|
|
@ -384,7 +384,6 @@ $lang['ADMIN_USER_FAIL'] = 'Не могу изменить профиль пол
|
||||||
$lang['ADMIN_USER_UPDATED'] = 'Профиль пользователя был успешно изменён';
|
$lang['ADMIN_USER_UPDATED'] = 'Профиль пользователя был успешно изменён';
|
||||||
$lang['CLICK_RETURN_USERADMIN'] = '%sВернуться к управлению пользователями%s';
|
$lang['CLICK_RETURN_USERADMIN'] = '%sВернуться к управлению пользователями%s';
|
||||||
|
|
||||||
$lang['USER_STATUS'] = 'Пользователь активен';
|
|
||||||
$lang['USER_ALLOWPM'] = 'Может посылать личные сообщения';
|
$lang['USER_ALLOWPM'] = 'Может посылать личные сообщения';
|
||||||
$lang['USER_ALLOWAVATAR'] = 'Может показывать аватару';
|
$lang['USER_ALLOWAVATAR'] = 'Может показывать аватару';
|
||||||
|
|
||||||
|
|
|
@ -1606,6 +1606,14 @@ $lang['DELETE_USER_POSTS_ME'] = 'Вы действительно хотите у
|
||||||
$lang['DELETE_USER_POSTS_CONFIRM'] = 'Вы действительно хотите удалить все свои пользователя?';
|
$lang['DELETE_USER_POSTS_CONFIRM'] = 'Вы действительно хотите удалить все свои пользователя?';
|
||||||
$lang['USER_DELETED_POSTS'] = 'Сообщения успешно удалены';
|
$lang['USER_DELETED_POSTS'] = 'Сообщения успешно удалены';
|
||||||
|
|
||||||
|
$lang['USER_ACTIVATE'] = 'Активировать';
|
||||||
|
$lang['USER_DEACTIVATE'] = 'Деактивировать';
|
||||||
|
$lang['DEACTIVATE_CONFIRM'] = 'Вы действительно хотите активировать этого пользователя?';
|
||||||
|
$lang['USER_ACTIVATE_ON'] = 'Пользователь успешно активирован';
|
||||||
|
$lang['USER_DEACTIVATE_ME'] = 'Вы не можете деактивировать свой аккаунт!';
|
||||||
|
$lang['ACTIVATE_CONFIRM'] = 'Вы действительно хотите деактивировать этого пользователя?';
|
||||||
|
$lang['USER_ACTIVATE_OFF'] = 'Пользователь успешно деактивирован';
|
||||||
|
|
||||||
// Регистрация
|
// Регистрация
|
||||||
$lang['CHOOSE_A_NAME'] = 'Вы должны выбрать имя';
|
$lang['CHOOSE_A_NAME'] = 'Вы должны выбрать имя';
|
||||||
$lang['CHOOSE_E_MAIL'] = 'Вы должны указать e-mail';
|
$lang['CHOOSE_E_MAIL'] = 'Вы должны указать e-mail';
|
||||||
|
|
|
@ -281,18 +281,6 @@ ajax.callback.posts = function(data){
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END switch_avatar_local_gallery -->
|
<!-- END switch_avatar_local_gallery -->
|
||||||
<!-- END switch_avatar_block -->
|
<!-- END switch_avatar_block -->
|
||||||
<!-- IF IS_ADMIN && ADM_EDIT -->
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">{L_MANAGE_USER}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>{L_USER_STATUS}</td>
|
|
||||||
<td>
|
|
||||||
<label><input type="radio" name="user_active" value="1" <!-- IF USER_ACTIVE -->checked="checked"<!-- ENDIF --> />{L_YES}</label>
|
|
||||||
<label><input type="radio" name="user_active" value="0" <!-- IF not USER_ACTIVE -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<!-- ENDIF / EDIT_PROFILE -->
|
<!-- ENDIF / EDIT_PROFILE -->
|
||||||
|
|
||||||
<!-- IF SHOW_REG_AGREEMENT -->
|
<!-- IF SHOW_REG_AGREEMENT -->
|
||||||
|
|
|
@ -210,6 +210,9 @@ $(document).ready(function(){
|
||||||
<th>{L_JOINED}:</th>
|
<th>{L_JOINED}:</th>
|
||||||
<td id="user_regdate">
|
<td id="user_regdate">
|
||||||
<span class="editable bold">{USER_REGDATE}</span>
|
<span class="editable bold">{USER_REGDATE}</span>
|
||||||
|
<!-- IF IS_ADMIN -->
|
||||||
|
[ <a href="#" onclick="ajax.exec({action : 'delete_userdata', mode: '<!-- IF USER_ACTIVE -->user_deactivate<!-- ELSE -->user_activate<!-- ENDIF -->', user_id : {PROFILE_USER_ID}}); return false;" class="<!-- IF USER_ACTIVE -->adm<!-- ELSE -->seed bold<!-- ENDIF -->"><!-- IF USER_ACTIVE -->{L_USER_DEACTIVATE}<!-- ELSE -->{L_USER_ACTIVATE}<!-- ENDIF --></a> ]
|
||||||
|
<!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue