. , http://marketplace.1c-bitrix.ru/solutions/...traf.smartcall/
, . , : , . , . ?
<?
if(!defined("B_PROLOG_INCLUDED")||B_PROLOG_INCLUDED!==true)die();
/**
* Bitrix vars
*
* @var array $arParams
* @var array $arResult
* @var CBitrixComponentTemplate $this
* @global CMain $APPLICATION
* @global CUser $USER
*/
?>
<?CJSCore::Init(array("jquery"));?>
<?if(!$arParams['TEMPLATE_THEME']) $arParams['TEMPLATE_THEME'] = 'blue';?>
<link href="<?echo $this->GetFolder().'/themes/'.$arParams['TEMPLATE_THEME'].'/style.css';?>" type="text/css" rel="stylesheet" />
<!-- Callback Smart -->
<div id="form_wrapper_call">
<?if(!empty($arResult["ERROR_MESSAGE"]))
{
foreach($arResult["ERROR_MESSAGE"] as $v)
ShowError($v);
}
?>
<div id="fhead">
<h3><?=GetMessage("MFT_HEADER")?></h3>
<span class="wr_close"><img src="<?=$templateFolder?>/images/cls_btn.png" /></span>
</div>
<div class="frm_place">
<form action="<?=$componentPath?>/script/senddata.php" method="POST" id="call_ord">
<?=bitrix_sessid_post()?>
<div>
<input type="text" name="v_name" id="v_name" placeholder="<?=GetMessage("MFT_NAME")?>" value="" maxlength="30" />
<?if(empty($arParams["REQUIRED_FIELDS"]) || in_array("NAME", $arParams["REQUIRED_FIELDS"])):?><span class="mf-req">*</span><?endif?>
</div>
<div>
<input type="text" name="v_phone" id="v_phone" placeholder="<?=GetMessage("MFT_PHONE")?>" value="" maxlength="20" />
<?if(empty($arParams["REQUIRED_FIELDS"]) || in_array("PHONE", $arParams["REQUIRED_FIELDS"])):?><span class="mf-req">*</span><?endif?>
</div>
<div>
<textarea name="v_time" id="v_time" maxlength="150"><?=GetMessage("MFT_TIME")?></textarea>
<?if(empty($arParams["REQUIRED_FIELDS"]) || in_array("TIMETOCALL", $arParams["REQUIRED_FIELDS"])):?><span class="mf-req">*</span><?endif?>
</div>
<?if($arParams["USE_MESSAGE_FIELD"] == "Y"):?>
<div>
<textarea name="v_mess" id="v_mess" maxlength="150"><?=GetMessage("MFT_MESSAGE")?></textarea>
<?if(empty($arParams["REQUIRED_FIELDS"]) || in_array("MESSAGE", $arParams["REQUIRED_FIELDS"])):?><span class="mf-req">*</span><?endif?>
</div>
<?endif;?>
<?if($arParams["USE_CAPTCHA"] == "Y"):?>
<div class="mf-captcha">
<div class="mf-text"><?=GetMessage("MFT_CAPTCHA")?></div>
<input type="hidden" name="captcha_sid" id="captcha_sid" value="<?=$arResult["capCode"]?>">
<div class="mf-captcha"><img src="/bitrix/tools/captcha.php?captcha_sid=<?=$arResult["capCode"]?>" width="180" height="40" alt="CAPTCHA"></div>
<div class="mf-text"><?=GetMessage("MFT_CAPTCHA_CODE")?><span class="mf-req">*</span>
<input type="text" name="captcha_word" id="captcha_word" size="30" maxlength="10" value="" />
</div>
</div>
<?endif;?>
<div class="bsubm">
<input type="submit" name="sord_call" id="sord_call" value="<?=GetMessage("MFT_SUBMIT")?>" />
</div>
<div style="clear:both;margin:0;"></div>
</form>
</div>
<div id="fbott"></div>
</div>
<div id="overlaycall"></div>
:
$(document).ready(function(){
$('a.call_btn').click(function(event){
$('#overlaycall').height($(document).height()+'px').fadeIn(500);
$('#form_wrapper_call').show();
ajustScrollTop('#form_wrapper_call');
event.preventDefault();
});
// закрываем блоки с формами
$('span.wr_close').click(function(event){
$('#overlaycall').fadeOut(500);
$(this).parents('#form_wrapper_call').hide();
event.preventDefault();
});
$('#v_name').on('change', function(){
if($(this).val() != '') $(this).css({'color':''});
});
$('#v_phone').on('change', function(){
if($(this).val() != '') $(this).css({'color':''});
});
$('#v_time').on('change', function(){
if($(this).val() != '') $(this).css({'color':''});
});
$('#v_mess').on('change', function(){
if($(this).val() != '' && $(this).val()) $(this).css({'color':''});
});
});
$(function(){
//alert('it works!');
// поля формы фокус
$('#v_name').on('focus', function(){
if($(this).val() == '' || $(this).val() == 'Введите ФИО' || $(this).val() == 'Поле ФИО не заполнено!') $(this).val('').css({'border-color':'#b4b4b4'});
});
$('#v_phone').on('focus', function(){
if($(this).val() == '' || $(this).val() == 'Введите телефон' || $(this).val() == 'Поле Телефон не заполнено!') $(this).val('').css({'border-color':'#b4b4b4'});
});
$('#v_time').on('focus', function(){
if($(this).val() == '' || $(this).val() == 'Удобное время для звонка' || $(this).val() == 'Поле не заполнено!') $(this).val('').css({'border-color':'#b4b4b4'});
});
$('#v_mess').on('focus', function(){
if($(this).val() == '' || $(this).val() == 'Сообщение' || $(this).val() == 'Поле Сообщение не заполнено!') $(this).val('').css({'border-color':'#b4b4b4'});
});
$('#call_ord').on('submit', function(event){
var canSend = 1;
if($('#v_name').val() == ''){$('#v_name').css({'border':'1px solid #f00', 'color':'#f00'}); canSend = 0;}
if($('#v_phone').val() == ''){$('#v_phone').css({'border':'1px solid #f00', 'color':'#f00'}); canSend = 0;}
if($('#v_time').val() == ''){$('#v_time').css({'border':'1px solid #f00', 'color':'#f00'}); canSend = 0;}
if($('#v_mess').val() == ''){$('#v_mess').css({'border':'1px solid #f00', 'color':'#f00'}); canSend = 0;}
if(canSend != 0){
//подготавливаем и отправляем данные…
var form = $(this);
var url = form.attr('action');
var type = $(this).attr('id');
var sessid = $('#sessid').val();
var name = $('#v_name').val();
var phone = $('#v_phone').val();
var time = $('#v_time').val();
var usemess = $('#use_mess').val();
var message = $('#v_mess').val();
var captcha_sid = $('#captcha_sid').val();
var captcha_word = $('#captcha_word').val();
var PARAMS_HASH = $('#PARAMS_HASH').val();
// если поле Сообщение активно
if(typeof message !== 'undefined'){
$.post(url,
{
form_type: type,
sessid: sessid,
v_name: name,
v_phone: phone,
v_time: time,
v_mess: message,
captcha_sid: captcha_sid,
captcha_word: captcha_word,
PARAMS_HASH: PARAMS_HASH
},
function(data){
form.parent('.frm_place').empty().html(data);
}
);
}
else{
$.post(url,
{
form_type: type,
sessid: sessid,
v_name: name,
v_phone: phone,
v_time: time,
captcha_sid: captcha_sid,
captcha_word: captcha_word,
PARAMS_HASH: PARAMS_HASH
},
function(data){
form.parent('.frm_place').empty().html(data);
}
);
}
event.preventDefault();
}
else{
return false;
}
});
});