zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Javascript & Ajax
Seite neu laden Preisrechner mit Distanz Transitzeit und Nettopreis

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 18.04.2016, 19:34
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 18.04.2016
Beiträge: 13
med47 befindet sich auf einem aufstrebenden Ast
Standard Preisrechner mit Distanz Transitzeit und Nettopreis

Hallo Leute ich brauche dringend Hilfe ich suche einen Script für meine Webseite was Distanz Transitzeit und Nettopreis rechnen kann.

z.B. wie hier Preisrechner zur Angebotskalkulation für Kurier- und Sonderfahrten: IN tIME

ich hoffe ihr könnt mir helfen

MfG

Geändert von med47 (18.04.2016 um 19:49 Uhr)
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 18.04.2016, 19:39
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Wir können gerne helfen. Aber wobei?
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 18.04.2016, 19:48
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 18.04.2016
Beiträge: 13
med47 befindet sich auf einem aufstrebenden Ast
Standard Preisrechner mit Distanz Transitzeit und Nettopreis

wie man so ein Script schreibt ich habe null Ahnung außer Kopieren und einfügen
Mit Zitat antworten
  #4 (permalink)  
Alt 18.04.2016, 19:54
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Mit Null Ahnung wird es schwierig.
Selbst mit kopieren komst du da nicht weiter, da so was auch eine Serverkomponente enthält.

Schreiben tut man es, in dem du eine Postleitzahlsuche suchst, diese per AJAX in ein Formular einbindest und dann das von dir gewünschter Ergebnis berechnen lässt.
Mit Zitat antworten
  #5 (permalink)  
Alt 18.04.2016, 20:42
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 18.04.2016
Beiträge: 13
med47 befindet sich auf einem aufstrebenden Ast
Standard Preisrechner mit Distanz Transitzeit und Nettopreis

wie das hier?

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;
            }
        },
        
centerOnScrolltrue
    
});
    $(
'a#weight_validation_link').fancybox(
    {
        
onClosed: function()
        {
            if(
open_callbackbox)
            {
                
setTimeout(function() {
                    $(
'#callback_wrapper').click();
                    
open_callbackbox false;
                }, 
500);
            }
        },
        
transitionIn'none',
        
transitionOut'none',
        
centerOnScrolltrue
    
});
    $(
'a#callback_wrapper').fancybox(
    {
        
centerOnScrolltrue
    
});
    
    
// AJAX Cache IE
    
$.ajaxSetup({ cachefalse });
    
    
// 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({
            
interval200 // 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({
                
urlajaxBaseUrl '&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({
                
urlajaxBaseUrl +  '&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({
                
urlajaxBaseUrl '&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({
                
urlajaxBaseUrl +  '&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({
                
urlajaxBaseUrl +  '&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({
                
urlajaxBaseUrl '&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+' \&euro;</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 && $('#company_sender').val().length == || $('#lastname_sender').val().length == && $('#company_sender').val().length )
                {
                    
sender_lastname_company false;
                }else{
                    
sender_lastname_company true;
                }
            
            if($(
'#lastname_recipient').val().length && $('#company_recipient').val().length == || $('#lastname_recipient').val().length == && $('#company_recipient').val().length )
                {
                    
recipient_lastname_company false;
                }else{
                    
recipient_lastname_company true;
                }
            
            var 
required_step1 = $('#fieldset-address .required');
            
step1_valid true;
            for(var 
i=0i<required_step1.lengthi++)
            {
                if(
required_step1[i].value.length )
                {
                    
step1_valid false;
                    break;
                }
            }
            
actualize_step1_next_button();
            return;
        }
        
        function 
