function toggleSwitch() {
	if ($(".primarySideContent").css("display") == 'block') {
		$('.primarySideContent').hide();
		$('.footer').hide();
		$('#Content').css({width: '99%'});
		$('.SideContent').css({width: '1%'});
		$('.menuhide input').css({background: 'transparent url(../images/menushow.gif) no-repeat scroll 0 0'});
	} else {
		$('.primarySideContent').show();
		$('.footer').show();
		$('#Content').css({width: '80%'});
		$('.SideContent').css({width: '20%'});
		$('.menuhide input').css({background: 'transparent url(../images/menuhide.gif) no-repeat scroll 0 0'});
	}
}

function setTitle(text) {
	$('.pagetitle').html(text);
	
}

/*
* Usage:
	var config = {
		timeout: 2000,
		onTimeout: function() {
			alert('ase');	
		}
	};
	setMessage('Search box is required', config);
*/
function setMessage(text, config) {

	if (config != undefined) {
		var timeout = (config.timeout) ? config.timeout : 6000 ;
		var on_timeout = (config.onTimeout) ? config.onTimeout : '' ;
		
		if (config.showBefore) {
			message_id = 'temp_message';
			sharp_message_id = '#temp_message';
			$("<div class='message' id='"+ message_id +"' style='display:none'></div>").insertBefore(config.showBefore);			
		} else {
			sharp_message_id = '.message';	
		}
		
		if (config.showAfter) {
			message_id = 'temp_message';
			sharp_message_id = '#temp_message';
			$("<div class='message' id='"+ message_id +"' style='display:none'></div>").insertBefore(config.showAfter);			
		} else {
			sharp_message_id = '.message';	
		}
		
		if (config.showIn) {
			message_id = 'temp_message';
			sharp_message_id = '#temp_message';
			$(config.showIn).append("<div class='message' id='"+ message_id +"' style='display:none'></div>");			
		} else {
			sharp_message_id = '.message';	
		}
		
		$(sharp_message_id).fadeIn(500);
		$(sharp_message_id).html(text);
		if (timeout != '') {
			if (on_timeout != '') {
				//setTimeout(function(){
				//	$(sharp_message_id).hide().html('');
				//	config.onTimeout();
				//}, timeout);				
				$(sharp_message_id).fadeOut(timeout, function(){
					$(sharp_message_id).html('');
					config.onTimeout();
				});				
			} else {
/*				setTimeout(function(){
					$(sharp_message_id).hide().html('');	
				}, timeout)*/
				$(sharp_message_id).fadeOut(timeout, function(){
					$(sharp_message_id).html('');
				});	
			}
		}
	} else {
		$('.message').fadeIn(500);
		$('.message').html(text);
		$.scrollTo('#Header', 800);
/*		setTimeout(function(){
			$('.message').hide().html('');	
		}, 5000);*/
		
		$('.message').fadeOut(6000, function(){
			$('.message').html(''); 
		});
		//$("a").bind('click', function(){ $('.message').hide().html('') });
		//$(window).bind("ajaxSend", function() {
			//$('.message').hide().html('');
		//});		
	}
}

