Version 2.2.0 RC-1

This commit is contained in:
Neo committed 2025-12-19 00:22:37 -08:00
1 parent f73f8bff6d
commit 22f1b963ee
1034 files changed
+178610 -70897

No files matched your search

+115 -126
View File
@@ -2,27 +2,18 @@
/*
+--------------------------------------------------------------------------
| Invision Power Board 2.1.7
| Invision Power Board
| =============================================
| by Matthew Mecham
| (c) 2001 - 2005 Invision Power Services, Inc.
| (c) 2001 - 2006 Invision Power Services, Inc.
| http://www.invisionpower.com
| =============================================
| Web: http://www.invisionboard.com
| http://www.ibresource.ru/products/invisionpowerboard/
| Time: Tuesday 18th of July 2006 05:56:00 PM
| Release: 52f408a29988b02f45b5e6f4ba5af0ae
| Licence Info: http://www.invisionboard.com/?license
| http://www.ibresource.ru/license
+---------------------------------------------------------------------------
| INVISION POWER BOARD IS NOT FREE / OPEN SOURCE!
+---------------------------------------------------------------------------
| INVISION POWER BOARD ÍÅ ßÂËßÅÒÑß ÁÅÑÏËÀÒÍÛÌ ÏÐÎÃÐÀÌÌÍÛÌ ÎÁÅÑÏÅ×ÅÍÈÅÌ!
| Ïðàâà íà ÏÎ ïðèíàäëåæàò Invision Power Services
+---------------------------------------------------------------------------
| > $Date: 2005-12-06 17:36:43 +0000 (Tue, 06 Dec 2005) $
| > $Revision: 94 $
| > $Author: bfarber $
| > $Date: 2006-09-22 11:28:54 +0100 (Fri, 22 Sep 2006) $
| > $Revision: 567 $
| > $Author: matt $
+---------------------------------------------------------------------------
|
| > POST OFFICE Stuff
@@ -37,7 +28,7 @@
if ( ! defined( 'IN_ACP' ) )
{
print "<h1>Íåâåðíûé âõîä</h1> Ó Âàñ íåò äîñòóïà ê äèðåêòèâå ýòîãî ôàéëà. Åñëè Âû ïðîâîäèëè îáíîâëåíèÿ, óáåäèòåñü, ÷òî íå çàáûëè îáíîâèòü 'admin.php'.";
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded 'admin.php'.";
exit();
}
@@ -70,21 +61,12 @@ class ad_postoffice
exit();
}
$this->ipsclass->admin->nav[] = array( $this->ipsclass->form_code, 'Óïðàâëåíèå ïî÷òîé' );
$this->root_path = ROOT_PATH ? ROOT_PATH : './';
$this->ipsclass->admin->page_detail = "Ýòà ñåêöèÿ ïîçâîëÿåò ñîçäàâàòü íîâûå è óïðàâëÿòü ñòàðûìè ðàññûëêàìè.";
$this->ipsclass->admin->page_title = "Óïðàâëåíèå ðàññûëêàìè";
$this->ipsclass->admin->nav[] = array( $this->ipsclass->form_code, 'IPB Post Office' );
//-----------------------------------------
// Kill globals - globals bad, Homer good.
//-----------------------------------------
$tmp_in = array_merge( $_GET, $_POST, $_COOKIE );
foreach ( $tmp_in as $k => $v )
{
unset($$k);
}
$this->ipsclass->admin->page_detail = "You may manage previous bulk emails and create new bulk emails in this section.";
$this->ipsclass->admin->page_title = "IPB Post Office";
switch($this->ipsclass->input['code'])
{
@@ -143,15 +125,16 @@ class ad_postoffice
{
$id = intval( $this->ipsclass->input['id'] );
$this->ipsclass->DB->do_update( 'bulk_mail', array( 'mail_active' => 0,
'mail_updated' => time(),
), "mail_active=1" );
$this->ipsclass->DB->do_update( 'task_manager', array( 'task_enabled' => 0 ), "task_key='bulkmail'" );
$active = $this->ipsclass->DB->build_and_exec_query( array( 'select' => 'mail_id', 'from' => 'bulk_mail', 'where' => 'mail_active=1 AND mail_id <>'.$id ) );
if( !$active['mail_id'] )
{
$this->ipsclass->DB->do_update( 'task_manager', array( 'task_enabled' => 0 ), "task_key='bulkmail'" );
}
$this->ipsclass->DB->simple_exec_query( array( 'delete' => 'bulk_mail', 'where' => 'mail_id='.$id ) );
$this->ipsclass->main_msg = "Ðàññûëêà óäàëåíà";
$this->ipsclass->main_msg = "Bulk email deleted";
$this->mail_start();
}
@@ -167,7 +150,7 @@ class ad_postoffice
$this->ipsclass->DB->do_update( 'task_manager', array( 'task_enabled' => 0 ), "task_key='bulkmail'" );
$this->ipsclass->main_msg = "Îòïðàâëåíèå ðàññûëêè îòìåíåíî";
$this->ipsclass->main_msg = "Bulk email cancelled";
$this->mail_start();
}
@@ -317,7 +300,7 @@ class ad_postoffice
if ( ! $id )
{
$this->ipsclass->main_msg = "Íå âûáðàí ID, îòïðàâêà íåâîçìîæíà";
$this->ipsclass->main_msg = "There was no ID passed to this function";
$this->mail_start();
}
@@ -329,7 +312,7 @@ class ad_postoffice
if ( ! $mail['mail_subject'] and ! $mail['mail_content'] )
{
$this->ipsclass->main_msg = "Îòïðàâêà íåâîçìîæíà, ïèñüìî íå èìååò òåìû";
$this->ipsclass->main_msg = "Cannot send - the email doesn't have a subject and content";
$this->mail_start();
}
@@ -366,7 +349,7 @@ class ad_postoffice
// Sit back and watch the show
//-----------------------------------------
$this->ipsclass->main_msg = "Îòïðàâêà ðàññûëêè íà÷àòà";
$this->ipsclass->main_msg = "Bulk Mail Initiated";
$this->mail_start();
}
@@ -382,7 +365,7 @@ class ad_postoffice
if ( ! $id )
{
$this->ipsclass->main_msg = "Íå âûáðàí ID, îòïðàâêà íåâîçìîæíà";
$this->ipsclass->main_msg = "There was no ID passed to this function";
$this->mail_start();
}
@@ -394,7 +377,7 @@ class ad_postoffice
if ( ! $mail['mail_subject'] and ! $mail['mail_content'] )
{
$this->ipsclass->main_msg = "Îòïðàâêà íåâîçìîæíà, ïèñüìî íå èìååò òåìû";
$this->ipsclass->main_msg = "Cannot send - the email doesn't have a subject and content";
$this->mail_start();
}
@@ -433,32 +416,32 @@ class ad_postoffice
4 => array( 'section', $this->ipsclass->section_code ),
) );
$this->ipsclass->html .= "<div class='tableborder'><div class='maintitle'>Øàã 2: Îòïðàâêà ðàññûëêè {$the_count} ïîëüçîâàòåëÿì</div>";
$this->ipsclass->html .= "<div class='tdrow2' style='padding:4px'>
$this->ipsclass->html .= "<div class='tableborder'><div class='tableheaderalt'>Sending the bulk mail to {$the_count} members</div>";
$this->ipsclass->html .= "<div class='tablerow2' style='padding:4px'>
<fieldset>
<legend><strong>Ïèñüìî</strong></legend>
<legend><strong>Email Details</strong></legend>
<strong>Subject: {$mail['mail_subject']}</strong>
<br />
<br />
<div style='height:200px;white-space:pre'><iframe width='100%' height='200px' scrollbars='auto' src='{$this->ipsclass->base_url}&section={$this->ipsclass->section_code}&act=postoffice&code=mail_preview_do&id={$id}'></iframe></div>
<br />
<div align='center'><span class='fauxbutton'><a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_edit&id={$id}'>Èçìåíèòü ýòî ïèñüìî</a></span></div>
<div align='center'><span class='fauxbutton'><a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_edit&id={$id}'>Edit This Email</a></span></div>
<br />
Îòïðàâêà {$the_count} ïîëüçîâàòåëÿì.
Sending to <b>{$the_count}</b> &nbsp;members.
</fieldset>
<br />
<fieldset>
<legend><strong>Îòïðàâêà ïèñüìà</strong></legend>
Íàæàòèå íà êíîïêó 'Íà÷àòü îòïðàâêó ðàññûëêè' äîáàâèò ýòó ðàññûëêó â çàäà÷è ôîðóìà. Çàäà÷à îñòàíåòñÿ òåêóùåé äî òåõ ïîð, ïîêà âñå ïèñüìà íå áóäóò îòïðàâëåíû.
Çà ïðîöåññîì îòïðàâêè ïèñåì âû ìîæåòå ñëåäèòü â îêíå àäìíèñòðèðîâàíèÿ 'Óïðàâëåíèå ïî÷òîé', â ýòîì æå îêíå âû ìîæåòå îòìåíèòü äàëüíåéøóþ ðàññûëêó.
<legend><strong>Sending the Email</strong></legend>
Clicking the 'Start Sending The Emails' button below will activate the task manager's send bulk email function which will send the email in batches until the all the mail
has been sent. You can watch the progress from the main Post Office screen and cancel the email from being sent.
<br />
Íàñòîÿòåëüíî ðåêîìåíäóåòñÿ íå ðàññûëàòü áîëüøå 50 ïèñåì çà ðàç. Áîëüøåå êîëè÷åñòâî îòñûëàåìûõ ïèñåì ìîæåò 'ïðèòîðìîçèòü' ðàáîòó âàøåãî ñåðâåðà â ìîìåíò ðàññûëêè ïèñåì.
We strongly recommend that you opt to send 50 emails per cycle as a maximum. Any more per cycle could severly affect performance of your server while the mail is being sent out.
<br />
<br />
Ïî ñêîëüêó ðàç â ìèíóòó îòïðàâëÿåòñÿ ïî <em><b>n</b></em> ïèñåì, ýòîò ïðîöåññ ìîæåò çàíÿòü äëèòåëüíîå âðåìÿ.
As the mail is sent out in cycles of <em><b>n</b></em> &nbsp;per minute, it can take a while to process all the mail.
<br />
<br />
<div align='center'><b>Ïèñåì çà ðàç</b> <input type='text' class='realbutton' size='5' name='pergo' value='50' /> &nbsp; <input type='submit' value='Íà÷àòü îòïðàâêó ðàññûëêè' class='realbutton' /></form></div>
<div align='center'><b>Emails sent per cycle</b> <input type='text' class='realbutton' size='5' name='pergo' value='50' /> &nbsp; <input type='submit' value='Start Sending The Emails' class='realbutton' /></form></div>
</fieldset>
</div>
</div>";
@@ -575,7 +558,7 @@ class ad_postoffice
if ( ! $this->ipsclass->input['mail_subject'] or ! $this->ipsclass->input['mail_content'] )
{
$this->ipsclass->main_msg = "Âû äîëæíû ââåñòè òåìó è ñîäåðæèìîå ïèñüìà äî îòïðàâêè.";
$this->ipsclass->main_msg = "You must enter an email subject and email content before submitting.";
$this->mail_form( $type );
}
@@ -594,9 +577,11 @@ class ad_postoffice
}
}
$ids = $this->ipsclass->clean_int_array( $ids );
if ( ! count( $ids ) )
{
$this->ipsclass->main_msg = "Âû äîëæíû âûáðàòü õîòÿ áû îäíó ãðóïïó-àäðåñàòà.";
$this->ipsclass->main_msg = "You must select at least one group to send this email message to.";
$this->mail_form( $type );
}
@@ -606,16 +591,16 @@ class ad_postoffice
// Format the query
//-----------------------------------------
$query = $this->_build_members_query( array( 'mail_post_ltmt' => $_POST['mail_post_ltmt'],
'mail_filter_post' => $_POST['mail_filter_post'],
'mail_visit_ltmt' => $_POST['mail_visit_ltmt'],
'mail_filter_visit' => $_POST['mail_filter_visit'],
'mail_joined_ltmt' => $_POST['mail_joined_ltmt'],
'mail_filter_joined' => $_POST['mail_filter_joined'],
'mail_honor' => $_POST['mail_honor'],
'group_id_string' => implode( ",", $ids )
$query = $this->_build_members_query( array( 'mail_post_ltmt' => $this->ipsclass->input['mail_post_ltmt'],
'mail_filter_post' => intval($this->ipsclass->input['mail_filter_post']),
'mail_visit_ltmt' => $this->ipsclass->input['mail_visit_ltmt'],
'mail_filter_visit' => intval($this->ipsclass->input['mail_filter_visit']),
'mail_joined_ltmt' => $this->ipsclass->input['mail_joined_ltmt'],
'mail_filter_joined' => intval($this->ipsclass->input['mail_filter_joined']),
'mail_honor' => intval($this->ipsclass->input['mail_honor']),
'mail_groups' => $this->ipsclass->input['mail_groups'],
) );
//-----------------------------------------
// Count how many matches
//-----------------------------------------
@@ -624,7 +609,7 @@ class ad_postoffice
if ( ! $count['cnt'] )
{
$this->ipsclass->main_msg = "Ïî âàøåìó çàïðîñó íå íàéäåíî íè îäíîãî àäðåñà, ïîïðîáóéòå ðàñøèðèòü çàïðîñ (íàïðèìåð, âûáðàòü áîëüøåå êîëè÷åñòâî ãðóïï)";
$this->ipsclass->main_msg = "Your criteria didn't match any members - please adjust your current criteria";
$this->mail_form( $type );
}
@@ -660,22 +645,22 @@ class ad_postoffice
$this->ipsclass->input['id'] = $this->ipsclass->DB->get_insert_id();
$this->ipsclass->admin->save_log("Äîáàâëåíà ðàññûëêà ({$this->ipsclass->input['mail_subject']})");
$this->ipsclass->admin->save_log("Bulk mail ({$this->ipsclass->input['mail_subject']}) added");
$this->mail_send_start();
}
else
{
if ( ! $this->ipsclass->input['id'] )
{
$this->ipsclass->main_msg = "Íåâîçìîæíî ñîõðàíèòü, ID ðàññûëêè íå íàéäåí";
$this->ipsclass->main_msg = "Cannot save, no ID returned";
$this->mail_form($type);
}
$this->ipsclass->DB->do_update( 'bulk_mail', $save_array, 'mail_id='.$this->ipsclass->input['id'] );
$this->ipsclass->admin->save_log("Èçìåíåíà ðàññûëêà ({$this->ipsclass->input['mail_subject']})");
$this->ipsclass->admin->save_log("Bulk mail ({$this->ipsclass->input['mail_subject']}) edited");
$this->ipsclass->main_msg = "Ðàññûëêà èçìåíåíà";
$this->ipsclass->main_msg = "Bulk mail edited";
$this->mail_start();
}
}
@@ -689,23 +674,23 @@ class ad_postoffice
$this->ipsclass->input['id'] = intval($this->ipsclass->input['id']);
$dd_ltmt = array(
0 => array( 'lt' , "ìåíüøå ÷åì" ),
1 => array( 'mt' , "áîëüøå ÷åì" )
0 => array( 'lt' , "less than" ),
1 => array( 'mt' , "more than" )
);
if ( $type == 'add' )
{
$mail = array();
$title = "Øàã 1: Ñîçäàíèå íîâîé ðàññûëêè";
$button = "Ïðîäîëæèòü...";
$title = "Step 1: Start New Bulk Email";
$button = "Proceed...";
$honour_checked = 'checked="checked"';
$html_checked = '';
}
else
{
$mail = $this->ipsclass->DB->simple_exec_query( array( 'select' => '*', 'from' => 'bulk_mail', 'where' => 'mail_id='.$this->ipsclass->input['id'] ) );
$title = "Èçìåíåíèå ðàññûëêè";
$button = "Èçìåíèòü ýòó ðàññûëêó";
$title = "Editing Stored Mail";
$button = "Edit Mail";
//-----------------------------------------
// Unpack more..
@@ -769,36 +754,36 @@ class ad_postoffice
</script>
";
$this->ipsclass->html .= "<div class='tableborder'><div class='maintitle'>{$title}</div>";
$this->ipsclass->html .= "<div class='tdrow2' style='padding:4px'>
$this->ipsclass->html .= "<div class='tableborder'><div class='tableheaderalt'>{$title}</div>";
$this->ipsclass->html .= "<div class='tablerow2' style='padding:4px'>
<fieldset>
<legend><strong>Òåìà ïèñüìà</strong></legend>
<legend><strong>Email Subject</strong></legend>
<input type='text' size='60' maxsize='250' class='textinput' style='width:100%' name='mail_subject' value='{$mail_subject}' />
</fieldset>
<br />
<fieldset>
<legend><strong>Ñîäåðæèìîå ïèñüìà</strong></legend>
<legend><strong>Email Content</strong></legend>
<textarea cols='60' rows='20' class='textinput' style='width:100%' name='mail_content'>{$mail_content}</textarea>
<br />
<fieldset>
<legend><strong>Íàñòðîéêè ïèñüìà</strong></legend>
<input type='checkbox' name='mail_honor' value='1' {$honour_checked} />&nbsp; Îòïðàâèòü ïèñüìî òîëüêî òåì ïîëüçîâàòåëÿì, êîòîðûå ðàçðåøèëè â ñâîåì ïðîôèëå ïîëó÷àòü ïèñüìà îò Àäìèíèñòðàòîðîâ?
<legend><strong>Mail Sending Options</strong></legend>
<input type='checkbox' name='mail_honor' value='1' {$honour_checked} />&nbsp; Honor 'Allow admin to email me' member setting to only email those who have opted in?
<br/ >
<input type='checkbox' name='mail_html_on' value='1' {$html_checked} />&nbsp; Îòïðàâèòü ïèñüìî êàê HTML (ðàçðåøåíî ôîðìàòèðîâàíèå òåêñòà è HTML-òýãè)?
<input type='checkbox' name='mail_html_on' value='1' {$html_checked} />&nbsp; Send email in HTML format (full HTML formatting & tags allowed)
</fieldset>
</fieldset>";
$this->ipsclass->html .= "</div></div><br />";
$this->ipsclass->html .= "<div class='tableborder'><div class='maintitle'>Ôèëüòðû</div>";
$this->ipsclass->html .= "<div class='tdrow2' style='padding:4px'>
$this->ipsclass->html .= "<div class='tableborder'><div class='tableheaderalt'>Filters</div>";
$this->ipsclass->html .= "<div class='tablerow2' style='padding:4px'>
<table width='100%' cellpadding='2' cellspacing='0' border='0'>
<tr>
<td width='30%'>
<fieldset>
<legend><strong>Ãðóïïû àäðåñàòû:</strong></legend>";
<legend><strong>Send to Groups:</strong></legend>";
foreach( $this->ipsclass->cache['group_cache'] as $bleh => $g )
foreach( $this->ipsclass->cache['group_cache'] as $g )
{
if ( $g['g_id'] == $this->ipsclass->vars['guest_group'] )
{
@@ -822,20 +807,20 @@ class ad_postoffice
</td>
<td width='70%' valign='top'>
<fieldset>
<legend><strong>Äîïîëíèòåëüíûå ôèëüòðû</strong></legend>
<legend><strong>Additional Filters</strong></legend>
<table width='100%' cellpadding='4' cellspacing='0' border='0'>
<tr>
<td width='60%'>Îòïðàâèòü òåì ïîëüçîâàòåëÿì, ó êîòîðûõ... <em><b>n</b></em> ñîîáùåíèé <div class='graytext'>Îñòàâüòå ïîëå ïóñòûì, åñëè âû íå õîòèòå èñïîëüçîâàòü ýòîò ôèëüòð</div></td>
<td width='60%'>Send to members with <em><b>n</b></em> posts<div class='graytext'>Leave blank to not filter</div></td>
<td width='40%'>". $this->ipsclass->adskin->form_dropdown('mail_post_ltmt', $dd_ltmt, $_POST['mail_post_ltml'] ? $_POST['mail_post_ltml'] : $mail['mail_post_ltmt'] ).' '.
$this->ipsclass->adskin->form_simple_input( "mail_filter_post", $_POST['mail_filter_post'] ? $_POST['mail_filter_post'] : $mail['mail_filter_post'], 7 )."</td>
</tr>
<tr>
<td width='60%'>Îòïðàâèòü òåì ïîëüçîâàòåëÿì, ÷åé ïîñëåäíèé âèçèò áûë... <em><b>n</b></em> äíåé íàçàä <div class='graytext'>Îñòàâüòå ïîëå ïóñòûì, åñëè âû íå õîòèòå èñïîëüçîâàòü ýòîò ôèëüòð.</div></td>
<td width='60%'>Send to members who's last visit was <em><b>n</b></em> days ago<div class='graytext'>Leave blank to not filter</div></td>
<td width='40%'>". $this->ipsclass->adskin->form_dropdown('mail_visit_ltmt', $dd_ltmt, $_POST['mail_visit_ltml'] ? $_POST['mail_visit_ltml'] : $mail['mail_visit_ltmt'] ).' '.
$this->ipsclass->adskin->form_simple_input( "mail_filter_visit", $_POST['mail_filter_visit'] ? $_POST['mail_filter_visit'] : $mail['mail_filter_visit'], 7 )."</td>
</tr>
<tr>
<td width='60%'>Îòïðàâèòü òåì ïîëüçîâàòåëÿì, êîòîðûå çàðåãèñòðèðîâàëèñü... <div class='graytext'>Îñòàâüòå ïîëå ïóñòûì, åñëè âû íå õîòèòå èñïîëüçîâàòü ýòîò ôèëüòð.</div></td>
<td width='60%'>Send to members who joined <em><b>n</b></em> days ago<div class='graytext'>Leave blank to not filter</div></td>
<td width='40%'>". $this->ipsclass->adskin->form_dropdown('mail_joined_ltmt', $dd_ltmt, $_POST['mail_joined_ltml'] ? $_POST['mail_joined_ltml'] : $mail['mail_joined_ltmt'] ).' '.
$this->ipsclass->adskin->form_simple_input( "mail_filter_joined", $_POST['mail_filter_joined'] ? $_POST['mail_filter_joined'] : $mail['mail_filter_joined'], 7 )."</td>
</tr>
@@ -845,43 +830,43 @@ class ad_postoffice
</tr>
</table>
</div>
<div align='center' class='pformstrip'><input class='realbutton' onclick='runpreview()' type='button' value='Ïðåäïðîñìîòð' /> &nbsp; &nbsp; <input class='realdarkbutton' type='submit' value='$button' /></form></div>
<div align='center' class='tablesubheader'><input class='realbutton' onclick='runpreview()' type='button' value='Preview' /> &nbsp; &nbsp; <input class='realdarkbutton' type='submit' value='$button' /></form></div>
</div>";
$this->ipsclass->html .= "<br />
<div class='tableborder'>
<div class='pformstrip'>Äîñòóïíûå òýãè</div>
<div class='tdrow1' style='padding:4px'>Â âàøåé ðàññûëêå âû ìîæåòå èñïîëüçîâàòü ñëåäóþùèå òýãè, êîòîðûå áóäóò çàìåíåíû ïðè îòïðàâêå ðàññûëêè.</div>
<table cellpadding='2' class='tdrow1' width='100%' cellspacing='0' border='0'>
<div class='tablesubheader'>Quick Tags</div>
<div class='tablerow1' style='padding:4px'>You may use the following 'quick tags' in your email and they will be converted when the email is sent.</div>
<table cellpadding='2' class='tablerow1' width='100%' cellspacing='0' border='0'>
<tr>
<td><strong>{board_name}</strong></td>
<td><em>Íàçâàíèå ôîðóìà</em></td>
<td><em>The name of your board</em></td>
<td><strong>{board_url}</strong></td>
<td><em>Àäðåñ ôîðóìà</em></td>
<td><em>The URL to your board</em></td>
</tr>
<tr>
<td><strong>{reg_total}</strong></td>
<td><em>Îáùåå êîëè÷åñòâî çàðåãèñòðèðîâàííûõ ïîëüçîâàòåëåé</em></td>
<td><em>The total number of registered members</em></td>
<td><strong>{total_posts}</strong></td>
<td><em>Îáùåå êîëè÷åñòâî ñîîáùåíèé íà ôîðóìå</em></td>
<td><em>The total number of posts</em></td>
</tr>
<tr>
<td><strong>{busy_count}</strong></td>
<td><em>Ìàñêèìàëüíîå êîëè÷åñòâî ïîëüçîâàòåëåé îíëàéí</em></td>
<td><em>The most number of users online</em></td>
<td><strong>{busy_time}</strong></td>
<td><em>Äàòà ðåêîäà ïîñåùàåìîñòè ôîðóìà</em></td>
<td><em>The time that the most number of members were online</em></td>
</tr>
<tr>
<td><strong>{member_id}</strong></td>
<td><em>ID ïîëüçîâàòåëÿ - ïîëó÷àòåëÿ ïèñüìà</em></td>
<td><em>The member ID of the email recipient</em></td>
<td><strong>{member_name}</strong></td>
<td><em>Èìÿ ïîëüçîâàòåëÿ - ïîëó÷àòåëÿ ïèñüìà</em></td>
<td><em>The member name of the email recipient</em></td>
</tr>
<tr>
<td><strong>{member_joined}</strong></td>
<td><em>Äàòà ðåãèñòðàöèèè ïîëüçîâàòåëÿ - ïîëó÷àòåëÿ ïèñüìà</em></td>
<td><em>The member join date of the email recipient</em></td>
<td><strong>{member_posts}</strong></td>
<td><em>Êîëè÷åñòâî ñîîáùåíèé ïîëüçîâàòåëÿ - ïîëó÷àòåëÿ ïèñüìà</em></td>
<td><em>The number of posts for the email recipient</em></td>
</tr>
</table>
</div>";
@@ -896,13 +881,13 @@ class ad_postoffice
function mail_start()
{
$this->ipsclass->adskin->td_header[] = array( "&nbsp;" , "1%" );
$this->ipsclass->adskin->td_header[] = array( "Òåìà" , "30%" );
$this->ipsclass->adskin->td_header[] = array( "Äàòà îòïðàâêè" , "15%" );
$this->ipsclass->adskin->td_header[] = array( "Êîìó îòïðàâëåíî" , "15%" );
$this->ipsclass->adskin->td_header[] = array( "Âðåìÿ çàíÿëî" , "15%" );
$this->ipsclass->adskin->td_header[] = array( "Subject" , "30%" );
$this->ipsclass->adskin->td_header[] = array( "Sent On" , "15%" );
$this->ipsclass->adskin->td_header[] = array( "Sent To" , "15%" );
$this->ipsclass->adskin->td_header[] = array( "Time Taken" , "15%" );
$this->ipsclass->adskin->td_header[] = array( "&nbsp;" , "1%" );
$this->ipsclass->html .= $this->ipsclass->adskin->start_table( "Ñîõðàíåííûå ðàññûëêè" );
$this->ipsclass->html .= $this->ipsclass->adskin->start_table( "Your stored bulk email" );
//-----------------------------------------
// Get mail from DB
@@ -918,7 +903,7 @@ class ad_postoffice
if ( $r['mail_updated'] == $r['mail_start'] )
{
$time_taken = 'Íå îòïðàâëåíî';
$time_taken = 'Not yet sent';
}
else
{
@@ -934,21 +919,21 @@ class ad_postoffice
$time_taken = ceil( $time_taken / 60 );
}
$time_taken .= ' ìèíóò';
$time_taken .= ' minutes';
}
if ( $r['mail_active'] )
{
$inprogress = " <em>( Ïðîèñõîäèò îòïðàâêà - <a href='#' onclick=\"maincheckdelete('{$this->ipsclass->base_url}&{$this->ipsclass->form_code_js}&code=mail_send_cancel', 'OK to cancel bulk mail?'); return false;\">Îòìåíèòü îòïðàâêó ýòîé ðàññûëêè</a> )</em>";
$inprogress = " <em>( Sending in progress - <a href='#' onclick=\"maincheckdelete('{$this->ipsclass->base_url}&{$this->ipsclass->form_code_js}&code=mail_send_cancel', 'OK to cancel bulk mail?'); return false;\">Cancel</a> )</em>";
}
$this->ipsclass->html .= $this->ipsclass->adskin->add_td_row( array(
"<img src='{$this->ipsclass->adskin->img_url}/images/skin_icon_email.gif' border='0' />",
"<b>{$r['mail_subject']}</b> $inprogress",
$this->ipsclass->get_date( $r['mail_start'], 'SHORT' ),
$this->ipsclass->do_number_format( $r['mail_sentto'] ).' ïîëüçîâàòåëåé',
$this->ipsclass->do_number_format( $r['mail_sentto'] ).' members',
$time_taken,
"<div align='center'><img id='mid-{$r['mail_id']}' src='{$this->ipsclass->skin_url}/images/filebrowser_action.gif' border='0' alt='Èçìåíèòü ðàññûëêó' class='ipd' /></div>"
"<div align='center'><img id='mid-{$r['mail_id']}' src='{$this->ipsclass->skin_acp_url}/images/filebrowser_action.gif' border='0' alt='Options' class='ipd' /></div>"
) );
$this->ipsclass->html .= <<<EOF
@@ -956,9 +941,9 @@ class ad_postoffice
menu_build_menu(
"mid-{$r['mail_id']}",
new Array(
img_item + " <a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_send_start&id={$r['mail_id']}'>Ïîâòîð</a>",
img_item + " <a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_edit&id={$r['mail_id']}'>Èçìåíèòü ðàññûëêó</a>",
img_item + " <a href='#' onclick=\"maincheckdelete('{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_delete&id={$r['mail_id']}');return false;\">Óäàëèòü ýòó ðàññûëêó</a>"
img_item + " <a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_send_start&id={$r['mail_id']}'>Re-send...</a>",
img_edit + " <a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_edit&id={$r['mail_id']}'>Edit...</a>",
img_delete + " <a href='#' onclick=\"maincheckdelete('{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=mail_delete&id={$r['mail_id']}');return false;\">Delete...</a>"
) );
</script>
EOF;
@@ -1008,7 +993,7 @@ EOF;
if ( $args['mail_groups'] )
{
$tmp_q = 'mgroup IN ('. $args['mail_groups'] .')';
$tmp_q = '(mgroup IN ('. $args['mail_groups'] .')';
$temp = explode( ',', $args['mail_groups'] );
@@ -1023,7 +1008,11 @@ EOF;
$this->ipsclass->DB->cur_query = "";
}
$tmp_q .= " OR ( ".implode( ' OR ', $tmp ). " )";
$tmp_q .= " OR ( ".implode( ' OR ', $tmp ). " ) )";
}
else
{
$tmp_q .= ")";
}
$query[] = $tmp_q;
@@ -1058,15 +1047,15 @@ EOF;
function _get_default_mail_contents()
{
$mail = "Óâàæàåìûé(àÿ) {member_name}.\n\n\n\n-------------------------------------\nÑòàòèñòèêà ôîðóìà \"{board_name}\":\n"
."-------------------------------------\nÂñåãî ïîëüçîâàòåëåé çàðåãèñòðèðîâàíî: {reg_total}\nÂñåãî îñòàâëåíî ñîîáùåíèé: {total_posts}\n"
."Ðåêîðä ïîñåùàåìîñòè: {busy_count} ïîëüçîâàòåëåé áûëî {busy_time}\n\n"
."-------------------------------------\nÓäîáíûå ññûëêè\n"
."-------------------------------------\nÀäðåñ ôîðóìà: {board_url}\nÂîéòè íà ôîðóì: {board_url}?act=Login&CODE=00\n"
."Âîññòàíîâëåíèå óòåðÿííîãî ïàðîëÿ: {board_url}?act=Reg&CODE=10\n\n"
."-------------------------------------\nÊàê îòïèñàòüñÿ îò ðàññûëîê?\n"
."-------------------------------------\nÏîæàëóéñòà, èçìåíèòå â âàøåì ïðîôèëå ({board_url}?act=UserCP&CODE=02) íàñòðîéêè e-mail "
."è óáåðèòå ãàëî÷êó 'Ñîîáùàòü ìíå îáî âñåõ èçìåíåíèÿõ, ïðîâîäèìûõ àäìèíèñòðàòîðîì ôîðóìà'.";
$mail = "{member_name},\n\n\n\n-------------------------------------\n{board_name} Statistics:\n"
."-------------------------------------\nRegistered Users: {reg_total}\nTotal Posts: {total_posts}\n"
."Busiest Time: {busy_count} users were online on {busy_time}\n\n"
."-------------------------------------\nHandy Links\n"
."-------------------------------------\nBoard Address: {board_url}\nLog In: {board_url}?act=Login&CODE=00\n"
."Lost Password Recovery: {board_url}?act=Reg&CODE=10\n\n"
."-------------------------------------\nHow to unsubscribe\n"
."-------------------------------------\nVisit your email preferences ({board_url}?act=UserCP&CODE=02) and ensure "
."that the box for 'Send me any updates sent by the board administrator' is unchecked and submit the form";
return $mail;