Version 3.4.5
This commit is contained in:
1 parent
fb6b5baabc
commit
e4478369d8
1360 files changed
+228921
-179445
No files matched your search
@@ -0,0 +1,98 @@
|
||||
<?php
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.4.5
|
||||
* Bulk Mail Recipients List Generator (AJAX)
|
||||
* Last Updated: $Date: 2012-07-12 18:15:50 +0100 (Thu, 12 Jul 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/company/standards.php#license
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 11070 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_IPB' ) )
|
||||
{
|
||||
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
|
||||
exit();
|
||||
}
|
||||
|
||||
class admin_members_ajax_bulkmail extends ipsAjaxCommand
|
||||
{
|
||||
/**
|
||||
* Main class entry point
|
||||
*
|
||||
* @param object ipsRegistry reference
|
||||
* @return @e void [Outputs to screen]
|
||||
*/
|
||||
public function doExecute( ipsRegistry $registry )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// Init
|
||||
//-----------------------------------------
|
||||
|
||||
require_once IPSLib::getAppDir( 'members' ) . '/sources/classes/bulkMailFilter.php';
|
||||
$this->html = $this->registry->output->loadTemplate('cp_skin_bulkmail');
|
||||
ipsRegistry::getClass('class_localization')->loadLanguageFile( array( 'admin_bulkmail' ) );
|
||||
$this->registry->getClass('class_permissions')->checkPermissionAutoMsg( 'bulkmail_send' );
|
||||
|
||||
$controllerClass = IPSLib::loadActionOverloader( IPSLib::getAppDir('members') . '/modules_admin/bulkmail/bulkmail.php', 'admin_members_bulkmail_bulkmail' );
|
||||
$controller = new $controllerClass( $registry );
|
||||
$controller->makeRegistryShortcuts( $registry );
|
||||
|
||||
//-----------------------------------------
|
||||
// Load Mail
|
||||
//-----------------------------------------
|
||||
|
||||
$id = intval( $this->request['id'] );
|
||||
$mail = $this->DB->buildAndFetch( array( 'select' => '*', 'from' => 'bulk_mail', 'where' => 'mail_id=' . $id ) );
|
||||
|
||||
if ( ! $mail['mail_id'] )
|
||||
{
|
||||
$this->returnHTML( '' );
|
||||
}
|
||||
if ( ! $mail['mail_subject'] and ! $mail['mail_content'] )
|
||||
{
|
||||
$this->returnHTML( '' );
|
||||
}
|
||||
|
||||
$opts = unserialize( stripslashes( $mail['mail_opts'] ) );
|
||||
$mail['mail_html_on'] = $opts['mail_html_on'];
|
||||
|
||||
//-----------------------------------------
|
||||
// Get Members
|
||||
//-----------------------------------------
|
||||
|
||||
/* Start with a basic query */
|
||||
$queryData = array(
|
||||
'select' => 'm.member_id, m.members_display_name, m.email',
|
||||
'from' => array( 'members' => 'm' ),
|
||||
'order' => 'm.members_display_name',
|
||||
'limit' => array( ( 10000 * ( $this->request['page'] - 1 ) ), 10000 )
|
||||
);
|
||||
|
||||
/* Add in filters */
|
||||
$_queryData = $controller->_buildMembersQuery( $opts['filters'] );
|
||||
$queryData['add_join'] = $_queryData['add_join'];
|
||||
$queryData['where'] = implode( ' AND ' , $_queryData['where'] );
|
||||
|
||||
/* Count */
|
||||
$this->DB->build( $queryData );
|
||||
$this->DB->execute();
|
||||
while ( $row = $this->DB->fetch() )
|
||||
{
|
||||
$members[] = $row;
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Display
|
||||
//-----------------------------------------
|
||||
|
||||
$this->returnHTML( $this->html->mss_recipients( $this->request['page'], $this->request['countmembers'], $members ) );
|
||||
}
|
||||
}
|
||||
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since 20th February 2002
|
||||
* $LastChangedDate: 2011-05-05 12:40:49 -0400 (Thu, 05 May 2011) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 8655 $
|
||||
*/
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Member property updater (AJAX)
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-07-12 13:15:50 -0400 (Thu, 12 Jul 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -13,7 +13,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 11070 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_IPB' ) )
|
||||
@@ -251,7 +251,13 @@ class admin_members_ajax_editform extends ipsAjaxCommand
|
||||
{
|
||||
$member['_group_title'] = $group['g_title'];
|
||||
}
|
||||
|
||||
|
||||
/* If it's an admin group, make sure the admin banning can promote to this group */
|
||||
if ( $group['g_access_cp'] AND !$this->registry->getClass('class_permissions')->checkPermission('member_move_admin2'))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$member_groups[] = array( $group['g_id'], $group['g_title'] );
|
||||
}
|
||||
|
||||
|
||||
@@ -2,18 +2,18 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Member list AJAX handler
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-10-26 11:50:52 -0400 (Fri, 26 Oct 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: AndyMillne $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/company/standards.php#license
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 11525 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_IPB' ) )
|
||||
@@ -525,7 +525,7 @@ class admin_members_ajax_members extends ipsAjaxCommand
|
||||
{
|
||||
try
|
||||
{
|
||||
$message = $this->_getManagementClass()->unmarkMembersAsSpam( $ids, $this->request['type'] == 'unspam_posts' ? true : false );
|
||||
$message = $this->_getManagementClass()->unmarkMembersAsSpam( $ids, ( $this->request['type'] == 'unspam' OR $this->request['type'] == 'unspam_posts' ) ? true : false );
|
||||
}
|
||||
catch( Exception $error )
|
||||
{
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since 20th February 2002
|
||||
* $LastChangedDate: 2011-05-05 12:40:49 -0400 (Thu, 05 May 2011) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 8655 $
|
||||
*/
|
||||
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
<menu>
|
||||
<tabitems>
|
||||
<item>
|
||||
<title>Bulk Mail</title>
|
||||
<title>Рассылки</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Bulk Mail</subitemtitle>
|
||||
<subitemtitle>Рассылки</subitemtitle>
|
||||
<subitemlang>bulkmail</subitemlang>
|
||||
<subsection>bulkmail</subsection>
|
||||
<subitemurl>do=bulk_mail</subitemurl>
|
||||
@@ -14,6 +14,5 @@
|
||||
</subitem>
|
||||
</subitems>
|
||||
</item>
|
||||
|
||||
</tabitems>
|
||||
</menu>
|
||||
@@ -1,34 +1,38 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<permissions>
|
||||
<group>
|
||||
<grouptitle>Creating Bulk Mail</grouptitle>
|
||||
<grouptitle>Управление рассылками</grouptitle>
|
||||
<grouplang>mem_bulkmail</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>bulkmail_addedit</key>
|
||||
<string>Can add/edit bulk emails?</string>
|
||||
<string>Может добавлять/изменять рассылки?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>bulkmail_delete</key>
|
||||
<string>Can delete bulk emails?</string>
|
||||
<string>Может удалять рассылки?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>bulkmail_lists</key>
|
||||
<string>Может управлять списком контактов?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Sending/Resending Bulk Mails</grouptitle>
|
||||
<grouptitle>Отправка рассылок</grouptitle>
|
||||
<grouplang>mem_bulkmailsend</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>bulkmail_view</key>
|
||||
<string>Can monitor/view bulk emails?</string>
|
||||
<string>Может просматривать текущие рассылки?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>bulkmail_send</key>
|
||||
<string>Can send bulk emails?</string>
|
||||
<string>Может запускать отправку рассылки?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>bulkmail_cancel</key>
|
||||
<string>Can cancel bulk emails?</string>
|
||||
<string>Может отменить отправку рассылки?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Custom field management
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-08-28 17:56:22 -0400 (Tue, 28 Aug 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -13,7 +13,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 11296 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_ACP' ) )
|
||||
@@ -263,6 +263,7 @@ class admin_members_cfields_customfields extends ipsCommand
|
||||
/* Text Bits */
|
||||
$title = $this->lang->words['cf_gcreate'];
|
||||
$do = 'do_add_group';
|
||||
$button = $this->lang->words['cf_g_save'];
|
||||
}
|
||||
/* Edit Form */
|
||||
else
|
||||
@@ -281,6 +282,7 @@ class admin_members_cfields_customfields extends ipsCommand
|
||||
/* Text Bits */
|
||||
$title = $this->lang->words['cf_gedit'];
|
||||
$do = 'do_edit_group';
|
||||
$button = $this->lang->words['cf_g_editbutton'];
|
||||
}
|
||||
|
||||
/* Default Values */
|
||||
@@ -290,7 +292,7 @@ class admin_members_cfields_customfields extends ipsCommand
|
||||
);
|
||||
|
||||
/* Output */
|
||||
$this->registry->output->html .= $this->html->groupForm( $id, $data, $title, $do );
|
||||
$this->registry->output->html .= $this->html->groupForm( $id, $data, $title, $do, $button );
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since 20th February 2002
|
||||
* $LastChangedDate: 2010-10-14 13:11:17 -0400 (Thu, 14 Oct 2010) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 477 $
|
||||
*/
|
||||
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
<menu>
|
||||
<tabitems>
|
||||
<item>
|
||||
<title>Custom Profile Fields</title>
|
||||
<title>Дополнительные Поля Профиля</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Custom Profile Fields</subitemtitle>
|
||||
<subitemtitle>Дополнительные Поля Профиля</subitemtitle>
|
||||
<subitemlang>customfields</subitemlang>
|
||||
<subsection>customfields</subsection>
|
||||
<subitemurl></subitemurl>
|
||||
|
||||
@@ -1,46 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<permissions>
|
||||
<group>
|
||||
<grouptitle>Custom Profile Fields</grouptitle>
|
||||
<grouptitle>Дополнительные поля профиля</grouptitle>
|
||||
<grouplang>members_cfields</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>profilefields_global</key>
|
||||
<string>Can access custom profile fields management?</string>
|
||||
<string>Может управлять полями?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>profilefields_add</key>
|
||||
<string>Can add new profile fields?</string>
|
||||
<string>Может добавлять новые?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>profilefields_edit</key>
|
||||
<string>Can edit profile fields?</string>
|
||||
<string>Может изменять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>profilefields_delete</key>
|
||||
<string>Can delete profile fields?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Custom Profile Field Groups</grouptitle>
|
||||
<grouptitle>Группы полей</grouptitle>
|
||||
<grouplang>members_cfieldgroups</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>profilefieldgroups_global</key>
|
||||
<string>Can access custom profile field group management?</string>
|
||||
<string>Может управлять группами?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>profilefieldgroups_add</key>
|
||||
<string>Can add new profile field group?</string>
|
||||
<string>Может добавлять новые?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>profilefieldgroups_edit</key>
|
||||
<string>Can edit profile field group?</string>
|
||||
<string>Может изменять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>profilefieldgroups_delete</key>
|
||||
<string>Can delete profile field group?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since 20th February 2002
|
||||
* $LastChangedDate: 2011-05-05 12:40:49 -0400 (Thu, 05 May 2011) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 8655 $
|
||||
*/
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Group management
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2013-04-03 17:54:22 -0400 (Wed, 03 Apr 2013) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -13,7 +13,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 12149 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_ACP' ) )
|
||||
@@ -153,7 +153,7 @@ class admin_members_groups_groups extends ipsCommand
|
||||
|
||||
while ( $row = $this->DB->fetch( $o ) )
|
||||
{
|
||||
$_extra = ( $this->request['showSecondary'] ) ? ' OR mgroup_others LIKE \'%,' . intval($row['g_id']) . ',%\'' : '';
|
||||
$_extra = ( $this->request['showSecondary'] ) ? ' OR ' . $this->DB->buildWherePermission( array( intval($row['g_id']) ), 'mgroup_others', false ) : '';
|
||||
|
||||
/* As much as I hate nested queries, this is actually quicker especially when you add in the LIKE check.*/
|
||||
$count = $this->DB->buildAndFetch( array( 'select' => 'COUNT(*) as count',
|
||||
@@ -435,6 +435,47 @@ class admin_members_groups_groups extends ipsCommand
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Fix settings
|
||||
//-----------------------------------------
|
||||
|
||||
$_toUpdate = array();
|
||||
|
||||
$this->DB->build( array( 'select' => '*', 'from' => 'core_sys_conf_settings', 'where' => "conf_extra='#show_groups#'" ) );
|
||||
$o = $this->DB->execute();
|
||||
|
||||
while( $r = $this->DB->fetch($o) )
|
||||
{
|
||||
/* Dropdown with the deleted group selected? Return to default. */
|
||||
if( $r['conf_type'] == 'dropdown' AND $r['conf_value'] == $this->request['id'] )
|
||||
{
|
||||
$_toUpdate[ $r['conf_key'] ] = $r['conf_default'];
|
||||
}
|
||||
/* Multiselect with deleted group selected? Fix values then. */
|
||||
else if( $r['conf_type'] == 'multi' AND strpos( $r['conf_value'], (string) $this->request['id'] ) !== false )
|
||||
{
|
||||
$_values = explode( ',', $r['conf_value'] );
|
||||
$_newValues = array();
|
||||
|
||||
foreach( $_values as $_value )
|
||||
{
|
||||
if( $_value != $this->request['id'] )
|
||||
{
|
||||
$_newValues[] = $_value;
|
||||
}
|
||||
}
|
||||
|
||||
$_toUpdate[ $r['conf_key'] ] = ( count($_newValues) ) ? $_newValues : $r['conf_default'];
|
||||
}
|
||||
}
|
||||
|
||||
if( count($_toUpdate) )
|
||||
{
|
||||
/* The multiselect settings have evalphp which forces it to inspect $_POST */
|
||||
$_POST = array_merge( $_POST, $_toUpdate );
|
||||
IPSLib::updateSettings( $_toUpdate );
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Rebuild caches
|
||||
//-----------------------------------------
|
||||
@@ -563,6 +604,10 @@ class admin_members_groups_groups extends ipsCommand
|
||||
$this->request['p_width'] = str_replace( ":", "", $this->request['p_width'] );
|
||||
$this->request['p_height'] = str_replace( ":", "", $this->request['p_height'] );
|
||||
|
||||
$this->request['g_attach_max'] = intval( $this->request['g_attach_max'] );
|
||||
$this->request['g_attach_per_post'] = intval( $this->request['g_attach_per_post'] );
|
||||
$this->request['p_max'] = intval( $this->request['p_max'] );
|
||||
|
||||
$sig_limits = array(
|
||||
$this->request['use_signatures'],
|
||||
$this->request['max_images'],
|
||||
@@ -594,7 +639,7 @@ class admin_members_groups_groups extends ipsCommand
|
||||
'g_hide_from_list' => intval($this->request['g_hide_from_list']),
|
||||
'g_perm_id' => $new_perm_set_id ? $new_perm_set_id : implode( ",", $this->request['permid'] ),
|
||||
'g_icon' => trim( IPSText::safeslashes( $_POST['g_icon'] ) ),
|
||||
'g_attach_max' => ( $this->request['g_attach_max'] == '' ) ? 0 : $this->request['g_attach_max'],
|
||||
'g_attach_max' => ( $this->request['g_attach_max'] == '' ) ? 0 : intval($this->request['g_attach_max']),
|
||||
'g_max_messages' => intval($this->request['g_max_messages']),
|
||||
'g_max_mass_pm' => intval($this->request['g_max_mass_pm']),
|
||||
'g_pm_flood_mins' => intval($this->request['g_pm_flood_mins']),
|
||||
@@ -848,6 +893,7 @@ class admin_members_groups_groups extends ipsCommand
|
||||
// And output to form
|
||||
//-----------------------------------------
|
||||
|
||||
$this->registry->output->extra_nav[] = array( "{$this->settings['base_url']}&{$this->form_code}", $this->lang->words['menu__manage_groups'] );
|
||||
$this->registry->output->html .= $this->html->groupsForm( $type, $group, $perm_masks, $blocks, $firstTab );
|
||||
}
|
||||
}
|
||||
@@ -2,18 +2,18 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Permissions management
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-12-21 13:31:16 -0500 (Fri, 21 Dec 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: AndyMillne $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/company/standards.php#license
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 11748 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_ACP' ) )
|
||||
@@ -517,6 +517,7 @@ class admin_members_groups_permissions extends ipsCommand
|
||||
}
|
||||
|
||||
/* Output */
|
||||
$this->registry->output->extra_nav[] = array( "{$this->settings['base_url']}&{$this->form_code}", $this->lang->words['menu__manage_perms'] );
|
||||
$this->registry->output->html .= $this->html->permissionEditor( $set_data['perm_name'], $matricies, $id, $apps );
|
||||
}
|
||||
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
<menu>
|
||||
<tabitems>
|
||||
<item>
|
||||
<title>Manage Member Groups</title>
|
||||
<title>Управление Группами</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Manage Member Groups</subitemtitle>
|
||||
<subitemtitle>Управление Группами</subitemtitle>
|
||||
<subitemlang>manage_groups</subitemlang>
|
||||
<subsection>groups</subsection>
|
||||
<subitemurl>do=groups_overview</subitemurl>
|
||||
@@ -15,10 +15,10 @@
|
||||
</subitems>
|
||||
</item>
|
||||
<item>
|
||||
<title>Manage User Permissions</title>
|
||||
<title>Управление Правами Доступа</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Manage User Permissions</subitemtitle>
|
||||
<subitemtitle>Управление Правами Доступа</subitemtitle>
|
||||
<subitemlang>manage_perms</subitemlang>
|
||||
<subsection>permissions</subsection>
|
||||
<subitemurl>do=overview</subitemurl>
|
||||
|
||||
@@ -1,46 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<permissions>
|
||||
<group>
|
||||
<grouptitle>Managing Groups</grouptitle>
|
||||
<grouptitle>Управление группами</grouptitle>
|
||||
<grouplang>members_groups</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>groups_add</key>
|
||||
<string>Can add groups?</string>
|
||||
<string>Может добавлять группы?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>groups_add_admin</key>
|
||||
<string>Can add ADMIN groups?</string>
|
||||
<string>Может добавлять АДМИНИСТРАТОРСКИЕ группы?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>groups_edit</key>
|
||||
<string>Can edit groups?</string>
|
||||
<string>Может редактировать группы?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>groups_edit_admin</key>
|
||||
<string>Can edit ADMIN groups?</string>
|
||||
<string>Может редактировать АДМИНИСТРАТОРСКИЕ группы?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>groups_delete</key>
|
||||
<string>Can delete groups?</string>
|
||||
<string>Может удалять группы?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>groups_delete_admin</key>
|
||||
<string>Can delete ADMIN groups?</string>
|
||||
<string>Может удалять АДМИНИСТРАТОРСКИЕ группы?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Managing Permissions</grouptitle>
|
||||
<grouptitle>Управление правами</grouptitle>
|
||||
<grouplang>members_perms</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>perms_manage</key>
|
||||
<string>Can manage permission sets and configure permission access?</string>
|
||||
<string>Может добавлять и редактировать маски доступа?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>perms_delete</key>
|
||||
<string>Can remove permission sets?</string>
|
||||
<string>Может удалять маски доступа?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since -
|
||||
* $LastChangedDate: 2011-03-22 12:48:06 -0400 (Tue, 22 Mar 2011) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 8149 $
|
||||
*/
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since 20th February 2002
|
||||
* $LastChangedDate: 2011-05-05 12:40:49 -0400 (Thu, 05 May 2011) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 8655 $
|
||||
*/
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Member property updater (AJAX)
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2013-05-08 12:08:00 -0400 (Wed, 08 May 2013) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -13,7 +13,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 12237 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_IPB' ) )
|
||||
@@ -270,7 +270,7 @@ class admin_members_members_editform extends ipsCommand
|
||||
$display_name = IPSText::removeControlCharacters( $display_name );
|
||||
}
|
||||
|
||||
if ( $field == 'members_display_name' AND preg_match( "#[\[\];,\|]#", str_replace( ''', "'", str_replace( '&', '&', str_replace( '"', '"', str_replace( '!', '!', $display_name ) ) ) ) ) )
|
||||
if ( $field == 'members_display_name' AND preg_match( "#[\[\];,\|]#", IPSText::UNhtmlspecialchars( $display_name ) ) )
|
||||
{
|
||||
$this->registry->output->showError( $this->lang->words['m_displaynames'] );
|
||||
}
|
||||
@@ -355,22 +355,6 @@ class admin_members_members_editform extends ipsCommand
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Load handler...
|
||||
//-----------------------------------------
|
||||
|
||||
if( $field == 'name' )
|
||||
{
|
||||
$classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/handlers/han_login.php', 'han_login' );
|
||||
$han_login = new $classToLoad( $this->registry );
|
||||
$han_login->init();
|
||||
$han_login->changeName( $member['name'], $display_name, $member['email'], $member );
|
||||
}
|
||||
else
|
||||
{
|
||||
IPSLib::runMemberSync( 'onNameChange', $member_id, $display_name );
|
||||
}
|
||||
|
||||
$this->registry->output->global_message = $this->lang->words[ $field . '_updated_success'];
|
||||
$this->registry->output->silentRedirectWithMessage( $this->settings['base_url'] . 'module=members&do=viewmember&member_id=' . $member_id );
|
||||
}
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* $License: http://www.invisionpower.com/company/standards.php#license$
|
||||
* $Author: bfarber $
|
||||
* @since 1st March 2002
|
||||
* $LastChangedDate: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* @version v3.3.4
|
||||
* $Revision: 10914 $
|
||||
* $LastChangedDate: 2013-05-02 23:43:16 -0400 (Thu, 02 May 2013) $
|
||||
* @version v3.4.5
|
||||
* $Revision: 12217 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_ACP' ) )
|
||||
@@ -445,6 +445,7 @@ class admin_members_members_members extends ipsCommand
|
||||
$_editor->setAllowBbcode( true );
|
||||
$_editor->setAllowSmilies( false );
|
||||
$_editor->setAllowHtml( $member['g_dohtml'] );
|
||||
$_editor->setIsHtml( $member['bw_html_sig'] );
|
||||
$_editor->setContent( $sig_editor, 'signatures' );
|
||||
|
||||
$member['signature_editor'] = $_editor->show( 'signature', array( 'noSmilies' => true, 'height' => 350 ) );
|
||||
@@ -664,6 +665,42 @@ class admin_members_members_members extends ipsCommand
|
||||
return;
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Are we banning ourselves ?
|
||||
//-----------------------------------------
|
||||
|
||||
if( $member['member_id'] == $this->memberData['member_id'] )
|
||||
{
|
||||
$this->registry->output->global_message = $this->lang->words['m_banyourself'];
|
||||
$this->_memberView();
|
||||
return;
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// What about demoting or promoting ?
|
||||
//-----------------------------------------
|
||||
|
||||
if ( $this->request['ban__group'] != $member['member_group_id'] && $this->request['ban__group_change'] )
|
||||
{
|
||||
// Demote
|
||||
if( $member['g_access_cp'] AND !$this->registry->getClass('class_permissions')->checkPermission('member_move_admin1') )
|
||||
{
|
||||
$this->registry->output->global_message = $this->lang->words['m_admindemote'];
|
||||
$this->_memberView();
|
||||
return;
|
||||
}
|
||||
// Promote
|
||||
if( !$member['g_access_cp'] AND !$this->registry->getClass('class_permissions')->checkPermission('member_move_admin2') )
|
||||
{
|
||||
if( $this->caches['group_cache'][ $this->request['ban__group'] ]['g_access_cp'] )
|
||||
{
|
||||
$this->registry->output->global_message = $this->lang->words['m_adminpromote'];
|
||||
$this->_memberView();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Check ban settings...
|
||||
//-----------------------------------------
|
||||
@@ -715,6 +752,10 @@ class admin_members_members_members extends ipsCommand
|
||||
else if( !$this->request['ban__member'] AND $member['member_banned'] )
|
||||
{
|
||||
IPSMember::save( $member['member_id'], array( 'core' => array( 'member_banned' => 0 ) ) );
|
||||
|
||||
/* Also update warn logs to -2
|
||||
@link http://community.invisionpower.com/resources/bugs.html/_/ip-board/banning-a-member-from-the-acp-shows-the-user-an-incorrect-more-details-link-r42079 */
|
||||
$this->DB->update( 'members_warn_logs', array( 'wl_suspend' => '-2' ), "wl_suspend=-1 AND wl_member=" . $member['member_id'] );
|
||||
}
|
||||
|
||||
if( $this->request['ban__name'] AND !$name_banned )
|
||||
@@ -761,7 +802,7 @@ class admin_members_members_members extends ipsCommand
|
||||
{
|
||||
IPSMember::save( $member['member_id'], array( 'core' => array( 'member_group_id' => intval($this->request['ban__group']) ) ) );
|
||||
|
||||
/* Password has been changed! */
|
||||
/* Group has been changed! */
|
||||
IPSLib::runMemberSync( 'onGroupChange', $member['member_id'], intval($this->request['ban__group']), $member['member_group_id'] );
|
||||
}
|
||||
|
||||
@@ -1045,6 +1086,17 @@ class admin_members_members_members extends ipsCommand
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$init = intval( $this->request['init'] );
|
||||
$img = '<img src="' . $this->settings['skin_acp_url'] . '/images/loading_anim.gif" alt="-" /> ';
|
||||
$count = 0;
|
||||
$pergo = 25;
|
||||
|
||||
if ( ! $init )
|
||||
{
|
||||
$url = $this->settings['base_url'] . '&' . $this->form_code_js . "&do=doprune&count=0&init=1";
|
||||
$this->registry->output->multipleRedirectInit( $url );
|
||||
}
|
||||
|
||||
$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir('members') . '/sources/adminSearch.php', 'adminMemberSearch', 'members' );
|
||||
$searchHelper = new $classToLoad( $this->registry );
|
||||
|
||||
@@ -1077,11 +1129,8 @@ class admin_members_members_members extends ipsCommand
|
||||
|
||||
if ( !$count )
|
||||
{
|
||||
$this->registry->output->global_message = $this->lang->words['m_noprune'];
|
||||
|
||||
ipsRegistry::getClass('adminFunctions')->staffSaveCookie( 'memberFilter', array() );
|
||||
|
||||
return $this->_memberList();
|
||||
ipsRegistry::getClass('adminFunctions')->staffSaveCookie( 'memberFilter', array() );
|
||||
$this->registry->output->multipleRedirectFinish();
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
@@ -1090,35 +1139,30 @@ class admin_members_members_members extends ipsCommand
|
||||
|
||||
$results = $searchHelper->getSearchResults( 0, 0, $extraQuery, true );
|
||||
|
||||
if( !count($results['ids']) )
|
||||
{
|
||||
$this->registry->output->showError( $this->lang->words['m_noprune'], 11235 );
|
||||
}
|
||||
|
||||
$_delIds = array_slice($results['ids'], 0, $pergo);
|
||||
$_delNames = array_slice($results['names'], 0, $pergo);
|
||||
|
||||
//-----------------------------------------
|
||||
// Delete members
|
||||
//-----------------------------------------
|
||||
|
||||
IPSMember::remove( $results['ids'], true );
|
||||
|
||||
IPSMember::remove( $_delIds, true );
|
||||
|
||||
//-----------------------------------------
|
||||
// Admin log
|
||||
//-----------------------------------------
|
||||
|
||||
ipsRegistry::getClass('adminFunctions')->saveAdminLog( sprintf( $this->lang->words['m_deletedlog'], implode( ",", $results['names'] ) ) );
|
||||
|
||||
//-----------------------------------------
|
||||
// Reset staff cookie
|
||||
//-----------------------------------------
|
||||
|
||||
ipsRegistry::getClass('adminFunctions')->staffSaveCookie( 'memberFilter', array() );
|
||||
ipsRegistry::getClass('adminFunctions')->saveAdminLog( sprintf( $this->lang->words['m_deletedlog'], implode( ",", $_delNames ) ) );
|
||||
|
||||
//-----------------------------------------
|
||||
// Redirect
|
||||
// Let's go round again.
|
||||
// (Maybe we'll turn back the hands of time)
|
||||
//-----------------------------------------
|
||||
|
||||
$this->registry->output->global_message = $this->lang->words['m_deleted'];
|
||||
$this->registry->output->silentRedirectWithMessage( $this->settings['base_url'] . $this->form_code . '&do=members_list' );
|
||||
$count = intval($this->request['count']) + $pergo;
|
||||
$url = $this->settings['base_url'] . '&' . $this->form_code_js . "&do=doprune&count={$count}&init=1";
|
||||
|
||||
$this->registry->output->multipleRedirectHit( $url, $img . sprintf( $this->lang->words['m_deleted'], $count ) );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1132,12 +1176,14 @@ class admin_members_members_members extends ipsCommand
|
||||
// Error checking
|
||||
//-----------------------------------------
|
||||
|
||||
if( !$this->request['move_to_group'] )
|
||||
$this->request['move_to_group'] = intval($this->request['move_to_group']);
|
||||
|
||||
if ( empty($this->request['move_to_group']) )
|
||||
{
|
||||
$this->registry->output->showError( $this->lang->words['m_whatgroup'], 11236 );
|
||||
}
|
||||
|
||||
if( !$this->registry->getClass('class_permissions')->checkPermission( 'member_move_admin2') )
|
||||
if ( !$this->registry->getClass('class_permissions')->checkPermission( 'member_move_admin2') )
|
||||
{
|
||||
if( $this->caches['group_cache'][ $this->request['move_to_group'] ]['g_access_cp'] )
|
||||
{
|
||||
@@ -1196,7 +1242,13 @@ class admin_members_members_members extends ipsCommand
|
||||
// Move the members
|
||||
//-----------------------------------------
|
||||
|
||||
$this->DB->update( 'members', array( 'member_group_id' => intval($this->request['move_to_group']) ), 'member_id IN(' . implode( ',', $results['ids'] ) . ')' );
|
||||
$this->DB->update( 'members', array( 'member_group_id' => $this->request['move_to_group'] ), 'member_id IN(' . implode( ',', $results['ids'] ) . ')' );
|
||||
|
||||
/* Now run our gruop change functions */
|
||||
foreach( $results['groups'] as $mid => $mgroup )
|
||||
{
|
||||
IPSLib::runMemberSync( 'onGroupChange', $mid, $this->request['move_to_group'], $mgroup );
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Store admin log
|
||||
@@ -1299,7 +1351,7 @@ class admin_members_members_members extends ipsCommand
|
||||
}
|
||||
}
|
||||
|
||||
$names[] = $r['name'];
|
||||
$names[ $r['member_id'] ] = $r['name'];
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
@@ -1318,7 +1370,7 @@ class admin_members_members_members extends ipsCommand
|
||||
// Delete
|
||||
//-----------------------------------------
|
||||
|
||||
IPSMember::remove( $ids, true );
|
||||
IPSMember::remove( array_keys( $names ), true );
|
||||
|
||||
//-----------------------------------------
|
||||
// Clear "cookies"
|
||||
@@ -1761,41 +1813,51 @@ class admin_members_members_members extends ipsCommand
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-----------------------------------------
|
||||
// What about moving member in general?
|
||||
//-----------------------------------------
|
||||
|
||||
if ( $this->request['member_group_id'] != $member['member_group_id'] AND ! $this->registry->getClass('class_permissions')->checkPermission( 'member_move' ) )
|
||||
{
|
||||
$this->registry->output->global_message = $this->lang->words['m_movemembers'];
|
||||
$this->_memberView();
|
||||
return;
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Restricted?
|
||||
//-----------------------------------------
|
||||
|
||||
$restricted = ( is_array($this->registry->getClass('class_permissions')->restrictions_row) AND count($this->registry->getClass('class_permissions')->restrictions_row) ) ? true : false;
|
||||
|
||||
/* Load editor stuff */
|
||||
$classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/editor/composite.php', 'classes_editor_composite' );
|
||||
$_editor = new $classToLoad();
|
||||
|
||||
|
||||
/* Load parser */
|
||||
$classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/text/parser.php', 'classes_text_parser' );
|
||||
$parser = new $classToLoad();
|
||||
|
||||
/* Get signature */
|
||||
$_editor->setAllowBbcode( true );
|
||||
$_editor->setAllowSmilies( false );
|
||||
$_editor->setIsHtml( $this->request['bw_html_sig'] && $member['g_dohtml'] );
|
||||
$_editor->setAllowHtml( $member['g_dohtml'] );
|
||||
$_editor->setBbcodeSection('signatures');
|
||||
|
||||
$signature = $_editor->process( $_POST['signature'] );
|
||||
|
||||
IPSText::getTextClass('bbcode')->parse_smilies = 0;
|
||||
IPSText::getTextClass('bbcode')->parse_bbcode = 1;
|
||||
IPSText::getTextClass('bbcode')->parse_html = $member['g_dohtml'];
|
||||
IPSText::getTextClass('bbcode')->parse_nl2br = 1;
|
||||
IPSText::getTextClass('bbcode')->parsing_section = 'signatures';
|
||||
|
||||
$signature = IPSText::getTextClass('bbcode')->preDbParse( $signature );
|
||||
$cacheSignature = IPSText::getTextClass('bbcode')->preDisplayParse( $signature );
|
||||
$cacheSignature = $parser->display( $signature );
|
||||
|
||||
/* About me editor */
|
||||
$_editor->setAllowBbcode( true );
|
||||
$_editor->setAllowSmilies( true );
|
||||
$_editor->setAllowHtml( $member['g_dohtml'] );
|
||||
$_editor->setBbcodeSection( 'aboutme' );
|
||||
|
||||
$aboutme = $_editor->process( $_POST['aboutme'] );
|
||||
IPSText::getTextClass('bbcode')->parse_smilies = 1;
|
||||
IPSText::getTextClass('bbcode')->parse_bbcode = 1;
|
||||
IPSText::getTextClass('bbcode')->parse_html = $member['g_dohtml'];
|
||||
IPSText::getTextClass('bbcode')->parse_nl2br = 1;
|
||||
IPSText::getTextClass('bbcode')->parsing_section = 'aboutme';
|
||||
$aboutme = $_editor->process( $_POST['aboutme'] );
|
||||
|
||||
$aboutme = IPSText::getTextClass('bbcode')->preDbParse( $aboutme );
|
||||
|
||||
//-----------------------------------------
|
||||
// Ok? Load interface and child classes
|
||||
//-----------------------------------------
|
||||
@@ -1995,52 +2057,50 @@ class admin_members_members_members extends ipsCommand
|
||||
{
|
||||
$this->DB->delete( 'admin_permission_rows', 'row_id=' . $member['member_id'] . " AND row_id_type='member'" );
|
||||
}*/
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Restriction permissions stuff
|
||||
//-----------------------------------------
|
||||
|
||||
if ( is_array($this->registry->getClass('class_permissions')->restrictions_row) AND count($this->registry->getClass('class_permissions')->restrictions_row) )
|
||||
{
|
||||
$is_admin = 0;
|
||||
$groups = ipsRegistry::cache()->getCache('group_cache');
|
||||
|
||||
if ( is_array( $this->request['mgroup_others'] ) AND count( $this->request['mgroup_others'] ) )
|
||||
{
|
||||
foreach( $this->request['mgroup_others'] as $omg )
|
||||
//-----------------------------------------
|
||||
// Restriction permissions stuff
|
||||
//-----------------------------------------
|
||||
|
||||
$is_admin = 0;
|
||||
$groups = ipsRegistry::cache()->getCache('group_cache');
|
||||
|
||||
if ( is_array( $this->request['mgroup_others'] ) AND count( $this->request['mgroup_others'] ) )
|
||||
{
|
||||
if ( $groups[ intval($omg) ]['g_access_cp'] )
|
||||
foreach( $this->request['mgroup_others'] as $omg )
|
||||
{
|
||||
$is_admin = 1;
|
||||
break;
|
||||
if ( $groups[ intval($omg) ]['g_access_cp'] )
|
||||
{
|
||||
$is_admin = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if( $groups[ intval($this->request['member_group_id']) ]['g_access_cp'] )
|
||||
{
|
||||
$is_admin = 1;
|
||||
}
|
||||
|
||||
if ( $is_admin )
|
||||
{
|
||||
//-------------------------------------------------
|
||||
// Copy restrictions if they do not have any yet...
|
||||
//-------------------------------------------------
|
||||
|
||||
$check = $this->DB->buildAndFetch( array( 'select' => 'row_updated', 'from' => 'admin_permission_rows', 'where' => "row_id_type='member' AND row_id=" . $this->request['member_id'] ) );
|
||||
|
||||
if( !$check['row_updated'] )
|
||||
|
||||
if( $groups[ intval($this->request['member_group_id']) ]['g_access_cp'] )
|
||||
{
|
||||
$this->DB->replace( 'admin_permission_rows', array( 'row_id' => $this->request['member_id'],
|
||||
'row_id_type' => 'member',
|
||||
'row_perm_cache' => serialize($this->registry->getClass('class_permissions')->restrictions_row),
|
||||
'row_updated' => time() ), array( 'row_id', 'row_id_type' ) );
|
||||
$is_admin = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ( $is_admin && $restricted ) // and the admin promoting has restrictions
|
||||
{
|
||||
//-------------------------------------------------
|
||||
// Copy restrictions if they do not have any yet...
|
||||
//-------------------------------------------------
|
||||
|
||||
$check = $this->DB->buildAndFetch( array( 'select' => 'row_updated', 'from' => 'admin_permission_rows', 'where' => "row_id_type='member' AND row_id=" . $this->request['member_id'] ) );
|
||||
|
||||
if( !$check['row_updated'] )
|
||||
{
|
||||
$this->DB->replace( 'admin_permission_rows', array( 'row_id' => $this->request['member_id'],
|
||||
'row_id_type' => 'member',
|
||||
'row_perm_cache' => serialize($this->registry->getClass('class_permissions')->restrictions_row),
|
||||
'row_updated' => time() ), array( 'row_id', 'row_id_type' ) );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
// Moved from validating group?
|
||||
//-----------------------------------------
|
||||
@@ -2071,9 +2131,24 @@ class admin_members_members_members extends ipsCommand
|
||||
|
||||
$this->registry->output->global_message = $this->lang->words['m_edited'];
|
||||
|
||||
$triggerGroups = $member['mgroup_others'] ? implode( ',', array_merge( is_array($member['mgroup_others']) ? $member['mgroup_others'] : array(), array( $member['member_group_id'] ) ) ) : $member['member_group_id'];
|
||||
//$this->_memberView();
|
||||
$this->registry->output->silentRedirectWithMessage( $this->settings['base_url'] . $this->form_code . '&do=viewmember&trigger=' . $triggerGroups . '&member_id=' . $this->request['member_id'] );
|
||||
if ( $is_admin )
|
||||
{
|
||||
if ( !$restricted ) // Let's prompt to add restrictions
|
||||
{
|
||||
$member = IPSMember::load( $member['member_id'] );
|
||||
$this->_showAdminForm( $member, array() );
|
||||
$this->_memberView();
|
||||
}
|
||||
else // They're created with promoting admin's restrictions
|
||||
{
|
||||
$this->registry->output->global_message = $this->lang->words['m_edited_restricted'];
|
||||
$this->registry->output->silentRedirectWithMessage( $this->settings['base_url'] . $this->form_code . '&do=viewmember&member_id=' . $this->request['member_id'] );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->registry->output->silentRedirectWithMessage( $this->settings['base_url'] . $this->form_code . '&do=viewmember&member_id=' . $this->request['member_id'] );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Configure default notification options
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-05-10 16:10:13 -0400 (Thu, 10 May 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -14,7 +14,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Rev: 10914 $
|
||||
* @version $Rev: 10721 $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Member management
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-08-28 17:56:22 -0400 (Tue, 28 Aug 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -14,7 +14,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 11296 $
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -203,12 +203,12 @@ class admin_members_members_ranks extends ipsCommand
|
||||
$this->registry->output->showError( $this->lang->words['rnk_completeform'], 11239 );
|
||||
}
|
||||
}
|
||||
|
||||
if ( $this->request['pips'] > 100 )
|
||||
|
||||
if ( is_numeric( $this->request['pips'] ) && $this->request['pips'] > 100 )
|
||||
{
|
||||
$this->registry->output->showError( $this->lang->words['rnk_max100'], 11240 );
|
||||
$this->registry->output->showError( $this->lang->words['rnk_mx100'], 11240 );
|
||||
}
|
||||
|
||||
|
||||
if( $type == 'add' )
|
||||
{
|
||||
$this->DB->insert( 'titles', array(
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Reputation System
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-05-10 16:10:13 -0400 (Thu, 10 May 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -14,7 +14,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Rev: 10914 $
|
||||
* @version $Rev: 10721 $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -2,10 +2,10 @@
|
||||
<menu>
|
||||
<tabitems>
|
||||
<item>
|
||||
<title>Manage Members</title>
|
||||
<title>Управление Пользователями</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Manage Members</subitemtitle>
|
||||
<subitemtitle>Управление Пользователями</subitemtitle>
|
||||
<subitemlang>manage_members</subitemlang>
|
||||
<subsection>members</subsection>
|
||||
<subitemurl>do=members_overview</subitemurl>
|
||||
@@ -16,10 +16,10 @@
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Member Ranks</title>
|
||||
<title>Звания</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Member Ranks</subitemtitle>
|
||||
<subitemtitle>Звания</subitemtitle>
|
||||
<subitemlang>mem_ranks</subitemlang>
|
||||
<subsection>ranks</subsection>
|
||||
<subitemurl>do=ranks_overview</subitemurl>
|
||||
@@ -30,10 +30,10 @@
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Member Reputation</title>
|
||||
<title>Репутация</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Member Reputation</subitemtitle>
|
||||
<subitemtitle>Репутация</subitemtitle>
|
||||
<subitemlang>mem_rep</subitemlang>
|
||||
<subsection>reputation</subsection>
|
||||
<subitemurl>do=overview</subitemurl>
|
||||
@@ -44,10 +44,10 @@
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Member Management Tools</title>
|
||||
<title>Инструменты Управления Пользователями</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Member Management Tools</subitemtitle>
|
||||
<subitemtitle>Инструменты Управления Пользователями</subitemtitle>
|
||||
<subitemlang>mem_tools</subitemlang>
|
||||
<subsection>tools</subsection>
|
||||
<subitemurl></subitemurl>
|
||||
@@ -58,10 +58,10 @@
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Add New Member</title>
|
||||
<title>Добавить Пользователя</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Add New Member</subitemtitle>
|
||||
<subitemtitle>Добавить Пользователя</subitemtitle>
|
||||
<subitemlang>mem_add</subitemlang>
|
||||
<subsection>members</subsection>
|
||||
<subitemurl>do=add</subitemurl>
|
||||
@@ -72,10 +72,10 @@
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Ban Filters</title>
|
||||
<title>Бан-Фильтры</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Ban Filters</subitemtitle>
|
||||
<subitemtitle>Бан-Фильтры</subitemtitle>
|
||||
<subitemlang>banfilters</subitemlang>
|
||||
<subsection>banfilters</subsection>
|
||||
<subitemurl></subitemurl>
|
||||
@@ -86,10 +86,10 @@
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Notification Defaults</title>
|
||||
<title>Настройки Уведомлений</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Notification Defaults</subitemtitle>
|
||||
<subitemtitle>Настройки Уведомлений</subitemtitle>
|
||||
<subitemlang>notifications</subitemlang>
|
||||
<subsection>notifications</subsection>
|
||||
<subitemurl></subitemurl>
|
||||
|
||||
@@ -1,32 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<permissions>
|
||||
<group>
|
||||
<grouptitle>Managing Members</grouptitle>
|
||||
<grouptitle>Управление пользователями</grouptitle>
|
||||
<grouplang>members_members</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>member_add</key>
|
||||
<string>Can add members?</string>
|
||||
<string>Может добавлять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_add_admin</key>
|
||||
<string>Can add ADMINS?</string>
|
||||
<string>Может добавлять администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_edit</key>
|
||||
<string>Can edit members?</string>
|
||||
<string>Может изменять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_edit_admin</key>
|
||||
<string>Can edit ADMINS?</string>
|
||||
<string>Может изменять администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_delete</key>
|
||||
<string>Can delete members?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_delete_admin</key>
|
||||
<string>Can delete ADMINS?</string>
|
||||
<string>Может удалять администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_login</key>
|
||||
@@ -34,141 +34,141 @@
|
||||
</item>
|
||||
<item>
|
||||
<key>members_merge</key>
|
||||
<string>Can merge two user accounts?</string>
|
||||
<string>Может объединять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_suspend</key>
|
||||
<string>Can suspend and unsuspend members?</string>
|
||||
<string>Может блокировать?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_suspend_admin</key>
|
||||
<string>Can suspend and unsuspend ADMINS?</string>
|
||||
<string>Может блокировать администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_prune</key>
|
||||
<string>Can prune members?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_prune_admin</key>
|
||||
<string>Can prune ADMINS?</string>
|
||||
<string>Может удалять администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_move</key>
|
||||
<string>Can bulk move members to other groups? (Does not apply to editing members where the group can still be changed)</string>
|
||||
<string>Может переносить из группы в группу?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_move_admin1</key>
|
||||
<string>Can move ADMINS to other groups?</string>
|
||||
<string>Может переносить администраторов в другие группы?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_move_admin2</key>
|
||||
<string>Can promote members to ADMIN?</string>
|
||||
<string>Может переносить в группу администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_ban</key>
|
||||
<string>Can ban members?</string>
|
||||
<string>Может банить?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_ban_admin</key>
|
||||
<string>Can ban ADMINS?</string>
|
||||
<string>Может банить администраторов?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_photo</key>
|
||||
<string>Can upload new member photos?</string>
|
||||
<string>Может изменять фотографии пользователям?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>member_photo_admin</key>
|
||||
<string>Can upload new photos for ADMINS?</string>
|
||||
<string>Может изменять фотографии администраторам?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>membertools_validating</key>
|
||||
<string>Can manage validating members?</string>
|
||||
<string>Может управлять ожидающими активации?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>membertools_locked</key>
|
||||
<string>Can manage locked members?</string>
|
||||
<string>Может управлять заблокированными?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>membertools_banned</key>
|
||||
<string>Can manage banned members?</string>
|
||||
<string>Может управлять забаненными?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>membertools_spam</key>
|
||||
<string>Can manage spam members?</string>
|
||||
<string>Может управлять спам-пользователями?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>membertools_incomplete</key>
|
||||
<string>Can manage incomplete members?</string>
|
||||
<string>Может управлять не завершившими регистрацию?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>membertools_delete_pms</key>
|
||||
<string>Can delete private messages?</string>
|
||||
<string>Может удалять личные сообщения?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Member Tools</grouptitle>
|
||||
<grouptitle>Инструменты</grouptitle>
|
||||
<grouplang>members_tools</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>membertools_ip</key>
|
||||
<string>Can use the IP address tools?</string>
|
||||
<string>Может использовать инструменты работы с IP-адресами?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Member Ranks</grouptitle>
|
||||
<grouptitle>Звания</grouptitle>
|
||||
<grouplang>members_ranks</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>ranks_add</key>
|
||||
<string>Can view and add new member ranks?</string>
|
||||
<string>Может просматривать и добавлять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>ranks_edit</key>
|
||||
<string>Can edit member ranks?</string>
|
||||
<string>Может изменять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>ranks_delete</key>
|
||||
<string>Can delete member ranks?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Managing Ban Filters</grouptitle>
|
||||
<grouptitle>Бан-фильтр</grouptitle>
|
||||
<grouplang>members_banfilters</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>ban_manage</key>
|
||||
<string>Can manage ban filters?</string>
|
||||
<string>Может управлять фильтром?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>ban_remove</key>
|
||||
<string>Can remove ban filters?</string>
|
||||
<string>Может удалять правила?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Member Reputation</grouptitle>
|
||||
<grouptitle>Репутация</grouptitle>
|
||||
<grouplang>members_reputation</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>reps_manage</key>
|
||||
<string>Can manage reputation levels?</string>
|
||||
<string>Может управлять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>reps_delete</key>
|
||||
<string>Can delete reputation levels?</string>
|
||||
<string>Может удалять уровни репутации?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Notification Defaults</grouptitle>
|
||||
<grouptitle>Уведомления</grouptitle>
|
||||
<grouplang>members_notifications</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>configure_notifications</key>
|
||||
<string>Configure notification defaults?</string>
|
||||
<string>Может настраивать значения по-умолчанию для уведомлений?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* $Author: ips_terabyte $
|
||||
* @since 20th February 2002
|
||||
* $LastChangedDate: 2011-05-05 12:40:49 -0400 (Thu, 05 May 2011) $
|
||||
* @version v3.3.4
|
||||
* @version v3.4.5
|
||||
* $Revision: 8655 $
|
||||
*/
|
||||
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -2,10 +2,10 @@
|
||||
<menu>
|
||||
<tabitems>
|
||||
<item>
|
||||
<title>Manage ACP Restrictions</title>
|
||||
<title>Управление Ограничениями в АЦ</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Manage ACP Restrictions</subitemtitle>
|
||||
<subitemtitle>Управление Ограничениями в АЦ</subitemtitle>
|
||||
<subitemlang>restrictions</subitemlang>
|
||||
<subsection>restrictions</subsection>
|
||||
<subitemurl>do=overview</subitemurl>
|
||||
|
||||
@@ -1,32 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<permissions>
|
||||
<group>
|
||||
<grouptitle>Manage ACP Restrictions</grouptitle>
|
||||
<grouptitle>Управление ограничениями доступа</grouptitle>
|
||||
<grouplang>members_restrictions</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>restrictions_add_member</key>
|
||||
<string>Can add member restrictions?</string>
|
||||
<string>Может добавлять ограничения?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>restrictions_edit_member</key>
|
||||
<string>Can edit member restrictions?</string>
|
||||
<string>Может изменять ограничения?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>restrictions_delete_member</key>
|
||||
<string>Can remove member restrictions?</string>
|
||||
<string>Может удалять ограничения?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>restrictions_add_group</key>
|
||||
<string>Can add group restrictions?</string>
|
||||
<string>Может добавлять ограничения для групп?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>restrictions_edit_group</key>
|
||||
<string>Can edit group restrictions?</string>
|
||||
<string>Может изменять ограничения для групп?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>restrictions_delete_group</key>
|
||||
<string>Can remove group restrictions?</string>
|
||||
<string>Может удалять ограничения для групп?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
|
||||
@@ -2,18 +2,18 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Warning Actions
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-10-01 11:12:40 -0400 (Mon, 01 Oct 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $ (original: Mark)
|
||||
* @author $Author: mark $ (original: Mark)
|
||||
* @copyright © 2011 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/company/standards.php#license
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 11396 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_ACP' ) )
|
||||
@@ -192,14 +192,14 @@ class admin_members_warnings_actions extends ipsCommand
|
||||
}
|
||||
|
||||
$this->DB->update( 'members_warn_actions', $save, "wa_id={$id}" );
|
||||
$this->registry->adminFunctions->saveAdminLog( sprintf( $this->lang->words['warn_actions_edited'], $save['wa_name'] ) );
|
||||
$this->registry->adminFunctions->saveAdminLog( sprintf( $this->lang->words['warn_actions_edited'], $save['wa_points'] ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->registry->getClass('class_permissions')->checkPermissionAutoMsg( 'actions_add' );
|
||||
|
||||
$this->DB->insert( 'members_warn_actions', $save );
|
||||
$this->registry->adminFunctions->saveAdminLog( sprintf( $this->lang->words['warn_actions_created'], $save['wa_name'] ) );
|
||||
$this->registry->adminFunctions->saveAdminLog( sprintf( $this->lang->words['warn_actions_created'], $save['wa_points'] ) );
|
||||
}
|
||||
|
||||
//-----------------------------------------
|
||||
@@ -231,7 +231,7 @@ class admin_members_warnings_actions extends ipsCommand
|
||||
}
|
||||
|
||||
$this->DB->delete( 'members_warn_actions', "wa_id={$id}" );
|
||||
$this->registry->adminFunctions->saveAdminLog( sprintf( $this->lang->words['warn_actions_deleted'], $current['wa_name'] ) );
|
||||
$this->registry->adminFunctions->saveAdminLog( sprintf( $this->lang->words['warn_actions_deleted'], $current['wa_points'] ) );
|
||||
|
||||
$this->registry->output->redirect( "{$this->settings['base_url']}app=members&module=warnings&section=actions", $this->lang->words['warn_actions_del_saved'] );
|
||||
}
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
*~TERABYTE_DOC_READY~
|
||||
* $Copyright: (c) 2001 - 2011 Invision Power Services, Inc.$
|
||||
* $License: http://www.invisionpower.com/company/standards.php#license$
|
||||
* $Author: bfarber $
|
||||
* $Author: ips_terabyte $
|
||||
* @since 07th May 2012
|
||||
* $LastChangedDate: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* @version v3.3.4
|
||||
* $Revision: 10914 $
|
||||
* $LastChangedDate: 2012-05-07 11:22:43 -0400 (Mon, 07 May 2012) $
|
||||
* @version v3.4.5
|
||||
* $Revision: 10695 $
|
||||
*/
|
||||
|
||||
$DEFAULT_SECTION = 'reasons';
|
||||
@@ -2,9 +2,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Warning Reasons
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2012-05-10 16:10:13 -0400 (Thu, 10 May 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $ (original: Mark)
|
||||
@@ -13,7 +13,7 @@
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Revision: 10914 $
|
||||
* @version $Revision: 10721 $
|
||||
*/
|
||||
|
||||
if ( ! defined( 'IN_ACP' ) )
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
<menu>
|
||||
<tabitems>
|
||||
<item>
|
||||
<title>Reasons</title>
|
||||
<title>Причины</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Reasons</subitemtitle>
|
||||
<subitemtitle>Причины</subitemtitle>
|
||||
<subitemlang>warn_reasons</subitemlang>
|
||||
<subsection>reasons</subsection>
|
||||
<subitemurl></subitemurl>
|
||||
@@ -15,10 +15,10 @@
|
||||
</subitems>
|
||||
</item>
|
||||
<item>
|
||||
<title>Actions</title>
|
||||
<title>Действия</title>
|
||||
<subitems>
|
||||
<subitem>
|
||||
<subitemtitle>Actions</subitemtitle>
|
||||
<subitemtitle>Действия</subitemtitle>
|
||||
<subitemlang>warn_actions</subitemlang>
|
||||
<subsection>actions</subsection>
|
||||
<subitemurl></subitemurl>
|
||||
|
||||
@@ -1,46 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<permissions>
|
||||
<group>
|
||||
<grouptitle>Reasons</grouptitle>
|
||||
<grouptitle>Причины</grouptitle>
|
||||
<grouplang>warn_reasons</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>reasons_view</key>
|
||||
<string>Can view warning reasons?</string>
|
||||
<string>Может просматривать?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>reasons_edit</key>
|
||||
<string>Can edit warning reasons?</string>
|
||||
<string>Может изменять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>reasons_add</key>
|
||||
<string>Can add new warning reasons?</string>
|
||||
<string>Может добавлять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>reasons_delete</key>
|
||||
<string>Can delete warning reasons?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
<group>
|
||||
<grouptitle>Actions</grouptitle>
|
||||
<grouptitle>Действия</grouptitle>
|
||||
<grouplang>warn_actions</grouplang>
|
||||
<items>
|
||||
<item>
|
||||
<key>actions_view</key>
|
||||
<string>Can view warning actions?</string>
|
||||
<string>Может просматривать?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>actions_edit</key>
|
||||
<string>Can edit warning actions?</string>
|
||||
<string>Может изменять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>actions_add</key>
|
||||
<string>Can add new warning actions?</string>
|
||||
<string>Может добавлять?</string>
|
||||
</item>
|
||||
<item>
|
||||
<key>actions_delete</key>
|
||||
<string>Can delete warning actions?</string>
|
||||
<string>Может удалять?</string>
|
||||
</item>
|
||||
</items>
|
||||
</group>
|
||||
|
||||
Reference in new issue
Block a user