<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script>
<script>
jQuery(document).ready(function($){
$('.price-left a').click(function(){
localStorage.setItem('arenda_date_1', $('.date1').val());
localStorage.setItem('arenda_date_2', $('.date2').val());
localStorage.setItem('arenda_hours', $('#coll-horrs2').val());
});
if( $('.post-top').length ) { parent_box = '.post-top'; }else{ parent_box = '.drop-div'; }
$('[data-ix="popap-open-bron-car"]').click(function(){
$('.form-hidden').empty();
$(this).parents(parent_box).find( ".date1" ).clone().appendTo( $('[name="Забронировать авто"] .form-hidden') );
$(this).parents(parent_box).find( ".date2" ).clone().appendTo( $('[name="Забронировать авто"] .form-hidden') );
$(this).parents(parent_box).find( ".checkbox:checked" ).clone().appendTo( $('[name="Забронировать авто"] .form-hidden') );
$('[name="Забронировать авто"] .form-hidden').append('<textarea name="Итого">'+$(this).parents(parent_box).find('.itogo-card,.itogo-tar').text().replace('Итого:', '').trim()+'</textarea>');
});
$('[data-ix="popap-open-bron-vip"]').click(function(){
$('.form-hidden').empty();
$(this).parents(parent_box).find( ".date4" ).clone().appendTo( $('[name="Забронировать VIP экскурсию"] .form-hidden') );
$(this).parents(parent_box).find( ".time2" ).clone().appendTo( $('[name="Забронировать VIP экскурсию"] .form-hidden') );
$(this).parents(parent_box).find( ".checkbox:checked" ).clone().appendTo( $('[name="Забронировать VIP экскурсию"] .form-hidden') );
$('[name="Забронировать VIP экскурсию"] .form-hidden').append('<textarea name="Итого">'+$(this).parents(parent_box).find('.itogo-vip').text().replace('Итого:', '').trim()+'</textarea>');
});
$('[data-ix="popap-open-bron-transfer"]').click(function(){
$('.form-hidden').empty();
$(this).parents(parent_box).find( ".date3" ).clone().appendTo( $('[name="Забронировать трансфер"] .form-hidden') );
$(this).parents(parent_box).find( ".time" ).clone().appendTo( $('[name="Забронировать трансфер"] .form-hidden') );
$(this).parents(parent_box).find( ".select" ).clone().appendTo( $('[name="Забронировать трансфер"] .form-hidden') );
$(this).parents(parent_box).find( ".checkbox:checked" ).clone().appendTo( $('[name="Забронировать трансфер"] .form-hidden') );
$('[name="Забронировать трансфер"] .form-hidden').append('<textarea name="Итого">'+$(this).parents(parent_box).find('.itogo-vip,.itogo-tar').text().replace('Итого:', '').trim()+'</textarea>');
});
$('[name="Время начала"]').mask('00:00', {placeholder: "00:00"});
$('[name="Кол-во часов"]').select2();
$.datepicker.setDefaults({
closeText: 'Закрыть',
prevText: '<Пред',
nextText: 'След>',
currentText: 'Сегодня',
monthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'],
monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн','Июл','Авг','Сен','Окт','Ноя','Дек'],
dayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'],
dayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'],
dayNamesMin: ['Вс','Пн','Вт','Ср','Чт','Пт','Сб'],
weekHeader: 'Нед',
dateFormat: 'dd-mm-yy',
firstDay: 1,
showAnim: 'slideDown',
isRTL: false,
showMonthAfterYear: false,
yearSuffix: ''
} );
$('#date1,.date1,.date3,.date4').datepicker({ dateFormat: 'dd.mm.y' });
$('#date2,.date2').datepicker({ dateFormat: 'dd.mm.y' });
if( localStorage.getItem('arenda_date_1') === null ){
$('#date1,.date1,.date3,.date4').datepicker('setDate', '0');
$('#date2,.date2').datepicker('setDate', '+1');
}else{
$('#date1,.date1,.date3,.date4').datepicker('setDate', localStorage.getItem('arenda_date_1'));
$('#date2,.date2').datepicker('setDate', localStorage.getItem('arenda_date_2'));
}
if( localStorage.getItem('arenda_hours') !== null ){
$('#coll-horrs2').val(localStorage.getItem('arenda_hours')).trigger('change');
}
$('.cena-tarif span,.price span').each(function(){
$(this).text(number_format($(this).text(), 0, '', ' '));
});
$('.post-top .price span').text(0);
if( localStorage.getItem('arenda_city') !== null ){
$('.select-ekskursia').val(localStorage.getItem('arenda_city'));
}else{
localStorage.setItem('arenda_city', 'Сочи');
$('.select-ekskursia').val(localStorage.getItem('arenda_city'));
}
$('[name="Забронировать (vip)"] select,[name="Забронировать (vip)"] input[type=checkbox]').change(function(){
var service_cost = 0;
$(this).parent().find('.checkbox:checked').each(function(){
service_cost += parseInt($(this).siblings('.check-label').find('.option-cena').text().replace(' ',''));
});
var city_price = 0;
if( $(this).parents('form').find('select').val() === 'Сочи' ){
city_price = parseInt($(this).parents('.post-top').find('[data-w-tab="Tab 1"] .cena-tarif span').eq(2).text().replace(' ',''));
$('.price span').text(number_format(city_price, 0, '', ' '));
}
if( $(this).parents('form').find('select').val() === 'Абхазия' ){
city_price = parseInt($(this).parents('.post-top').find('[data-w-tab="Tab 2"] .cena-tarif span').eq(2).text().replace(' ',''));
$('.price span').text(number_format(city_price, 0, '', ' '));
}
$('.itogo-vip span').text(number_format(city_price + service_cost, 0, '', ' '));
});
$('.menu-tab-vip [data-w-tab="Tab 1"]').click(function(){
localStorage.setItem('arenda_city', 'Сочи');
$('.select-ekskursia').val('Сочи');
var city_price = $(this).parents('.tab-vip').find('[data-w-tab="Tab 1"] .cena-tarif span').eq(2).text();
$('.price span').text(number_format(city_price, 0, '', ' '));
$(this).parents('.ekskursia-card-box').find('.price-one span').text(number_format(city_price, 0, '', ' '));
});
$('.menu-tab-vip [data-w-tab="Tab 2"]').click(function(){
localStorage.setItem('arenda_city', 'Абхазия');
$('.select-ekskursia').val('Абхазия');
var city_price = $(this).parents('.tab-vip').find('[data-w-tab="Tab 2"] .cena-tarif span').eq(2).text();
$('.price span').text(number_format(city_price, 0, '', ' '));
$(this).parents('.ekskursia-card-box').find('.price-one span').text(number_format(city_price, 0, '', ' '));
});
if( $('.select-ekskursia').length ){
$('.ekskursia .select-ekskursia, .ekskursia .checkbox').change(function(){
recalc_excursion();
});
recalc_excursion();
function recalc_excursion(){
$('.cena-tarif span').each(function(){
$(this).text(number_format($(this).text(), 0, '', ' '));
});
$('[data-w-tab="VIP экскурсии"] .drop-div').each(function(){
var price = 0; var service_cost = 0;
var city = $(this).find('.select-ekskursia').val();
if ( city === 'Сочи' ) {
price = parseInt($(this).find('.vip-ex').eq(4).find('.cena-tarif span').text().replace(' ',''));
}
if ( city === 'Абхазия' ) {
price = parseInt($(this).find('.vip-ex').eq(5).find('.cena-tarif span').text().replace(' ',''));
}
$(this).find('.checkbox:checked').each(function(){
service_cost += parseInt($(this).siblings('.check-label').find('.option-cena').text());
});
var total = price + service_cost;
$(this).find('.price span').text(number_format(price, 0, '', ' '));
$(this).find('.itogo-vip').text(number_format(total, 0, '', ' '));
});
}
}
$('.select-ekskursia').trigger('change');
if( $('.transfer').length ){
$('.transfer select,.transfer input[type="checkbox"],.transfer-form select').change(function(){
recalc_transfer();
});
recalc_transfer();
function recalc_transfer(){
$('.car-box,.main-card-box,.drop-div').each(function(){
var hours = 0; var hours_text = '';
if( $('.drop-div').length ){
hours = parseInt($(this).find('select').val());
}else{
hours = parseInt($('#form-transfer select').val());
}
if( hours === 1 ) hours_text = hours+' час';
if( hours >= 2 && hours <= 5 ) hours_text = hours+' часа';
if( hours >= 5 ) hours_text = hours+' часов';
var price = parseInt($(this).find('.price span,.price-one span').text());
var total = 0; var service_cost = 0;
$(this).find('.checkbox:checked').each(function(){
service_cost += parseInt($(this).siblings('.check-label').find('.option-cena').text());
});
total = hours*price + service_cost;
$(this).find('.hours,.col-hours').text(hours_text);
$(this).find('.itogo-transfer .margin-span,.itogo-right .margin-span,.itogo-tr').text(number_format(total, 0, '', ' '));
});
}
}
if( $('.date1').length ){
$('.form1 input,.form2 input,.form4 input').on('change', recalc_price);
recalc_price();
function recalc_price(){
$('.cena-tarif span,.cena-zolog span,.cena-black span,.price span').each(function(){
$(this).text(number_format($(this).text(), 0, '', ' '));
});
var str_1 = $('.date1').val().split('.');
var str_2 = $('.date2').val().split('.');
var date1 = Date.parse('20'+str_1[2]+'/'+str_1[1]+'/'+str_1[0]);
var date2 = Date.parse('20'+str_2[2]+'/'+str_2[1]+'/'+str_2[0]);
var timeDiff = Math.abs(date2 - date1);
var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
if ( date2 < date1 ) { alert('Дата конца не может быть раньше начала!'); }
if ( diffDays === 0 ) diffDays = 1;
if ( diffDays === 1 ){
$('.sutki').text('1 сутки');
} else {
$('.sutki').text(diffDays+' суток');
}
var price_day = 0;
var price_col = 1;
var service_cost = 0;
if( diffDays >= 1 && diffDays <= 2 ) price_col = 1;
if( diffDays >= 3 && diffDays <= 6 ) price_col = 2;
if( diffDays >= 7 && diffDays <= 14 ) price_col = 3;
if( diffDays >= 15 && diffDays <= 30 ) price_col = 4;
if( diffDays >= 31 ) price_col = 5;
if( diffDays < 3 ) {
$('[for^=tarif_na_pereprobeg_ot_3_sutok]').hide(); }
else { $('[for^=tarif_na_pereprobeg_ot_3_sutok]').show(); }
$('.post-top,.main-card-box,.drop-div').each(function(){
if( $('.car-tarif-tr2').length ){
price_day = parseInt($(this).find('.car-tarif-tr2').eq(price_col-1).find('.cena-tarif span').text().replace(' ',''));
}else{
price_day = parseInt($(this).find('.option-line2-tr').eq(price_col).find('.cena-tarif').text().replace(' ',''));
}
$(this).find('.checkbox:checked').each(function(){
service_cost += parseInt($(this).siblings('.check-label').find('.option-cena').text());
});
$(this).find('.price-one .margin-span,.price .margin-span,.price-tarifi .margin-span').text(number_format(price_day, 0, '', ' '));
$(this).find('.itogo.margin-span').text(number_format(price_day*diffDays + service_cost*diffDays, 0, '', ' '));
});
}
jQuery(document).on( 'ajaxs_done', function( event, data ){
if(data['action'] === "ajaxs_load_posts"){
recalc_price();
}
});
}
})
function number_format(number, decimals, dec_point, thousands_sep) {
number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
var n = !isFinite(+number) ? 0 : +number,
prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
s = '',
toFixedFix = function (n, prec) {
var k = Math.pow(10, prec);
return '' + Math.round(n * k) / k;
};
s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
if (s[0].length > 3) {
s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
}
if ((s[1] || '').length < prec) {
s[1] = s[1] || '';
s[1] += new Array(prec - s[1].length + 1).join('0');
}
return s.join(dec);
}
</script>