/*
Title:      BRP Javascript Framework
Updated:    25 February 2008
*/

var NavTopLoad = false;
var NavTopSelected = false;

window.CANAMSCHEDULER = window.CANAMSCHEDULER || {};

CANAMSCHEDULER = {
	// Main function call (page init)
	Init : function() {	
			//NavTopMenu
			//initlayers();
			if(NavTopLoad) navTopInit();
			if(NavTopSelected) {
				nTRollBt('navTop_'+NavTopSelected,"On");
				NavTopSelected = 'navTop_'+NavTopSelected;
				}			
		/*
		if(typeof MCMSConsoleInit == "function") {
			AdvancedHTMLToolsLoad = false;
			MCMSConsoleInit();
			}
		if(typeof initAdvancedHTMLTools == "function") {
			if (AdvancedHTMLToolsLoad)	initAdvancedHTMLTools();		
		}
		*/
		}
};

YAHOO.util.Event.addListener(window, "load", CANAMSCHEDULER.Init, CANAMSCHEDULER, true);

// ------[ Events ]------------------------------------------------- //	
CANAMSCHEDULER.Events = {
	id : null,
	table : null,
	tr : null,
							
	Init : function() {
		this.table = document.getElementById(this.id);
		var tbody = this.table.getElementsByTagName("tbody")[0];	
		var tr = tbody.getElementsByTagName("tr");
		
		for(x=0; x<tr.length; x++) {
			var event = tr[x+1].getElementsByTagName("a")[0];
			var eventBtn = tr[x+1].getElementsByTagName("a")[0];

			tr[x].eventID = eventBtn.id;
			tr[x].id = "event_" + x;
			tr[x].detail = tr[x+1];
			tr[x+1].bt = tr[x];
			tr[x].isVisible = false;
			tr[x].detail.getElementsByTagName("td")[0].innerHTML = "";
			tr[x].event = event.href;
			tr[x].onclick = CANAMSCHEDULER.Events.Show;
			
			tr[x].onmouseover = function() { 
				YAHOO.util.Dom.addClass(this, 'over');		
			}
			tr[x].onmouseout = function() { 
				YAHOO.util.Dom.removeClass(this, 'over');		
			}		
			YAHOO.util.Dom.addClass(tr[x], 'link');						

			if(typeof eventDisplayFromQS == "function") {			
				if ( tr[x].eventID == eventDisplayFromQS() ) {
					document.location = "#" + tr[x].id;
					var iFrame = document.createElement('iframe');
					var td = tr[x].detail.getElementsByTagName("td")[0];
					iFrame.scrolling = 'no';
					iFrame.setAttribute('src',tr[x].event);
					iFrame = td.appendChild(iFrame);			
					YAHOO.util.Dom.setStyle(iFrame, 'width', '100%');
					YAHOO.util.Dom.setStyle(iFrame, 'border', '0');
					YAHOO.util.Dom.setStyle(iFrame, 'height', '240px');	
					YAHOO.util.Dom.setStyle(iFrame, 'frameborder', '0');
					YAHOO.util.Dom.setStyle(tr[x].detail, 'display', '');	
					YAHOO.util.Dom.setStyle(td, 'padding', '0px');
					YAHOO.util.Dom.setStyle(td, 'margin', '0px');
					tr[x].isVisible = true;
					}
				}
			x++;		
		}
	},
	
	Close : function(obj) {
		YAHOO.util.Dom.setStyle(obj.parentNode, 'display', 'none');	
		obj.innerHTML = "";	
		obj.parentNode.bt.isVisible = false;
	},
	
	Show : function() {
		if(this.isVisible) {			
			YAHOO.util.Dom.setStyle(this.detail, 'display', 'none');	
			this.detail.getElementsByTagName("td")[0].innerHTML = "";			
			this.isVisible = false;
		} else {		
			document.location = "#" + this.id;
			var iFrame = document.createElement('iframe');
			var td = this.detail.getElementsByTagName("td")[0];
			iFrame.scrolling = 'no';
			iFrame.setAttribute('src',this.event);
			iFrame = td.appendChild(iFrame);			
			YAHOO.util.Dom.setStyle(iFrame, 'width', '100%');
			YAHOO.util.Dom.setStyle(iFrame, 'border', '0');
			YAHOO.util.Dom.setStyle(iFrame, 'height', '240px');	
			YAHOO.util.Dom.setStyle(iFrame, 'frameborder', '0');
			YAHOO.util.Dom.setStyle(this.detail, 'display', '');	
			YAHOO.util.Dom.setStyle(td, 'padding', '0px');
			YAHOO.util.Dom.setStyle(td, 'margin', '0px');
			this.isVisible = true;
		}
	}
	
	
};

