var sectorAreasObject = {
	city: '',
	zip: '',
	connectionObject: '',
	handleSuccess:function(o) {
		var areaResult = eval('(' + o.responseText + ')');
		var loadShops = false;
		if(areaResult.areas.length > 0) {
			if(areaResult.areas.length == 1) {
				loadShops = true;
			}
			for(var i = 0; i < areaResult.areas.length; i++) {
				if(this.zip == areaResult.areas[i].area.zipcode && this.city.toLowerCase() == areaResult.areas[i].area.name.toLowerCase()) {
					loadShops = true;
				}
				if (loadShops) {
					document.getElementById('modtagerpostnr').value = areaResult.areas[i].area.zipcode;
					document.getElementById('modtagerby').value = areaResult.areas[i].area.name;
					Shop.load_shops();
				}
			}
		}
	},

	handleFailure: function(o) {
		//alert("Failure: "+o.getAllResponseHeaders);
	},

	startRequest: function(zipcode,city,mode) {
		//if(YAHOO.util.Connect.isCallInProgress(this.connectionObject) !== true) {
			this.connectionObject = YAHOO.util.Connect.asyncRequest('POST', '/rpc/get_delivery_areas.php', sectorAreasObjectCallback, 'zipcode='+zipcode+'&city='+city+'&mode='+mode);
		//}
	},

	getSectorAreas: function(zip, city, mode) {
		if((mode == 'city' && city.length > 0) || (mode == 'zip' && zip.length > 3)) {
			this.city = city;
			this.zip = zip;
			this.startRequest(zip, city, mode);
		}
	}
};

var sectorAreasObjectCallback = {
		success:sectorAreasObject.handleSuccess,
		failure:sectorAreasObject.handleFailure,
		scope:sectorAreasObject
};
