﻿Array.prototype.getCitySet=function(zipstring,returnzipstring){
	var rzipstring = (arguments.length>1)?arguments[1]:"";
	var item = function(params,index){
		return {CityCode: params[0], CityName: params[1],CityNameEN: params[2],CityNameCN: params[3], SonCitySet: function(){		
			var oneset = rzipstring.split("&");
			if ( rzipstring.length==0 || oneset.length-1<index ) return [];
			var sonArray = new Array;
			sonArray.getCitySet(oneset[index]);
			return sonArray;
		}
	};};
	this.unZipModel( zipstring, item);
}
    var DeliveryDateRule=function(zipstring){
	var deliveryparams=zipstring.split("&");
	
	//this.ValidWeekDay=deliveryparams[0];
	var WeekEndDay=deliveryparams[1];
	this.GetTimeField=function(weekday)	{
		var timeField=new Array;
		if ( WeekEndDay.indexOf(weekday)>-1)
			timeField.getTimeField(deliveryparams[3]);
		else
			timeField.getTimeField(deliveryparams[2]);
		return timeField;
	};
}

Array.prototype.unZipModel=function( zipstring, iterator){
	var pairs = zipstring.split(";");
	for ( var i=0; i<pairs.length; i++)
	{
		var pair = pairs[i].split("|");
		this.push(iterator(pair,i));
	}
}
    


function DepartCityChanger()
{
	var departcode = document.getElementById('DEPART_CITY').value;
	var departEn,delevername;

	if(departcode != null && departcode != "") 
	{
		departEn = GetEnNameByCode(departcode);
		if (departEn!=null) delevername = GetDeleverNameByCode(departEn);
	}
	if( delevername == null || delevername=="" )
	{
		document.getElementById('DELEVER_CITY').value = "";
		document.getElementById('DELEVER_CITY_input').value = "";
		
		ShowErrDIV('DELEVER_CITY',FLIGHT_AJAX_NOSAMEDELIVERYCITY);
	}
	else
	{
		document.getElementById('DELEVER_CITY').value = GetDeleverCodeByName(delevername);
		document.getElementById('DELEVER_CITY_input').value = delevername;
		
		HiddenErrDIV('DELEVER_CITY');
	}
}
function GetEnNameByCode(citycode)
{
	var cityset =getCitySet();
	
	for ( var i=0; i<cityset.length;i++)
	{
		if( cityset[i].CityCode == citycode )	return cityset[i].CityNameEN;
	}
	
	return null;
}