if ((top.ViewInit == "undefined") || (top.ViewInit != true))
{

	/**
	*
	* View EVENT MANAGER definition.
	*
	* Handles component updates
	*
	*/
	function ViewEventManager(){
		this.xmlWrapper = new XmlWrapper();
	}

	ViewEventManager.prototype.setIFrameContent = function (iframeID, content){
		var element = Component.getDocument().getElementById(iframeID);
		if (element != null) {
			element.contentWindow.document.body.innerHTML = content;
		}
	}

	ViewEventManager.prototype.setIFrameSource = function (iframeID, url){
		var element = Component.getDocument().getElementById(iframeID);
		if (element != null) {
			element.contentWindow.location = url;
//			element.contentWindow.location.reload();
		}
	}

	ViewEventManager.prototype.setContent = function (viewID, content){
		var element = Component.getDocument().getElementById(viewID);
		if (element != null) {
			element.innerHTML = content;
		}
	}

	ViewEventManager.prototype.setVisibility = function (viewID, state){
		var element = Component.getDocument().getElementById(viewID);
		var style2 = element.style;

		if (state) {
			style2.display="block";
		}
		else {
			style2.display="none";
		}
	}

	ViewEventManager.prototype.show = function (viewID, state){
		var element = Component.getDocument().getElementById(viewID);
		var style2 = element.style;

		if (state) {
			style2.visibility="visible";
		}
		else {
			style2.visibility="hidden";
		}
	}

	ViewEventManager.prototype.handle = function(publisher, eventName, eventId, payLoad) {
		payLoad = this.xmlWrapper.unWrapXml(payLoad);
		if(eventName == 'setVisibility') {
			this.setVisibility(eventId, payLoad);
		} 
		else if(eventName == 'setContent') {
			this.setContent(eventId, payLoad);
		}
		else if(eventName == 'show') {
			this.show(eventId, payLoad);
		}
		else if(eventName == 'setIFrameContent') {
			this.setIFrameContent(eventId, payLoad);
		}
		else if(eventName == 'setIFrameSource') {
			this.setIFrameSource(eventId, payLoad);
		}
	}

	top.viewEventManager = new ViewEventManager();
	top.eventService.subscribe("View", "show", "-", top.viewEventManager);
	top.eventService.subscribe("View", "setVisibility", "-", top.viewEventManager);
	top.eventService.subscribe("View", "setContent", "-", top.viewEventManager);
	top.eventService.subscribe("View", "setIFrameContent", "-", top.viewEventManager);
	top.eventService.subscribe("View", "setIFrameSource", "-", top.viewEventManager);

	//////////////////////////////////////

	top.ViewInit = true;
}