/*
* Usage:
	var config = {
		link_1: {
			label: 'Yes',
			onClick: function() {
				alert('Yes');	
			}
		},
		link_2: {
			label: 'No',
			onClick: function() {
				alert('No');	
			}
		}
	};
	setMessageLink('Search box is required', config)
*/
function setMessageLink(text, config) {
	if (config != undefined) {
		//var total_link = (config.total_link) ? config.total_link : 1 ;
		if (config.link_1 && !config.link_2) {
			total_link = 1;	
		} else if (config.link_1 && config.link_2 && !config.link_3) {
			total_link = 2;	
		} else if (config.link_1 && config.link_2 && config.link_3) {
			total_link = 3;
		} else {
			total_link = 0;	
		}

		if (config.showAfter) {
			message_id = 'temp_message';
			sharp_message_id = '#temp_message';
			$("<div class='message' id='"+ message_id +"' style='display:none'></div>").insertAfter(config.showAfter);			
		} else if (config.showIn) {
			message_id = 'temp_message';
			sharp_message_id = '#temp_message';
			//$("<div class='message' id='"+ message_id +"' style='display:none'></div>").insertAfter(config.showAfter);
			$(config.showIn).html("<div class='message' id='"+ message_id +"' style='display:none'></div>");
		} else {
			sharp_message_id = '.message';	
		}
		//$('#addQuizForm').block({ message: null, css:{backgroundColor: '#FFF', cursor:'auto'}, fadeIn: 3000, overlayCSS: {backgroundColor:'#FFF',opacity:'0.6'} });
		//$("<div id='tanga' style='display:none'>Tanga K arin</div>").insertAfter("#addQuizForm");		

		//$('.message').show();
		switch (total_link) {
			case 1:
				var link_1_text = (config.link_1.label) ? config.link_1.label : '' ;
				var button = '<span style="cursor:pointer" class="link_1">'+ link_1_text +'</span>';
				var text = text + '<div class="messageLinks">'+ button +'</div>';
				$(sharp_message_id).html(text);
				$('.link_1').bind('click', function(){
					$(sharp_message_id).hide().html('');
					scrollToTop();
					config.link_1.onClick();
				});
				$(sharp_message_id).fadeIn(500);
			break;
			case 2:
				var link_1_text = (config.link_1.label) ? config.link_1.label : '' ;
				var link_2_text = (config.link_2.label) ? config.link_2.label : '' ;
				var button = '<span style="cursor:pointer" class="link_1">'+ link_1_text +'</span> | ';
				button += '<span style="cursor:pointer" class="link_2">'+ link_2_text +'</span>';
				var text = text + '<div class="messageLinks">'+ button +'</div>';
				$(sharp_message_id).html(text);
				$('.link_1').bind('click', function(){
					scrollToTop();
					config.link_1.onClick();
					$(sharp_message_id).hide().html('');
				});
				$('.link_2').bind('click', function(){
					scrollToTop();
					config.link_2.onClick();
					$(sharp_message_id).hide().html('');
				});
				$(sharp_message_id).fadeIn(500);
			break;
			case 3:
				var link_1_text = (config.link_1.label) ? config.link_1.label : '' ;
				var link_2_text = (config.link_2.label) ? config.link_2.label : '' ;
				var link_3_text = (config.link_3.label) ? config.link_3.label : '' ;
				var button = '<span style="cursor:pointer" class="link_1">'+ link_1_text +'</span> | ';
				button += '<span style="cursor:pointer" class="link_2">'+ link_2_text +'</span> | ';
				button += '<span style="cursor:pointer" class="link_3">'+ link_3_text +'</span>';
				var text = text + '<div class="messageLinks">'+ button +'</div>';
				$(sharp_message_id).html(text);
				$('.link_1').bind('click', function(){
					$(sharp_message_id).hide().html('');
					scrollToTop();
					config.link_1.onClick();
				});
				$('.link_2').bind('click', function(){
					$(sharp_message_id).hide().html('');
					config.link_2.onClick();
				});	
				$('.link_3').bind('click', function(){
					$(sharp_message_id).hide().html('');
					scrollToTop();
					config.link_3.onClick();
				});
				$(sharp_message_id).fadeIn(500);
			break;
			case 0:
				$(sharp_message_id).html(text);
				$(sharp_message_id).fadeIn(500);
				$(sharp_message_id).fadeOut(6000, function(){
					$(sharp_message_id).html(''); 
				});				
			break;
		}		
		$.scrollTo(sharp_message_id, 800);
	}
}

/*
* Usage:
*	var config = {
*		yes: function(){
*			alert('yes');
*		},
*		yes_label: 'YES',
*		no: function() {
*			alert('no');	
*		}
*		no_label: 'NO'
*	};
*	setMessageYesNo('Search box is required', config)
*/
function setMessageYesNo(text, config) {
	if (config != undefined) {
		var button = '<span style="cursor:pointer" class="link_yes">Yes</span>&nbsp;&nbsp;<span style="cursor:pointer" class="link_no">No</span>';
		var text = text + '&nbsp;&nbsp;<b>'+ button +'</b>';
		$('.message').show();
		$('.message').html(text);
		$('.link_yes').bind('click', function(){
			$('.message').hide().html('');
			config.yes();
		});
		$('.link_no').bind('click', function(){
			$('.message').hide().html('');
			config.no();
		});
	}
}

