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;
}