Version 3.2.3

This commit is contained in:
Neo committed 2025-12-19 00:34:03 -08:00
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 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' /> &nbsp; <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' /> &nbsp; <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']}&nbsp;{$this->lang->words['b_html']}
</p>
</td>
</tr>
<tr>
<td>
<label>{$this->lang->words['b_html']}</label>
</td>
<td>
{$form['mail_html']}&nbsp;
</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']}' /> &nbsp; &nbsp; <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']}' /> &nbsp; &nbsp; <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}&amp;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}&amp;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%'>&nbsp;</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>