function blockElement(el) {
	$(el).block({ message: null, css:{backgroundColor: '#FFF', cursor:'auto'}, fadeIn: 3000, overlayCSS: {backgroundColor:'#999999',opacity:'0.6'} });
}

function showModule(mod) {
	$.blockUI({ message: '<div style=\"background-color:#FFFFFF; border:1px solid #CCCCCC; \"><div style=\"font:arial; padding:20px; color:#ccc; font-weight:bold; font-size:15px \">Loading...</div></div>', overlayCSS: { backgroundColor: '#CCCCCC' }, css: { border: '0px' } });	
	window.location.href = base_url + mod;
}

/*
* @desc this will convert date in which month is in abbreviated format
* Ex: 2009-03-11 to 2009-Mar-11
* usage convertDateToString(2009-03-11)
*/
function convertDateToString(date) {
	//var date_explode = date.split('-', date); 
	if (date != '0000-00-00') {
		var date_explode = date.split('-');
		var year = date_explode[0];
		var month = date_explode[1];
		var day = date_explode[2];
		var monthname = new Array("Jan","Feb","Mar","Apr","May", "Jun","Jul","Aug","Sep","Oct","Nov","Dec");
		return year + '-' + monthname[month-1] + '-' + day;
	} else {
		return '';	
	}
}

function getNotification() {
	setTimeout(function(){
		$.post(base_url + 'users/get_notification', {}, function(o){
			if (o.new_notice > 0) {
				$('#noticeContent').html(o.message);
				$('.notification').show('slow');				
				setTimeout(function(){
					$('.notification').fadeOut('slow', function(){
						$('#noticeContent').html('');
					});				
				}, 20000);
			}
		}, 'json');
		getNotification();
	}, 20000);
}

//$(document).ready( function(){
/*	if (current_controller == 'users' && current_method == 'account') {
		$('body').append('<div class="notification" style="display:none"><div class="noticeTitle">Notification</div><div id="noticeContent" class="noticeContent"></div></div>');	
	  	getNotification();
	} else if (current_controller != 'users') {
		$('body').append('<div class="notification" style="display:none"><div class="noticeTitle">Notification</div><div id="noticeContent" class="noticeContent"></div></div>');	
		getNotification();
	}*/
//});

// Search Box
var temp_search_value = '';
var temp_search_default_value;
function _searchFieldFocus(control) {
	if (!temp_search_default_value) {
		temp_search_default_value = $(control).val();
	}
	temp_search_value = $(control).val();
	if (temp_search_value == temp_search_default_value) {
		$(control).val('');
		$(control).css({color:'black', border:'1px solid #6694E3'});
	}
}
function _searchFieldBlur(control) {	
	if ($(control).val() == '') {
		$(control).css({color:'#CCCCCC', border:'1px solid #CCCCCC'});
		$(control).val(temp_search_default_value);
	}
}

function scrollToTop() {
	//window.scrollTo(0,0);
	$.scrollTo('#Header', 800);
}



function blockFullScreen() {
	// added to main.js as replacement to the lockScreen()  function in many pahes
	// TODO: migrate all pages to this function
	
	$.blockUI({ message: '<div style="background-color:#FFFFFF; border:1px solid #CCCCCC;"><div style="font:verdana; font-weight:bold; font-size:12px "></div><img src=\'/images/loader.gif\'></div>', overlayCSS: { backgroundColor: '#CCCCCC' }, css: { border: '0px' } });	
}

function navigate(sURL) {
	blockFullScreen();
	document.location = sURL; 
}

/*
*@desc change paginator style
*/
function _changePaginatorStyle(datatable_height, datatable_width, datatable_element, myColumnDefs, myDataSource) {
	var myConfigs = {
		initialRequest: 'startIndex=0&results=20',
		dynamicData: true,
		height:datatable_height,
		scrollable:true,
		width:datatable_width,
		paginator: new YAHOO.widget.Paginator({
			rowsPerPage: 20,
			nextPageLinkLabel: '',
			previousPageLinkLabel: '',
			firstPageLinkLabel: '',
			lastPageLinkLabel: ''
		})
	}	
	return myConfigs;
}

