Version 3.4.5

This commit is contained in:
Neo committed 2025-12-19 00:38:12 -08:00
1 parent fb6b5baabc
commit e4478369d8
1360 files changed
+228921 -179445

No files matched your search

@@ -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']}&amp;{$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']}&amp;{$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>