checkIfFilledStep2()
        {
            var 
required_step2 = $('#fieldset-applicant .required');
            
step2_valid true;
            for(var 
i=0i<required_step2.lengthi++)
            {
                if(
required_step2[i].value.length || 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=0i<required_step3.lengthi++)
            {
                if(
required_step3[i].value.length || !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=0i<required_step4.lengthi++)
            {
                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 && $('#company_sender').val().length == || $('#lastname_sender').val().length == && $('#company_sender').val().length )
                {
                
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 && $('#company_recipient').val().length == || $('#lastname_recipient').val().length == && $('#company_recipient').val().length ){
                
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(
            {
                
urlajaxBaseUrl '&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(
            {
                
urlajaxBaseUrl '&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(
            {
                
urlajaxBaseUrl '&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(
            {
                
urlajaxBaseUrl '&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(
                        {
                            
urlajaxBaseUrl '&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 (startendminDateTimedefaultDateTimecloseCallback) {
            
start.datetimepicker({
                
dateFormat'dd.mm.yy',
                
timeFormat'HH:mm',
                
firstDay1,
                
stepMinute15,
                
minDateTimeminDateTime,
                
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(startend);
                    }
                }

            });

            
end.datetimepicker({
                
dateFormat'dd.mm.yy',
                
timeFormat'HH:mm',
                
firstDay1,
                
stepMinute15,
                
onClose: function() {
                    if ($.
isFunction(closeCallback)) {
                        
closeCallback(startend);
                    }
                },
                
minDatestart.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(
                    {
                        
urlajaxBaseUrl '&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(
                    {
                        
urlajaxBaseUrl '&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(
                    {
                        
urlajaxBaseUrl '&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(
                    {
                        
urlajaxBaseUrl '&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_button200);


    $(
document).on("click"".send_callback.active", function()
    {
        $.
ajax({
                
urlajaxBaseUrl '&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;
    });
    
}); 
Mit Zitat antworten
  #6 (permalink)  
Alt 18.04.2016, 21:02
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Ich kann deine Frage nicht beantworten, weil ich den Kontext nicht verstehe.

Das ist eine der vielen JS Dateien von der von dir oben verlinkten Seite. Also ein kleiner Teil der Client Komponenten. Aber was du nun mit "wie das hier" meinst, weiß ich nicht.

Falls du damit meinst das wäre ausreichend für ein derartiges Skript, lautet die Antwort: Nein
Mit Zitat antworten
  #7 (permalink)  
Alt 21.04.2016, 13:20
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 18.04.2016
Beiträge: 13
med47 befindet sich auf einem aufstrebenden Ast
Standard Preisrechner mit Distanz Transitzeit und Nettopreis

hallo Leute so jetzt habe ich noch ein kleines problem

und zwar möchte ich hier noch einen Grundbetrag einfügen und zwar soll es bis 150 km einen festen preis ausrechnen und ab 150 km je lastkilometer ausrechnen.
Danke

Code:
<html>
<head>
<title>Rechner</title>
<meta type="description" content="Distanz und Preis ermitteln."/>



<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places"></script>
<script type="text/javascript">


    var address1;
    var address2;

    var latlng;
    var geocoder;
    var map;

    var distance;
    var preisprokm=0.75;


    function initialize()
    {
        geocoder = new google.maps.Geocoder();
        // Adressen
        address1 = document.getElementById("address1").value;
        address2 = document.getElementById("address2").value;



        // Koordinaten finden
        if (geocoder)
        {
            geocoder.geocode({ 'address': address1}, function(results, status)
            {
                if (status == google.maps.GeocoderStatus.OK)
                {
                    location1 = results[0].geometry.location;
                } else
                {
                    alert("Es ist ein Fehler aufgetreten. Bitte erneut versuchen: " + status);
                }
            });
            geocoder.geocode( { 'address': address2}, function(results, status)
            {
                if (status == google.maps.GeocoderStatus.OK)
                {

                    location2 = results[0].geometry.location;

                    showMap();
                } else
                {
                    alert("Es ist ein Fehler aufgetreten. Bitte erneut versuchen: " + status);
                }
            });
        }
    }

    // Erstellt Karte
    function showMap()
    {

        latlng = new google.maps.LatLng((location1.lat()+location2.lat())/2,(location1.lng()+location2.lng())/2);


        var mapOptions =
        {
            zoom: 14,
            center: latlng,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };

        map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);


        // Route
        directionsService = new google.maps.DirectionsService();
        directionsDisplay = new google.maps.DirectionsRenderer(
        {
            suppressMarkers: true,
            suppressInfoWindows: true
        });
        directionsDisplay.setMap(map);
        var request = {
            origin:location1,
            destination:location2,
            travelMode: google.maps.DirectionsTravelMode.DRIVING
        };
        directionsService.route(request, function(response, status)
        {
            if (status == google.maps.DirectionsStatus.OK)
            {
                directionsDisplay.setDirections(response);
                distance = "  Entfernung: "+response.routes[0].legs[0].distance.text;
		distance += " Nettopreis: " + ((Math.round((response.routes[0].legs[0].distance.value)/1000)*preisprokm)+0.0) + " € ";
		distance += " Fahrzeit: "+response.routes[0].legs[0].duration.text;

		document.getElementById("distance_road").innerHTML = distance;
            }
        });

        // Marker
        var marker1 = new google.maps.Marker({
            map: map,
            position: location1,
            title: "Start"
        });
        var marker2 = new google.maps.Marker({
            map: map,
            position: location2,
            title: "Ziel"
        });


        // Entfernung berechnen
        var R = 6371;
        var dLat = toRad(location2.lat()-location1.lat());
        var dLon = toRad(location2.lng()-location1.lng());

        var dLat1 = toRad(location1.lat());
        var dLat2 = toRad(location2.lat());

        var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
                Math.cos(dLat1) * Math.cos(dLat1) *
                Math.sin(dLon/2) * Math.sin(dLon/2);
    }

    function toRad(deg)
    {
        return deg * Math.PI/180;
    }
</script>
</script>

</head>

<body bgcolor="#FFFFFF">
    <div id="form" style="width:100%; height:20%">
        <table align="center" valign="center">
            <tr>
                <td colspan="20" align="center"><b>Entfernung und Preis berechnen</b></td>
            </tr>
            <tr>
                <td colspan="20">&nbsp;</td>
            </tr>
            <tr>
                <td>Start:</td>
                <td>&nbsp;</td>
                <td><input type="text" name="address1" id="address1" size="50"/></td>
                <td>&nbsp;</td>
                <td>Ziel:</td>
                <td>&nbsp;</td>
                <td><input type="text" name="address2" id="address2" size="50"/></td>
            </tr>
            <tr>
                <td colspan="10">&nbsp;</td>
            </tr>
            <tr>
                <td colspan="10" align="center"><input type="button" value="Berechnen" onClick="initialize();"/></td>
            </tr>
        </table>
    </div>
    <center><div style="width:50%; height:10%" id="distance_road"></div></center>

    <center><div id="map_canvas" style="width:70%; height:54%"></div></center>
</body>
</html>
Mit Zitat antworten
  #8 (permalink)  
Alt 21.04.2016, 13:39
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Ist das eine Frage?
Mit Zitat antworten
  #9 (permalink)  
Alt 21.04.2016, 14:07
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 18.04.2016
Beiträge: 13
med47 befindet sich auf einem aufstrebenden Ast
Standard

hallo Leute so jetzt habe ich noch ein kleines Problem

so soll die frage aussehen nach viel Google´n habe ich so ein kleines Skript gefunden habe es mir ein wenig angepasst
Distanz Transitzeit und Nettopreis macht es aber ich möchte noch einen Mindestpreis einfügen z.B. alles was unter 150 km.
wie mache ich das?

Code:
<html>
<head>
<title>Rechner</title>
<meta type="description" content="Distanz und Preis ermitteln."/>



<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places"></script>
<script type="text/javascript">


    var address1;
    var address2;

    var latlng;
    var geocoder;
    var map;

    var distance;
    var preisprokm=0.75;


    function initialize()
    {
        geocoder = new google.maps.Geocoder();
        // Adressen
        address1 = document.getElementById("address1").value;
        address2 = document.getElementById("address2").value;



        // Koordinaten finden
        if (geocoder)
        {
            geocoder.geocode({ 'address': address1}, function(results, status)
            {
                if (status == google.maps.GeocoderStatus.OK)
                {
                    location1 = results[0].geometry.location;
                } else
                {
                    alert("Es ist ein Fehler aufgetreten. Bitte erneut versuchen: " + status);
                }
            });
            geocoder.geocode( { 'address': address2}, function(results, status)
            {
                if (status == google.maps.GeocoderStatus.OK)
                {

                    location2 = results[0].geometry.location;

                    showMap();
                } else
                {
                    alert("Es ist ein Fehler aufgetreten. Bitte erneut versuchen: " + status);
                }
            });
        }
    }

    // Erstellt Karte
    function showMap()
    {

        latlng = new google.maps.LatLng((location1.lat()+location2.lat())/2,(location1.lng()+location2.lng())/2);


        var mapOptions =
        {
            zoom: 14,
            center: latlng,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };

        map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);


        // Route
        directionsService = new google.maps.DirectionsService();
        directionsDisplay = new google.maps.DirectionsRenderer(
        {
            suppressMarkers: true,
            suppressInfoWindows: true
        });
        directionsDisplay.setMap(map);
        var request = {
            origin:location1,
            destination:location2,
            travelMode: google.maps.DirectionsTravelMode.DRIVING
        };
        directionsService.route(request, function(response, status)
        {
            if (status == google.maps.DirectionsStatus.OK)
            {
                directionsDisplay.setDirections(response);
                distance = "  Entfernung: "+response.routes[0].legs[0].distance.text;
		distance += " Nettopreis: " + ((Math.round((response.routes[0].legs[0].distance.value)/1000)*preisprokm)+0.0) + " € ";
		distance += " Fahrzeit: "+response.routes[0].legs[0].duration.text;

		document.getElementById("distance_road").innerHTML = distance;
            }
        });

        // Marker
        var marker1 = new google.maps.Marker({
            map: map,
            position: location1,
            title: "Start"
        });
        var marker2 = new google.maps.Marker({
            map: map,
            position: location2,
            title: "Ziel"
        });


        // Entfernung berechnen
        var R = 6371;
        var dLat = toRad(location2.lat()-location1.lat());
        var dLon = toRad(location2.lng()-location1.lng());

        var dLat1 = toRad(location1.lat());
        var dLat2 = toRad(location2.lat());

        var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
                Math.cos(dLat1) * Math.cos(dLat1) *
                Math.sin(dLon/2) * Math.sin(dLon/2);
    }

    function toRad(deg)
    {
        return deg * Math.PI/180;
    }
</script>
</script>

</head>

<body bgcolor="#FFFFFF">
    <div id="form" style="width:100%; height:20%">
        <table align="center" valign="center">
            <tr>
                <td colspan="20" align="center"><b>Entfernung und Preis berechnen</b></td>
            </tr>
            <tr>
                <td colspan="20">&nbsp;</td>
            </tr>
            <tr>
                <td>Start:</td>
                <td>&nbsp;</td>
                <td><input type="text" name="address1" id="address1" size="50"/></td>
                <td>&nbsp;</td>
                <td>Ziel:</td>
                <td>&nbsp;</td>
                <td><input type="text" name="address2" id="address2" size="50"/></td>
            </tr>
            <tr>
                <td colspan="10">&nbsp;</td>
            </tr>
            <tr>
                <td colspan="10" align="center"><input type="button" value="Berechnen" onClick="initialize();"/></td>
            </tr>
        </table>
    </div>
    <center><div style="width:50%; height:10%" id="distance_road"></div></center>

    <center><div id="map_canvas" style="width:70%; height:54%"></div></center>
</body>
</html>
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 21.04.2016, 14:29
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 30.01.2014
Beiträge: 2.247
cloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblick
Standard

Du hast hier diesen Block in deinem Code
Code:
		distance = "  Entfernung: "+response.routes[0].legs[0].distance.text;
		distance += " Nettopreis: " + ((Math.round((response.routes[0].legs[0].distance.value)/1000)*preisprokm)+0.0) + " € ";
		distance += " Fahrzeit: "+response.routes[0].legs[0].duration.text;
In der zweiten Zeile berechnest du den Preis. Hier legst du einfach eine Variable an, wo du vorab den Preis berechnest und den fügst du dann statt ((Math.round((response.routes[0].legs[0].distance.value)/1000)*preisprokm)+0.0) ein.
Also so in etwa (Pseudocode)

Code:
var preis; 
if (response.routes[0].legs[0].distance.value < 10000) { //korrekten Wert bitte selber ermitteln
    preis = Mindestpreis; 
}
else {
   preis = Hier mathe-formel von oben einfügen
}
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus



Alle Zeitangaben in WEZ +2. Es ist jetzt 12:52 Uhr.