/** START: General Functions **/
function removeAllDropDownOptions(dropdown_obj_name){
	for(i=dropdown_obj_name.options.length-1; i >= 0; i--)
		dropdown_obj_name.remove(i);
}
	
function addNewDropDownOption(dropdown_obj_name, option_display_text, option_value){
	//alert(dropdown_obj_name.options.length);
	dropdown_obj_name.options[dropdown_obj_name.options.length] = new Option(option_display_text, option_value, dropdown_obj_name.options.length);
	/*
	var option_obj = document.createElement("OPTION");
	option_obj.text = option_display_text;
	option_obj.value = option_value;
	dropdown_obj_name.options.add(option_obj);
	*/
}
/** END: General Functions **/

/*************************************************************************/
/*********** Get Store Ordering Dates and Time for 1st available Date ****/
/*************************************************************************/
function getAvailableStoreDays(store_id, days_dropdown_field, times_dropdown_field, store_info_field, isGroupOrder)	{
	//send data to CF
	DWRUtil.useLoadingMessage();
	DWREngine._execute(_ajaxConfig._cfscriptLocation, null, 'ax_getAvailableStoreDays', store_id, days_dropdown_field, times_dropdown_field, store_info_field, isGroupOrder, getAvailableStoreDaysResult);
}
// call back function
function getAvailableStoreDaysResult (r) {
	days_dropdown_obj = document.getElementById(r.days_dropdown_field);
	times_dropdown_obj = document.getElementById(r.times_dropdown_field);
	store_info_field = document.getElementById(r.store_info_field);
	store_info_field.innerHTML = r.store_info_value;
	
	removeAllDropDownOptions(days_dropdown_obj);
	removeAllDropDownOptions(times_dropdown_obj);
	
	addNewDropDownOption(days_dropdown_obj, "-- Select --", 0);
	addNewDropDownOption(times_dropdown_obj, "-- Select --", 0);
	
	for(k=0; k < r.days_array.length; k++){
		addNewDropDownOption(days_dropdown_obj, r.days_array[k].display_text, r.days_array[k].value_text);
		if(k==0){
			for(t_ctr=0; t_ctr < r.days_array[k].times_array.length; t_ctr++){
				/*
				if(t_ctr == 0){
					addNewDropDownOption(times_dropdown_obj, "ASAP", "ASAP_" + r.days_array[k].times_array[t_ctr].value_text);
				}
				*/
				addNewDropDownOption(times_dropdown_obj, r.days_array[k].times_array[t_ctr].display_text, r.days_array[k].times_array[t_ctr].value_text);
			}
		}
	}
	
	if(r.days_array.length > 0){
		//days_dropdown_obj.selectedIndex = 1;
		//times_dropdown_obj.selectedIndex = 1;
		days_dropdown_obj.selectedIndex = r.selected_date_index;
		times_dropdown_obj.selectedIndex = r.selected_time_index;
		//alert(r.selected_time_index);
		if(r.selected_date_index > 1){
		var t = setTimeout("getTimesForStore(document.togoOrderForm.pickup_date)",500);
		}
	}else{
		if(r.store_id > 0){
			removeAllDropDownOptions(days_dropdown_obj);
			addNewDropDownOption(days_dropdown_obj, "No Dates Available", 0);
			
			removeAllDropDownOptions(times_dropdown_obj);
			addNewDropDownOption(times_dropdown_obj, "No Time Available", 0);
		}
	}
}

/*************************************************************************/
/****************** Get Ordering Times for Store & Date ******************/
/*************************************************************************/
function getAvailableTimesForStoreAndDay(store_id, the_date, times_dropdown_field, isGroupOrder)	{
	//send data to CF
	DWRUtil.useLoadingMessage();
	DWREngine._execute(_ajaxConfig._cfscriptLocation, null, 'ax_getAvailableTimesForStoreAndDay', store_id, the_date, times_dropdown_field, isGroupOrder, getAvailableTimesForStoreAndDayResult);
}
// call back function
function getAvailableTimesForStoreAndDayResult(r) {
	times_dropdown_obj = document.getElementById(r.times_dropdown_field);

	removeAllDropDownOptions(times_dropdown_obj);
	addNewDropDownOption(times_dropdown_obj, "-- Select --", 0);
	
	for(k=0; k < r.times_array.length; k++){
		addNewDropDownOption(times_dropdown_obj, r.times_array[k].display_text, r.times_array[k].value_text);
	}
	
	if(r.times_array.length > 0){
		//times_dropdown_obj.selectedIndex = 1;
		times_dropdown_obj.selectedIndex = r.selected_time_index;
	}else{
		if(r.store_id > 0 && r.the_date > 0){
			removeAllDropDownOptions(times_dropdown_obj);
			addNewDropDownOption(times_dropdown_obj, "No Time Available", 0);
		}
	}
}
