| Current Path : /var/www/element/data/www/pressme.ru/ |
| Current File : /var/www/element/data/www/pressme.ru/contact.php |
<?php
if(!$_POST) exit;
// Email address verification, do not edit.
function isEmail($email) {
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i",$email));
}
if (!defined("PHP_EOL")) define("PHP_EOL", "\r\n");
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$comments = $_POST['comments'];
if(trim($name) == '') {
echo '<div class="error_message">Attention! You must enter your name.</div>';
exit();
} else if(trim($email) == '') {
echo '<div class="error_message">Введите правильный email.</div>';
exit();
} else if(trim($phone) == '') {
echo '<div class="error_message">Введите правильный телефон.</div>';
exit();
} else if(!is_numeric($phone)) {
echo '<div class="error_message">Номер телефона может содержать только цифры.</div>';
exit();
} else if(!isEmail($email)) {
echo '<div class="error_message">Введите правильный email.</div>';
exit();
} else if(trim($comments) == '') {
echo '<div class="error_message">Attention! Please enter your message.</div>';
exit();
}
if(get_magic_quotes_gpc()) {
$comments = stripslashes($comments);
}
// Configuration option.
// Enter the email address that you want to emails to be sent to.
// Example $address = "joe.doe@yourdomain.com";
//$address = "example@themeforest.net";
//$address = "fgpatrick2002@gmail.com";
$address = "go@optimism.ru";
// Configuration option.
// i.e. The standard subject will appear as, "You've been contacted by John Doe."
// Example, $e_subject = '$name . ' has contacted you via Your Website.';
$e_subject = 'Заявка с pressme.ru от ' . $name . '.';
// Configuration option.
// You can change this if you feel that you need to.
// Developers, you may wish to add more fields to the form, in which case you must be sure to add them here.
$e_body = "Имя: $name" . PHP_EOL . PHP_EOL;
$e_reply = "E-mail: $email\r\nPhone: $phone";
$e_content = "Сообщение:\r\n$comments" . PHP_EOL . PHP_EOL;
$msg = wordwrap( $e_body . $e_content . $e_reply, 70 );
$headers = "From: $email" . PHP_EOL;
$headers .= "Reply-To: $email" . PHP_EOL;
$headers .= "MIME-Version: 1.0" . PHP_EOL;
$headers .= "Content-type: text/plain; charset=utf-8" . PHP_EOL;
$headers .= "Content-Transfer-Encoding: quoted-printable" . PHP_EOL;
////////BITRIX-24
// CRM server conection data
define('CRM_HOST', 'optimism.bitrix24.ru'); // your CRM domain name
define('CRM_PORT', '443'); // CRM server port
define('CRM_PATH', '/crm/configs/import/lead.php'); // CRM server REST service path
// CRM server authorization data
define('CRM_LOGIN', 'robot-bitrix@optimism.ru'); // login of a CRM user able to manage leads
define('CRM_PASSWORD', 'Hj,jn<bnhbrc'); // password of a CRM user
// OR you can send special authorization hash which is sent by server after first successful connection with login and password
//define('CRM_AUTH', 'e54ec19f0c5f092ea11145b80f465e1a'); // authorization hash
/********************************************************************************************/
$leadData = $_POST;
$postDataBx = array(
'TITLE' => 'Заявка с pressme.ru от '.date('Y-m-d H:i'),
'NAME' => $leadData['name'],
'EMAIL_WORK' => $leadData['email'],
'PHONE_WORK' => $leadData['phone'],
'COMMENTS' => $leadData['comments'],
'SOURCE_ID' => 12
);
// append authorization data
if (defined('CRM_AUTH'))
{
$postDataBx['AUTH'] = CRM_AUTH;
}
else
{
$postDataBx['LOGIN'] = CRM_LOGIN;
$postDataBx['PASSWORD'] = CRM_PASSWORD;
}
// open socket to CRM
$fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
if ($fp)
{
// prepare POST data
$strPostData = '';
foreach ($postDataBx as $key => $value)
$strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);
//$strPostData .= "&UF_CRM_1408529282=,69";
// prepare POST headers
$str = "POST ".CRM_PATH." HTTP/1.0\r\n";
$str .= "Host: ".CRM_HOST."\r\n";
$str .= "Content-Type: application/x-www-form-urlencoded\r\n";
$str .= "Content-Length: ".strlen($strPostData)."\r\n";
$str .= "Connection: close\r\n\r\n";
$str .= $strPostData;
// send POST to CRM
fwrite($fp, $str);
// get CRM headers
$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);
// cut response headers
$response = explode("\r\n\r\n", $result);
$result = explode(",",$response[1]);
$result = preg_replace("/^\'ID\'\:\'([0-9]+)\'$/",'$1',$result[1]);
//var_dump($response);die;
// $output = '<pre>'.print_r($response[1], 1).'</pre>';die;
//$result = '1';
}
else
{
echo 'Connection Failed! '.$errstr.' ('.$errno.')';
}
///////////////
if(mail($address, $e_subject, $msg, $headers)) {
// Email has sent successfully, echo a success page.
echo "<fieldset>";
echo "<div id='success_page'>";
echo "<h1>Заявка отправлена</h1>";
echo "<p>Cпасибо, мы свяжемся с вами.</p>";
echo "</div>";
echo "</fieldset>";
} else {
echo 'ERROR!';
}