﻿function CFCC_Schedule(){
	var me=this,m_rows=null,m_links=null;
	this.set_Links=function(pid){
		var oP = pid?$get(pid):null,links;
		if(oP){
			links=oP.getElementsByTagName('a');
			if(links && links.length>0){
				me.m_links = links;
			}
		}
	}
	this.get_Links=function(){
		return me.m_links;
	}
	this.set_Rows=function(pid){
		var oP = pid?$get(pid):null,rows;
		if(oP){
			rows=oP.getElementsByTagName('tr');
			if(rows && rows.length>0){
				me.m_rows=rows;
			}
		}
	}
	this.get_Rows=function(){
		return me.m_rows;
	}
	this.add_Events=function(){
		var links=me.get_Links();
		if(links){
			for(var l in links){
				if(links[l]&&links[l].id){
					if(links[l].id.indexOf('hlnk')>-1){
						$addHandler(links[l],'click',me.Hide);
					}else if(links[l].id.indexOf('lnk')>-1){
						$addHandler(links[l],'click',me.Toggle);
					}
				}
			}
		}
	}
	this.ToggleAll=function(){
		var rows = me.get_Rows();
		if(rows){
			for(var r in rows){
				if(rows[r]&&rows[r].id&&rows[r].id.indexOf('_text')>-1){
					Sys.UI.DomElement.addCssClass(rows[r],'hide-class-info');
				}else if(rows[r]&&rows[r].id){
					Sys.UI.DomElement.removeCssClass(rows[r],'active-class-row');
				}
			}
		}
	}
	this.Toggle=function(e){
		var target=e?e.target?e.target:null:null,id;
		if(target){
			me.ToggleAll();
			id=target.id.substring(target.id.indexOf('_')+1,target.id.length);
			Sys.UI.DomElement.addCssClass($get('tr_'+id),'active-class-row');
			Sys.UI.DomElement.removeCssClass($get('tr_text_'+id),'hide-class-info');
			if(e.preventDefault){e.preventDefault();}
			return false;
		}
	}
	this.Hide=function(e){
		var target=e?e.target?e.target:null:null,id;
		if(target){
			id=target.id.substring(target.id.indexOf('_')+1,target.id.length);
			Sys.UI.DomElement.removeCssClass($get('tr_'+id),'active-class-row');
			Sys.UI.DomElement.addCssClass($get('tr_text_'+id),'hide-class-info');
			if(e.preventDefault){e.preventDefault();}
			return false;
		}
	}
	this.Initialize=function(pid){
		if(pid){
			this.set_Links(pid);
			this.set_Rows(pid);
			this.add_Events();
			this.ToggleAll();
		}
	}
}

var oSchedule = new CFCC_Schedule();
function Schedule_PageLoad(e){
	oSchedule.Initialize('tblCFCCClassScheduleList');
}
$addHandler(window,'load',Schedule_PageLoad);
