PHP-Code:
$(document).ready(function(){
// --------------------------------------------------
// GENERAL DEFINITIONS
// --------------------------------------------------
// Constants
var display_addresses = 10;
var minCityLength = 3;
// Variables
// For Index
var start_country_valid = false;
var start_plz_city_valid = false;
var dest_country_valid = false;
var dest_plz_city_valid = false;
var startAddressSet = false;
var targetAddressSet = false;
var vehicleSet = false;
// For Details
var step1_valid = false;
var sender_lastname_company = false;
var recipient_lastname_company = false;
var step2_valid = false;
var step3_valid = false;
var step4_valid = false;
var open_callbackbox = false;
// For Callback
var callback_name_valid = false;
var callback_phone_valid = false;
var callback_email_valid = false;
var callback_oncleanup = false;
// Placeholder for IE
$('input[placeholder], textarea[placeholder]').placeholder();
// Open Fancybox
$('a.callback').fancybox(
{
onCleanup: function()
{
if (callback_oncleanup){
window.location.href = urlIndex;
}
},
centerOnScroll: true
});
$('a#weight_validation_link').fancybox(
{
onClosed: function()
{
if(open_callbackbox)
{
setTimeout(function() {
$('#callback_wrapper').click();
open_callbackbox = false;
}, 500);
}
},
transitionIn: 'none',
transitionOut: 'none',
centerOnScroll: true
});
$('a#callback_wrapper').fancybox(
{
centerOnScroll: true
});
// AJAX Cache IE
$.ajaxSetup({ cache: false });
// E-Mail Validation
function isValidEmailAddress(emailAddress) {
var pattern = new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i);
return pattern.test(emailAddress);
};
// E-Mail Validation
function isValidTelephone(telephon) {
var pattern = new RegExp(/^[0-9\+\-]{1,1}[0-9\s\+\-]{1,9999}[0-9\+\-]{1,1}$/);
return pattern.test(telephon);
};
// Only valid Postal codes
function isValidZipCode(zip) {
var pattern = new RegExp(/^[a-zA-Z0-9\*\-\ ]{2,10}$/i);
return pattern.test(zip);
};
// Only Numbers
function isValidNumbers(numbers) {
var pattern = new RegExp(/^[0-9]*$/i);
return pattern.test(numbers);
}
// Check AutoFill
(function($) {
$.fn.listenForChange = function(options) {
settings = $.extend({
interval: 200 // in microseconds
}, options);
var jquery_object = this;
var current_focus = null;
jquery_object.filter(":input").add(":input", jquery_object).focus( function() {
current_focus = this;
}).blur( function() {
current_focus = null;
});
setInterval(function() {
// allow
jquery_object.filter(":input").add(":input", jquery_object).each(function() {
// set data cache on element to input value if not yet set
if ($(this).data('change_listener') == undefined) {
$(this).data('change_listener', $(this).val());
return;
}
// return if the value matches the cache
if ($(this).data('change_listener') == $(this).val()) {
return;
}
// ignore if element is in focus (since change event will fire on blur)
if (this == current_focus) {
return;
}
// if we make it here, manually fire the change event and set the new value
$(this).trigger('change');
$(this).data('change_listener', $(this).val());
});
}, settings.interval);
return this;
};
})(jQuery);
// --------------------------------------------------
// INDEX
// --------------------------------------------------
function actualize_calc_button()
{
if(startAddressSet && targetAddressSet && vehicleSet)
{
$('#calc').removeClass('inactive').addClass('active');
}else{
$('#calc').addClass('inactive').removeClass('active');
}
}
if($('.ww_preisrechner').hasClass('index'))
{
$('#country-start').val('D');
start_country_valid = true;
$('#country-destination').val('D');
dest_country_valid = true;
// Start-Address
// --------------------------------------------------
function actualize_start_address_button()
{
if(start_plz_city_valid && start_country_valid){
$('#submit-start').addClass('active_purple');
}else{
$('#submit-start').removeClass('active_purple');
}
actualize_calc_button();
}
// Country
$('#country-start').change(function ()
{
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
if($(this).val() == '-1')
{
$(this).addClass('inactive');
start_country_valid = false;
actualize_start_address_button();
}else
{
$(this).removeClass('inactive')
start_country_valid = true;
actualize_start_address_button();
}
});
//$('#country-start').change();
actualize_start_address_button();
// PLZ and/or City
$('#start_and_or input').focusin(function()
{
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
$('#start_and_or').css('border','1px solid #797677');
});
$('#start_and_or input').focusout(function()
{
$('#start_and_or').css('border','1px solid #c0c0c0');
});
checkZipCityStart = function()
{
var plz = $('#plz-start').val();
var city = $('#city-start').val();
if( plz == $('#plz-start').attr('placeholder')) plz = '';
if( city == $('#city-start').attr('placeholder')) city = '';
$('#start_and_or').removeClass('gradient').css('border','1px solid #c0c0c0');
$('#start_and_or .ww_preisrechner_error').remove();
if( !isValidZipCode(plz) && city.length < minCityLength ){
$('#plz-start').after('<div class="ww_preisrechner_error">'+errorMessageE030+'</div>');
$('#start_and_or').addClass('gradient').css('border','1px solid #b0116a');
start_plz_city_valid = false;
}else{
start_plz_city_valid = true;
}
if(start_plz_city_valid == true){
$('#start_and_or .address_hint').remove();
$('#start_and_or').append('<div class="address_hint">'+addressHint+'</div>');
}else{
$('#start_and_or .address_hint').remove();
}
actualize_start_address_button();
return;
};
$('#plz-start').keyup(checkZipCityStart);
$('#city-start').keyup(checkZipCityStart);
// Street
$('#street-start').focusin(function()
{
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
});
$('#street-start').focusout(function()
{
$('#street-start').css('border','1px solid #c0c0c0');
$('#street-start-error').remove();
$('#submit-start').css({
margin: "10px 0px 0px 0px"
});
return;
// .position() uses position relative to the offset parent
var pos = $(this).position();
});
// Buttons - click if .active
$(document).on("click", "#submit-start.active_purple", function()
{
startAddressSet = false;
actualize_calc_button();
$('#addresses-start').slideDown().show('slow');
$('#addresses-start-list li').remove();
$('#addresses-start-list .ww_preisrechner_notification').remove();
$('#addresses-start legend').css('background-image','url(typo3conf/ext/ww_preisrechner/Resources/Public/Images/350.gif)');
var plz = $('#plz-start').val();
var city = $('#city-start').val();
var street = $('#street-start').val();
if( plz == $('#plz-start').attr('placeholder')) plz = '';
if( city == $('#city-start').attr('placeholder')) city = '';
if( street == $('#street-start').attr('placeholder')) street = '';
$('#addresses-start .ww_preisrechner_error').remove();
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=getAddresses&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"country":"'+$('#country-start').val()+'",'
+ '"zip":"'+plz+'",'
+ '"city":"'+city+'",'
+ '"street":"'+street+'"}'),
success: function(response)
{
if(response.status == "error")
{
for (var hash in response.data)
{
$('#addresses-start').append('<div class="ww_preisrechner_error">'+response.data[hash].message+'</div>');
$('#addresses-start legend').css('background-image','url(typo3conf/ext/ww_preisrechner/Resources/Public/Images/addresses.png)');
}
}else{
var i=0;
var addresses_html = '';
var more_addresses = false;
for (var hash in response.data)
{
if(i>=display_addresses)
{
more_addresses = true;
break;
}
var address = response.data[hash];
addresses_html = addresses_html+'<li data-hash="'+hash+'">'+address.DESCRIPTION+'<a id="'+address.SCORE+'">'+textPleaseChooseStart+'</a></li>';
i++;
}
if (more_addresses)
{
addresses_html = addresses_html+'<div class="ww_preisrechner_notification">'+textPleaseSpecify+'</div>';
}
$('#addresses-start-list').append(addresses_html);
$('#addresses-start legend').css('background-image','url(typo3conf/ext/ww_preisrechner/Resources/Public/Images/addresses.png)');
$('#addresses-start .ww_preisrechner_error').remove();
$('#addresses-start-list li').first().click();
}
}
})
});
// function of list-items
if($('#addresses-start-list li').hasClass('checked'))
{
startAddressSet = true;
}
$(document).on("click", "#addresses-start-list li", function()
{
var varThis = $(this)
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('#calc_loading').remove();
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setStartAddress&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{"address":"'+$(this).attr('data-hash')+'"}'),
success: function(data){
if(data.status == "success"){
$('#addresses-start-list li').removeClass('checked').addClass('inactive');
varThis.addClass('checked').removeClass('inactive');
startAddressSet = true;
actualize_calc_button();
}
}
});
});
// Destination-Address
// --------------------------------------------------
function actualize_dest_address_button()
{
if(dest_plz_city_valid && dest_country_valid)
{
$('#submit-destination').addClass('active_purple');
} else{
$('#submit-destination').removeClass('active_purple');
}
}
// Set Country
$('#country-destination').change(function ()
{
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
if($(this).val() == '-1') {
$(this).addClass('inactive');
dest_country_valid = false;
actualize_dest_address_button();
}else {
$(this).removeClass('inactive')
dest_country_valid = true;
actualize_dest_address_button();
}
});
//$('#country-destination').change();
actualize_start_address_button();
// PLZ and/or City
$('#destination_and_or input').focusin(function()
{
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
$('#destination_and_or').css('border','1px solid #797677');
});
$('#destination_and_or input').focusout(function()
{
$('#destination_and_or').css('border','1px solid #c0c0c0');
});
checkZipCityDest = function()
{
var plz = $('#plz-destination').val();
var city = $('#city-destination').val();
if( plz == $('#plz-destination').attr('placeholder')) plz = '';
if( city == $('#city-destination').attr('placeholder')) city = '';
$('#destination_and_or').removeClass('gradient').css('border','1px solid #c0c0c0');
$('#destination_and_or .ww_preisrechner_error').remove();
if(!isValidZipCode(plz) && city.length < minCityLength ){
$('#plz-destination').after('<div class="ww_preisrechner_error">'+errorMessageE030+'</div>');
$('#destination_and_or').addClass('gradient').css('border','1px solid #b0116a');
dest_plz_city_valid = false;
}else{
dest_plz_city_valid = true;
}
if(dest_plz_city_valid == true){
$('#destination_and_or .address_hint').remove();
$('#destination_and_or').append('<div class="address_hint">'+addressHint+'</div>');
}else{
$('#destination_and_or .address_hint').remove();
}
actualize_dest_address_button();
return;
};
$('#plz-destination').keyup(checkZipCityDest);
$('#city-destination').keyup(checkZipCityDest);
/* Street */
$('#street-destination').focusin(function()
{
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
});
$('#street-destination').focusout(function()
{
$('#street-destination').css('border','1px solid #c0c0c0');
$('#street-destination-error').remove();
$('#submit-destination').css({
margin: "10px 0px 0px 0px"
})
/* dest_street_valid = true;
actualize_dest_address_button();*/
return;
// .position() uses position relative to the offset parent
var pos = $(this).position();
});
// Buttons - click if .active
$(document).on("click", "#submit-destination.active_purple", function()
{
targetAddressSet = false;
actualize_calc_button();
$('#addresses-destination').slideDown().show('slow');
$('#addresses-destination-list li').remove();
$('#addresses-destination-list .ww_preisrechner_notification').remove();
$('#addresses-destination legend').css('background-image','url(typo3conf/ext/ww_preisrechner/Resources/Public/Images/350.gif)');
var plz = $('#plz-destination').val();
var city = $('#city-destination').val();
var street = $('#street-destination').val();
if( plz == $('#plz-destination').attr('placeholder')) plz = '';
if( city == $('#city-destination').attr('placeholder')) city = '';
if( street == $('#street-destination').attr('placeholder')) street = '';
$('#addresses-destination .ww_preisrechner_error').remove();
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=getAddresses&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"country":"'+$('#country-destination').val()+'",'
+ '"zip":"'+plz+'",'
+ '"city":"'+city+'",'
+ '"street":"'+street+'"}'),
success: function(response)
{
if(response.status == "error"){
for (var hash in response.data)
{
$('#addresses-destination').append('<div class="ww_preisrechner_error">'+response.data[hash].message+'</div>');
$('#addresses-destination legend').css('background-image','url(typo3conf/ext/ww_preisrechner/Resources/Public/Images/addresses.png)');
}
}else{
var j=0;
var addresses_html = '';
var more_addresses = false;
for (var hash in response.data)
{
if(j>=display_addresses)
{
more_addresses = true;
break;
}
var address = response.data[hash];
$('#addresses-destination-list').append('<li data-hash="'+hash+'">'+address.DESCRIPTION+'<a id="'+address.SCORE+'">'+textPleaseChooseDest+'</a></li>');
j++;
}
if (more_addresses)
{
addresses_html = addresses_html+'<div class="ww_preisrechner_notification">'+textPleaseSpecify+'</div>';
}
$('#addresses-destination-list').append(addresses_html);
$('#addresses-destination legend').css('background-image','url(typo3conf/ext/ww_preisrechner/Resources/Public/Images/addresses.png)');
$('#addresses-destination .ww_preisrechner_error').remove();
$('#addresses-destination-list li').first().click();
}
}
})
});
// function of list-items
if($('#addresses-destination-list li').hasClass('checked'))
{
targetAddressSet = true;
}
$(document).on("click", "#addresses-destination-list li", function()
{
var varThis = $(this)
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('#calc_loading').remove();
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setTargetAddress&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{"address":"'+$(this).data('hash')+'"}'),
success: function(data)
{
if(data.status == "success")
{
$('#addresses-destination-list li').removeClass('checked').addClass('inactive');
varThis.addClass('checked').removeClass('inactive');
targetAddressSet = true;
actualize_calc_button();
}
}
});
});
// Chose fields
if($('.choice').hasClass('chosen'))
{
vehicleSet = true;
}
$('.choice').click(function()
{
actualize_calc_button();
$('#first_callback').fadeIn('slow');
$('#result').slideUp().hide('slow');
$('.index_back').slideUp().hide('slow');
$('#calc_loading').remove();
var varThis = $(this)
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setVehicle&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{"vehicle":"'+$(this).attr('data-vehicle')+'"}'),
success: function(data)
{
if(data.status == "success")
{
$('.choice').addClass('inactive').removeClass('chosen');
varThis.addClass('chosen').removeClass('inactive');
vehicleSet = true;
actualize_calc_button();
}
}
})
});
$('#van').click();
// Calculate Button
$(document).on("click", "#calc.active", function()
{
$('#first_callback').fadeOut('slow');
$('.calculate_error').remove();
//$('.further_info').remove();
$('#calc_loading').remove();
$('#calc_button').after('<div id="calc_loading"><img src="typo3conf/ext/ww_preisrechner/Resources/Public/Images/359.gif" alt="loading " /></div>');
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=calculatePrice',
success: function(response)
{
if(response.status == "success" && response.data.PREIS > 0)
{
$('#calc_loading').remove();
$('#result').slideDown().show('slow');
$('.result_inner_text').remove();
$('#distance').show().append('<div class="result_inner_text">'+textDistance+'<span>'+response.data.STRECKE_FORMATTED+' '+textKilometersShort+'</span></div>');
$('#time').show().append('<div class="result_inner_text">'+textTransitTime+'<sup>2</sup><span>'+response.data.LAUFZEIT_STD+' '+textHoursShort+' '+response.data.LAUFZEIT_MIN+' '+textMinutesShort+'</span></div>');
$('#price').show().append('<div class="result_inner_text">'+textNettoPrice+'<sup>1</sup><span>'+response.data.PREIS_FORMATTED+' \€</span></div>');
$('.button_big').show();
$('#callbackindex').removeClass('result');
//$('#price').after('<div class="further_info">Fracht: '+response.data.FRACHT+'; Faehre: '+response.data.FAEHRE+'; Maut: '+response.data.MAUT+'; Mindestpreis: '+response.data.MINDESTPREIS+'</div>');
}
else if(response.status == "success") {
$('#calc_loading').remove();
$('#result').slideDown().show('slow');
$('.result_inner_text').remove();
$('#distance').show().append('<div class="result_inner_text">'+textDistance+'<span>'+response.data.STRECKE_FORMATTED+' '+textKilometersShort+'</span></div>');
$('#time').show().append('<div class="result_inner_text">'+textTransitTime+'<sup>2</sup><span>'+response.data.LAUFZEIT_STD+' '+textHoursShort+' '+response.data.LAUFZEIT_MIN+' '+textMinutesShort+'</span></div>');
$('#price').show().append('<div class="result_inner_text" style="margin: 0 0 0 0px;text-align: center;">'+textSonderpreis+'</span></div>');
$('.button_big').hide();
$('#callbackindex').removeClass('result');
}
else if(response.status == "error" && response.data.errorcode == "#S14")
{
$('#calc_loading').remove();
$('#result').slideDown().show('slow');
$('.result_background').append('<div class="calculate_error">'+textRouteCannotBeCalculated+'</div>');
$('#distance').hide();
$('#time').hide();
$('#price').hide();
$('.button_big').hide();
$('#callbackindex').addClass('result');
}else
{
$('#calc_loading').remove();
$('#result').slideDown().show('slow');
$('.result_background').append('<div class="calculate_error">'+response.data.message+'</div>');
$('#distance').hide();
$('#time').hide();
$('#price').hide();
$('.button_big').hide();
$('#callbackindex').addClass('result');
}
}
})
});
}
// --------------------------------------------------
// DETAILS
// --------------------------------------------------
//Basedata
if($('.ww_preisrechner').hasClass('details') || $('.ww_preisrechner').hasClass('overview'))
{
$('.menu_2_inner').css('display', 'none').after('<div style="width: 185px; height: 392px;"></div>');
}
if($('.ww_preisrechner').hasClass('details'))
{
// Check fields
// 2.1
/* if($('#street_sender').val() == "")
{
$('#street_sender').val('-');
}
if($('#number_sender').val() == "")
{
$('#number_sender').val('-');
}
if($('#street_recipient').val() == "")
{
$('#street_recipient').val('-');
}
if($('#number_recipient').val() == "")
{
$('#number_recipient').val('-');
} */
function actualize_step1_next_button()
{
if(step1_valid && sender_lastname_company && recipient_lastname_company)
{
$('#address-next').removeClass('inactive_purple').addClass('active_purple');
}else{
$('#address-next').removeClass('active_purple').addClass('inactive_purple');
}
}
function checkIfFilledStep1()
{
if($('#lastname_sender').val().length < 3 && $('#company_sender').val().length == 0 || $('#lastname_sender').val().length == 0 && $('#company_sender').val().length < 3 )
{
sender_lastname_company = false;
}else{
sender_lastname_company = true;
}
if($('#lastname_recipient').val().length < 3 && $('#company_recipient').val().length == 0 || $('#lastname_recipient').val().length == 0 && $('#company_recipient').val().length < 3 )
{
recipient_lastname_company = false;
}else{
recipient_lastname_company = true;
}
var required_step1 = $('#fieldset-address .required');
step1_valid = true;
for(var i=0; i<required_step1.length; i++)
{
if(required_step1[i].value.length < 1 )
{
step1_valid = false;
break;
}
}
actualize_step1_next_button();
return;
}
function checkIfFilledStep2()
{
var required_step2 = $('#fieldset-applicant .required');
step2_valid = true;
for(var i=0; i<required_step2.length; i++)
{
if(required_step2[i].value.length < 1 || required_step2[i].value == "-" )
{
step2_valid = false;
break;
}
if(required_step2[i].id == 'country' && required_step2[i].value == '-1'){
step2_valid = false;
}
if(required_step2[i].id == 'mail' && !isValidEmailAddress(required_step2[i].value)){
step2_valid = false;
}
if(required_step2[i].id == 'plz' && !isValidZipCode(required_step2[i].value))
{
step2_valid = false;
}
}
if(step2_valid)
{
$('#applicant-next').removeClass('inactive_purple').addClass('active_purple');
}else{
$('#applicant-next').removeClass('active_purple').addClass('inactive_purple');
}
}
function checkIfFilledStep3()
{
var required_step3 = $('#fieldset-desc .required');
step3_valid = true;
for(var i=0; i<required_step3.length; i++)
{
if(required_step3[i].value.length < 1 || !isValidNumbers(required_step3[i].value) || $('#weight').val() > 5200)
{
step3_valid = false;
break;
}
}
if(step3_valid)
{
$('#desc-next').removeClass('inactive_purple').addClass('active_purple');
}else{
$('#desc-next').removeClass('active_purple').addClass('inactive_purple');
}
}
function checkIfFilledStep4()
{
var required_step4 = $('#fieldset-time .required');
step4_valid = true;
for(var i=0; i<required_step4.length; i++)
{
if(required_step4[i].value.length < 1)
{
step4_valid = false;
break;
}
}
if(step4_valid)
{
$('#time-next').removeClass('inactive_purple').addClass('active_purple');
}else{
$('#time-next').removeClass('active_purple').addClass('inactive_purple');
}
}
checkIfFilledStep1();
checkIfFilledStep2();
checkIfFilledStep3();
checkIfFilledStep4();
checkLastnameCompanySender = function()
{
if($('#lastname_sender').val().length < 3 && $('#company_sender').val().length == 0 || $('#lastname_sender').val().length == 0 && $('#company_sender').val().length < 3 )
{
sender_lastname_company = false;
$('#company_sender').addClass('gradient').css({
'border':'1px solid #b0116a',
'margin': '10px 0 35px 0'
}).after('<div class="ww_preisrechner_error" style="bottom: 95px;">'+errorMessageE601+'</div>');
$('#lastname_sender').addClass('gradient').css('border','1px solid #b0116a');
}else{
sender_lastname_company = true;
$('.left .ww_preisrechner_error').remove();
$('#lastname_sender').removeClass('gradient').css('border','1px solid #c0c0c0');
$('#company_sender').removeClass('gradient').css({
'border': '1px solid #c0c0c0',
'margin': '10px 0 0 0'
});
}
return;
};
$('#lastname_sender').keyup(checkLastnameCompanySender);
$('#company_sender').keyup(checkLastnameCompanySender);
checkLastnameCompanyRecipient = function()
{
if($('#lastname_recipient').val().length < 3 && $('#company_recipient').val().length == 0 || $('#lastname_recipient').val().length == 0 && $('#company_recipient').val().length < 3 ){
recipient_lastname_company = false;
$('#company_recipient').addClass('gradient').css({
'border': '1px solid #b0116a',
'margin': '10px 0 35px 0'
}).after('<div class="ww_preisrechner_error" style="bottom: 95px; left: 125px;">'+errorMessageE603+'</div>');
$('#lastname_recipient').addClass('gradient').css('border','1px solid #b0116a');
}else{
recipient_lastname_company = true;
$('.right .ww_preisrechner_error').remove();
$('#lastname_recipient').removeClass('gradient').css('border','1px solid #c0c0c0');
$('#company_recipient').removeClass('gradient').css({
'border': '1px solid #c0c0c0',
'margin': '10px 0 0 0'
});
}
return;
};
$('#gender_sender').val(startAnrede);
$('#gender_recipient').val(targetAnrede);
$('#gender').val(auftraggeberAnrede);
$('#country').val(auftraggeberLkz);
$('#lastname_recipient').keyup(checkLastnameCompanyRecipient);
$('#company_recipient').keyup(checkLastnameCompanyRecipient);
$('#fieldset-address input').keyup(checkIfFilledStep1);
$('#fieldset-applicant input').keyup(checkIfFilledStep2);
$('#fieldset-desc input').keyup(checkIfFilledStep3);
$('#fieldset-time input').blur(checkIfFilledStep4);
// 2.2
$('#mail').keyup(function(){
if(!isValidEmailAddress($(this).val()))
{
$('.mail.ww_preisrechner_error').remove();
$(this).addClass('gradient').css({
'border': '1px solid #b0116a'
}).after('<div class="ww_preisrechner_error mail" style="bottom: 68px;">'+textErrorEmail+'</div>');
} else {
$('.mail.ww_preisrechner_error').remove();
$(this).removeClass('gradient').css({
'border': '1px solid #c0c0c0'
});
}
});
// Radio-Buttons
function radioButtons(type)
{
if(type == 'absender')
{
$('#country').val($('#country_sender_lkz').val());
$('#gender').val($('#gender_sender').val());
$('#company').val($('#company_sender').val());
$('#firstname').val($('#firstname_sender').val());
$('#lastname').val($('#lastname_sender').val());
$('#street').val($('#street_sender').val());
$('#number').val($('#number_sender').val());
$('#plz').val($('#plz_sender').val());
$('#city').val($('#city_sender').val());
}else if(type == 'empfaenger')
{
$('#country').val($('#country_recipient_lkz').val());
$('#gender').val($('#gender_recipient').val());
$('#company').val($('#company_recipient').val());
$('#firstname').val($('#firstname_recipient').val());
$('#lastname').val($('#lastname_recipient').val());
$('#street').val($('#street_recipient').val());
$('#number').val($('#number_recipient').val());
$('#plz').val($('#plz_recipient').val());
$('#city').val($('#city_recipient').val());
}else if(type == 'abweichend')
{
$('#country').val('D');
$('#gender').val('');
$('#company').val('');
$('#firstname').val('');
$('#lastname').val('');
$('#street').val('');
$('#number').val('');
$('#plz').val('');
$('#city').val('');
}
}
$('#input_absender').change(function(){
radioButtons($('input',this).val());
checkIfFilledStep2();
});
$('#input_empfaenger').change(function(){
radioButtons($('input',this).val());
checkIfFilledStep2();
});
$('#input_abweichend').change(function(){
radioButtons($('input',this).val());
checkIfFilledStep2();
});
$('#country').change(function ()
{
if($(this).val() == '-1')
{
$(this).addClass('inactive');
}else
{
$(this).removeClass('inactive')
}
checkIfFilledStep2();
});
// 2.3
$('#weight').keyup(function()
{
if(!isValidNumbers($(this).val()))
{
$('.weight.ww_preisrechner_error').remove();
$(this).addClass('gradient').css({
'border': '1px solid #b0116a'
}).after('<div class="ww_preisrechner_error weight" style="top: 22px; left: 448px;">'+textErrorNumber+'</div>');
} else if($(this).val() > 5200) {
$('.weight.ww_preisrechner_error').remove();
$(this).addClass('gradient').css({
'border': '1px solid #b0116a'
}).after('<div class="ww_preisrechner_error weight" style="top: 22px; left: 448px;">'+textErrorWeight+'</div>');
} else {
$('.weight.ww_preisrechner_error').remove();
$(this).removeClass('gradient').css({
'border': '1px solid #c0c0c0',
'margin': '10px 0px 0px 0px'
});
}
});
$('#quantity').keyup(function(){
if(!isValidNumbers($(this).val()))
{
$('.quantity.ww_preisrechner_error').remove();
$(this).addClass('gradient').css({
'border': '1px solid #b0116a'
}).after('<div class="ww_preisrechner_error quantity" style="top: 70px; left: 448px;">'+textErrorNumber+'</div>');
} else {
$('.quantity.ww_preisrechner_error').remove();
$(this).removeClass('gradient').css({
'border': '1px solid #c0c0c0',
'margin': '10px 0px 0px 0px'
});
}
});
function dimensionsValid()
{
if(!isValidNumbers($('#length').val()) || !isValidNumbers($('#width').val()) || !isValidNumbers($('#height').val()))
{
$('.dimensions.ww_preisrechner_error').remove();
$('#length').addClass('gradient').css({
'border': '1px solid #b0116a'
});
$('#width').addClass('gradient').css({
'border': '1px solid #b0116a'
});
$('#height').addClass('gradient').css({
'border': '1px solid #b0116a'
}).after('<div class="ww_preisrechner_error dimensions" style="top: 115px; left: 232px;">'+textErrorNumber+'</div>');
} else {
$('.dimensions.ww_preisrechner_error').remove();
$('#length').removeClass('gradient').css({
'border': '1px solid #c0c0c0'
});
$('#width').removeClass('gradient').css({
'border': '1px solid #c0c0c0'
});
$('#height').removeClass('gradient').css({
'border': '1px solid #c0c0c0'
});
}
}
$('#length').keyup(dimensionsValid);
$('#width').keyup(dimensionsValid);
$('#height').keyup(dimensionsValid);
// Next Buttons
$(document).on("click", "#address-next.active_purple", function()
{
var customStreetStart = "";
if($('#street_sender').attr("data-customstreetstart") == "1")
{
customStreetStart = '"START_STRASSE_STEP2":"'+ $('#street_sender').val()+'",';
}
var customStreetTarget = "";
if($('#street_recipient').attr("data-customstreettarget") == "1")
{
customStreetTarget = '"TARGET_STRASSE_STEP2":"'+ $('#street_recipient').val()+'",';
}
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"START_FIRMA":"'+$('#company_sender').val()+'",'
+ '"START_ANREDE":"'+$('#gender_sender').val()+'",'
+ '"START_VORNAME":"'+$('#firstname_sender').val()+'",'
+ '"START_NACHNAME":"'+$('#lastname_sender').val()+'",'
+ customStreetStart
+ '"START_HAUSNUMMER":"'+$('#number_sender').val()+'",'
+ '"TARGET_FIRMA":"'+$('#company_recipient').val()+'",'
+ '"TARGET_ANREDE":"'+$('#gender_recipient').val()+'",'
+ '"TARGET_VORNAME":"'+$('#firstname_recipient').val()+'",'
+ '"TARGET_NACHNAME":"'+$('#lastname_recipient').val()+'",'
+ customStreetTarget
+ '"TARGET_HAUSNUMMER":"'+$('#number_recipient').val()+'"}'),
success: function(response)
{
if(response.status == "success")
{
$('#address').slideUp().hide('slow');
$('#fieldset-address').addClass('inactive').append('<div class="button_checked" />');
$('#fieldset-address legend').addClass('checked');
$('#fieldset-applicant').removeClass();
$('#applicant').slideDown().show('slow');
if (($('#country').val() != '-1' && $('#country').val() != null) ||
$('#company').val() != '' ||
$('#gender').val() != '' ||
$('#firstname').val() != '' ||
$('#lastname').val() != '' ||
$('#street').val() != '' ||
$('#number').val() != '' ||
$('#plz').val() != '' ||
$('#city').val() != '' ||
$('#phone').val() != '' ||
$('#mail').val() != '' )
{
$('input','#input_abweichend').attr('checked', true);
$('#country').removeClass();
/* $('#gender').prop('disabled', false).removeClass('readonly');
$('#company').prop('readonly', false).removeClass('readonly');
$('#firstname').prop('readonly', false).removeClass('readonly');
$('#lastname').prop('readonly', false).removeClass('readonly');
$('#plz').prop('readonly', false).removeClass('readonly');
$('#city').prop('readonly', false).removeClass('readonly'); */
}else{
$('input','#input_absender').attr('checked', true);
radioButtons($('input:radio[name="address"]:checked').val());
}
checkIfFilledStep2();
}
}
});
});
$(document).on("click", "#applicant-next.active_purple", function()
{
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"AUFTRAGGEBER_LKZ":"'+$('#country').val()+'",'
+ '"AUFTRAGGEBER_FIRMA":"'+$('#company').val()+'",'
+ '"AUFTRAGGEBER_ANREDE":"'+$('#gender').val()+'",'
+ '"AUFTRAGGEBER_VORNAME":"'+$('#firstname').val()+'",'
+ '"AUFTRAGGEBER_NACHNAME":"'+$('#lastname').val()+'",'
+ '"AUFTRAGGEBER_STRASSE":"'+$('#street').val()+'",'
+ '"AUFTRAGGEBER_HAUSNUMMER":"'+$('#number').val()+'",'
+ '"AUFTRAGGEBER_PLZ":"'+$('#plz').val()+'",'
+ '"AUFTRAGGEBER_ORT":"'+$('#city').val()+'",'
+ '"AUFTRAGGEBER_TELEFON":"'+$('#phone').val()+'",'
+ '"AUFTRAGGEBER_EMAIL":"'+$('#mail').val()+'"}'),
success: function(response)
{
if(response.status == "success")
{
$('#applicant').slideUp().hide('slow');
$('#fieldset-applicant').addClass('inactive').append('<div class="button_checked" />');
$('#fieldset-applicant legend').addClass('checked');
$('#fieldset-desc').removeClass();
$('#desc').slideDown().show('slow');
}
}
});
});
$(document).on("click", "#desc-next.active_purple", function()
{
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"FRACHT_GEWICHT":"'+$('#weight').val()+'",'
+ '"FRACHT_ANZAHLSTUECKE":"'+$('#quantity').val()+'",'
+ '"FRACHT_VOLUMEN_LAENGE":"'+$('#length').val()+'",'
+ '"FRACHT_VOLUMEN_BREITE":"'+$('#width').val()+'",'
+ '"FRACHT_VOLUMEN_HOEHE":"'+$('#height').val()+'",'
+ '"FRACHT_BESCHREIBUNG":"'+$('#description').val()+'"}'),
success: function(response)
{
if(response.status == "success")
{
if(response.data.FRACHT_GEWICHT_VALIDATED)
{
$('#desc').slideUp().hide('slow');
$('#fieldset-desc').addClass('inactive').append('<div class="button_checked" />');
$('#fieldset-desc legend').addClass('checked');
$('#fieldset-time').removeClass();
$('#time').slideDown().show('slow');
checkIfFilledStep4();
}else{
$('#weight_validation_link').click();
}
}
}
});
});
// Lightbox
$(document).on("click", ".weight_validation_next", function()
{
$.fancybox.close();
$('#desc').slideUp().hide('slow');
$('#fieldset-desc').addClass('inactive').append('<div class="button_checked" />');
$('#fieldset-desc legend').addClass('checked');
$('#fieldset-time').removeClass();
$('#time').slideDown().show('slow');
checkIfFilledStep4();
});
$(document).on("click", ".weight_validation_callback", function()
{
open_callbackbox = true;
$.fancybox.close();
});
$(document).on("click", "#time-next.active_purple", function()
{
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"ABHOLUNG_AB":"'+$('#pick-up-from').val()+'",'
+ '"ABHOLUNG_BIS":"'+$('#pick-up-till').val()+'",'
+ '"ZUSTELLUNG_AB":"'+$('#delivery-from').val()+'",'
+ '"ZUSTELLUNG_BIS":"'+$('#delivery-till').val()+'"}'),
success: function(response)
{
if(response.status == "success")
{
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=checkOrder',
success: function(response)
{
if(response.status == "success")
{
window.location.href = urlOverview;
}else{
var errorText = textFollowingErrorsAppeared + ":\n\n";
for (var hash in response.data)
{
var error = response.data[hash];
errorText = errorText+error.message+"\n";
}
alert(errorText);
}
}
});
}
}
});
return false;
});
$(document).on("click", "#time-next.inactive_purple", function(){
return false;
});
// Fieldsets Slide-Effects
$(document).on("click", "#fieldset-address .checked", function()
{
$('.fieldset_inner').slideUp().hide('slow');
$('fieldset').addClass('inactive');
$('#address').slideDown().show('slow');
$('#fieldset-address').removeClass();
$('#fieldset-applicant legend').removeClass('checked');
$('#fieldset-applicant .button_checked').remove()
$('#fieldset-desc legend').removeClass('checked');
$('#fieldset-desc .button_checked').remove()
});
$(document).on("click", "#fieldset-applicant .checked", function()
{
$('.fieldset_inner').slideUp().hide('slow');
$('fieldset').addClass('inactive');
$('#applicant').slideDown().show('slow');
$('#fieldset-applicant').removeClass();
$('#fieldset-desc legend').removeClass('checked');
$('#fieldset-desc .button_checked').remove()
});
$(document).on("click", "#fieldset-desc .checked", function()
{
$('.fieldset_inner').slideUp().hide('slow');
$('fieldset').addClass('inactive');
$('#desc').slideDown().show('slow');
$('#fieldset-desc').removeClass();
});
$(document).on("click", "#fieldset-time .checked", function()
{
$('.fieldset_inner').slideUp().hide('slow');
$('fieldset').addClass('inactive');
$('#time').slideDown().show('slow');
$('#fieldset-time').removeClass();
});
// Datepicker
// --------------------------------------------------
$.formatDate = function (date) {
var month = date.getMonth()+1;
month = month < 10 ? '0'+month : month;
var day = date.getDate();
day = day < 10 ? '0'+day : day;
return day + "." + month + "." + date.getFullYear();
}
$.formatDatetime = function (date) {
var hours = date.getHours();
hours = hours < 10 ? '0'+hours : hours;
var minutes = date.getMinutes();
minutes = minutes < 10 ? '0'+minutes : minutes;
var strTime = hours + ':' + minutes;
return $.formatDate(date) + " " + strTime;
}
$.initializeDatetimepickerRange = function (start, end, minDateTime, defaultDateTime, closeCallback) {
start.datetimepicker({
dateFormat: 'dd.mm.yy',
timeFormat: 'HH:mm',
firstDay: 1,
stepMinute: 15,
minDateTime: minDateTime,
defaultValue: $.formatDatetime(defaultDateTime),
onClose: function() {
var selectedStartDate = start.datetimepicker('getDate');
var selectedEndDate = end.datetimepicker('getDate');
end.datetimepicker( "option", "minDate", selectedStartDate );
end.datetimepicker( "option", "minDateTime", selectedStartDate );
if (selectedEndDate==null || selectedStartDate.getTime()>selectedEndDate.getTime()) {
end.datetimepicker( "setDate", selectedStartDate );
}
if ($.isFunction(closeCallback)) {
closeCallback(start, end);
}
}
});
end.datetimepicker({
dateFormat: 'dd.mm.yy',
timeFormat: 'HH:mm',
firstDay: 1,
stepMinute: 15,
onClose: function() {
if ($.isFunction(closeCallback)) {
closeCallback(start, end);
}
},
minDate: start.val()
});
}
$.roundUpTime = function (datetime,additionalMinutes) {
datetime.setMinutes(datetime.getMinutes()+additionalMinutes);
if(datetime.getMinutes() <= 14){
datetime.setMinutes(15);
}
else if (datetime.getMinutes() <= 29){
datetime.setMinutes(30);
}
else if (datetime.getMinutes() <= 44){
datetime.setMinutes(45);
}
else{
datetime.setMinutes(0);
datetime.setHours(datetime.getHours()+1);
}
return datetime;
}
/**
* Date and time picker: Abholung
*/
//var loadingTime = 60;
var loadingTime = 0;
var standardTimePickup = $.roundUpTime(new Date(),60);
var standardTimeDelivery = $.roundUpTime(new Date(),60+loadingTime+runTime);
var startDateAbholungTextBox = $('#pick-up-from');
var endDateAbholungTextBox = $('#pick-up-till');
var startDateLieferungTextBox = $('#delivery-from');
var endDateLieferungTextBox = $('#delivery-till');
closeCallback = function(start,end){
var selectedStartDate = start.datetimepicker('getDate');
var selectedEndDate = end.datetimepicker('getDate');
var selectedStartDateLieferungVon = $('#delivery-from').datetimepicker('getDate');
var selectedStartDateLieferungBis = $('#delivery-till').datetimepicker('getDate');
var minimumOffset = loadingTime+runTime;
selectedStartDate = $.roundUpTime(selectedStartDate,minimumOffset);
selectedEndDate = $.roundUpTime(selectedEndDate,minimumOffset);
$('#delivery-from').datetimepicker("option", "minDate", selectedStartDate);
$('#delivery-from').datetimepicker("option", "minDateTime", selectedStartDate);
$('#delivery-till').datetimepicker("option", "minDate", selectedEndDate );
$('#delivery-till').datetimepicker("option", "minDateTime", selectedEndDate );
if (selectedStartDateLieferungVon == null || selectedStartDate.getTime()>selectedStartDateLieferungVon.getTime()) {
$('#delivery-from').datetimepicker("setDate", selectedStartDate);
}
if (selectedStartDateLieferungBis == null || selectedEndDate.getTime()>selectedStartDateLieferungBis.getTime()) {
$('#delivery-till').datetimepicker( "setDate", selectedEndDate );
}
}
$.initializeDatetimepickerRange(startDateAbholungTextBox,endDateAbholungTextBox,new Date(),standardTimePickup,closeCallback);
$.initializeDatetimepickerRange(startDateLieferungTextBox,endDateLieferungTextBox,new Date(),standardTimeDelivery);
// Standard values
var initDefaultDateTimeValuePickup = $.formatDatetime(standardTimePickup);
var initDefaultDateTimeValueDelivery = $.formatDatetime(standardTimeDelivery);
if (startDateAbholungTextBox.val()=="")
startDateAbholungTextBox.val(initDefaultDateTimeValuePickup);
if (endDateAbholungTextBox.val()=="")
endDateAbholungTextBox.val(initDefaultDateTimeValuePickup);
if (startDateLieferungTextBox.val()=="")
startDateLieferungTextBox.val(initDefaultDateTimeValueDelivery);
if (endDateLieferungTextBox.val()=="")
endDateLieferungTextBox.val(initDefaultDateTimeValueDelivery);
closeCallback(startDateAbholungTextBox,endDateAbholungTextBox);
// Callback form
$('.callback').click(function(){
// Save form values of current step
var fieldset = $(this).closest("fieldset").attr("id");
if (fieldset == "fieldset-address") {
var customStreetStart = "";
if($('#street_sender').attr("data-customstreetstart") == "1")
{
customStreetStart = '"START_STRASSE_STEP2":"'+ $('#street_sender').val()+'",';
}
var customStreetTarget = "";
if($('#street_recipient').attr("data-customstreettarget") == "1")
{
customStreetTarget = '"TARGET_STRASSE_STEP2":"'+ $('#street_recipient').val()+'",';
}
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]=' + encodeURIComponent('{'
+ '"START_FIRMA":"' + $('#company_sender').val() + '",'
+ '"START_ANREDE":"' + $('#gender_sender').val() + '",'
+ '"START_VORNAME":"' + $('#firstname_sender').val() + '",'
+ '"START_NACHNAME":"' + $('#lastname_sender').val() + '",'
+ customStreetStart
+ '"START_HAUSNUMMER":"' + $('#number_sender').val() + '",'
+ '"TARGET_FIRMA":"' + $('#company_recipient').val() + '",'
+ '"TARGET_ANREDE":"' + $('#gender_recipient').val() + '",'
+ '"TARGET_VORNAME":"' + $('#firstname_recipient').val() + '",'
+ '"TARGET_NACHNAME":"' + $('#lastname_recipient').val() + '",'
+ customStreetTarget
+ '"TARGET_HAUSNUMMER":"' + $('#number_recipient').val() + '"}')
}
);
}
else if (fieldset == "fieldset-applicant") {
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"AUFTRAGGEBER_LKZ":"'+$('#country').val()+'",'
+ '"AUFTRAGGEBER_FIRMA":"'+$('#company').val()+'",'
+ '"AUFTRAGGEBER_ANREDE":"'+$('#gender').val()+'",'
+ '"AUFTRAGGEBER_VORNAME":"'+$('#firstname').val()+'",'
+ '"AUFTRAGGEBER_NACHNAME":"'+$('#lastname').val()+'",'
+ '"AUFTRAGGEBER_STRASSE":"'+$('#street').val()+'",'
+ '"AUFTRAGGEBER_HAUSNUMMER":"'+$('#number').val()+'",'
+ '"AUFTRAGGEBER_PLZ":"'+$('#plz').val()+'",'
+ '"AUFTRAGGEBER_ORT":"'+$('#city').val()+'",'
+ '"AUFTRAGGEBER_TELEFON":"'+$('#phone').val()+'",'
+ '"AUFTRAGGEBER_EMAIL":"'+$('#mail').val()+'"}')
}
);
}
else if (fieldset == "fieldset-desc") {
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"FRACHT_GEWICHT":"'+$('#weight').val()+'",'
+ '"FRACHT_ANZAHLSTUECKE":"'+$('#quantity').val()+'",'
+ '"FRACHT_VOLUMEN_LAENGE":"'+$('#length').val()+'",'
+ '"FRACHT_VOLUMEN_BREITE":"'+$('#width').val()+'",'
+ '"FRACHT_VOLUMEN_HOEHE":"'+$('#height').val()+'",'
+ '"FRACHT_BESCHREIBUNG":"'+$('#description').val()+'"}')
}
);
}
else if (fieldset == "fieldset-time") {
$.ajax(
{
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=setAdditionalData&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"ABHOLUNG_AB":"'+$('#pick-up-from').val()+'",'
+ '"ABHOLUNG_BIS":"'+$('#pick-up-till').val()+'",'
+ '"ZUSTELLUNG_AB":"'+$('#delivery-from').val()+'",'
+ '"ZUSTELLUNG_BIS":"'+$('#delivery-till').val()+'"}')
}
);
}
// Get value from Step 2
$("#callback_name").val(($('#firstname').val()+" "+$('#lastname').val()).trim());
$("#callback_phone").val($('#phone').val());
$("#callback_email").val($('#mail').val());
$("#callback_company").val($('#company').val());
// Check if fields are filled
callback_name_valid = $("#callback_name").val().length >= 3;
callback_phone_valid = isValidTelephone($("#callback_phone").val())
callback_email_valid = isValidEmailAddress($('#callback_email').val());
if(callback_name_valid && callback_phone_valid && callback_email_valid)
{
$('.send_callback').removeAttr("disabled").addClass('active');
}else{
$('.send_callback').attr("disabled", "disabled").removeClass('active');
}
return false;
});
}
// --------------------------------------------------
// OVERVIEW
// --------------------------------------------------
if($('.ww_preisrechner').hasClass('overview'))
{
$('#agb').change(function()
{
if($(this).attr('checked'))
{
$('#send').removeAttr("disabled").removeClass('inactive');
}else{
$('#send').attr("disabled", "disabled").addClass('inactive');
}
});
}
// Edit links
// for description
if(window.location.hash == '#desc'){
$('#address').hide();
$('#fieldset-address').addClass('inactive').append('<div class="button_checked" />');
$('#fieldset-address legend').addClass('checked');
$('#fieldset-applicant').append('<div class="button_checked" />');
$('#fieldset-applicant legend').addClass('checked');
$('#fieldset-desc').removeClass('inactive');
$('#desc').show();
$('html, body').scrollTop(490);
}
// for time
if(window.location.hash == '#time'){
$('#address').hide();
$('#fieldset-address').addClass('inactive').append('<div class="button_checked" />');
$('#fieldset-address legend').addClass('checked');
$('#fieldset-applicant').append('<div class="button_checked" />');
$('#fieldset-applicant legend').addClass('checked');
$('#fieldset-desc').append('<div class="button_checked" />');
$('#fieldset-desc legend').addClass('checked');
$('#fieldset-time').removeClass('inactive');
$('#time').show();
$('html, body').scrollTop(545);
}
// --------------------------------------------------
// CALLBACK FORM
// --------------------------------------------------
// Actualize Button
function actualize_callback_button() {
callback_name_valid = $('#callback_name').val().trim().length >= 3;
callback_phone_valid = isValidTelephone($("#callback_phone").val());
callback_email_valid = isValidEmailAddress($("#callback_email").val());
if(callback_name_valid && callback_phone_valid && callback_email_valid)
{
$('.send_callback').removeAttr("disabled").addClass('active');
}else{
$('.send_callback').attr("disabled", "disabled").removeClass('active');
}
}
$('.callback').click(function(){
actualize_callback_button();
});
setInterval(actualize_callback_button, 200);
$(document).on("click", ".send_callback.active", function()
{
$.ajax({
url: ajaxBaseUrl + '&tx_wwpreisrechner_preisrechner[do]=sendCallbackForm&tx_wwpreisrechner_preisrechner[data]='+encodeURIComponent('{'
+ '"CALLBACK_NAME":"'+$('#callback_name').val()+'",'
+ '"CALLBACK_FIRMA":"'+$('#callback_company').val()+'",'
+ '"CALLBACK_EMAIL":"'+$('#callback_email').val()+'",'
+ '"CALLBACK_TELEFON":"'+$('#callback_phone').val()+'",'
+ '"CALLBACK_TEXT":"'+$('#callback_notation').val()+'"}'
),
success: function(response)
{
if(response.status == "error")
{
$('.callback_error').remove();
$('.callback_item_wrap').after('<div class="callback_error">'+response.data[0].message+'</div>');
}
else{
$('#callBack').hide();
$('.callback_error_wrap').remove();
$('#fancybox-content div').append('<div class="callback_error_wrap">'
+ '<h2>'+textHeadlineCallback+'</h2>'
+ '<h3>'+textSecondHeadlineCallback+'</h3>'
+ '<div class="callback_error_text">'
+ textNotationCallback
+ '<br><br>'
+ '<b>'+textReferenceNumberCallback+' </b>'
+ response.ref
+ '</div>'
+ '</div>'
);
callback_oncleanup = true;
}
}
})
return false;
});
});