Loading ...
/div>'
if('function'===typeof(jQuery(".popover_click.popover_bottom").popover))
jQuery('.popover_click.popover_bottom').popover('hide');
jQuery.ajax({
url: wpbc_ajaxurl,
type:'POST',
success: function(data, textStatus){
if(textStatus=='success'){
jQuery('#' + timeline_obj.html_client_id + ' .wpbc_timeline_ajax_replace').html(data);
return true;
}},
error: function(XMLHttpRequest, textStatus, errorThrown){
window.status='Ajax Error! Status: ' + textStatus;
alert('Ajax Error! Status: ' + XMLHttpRequest.status + ' ' + XMLHttpRequest.statusText);
},
data:{
action: 'WPBC_TIMELINE_NAV',
timeline_obj: timeline_obj,
nav_step: nav_step,
wpdev_active_locale:wpbc_active_locale,
wpbc_nonce: document.getElementById('wpbc_nonce_'+ timeline_obj.html_client_id).value
}});
}
function wpbc_unselect_all_days(bk_type){
var is_calendar_exist=jQuery('#calendar_booking' + bk_type);
if(is_calendar_exist.length > 0){
var inst=jQuery.datepick._getInst(document.getElementById('calendar_booking' + bk_type));
jQuery('#date_booking' + bk_type).val('');
inst.stayOpen=false;
inst.dates=[];
jQuery.datepick._updateDatepick(inst);
}}
function wpbc_check_errors_in_booking_form(bk_type){
var is_error_in_field=false;
var my_form=jQuery('#booking_form' + bk_type);
if(my_form.length){
my_form.find(':input').each(function(index, el){
var skip_elements=[ 'hidden', 'button' ];
if(-1==skip_elements.indexOf(jQuery(el).attr('type'))){
if(( 'date_booking' + bk_type)==jQuery(el).attr('name')){
if((( jQuery('#calendar_booking' + bk_type).is(':visible'))&&(''==jQuery(el).val()))
&&(wpbc_get_arr_of_selected_additional_calendars(bk_type).length==0)
){
showMessageUnderElement('#date_booking' + bk_type, message_verif_selectdts, '');
makeScroll('#calendar_booking' + bk_type);
is_error_in_field=true;
}}
if(jQuery(el).is(':visible')){
if(jQuery(el).hasClass('wpdev-validates-as-required')){
if('checkbox'==jQuery(el).attr('type')){
if((! jQuery(el).is(':checked'))
&&(! jQuery(':checkbox[name="' + el.name + '"]', my_form).is(":checked"))
){
showErrorMessage(el, message_verif_requred_for_check_box, is_error_in_field);
is_error_in_field=true;
}}else if('radio'==jQuery(el).attr('type')){
if(!jQuery(':radio[name="' + jQuery(el).attr('name') + '"]', my_form).is(':checked')){
showErrorMessage(el, message_verif_requred_for_radio_box, is_error_in_field);
is_error_in_field=true;
}}else{
var inp_value=jQuery(el).val();
if(''===inp_value.trim()){
showErrorMessage(el, message_verif_requred, is_error_in_field);
is_error_in_field=true;
}}
}
if(jQuery(el).hasClass('wpdev-validates-as-email')){
var inp_value=jQuery(el).val();
inp_value=inp_value.replace(/^\s+|\s+$/gm, '');
var reg=/^([A-Za-z0-9_\-\.\+])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,})$/;
if((inp_value!='')&&(reg.test(inp_value)==false)){
showErrorMessage(el, message_verif_emeil, is_error_in_field);
is_error_in_field=true;
}}
var classList=jQuery(el).attr('class');
if(classList){
classList=classList.split(/\s+/);
jQuery.each(classList, function(cl_index, cl_item){
if('validate_as_date'===cl_item){
var regex=new RegExp('^[0-3]?\\d{1}[\\/\\.\\-]+[0-3]?\\d{1}[\\/\\.\\-]+[0-2]+\\d{3}$');
var message_verif_phone='This field must be valid date like this ' + '09/25/2018';
var inp_value=jQuery(el).val();
if(( inp_value!='')&&(regex.test(inp_value)==false)){
showErrorMessage(el, message_verif_phone, is_error_in_field);
is_error_in_field=true;
}}
if('validate_as_digit'===cl_item){
var regex=new RegExp('^[0-9]+\\.?[0-9]*$');
var message_verif_phone='This field must contain only digits';
var inp_value=jQuery(el).val();
if(( inp_value!='')&&(regex.test(inp_value)==false)){
showErrorMessage(el, message_verif_phone, is_error_in_field);
is_error_in_field=true;
}}
var is_validate_digit=cl_item.substring(0, 15);
if('validate_digit_'===is_validate_digit){
var digits_to_check=parseInt(cl_item.substring(15));
if(!isNaN(digits_to_check)){
var regex=new RegExp('^\\d{' + digits_to_check + '}$');
var message_verif_phone='This field must contain ' + digits_to_check + ' digits';
var inp_value=jQuery(el).val();
if(( inp_value!='')&&(regex.test(inp_value)==false)){
showErrorMessage(el, message_verif_phone, is_error_in_field);
is_error_in_field=true;
}}
}});
}}
}});
}
return is_error_in_field;
}
function bk_calendar_step_click(el){
var br_id=jQuery(el).closest('form').find('input[name^="bk_type"]').val();
var is_error=wpbc_check_errors_in_booking_form(br_id);
if(is_error){
return false;
}
if(br_id!=undefined){
jQuery("#booking_form" + br_id + " .bk_calendar_step").css({"display": "none"});
jQuery("#booking_form" + br_id + " .bk_form_step").css({"display": "block"});
}else{
jQuery(".bk_calendar_step").css({"display": "none"});
jQuery(".bk_form_step").css({"display": "block"});
}}
function bk_form_step_click(el){
var br_id=jQuery(el).closest('form').find('input[name^="bk_type"]').val();
var is_error=false;
if(is_error){
return false;
}
if(br_id!=undefined){
jQuery("#booking_form" + br_id + " .bk_calendar_step").css({"display": "block"});
jQuery("#booking_form" + br_id + " .bk_form_step").css({"display": "none"});
makeScroll("#bklnk" + br_id);
}else{
jQuery(".bk_calendar_step").css({"display": "block"});
jQuery(".bk_form_step").css({"display": "none"});
}}
function wpbc_wizard_step(el, step_num){
var br_id=jQuery(el).closest('form').find('input[name^="bk_type"]').val();
if(1!=step_num){
var is_error=wpbc_check_errors_in_booking_form(br_id);
if(is_error){
return false;
}}
if(wpbc_is_some_elements_visible(br_id, ['rangetime', 'durationtime', 'starttime', 'endtime'])){
if(is_this_time_selections_not_available(br_id, document.getElementById('booking_form' + br_id))){
return false;
}}
if(br_id!=undefined){
jQuery("#booking_form" + br_id + " .wpbc_wizard_step").css({"display": "none"});
jQuery("#booking_form" + br_id + " .wpbc_wizard_step" + step_num).css({"display": "block"});
}}
function wpbc_is_some_elements_visible(bk_type, elements_names){
var is_some_elements_visible=false;
var my_form=jQuery('#booking_form' + bk_type);
if(my_form.length){
my_form.find(':input').each(function(index, el){
var skip_elements=['hidden', 'button'];
if(-1==skip_elements.indexOf(jQuery(el).attr('type'))){
for(var ei=0; ei <(elements_names.length - 1) ; ei++){
if((elements_names[ ei ] + bk_type)==jQuery(el).attr('name')){
if(jQuery(el).is(':visible')){
is_some_elements_visible=true;
}}
}}
});
}
return is_some_elements_visible;
};