function monToNum(mon) {
	switch (mon) {
		case "Jan":
			return "00"
		case "Feb":
			return "01"
		case "Mar":
			return "02"
		case "Apr":
			return "03"
		case "May":
			return "04"
		case "Jun":
			return "05"
		case "Jul":
			return "06"
		case "Aug":
			return "07"
		case "Sep":
			return "08"
		case "Oct":
			return "09"
		case "Nov":
			return "10"
		case "Dec":
			return "11"
	}
}

function dateCheck(item) {
	var msg_past="Sorry, that delivery date is in the past.\nYou must pick a date in the future for delivery"
	var msg_today="Please email orla@wildbunches.ie for same day delivery requests!"
	var msg_sunday="Orders for delivery on Sundays must be placed before midnight the Friday before."
	var msg_too_late="Orders for next day delivery must be placed before midnight."

	form=document.getElementById('form_'+item)

	// Does this date exist in this month? //
	switch (form.month_year[form.month_year.selectedIndex].text.substring(0,3)) {
		case "Feb":
			// BUG - Still need to account for non leap years!
			if (form.day[form.day.selectedIndex].text > 29) {
				alert("There are only 29 days in February this year!")
				return false
			}
			break
		case "Sep":
			if (form.day[form.day.selectedIndex].text > 30) {
				alert("30 days has September...")
				return false
			}
			break
		case "Apr":
			if (form.day[form.day.selectedIndex].text > 30) {
				alert("April has only 30 days!")
				return false
			}
			break
		case "Jun":
			if (form.day[form.day.selectedIndex].text > 30) {
				alert("There are only 30 days in June!")
				return false
			}
			break
		case "Nov":
			if (form.day[form.day.selectedIndex].text > 30) {
				alert("November only has 30 days!")
			return false
			}
			break
		default:
	}

	// Calculate timestamp of selected delivery date //
	delivery_ts = new Date(form.month_year[form.month_year.selectedIndex].text.substring(4), monToNum(form.month_year[form.month_year.selectedIndex].text.substring(0,3)), form.day[form.day.selectedIndex].text)

	// Get current timestamp (Is there a risk with the user having the incorrect date/time set on their PC?) // 
	current_ts = new Date

	// Catch dates in the past
	if (delivery_ts - current_ts < -86400000) {
		alert(msg_past)
		return false
	}

	// Is delivery_ts a Sunday? //
	if ( delivery_ts.toString().substr(0,3) == "Sun") {
		// Is delivery_ts - current_ts < 31 hours? //
		if ( delivery_ts - current_ts < 111600000 ) {
			// "Orders for delivery on Sundays must be placed before 5p.m. the Friday before" //
			alert(msg_sunday)
			return false
		}
		// Otherwise continue //
	}

	// Catch same day delivery attempts
	if (delivery_ts - current_ts < 0) {
		alert(msg_today)
		return false
	}

	// If delivery date is 7th June 2010 - month range = 0 - 11
	second = new Date(2010, 7, 2)
	//eighteenth = new Date(2010, 6, 19, 1)
	if ( delivery_ts.valueOf() == second.valueOf() ) {
		alert('WildBunches Flowers is not accepting any more orders for Bank Holiday Monday, 2nd August. You can order as normal for Tuesday 3rd August onwards. Thank you.')
		return false
	}

//	// Is delivery_ts - current_ts < 7 hours? //
//	if ( delivery_ts - current_ts < 25200000 ) {
//		// "Orders for next day delivery must be placed before 5p.m. the previos day" //
//		alert(msg_too_late)
//		return false
//	}

	// It all checks out!
	form.os2.value=form.day[form.day.selectedIndex].text+" "+form.month_year[form.month_year.selectedIndex].text
	return true	
}

function submitTasks(item) {
	if ( dateCheck(item) ) {
		hideBox(item)
		document.getElementById("form_"+item).submit()
	} else {
		return false
	}
}