/*
var action = function(elCell, oRecord, oColumn, oData) { 
				var id = oRecord.getData("id");
				elCell.innerHTML = "hello"; 
				
			};																															 
		var columns = 	[{key:"id",label:"id",width:15,resizeable:true,sortable:true},
						 {key:"lastname",label:"Lastname",width:100,resizeable:true,sortable:true},
						 {key:"firstname",label:"Firstname",width:100,resizeable:true,sortable:true},
						 {key:"middlename",label:"Middlename",width:100,resizeable:true,sortable:true},
						// {key:"birthday",label:"Birthday",width:20,resizeable:true,sortable:true},
						 //{key:"barangay",label:"Barangay",width:50,resizeable:true,sortable:true},
						 //{key:"city",label:"City",width:20,resizeable:true,sortable:true},
						 {key:"region",label:"Region",width:40,resizeable:true,sortable:true},
						 {key:"province",label:"Province",width:80,resizeable:true,sortable:true},
						 {key:"voters_id",label:"Voters ID",width:50,resizeable:true,sortable:true},
						 //{key:"locale",label:"Locale",width:50,resizeable:true,sortable:true},
						 //{key:"district",label:"District",width:50,resizeable:true,sortable:true},
						 {key:"division",label:"Division",width:50,resizeable:true,sortable:true},
						 {key:"action",label:"Action",width:60,resizeable:true,sortable:true, formatter:action}];
		var fields =	['id', 'lastname', 'firstname', 'middlename', 'birthday', 'barangay', 'city', 'region', 'province', 'voters_id','locale','district', 'division'];
		var height = 	'500px'; //optional
		var width = 	'900px'; //optional
		var path = 'politics/_view_kktk_registered_datatable';
		
		var KKTKRegisteredDT = new createDataTable('canvass_kktk_registered',path, columns, fields, height, width);
		KKTKRegisteredDT.rowPerPage(15);
		KKTKRegisteredDT.pageLinkLabel('una','previous','next','last');
		KKTKRegisteredDT.show();		
*/



function createDataTable(id, path, columns, fields, height, width) {	
	this.id = id;
	this.columns = columns;
	this.fields = fields;
	this.height = (height == undefined) ? 500 : height ;
	this.width = (width == undefined) ? 500 : width ;	
	this.path = path;
}

var dt = createDataTable;

dt.prototype.show = function() {
		

	var datatable_element = this.id;
	var datatable_my_columns =	this.columns;	
	var datatable_fields = this.fields ;
	var datatable_sorted_by = '';
	var datatable_height = this.height;
	var datatable_width = this.width;
	var path = this.path;
	
	var row_per_page = (this.row_per_page == undefined) ? 20 : this.row_per_page ;
	

	//this is for Paginator Label
	var first_page_link_label = (this.first_page_link_label == undefined) ? '' : this.first_page_link_label ;
	var next_page_link_label = (this.next_page_link_label == undefined) ? '' : this.next_page_link_label ;
	var previous_page_link_label = (this.previous_page_link_label == undefined) ? '' : this.previous_page_link_label ;
	var last_page_link_label = (this.last_page_link_label == undefined) ? '' : this.last_page_link_label ;
	

	YAHOO.example.MultipleFeatures = function() {
		
		var myColumnDefs = datatable_my_columns;
		var myDataSource = new YAHOO.util.DataSource(base_url + path +'?' );	
	
		myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSON;

		myDataSource.responseSchema = {
			resultsList: 'records',
			fields: datatable_fields,
			 metaFields: { totalRecords: 'totalRecords' }
		};
		var myConfigs = {
			initialRequest:'startIndex=0&results=20',
			dynamicData: true,
			height:datatable_height,
			scrollable:true,
			width:datatable_width,
			paginator: new YAHOO.widget.Paginator({
				rowsPerPage: row_per_page,
				nextPageLinkLabel: next_page_link_label,
				previousPageLinkLabel: previous_page_link_label,
				firstPageLinkLabel: first_page_link_label,
				lastPageLinkLabel: last_page_link_label
			})
		}

		var myDataTable = new YAHOO.widget.DataTable(datatable_element, myColumnDefs, myDataSource, myConfigs);
		myDataTable.subscribe('rowClickEvent',myDataTable.onEventSelectRow);
		myDataTable.subscribe('cellDblclickEvent',myDataTable.onEventShowCellEditor);
		myDataTable.subscribe('editorBlurEvent', myDataTable.onEventSaveCellEditor);
		myDataTable.subscribe('rowMouseoverEvent', myDataTable.onEventHighlightRow); 
		myDataTable.subscribe('rowMouseoutEvent', myDataTable.onEventUnhighlightRow);

		 myDataTable.handleDataReturnPayload = function(oRequest, oResponse, oPayload) {   
			 oPayload.totalRecords = oResponse.meta.totalRecords;  
			 return oPayload;   
		 } 
		return {
			ds: myDataSource,
			dt: myDataTable
		};

	}();	
	
}



