Child in Booking Form, calculate, show, validate, mail, success

git-svn-id: http://78.47.251.156/svn/dev/sterntours-3@3447 f459cee4-fb09-11de-96c3-f9c5f16c3c76
This commit is contained in:
adametz 2018-08-20 11:40:10 +00:00
parent 48131f72e2
commit 22af43b07a
18 changed files with 1147 additions and 209 deletions

View file

@ -6,10 +6,16 @@ $(document).ready(function() {
var roomCountSR$ = $('#booking_request_singleRoomCount');
var roomCountDR$ = $('#booking_request_doubleRoomCount');
var roomCountTR$ = $('#booking_request_tripleRoomCount');
var roomChildCountSR$ = $('#booking_request_singleRoomChildCount');
var roomChildCountDR$ = $('#booking_request_doubleRoomChildCount');
var roomChildCountTR$ = $('#booking_request_tripleRoomChildCount');
//var travelersIndices = $('.st-traveller-index');
var travelers$ = $('.st-traveler');
var travelerFields$ = travelers$.find('input,select');
var travelerFields$ = travelers$.find('input,select,checkbox');
frm$.find('input, select').change(function() {
var tmp = location.href.split('?');
@ -92,28 +98,29 @@ $(document).ready(function() {
$i.toggleClass('icon-minus icon-plus');
}
$('.acc_nationality_panel').on('hidden.bs.collapse', toggleUpdateChevron);
$('.acc_nationality_panel').on('shown.bs.collapse', toggleUpdateChevron);
function toggleChevronIn(e) {
console.log(e);
var $i = $(e.target)
.parent('.panel-group')
.find("i.indicator");
function toggleChevronIn(e) {
console.log(e);
var $i = $(e.target)
.parent('.panel-group')
.find("i.indicator");
$i.toggleClass('icon-minus icon-plus');
$i.toggleClass('icon-minus icon-plus');
if($i.hasClass('icon-minus')){
$i.parent('h5').find('span').html('Leistungen ausblenden');
}
if($i.hasClass('icon-plus')){
$i.parent('h5').find('span').html('Leistungen einblenden');
}
if($i.hasClass('icon-minus')){
$i.parent('h5').find('span').html('Leistungen ausblenden');
}
if($i.hasClass('icon-plus')){
$i.parent('h5').find('span').html('Leistungen einblenden');
}
}
$('.booking_insurance_toogle').on('hidden.bs.collapse', toggleChevronIn);
$('.booking_insurance_toogle').on('shown.bs.collapse', toggleChevronIn);
$('.booking_insurance_toogle').on('hidden.bs.collapse', toggleChevronIn);
$('.booking_insurance_toogle').on('shown.bs.collapse', toggleChevronIn);
@ -125,58 +132,163 @@ $(document).ready(function() {
var doubleTravelerCount = parseInt(roomCountDR$.val()) * 2;
var tripleTravelerCount = parseInt(roomCountTR$.val()) * 3;
var allTravelersCount = singleTravelerCount + doubleTravelerCount + tripleTravelerCount;
var singleTravelerChildCount = parseInt(roomChildCountSR$.val()) * 2;
var doubleTravelerChildCount = parseInt(roomChildCountDR$.val()) * 3;
var tripleTravelerChildCount = parseInt(roomChildCountTR$.val()) * 4;
var allTravelersCount = singleTravelerCount + doubleTravelerCount + tripleTravelerCount + singleTravelerChildCount + doubleTravelerChildCount + tripleTravelerChildCount;
travelers$.hide();
travelerFields$.prop('required', false);
var counter = 1;
var $offset = 1;
//single
if(singleTravelerCount > 0)
{
for(var i = 1; i <= singleTravelerCount; i++)
for(var i = $offset; i <= singleTravelerCount; i++)
{
var travelerSelector = '.st-traveler-' + i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
var currentRoomIndex = $(travelerSelector).attr("data-room-index");
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
//$(roomIndexSelector).text(currentRoomIndex);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer");
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer | 1. Erwachsender");
counter ++;
}
}
//single + child
$offset = $offset + parseInt(roomCountSR$.find('option').length) -1;
//4 next 5
if(singleTravelerChildCount > 0)
{
for(var i = $offset; i < singleTravelerChildCount + $offset; i++)
{
var travelerSelector = '.st-traveler-' + i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer | 1. Erwachsender");
counter ++;
//child
i++;
var travelerSelector = '.st-traveler-' + i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Einzelzimmer | Kind");
counter ++;
}
}
//double
$offset = $offset + (parseInt(roomChildCountSR$.find('option').length) -1) * 2;
//4 + 4*2 next 13
if(doubleTravelerCount > 0)
{
var offset = 5 - singleTravelerCount;
for(var j = 6; j <= doubleTravelerCount + 5; j++)
$m = 1;
for(var i = $offset; i < doubleTravelerCount + $offset; i++)
{
var travelerSelector = '.st-traveler-'+j;
var travelerSelector = '.st-traveler-'+i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
var currentRoomIndex = $(travelerSelector).attr("data-room-index");
// var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
//$(roomIndexSelector).text(currentRoomIndex - offset);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer");
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer | " + $m + ". Erwachsender");
counter ++;
$m++;
if($m == 3){
$m = 1;
}
}
}
//double + child
$offset = $offset + (parseInt(roomCountDR$.find('option').length) -1) * 2;
//12 + 3*2 next 19
if(doubleTravelerChildCount > 0)
{
$m = 1;
for(var i = $offset; i < doubleTravelerChildCount + $offset; i++)
{
var travelerSelector = '.st-traveler-'+i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer | " + $m + ". Erwachsender");
counter ++;
$m++;
if($m == 3){
$m = 1;
//child
i++;
var travelerSelector = '.st-traveler-'+i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Doppelzimmer | Kind");
counter ++;
}
}
}
//triple
$offset = $offset + (parseInt(roomChildCountDR$.find('option').length) -1) * 3;
//18 + 3*3 next 28
if(tripleTravelerCount > 0)
{
var offset = 10 - (singleTravelerCount + (doubleTravelerCount / 2));
for(var k = 16; k <= tripleTravelerCount + 15; k++)
$m = 1;
for(var i = $offset; i < tripleTravelerCount + $offset; i++)
{
var travelerSelector = '.st-traveler-'+k;
var travelerSelector = '.st-traveler-'+i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
var currentRoomIndex = $(travelerSelector).attr("data-room-index");
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
//$(roomIndexSelector).text(currentRoomIndex - offset);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer");
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer | " + $m + ". Erwachsender");
counter ++;
$m++;
if($m == 4){
$m = 1;
}
}
}
//triple + child
$offset = $offset + (parseInt(roomCountTR$.find('option').length) -1) * 3;
//27 + 2*3 next 34
if(tripleTravelerChildCount > 0)
{
$m = 1;
for(var i = $offset; i < tripleTravelerChildCount + $offset; i++)
{
var travelerSelector = '.st-traveler-'+i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer | " + $m + ". Erwachsender");
counter ++;
$m++;
if($m == 4){
$m = 1;
//child
i++;
var travelerSelector = '.st-traveler-'+i;
var roomIndexSelector = travelerSelector+' .st-traveller-index';
//var currentRoomIndex = $(travelerSelector).attr("data-room-index");
$(travelerSelector).show().find('input,select').prop('required', true);
$(roomIndexSelector).text(counter + ".) Reiseteilnehmer | Dreibettzimmer | Kind");
counter ++;
}
}
}
}
roomCountSR$.change(updateTravelers);
roomCountDR$.change(updateTravelers);
roomCountTR$.change(updateTravelers);
roomChildCountSR$.change(updateTravelers);
roomChildCountDR$.change(updateTravelers);
roomChildCountTR$.change(updateTravelers);
updateTravelers();
});