// ------[ Language Selection ]---------------------------------- //	
CANAMSCHEDULER.Language = {
	lang : null,
	
	Set : function(lang) {
		CANAMSCHEDULER.Cookie.Save('CanAmSchedulerLanguage', lang, true);
		this.lang = lang;
	},
	
 	Get : function() {	
	 	this.lang = CANAMSCHEDULER.Cookie.Load("CanAmSchedulerLanguage");
		if(this.lang) { 				
			return this.lang;
		} else {			
			return null;		
		}  	 	 	 				 		 	  
 	},
	
	Check : function(path) {
		this.Get();
		
		if((CANAMSCHEDULER.QueryUrl.Get('reset') != 'true') && (this.lang != null))
			document.location = path.replace("{lang}", this.lang);	
	}
};


// ------[ Cookie Manager ]---------------------------------- //	
CANAMSCHEDULER.Cookie = {

	Load: function (id) {
		var search = id + "=";  
		var cookie = null;
		if (document.cookie.length > 0) { 					// if there are any cookies      
			offset = document.cookie.indexOf(search);       
			if (offset != -1) { 							// if cookie exists          
				offset += search.length; 					// set index of beginning of value         
				end = document.cookie.indexOf(";", offset);	// set index of end of cookie value         
				if (end == -1) end = document.cookie.length;
				cookie = unescape(document.cookie.substring(offset, end));   
				}    
			}	
		return cookie;	
	},

	Save: function (id, data, session) {
		if(session) {
			var now = new Date();
			var expires = now.getTime() + 365 * 24 * 60 * 60 * 1000;
			var expires = new Date(expires);
			session = "; expires=" + expires.toGMTString();
		} else session = "";

		document.cookie = id + "=" + escape(data) + session + "; path=/";
	}			


};


// ------[ QueryUrl ]---------------------------------- //
CANAMSCHEDULER.QueryUrl = {
	
	Search : function(q) {
		if(q.length > 1) this.q = q.substring(1, q.length);
		else this.q = null;
		this.keyValuePairs = new Array();
		
		if(q) {
			for(var i=0; i < this.q.split("&").length; i++) {
				this.keyValuePairs[i] = this.q.split("&")[i];
				}
			}
		
		this.getKeyValuePairs = function() { return this.keyValuePairs; }
		this.getValue = function(s) {
			for(var j=0; j < this.keyValuePairs.length; j++) {
				if(this.keyValuePairs[j].split("=")[0] == s) return this.keyValuePairs[j].split("=")[1];
				}
			return;
			}
		
		this.getParameters = function() {
			var a = new Array(this.getLength());
			for(var j=0; j < this.keyValuePairs.length; j++) {
				a[j] = this.keyValuePairs[j].split("=")[0];
				}
			return a;
			}
		
		this.getLength = function() { return this.keyValuePairs.length; }		
		},
	
	Get : function(key) {
		var page = new this.Search(window.location.search);
		return unescape(page.getValue(key));		
		}
};

// ------[ Generic Popup Window ]------------------------------------------------- //
function popWin(url,w,h,scroll,tools,name,center,baseUrl) {
	var str = "height=" + h + ",innerHeight=" + h;
	str += ",width=" + w + ",innerWidth=" + w;
	if(baseUrl) url = webSiteCMSUrl + url;
	if(!center) var center = false;
	if(!scroll) scroll = 0;
	if(!tools) tools = 0;
	if(!name) name = "pop";

	if((window.screen) && (center)) {
		var ah = screen.availHeight - 30;
		var aw = screen.availWidth - 10;

		var xc = (aw - w) / 2;
		var yc = (ah - h) / 2;

		str += ",left=" + xc + ",screenX=" + xc;
		str += ",top=" + yc + ",screenY=" + yc;
		}

	pop = window.open(url,name,'toolbar=' + tools + ',location=0,directories=0,status=0,menubar=0,scrollbars=' + scroll + ',resizable=1,' + str).focus();
}
