Всем привет!
Пытаюсь модернизировать один скрипт по добавлению лидов, найденный в интернете.
Смысл следующий:
Есть некая форма, которая отправляет пользовательские данные в crm, формируя лид. В ней есть стандартные инпуты (имя, телефон, почта) и один скрытый (формирующий название лида).
Я решил немного модернизировать данную форму:
1. При добавлении лид по умолчанию становится доступным для всех (хотя в настройках портала данная опция выключена). Порывшись в документации, я нашёл параметр OPENED, создал ещё одно скрытое поле со значением N в надежде, что теперь новые лиды доступны для всех не будут. Не тут-то было! Они как были доступны для всех, так и остались.
2. Я решил попробовать добавить название компании в форму, чтобы crm автоматически создавала компанию. Нашёл опять же поле COMPANY_ID, добавил в форму, и опять ничего. Но данную проблему я решил немного другим образом - название компании добавил в скрытый инпут, который формирует название лида, далее создал простой бизнес-процесс, который автоматически после добавления нужного лида конвертирует его в контакт+компанию, в итоге из названия лида формируется компания, а из имени, соответственно, контакт. Правда, телефон и почта у них одинаковые, но это полбеды.
В итоге вопрос: как мне всё-таки передать, что лид по умолчанию недоступен для всех?
Код формы:
| Код |
|---|
<fo rm action="" method="POST">
<input name="name" class="userName" maxlength="50" placeholder="Ваше имя" required="">
<input name="company" class="userName" maxlength="50" placeholder="Название вашей компании" required="">
<input name="phone" type="tel" class="userPhone" maxlength="50" placeholder="Ваш телефон" required="">
<input name="mail" type="email" class="userMail" maxlength="50" placeholder="Ваш E-mail*" required />
<input name="open" type="hidden" value="N" /> // Тут по идее должно передаваться значение, что лид недоступен для всех по умолчанию
<input class="send" type="submit" value="ОТПРАВИТЬ" />
</form>
|
Код обработчика:
| Код |
|---|
define('CRM_HOST', 'site.bitrix24.ru');
define('CRM_PORT', '443');
define('CRM_PATH', '/crm/configs/import/lead.php');
define('CRM_LOGIN', 'login');
define('CRM_PASSWORD', 'password');
/********************************************************************************************/
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
// массив передачи данных из формы в crm
$postData = array(
'TITLE' => $_POST['company'],
'NAME' => $_POST['name'],
'PHONE_WORK' =>$_POST['phone'],
'EMAIL_WORK' => $_POST['mail'],
'OPENED' => $_POST['open'],
);
if (defined('CRM_AUTH'))
{
$postData['AUTH'] = CRM_AUTH;
}
else
{
$postData['LOGIN'] = CRM_LOGIN;
$postData['PASSWORD'] = CRM_PASSWORD;
}
$fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
if ($fp)
{
$strPostData = '';
foreach ($postData as $key => $value)
$strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);
$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;
fwrite($fp, $str );
$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);
$response = explode("\r\n\r\n", $result);
$output = '<pre>'.print_r($response[1], 1).'</pre>';
}
else
{
echo 'Connection Failed! '.$errstr.' ('.$errno.')';
}
}
|