Version 3.2.3
This commit is contained in:
1 parent
ae5c01cc78
commit
78706903a2
2641 files changed
+228363
-201264
No files matched your search
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP ban filters skin file
|
||||
* Last Updated: $Date: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
|
||||
* Last Updated: $Date: 2011-08-19 20:27:50 -0400 (Fri, 19 Aug 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 5713 $
|
||||
* @version $Rev: 9401 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_banfilters extends output
|
||||
class cp_skin_banfilters
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ban filter overview screen
|
||||
*
|
||||
* @access public
|
||||
* @param array IPs
|
||||
* @param array Emails
|
||||
* @param array Usernames
|
||||
@@ -44,136 +74,191 @@ public function banOverview( $ips, $emails, $names ) {
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$canRemove = $this->registry->class_permissions->checkPermission( 'ban_remove' );
|
||||
|
||||
/* Ban types */
|
||||
$ban = array();
|
||||
$ban['bantype'] = $this->registry->output->formDropdown( 'bantype', array( array( 'ip', $this->lang->words['ban_ip'] ), array( 'email', $this->lang->words['ban_email'] ), array( 'name', $this->lang->words['ban_name'] ) ) );
|
||||
$ban['bantext'] = $this->registry->output->formSimpleInput( 'bantext', '', 50 );
|
||||
$ban['banreason'] = $this->registry->output->formSimpleInput( 'banreason', '', 50 );
|
||||
|
||||
/* Remove new lines from the type dropdown or JS won't be happy.. */
|
||||
$ban['bantype'] = IPSText::br2nl($ban['bantype']);
|
||||
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='section_title'>
|
||||
<h2>{$this->lang->words['ban_title']}</h2>
|
||||
<div class='ipsActionBar clearfix'>
|
||||
<ul>
|
||||
<li class='ipsActionButton'>
|
||||
<a href='#' id='add_banfilter' title='{$this->lang->words['ban_addnew']}'><img src='{$this->settings['skin_acp_url']}/images/icons/add.png' alt='' /> {$this->lang->words['ban_addnew']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form method='post' action='{$this->settings['base_url']}{$this->form_code}&do=ban_add'>
|
||||
<script tyle='text/javascript' src='{$this->settings['js_app_url']}acp.banfilters.js'></script>
|
||||
<form method='post' id='ban-delete' action='{$this->settings['base_url']}{$this->form_code}'>
|
||||
<input type='hidden' name='do' value='ban_delete' />
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->adminFunctions->_admin_auth_key}' />
|
||||
<input type='text' size='30' class='input_text' value='' name='bantext' />
|
||||
<select class='input_select' name='bantype' style='vertical-align:middle;'>
|
||||
<option value='ip'>{$this->lang->words['ban_ip']}</option>
|
||||
<option value='email'>{$this->lang->words['ban_email']}</option>
|
||||
<option value='name'>{$this->lang->words['ban_name']}</option>
|
||||
</select>
|
||||
<input type='submit' value='{$this->lang->words['ban_addnew']}' class='button primary' />
|
||||
</form>
|
||||
|
||||
<div class='acp-box' style='margin-top: 4px;'>
|
||||
<h3>{$this->lang->words['ban_bancontrol']}</h3>
|
||||
<form method='post' id='ban-delete' action='{$this->settings['base_url']}{$this->form_code}&do=ban_delete'>
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->adminFunctions->_admin_auth_key}' />
|
||||
<table width='100%' class='alternate_rows double_pad'>
|
||||
<tr>
|
||||
<th colspan='3'>{$this->lang->words['ban_ips']}</th>
|
||||
</tr>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['ban_bancontrol']}</h3>
|
||||
|
||||
<div id='tabstrip_banForm' class='ipsTabBar with_left with_right'>
|
||||
<span class='tab_left'>«</span>
|
||||
<span class='tab_right'>»</span>
|
||||
<ul>
|
||||
<li id='tab_BanIps'>{$this->lang->words['ban_ips']}</li>
|
||||
<li id='tab_BanEmails'>{$this->lang->words['ban_emails']}</li>
|
||||
<li id='tab_BanNames'>{$this->lang->words['ban_names']}</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id='tabstrip_banForm_content' class='ipsTabBar_content'>
|
||||
|
||||
<!-- IP ADDRESSES -->
|
||||
<div id='tab_BanIps_content'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th width='1%'> </th>
|
||||
<th width='15%'>{$this->lang->words['ban_ip']}</th>
|
||||
<th width='60%'>{$this->lang->words['ban_form_reason']}</th>
|
||||
<th width='24%'>{$this->lang->words['ban_added_on']}</th>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
if( is_array( $ips ) && count( $ips ) )
|
||||
{
|
||||
foreach( $ips as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td width='1%'>{$r['_checkbox']}</td>
|
||||
<td width='80%'>{$r['ban_content']}</td>
|
||||
<td width='20%'>{$r['_date']}</td>
|
||||
</tr>
|
||||
$checkbox = $canRemove ? "<input type='checkbox' name='banid_{$r['ban_id']}' value='1' />" : '';
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td>{$checkbox}</td>
|
||||
<td>{$r['ban_content']}</td>
|
||||
<td>{$r['ban_reason']}</td>
|
||||
<td>{$r['_date']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='3'>{$this->lang->words['ban_ips_none']}</td>
|
||||
</tr>
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='4'>{$this->lang->words['ban_ips_none']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<th colspan='3'>{$this->lang->words['ban_emails']}</th>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- EMAIL ADDRESSES -->
|
||||
<div id='tab_BanEmails_content'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th width='1%'> </th>
|
||||
<th width='20%'>{$this->lang->words['ban_email']}</th>
|
||||
<th width='55%'>{$this->lang->words['ban_form_reason']}</th>
|
||||
<th width='24%'>{$this->lang->words['ban_added_on']}</th>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
if( is_array( $emails ) && count( $emails ) )
|
||||
{
|
||||
foreach( $emails as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td width='1%'>{$r['_checkbox']}</td>
|
||||
<td width='80%'>{$r['ban_content']}</td>
|
||||
<td width='20%'>{$r['_date']}</td>
|
||||
</tr>
|
||||
$checkbox = $canRemove ? "<input type='checkbox' name='banid_{$r['ban_id']}' value='1' />" : '';
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td>{$checkbox}</td>
|
||||
<td>{$r['ban_content']}</td>
|
||||
<td>{$r['ban_reason']}</td>
|
||||
<td>{$r['_date']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='3'>{$this->lang->words['ban_emails_none']}</td>
|
||||
</tr>
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='4'>{$this->lang->words['ban_emails_none']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<th colspan='3'>{$this->lang->words['ban_names']}</th>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- NAMES -->
|
||||
<div id='tab_BanNames_content'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th width='1%'> </th>
|
||||
<th width='15%'>{$this->lang->words['ban_name']}</th>
|
||||
<th width='60%'>{$this->lang->words['ban_form_reason']}</th>
|
||||
<th width='24%'>{$this->lang->words['ban_added_on']}</th>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
if( is_array( $names ) && count( $names ) )
|
||||
{
|
||||
foreach( $names as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td width='1%'>{$r['_checkbox']}</td>
|
||||
<td width='80%'>{$r['ban_content']}</td>
|
||||
<td width='20%'>{$r['_date']}</td>
|
||||
</tr>
|
||||
$checkbox = $canRemove ? "<input type='checkbox' name='banid_{$r['ban_id']}' value='1' />" : '';
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td>{$checkbox}</td>
|
||||
<td>{$r['ban_content']}</td>
|
||||
<td>{$r['ban_reason']}</td>
|
||||
<td>{$r['_date']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='4'>{$this->lang->words['ban_names_none']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='3'>{$this->lang->words['ban_names_none']}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<script type='text/javascript'>
|
||||
jQ("#tabstrip_banForm").ipsTabBar({ tabWrap: "#tabstrip_banForm_content" });
|
||||
</script>
|
||||
</div>
|
||||
HTML;
|
||||
|
||||
if ( $canRemove )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['ban_deletebutton']}' class='realbutton redbutton' />
|
||||
</div>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['ban_deletebutton']}' class='realbutton redbutton' />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script type='text/javascript'>
|
||||
$('ban-delete').observe( 'submit', function( e ){
|
||||
var checkboxes = $('ban-delete').getElementsByTagName( 'input' );
|
||||
|
||||
for( var i = 0; i < checkboxes.length; i++ )
|
||||
{
|
||||
if( checkboxes[i].checked )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
alert( '{$this->lang->words['no_ban_to_delete']}' );
|
||||
|
||||
Event.stop( e );
|
||||
});
|
||||
|
||||
ipb.templates['add_banfilter'] = "<div class='acp-box'><h3>{$this->lang->words['ban_addnew']}</h3><form action='{$this->settings['base_url']}{$this->form_code}do=ban_add' method='post'><table class='ipsTable double_pad'><tr><td class='field_title' style='min-width:100px;'><strong class='title'>{$this->lang->words['ban_form_type']}</strong></td><td class='field_field'>{$ban['bantype']}</td></tr><tr><td class='field_title' style='min-width:100px;'><strong class='title'>{$this->lang->words['ban_form_filter']}</strong></td><td class='field_field'>{$ban['bantext']}<br /><span class='desctext'>{$this->lang->words['ban_form_filter_desc']}</span></td></tr><tr><td class='field_title' style='min-width:100px;'><strong class='title'>{$this->lang->words['ban_form_reason']}</strong></td><td class='field_field'>{$ban['banreason']}<br /><span class='desctext'>{$this->lang->words['ban_form_reason_desc']}</span></td></tr></table><div class='acp-actionbar'><input type='submit' value='{$this->lang->words['ban_addnew']}' class='button primary' /></div></form></div>";
|
||||
</script>
|
||||
HTML;
|
||||
|
||||
|
||||
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP bulk mail skin file
|
||||
* Last Updated: $Date: 2010-09-29 20:23:38 -0400 (Wed, 29 Sep 2010) $
|
||||
* Last Updated: $Date: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: ips_terabyte $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6925 $
|
||||
* @version $Rev: 8644 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_bulkmail extends output
|
||||
class cp_skin_bulkmail
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Bulk mail start
|
||||
*
|
||||
* @access public
|
||||
* @param array Mail data
|
||||
* @param int Number of members to send this to
|
||||
* @return string HTML
|
||||
@@ -48,7 +78,7 @@ $IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='information-box'>
|
||||
<h4><img src='{$this->settings['skin_acp_url']}/_newimages/icons/bullet_error.png' />{$this->lang->words['bulkmail_notes_tl']}</h4>
|
||||
<h3><strong>{$this->lang->words['bulkmail_notes_tl']}</strong></h3>
|
||||
{$this->lang->words['bulkmail_notes_info']}
|
||||
</div>
|
||||
<br />
|
||||
@@ -61,7 +91,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$countmembers}</h3>
|
||||
|
||||
<table class='form_table double_pad alternate_rows' cellspacing='0' cellpadding='0'>
|
||||
<table class='ipsTable double_pad' cellspacing='0' cellpadding='0'>
|
||||
<tr>
|
||||
<th colspan='2'>{$this->lang->words['b_maildetails']}</th>
|
||||
</tr>
|
||||
@@ -91,9 +121,9 @@ $IPBHTML .= <<<HTML
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class='acp-actionbar'>
|
||||
{$this->lang->words['b_percycle']} <input type='text' class='realbutton' size='5' name='pergo' value='20' /> <input type='submit' value='{$this->lang->words['b_mailbutton']}' class='realbutton' />
|
||||
<div class='acp-actionbar'>
|
||||
{$this->lang->words['b_percycle']} <input type='text' class='input_text' size='5' name='pergo' value='20' /> <input type='submit' value='{$this->lang->words['b_mailbutton']}' class='realbutton' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
HTML;
|
||||
@@ -105,7 +135,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Bulk mail form
|
||||
*
|
||||
* @access public
|
||||
* @param string Type (add|edit)
|
||||
* @param array Mail data
|
||||
* @param string Mail content
|
||||
@@ -188,7 +217,7 @@ $IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='information-box'>
|
||||
<h4><img src='{$this->settings['skin_acp_url']}/_newimages/icons/bullet_error.png' />{$this->lang->words['bulkmail_notes_tl']}</h4>
|
||||
<h3><strong>{$this->lang->words['bulkmail_notes_tl']}</strong></h3>
|
||||
{$this->lang->words['bulkmail_notes_info']}
|
||||
</div>
|
||||
<br />
|
||||
@@ -223,33 +252,29 @@ function runpreview()
|
||||
<div class='acp-box'>
|
||||
<h3>{$title}</h3>
|
||||
|
||||
<table class='form_table double_pad alternate_rows' cellspacing='0' cellpadding='0'>
|
||||
<table class='ipsTable double_pad' cellspacing='0' cellpadding='0'>
|
||||
<tr>
|
||||
<th colspan='2'>{$this->lang->words['b_step1_title']}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width: 40%;'>
|
||||
<label>{$this->lang->words['b_subject']}</label>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['b_subject']}</strong>
|
||||
</td>
|
||||
<td style='width: 60%'>
|
||||
<td class='field_field'>
|
||||
{$form['mail_subject']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2'>
|
||||
<label>{$this->lang->words['b_content']}</label>
|
||||
<br />
|
||||
<div style='margin-top: 10px; margin-left: 15px;'>{$form['mail_content']}</div>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['b_content']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$form['mail_content']}<br />
|
||||
<p style='margin-top: 5px' class='desctext'>
|
||||
{$form['mail_html']} {$this->lang->words['b_html']}
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['b_html']}</label>
|
||||
</td>
|
||||
<td>
|
||||
{$form['mail_html']}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<br />
|
||||
@@ -257,53 +282,53 @@ function runpreview()
|
||||
<h3>{$this->lang->words['b_step2']}</h3>
|
||||
|
||||
<div style='width: 100%;'>
|
||||
<table class='form_table double_pad alternate_rows' cellspacing='0' cellpadding='0'>
|
||||
<table class='ipsTable double_pad' cellspacing='0' cellpadding='0'>
|
||||
<tr>
|
||||
<th colspan='2'>{$this->lang->words['b_addfilters']}</th>
|
||||
<th>{$this->lang->words['b_groups']}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width: 40%;'>
|
||||
<label>{$this->lang->words['b_nposts']}</label><br />
|
||||
<span class='desctext'>{$this->lang->words['b_leaveblank']}</span>
|
||||
<td class='field_title' style='width: 25%; max-width: 280px; min-width: 230px;'>
|
||||
<strong class='title'>{$this->lang->words['b_nposts']}</strong>
|
||||
</td>
|
||||
<td style='width: 30%'>
|
||||
{$form['mail_post_ltmt']} {$form['mail_filter_post']}
|
||||
<td class='field_field' style='width: 40%'>
|
||||
{$form['mail_post_ltmt']} {$form['mail_filter_post']}<br />
|
||||
<span class='desctext'>{$this->lang->words['b_leaveblank']}</span>
|
||||
</td>
|
||||
<td style='width: 30%;' rowspan='3'>
|
||||
<td style='width: 30%; line-height: 1.5; vertical-align: top' class='larger_text' rowspan='3'>
|
||||
{$form['groups']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['b_ndays']}</label><br />
|
||||
<span class='desctext'>{$this->lang->words['b_leaveblank']}</span>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['b_ndays']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
{$form['mail_visit_ltmt']} {$form['mail_filter_visit']}
|
||||
<td class='field_field'>
|
||||
{$form['mail_visit_ltmt']} {$form['mail_filter_visit']}<br />
|
||||
<span class='desctext'>{$this->lang->words['b_leaveblank']}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['b_njoined']}</label><br />
|
||||
<span class='desctext'>{$this->lang->words['b_leaveblank']}</span>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['b_njoined']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
{$form['mail_joined_ltmt']} {$form['mail_filter_joined']}
|
||||
<td class='field_field'>
|
||||
{$form['mail_joined_ltmt']} {$form['mail_filter_joined']}<br />
|
||||
<span class='desctext'>{$this->lang->words['b_leaveblank']}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class='acp-actionbar'>
|
||||
<input class='realbutton' onclick='runpreview()' type='button' value='{$this->lang->words['b_preview']}' /> <input class='realbutton' type='submit' value='{$button}' />
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<div class='acp-actionbar'>
|
||||
<input class='realbutton' onclick='runpreview()' type='button' value='{$this->lang->words['b_preview']}' /> <input class='realbutton' type='submit' value='{$button}' />
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class='information-box'>
|
||||
<h4>{$this->lang->words['b_qtag']}</h4>
|
||||
<h3><strong>{$this->lang->words['b_qtag']}</strong></h3>
|
||||
{$this->lang->words['b_qtag_info']}
|
||||
<br /><br />
|
||||
<table width='100%'>
|
||||
@@ -349,7 +374,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* HTML to show inside preview iframe
|
||||
*
|
||||
* @access public
|
||||
* @param string Content
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -380,7 +404,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* HTML to show in popup
|
||||
*
|
||||
* @access public
|
||||
* @return string HTML
|
||||
*/
|
||||
public function mailPopupContent() {
|
||||
@@ -425,7 +448,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Saved bulk mails overview
|
||||
*
|
||||
* @access public
|
||||
* @param string Content
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -436,20 +458,20 @@ $IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='information-box'>
|
||||
<h4><img src='{$this->settings['skin_acp_url']}/_newimages/icons/bullet_error.png' />{$this->lang->words['bulkmail_notes_tl']}</h4>
|
||||
<h3><strong>{$this->lang->words['bulkmail_notes_tl']}</strong></h3>
|
||||
{$this->lang->words['bulkmail_notes_info']}
|
||||
</div>
|
||||
<br />
|
||||
<div class='section_title'>
|
||||
<h2>{$this->lang->words['b_title']}</h2>
|
||||
<ul class='context_menu'>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}&do=mail_new'><img src='{$this->settings['skin_acp_url']}/_newimages/icons/add.png' alt='' /> {$this->lang->words['b_create']}</a></li>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}&do=mail_new'><img src='{$this->settings['skin_acp_url']}/images/icons/add.png' alt='' /> {$this->lang->words['b_create']}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['b_stored']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='1%'> </th>
|
||||
<th width='30%'>{$this->lang->words['b_lsubject']}</th>
|
||||
@@ -469,7 +491,7 @@ HTML;
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='6' class='no_items'>{$this->lang->words['b_nobulk']}</td>
|
||||
<td colspan='6' class='no_messages'>{$this->lang->words['b_nobulk']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
@@ -491,7 +513,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Bulk mail row
|
||||
*
|
||||
* @access public
|
||||
* @param array Mail data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -525,23 +546,28 @@ else
|
||||
|
||||
if ( $r['mail_active'] )
|
||||
{
|
||||
$inprogress = " <em>( {$this->lang->words['b_inprogress']} - <a href='#' class='cancel' onclick=\"acp.confirmDelete('{$this->settings['base_url']}&{$this->form_code_js}&do=mail_send_cancel', '{$this->lang->words['b_cancelconfirm']}'); return false;\">{$this->lang->words['b_cancel']}</a> )</em>";
|
||||
$inprogress = " ( {$this->lang->words['b_inprogress']} - <a href='#' class='ipsBadge badge_red' onclick=\"acp.confirmDelete('{$this->settings['base_url']}&{$this->form_code_js}&do=mail_send_cancel', '{$this->lang->words['b_cancelconfirm']}'); return false;\">{$this->lang->words['b_cancel']}</a> )";
|
||||
}
|
||||
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><img src='{$this->settings['skin_acp_url']}/_newimages/icons/email.png' /></td>
|
||||
<td><b>{$r['mail_subject']}</b> {$inprogress}</td>
|
||||
<tr class='ipsControlRow'>
|
||||
<td><img src='{$this->settings['skin_acp_url']}/images/icons/email.png' /></td>
|
||||
<td><b><a href='{$this->settings['base_url']}&{$this->form_code}&do=mail_edit&id={$r['mail_id']}' title='{$this->lang->words['b_editdot']}'>{$r['mail_subject']}</a></b> {$inprogress}</td>
|
||||
<td>{$r['_mail_start']}</td>
|
||||
<td>{$r['_mail_sentto']}</td>
|
||||
<td>{$time_taken}</td>
|
||||
<td>
|
||||
<img id='mid-{$r['mail_id']}' src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['b_options']}' class='ipbmenu' />
|
||||
<ul class='acp-menu' id='mid-{$r['mail_id']}_menucontent'>
|
||||
<li class='icon info'><a href='{$this->settings['base_url']}&{$this->form_code}&do=mail_send_start&id={$r['mail_id']}'>{$this->lang->words['b_resenddot']}</a></li>
|
||||
<li class='icon edit'><a href='{$this->settings['base_url']}&{$this->form_code}&do=mail_edit&id={$r['mail_id']}'>{$this->lang->words['b_editdot']}</a></li>
|
||||
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=mail_delete&id={$r['mail_id']}");'>{$this->lang->words['b_deletedot']}</a></li>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_refresh'>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do=mail_send_start&id={$r['mail_id']}' title='{$this->lang->words['b_resenddot']}'>{$this->lang->words['b_resenddot']}</a>
|
||||
</li>
|
||||
<li class='i_edit'>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do=mail_edit&id={$r['mail_id']}' title='{$this->lang->words['b_editdot']}'>{$this->lang->words['b_editdot']}</a>
|
||||
</li>
|
||||
<li class='i_delete'>
|
||||
<a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=mail_delete&id={$r['mail_id']}");' title='{$this->lang->words['b_deletedot']}'>{$this->lang->words['b_deletedot']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP member forms skin file
|
||||
* Last Updated: $Date: 2010-09-24 21:21:39 -0400 (Fri, 24 Sep 2010) $
|
||||
* Last Updated: $Date: 2011-09-20 18:16:05 -0400 (Tue, 20 Sep 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: rtissier $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6915 $
|
||||
* @version $Rev: 9519 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_member_form extends output
|
||||
class cp_skin_member_form
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ban member dhtml window
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @param array Form data
|
||||
* @return string HTML
|
||||
@@ -48,59 +78,80 @@ $IPBHTML .= <<<EOF
|
||||
<form action='{$this->settings['base_url']}&module=members&section=members&do=ban_member&member_id={$member['member_id']}' method='post'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['sm_banmanage']}</h3>
|
||||
<ul class='acp-form modal-overflow'>
|
||||
<li>
|
||||
{$form['member']}
|
||||
{$this->lang->words['mf_banperm']}
|
||||
</li>
|
||||
<li>
|
||||
{$form['groups_confirm']}
|
||||
{$this->lang->words['mf_movefrom']} '{$member['_group_title']}' {$this->lang->words['mf_to']}<br />
|
||||
<span style='margin-left: 25px;'>{$form['groups']}</span>
|
||||
</li>
|
||||
<li>
|
||||
{$form['email']}
|
||||
{$this->lang->words['mf_banemail']} '{$member['email']}'
|
||||
</li>
|
||||
<li>
|
||||
{$form['name']}
|
||||
{$this->lang->words['mf_banname']} '{$member['name']}'
|
||||
</li>
|
||||
<div class='fixed_inner'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mf_banperm']}</strong></td>
|
||||
<td class='field_field'>{$form['member']}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mf_movefrom']} '{$member['_group_title']}' {$this->lang->words['mf_to']}</strong></td>
|
||||
<td class='field_field'>
|
||||
{$form['groups_confirm']}
|
||||
{$form['groups']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mf_banemail']} '{$member['email']}'</strong></td>
|
||||
<td class='field_field'>{$form['email']}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mf_banname']} '{$member['name']}'</strong></td>
|
||||
<td class='field_field'>{$form['name']}</td>
|
||||
</tr>
|
||||
EOF;
|
||||
if( $form['ips'] && count( $form['ips'] ) )
|
||||
{
|
||||
$IPBHTML .= "<li><label class='head'>{$this->lang->words['ipaddresses']}</label></li>";
|
||||
|
||||
foreach( $form['ips'] as $ip => $form_field )
|
||||
if( $form['ips'] && count( $form['ips'] ) )
|
||||
{
|
||||
$IPBHTML .= <<<EOF
|
||||
<li style='padding-left: 25px;'>
|
||||
{$form_field}
|
||||
{$this->lang->words['mf_banip']} '{$ip}'
|
||||
</li>
|
||||
<tr><th colspan='2'>{$this->lang->words['ipaddresses']}</tr>
|
||||
</table>
|
||||
<div style='max-height: 150px; overflow: auto;'>
|
||||
<table class='ipsTable double_pad'>
|
||||
EOF;
|
||||
|
||||
foreach( $form['ips'] as $ip => $form_field )
|
||||
{
|
||||
$IPBHTML .= <<<EOF
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mf_banip']} '{$ip}'</strong></td>
|
||||
<td class='field_field'>{$form_field}</td>
|
||||
</tr>
|
||||
EOF;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
</table>
|
||||
</div>
|
||||
<table class='ipsTable double_pad'>
|
||||
EOF;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<li>
|
||||
{$form['note']}
|
||||
{$this->lang->words['mf_addnote']} <span style='font-weight:normal;'>[<a href='#' onclick="return acp.openWindow('{$this->settings['board_url']}/index.php?app=members&module=warn&section=warn&mid={$member['member_id']}&do=view&popup=1','980','600'); return false;">{$this->lang->words['mf_viewnotes']}</a>]</span>
|
||||
<br />
|
||||
<div style='margin-top: 5px'>{$form['note_field']}</div>
|
||||
</li>
|
||||
<li>
|
||||
<a href='{$this->settings['base_url']}&module=members&section=members&do=banmember&member_id={$member['member_id']}'>{$this->lang->words['mf_clickhere']}</a> {$this->lang->words['mf_tosuspend']}<br />
|
||||
{$this->lang->words['mf_justor']} <a href='#' onclick="new Effect.Fade( $('inlineFormWrap'), {duration: 0.3} ); acp.members.goToTab( 'tabtab-MEMBERS|7' ); return false;">{$this->lang->words['mf_clickhere']}</a> {$this->lang->words['mf_topostrestrict']}
|
||||
</li>
|
||||
</ul>
|
||||
$IPBHTML .= <<<EOF
|
||||
<tr>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['mf_addnote']} <span style='font-weight:normal;'>[<a href='#' onclick="return acp.openWindow('{$this->settings['board_url']}/index.php?app=core&module=modcp&section=editmember&mid={$member['member_id']}&do=view&popup=1','980','600'); return false;">{$this->lang->words['mf_viewnotes']}</a>]</span></strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$form['note']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2'>
|
||||
<div align='center'>{$form['note_field']}</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2'><a href='{$this->settings['base_url']}&module=members&section=members&do=banmember&member_id={$member['member_id']}'>{$this->lang->words['mf_clickhere']}</a> {$this->lang->words['mf_tosuspend']}<br />
|
||||
{$this->lang->words['mf_justor']} <a href='#' onclick="new Effect.Fade( $('inlineFormWrap'), {duration: 0.3} ); acp.members.goToTab( 'tab_MEMBERS_7' ); return false;">{$this->lang->words['mf_clickhere']}</a> {$this->lang->words['mf_topostrestrict']}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value=' {$this->lang->words['mf_alterban']} ' class='realbutton' />
|
||||
<input type='submit' value='{$this->lang->words['mf_alterban']}' class='button primary' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
EOF;
|
||||
|
||||
return $IPBHTML;
|
||||
@@ -109,7 +160,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Edit email dhtml window
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -118,29 +168,20 @@ public function inline_email( $member )
|
||||
$IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<script type='text/javascript'>
|
||||
acp.members.fields['MF__email'] = {};
|
||||
acp.members.fields['MF__email']['fields'] = $A(['email']);
|
||||
acp.members.fields['MF__email']['url'] = "app=members&module=ajax&section=editform&do=save_email&member_id={$member['member_id']}";
|
||||
acp.members.fields['MF__email']['callback'] = function( t, json ){
|
||||
$('MF__email').innerHTML = json['email'];
|
||||
new Effect.Pulsate( $('MF__email'), { pulses: 3 } );
|
||||
}
|
||||
</script>
|
||||
|
||||
<form action='{$this->settings['base_url']}&module=members&section=editform&do=save_email&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['mem_ajfo_email']}</h3>
|
||||
<ul class='acp-form'>
|
||||
<li>
|
||||
<label for='email'>{$this->lang->words['mem_ajfo_email1']}</label>
|
||||
<input type='text' size='30' id='email' name='email' value="{$member['email']}" class='input_text' />
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_ajfo_email1']}</strong></td>
|
||||
<td class='field_field'><input type='text' size='30' id='email' name='email' value="{$member['email']}" class='input_text' /></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='realbutton' id='MF__email_save' />
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='button primary' />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
EOF;
|
||||
|
||||
return $IPBHTML;
|
||||
@@ -150,7 +191,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Upload photo dhtml window
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -161,18 +201,18 @@ $IPBHTML = "";
|
||||
$IPBHTML .= <<<EOF
|
||||
|
||||
<form action='{$this->settings['base_url']}&module=members&section=members&do=new_photo&member_id={$member['member_id']}' method='post' enctype='multipart/form-data'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['mem_ajfo_photo']}</h3>
|
||||
<ul class='acp-form'>
|
||||
<li>
|
||||
<label for='upload_photo'>{$this->lang->words['mf_newphoto']}</label>
|
||||
<input type='file' size='30' id='upload_photo' name='upload_photo' />
|
||||
</li>
|
||||
</ul>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='realbutton' />
|
||||
</div>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['mem_ajfo_photo']}</h3>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mf_newphoto']}</strong></td>
|
||||
<td class='field_field'><input type='file' size='30' id='upload_photo' name='upload_photo' /></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='button primary' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
EOF;
|
||||
|
||||
@@ -183,7 +223,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Edit password dhtml window
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -196,36 +235,29 @@ $_form_new_pepper = ipsRegistry::getClass('output')->formYesNo( "new_key" ,
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
|
||||
<script type='text/javascript'>
|
||||
acp.members.fields['MF__password'] = {};
|
||||
acp.members.fields['MF__password']['fields'] = $A(['password', 'password2', 'new_salt', 'new_key']);
|
||||
acp.members.fields['MF__password']['bypass'] = true;
|
||||
</script>
|
||||
|
||||
<form action='{$this->settings['base_url']}&module=ajax&section=editform&do=save_password&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<form action='{$this->settings['base_url']}&module=members&section=editform&do=save_password&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['mem_ajfo_password']}</h3>
|
||||
<ul class='acp-form'>
|
||||
<li>
|
||||
<label for='password'>{$this->lang->words['mem_ajfo_password1']}</label>
|
||||
<input type='password' size='30' id='password' name='password' class='input_text' />
|
||||
</li>
|
||||
<li>
|
||||
<label for='password2'>{$this->lang->words['mem_ajfo_password2']}</label>
|
||||
<input type='password' size='30' id='password2' name='password2' class='input_text' />
|
||||
</li>
|
||||
<li>
|
||||
<label for='new_key'>{$this->lang->words['mem_afjo_new_key']}<br /><span class='desctext'>{$this->lang->words['mem_afjo_new_key_desc']}</span></label>
|
||||
{$_form_new_pepper}
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<label for='new_key'>{$this->lang->words['mem_afjo_new_salt']}</label>
|
||||
{$_form_new_salt}
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_ajfo_password1']}</strong></td>
|
||||
<td class='field_field'><input type='password' size='30' id='password' name='password' class='input_text' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_ajfo_password2']}</strong></td>
|
||||
<td class='field_field'><input type='password' size='30' id='password2' name='password2' class='input_text' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_afjo_new_key']}</strong></td>
|
||||
<td class='field_field'>{$_form_new_pepper}<br /><span class='desctext'>{$this->lang->words['mem_afjo_new_key_desc']}</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_afjo_new_salt']}</strong></td>
|
||||
<td class='field_field'>{$_form_new_salt}</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='realbutton' id='MF__password_save' />
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='button primary' id='MF__password_save' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -238,7 +270,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Change name dhtml window
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -250,35 +281,24 @@ $_form_send_email = ipsRegistry::getClass('output')->formYesNo( "send_email"
|
||||
$_form_email_contents = ipsRegistry::getClass('output')->formTextarea( "email_contents", $this->lang->words['mem_afjo_email_contents'] );
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<script type='text/javascript'>
|
||||
acp.members.fields['MF__name'] = {};
|
||||
acp.members.fields['MF__name']['fields'] = $A(['name', 'send_email', 'email_contents']);
|
||||
acp.members.fields['MF__name']['bypass'] = true;
|
||||
</script>
|
||||
|
||||
<form action='{$this->settings['base_url']}&module=ajax&section=editform&do=save_name&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<form action='{$this->settings['base_url']}&module=members&section=editform&do=save_name&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['mem_edit_login_name']}</h3>
|
||||
<ul class='acp-form'>
|
||||
<li>
|
||||
<label for='name'>{$this->lang->words['mem_ajfo_name']}</label>
|
||||
<input type='text' size='30' id='name' name='name' value='{$member['name']}' />
|
||||
</li>
|
||||
<li>
|
||||
<label for=''>{$this->lang->words['mem_afjo_send_email']}</label>
|
||||
{$_form_send_email}
|
||||
</li>
|
||||
<li style='text-align: center; padding: 10px;'>
|
||||
{$_form_email_contents}
|
||||
<br /><span class='desctext'>{$this->lang->words['mem_afjo_send_email_desc']}</span>
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_ajfo_name']}</strong></td>
|
||||
<td class='field_field'><input type='text' size='30' id='name' name='name' value='{$member['name']}' class='input_text' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_afjo_send_email']}</strong></td>
|
||||
<td class='field_field'>{$_form_send_email}<br /><br />{$_form_email_contents}<br /><span class='desctext'>{$this->lang->words['mem_afjo_send_email_desc']}</span></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='realbutton' id='MF__name_save' />
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='button primary' id='MF__name_save' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
EOF;
|
||||
|
||||
return $IPBHTML;
|
||||
@@ -288,7 +308,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Change display name dhtml window
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -297,24 +316,17 @@ public function inline_form_display_name( $member )
|
||||
$IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
|
||||
<script type='text/javascript'>
|
||||
acp.members.fields['MF__member_display_name'] = {};
|
||||
acp.members.fields['MF__member_display_name']['fields'] = $A(['display_name']);
|
||||
acp.members.fields['MF__member_display_name']['bypass'] = true;
|
||||
</script>
|
||||
|
||||
<form action='{$this->settings['base_url']}&module=ajax&section=editform&do=save_display_name&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<form action='{$this->settings['base_url']}&module=members&section=editform&do=save_display_name&member_id={$member['member_id']}&secure_key={$this->member->form_hash}' method='post'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['mem_edit_display_name']}</h3>
|
||||
<ul class='acp-form'>
|
||||
<li>
|
||||
<label for='name'>{$this->lang->words['mem_display_name']}</label>
|
||||
<input type='text' size='30' id='display_name' name='display_name' value='{$member['members_display_name']}' />
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['mem_display_name']}</strong></td>
|
||||
<td class='field_field'><input type='text' size='30' id='display_name' name='display_name' value='{$member['members_display_name']}' class='input_text' /></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='realbutton' id='MF__member_display_name_save' />
|
||||
<input type='submit' value='{$this->lang->words['mf_save']}' class='button primary' id='MF__member_display_name_save' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP notification config skin file
|
||||
* Last Updated: $Date: 2010-06-17 17:00:56 -0400 (Thu, 17 Jun 2010) $
|
||||
* Last Updated: $Date: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: josh $
|
||||
* @author $Author: ips_terabyte $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6551 $
|
||||
* @version $Rev: 8644 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_notifications extends output
|
||||
class cp_skin_notifications
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form to configure notification defaults
|
||||
*
|
||||
* @access public
|
||||
* @param array Application notification options
|
||||
* @param array Current configuration
|
||||
* @return string HTML
|
||||
@@ -52,7 +82,7 @@ $IPBHTML .= <<<HTML
|
||||
<h3>{$this->lang->words['notifications_config_title']}</h3>
|
||||
<form method='post' action='{$this->settings['base_url']}{$this->form_code}&do=save'>
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->adminFunctions->_admin_auth_key}' />
|
||||
<table width='100%' class='alternate_rows double_pad'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th>{$this->lang->words['notificationtype_h']}</th>
|
||||
<th>{$this->lang->words['notificationdfs_h']}</th>
|
||||
@@ -61,8 +91,7 @@ $IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
$_options = array(
|
||||
array( 'pm', $this->lang->words['notopt__pm'] ),
|
||||
$_options = array(
|
||||
array( 'email', $this->lang->words['notopt__email'] ),
|
||||
array( 'inline', $this->lang->words['notopt__inline'] ),
|
||||
array( 'mobile', $this->lang->words['notopt__mobile'] )
|
||||
@@ -78,8 +107,8 @@ foreach( $options as $option )
|
||||
$_thisConfig['disabled'] = $option['disabled'];
|
||||
}
|
||||
|
||||
$_defaultOpt = $this->registry->output->formMultiDropdown( 'default_' . $option['key'] . '[]', $_options, $_thisConfig['selected'], 4, 'default_' . $option['key'] );
|
||||
$_disabledOpt = $this->registry->output->formMultiDropdown( 'disabled_' . $option['key'] . '[]', $_options, $_thisConfig['disabled'], 4,'disabled_' . $option['key'] );
|
||||
$_defaultOpt = $this->registry->output->formMultiDropdown( 'default_' . $option['key'] . '[]', $_options, $_thisConfig['selected'], 3, 'default_' . $option['key'] );
|
||||
$_disabledOpt = $this->registry->output->formMultiDropdown( 'disabled_' . $option['key'] . '[]', $_options, $_thisConfig['disabled'], 3,'disabled_' . $option['key'] );
|
||||
$_disableOver = $this->registry->output->formYesNo( 'disable_override_' . $option['key'], intval($_thisConfig['disable_override']) );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP permissions skin file
|
||||
* Last Updated: $Date: 2010-05-19 21:06:53 -0400 (Wed, 19 May 2010) $
|
||||
* Last Updated: $Date: 2011-09-02 20:55:33 -0400 (Fri, 02 Sep 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6326 $
|
||||
* @version $Rev: 9450 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_permissions extends output
|
||||
class cp_skin_permissions
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Confirmation page that perm set was removed
|
||||
*
|
||||
* @access public
|
||||
* @param string Name
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -44,10 +74,11 @@ $IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='tableheaderalt'>{$this->lang->words['per_result']}</div>
|
||||
<table width='100%' align='center'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['per_result']}</h3>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td class='tablerow1' width='100%' valign='middle'>{$this->lang->words['per_removecustom']}<b>{$name}</b>.</td>
|
||||
<td valign='middle'>{$this->lang->words['per_removecustom']}<b>{$name}</b>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -60,7 +91,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Show users assigned to the perm mask
|
||||
*
|
||||
* @access public
|
||||
* @param integer Perm mask id
|
||||
* @param string Permission set name
|
||||
* @param array Users with this mask
|
||||
@@ -72,13 +102,13 @@ $IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='tableborder'>
|
||||
<div class='tableheaderalt'>{$this->lang->words['per_membersusing']}{$set}</div>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['per_membersusing']}{$set}</h3>
|
||||
|
||||
<table width='100%' align='center'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td class='tablesubheader' width='50%' align='center'>{$this->lang->words['per_userdetail']}</td>
|
||||
<td class='tablesubheader' width='50%' align='center'>{$this->lang->words['per_action']}</td>
|
||||
<th width='50%'>{$this->lang->words['per_userdetail']}</th>
|
||||
<th width='50%'>{$this->lang->words['per_action']}</th>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
@@ -93,16 +123,16 @@ foreach( $rows as $r )
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td class='tablerow1' width='50%' valign='middle'>
|
||||
<td width='50%' style='vertical-align: top;'>
|
||||
<div style='font-weight:bold;font-size:11px;padding-bottom:6px;margin-bottom:3px;border-bottom:1px solid #000'>{$r['members_display_name']}</div>
|
||||
• {$this->lang->words['per_posts']}{$r['posts']}<br />
|
||||
• {$this->lang->words['per_email']}{$r['email']}
|
||||
{$also_using}
|
||||
</td>
|
||||
|
||||
<td class='tablerow2' width='50%' valign='middle'>
|
||||
<td width='50%' style='vertical-align: top;'>
|
||||
• <a href='{$this->settings['base_url']}{$this->form_code}do=remove_mask&id={$r['member_id']}&pid={$perm_id}' title='{$this->lang->words['per_removethis']}'>{$this->lang->words['per_removethisset']}</a><br />
|
||||
• <a href='{$this->settings['base_url']}{$this->form_code}do=remove_mask&id={$r['member_id']}&pid=all' title='{$this->lang->words['per_removeall']}'>{$this->lang->words['per_removeall']}</a><br /><br />
|
||||
• <a href='{$this->settings['base_url']}{$this->form_code}do=remove_mask&id={$r['member_id']}&pid=all' title='{$this->lang->words['per_removeall']}'>{$this->lang->words['per_removeall']}</a>
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
@@ -120,14 +150,15 @@ return $IPBHTML;
|
||||
/**
|
||||
* Permissions matrix
|
||||
*
|
||||
* @access public
|
||||
* @param array Permission names
|
||||
* @param array Compiled grids
|
||||
* @param array Permissions checked
|
||||
* @param array Colors
|
||||
* @param string Type
|
||||
* @param boolean $addOutsideBox Add or not the outside acp-box
|
||||
* @return string HTML
|
||||
*/
|
||||
public function permissionMatrix( $perm_names, $perm_matrix, $perm_checked, $colors )
|
||||
public function permissionMatrix( $perm_names, $perm_matrix, $perm_checked, $colors, $type, $addOutsideBox=true )
|
||||
{
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
@@ -135,90 +166,96 @@ $IPBHTML = "";
|
||||
$cols = count( $perm_names ) + 1;
|
||||
$width = ceil( 83 / count( $perm_names ) );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
$IPBHTML .= $addOutsideBox ? "<div class='acp-box'>" : '';
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['frm_enterthematrix']}</h3>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.permissions2.js'></script>
|
||||
$IPBHTML .= <<<HTML
|
||||
<!--<h3>{$this->lang->words['frm_enterthematrix']}</h3>-->
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.permissions2.js'></script>
|
||||
|
||||
<table class='ipsTable permission_table' id='perm_matrix'>
|
||||
<tr>
|
||||
<th style='width: 13%'> </th>
|
||||
HTML;
|
||||
|
||||
foreach( $perm_names as $k => $v )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<th style='width: {$width}%; text-align: center;'>{$v}</td>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='section' colspan='{$cols}'>{$this->lang->words['frm_global']}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='off'> </td>
|
||||
HTML;
|
||||
|
||||
$col_num = 0;
|
||||
|
||||
foreach( $perm_names as $k => $v )
|
||||
{
|
||||
$col_num++;
|
||||
$IPBHTML .= <<<HTML
|
||||
<!-- Check an entire column -->
|
||||
<td style='background-color:{$colors[$k]}' class='perm column' id='column_{$col_num}'>
|
||||
{$v}<br />
|
||||
<input type='checkbox' name='perms[{$type}{$k}][*]' id='col_{$col_num}' value='1'{$perm_checked['*'][$k]}>
|
||||
</td>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
$row_num = 0;
|
||||
|
||||
foreach( $perm_matrix as $set => $row )
|
||||
{
|
||||
$set = explode( '%', $set );
|
||||
$row_num++;
|
||||
$col_num = 0;
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td class='section' colspan='{$cols}'><strong>{$set[1]}</strong></td>
|
||||
</tr>
|
||||
<tr id='forum{$type}_row_{$row_num}'>
|
||||
<td class='off'>
|
||||
<input type='button' id='forum_select_row_1_{$row_num}' value='+' class='select_row' />
|
||||
<input type='button' id='forum_select_row_0_{$row_num}' value='–' class='select_row' />
|
||||
</td>
|
||||
HTML;
|
||||
|
||||
foreach( $row as $key => $perm )
|
||||
{
|
||||
$col_num++;
|
||||
$IPBHTML .= <<<HTML
|
||||
<td class='perm' id='clickable_{$col_num}' style='background-color:{$colors[$key]}'>
|
||||
{$perm}<br />
|
||||
<input type='checkbox' name='perms[{$type}{$key}][{$set[0]}]' id='perm_{$row_num}_{$col_num}' value='1'{$perm_checked[$set[0]][$key]}>
|
||||
</td>
|
||||
HTML;
|
||||
}
|
||||
|
||||
<table class='permission_table' id='perm_matrix'>
|
||||
<tr>
|
||||
<th style='width: 13%'> </th>
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
HTML;
|
||||
foreach( $perm_names as $k => $v )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<th style='width: {$width}%; text-align: center;'>{$v}</td>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='section' colspan='{$cols}'>{$this->lang->words['frm_global']}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='off'> </td>
|
||||
HTML;
|
||||
$col_num = 0;
|
||||
foreach( $perm_names as $k => $v )
|
||||
{
|
||||
$col_num++;
|
||||
$IPBHTML .= <<<HTML
|
||||
<!-- Check an entire column -->
|
||||
<td style='background-color:{$colors[$k]}' class='perm column' id='column_{$col_num}'>
|
||||
{$v}<br />
|
||||
<input type='checkbox' name='perms[$k][*]' id='col_{$col_num}' value='1'{$perm_checked['*'][$k]}>
|
||||
</td>
|
||||
HTML;
|
||||
}
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
HTML;
|
||||
$row_num = 0;
|
||||
|
||||
foreach( $perm_matrix as $set => $row )
|
||||
{
|
||||
$set = explode( '%', $set );
|
||||
$row_num++;
|
||||
$col_num = 0;
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td class='section' colspan='{$cols}'><strong>{$set[1]}</strong></td>
|
||||
</tr>
|
||||
<tr id='forum_row_{$row_num}'>
|
||||
<td class='off'>
|
||||
<input type='button' id='forum_select_row_1_{$row_num}' value=' + ' class='select_row' />
|
||||
<input type='button' id='forum_select_row_0_{$row_num}' value=' – ' class='select_row' />
|
||||
</td>
|
||||
HTML;
|
||||
foreach( $row as $key => $perm )
|
||||
{
|
||||
$col_num++;
|
||||
$IPBHTML .= <<<HTML
|
||||
<td class='perm' id='clickable_{$col_num}' style='background-color:{$colors[$key]}'>
|
||||
{$perm}<br />
|
||||
<input type='checkbox' name='perms[{$key}][{$set[0]}]' id='perm_{$row_num}_{$col_num}' value='1'{$perm_checked[$set[0]][$key]}>
|
||||
</td>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</table>
|
||||
</div>
|
||||
$IPBHTML .= <<<HTML
|
||||
</table>
|
||||
|
||||
<script type='text/javascript'>
|
||||
var permissions = new acp.permissions( { 'form': 'adminform', 'table': 'perm_matrix', 'app': 'forum' } );
|
||||
var permissions = new acp.permissions( { 'form': 'adminform', 'table': 'perm_matrix', 'app': 'forum', 'typekey': '{$type}' } );
|
||||
var noShowAlert = false;
|
||||
</script>
|
||||
|
||||
HTML;
|
||||
|
||||
$IPBHTML .= $addOutsideBox ? '</div>' : '';
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
@@ -226,7 +263,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Permission set matrix
|
||||
*
|
||||
* @access public
|
||||
* @param array Perm names
|
||||
* @param array Perm grids
|
||||
* @param array Boxes to check
|
||||
@@ -243,7 +279,7 @@ $IPBHTML = "";
|
||||
if( !is_array( $perm_matrix ) || !count( $perm_matrix ) ){ return ''; }
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<table class='permission_table' id='perm_matrix_{$app}'>
|
||||
<table class='permission_table' id='perm_matrix_{$app}{$type}' style='width: 100%'>
|
||||
HTML;
|
||||
|
||||
if( is_array( $perm_names ) && count( $perm_names ) )
|
||||
@@ -264,8 +300,8 @@ HTML;
|
||||
$IPBHTML .= <<<HTML
|
||||
<td class='perm' style='background-color: {$colors[$key]}; width: {$col_width}%'>
|
||||
|
||||
<input type='button' id='{$app}_select_col_1_{$col_num}' value=' + ' class='select_col' />
|
||||
<input type='button' id='{$app}_select_col_0_{$col_num}' value=' – ' class='select_col' />
|
||||
<input type='button' id='{$app}{$type}_select_col_1_{$col_num}' value='+' class='select_col' />
|
||||
<input type='button' id='{$app}{$type}_select_col_0_{$col_num}' value='–' class='select_col' />
|
||||
</td>
|
||||
HTML;
|
||||
}
|
||||
@@ -290,10 +326,10 @@ $IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td style='padding: 0px;'>
|
||||
<table width='100%'>
|
||||
<tr id='{$app}_row_{$row_num}'>
|
||||
<tr id='{$app}{$type}_row_{$row_num}'>
|
||||
<td class='off' style='width: 13%; text-align: right;'>
|
||||
<input type='button' id='{$app}_select_row_1_{$row_num}' value=' + ' class='select_row' />
|
||||
<input type='button' id='{$app}_select_row_0_{$row_num}' value=' – ' class='select_row' />
|
||||
<input type='button' id='{$app}{$type}_select_row_1_{$row_num}' value='+' class='select_row' />
|
||||
<input type='button' id='{$app}{$type}_select_row_0_{$row_num}' value='–' class='select_row' />
|
||||
</td>
|
||||
HTML;
|
||||
|
||||
@@ -309,7 +345,7 @@ foreach( $perm_names as $key => $perm )
|
||||
$IPBHTML .= <<<HTML
|
||||
<td class='perm' style='background-color:{$colors[$key]}; width: {$col_width}%'>
|
||||
{$perm}<br />
|
||||
<input type='checkbox' id='{$app}_{$col_num}_{$row_num}' name='perms[{$app}][{$type}][{$key}][{$set[0]}]' value='1'{$perm_checked[$set[0]][$key]}>
|
||||
<input type='checkbox' id='{$app}{$type}_{$col_num}_{$row_num}' name='perms[{$app}][{$type}][{$key}][{$set[0]}]' value='1'{$perm_checked[$set[0]][$key]}>
|
||||
</td>
|
||||
HTML;
|
||||
}
|
||||
@@ -335,7 +371,7 @@ HTML;
|
||||
$IPBHTML .= <<<HTML
|
||||
</table>
|
||||
<script type='text/javascript'>
|
||||
perms["{$app}"] = new acp.permissions( { 'form': 'adminform', 'table': 'perm_matrix_{$app}', 'app': '{$app}' } );
|
||||
perms["{$app}{$type}"] = new acp.permissions( { 'form': 'adminform', 'table': 'perm_matrix_{$app}{$type}', 'app': '{$app}', 'typekey': '{$type}' } );
|
||||
</script>
|
||||
HTML;
|
||||
|
||||
@@ -346,7 +382,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Show dialog to advise user to apply group restrictions
|
||||
*
|
||||
* @access public
|
||||
* @return string HTML
|
||||
*/
|
||||
public function groupAdminConfirm( $group_id ) {
|
||||
@@ -355,17 +390,20 @@ $IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<!--SKINNOTE: Not yet skinned-->
|
||||
<div class='tableborder'>
|
||||
<div class='tableheaderalt'>{$this->lang->words['sm_configrest']}</div>
|
||||
<div class='tablerow1'>
|
||||
{$this->lang->words['sm_detectacp']}
|
||||
<br /><br />
|
||||
{$this->lang->words['sm_setrestrict']}
|
||||
</div>
|
||||
<div class='tablesubheader' align='center'>
|
||||
<span class='fauxbutton'><a href='{$this->settings['base_url']}&{$this->form_code}'>{$this->lang->words['sm_nothanks']}</a></span>
|
||||
<span class='fauxbutton'><a href='{$this->settings['base_url']}&module=restrictions&section=restrictions&do=acpperms-group-add-complete&entered_group={$group_id}'>{$this->lang->words['sm_yesplease']}</a></span>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['sm_configrest']}</h3>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td>
|
||||
<strong class='title'>{$this->lang->words['sm_detectacp']}</strong>
|
||||
<br /><br />
|
||||
{$this->lang->words['sm_setrestrict']}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<a class='button' href='{$this->settings['base_url']}&{$this->form_code}'>{$this->lang->words['sm_nothanks']}</a>
|
||||
<a class='button' href='{$this->settings['base_url']}&module=restrictions&section=restrictions&do=acpperms-group-add-complete&entered_group={$group_id}'>{$this->lang->words['sm_yesplease']}</a>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
@@ -378,7 +416,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Edit permissions mask
|
||||
*
|
||||
* @access public
|
||||
* @param string Set name
|
||||
* @param array Perm grids
|
||||
* @param integer Id
|
||||
@@ -392,14 +429,14 @@ $IPBHTML = "";
|
||||
$i = 1;
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<script type="text/javascript">
|
||||
<!--<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
document.observe("dom:loaded",function()
|
||||
{
|
||||
ipbAcpTabStrips.register('tab_perms');
|
||||
});
|
||||
//]]>
|
||||
</script>
|
||||
</script>-->
|
||||
|
||||
<div class='section_title'>
|
||||
<h2>{$set_name}</h2>
|
||||
@@ -412,39 +449,48 @@ ipbAcpTabStrips.register('tab_perms');
|
||||
<form action='{$this->settings['base_url']}{$this->form_code}do=do_edit_set&id={$this->request['id']}' method='post' id='adminform'>
|
||||
<input type='hidden' name='_from' value='{$this->request['_from']}' />
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['per_editset']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<div class='acp-box'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td>{$this->lang->words['per_setname']}</td>
|
||||
<td><input type='text' class='input' size='30' name='perm_name' value='{$set_name}' /></td>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['per_setname']}</strong></td>
|
||||
<td class='field_field'><input type='text' class='input_text' size='30' name='perm_name' value='{$set_name}' /></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
HTML;
|
||||
|
||||
foreach( $apps as $app => $type )
|
||||
foreach( $apps as $app => $types )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<input type='hidden' name='apps[{$app}][{$type}]' value='1' />
|
||||
foreach( $types as $type )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<input type='hidden' name='apps[{$app}][{$type}]' value='1' />
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->adminFunctions->getSecurityKey()}' />
|
||||
<ul id='tab_perms' class='tab_bar no_title'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['per_editset']}</h3>
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->adminFunctions->getSecurityKey()}' />
|
||||
<div id='tab_perms' class='ipsTabBar with_left with_right'>
|
||||
<span class='tab_left'>«</span>
|
||||
<span class='tab_right'>»</span>
|
||||
<ul>
|
||||
HTML;
|
||||
foreach( $perm_matricies as $type => $matrix )
|
||||
{
|
||||
if( !$matrix ){ continue; }
|
||||
$IPBHTML .= " <li id='tabtab-MEMBERS|" . $i ."' class=''>" . $type . "</li>";
|
||||
$IPBHTML .= " <li id='tab_members" . $i ."'>" . $type . "</li>";
|
||||
$i++;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</ul>
|
||||
</ul>
|
||||
</div>
|
||||
<div id='tab_perms_content'>
|
||||
HTML;
|
||||
|
||||
$i = 1;
|
||||
@@ -453,20 +499,24 @@ foreach( $perm_matricies as $type => $matrix )
|
||||
{
|
||||
if( !$matrix ){ continue; }
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
<div id='tabpane-MEMBERS|{$i}'>
|
||||
{$matrix}
|
||||
|
||||
</div>
|
||||
<div id='tab_members{$i}_content' class='ipsTabBar_content'>
|
||||
{$matrix}
|
||||
</div>
|
||||
HTML;
|
||||
$i++;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='acp-actionbar'><input type='submit' value='{$this->lang->words['frm_savechanges']}' class='realbutton' /></div>
|
||||
</div>
|
||||
<div class='acp-actionbar'><input type='submit' value='{$this->lang->words['frm_savechanges']}' class='realbutton' /></div>
|
||||
</div>
|
||||
<br style='clear: both' />
|
||||
</form>
|
||||
<br /><br /><br /><br /><br />
|
||||
<br />
|
||||
|
||||
<script type='text/javascript'>
|
||||
jQ("#tab_perms").ipsTabBar({ tabWrap: "#tab_perms_content" });
|
||||
</script>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
@@ -477,7 +527,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Mask splash page
|
||||
*
|
||||
* @access public
|
||||
* @param array Masks
|
||||
* @param string Dropdown lsit
|
||||
* @return string HTML
|
||||
@@ -495,7 +544,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['per_setname']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='20%'>{$this->lang->words['per_name']}</th>
|
||||
<th width='15%'>{$this->lang->words['per_usedgroups']}</th>
|
||||
@@ -508,10 +557,10 @@ HTML;
|
||||
foreach( $rows as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<tr class='ipsControlRow'>
|
||||
<td><strong>{$r['name']}</strong></td>
|
||||
<td>{$r['groups']}</td>
|
||||
<td align='right'>
|
||||
<td>
|
||||
HTML;
|
||||
if ( $r['mems'] > 0 )
|
||||
{
|
||||
@@ -527,27 +576,25 @@ HTML;
|
||||
}
|
||||
$IPBHTML .= <<<HTML
|
||||
</td>
|
||||
<td class='tablerow1' align='center'>
|
||||
<img id="menu{$r['id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['per_options']}' class='ipbmenu' />
|
||||
<ul class='acp-menu' id='menu{$r['id']}_menucontent'>
|
||||
<li class='icon edit'><a href='{$this->settings['base_url']}{$this->form_code}do=edit_set_form&id={$r['id']}'>{$this->lang->words['per_editset']}</a></li>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'><a href='{$this->settings['base_url']}{$this->form_code}do=edit_set_form&id={$r['id']}' title='{$this->lang->words['per_editset']}'>{$this->lang->words['per_editset']}</a></li>
|
||||
HTML;
|
||||
|
||||
if ( ! $r['isactive'] )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=delete_set&id={$r['id']}");'>{$this->lang->words['per_deleteset']}</a></li>
|
||||
<li class='i_delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=delete_set&id={$r['id']}");' title='{$this->lang->words['per_deleteset']}'>{$this->lang->words['per_deleteset']}</a></li>
|
||||
HTML;
|
||||
}
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li class='icon delete'>{$this->lang->words['per_inuse']}</li>
|
||||
<li class='i_delete disabled'><a href='#' onclick='return false;' title='{$this->lang->words['per_inuse']}'>{$this->lang->words['per_inuse']}</a></li>
|
||||
HTML;
|
||||
}
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
</ul>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
@@ -565,20 +612,18 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['per_createnew']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td>{$this->lang->words['per_setname']}</td>
|
||||
<td><input type='text' class='input' size='30' name='new_perm_name' /></td>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['per_setname']}</strong></td>
|
||||
<td class='field_field'><input type='text' class='input' size='30' name='new_perm_name' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$this->lang->words['per_baseon']}</td>
|
||||
<td><select name='new_perm_copy' class='dropdown'>{$dlist}</select></td>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['per_baseon']}</strong></td>
|
||||
<td class='field_field'><select name='new_perm_copy' class='dropdown'>{$dlist}</select></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' value='{$this->lang->words['per_createbutton']}' class='button primary' />
|
||||
</div>
|
||||
<input type='submit' value='{$this->lang->words['per_createbutton']}' class='button primary' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP profile fields skin file
|
||||
* Last Updated: $Date: 2010-09-27 18:18:35 -0400 (Mon, 27 Sep 2010) $
|
||||
* Last Updated: $Date: 2011-09-12 20:59:05 -0400 (Mon, 12 Sep 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6917 $
|
||||
* @version $Rev: 9483 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_profilefields extends output
|
||||
class cp_skin_profilefields
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add/edit a group
|
||||
*
|
||||
* @access public
|
||||
* @param int ID
|
||||
* @param array Group data
|
||||
* @param string Page title
|
||||
@@ -58,21 +88,28 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$title}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['cf_g_name']}</label>
|
||||
<input type='text' name='pf_group_name' value="{$data['pf_group_name']}" size='30' class='textinput'>
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['cf_g_key']}<span class='desctext'>{$this->lang->words['cf_g_key_desc']}</span></label>
|
||||
<input type='text' name='pf_group_key' value="{$data['pf_group_key']}" size='30' class='textinput'>
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_g_name']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_group_name' value="{$data['pf_group_name']}" size='30' class='textinput'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_g_key']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_group_key' value="{$data['pf_group_key']}" size='30' class='textinput'><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_g_key_desc']}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' value='{$this->lang->words['cf_g_save']}' class='button primary' accesskey='s'>
|
||||
</div>
|
||||
<input type='submit' value='{$this->lang->words['cf_g_save']}' class='button primary' accesskey='s'>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -82,72 +119,9 @@ HTML;
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* List all the gropus
|
||||
*
|
||||
* @access public
|
||||
* @param array Groups
|
||||
* @return string HTML
|
||||
*/
|
||||
public function groupList( $rows )
|
||||
{
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='section_title'>
|
||||
<h2>{$this->lang->words['cf_g_groups']}</h2>
|
||||
<ul class='context_menu'>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}do=group_form_add'><img src='{$this->settings['skin_acp_url']}/_newimages/icons/add.png' alt='' /> {$this->lang->words['cf_g_add']}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['cf_g_groups']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
HTML;
|
||||
|
||||
if( ! count( $rows ) )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td>{$this->lang->words['cf_nonefound']}</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach( $rows as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td width='95%'><strong>{$r['pf_group_name']}</strong><div class='graytext'>({$r['pf_group_key']})</div></td>
|
||||
<td width='5%'>
|
||||
<img class='ipbmenu' id="menu{$r['pf_group_id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['a_options']}' />
|
||||
<ul class='acp-menu' id='menu{$r['pf_group_id']}_menucontent'>
|
||||
<li class='icon edit'><a href='{$this->settings['base_url']}{$this->form_code}&do=group_form_edit&id={$r['pf_group_id']}'>{$this->lang->words['cf_g_edit']}</a></li>
|
||||
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}{$this->form_code}&do=group_form_delete&id={$r['pf_group_id']}")'>{$this->lang->words['cf_g_delete']}</a></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</table>
|
||||
</div>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* List custom profile fields
|
||||
*
|
||||
* @access public
|
||||
* @param array Fields
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -160,135 +134,147 @@ $IPBHTML .= <<<HTML
|
||||
<div class='section_title'>
|
||||
<h2>{$this->lang->words['cf_management']}</h2>
|
||||
<ul class='context_menu'>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}do=add'><img src='{$this->settings['skin_acp_url']}/_newimages/icons/add.png' alt='' /> {$this->lang->words['cf_addbutton']}</a></li>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}do=add'><img src='{$this->settings['skin_acp_url']}/images/icons/add.png' alt='' /> {$this->lang->words['cf_addbutton']}</a></li>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}do=group_form_add'><img src='{$this->settings['skin_acp_url']}/images/icons/folder_add.png' alt='' /> {$this->lang->words['cf_g_add']}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['cf_management']}</h3>
|
||||
<div>
|
||||
<table width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td class='tablesubheader' style='width: 2%'> </td>
|
||||
<td class='tablesubheader' style='width: 24%'>{$this->lang->words['cf_title']}</td>
|
||||
<td class='tablesubheader' style='width: 20%'>{$this->lang->words['cf_type']}</td>
|
||||
<td class='tablesubheader' style='width: 13%; text-align: center;'>{$this->lang->words['cf_required']}</td>
|
||||
<td class='tablesubheader' style='width: 13%; text-align: center;'>{$this->lang->words['cf_notpublic']}</td>
|
||||
<td class='tablesubheader' style='width: 13%; text-align: center;'>{$this->lang->words['cf_showreg']}</td>
|
||||
<td class='tablesubheader' style='width: 13%; text-align: center;'>{$this->lang->words['cf_adminonly']}</td>
|
||||
<td class='tablesubheader' style='width: 2%; text-align: center;'> </td>
|
||||
<th style='width: 2%'> </td>
|
||||
<th style='width: 24%'>{$this->lang->words['cf_title']}</td>
|
||||
<th style='width: 12%'>{$this->lang->words['cf_type']}</td>
|
||||
<th style='width: 15%; text-align: center;'>{$this->lang->words['cf_required']}</td>
|
||||
<th style='width: 15%; text-align: center;'>{$this->lang->words['cf_notpublic']}</td>
|
||||
<th style='width: 15%; text-align: center;'>{$this->lang->words['cf_showreg']}</td>
|
||||
<th style='width: 15%; text-align: center;'>{$this->lang->words['cf_adminonly']}</td>
|
||||
<th class='col_buttons'> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
HTML;
|
||||
|
||||
if( ! count( $rows ) )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li style='width:100%; clear:both;'>
|
||||
<div style='width:100%;'>{$this->lang->words['cf_nonefound']}</div>
|
||||
</li>
|
||||
</ul>
|
||||
<tr>
|
||||
<td colspan='8' class='no_messages'>
|
||||
{$this->lang->words['cf_nonefound']}
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
</ul>
|
||||
HTML;
|
||||
|
||||
$incrementer = 1;
|
||||
|
||||
|
||||
foreach( $rows as $group => $fields )
|
||||
{
|
||||
if( is_array($fields) )
|
||||
{
|
||||
$_groupData = array_rand($fields, 1);
|
||||
$_id = $fields[ $_groupData ]['pf_group_id'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$_id = $fields;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<ul id='handle_{$incrementer}' class='alternate_rows'>
|
||||
<li class='tablesubsubheader'>
|
||||
<strong>{$group}</strong>
|
||||
</li>
|
||||
<tr>
|
||||
<td colspan='8' class='no_pad'>
|
||||
<table class='ipsTable' id='handle_{$incrementer}'>
|
||||
<tr class='ipsControlRow'>
|
||||
<th class='subhead col_drag'> </th>
|
||||
<th colspan='6' class='subhead'>{$group}</th>
|
||||
<th class='subhead col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'>
|
||||
<a href='{$this->settings['base_url']}{$this->form_code}&do=group_form_edit&id={$_id}'>{$this->lang->words['cf_g_edit']}</a>
|
||||
</li>
|
||||
<li class='i_delete'>
|
||||
<a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}{$this->form_code}&do=group_form_delete&id={$_id}")'>{$this->lang->words['cf_g_delete']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</th>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
if( is_array($fields) AND count($fields) )
|
||||
{
|
||||
foreach( $fields as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li class='isDraggable' style='width:100%;' id='field_{$r['pf_id']}'>
|
||||
<table width='100%' cellpadding='0' cellspacing='0' class='double_pad'>
|
||||
<tr>
|
||||
<td style='width: 2%'>
|
||||
<div class='draghandle'><img src='{$this->settings['skin_acp_url']}/_newimages/drag_icon.png' alt='drag' /></div>
|
||||
</td>
|
||||
<td style='width: 24%'>
|
||||
<tr id='fields_{$r['pf_id']}' class='ipsControlRow isDraggable sortable_{$incrementer}'>
|
||||
<td class='col_drag'>
|
||||
<div class='draghandle'>Drag</div>
|
||||
</td>
|
||||
<td style='width: 24%'>
|
||||
HTML;
|
||||
if( $r['pf_icon'] )
|
||||
{
|
||||
$IPBHTML .= "<img src='{$this->settings['public_dir']}{$r['pf_icon']}' alt='Иконка' /> ";
|
||||
$IPBHTML .= "<img src='{$this->settings['public_dir']}{$r['pf_icon']}' alt='Icon' /> ";
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<a href="{$this->settings['base_url']}{$this->form_code}do=edit&id={$r['pf_id']}"><strong>{$r['pf_title']}</strong></a>
|
||||
<a href="{$this->settings['base_url']}{$this->form_code}do=edit&id={$r['pf_id']}"><span class='larger_text'>{$r['pf_title']}</span></a>
|
||||
HTML;
|
||||
if( $r['pf_desc'] )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<br /><span class='desctext'>{$r['pf_desc']}</span>
|
||||
<br /><span class='desctext'>{$r['pf_desc']}</span>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</td>
|
||||
<td style='width: 20%'>
|
||||
{$r['pf_type']}
|
||||
</td>
|
||||
<td style='width: 13%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/{$r['_req']}' alt='Иконка' />
|
||||
</td>
|
||||
<td style='width: 13%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/{$r['_hide']}' alt='Иконка' />
|
||||
</td>
|
||||
<td style='width: 13%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/{$r['_regi']}' alt='Иконка' />
|
||||
</td>
|
||||
<td style='width: 13%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/{$r['_admin']}' alt='Иконка' />
|
||||
</td>
|
||||
<td style='width: 2%'>
|
||||
<img class='ipbmenu' id="menu{$r['pf_id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['a_options']}' />
|
||||
<ul class='acp-menu' id='menu{$r['pf_id']}_menucontent'>
|
||||
<li class='icon edit'><a href="{$this->settings['base_url']}{$this->form_code}do=edit&id={$r['pf_id']}">{$this->lang->words['cf_edit']}</a></li>
|
||||
<li class='icon delete'><a href="{$this->settings['base_url']}{$this->form_code}do=delete&id={$r['pf_id']}">{$this->lang->words['cf_delete']}</a></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</li>
|
||||
</td>
|
||||
<td style='width: 12%'>
|
||||
<span class='desctext'>{$r['pf_type']}</span>
|
||||
</td>
|
||||
<td style='width: 15%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/icons/{$r['_req']}' alt='Icon' />
|
||||
</td>
|
||||
<td style='width: 15%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/icons/{$r['_hide']}' alt='Icon' />
|
||||
</td>
|
||||
<td style='width: 15%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/icons/{$r['_regi']}' alt='Icon' />
|
||||
</td>
|
||||
<td style='width: 15%; text-align: center;'>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/icons/{$r['_admin']}' alt='Icon' />
|
||||
</td>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'>
|
||||
<a href="{$this->settings['base_url']}{$this->form_code}do=edit&id={$r['pf_id']}" title='{$this->lang->words['cf_edit']}'>{$this->lang->words['cf_edit']}</a>
|
||||
</li>
|
||||
<li class='i_delete'>
|
||||
<a href="{$this->settings['base_url']}{$this->form_code}do=delete&id={$r['pf_id']}" title='{$this->lang->words['cf_delete']}'>{$this->lang->words['cf_delete']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</ul>
|
||||
<script type="text/javascript">
|
||||
dropItLikeItsHot{$incrementer} = function( draggableObject, mouseObject )
|
||||
{
|
||||
var options = {
|
||||
method : 'post',
|
||||
parameters : Sortable.serialize( 'handle_{$incrementer}', { tag: 'li', name: 'fields' } )
|
||||
};
|
||||
|
||||
new Ajax.Request( "{$this->settings['base_url']}&{$this->form_code_js}&do=reorder&md5check={$this->registry->adminFunctions->getSecurityKey()}".replace( /&/g, '&' ), options );
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
Sortable.create( 'handle_{$incrementer}', { only: 'isDraggable', revert: true, format: 'field_([0-9]+)', onUpdate: dropItLikeItsHot{$incrementer}, handle: 'draghandle' } );
|
||||
|
||||
</script>
|
||||
</table>
|
||||
<script type='text/javascript'>
|
||||
jQ("#handle_{$incrementer}").ipsSortable('table', { items: "tr.sortable_{$incrementer}", url: "{$this->settings['base_url']}&{$this->form_code_js}&do=reorder&md5check={$this->registry->adminFunctions->getSecurityKey()}".replace( /&/g, '&' )});
|
||||
</script>
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
$incrementer++;
|
||||
}
|
||||
|
||||
$incrementer++;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
</table>
|
||||
</div>
|
||||
HTML;
|
||||
|
||||
@@ -299,7 +285,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Add/edit profile field form
|
||||
*
|
||||
* @access public
|
||||
* @param int ID
|
||||
* @param string Action
|
||||
* @param string Button text
|
||||
@@ -324,169 +309,169 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['cf_settings']}</h3>
|
||||
|
||||
<table class='form_table double_pad alternate_rows' cellspacing='0' cellpadding='0'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td style='width: 40%;'>
|
||||
<label>{$this->lang->words['cf_f_title']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_title']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_title' value="{$data['pf_title']}" size='30' class='input_text' maxlength='200' /><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_title_info']}</span>
|
||||
</td>
|
||||
<td style='width: 60%'>
|
||||
<input type='text' name='pf_title' value="{$data['pf_title']}" size='30' class='textinput' maxlength='200'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_desc']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_desc']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_desc' value="{$data['pf_desc']}" size='50' class='input_text' maxlength='250' /><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_desc_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' name='pf_desc' value="{$data['pf_desc']}" size='50' class='textinput' maxlength='250'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_type']}</label>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_type']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_type']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_group']}</label>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_group']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_group_id']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_icon']}</label>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_icon']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_icon']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_key']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_key']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_key']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_key_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_key']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_max']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_max']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_max_input' value="{$data['pf_max_input']}" size='30' class='input_text' /><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_max_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' name='pf_max_input' value="{$data['pf_max_input']}" size='30' class='textinput'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_order']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_order']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_position' value="{$data['pf_position']}" size='30' class='input_text' /><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_order_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' name='pf_position' value="{$data['pf_position']}" size='30' class='textinput'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_form']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_form']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pf_input_format' value="{$data['pf_input_format']}" size='30' class='input_text' /><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_form_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
<input type='text' name='pf_input_format' value="{$data['pf_input_format']}" size='30' class='textinput'>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_option']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_option']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<textarea name='pf_content' cols='45' rows='5' wrap='soft' id='pf_content' class='multitext'>{$data['pf_content']}</textarea><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_option_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
<textarea name='pf_content' cols='45' rows='5' wrap='soft' id='pf_content' class='multitext'>{$data['pf_content']}</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_srch_type']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_srch_type']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_search_type']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_srch_type_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_search_type']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_filter_type']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_filter_type']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_filtering']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_filter_type_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_filtering']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_reg']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_reg']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_show_on_reg']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_reg_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_show_on_reg']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_must']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_must']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_not_null']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_must_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_not_null']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_edit']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_edit']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_member_edit']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_edit_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_member_edit']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_priv']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_priv']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_member_hide']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_priv_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_member_hide']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_admin']}</label><br />
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_admin']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$data['pf_admin_only']}<br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_admin_info']}</span>
|
||||
</td>
|
||||
<td>
|
||||
{$data['pf_admin_only']}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label>{$this->lang->words['cf_f_view']}</label><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_view_info']}</span>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_f_view']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
<textarea name='pf_topic_format' cols='60' rows='5' wrap='soft' id='pf_topic_format' class='multitext'>{$data['pf_topic_format']}</textarea>
|
||||
<td class='field_field'>
|
||||
<textarea name='pf_topic_format' cols='60' rows='5' wrap='soft' id='pf_topic_format' class='multitext'>{$data['pf_topic_format']}</textarea><br />
|
||||
<span class='desctext'>{$this->lang->words['cf_f_view_info']}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value=' {$button} ' class='realbutton' accesskey='s' />
|
||||
<input type='submit' value='{$button}' class='button primary' accesskey='s' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -499,7 +484,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Delete field confirmation
|
||||
*
|
||||
* @access public
|
||||
* @param int ID
|
||||
* @param string Title
|
||||
* @return string HTML
|
||||
@@ -514,19 +498,22 @@ $IPBHTML .= <<<HTML
|
||||
<input type='hidden' name='id' value='{$id}' />
|
||||
<input type='hidden' name='_admin_auth_key' value='' />
|
||||
|
||||
<div class='tableborder'>
|
||||
<div class='tableheaderalt'>{$this->lang->words['cf_removeconf']}</div>
|
||||
|
||||
<table width='100%' align='center'>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['cf_removeconf']}</h3>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='tablerow1' width='40%' valign='middle'>{$this->lang->words['cf_removeto']}</td>
|
||||
<td class='tablerow2' width='60%' valign='middle'><b>{$title}</b></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td align='center' class='tablesubheader' colspan='2' ><input type='submit' value='{$this->lang->words['cf_deletebutton']}' class='realbutton' accesskey='s'></td>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['cf_removeto']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
{$title}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['cf_deletebutton']}' class='button primary' accesskey='s' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
HTML;
|
||||
|
||||
@@ -2,40 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP ranks skin file
|
||||
* Last Updated: $Date: 2010-05-19 21:06:53 -0400 (Wed, 19 May 2010) $
|
||||
* Last Updated: $Date: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: ips_terabyte $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6326 $
|
||||
* @version $Rev: 8644 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_ranks extends output
|
||||
class cp_skin_ranks
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ranks overview page
|
||||
*
|
||||
* @access public
|
||||
* @param array Rows
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -51,12 +80,12 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['rnk_titles']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='40%'>{$this->lang->words['rnk_title']}</th>
|
||||
<th width='20%'>{$this->lang->words['rnk_minposts']}</th>
|
||||
<th width='30%'>{$this->lang->words['rnk_pips']}</th>
|
||||
<th width='10%'> </th>
|
||||
<th class='col_buttons'> </th>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
@@ -79,15 +108,22 @@ if( count($rows) )
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><strong>{$rank['title']}</strong></td>
|
||||
<tr class='ipsControlRow'>
|
||||
<td>
|
||||
<strong class='larger_text'>
|
||||
<a href='{$this->settings['base_url']}{$this->form_code}&do=rank_edit&id={$rank['id']}'>{$rank['title']}</a>
|
||||
</strong>
|
||||
</td>
|
||||
<td>{$rank['posts']}</td>
|
||||
<td>{$rank['img']}</td>
|
||||
<td align='right'>
|
||||
<img class="ipbmenu" id="menu{$rank['id']}" src="{$this->settings['skin_acp_url']}/_newimages/menu_open.png" alt="">
|
||||
<ul style="position: absolute; display: none; z-index: 9999;" class="acp-menu" id='menu{$rank['id']}_menucontent'>
|
||||
<li style="z-index: 10000;" class='icon edit'><a style="z-index: 10000;" href='{$this->settings['base_url']}{$this->form_code}&do=rank_edit&id={$rank['id']}'>{$this->lang->words['rnk_editlink']}</a></li>
|
||||
<li style="z-index: 10000;" class='icon delete'><a style="z-index: 10000;" href='#' onclick='return acp.confirmDelete( "{$this->settings['base_url']}{$this->form_code}&do=rank_delete&id={$rank['id']}" )'>{$this->lang->words['rnk_deletelink']}</a></li>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'>
|
||||
<a href='{$this->settings['base_url']}{$this->form_code}&do=rank_edit&id={$rank['id']}' title='{$this->lang->words['rnk_editlink']}'>{$this->lang->words['rnk_editlink']}</a>
|
||||
</li>
|
||||
<li class='i_delete'>
|
||||
<a href='#' onclick='return acp.confirmDelete( "{$this->settings['base_url']}{$this->form_code}&do=rank_delete&id={$rank['id']}" )' title='{$this->lang->words['rnk_deletelink']}'>{$this->lang->words['rnk_deletelink']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -104,26 +140,24 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['rnk_addarank']}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['rnk_ranktitle']}</label>
|
||||
<input type='text' name='title' />
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['rnk_minpostsneeded']}</label>
|
||||
<input type='text' name='posts' />
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['rnk_numpips']}<span class='desctext'>{$this->lang->words['rnk_numpips_info']}</span></label>
|
||||
<input type='text' name='pips' />
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['rnk_ranktitle']}</strong></td>
|
||||
<td class='field_field'><input type='text' name='title' class='input_text' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['rnk_minpostsneeded']}</strong></td>
|
||||
<td class='field_field'><input type='text' name='posts' class='input_text' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['rnk_numpips']}</strong></td>
|
||||
<td class='field_field'><input type='text' name='pips' class='input_text' /><br /><span class='desctext'>{$this->lang->words['rnk_numpips_info']}</span></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' value='{$this->lang->words['rnk_addrank']}' class='button primary'/>
|
||||
</div>
|
||||
</div>
|
||||
<input type='submit' value='{$this->lang->words['rnk_addrank']}' class='button primary'/>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
HTML;
|
||||
@@ -135,7 +169,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Ranks form
|
||||
*
|
||||
* @access public
|
||||
* @param array Rank data
|
||||
* @param string Action code
|
||||
* @param string Button text
|
||||
@@ -157,25 +190,36 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$button}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['rnk_ranktitle']}</label>
|
||||
<input type='text' name='title' value='{$rank['title']}' />
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['rnk_minpostsneeded']}</label>
|
||||
<input type='text' name='posts' value='{$rank['posts']}' />
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['rnk_numpips']}<span class='desctext'>{$this->lang->words['rnk_numpips_info']}</span></label>
|
||||
<input type='text' name='pips' value='{$rank['pips']}' />
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['rnk_ranktitle']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='title' class='input_text' value='{$rank['title']}' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['rnk_minpostsneeded']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='posts' class='input_text' value='{$rank['posts']}' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['rnk_numpips']}</strong>
|
||||
</td>
|
||||
<td class='field_field'>
|
||||
<input type='text' name='pips' class='input_text' value='{$rank['pips']}' /><br />
|
||||
<span class='desctext'>{$this->lang->words['rnk_numpips_info']}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' value='{$button}' class='button primary' />
|
||||
</div>
|
||||
<input type='submit' value='{$button}' class='button primary' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP reputation skin file
|
||||
* Last Updated: $Date: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
|
||||
* Last Updated: $Date: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: ips_terabyte $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Revision: 5713 $
|
||||
* @version $Revision: 8644 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_reputation extends output
|
||||
class cp_skin_reputation
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reputation form
|
||||
*
|
||||
* @access public
|
||||
* @param int ID
|
||||
* @param string Action
|
||||
* @param string Title
|
||||
@@ -50,18 +80,18 @@ if( count( $errors ) )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<h2>{$this->lang->words['errors']}</h2>
|
||||
<ul>
|
||||
<div class='warning'>
|
||||
HTML;
|
||||
|
||||
foreach( $errors as $err )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li>$err</li>
|
||||
<p>$err</p>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</ul>
|
||||
</div><br />
|
||||
HTML;
|
||||
}
|
||||
|
||||
@@ -72,26 +102,24 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$title}</h3>
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['rep_form_title']}<span class='desctext'>{$this->lang->words['rep_form_title_help']}</span></label>
|
||||
{$form['level_title']}
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['rep_form_image']}<span class='desctext'>{$this->lang->words['rep_form_image_help']}{$this->settings['public_dir']}style_extra/reputation_icons/</span></label>
|
||||
{$form['level_image']}
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['rep_form_points']}<span class='desctext'>{$this->lang->words['rep_form_points_help']}</span></label>
|
||||
{$form['level_points']}
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['rep_form_title']}</strong></td>
|
||||
<td class='field_field'>{$form['level_title']}<br /><span class='desctext'>{$this->lang->words['rep_form_title_help']}</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['rep_form_image']}</strong></td>
|
||||
<td class='field_field'>{$form['level_image']}<br /><span class='desctext'>{$this->lang->words['rep_form_image_help']}{$this->settings['public_dir']}style_extra/reputation_icons/</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['rep_form_points']}</strong></td>
|
||||
<td class='field_field'>{$form['level_points']}<br /><span class='desctext'>{$this->lang->words['rep_form_points_help']}</span></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' value='{$this->lang->words['rep_save_changes']}' class='button primary'/>
|
||||
</div>
|
||||
</div>
|
||||
<input type='submit' value='{$this->lang->words['rep_save_changes']}' class='button primary'/>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
HTML;
|
||||
@@ -103,7 +131,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Reputation overview screen
|
||||
*
|
||||
* @access public
|
||||
* @param array Rep levels
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -116,13 +143,13 @@ $IPBHTML .= <<<HTML
|
||||
<h2>{$this->lang->words['rep_lvl_manage']}</h2>
|
||||
|
||||
<ul class='context_menu'>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}&do=add_level_form'><img src='{$this->settings['skin_acp_url']}/_newimages/icons/add.png' alt='' /> {$this->lang->words['rep_level_new']}</a></li>
|
||||
<li><a href='{$this->settings['base_url']}{$this->form_code}&do=add_level_form'><img src='{$this->settings['skin_acp_url']}/images/icons/add.png' alt='' /> {$this->lang->words['rep_level_new']}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['rep_lvl_manage']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='40%'>{$this->lang->words['rep_form_title']}</th>
|
||||
<th width='20%'>{$this->lang->words['rep_form_image']}</th>
|
||||
@@ -136,15 +163,14 @@ if( is_array( $levels ) && count( $levels ) )
|
||||
foreach( $levels as $r )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td>{$r['level_title']}</td>
|
||||
<tr class='ipsControlRow'>
|
||||
<td><span class='larger_text'>{$r['level_title']}</span></td>
|
||||
<td>{$r['level_image']}</td>
|
||||
<td>{$r['level_points']}</td>
|
||||
<td align='right'>
|
||||
<img class="ipbmenu" id="menu{$r['level_id']}" src="{$this->settings['skin_acp_url']}/_newimages/menu_open.png" alt="">
|
||||
<ul style="position: absolute; display: none; z-index: 9999;" class="acp-menu" id='menu{$r['level_id']}_menucontent'>
|
||||
<li style="z-index: 10000;" class='icon edit'><a style="z-index: 10000;" href='{$this->settings['base_url']}{$this->form_code}&do=edit_level_form&id={$r['level_id']}'>{$this->lang->words['edit']}</a></li>
|
||||
<li style="z-index: 10000;" class='icon delete'><a style="z-index: 10000;" href='#' onclick='return acp.confirmDelete( "{$this->settings['base_url']}{$this->form_code}&do=delete_level&id={$r['level_id']}" );'>{$this->lang->words['delete']}</a></li>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'><a href='{$this->settings['base_url']}{$this->form_code}&do=edit_level_form&id={$r['level_id']}' title='{$this->lang->words['edit']}'>{$this->lang->words['edit']}</a></li>
|
||||
<li class='i_delete'><a href='#' onclick='return acp.confirmDelete( "{$this->settings['base_url']}{$this->form_code}&do=delete_level&id={$r['level_id']}" );' title='{$this->lang->words['delete']}'>{$this->lang->words['delete']}</a></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -2,39 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP restrictions skin file
|
||||
* Last Updated: $Date: 2010-09-22 11:32:51 -0400 (Wed, 22 Sep 2010) $
|
||||
* Last Updated: $Date: 2011-09-21 13:19:38 -0400 (Wed, 21 Sep 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: terabyte $
|
||||
* @author $Author: rtissier $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6904 $
|
||||
* @version $Rev: 9531 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_restrictions extends output
|
||||
class cp_skin_restrictions
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Form to add a new restricted member
|
||||
*
|
||||
* @access public
|
||||
* @return string HTML
|
||||
*/
|
||||
public function restrictionsMemberForm() {
|
||||
@@ -49,19 +79,17 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<form id='postingform' action="{$this->settings['base_url']}&{$this->form_code}&do=acpperms-member-add-complete" method="post" name="REPLIER">
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->getClass('adminFunctions')->_admin_auth_key}' />
|
||||
<div class='tableborder'>
|
||||
<div class='tableheaderalt'>{$this->lang->words['r_findadmin']}</div>
|
||||
<div class='tablesubheader'> </div>
|
||||
<table width='100%' align='center'>
|
||||
<tr>
|
||||
<td class='tablerow1' width='50%' valign='middle'>{$this->lang->words['r_displayname']}<div style='color:gray'>{$this->lang->words['r_displayname_info']}</div></td>
|
||||
<td class='tablerow2' width='50%' valign='middle'><input type="text" id='entered_name' name="entered_name" size="30" autocomplete='off' style='width:210px' value="" tabindex="1" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align='center' class='tablesubheader' colspan='2' ><input type='submit' value='{$this->lang->words['r_proceed']}' class='realbutton' accesskey='s'></td>
|
||||
</tr>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['r_findadmin']}</h3>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['r_displayname']}</strong></td>
|
||||
<td class='field_field'><input type="text" id='entered_name' name="entered_name" size="30" autocomplete='off' style='width:210px' value="" tabindex="1" class='input_text' /><br /><span class='desctext'>{$this->lang->words['r_displayname_info']}</span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' value='{$this->lang->words['r_proceed']}' class='button primary' accesskey='s' />
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
document.observe("dom:loaded", function(){
|
||||
var search = new ipb.Autocomplete( $('entered_name'), { multibox: false, url: acp.autocompleteUrl, templates: { wrap: acp.autocompleteWrap, item: acp.autocompleteItem } } );
|
||||
@@ -77,7 +105,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Form to add a new restricted group
|
||||
*
|
||||
* @access public
|
||||
* @return string HTML
|
||||
*/
|
||||
public function restrictionsGroupForm() {
|
||||
@@ -104,18 +131,15 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<form id='postingform' action="{$this->settings['base_url']}&{$this->form_code}&do=acpperms-group-add-complete" method="post" name="REPLIER">
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->getClass('adminFunctions')->_admin_auth_key}' />
|
||||
<div class='tableborder'>
|
||||
<div class='tableheaderalt'>{$this->lang->words['r_selectgroup']}</div>
|
||||
<div class='tablesubheader'> </div>
|
||||
<table width='100%' align='center'>
|
||||
<tr>
|
||||
<td class='tablerow1' width='50%' valign='middle'>{$this->lang->words['r_whatgroup']}</td>
|
||||
<td class='tablerow2' width='50%' valign='middle'>{$dropDown}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align='center' class='tablesubheader' colspan='2' ><input type='submit' value='{$this->lang->words['r_proceed']}' class='realbutton' accesskey='s'></td>
|
||||
</tr>
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['r_selectgroup']}</h3>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['r_whatgroup']}</strong></td>
|
||||
<td class='field_field'>{$dropDown}</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class='acp-actionbar'><input type='submit' value='{$this->lang->words['r_proceed']}' class='realbutton' accesskey='s' /></div>
|
||||
</div>
|
||||
</form>
|
||||
HTML;
|
||||
@@ -128,7 +152,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* ACP restrictions overview
|
||||
*
|
||||
* @access public
|
||||
* @param array Members
|
||||
* @param array Groups
|
||||
* @return string HTML
|
||||
@@ -146,7 +169,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['r_memberrestrict']}</h3>
|
||||
|
||||
<table class='alternate_rows double_pad' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='35%'>{$this->lang->words['r_member']}</th>
|
||||
<th width='20%'>{$this->lang->words['r_primary']}</th>
|
||||
@@ -164,7 +187,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['r_grouprestrict']}</h3>
|
||||
|
||||
<table cellpadding='0' cellspacing='0' width='100%' class='alternate_rows double_pad'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='55%'>{$this->lang->words['r_group']}</th>
|
||||
<th width='20%' align='center'>{$this->lang->words['r_totalmem']}</th>
|
||||
@@ -187,7 +210,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Restricted member
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -197,7 +219,7 @@ $IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<tr class='ipsControlRow'>
|
||||
<td>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/lock_close.gif' alt='@' style='vertical-align:top' />
|
||||
<strong>{$data['members_display_name']}</strong>
|
||||
@@ -205,11 +227,10 @@ $IPBHTML .= <<<HTML
|
||||
<td>{$data['_group_name']}</td>
|
||||
<td>{$data['_other_groups']}</td>
|
||||
<td>{$data['_date']}</td>
|
||||
<td>
|
||||
<img class='ipbmenu' id="menumember{$data['member_id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['r_options']}' />
|
||||
<ul class='acp-menu' id='menumember{$data['member_id']}_menucontent'>
|
||||
<li class='icon edit'><a href='{$this->settings['base_url']}&{$this->form_code}&do=accperms-member-edit&mid={$data['member_id']}'>{$this->lang->words['r_managerestrict']}</a></li>
|
||||
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=accperms-member-remove&mid={$data['member_id']}");'>{$this->lang->words['r_removeall']}</a></li>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'><a href='{$this->settings['base_url']}&{$this->form_code}&do=accperms-member-edit&mid={$data['member_id']}'>{$this->lang->words['r_managerestrict']}</a></li>
|
||||
<li class='i_delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=accperms-member-remove&mid={$data['member_id']}");'>{$this->lang->words['r_removeall']}</a></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -222,7 +243,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Restricted group
|
||||
*
|
||||
* @access public
|
||||
* @param array Group data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -232,18 +252,17 @@ $IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td class='tablerow1'>
|
||||
<tr class='ipsControlRow'>
|
||||
<td>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/lock_close.gif' alt='@' style='vertical-align:top' />
|
||||
<strong>{$data['_group_name']}</strong>
|
||||
</td>
|
||||
<td class='tablerow2' align='center'>{$data['_total']}</td>
|
||||
<td class='tablerow2' align='center'>{$data['_date']}</td>
|
||||
<td class='tablerow1'>
|
||||
<img id="menugroup{$data['row_id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['r_options']}' class='ipbmenu' />
|
||||
<ul class='acp-menu' id='menugroup{$data['row_id']}_menucontent'>
|
||||
<li class='icon edit'><a href='{$this->settings['base_url']}&{$this->form_code}&do=accperms-group-edit&gid={$data['row_id']}'>{$this->lang->words['r_managerestrictg']}</a></li>
|
||||
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=accperms-group-remove&gid={$data['row_id']}");'>{$this->lang->words['r_removeallg']}</a></li>
|
||||
<td align='center'>{$data['_total']}</td>
|
||||
<td align='center'>{$data['_date']}</td>
|
||||
<td class='col_buttons'>
|
||||
<ul class='ipsControlStrip'>
|
||||
<li class='i_edit'><a href='{$this->settings['base_url']}&{$this->form_code}&do=accperms-group-edit&gid={$data['row_id']}' title='{$this->lang->words['r_managerestrictg']}'>{$this->lang->words['r_managerestrictg']}</a></li>
|
||||
<li class='i_delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}&{$this->form_code}&do=accperms-group-remove&gid={$data['row_id']}");' title='{$this->lang->words['r_removeallg']}'>{$this->lang->words['r_removeallg']}</a></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -256,7 +275,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Add new restrictions form
|
||||
*
|
||||
* @access public
|
||||
* @param int Role id
|
||||
* @param string Role type
|
||||
* @param array Permissions
|
||||
@@ -265,116 +283,217 @@ return $IPBHTML;
|
||||
*/
|
||||
public function restrictionsForm( $role_id=0, $role_type='member', $permissions=array(), $access=array() ) {
|
||||
|
||||
$itemsByModules = array();
|
||||
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='section_title'>
|
||||
<h2>{$this->lang->words['r_title']}</h2>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src='{$this->settings['js_main_url']}acp.permissions.js'></script>
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
document.observe("dom:loaded",function()
|
||||
{
|
||||
ipbAcpTabStrips.register('tab_restrictions');
|
||||
});
|
||||
//]]>
|
||||
</script>
|
||||
<form action='{$this->settings['base_url']}&{$this->form_code}&do=acpperms-save&secure_key={$this->registry->getClass('adminFunctions')->_admin_auth_key}' method='post' id='adform' name='adform'>
|
||||
<input type='hidden' name='id' value='{$role_id}' />
|
||||
<input type='hidden' name='type' value='{$role_type}' />
|
||||
<ul id='tab_restrictions' class='tab_bar no_title'>
|
||||
<div class='acp-box'>
|
||||
<h3>Set Restrictions</h3>
|
||||
<div class='ipsTabBar' id='tab_restrictions'>
|
||||
<span class='tab_left'>«</span>
|
||||
<span class='tab_right'>»</span>
|
||||
<ul>
|
||||
HTML;
|
||||
|
||||
foreach( ipsRegistry::$applications as $app_dir => $application )
|
||||
{
|
||||
if( is_array(ipsRegistry::$modules[ $app_dir ]) AND count(ipsRegistry::$modules[ $app_dir ]) )
|
||||
{
|
||||
$IPBHTML .= "<li id='tabtab-TOP|{$application['app_id']}' class=''>{$application['app_title']}</li>\n";
|
||||
$IPBHTML .= "<li id='tab_{$application['app_id']}'>{$application['app_title']}</li>\n";
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</ul>
|
||||
<div class='acp-box'>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
<div id='tabContent'>
|
||||
HTML;
|
||||
|
||||
foreach( ipsRegistry::$applications as $app_dir => $application )
|
||||
{
|
||||
$checked = in_array( $application['app_id'], $access['applications'] ) ? 1 : 0;
|
||||
$form = $this->registry->output->formCheckbox( 'app_' . $application['app_id'], $checked );
|
||||
$form = $this->registry->output->formCheckbox( 'app_' . $application['app_id'], $checked, 1, 'app_' . $application['app_id'], "onclick='checkApp( {$application['app_id']} );'" );
|
||||
|
||||
if( is_array(ipsRegistry::$modules[ $app_dir ]) AND count(ipsRegistry::$modules[ $app_dir ]) )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
<div id='tabpane-TOP|{$application['app_id']}'>
|
||||
<div class='tablesubheader'>{$form} {$this->lang->words['r_grantto']} приложению «{$application['app_title']}»?</div>
|
||||
<div id='tab_{$application['app_id']}_content'>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th colspan='2'><label for='app_{$application['app_id']}'>{$form} {$this->lang->words['r_grantto']} {$this->lang->words['application_bit']}: {$application['app_title']}?</label></th>
|
||||
</tr>
|
||||
</table>
|
||||
HTML;
|
||||
|
||||
foreach( ipsRegistry::$modules[ $app_dir ] as $module )
|
||||
{
|
||||
$checked = in_array( $module['sys_module_id'], $access['modules'] ) ? 1 : 0;
|
||||
$form = $this->registry->output->formCheckbox( 'module_' . $module['sys_module_id'], $checked );
|
||||
|
||||
|
||||
foreach( ipsRegistry::$modules[ $app_dir ] as $module )
|
||||
{
|
||||
$checked = in_array( $module['sys_module_id'], $access['modules'] ) ? 1 : 0;
|
||||
$form = $this->registry->output->formCheckbox( 'module_' . $module['sys_module_id'], $checked, 1, 'module_' . $module['sys_module_id'], "onclick='checkModule( {$module['sys_module_id']} );'" );
|
||||
|
||||
if( ! $module['sys_module_admin'] )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='tablesubheader'>{$form} {$this->lang->words['r_grantto']} модулю «{$module['sys_module_title']}»?</div>
|
||||
$IPBHTML .= <<<HTML
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th colspan='2'> <label for='module_{$module['sys_module_id']}'>{$form} {$this->lang->words['r_grantto']} {$this->lang->words['module_bit']}: {$module['sys_module_title']}?</label></th>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
HTML;
|
||||
|
||||
if( is_array( $permissions ) AND is_array($permissions[ $application['app_id'] ][ $module['sys_module_id'] ]) AND count($permissions[ $application['app_id'] ][ $module['sys_module_id'] ]) )
|
||||
{
|
||||
// Call me lazy if you wish :P
|
||||
$shorten = $permissions[ $application['app_id'] ][ $module['sys_module_id'] ];
|
||||
|
||||
foreach( $shorten as $group => $shorter )
|
||||
if( is_array( $permissions ) AND is_array($permissions[ $application['app_id'] ][ $module['sys_module_id'] ]) AND count($permissions[ $application['app_id'] ][ $module['sys_module_id'] ]) )
|
||||
{
|
||||
if( !is_array($shorter) OR !count($shorter) )
|
||||
// Call me lazy if you wish :P
|
||||
$shorten = $permissions[ $application['app_id'] ][ $module['sys_module_id'] ];
|
||||
|
||||
foreach( $shorten as $group => $shorter )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='tablesubheader'>{$shorter['title']}</div>
|
||||
<ul class='acp-form alternate_rows'>
|
||||
HTML;
|
||||
if( is_array($shorter['items']) AND count($shorter['items']) )
|
||||
{
|
||||
foreach( $shorter['items'] as $item_key => $item_text )
|
||||
if( !is_array($shorter) OR !count($shorter) )
|
||||
{
|
||||
$checked = (is_array($access['items'][ $module['sys_module_id'] ]) AND in_array($item_key, $access['items'][ $module['sys_module_id'] ] )) ? 1 : 0;
|
||||
$form = $this->registry->output->formCheckbox( 'item_' . $module['sys_module_id'] . '_' . $item_key, $checked );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<li><label>{$item_text}</label>{$form}</li>
|
||||
HTML;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</ul>
|
||||
<br />
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
$IPBHTML .= <<<HTML
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<th colspan='2' class='subhead'> {$shorter['title']}</th>
|
||||
</tr>
|
||||
HTML;
|
||||
if( is_array($shorter['items']) AND count($shorter['items']) )
|
||||
{
|
||||
foreach( $shorter['items'] as $item_key => $item_text )
|
||||
{
|
||||
$itemsByModules[ $module['sys_module_id'] ][] = $item_key;
|
||||
$checked = (is_array($access['items'][ $module['sys_module_id'] ]) AND in_array($item_key, $access['items'][ $module['sys_module_id'] ] )) ? 1 : 0;
|
||||
$form = $this->registry->output->formCheckbox( 'item_' . $module['sys_module_id'] . '_' . $item_key, $checked, 1, 'item_' . $module['sys_module_id'] . '_' . $item_key, "onclick='checkItem( {$module['sys_module_id']} );'" );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td colspan='2'>
|
||||
<strong class='title'> <label for='item_{$module['sys_module_id']}_{$item_key}'>{$form} {$item_text}</label></strong>
|
||||
</td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</table>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</div>
|
||||
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</div>
|
||||
<div class='tablesubheader' style='text-align:center;'><input type='submit' value=' {$this->lang->words['r_savebutton']} ' /></div>
|
||||
<div class='acp-actionbar'><input type='submit' value='{$this->lang->words['r_savebutton']}' class='button primary' /></div>
|
||||
</div>
|
||||
</form>
|
||||
<script type='text/javascript'>
|
||||
jQ("#tab_restrictions").ipsTabBar();
|
||||
</script>
|
||||
HTML;
|
||||
|
||||
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<script type='text/javascript'>
|
||||
var modulesByApp = [];
|
||||
var appsByModule = [];
|
||||
var itemsByModule = [];
|
||||
HTML;
|
||||
|
||||
foreach( ipsRegistry::$applications as $app_dir => $application )
|
||||
{
|
||||
$modules = array();
|
||||
foreach( ipsRegistry::$modules[ $app_dir ] as $module )
|
||||
{
|
||||
if( ! $module['sys_module_admin'] )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
$modules[] = $module['sys_module_id'];
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
appsByModule[ {$module['sys_module_id']} ] = {$application['app_id']};
|
||||
HTML;
|
||||
}
|
||||
|
||||
$modules = implode( ',', $modules );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
modulesByApp[ {$application['app_id']} ] = Array( {$modules} );
|
||||
|
||||
HTML;
|
||||
}
|
||||
foreach ( $itemsByModules as $module => $items )
|
||||
{
|
||||
$items = implode( ',', array_map( create_function( '$v', 'return "\'$v\'";' ), $items ) );
|
||||
$IPBHTML .= <<<HTML
|
||||
itemsByModule[ {$module} ] = Array( {$items} );
|
||||
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
function checkApp( app )
|
||||
{
|
||||
for ( var i in modulesByApp[ app ] )
|
||||
{
|
||||
if ( $( 'module_' + modulesByApp[ app ][ i ] ) )
|
||||
{
|
||||
$( 'module_' + modulesByApp[ app ][ i ] ).checked = $( 'app_' + app ).checked;
|
||||
checkModule( modulesByApp[ app ][ i ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function checkModule( module )
|
||||
{
|
||||
if ( $( 'module_' + module ).checked )
|
||||
{
|
||||
$( 'app_' + appsByModule[ module ] ).checked = true;
|
||||
}
|
||||
|
||||
for ( var i in itemsByModule[ module ] )
|
||||
{
|
||||
if ( $( 'item_' + module + '_' + itemsByModule[ module ][ i ] ) )
|
||||
{
|
||||
$( 'item_' + module + '_' + itemsByModule[ module ][ i ] ).checked = $( 'module_' + module ).checked;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function checkItem( module )
|
||||
{
|
||||
$( 'module_' + module ).checked = true;
|
||||
$( 'app_' + appsByModule[ module ] ).checked = true;
|
||||
}
|
||||
|
||||
</script>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
|
||||
@@ -2,59 +2,69 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.1.4
|
||||
* IP.Board v3.2.3
|
||||
* ACP tools skin file
|
||||
* Last Updated: $Date: 2010-09-29 20:23:38 -0400 (Wed, 29 Sep 2010) $
|
||||
* Last Updated: $Date: 2011-09-20 18:16:05 -0400 (Tue, 20 Sep 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @author $Author: rtissier $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/community/board/license.html
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @subpackage Members
|
||||
* @link http://www.invisionpower.com
|
||||
* @link http://hatynka.in
|
||||
* @since 20th February 2002
|
||||
* @version $Rev: 6925 $
|
||||
* @version $Rev: 9519 $
|
||||
*
|
||||
*/
|
||||
|
||||
class cp_skin_tools extends output
|
||||
class cp_skin_tools
|
||||
{
|
||||
|
||||
/**
|
||||
* Prevent our main destructor being called by this class
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Show notice if no banned_group set
|
||||
*
|
||||
* @access public
|
||||
* @return string HTML
|
||||
*/
|
||||
public function bannedGroupNotice(){
|
||||
$IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='information-box'>
|
||||
{$this->lang->words['nobannedgroup_notice']}
|
||||
</div>
|
||||
<br />
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
/**
|
||||
* Registry Object Shortcuts
|
||||
*
|
||||
* @var $registry
|
||||
* @var $DB
|
||||
* @var $settings
|
||||
* @var $request
|
||||
* @var $lang
|
||||
* @var $member
|
||||
* @var $memberData
|
||||
* @var $cache
|
||||
* @var $caches
|
||||
*/
|
||||
protected $registry;
|
||||
protected $DB;
|
||||
protected $settings;
|
||||
protected $request;
|
||||
protected $lang;
|
||||
protected $member;
|
||||
protected $memberData;
|
||||
protected $cache;
|
||||
protected $caches;
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $registry Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function __construct( ipsRegistry $registry )
|
||||
{
|
||||
$this->registry = $registry;
|
||||
$this->DB = $this->registry->DB();
|
||||
$this->settings =& $this->registry->fetchSettings();
|
||||
$this->request =& $this->registry->fetchRequest();
|
||||
$this->member = $this->registry->member();
|
||||
$this->memberData =& $this->registry->member()->fetchMemberData();
|
||||
$this->cache = $this->registry->cache();
|
||||
$this->caches =& $this->registry->cache()->fetchCaches();
|
||||
$this->lang = $this->registry->class_localization;
|
||||
}
|
||||
|
||||
/**
|
||||
* Merge start form
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
*/
|
||||
@@ -76,17 +86,15 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$title}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['merge_find_name']}</label>
|
||||
<input type='text' class='textinput' id='members_display_name' name='members_display_name' value='' />
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['merge_find_name']}</strong></td>
|
||||
<td class='field_field'><input type='text' class='textinput' id='members_display_name' name='members_display_name' value='' /></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' class='button primary' value=' {$this->lang->words['merge_continue_button']} ' />
|
||||
</div>
|
||||
<input type='submit' class='button primary' value='{$this->lang->words['merge_continue_button']}' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -104,7 +112,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Confirm merge of two members
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @param array Member data
|
||||
* @return string HTML
|
||||
@@ -128,21 +135,19 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['merge_confirm_title']}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['merge_remove']}</label>
|
||||
<a href='{$this->settings['_original_base_url']}/index.php?showuser={$member2['member_id']}'>{$member2['members_display_name']}</a>
|
||||
</li>
|
||||
<li>
|
||||
<label>{$this->lang->words['merge_keep']}</label>
|
||||
<a href='{$this->settings['_original_base_url']}/index.php?showuser={$member['member_id']}'>{$member['members_display_name']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['merge_remove']}</strong></td>
|
||||
<td class='field_field'><a href='{$this->settings['_original_base_url']}/index.php?showuser={$member2['member_id']}'>{$member2['members_display_name']}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['merge_keep']}</strong></td>
|
||||
<td class='field_field'><a href='{$this->settings['_original_base_url']}/index.php?showuser={$member['member_id']}'>{$member['members_display_name']}</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<div class='centeraction'>
|
||||
<input type='submit' class='button primary' value=' {$this->lang->words['merge_submit']} ' />
|
||||
</div>
|
||||
<input type='submit' class='button primary' value='{$this->lang->words['merge_submit']}' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -155,7 +160,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Member tools splash page
|
||||
*
|
||||
* @access public
|
||||
* @param string Message
|
||||
* @param array Form elements
|
||||
* @return string HTML
|
||||
@@ -168,8 +172,7 @@ $IPBHTML = "";
|
||||
if( $message )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_message']}</h3>
|
||||
<div class='information-box'>
|
||||
<p>{$message}</p>
|
||||
</div>
|
||||
<br />
|
||||
@@ -186,15 +189,15 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_showallip']}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$form['text']}</label>
|
||||
{$form['form']}
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$form['text']}</strong></td>
|
||||
<td class='field_field'>{$form['form']}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' class='button primary' value=' {$this->lang->words['t_showallbutton']} ' />
|
||||
<input type='submit' class='button primary' value='{$this->lang->words['t_showallbutton']}' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -204,15 +207,15 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipmulti']}</h3>
|
||||
|
||||
<ul class='acp-form alternate_rows'>
|
||||
<li>
|
||||
<label>{$this->lang->words['t_showme']}</label>
|
||||
{$form_ip}
|
||||
</li>
|
||||
</ul>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td class='field_title'><strong class='title'>{$this->lang->words['t_showme']}</strong></td>
|
||||
<td class='field_field'>{$form_ip}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class='acp-actionbar'>
|
||||
<input type='submit' class='button primary' value=' {$this->lang->words['t_showmebutton']} ' />
|
||||
<input type='submit' class='button primary' value='{$this->lang->words['t_showmebutton']}' />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -232,7 +235,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Delete PM wrapper
|
||||
*
|
||||
* @access public
|
||||
* @param array Member
|
||||
* @param int Total topics
|
||||
* @param int Total replies
|
||||
@@ -254,26 +256,26 @@ $repliesYesNo = $this->registry->output->formYesNo( 'replies', 0 );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='section_title'>
|
||||
<h2>Управление пользователем</h2>
|
||||
<h2>{$this->lang->words['member_management_h2']}</h2>
|
||||
</div>
|
||||
|
||||
<form action='{$this->settings['base_url']}&module=members&section=tools&do=deleteMessages&member_id={$member['member_id']}&confirm=1' method='post'>
|
||||
<form action='{$this->settings['base_url']}module=members&section=tools&do=deleteMessages&member_id={$member['member_id']}&confirm=1' method='post'>
|
||||
<div class='acp-box'>
|
||||
<h3>Удаление всех личных сообщений {$member['members_display_name']}</h3>
|
||||
<table class='form_table alternate_rows double_pad'>
|
||||
<h3>{$this->lang->words['tools_delete_all_pms']} {$member['members_display_name']}</h3>
|
||||
<table class='ipsTable double_pad'>
|
||||
<tr>
|
||||
<td style='width: 40%'>
|
||||
<strong>{$this->lang->words['total_pms_topics']}</strong>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['total_pms_topics']}</strong>
|
||||
</td>
|
||||
<td style='width: 60%'>
|
||||
<td class='field_field'>
|
||||
{$topicsYesNo}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<strong>{$this->lang->words['total_pms_replies']}</strong>
|
||||
<td class='field_title'>
|
||||
<strong class='title'>{$this->lang->words['total_pms_replies']}</strong>
|
||||
</td>
|
||||
<td>
|
||||
<td class='field_field'>
|
||||
{$repliesYesNo}
|
||||
</td>
|
||||
</tr>
|
||||
@@ -292,7 +294,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Show all of a member's IP addresses
|
||||
*
|
||||
* @access public
|
||||
* @param array Member data
|
||||
* @param array All IPs
|
||||
* @param string Page links
|
||||
@@ -310,7 +311,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$counttxt}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='20%'>{$this->lang->words['t_ipaddy']}</th>
|
||||
<th width='10%'>{$this->lang->words['t_timesused']}</th>
|
||||
@@ -333,7 +334,7 @@ if( is_array($allips) AND count($allips) )
|
||||
<td>{$use_info[0]}</td>
|
||||
<td>{$date}</td>
|
||||
<td>{$others}</td>
|
||||
<td><a href='{$this->settings['base_url']}&module=members&section=tools&do=learn_ip&ip={$ip_address}'>{$this->lang->words['t_learnmore']}</a></td>
|
||||
<td><a href='{$this->settings['base_url']}module=members&section=tools&do=learn_ip&ip={$ip_address}'>{$this->lang->words['t_learnmore']}</a></td>
|
||||
</tr>
|
||||
HTML;
|
||||
}
|
||||
@@ -349,10 +350,8 @@ HTML;
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</table>
|
||||
<div class='acp-actionbar'>
|
||||
<div class='rightaction'>
|
||||
{$links}
|
||||
</div>
|
||||
<div class='acp-actionbar' style='text-align: left;'>
|
||||
{$links}
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
@@ -366,7 +365,6 @@ return $IPBHTML;
|
||||
/**
|
||||
* Learn about an IP
|
||||
*
|
||||
* @access public
|
||||
* @param string Host address
|
||||
* @param array All registering members
|
||||
* @param array All posting members
|
||||
@@ -385,7 +383,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['hostaddress_for']} {$this->request['ip']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<td width='40%'>{$this->lang->words['t_ipresolves']}</td>
|
||||
<td width='60%'>{$hostAddr}</td>
|
||||
@@ -396,7 +394,7 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipreg']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='30%'>{$this->lang->words['t_ipname']}</th>
|
||||
<th width='20%'>{$this->lang->words['t_ipemail']}</th>
|
||||
@@ -437,7 +435,7 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipposting']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='30%'>{$this->lang->words['t_ipname']}</th>
|
||||
<th width='20%'>{$this->lang->words['t_ipemail']}</th>
|
||||
@@ -478,7 +476,7 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipvoting']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='30%'>{$this->lang->words['t_ipname']}</th>
|
||||
<th width='20%'>{$this->lang->words['t_ipemail']}</th>
|
||||
@@ -520,7 +518,7 @@ $IPBHTML .= <<<HTML
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipemailing']}</h3>
|
||||
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='30%'>{$this->lang->words['t_ipname']}</th>
|
||||
<th width='30%'>{$this->lang->words['t_ipemail']}</th>
|
||||
@@ -559,7 +557,7 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipvalidating']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='30%'>{$this->lang->words['t_ipname']}</th>
|
||||
<th width='30%'>{$this->lang->words['t_ipemail']}</th>
|
||||
@@ -598,7 +596,7 @@ $IPBHTML .= <<<HTML
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$this->lang->words['t_ipalsofound']}</h3>
|
||||
<table class='alternate_rows' width='100%'>
|
||||
<table class='ipsTable'>
|
||||
<tr>
|
||||
<th width='30%'>{$this->lang->words['t_ipname']}</th>
|
||||
<th width='30%'>{$this->lang->words['t_ip_table']}</th>
|
||||
@@ -649,441 +647,4 @@ HTML;
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* Validation queue wrapper
|
||||
*
|
||||
* @access public
|
||||
* @param string Type of queue
|
||||
* @param string Queue HTML
|
||||
* @param int Page start
|
||||
* @param string New order
|
||||
* @param string Page links
|
||||
* @return string HTML
|
||||
*/
|
||||
public function queueWrapper( $type, $name, $content, $st, $new_ord, $links ) {
|
||||
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$table_text = mb_strtolower($name);
|
||||
$this->form_code = 'module=members&section=tools';
|
||||
$memberq = sprintf( $this->lang->words['t_memberq'], $table_text );
|
||||
$_do = $this->request['do'];
|
||||
|
||||
if( $_do == 'do_validating' )
|
||||
{
|
||||
$_do = 'validating';
|
||||
}
|
||||
else if( $_do == 'do_locked' )
|
||||
{
|
||||
$_do = 'locked';
|
||||
}
|
||||
else if( $_do == 'do_banned' )
|
||||
{
|
||||
$_do = 'banned';
|
||||
}
|
||||
else if( $_do == 'do_spam' )
|
||||
{
|
||||
$_do = 'spam';
|
||||
}
|
||||
else if( $_do == 'do_incomplete' )
|
||||
{
|
||||
$_do = 'incomplete';
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<div class='section_title'>
|
||||
<h2>{$memberq}</h2>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src='{$this->settings['js_app_url']}ipsMemberQueue.js'></script>
|
||||
HTML;
|
||||
|
||||
if ( $_do == 'validating' )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<form name='selectform' id='selectform' action='{$this->settings['base_url']}&{$this->form_code}&do={$_do}' method='post'>
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->getClass('adminFunctions')->_admin_auth_key}' />
|
||||
<select name='filter'>
|
||||
<option value='all'>{$this->lang->words['t_qshowall']}</option>
|
||||
<option value='reg_user_validate'>{$this->lang->words['t_qshowreg']}</option>
|
||||
<option value='reg_admin_validate'>{$this->lang->words['t_qshowadmin']}</option>
|
||||
<option value='email_chg'>{$this->lang->words['t_qemailchange']}</option>
|
||||
<option value='coppa'>{$this->lang->words['t_qcoppa']}</option>
|
||||
</select>
|
||||
<input type='submit' class='realbutton' value=' {$this->lang->words['t_qgobutton']} ' />
|
||||
</form>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<form name='theAdminForm' id='adminform' action='{$this->settings['base_url']}&{$this->form_code}&do=do_{$type}' method='post'>
|
||||
<input type='hidden' name='_admin_auth_key' value='{$this->registry->getClass('adminFunctions')->_admin_auth_key}' />
|
||||
{$links}
|
||||
<br style='clear: both' />
|
||||
|
||||
<div class='acp-box'>
|
||||
<h3>{$memberq}</h3>
|
||||
<table class='alternate_rows double_pad' cellspacing='0' cellpadding='0'>
|
||||
<tr>
|
||||
<th width='1%'> </th>
|
||||
<th>
|
||||
{$this->lang->words['t_qdisplayname']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=mem&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=mem&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
</th>
|
||||
HTML;
|
||||
|
||||
if ( $type == 'incomplete' )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<th width='1%'> </th>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<th>
|
||||
{$this->lang->words['t_qaddress']}
|
||||
HTML;
|
||||
|
||||
if ( $type != 'incomplete' )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=email&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=email&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</th>
|
||||
HTML;
|
||||
|
||||
if ( $type != 'incomplete' )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<th>
|
||||
{$this->lang->words['t_qposts']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=posts&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=posts&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
</th>
|
||||
HTML;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
|
||||
<th>
|
||||
HTML;
|
||||
switch( $type )
|
||||
{
|
||||
case 'validating':
|
||||
$IPBHTML .= <<<HTML
|
||||
{$this->lang->words['t_qsent']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=sent&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=sent&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
HTML;
|
||||
break;
|
||||
|
||||
case 'locked':
|
||||
$IPBHTML .= <<<HTML
|
||||
{$this->lang->words['t_qfailed']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=failed&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=failed&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
HTML;
|
||||
|
||||
case 'banned':
|
||||
$IPBHTML .= <<<HTML
|
||||
{$this->lang->words['t_qgroup']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=group&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=group&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
HTML;
|
||||
break;
|
||||
case 'incomplete':
|
||||
case 'spam':
|
||||
$IPBHTML .= <<<HTML
|
||||
{$this->lang->words['t_qgroup']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=group&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=group&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
HTML;
|
||||
break;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</th>
|
||||
<th>
|
||||
{$this->lang->words['t_qjoined']}
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=joined&ord=desc' title='{$this->lang->words['sort_desc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_desc.png' /></a>
|
||||
<a href='{$this->settings['base_url']}&{$this->form_code}&do={$type}&st={$st}&sort=joined&ord=asc' title='{$this->lang->words['sort_asc']}'><img src='{$this->settings['skin_acp_url']}/_newimages/sort_asc.png' /></a>
|
||||
</th>
|
||||
<th style='text-align: center'><input type='checkbox' id='maincheckbox' onclick='check_boxes()' /></th>
|
||||
</tr>
|
||||
{$content}
|
||||
</table>
|
||||
<div class='acp-actionbar' style='text-align: right'>
|
||||
<select name='type' id='manage_type' class='dropdown'>
|
||||
HTML;
|
||||
|
||||
switch( $type )
|
||||
{
|
||||
case 'validating':
|
||||
$IPBHTML .= <<<HTML
|
||||
<option value='approve'>{$this->lang->words['t_qapprove']}</option>
|
||||
<option value='ban'>{$this->lang->words['t_qban']}</option>
|
||||
<option value='spam'>{$this->lang->words['ts_spam_mark']}</option>
|
||||
<option value='delete'>{$this->lang->words['t_qdelete']}</option>
|
||||
<option value='resend'>{$this->lang->words['t_qresend']}</option>
|
||||
HTML;
|
||||
break;
|
||||
|
||||
case 'locked':
|
||||
$IPBHTML .= <<<HTML
|
||||
<option value='approve'>{$this->lang->words['t_qban']}</option>
|
||||
<option value='delete'>{$this->lang->words['t_qdelete']}</option>
|
||||
<option value='unlock'>{$this->lang->words['t_qunlock']}</option>
|
||||
HTML;
|
||||
break;
|
||||
|
||||
case 'banned':
|
||||
$IPBHTML .= <<<HTML
|
||||
<option value='unban'>{$this->lang->words['t_qunban']}</option>
|
||||
<option value='delete'>{$this->lang->words['t_qdelete']}</option>
|
||||
HTML;
|
||||
break;
|
||||
case 'incomplete':
|
||||
$IPBHTML .= <<<HTML
|
||||
<option value='delete'>{$this->lang->words['t_qdelete']}</option>
|
||||
<option value='finalize'>{$this->lang->words['t_qfinalizepartial']}</option>
|
||||
HTML;
|
||||
break;
|
||||
|
||||
case 'spam':
|
||||
$IPBHTML .= <<<HTML
|
||||
<option value='unspam'>{$this->lang->words['ts_spam_un']}</option>
|
||||
<option value='unspam_posts'>{$this->lang->words['ts_spam_un_posts']}</option>
|
||||
<option value='ban'>{$this->lang->words['ts_spam_ban']}</option>
|
||||
<option value='ban_blacklist'>{$this->lang->words['ts_spam_blacklist']}</option>
|
||||
HTML;
|
||||
break;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</select>
|
||||
<input type='submit' class='realbutton' value=' {$this->lang->words['t_processbutton']} ' />
|
||||
</div>
|
||||
</div>
|
||||
{$links}
|
||||
</form>
|
||||
|
||||
<script type='text/javascript'>
|
||||
|
||||
if( $('manage_type') && $('adminform') )
|
||||
{
|
||||
$('adminform').observe( 'submit', function(e) {
|
||||
if( \$F('manage_type') == 'delete' )
|
||||
{
|
||||
if( !confirm("{$this->lang->words['rusure_tools_memform']}" ) )
|
||||
{
|
||||
Event.stop(e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
HTML;
|
||||
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* No rows in queue
|
||||
*
|
||||
* @access public
|
||||
* @param string Language bit
|
||||
* @return string HTML
|
||||
*/
|
||||
public function queueNoRows( $lang ) {
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td class='tablerow2' colspan='8'><strong>{$lang}</strong></td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* Validating row
|
||||
*
|
||||
* @access public
|
||||
* @param array Record
|
||||
* @return string HTML
|
||||
*/
|
||||
public function validatingRow( $r="" ) {
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
$daysandhours = sprintf( $this->lang->words['t_daysandhours'], $r['_days'], $r['_rhours'] );
|
||||
$image = $r['spam_flag'] ? array( 'normal_spam.png', $this->lang->words['alt_spamuser'] ) :
|
||||
( ( $r['user_verified'] ) ? array( 'normal_tick.png', $this->lang->words['alt_normal'] ) :
|
||||
array( 'normal_lock.png', $this->lang->words['alt_unverifieduser'] ) );
|
||||
$color = ( $r['user_verified'] ) ? 'red' : 'green';
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><img src='{$this->settings['skin_acp_url']}/_newimages/members/{$image[0]}' alt='{$image[1]}' title='{$image[1]}' /></td>
|
||||
<td class='tablerow2'><a href='{$this->settings['base_url']}&module=members&section=members&do=viewmember&member_id={$r['member_id']}'><strong>{$r['members_display_name']}</strong></a>{$r['_coppa']}<div class='desctext'>{$this->lang->words['t_ipcolon']} <a href='{$this->settings['base_url']}&module=members&section=tools&do=learn_ip&ip={$r['ip_address']}'>{$r['ip_address']}</a></div></td>
|
||||
<td class='tablerow1'>{$r['email']}</td>
|
||||
<td class='tablerow1' align='center'>{$r['posts']}</td>
|
||||
<td class='tablerow1'><span style='color:{$color}'>{$r['_where']}</span><br />{$r['_entry']}<div class='desctext'>{$daysandhours}</div></td>
|
||||
<td class='tablerow1'>{$r['_joined']}</td>
|
||||
<td class='tablerow1' align='center'><input type='checkbox' id="mid_{$r['member_id']}" name='mid_{$r['member_id']}' value='1' /></td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* Locked row
|
||||
*
|
||||
* @access public
|
||||
* @param array Record
|
||||
* @return string HTML
|
||||
*/
|
||||
public function lockedRow( $r="" ) {
|
||||
|
||||
$failuresatlife = sprintf( $this->lang->words['t_failures'], $r['oldest_fail'], $r['newest_fail'], $r['failed_login_count'] );
|
||||
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><img src='{$this->settings['skin_acp_url']}/_newimages/members/normal_lock.png' alt='*' /></td>
|
||||
<td class='tablerow2'><a href='{$this->settings['base_url']}&module=members&section=members&do=viewmember&member_id={$r['member_id']}'><strong>{$r['members_display_name']}</strong></a><div class='desctext'>{$this->lang->words['t_groupcolon']} {$r['group_title']}</div><div class='desctext'>{$r['ip_addresses']}</div></td>
|
||||
<td class='tablerow1'>{$r['email']}</td>
|
||||
<td class='tablerow1' align='center'>{$r['posts']}</td>
|
||||
<td class='tablerow1'>{$failuresatlife}</td>
|
||||
<td class='tablerow1'>{$r['_joined']}</td>
|
||||
<td class='tablerow1' align='center'><input type='checkbox' id="mid_{$r['member_id']}" name='mid_{$r['member_id']}' value='1' /></td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* Banned row
|
||||
*
|
||||
* @access public
|
||||
* @param array Record
|
||||
* @return string HTML
|
||||
*/
|
||||
public function bannedRow( $r="" ) {
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><img src='{$this->settings['skin_acp_url']}/_newimages/members/normal_alert.png' alt='*' /></td>
|
||||
<td class='tablerow2'><a href='{$this->settings['base_url']}&module=members&section=members&do=viewmember&member_id={$r['member_id']}'><strong>{$r['members_display_name']}</strong></a></td>
|
||||
<td class='tablerow1'>{$r['email']}</td>
|
||||
<td class='tablerow1' align='center'>{$r['posts']}</td>
|
||||
<td class='tablerow1'>{$r['group_title']}</td>
|
||||
<td class='tablerow1'>{$r['_joined']}</td>
|
||||
<td class='tablerow1' align='center'><input type='checkbox' id="mid_{$r['member_id']}" name='mid_{$r['member_id']}' value='1' /></td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* Spam row
|
||||
*
|
||||
* @access public
|
||||
* @param array Record
|
||||
* @return string HTML
|
||||
*/
|
||||
public function spamRow( $r="" ) {
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><img src='{$this->settings['skin_acp_url']}/_newimages/members/normal_spam.png' alt='*' /></td>
|
||||
<td class='tablerow2'><a href='{$this->settings['base_url']}&module=members&section=members&do=viewmember&member_id={$r['member_id']}'><strong>{$r['members_display_name']}</strong></a></td>
|
||||
<td class='tablerow1'>{$r['email']}</td>
|
||||
<td class='tablerow1' align='center'>{$r['posts']}</td>
|
||||
<td class='tablerow1'>{$r['group_title']}</td>
|
||||
<td class='tablerow1'>{$r['_joined']}</td>
|
||||
<td class='tablerow1' align='center'><input type='checkbox' id="mid_{$r['member_id']}" name='mid_{$r['member_id']}' value='1' /></td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* Banned row
|
||||
*
|
||||
* @access public
|
||||
* @param array Record
|
||||
* @return string HTML
|
||||
*/
|
||||
public function incompleteRow( $r="" ) {
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$publicUrl = $this->settings['_original_base_url'] . '/' . PUBLIC_DIRECTORY . '/';
|
||||
|
||||
$r['email'] = ( $r['_emailIsOk'] ) ? $r['email'] : '<em>' . $this->lang->words['inc_no_email'] . '</em>';
|
||||
$r['members_display_name'] = ( $r['_dnameIsOk'] ) ? $r['members_display_name'] : '<em>' . $this->lang->words['inc_no_dname'] . '</em>';
|
||||
$r['serviceImg'] = "<img src='{$this->settings['skin_acp_url']}/_newimages/members/internet.png' />";
|
||||
|
||||
if ( $r['_regVia'] == 'facebook' )
|
||||
{
|
||||
$r['serviceImg'] = "<a href='http://www.facebook.com/profile.php?id={$r['fb_uid']}' target='_blank'><img src='{$this->settings['skin_acp_url']}/_newimages/members/facebook.png' /></a>";
|
||||
}
|
||||
|
||||
if ( $r['_regVia'] == 'twitter' )
|
||||
{
|
||||
$r['serviceImg'] = "<img src='{$this->settings['skin_acp_url']}/_newimages/members/twitter.png' />";
|
||||
}
|
||||
|
||||
if ( $r['_regVia'] == 'vkontakte' )
|
||||
{
|
||||
$r['serviceImg'] = "<img src='{$this->settings['skin_acp_url']}/_newimages/members/vkontakte.png' />";
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<tr>
|
||||
<td><a href='{$this->settings['base_url']}&module=members&section=members&do=viewmember&member_id={$r['member_id']}'><img src='{$r['pp_thumb_photo']}' style='width: 30px; height: 30px; border: 1px solid #d8d8d8' /></a></td>
|
||||
<td class='tablerow2'>
|
||||
<a href='{$this->settings['base_url']}&module=members&section=members&do=viewmember&member_id={$r['member_id']}'><strong>{$r['members_display_name']}</strong></a>
|
||||
<div class='desctext' style='margin-top:4px'>{$this->lang->words['inc_m_name']}: {$r['name']}</div>
|
||||
</td>
|
||||
<td class='tablerow1'>{$r['serviceImg']}</td>
|
||||
<td class='tablerow1'>{$r['email']}</td>
|
||||
<td class='tablerow1'>{$r['group_title']}</td>
|
||||
<td class='tablerow1'>{$r['_joined']}</td>
|
||||
<td class='tablerow1' align='center'><input type='checkbox' id="mid_{$r['member_id']}" name='mid_{$r['member_id']}' value='1' /></td>
|
||||
</tr>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -5,6 +5,6 @@
|
||||
<hr>
|
||||
You have reached this page in error, please use your back button to return to the forum.
|
||||
<hr>
|
||||
<a href="http://www.invisionboard.com/">IP.Board</a>
|
||||
<a href="http://www.invisionpower.com">IP.Board</a>
|
||||
</body>
|
||||
</html>
|
||||
Reference in new issue
Block a user