<html>
    <head>
      <title>Send SMS to Dmitri's mobile phone</title>
	<script language="JavaScript"><!--

	function apCounterUpd(obj, numid) {
	    var MaxLen = 128;
	    var n = document.getElementById(numid);
	    if (!n) {
			return;
	    }
		    
	    var len = (MaxLen - obj.value.length);
	    if (n.style) {
			    n.style.color = (len < 0 ? 'red' : 'green');
	    }
	    n.innerHTML = len;
}
-->
</script>
    </head>
	          
<body bgcolor=#d0eed0>
<center>

<? 
    if (isset($_POST['Submit'])){
	if ($_POST['smsText']){
	    //echo "Message has been sent !!!<br>\nSender: " . getFrom();
	    $message = $_POST['smsText'] . "\n" . getFrom();
	    echo "Result: " . mymail("37251974290@sms.emt.ee","",$message,"","dima@festart.ee") . "\n";
	}    
    }	
    showForm(); 
?>

</body>
</html>


<? function showForm(){ ?>



<form action='<?= $_SERVER['PHP_SELF'] ?>' method='POST'> 
<table  bgcolor="#0033CC"align="center" >
<tr><td>
<table  bgcolor="#CCCCCC">
        <tr bgcolor="#0000FF">
          <td colspan="2" nowrap > <div align="center"><font color="#FFFFFF"><b>Send SMS to Dmitri's mobile phone.</b></font></div></td>
        </tr>
        <tr> 
          <td bgcolor="#CCCCCC" > <div align="right">Message:</div></td>
          <td><textarea onkeyup="apCounterUpd(this, 'smsnum')" onchange="apCounterUpd(this, 'smsnum')" name=smsText wrap=virtual cols=20 rows=8></textarea></td>
        </tr>
        <tr> 
          <td bgcolor="#CCCCCC"> <div align="right">Count:</div></td>
          <td><span id=smsnum>128</span></td>
        </tr>
        <tr> 
          <td bgcolor="#CCCCCC"></td>
          <td bgcolor="#CCCCCC"><input name="Submit" type="submit" value="        Send SMS        "></td>
        </tr>
      </table>
</td></tr>
</table>

<? } ?>

<?

function mymail($to,$subject,$message,$headers,$from)
{

  // set as global variable
//    global $GLOBAL;
     
//  // get From address
//    if ( preg_match("/From:.*?[A-Za-z0-9\._%-]+\@[A-Za-z0-9\._%-]+.*/", $headers, $froms) ) {
//         preg_match("/[A-Za-z0-9\._%-]+\@[A-Za-z0-9\._%-]+/", $froms[0], $fromarr);
//	 $from = $fromarr[0];
//    }*/

  // Open an SMTP connection
    $cp = fsockopen ("localhost", "25", &$errno, &$errstr, 1);
    if (!$cp)
     return "Failed to even make a connection";
    $res=fgets($cp,256);
    if(substr($res,0,3) != "220") return "Failed to connect";
				 
  // Say hello...
    fputs($cp, "HELO "."localhost"."\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "250") return "Failed to Introduce";
					  
/*  // perform authentication
    fputs($cp, "auth login\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "334") return "Failed to Initiate Authentication";
						  
    fputs($cp, base64_encode($GLOBAL["SMTP_USERNAME"])."\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "334") return "Failed to Provide Username for Authentication";
						        
    fputs($cp, base64_encode($GLOBAL["SMTP_PASSWORD"])."\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "235") return "Failed to Authenticate";
*/							     
  // Mail from...
    fputs($cp, "MAIL FROM: <$from>\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "250") return "MAIL FROM failed";
								     
  // Rcpt to...
    fputs($cp, "RCPT TO: <$to>\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "250") return "RCPT TO failed";
									     
  // Data...
    fputs($cp, "DATA\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "354") return "DATA failed";
						     
  // Send To:, From:, Subject:, other headers, blank line, message, and finish
  // with a period on its own line (for end of message)
    fputs($cp, "To: $to\r\nFrom: $from\r\nSubject: $subject\r\n$headers\r\n\r\n$message\r\n.\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "250") return "Message Body Failed";
											       
  // ...And time to quit...
    fputs($cp,"QUIT\r\n");
    $res=fgets($cp,256);
    if(substr($res,0,3) != "221") return "QUIT failed";
				       
    return true;
}

function getFrom(){
    $from = $_SERVER['REMOTE_ADDR'];
    if ($_SERVER['HTTP_X_FORWARDED_FOR'])
	$from = $_SERVER['HTTP_X_FORWARDED_FOR'] ."@". $_SERVER['REMOTE_ADDR'];
//	$from = gethostbyaddr($_SERVER['HTTP_X_FORWARDED_FOR']) ."@". $from;
    return $from;
}

?>