<? session_start();
 
require ('maildispatcher.class.php');
 
 
/*
 
initiate the class
 
*/
 
$maildispatcher = new maildispatcher;
 
 
/*
 
set the trigger on TRUE for sending e-mails
 
otherwise for testing, it DOESN'T
 
*/
 
 
// $maildispatcher->set_trigger(TRUE); // uncomment here for sending e-mails. // TEST/OPERATIONAL modus //
 
 
/*
 
set some recipients for sending your message.
 
if test_email submitted send only 1 test e-mail.
 
*/
 
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['test_email']) && '' != trim($_POST['test_email']))
 
{
 
    
 
    $maildispatcher->set_emails(array(trim($_POST['test_email'])));
 
    $testDispatcher = 1;
 
    
 
}
 
elseif($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['test_email']) && '' == trim($_POST['test_email']))
 
{
 
    
 
    $maildispatcher->set_emails(explode("\r\n",trim($_POST['recipients'])));
 
    
 
}
 
 
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 
<title>Mail Dispatcher</title>
 
<style>
 
body {font-family:Arial, Gadget, sans-serif; font-size:12px; margin:5px 100px 100px 100px}
 
.error_div {background-color:#000; color: #0F0;font-size:14px;padding:5px;}
 
h2 {font-size:24px; text-transform:uppercase; margin:5px 0 5px 3px;}
 
</style>
 
<script language="javascript" type="text/javascript">
 
function perhour(){
 
    
 
    var delay = document.getElementById('delay').value;
 
    var jump = document.getElementById('jump').value;
 
    
 
    var perhour = 60*60/delay*jump;
 
    var per15 = perhour/4;
 
    var permin = perhour/60;
 
    
 
    document.getElementById('ph').innerHTML = '  E-mails sent per hour: ' + parseInt(perhour) + '<br />  E-mails sent per 15 min.: ' + parseInt(per15) +  '<br />  E-mails sent per min.: ' + parseInt(permin);
 
    
 
}
 
</script>
 
</head>
 
<body>
 
<div style="background-color:#900; color:#FFF;">
 
<h2>Mail dispatcher</h2>
 
<div id="d2" style="padding:5px; font-size:125%; width:450px; float:left;">COUNTER</div>
 
<? 
 
/*
 
* Display the MODUS (TEST:OPERATIONAL)
 
*/
 
$maildispatcher->is_triggered();
 
 
/*
 
* validation (display's feedback)
 
*/
 
$err = $maildispatcher->validate($_POST);
 
if(FALSE !== $err && isset($_POST['top'])) echo('<div style="clear:both" class="error_div">'.$err.'</div>');
 
?>
 
<span id="ph"></span>
 
<div style="clear:both; height:0px;"></div>
 
</div>
 
<div style="padding:5px; background-color:#900; color:#FFF;"><textarea name="sent" id="sent" cols="45" rows="7" style="width:450px" onfocus="blur();">Do not write in here...</textarea><br /><input type="button" name="recall" id="recall" value="Recall the form" style="visibility:hidden" onclick="document.location='<?=$_SERVER['PHP_SELF']?>'" /></div>
 
<div style="padding:5px; background-color: #339; color:#FFF; font-size:125%;">
 
<?
 
 
/*
 
Send e-mails with parameters:
 
1- Subject of email message
 
2- Message to be sent
 
3- incremental counter for slicing e-mail array (DO NOT CHANGE IT, THE POST FORM TAKES CARE OF THAT)
 
4- additional headers
 
*/
 
if($_SERVER['REQUEST_METHOD'] == 'POST' && FALSE === $err):
 
    $headers = "FROM: My company<[email protected]>\r\n";
 
    $headers .= "Reply-To: My company<[email protected]>\r\n";
 
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
 
    $maildispatcher->send($_POST['subject'], $_POST['message'], $_POST['top'], $headers);    
 
endif;
 
 
($_SERVER['REQUEST_METHOD'] == 'POST' && FALSE !== $err || $_SERVER['REQUEST_METHOD'] != 'POST') ? $st = '' : $st = 'visibility:hidden';
 
?>
 
<form id="form1" name="form1" method="post" action="?" style=" <?=$st?>">
 
  Subject:<br />
 
  <input name="subject" type="text" id="subject" value="<?=$_SESSION['subject']?>" style="width:450px" />
 
  <br />
 
  Message:
 
  <br />
 
<textarea name="message" id="message" cols="45" rows="7" style="width:450px"><?=$_SESSION['message'];?></textarea>
 
* The message to send (HTML allowed)<br />
 
  <input name="top" type="hidden" id="top" value="<?php echo (isset($_SESSION['top']) && isset($_SESSION['jump'])) ? ($_SESSION['top']+$_SESSION['jump']) : 0;?>" />
 
Jump:<br />
 
  <input name="jump" type="text" id="jump" style="width:450px" value="<?php echo (isset($_SESSION['jump'])) ? $_SESSION['jump'] : 3;?>" onchange="perhour()" /> * Number of e-mails sent per block.
 
  <br />
 
Delay:<br />
 
  <input name="delay" type="text" id="delay" style="width:450px" value="<?php echo (isset($_SESSION['delay'])) ? $_SESSION['delay'] : 5;?>" onchange="perhour()" /> 
 
  * Number of seconds standing-by between two e-mail sending blocks.
 
  <br />
 
Recipients:<br />
 
<textarea name="recipients" id="recipients" cols="45" rows="12" style="width:450px">[email protected]
 
[email protected]
 
[email protected]
 
[email protected]
 
[email protected]
 
[email protected]
 
[email protected]
 
[email protected]
 
[email protected]
 
[email protected]</textarea> 
 
* List of recipients where e-mail is sent to.
 
<br />
 
Testing e-mail address:
 
<br />
 
  <input name="test_email" type="text" id="test_email" style="width:450px" value="<?php if(isset($_POST['test_email'])) echo(stripslashes($_POST['test_email']));?>" /> * If setted send only 1 e-mail as test instead of the whole bulk.
 
  <br />
 
  <input type="button" name="dispatcherSend" id="dispatcherSend" value="Submit" onclick="document.forms['form1'].submit()" />
 
</form>
 
</div>
 
</body>
 
</html>
 
 |