﻿var FOOD_NOT_SELECTED = 'Es wurden keine Artikel ausgewaehlt!';
var UNDER_20EUR = 'Der Mindestbestellwert von 20,00 EUR ist noch nicht erreicht!';
var DB_ERR = 'Sorry, Database error!';
var AJAX_ERR = 'Sorry, Ajax error!';
var FINISH_ORDER_SUCC = 'Ihre Bestellung wurde erfolgreich gespeichert! \nIhre Bestellung wird ca 30 bis 45 Minuten dauern\n      Vielen Dank fuer Ihre Bestellung! \n\n Diese Meldung ist als eine Bestaetigung.';
var FAIL_ORDER = 'ERROR! Ihre Order wurde nicht gespeichert. Bitte bestellen Sie nochmal!';
var USE_FOOD_WITH = 'Besondere Wuenschen fuer diese Artikel?';
var INPUT_PLZ = 'Bitte geben Sie Ihre PLZ ein!';
var INPUT_ORT = 'Bitte geben Sie Ihre Ort ein!';
var INPUT_STR = 'Bitte geben Sie Ihre Strasse ein!';
var INPUT_NR = 'Bitte geben Sie Ihre Hausnummer ein!';
var ADDRESS_NOT_EXIST = 'Ihre eingegebene Adresse ist nicht vorhanden';
var CANNOT_ORDER = '';
var DEFAULT_COLOR = 'FFFFFF';
var FAR_ORDER = "Ihre Adresse ist zu weit. Bitte rufen Sie uns an, um Ihre Bestellung zu ordnen!";
var ENTER_ADDRESS= "Bitte geben Sie Ihre Adresse ein!";

function getDistance(pointA, pointB, locate){
    //pointA and pointB are Zip codes. Google is flexible, you can do city, street address, or even popular locations.
    var directions = "from: " + pointA + " to: " + pointB;
	
    // Initialize the GDirections class, load the directions
    gd = new GDirections();
    gd.load(directions, {travelMode:"G_TRAVEL_MODE_WALKING"});    
    GEvent.addListener(gd, "load", onGDirectionsLoad);
    GEvent.addListener(gd, "error", onGDirectionsError);
}

function onGDirectionsLoad() {
    distance = gd.getDistance().meters;
    var obj = document.getElementById("mindest2");	
    finded = false;    
    for( x in min_distance) {
        if (min_distance[x][0] ==0 && min_distance[x][1] == 0) {
            finded = true;            
            obj.innerHTML = min_distance[x][2].toFixed(2) + ' €';
            mindest = min_distance[x][2];
            UNDER_20EUR = 'Der Mindestbestellwert von '+ min_distance[x][2] +' EUR ist noch nicht erreicht!';
            accept_order = 1;
			setMindestPrice(mindest);
            return;
        }
        
        if (min_distance[x][0] <= distance && distance <= min_distance[x][1]){
            finded = true;            
            obj.innerHTML = min_distance[x][2].toFixed(2) + ' €';
            mindest = min_distance[x][2];
            UNDER_20EUR = 'Der Mindestbestellwert von '+ min_distance[x][2] +' EUR ist noch nicht erreicht!';
            accept_order = 1;
			setMindestPrice(mindest);
            return;
        }
    }
    if (finded == false) {        
        accept_order = 0;        
        obj = document.getElementById("mindest1");
		obj.style.display = 'none';
		obj = document.getElementById("mindest2");
		obj.style.display = 'none';
		obj = document.getElementById("strasse");
        obj.value = '';
        obj = document.getElementById("nr");
        obj.value = '';
		obj = document.getElementById("ort");
        obj.value = '';
		obj = document.getElementById("plz");
        obj.value = '';
		alert(FAR_ORDER);
		obj.focus();
    }
}

function onGDirectionsError() {
    obj = document.getElementById("strasse");
 
}

function setDistance() {    
    var obj = document.getElementById("plz");
    _plz = trim(obj.value);
    obj = document.getElementById("ort");
    _ort = trim(obj.value);
    obj = document.getElementById("strasse");
    _strasse = trim(obj.value);
    _strasse = _strasse.replace(/str/, ' Str');
    obj = document.getElementById("nr");
    _nr = trim(obj.value);
    
    if ((_nr.length > 0) && (_strasse.length > 0) && (_ort.length > 0) && (_plz.length > 0)) {
        pointb = _strasse + ' ' + _nr + ',' + _plz + ' ' + _ort;
        getDistance(address_home , pointb , locate);
    }
}

function setMindestPrice(price) {
	var obj = document.getElementById("mindest2");
	obj.innerHTML = priceGerman(price);
	obj.style.display = '';
	obj = document.getElementById("mindest1");		
	obj.innerHTML = 'Mindestbestellwert';
}

function priceGerman(number) {
	var str = "";
	str += number.toFixed(2);
	if(str.indexOf(".") >= 0) {
		return str.replace(".",",") + " €";
	}
	return "";
}

function hideMindest() {
	var obj ;
	document.getElementById("mindest1");		
	obj.style.display = 'none';
	obj = document.getElementById("mindest2");
	obj.style.display = 'none';
}

function showInputAddress() {
	var obj ;
	obj = document.getElementById("mindest1");		
	obj.innerHTML	 = ENTER_ADDRESS;
	obj.style.display = '';
	obj = document.getElementById("mindest2");
	obj.style.display = 'none';
}

