var hotel_view = {};

hotel_view.on_char_over = function(obj, text){
	var coordinates = DocumentDOM.GetCoordinates(obj);
	
	var layer = document.createElement("span");
	layer.id = obj.id + "layer";
	layer.className = "char_layer";
	obj.parentNode.appendChild(layer);
	layer.innerHTML = text;
	layer.style.marginLeft = "-" + ((layer.offsetWidth + obj.offsetWidth) / 2) + "px";
	layer.style.marginTop = "-" + (layer.offsetHeight + 4) + "px";
}

hotel_view.on_char_out = function(obj){
	document.getElementById(obj.id + "layer").parentNode.removeChild(document.getElementById(obj.id + "layer"));
}

hotel_view.image_enlarge = function(obj, src){
	
	if(typeof(hotel_view.image_enlarge_popup) == "undefined" || hotel_view.image_enlarge_popup){
		var preview = document.createElement("img");
		preview.style.position = "absolute";
		preview.src = src;
		preview.className = "hotel_preview_thumb";
		obj.parentNode.insertBefore(preview, obj.parentNode.firstChild);
		
		Event.RegisterEventHandler(preview, "onclick", hotel_view.image_enlarge_close);
	}
	hotel_view.image_enlarge_popup = false;
}

hotel_view.image_enlarge_close = function(e){
	obj = this;
	
	if(typeof(this.tagName) == "undefined"){
		obj = e.srcElement;
	}
	
	obj.parentNode.removeChild(obj);
	hotel_view.image_enlarge_popup = true;
}

hotel_view.hotel_content_cache = new Array();
hotel_view.last_shown = null;
hotel_view.get_hotel_content = function(obj, hotel_id){
	var content_id = "hotel_content_" + hotel_id;
	if(typeof(hotel_view.hotel_content_cache[hotel_id]) == "undefined"){
		var ajax = new ajax_request();
		ajax.async = false;
		ajax.call_back = "";
		ajax.file_path = 'templates/hotelview.php';
		ajax.class_name = 'hotelview_template';
		ajax.method_name = 'x_render';
		ajax.header = "xml";
		ajax.register_argument("hotel_id", hotel_id);
		xml_response = ajax.send();
		
		if(document.all){
			var xml_doc = new ActiveXObject('Microsoft.XMLDOM');
			xml_doc.loadXML(xml_response.responseText);
		}else{
			var xml_doc = xml_response.responseXML;
		}
		
		var html = xml_doc.getElementsByTagName("html")[0];
		hotel_view.hotel_content_cache[hotel_id] = html.firstChild.data;
		
		var content_node = document.createElement("div");
		content_node.id = content_id;
		obj.parentNode.appendChild(content_node);
	}
	
	if(hotel_view.last_shown != null){
		hotel_view.last_shown.innerHTML = "";
	}
	if(hotel_view.last_shown == null || hotel_view.last_shown.id != content_id){
		hotel_view.last_shown = document.getElementById(content_id);
		hotel_view.last_shown.innerHTML = hotel_view.hotel_content_cache[hotel_id];
	}
}
