function getDeliveryFees(hour, amount, zone, result) {

	interval = 5;
	increment = 1.1;
	offset = 0;
	minimalFeesAmount = 0;

	hourV =  parseInt(hour.value);
	amountV = parseFloat(amount.value);
	zoneV = parseInt(zone.value);

	if (isNaN(hourV) || hourV <= 0) {
		result.innerHTML = 'Vous devez entrer une heure valide!';
		return;
	}
	if (isNaN(amountV) || amountV <= 0) {
		result.innerHTML = 'Vous devez entrer un montant valide!';
		return;
	}
	if (isNaN(zoneV) || zoneV <= 0) {
		result.innerHTML = 'Vous devez entrer une zone valide!';
		return;
	}

	hour.value = hourV;
	amount.value = amountV;
	zone.value = zoneV;

    if (hourV >= 11 && hourV <= 14) {
		fees = 0;
        if (zoneV > 0 && zoneV <= 7) {
            if (amountV < 32) fees = 2.5;
        } else if (zoneV > 7 && zoneV <= 12) {
            if (amountV < 48) fees = 2.5;
            if (amountV < 32) fees = 5;
        } else {
            result.innerHTML = 'Cette zone n\'est pas desservie à midi!';
			return;
        }
    } else if (hourV >= 18 && hourV <= 22) {
		fees = ((((zoneV * 10) - ((Math.floor(amountV / interval) + 1) * interval)) / interval) + 1) * increment + offset;
	} else { 
        result.innerHTML = 'L\'heure de livraison indiquée est en dehors des heures d\'ouverture!';
		return;
	}

	if (fees < minimalFeesAmount || fees == 0)
		fees = '0.00';
	else
		fees = (Math.round(fees*20)/20).toFixed(2);

	result.innerHTML = 'Frais de livraison: ' + fees;
	
}