dt.prototype.rowPerPage = function(row_per_page) {
	this.row_per_page = row_per_page;
}

dt.prototype.pageLinkLabel = function(first,previous,next,last) {
	
	var first_page_link_label = (this.first_page_link_label == undefined) ? '' : this.first_page_link_label ;
	var next_page_link_label = (this.next_page_link_label == undefined) ? '' : this.next_page_link_label ;
	var previous_page_link_label = (this.previous_page_link_label == undefined) ? '' : this.previous_page_link_label ;
	var last_page_link_label = (this.last_page_link_label == undefined) ? '' : this.last_page_link_label ;
	
	
	this.first_page_link_label  = (first == undefined) ? '|<' : first;
	this.next_page_link_label 	= (next == undefined) ? '>' : next;
	this.previous_page_link_label = (previous == undefined) ? '<' : previous;
	this.last_page_link_label = (last == undefined) ? '>|' : last;
}

//dt.prototype.innerHtml = function(inner_html) {
	//this.inner_html = inner_html;
	
//}

function x () {

rowsPerPage = (rowsPerPage == undefined) ? 20 : rowsPerPage ;

// Override the built-in formatter 
YAHOO.widget.DataTable.formatLink1 = function(elCell, oRecord, oColumn, oData) { 
	var id = oRecord.getData("id");
	elCell.innerHTML = innerHtml;
	//"<div align=center><a href='javascript:editCategory(" + id + ")' >Edit</a> | <a href='javascript:removeCategory(" + id + ")' >Remove</a></div>"; 
};		

	//"canvassCategoryDT";
var datatable_element = id;

	var datatable_my_columns =	datatable_column
				
				
			
				
				var datatable_fields = fields ;
				//['id','category','description','total_records'];
				var datatable_sorted_by = sorted_by;
				var datatable_height = height;
				var datatable_width = width;

//$.post(base_url + 'approvals/_get_request_list', {}, function(data){
	YAHOO.example.MultipleFeatures = function() {
		var myColumnDefs = datatable_my_columns;

			var myDataSource = new YAHOO.util.DataSource(base_url + controller + '?' );	

	
		myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSON;

		myDataSource.responseSchema = {
			resultsList: 'records',
			fields: datatable_fields,
			 metaFields: { totalRecords: 'totalRecords' }
		};
		var myConfigs = {
			initialRequest: initialRequest,
			//'startIndex=0&results=20'
			dynamicData: true,
			height:datatable_height,
			scrollable:true,
			width:datatable_width,
			paginator: new YAHOO.widget.Paginator({
				rowsPerPage: rowsPerPage,
				nextPageLinkLabel: '',
				previousPageLinkLabel: '',
				firstPageLinkLabel: '',
				lastPageLinkLabel: ''
			})
		}

		var myDataTable = new YAHOO.widget.DataTable(datatable_element, myColumnDefs, myDataSource, myConfigs);
		myDataTable.subscribe('rowClickEvent',myDataTable.onEventSelectRow);
		myDataTable.subscribe('cellDblclickEvent',myDataTable.onEventShowCellEditor);
		myDataTable.subscribe('editorBlurEvent', myDataTable.onEventSaveCellEditor);
		myDataTable.subscribe('rowMouseoverEvent', myDataTable.onEventHighlightRow); 
		myDataTable.subscribe('rowMouseoutEvent', myDataTable.onEventUnhighlightRow);

		 myDataTable.handleDataReturnPayload = function(oRequest, oResponse, oPayload) {   
			 oPayload.totalRecords = oResponse.meta.totalRecords;  
			 return oPayload;   
		 } 
		return {
			ds: myDataSource,
			dt: myDataTable
		};

	}();
//}, 'json');	
}
