
/* Extened Function */
jQuery.fn.extend({
	/**
	* Returns get parameters.
	* If the desired param does not exist, null will be returned
	*
	* To get the document params:
	* @example value = $(document).getUrlParam("paramName");
	*
	* To get the params of a html-attribut (uses src attribute)
	* @example value = $('#imgLink').getUrlParam("paramName");
	*/
	getUrlParam: function(strParamName){
		strParamName = escape(unescape(strParamName));

		var returnVal = new Array();
		var qString = null;

		if ($(this).attr("nodeName")=="#document") {
			if (window.location.search.search(strParamName) > -1 ){
				qString = window.location.search.substr(1,window.location.search.length).split("&");
			}

		} else if ($(this).attr("src") != undefined) {
			var strHref = $(this).attr("src")
			if ( strHref.indexOf("?") > -1 ) {
				var strQueryString = strHref.substr(strHref.indexOf("?")+1);
				qString = strQueryString.split("&");
			}

		} else if ($(this).attr("href") != undefined) {
			var strHref = $(this).attr("href");
			if ( strHref.indexOf("?") > -1 ) {
				var strQueryString = strHref.substr(strHref.indexOf("?")+1);
				qString = strQueryString.split("&");
			}

		} else {
			return null;
		}

		if (qString==null) return null;

		for (var i=0;i<qString.length; i++){
			if (escape(unescape(qString[i].split("=")[0])) == strParamName){
				returnVal.push(qString[i].split("=")[1]);
			}
		}

		if (returnVal.length==0) return null;
		else if (returnVal.length==1) return returnVal[0];
		else return returnVal;
	},

	/**
	* Create inline calendar
	*/
	loadCalendar: function(nyear, nmonth,m) {
		//alert(nyear);
		$(this).waitCalendar();
		var dt = new Date();
		if (nyear == undefined) nyear = dt.getFullYear();
		if (nmonth == undefined) nmonth = dt.getMonth()+1;
		if (m == undefined) m = 2;
		$.get('ajax/events.php', {year: nyear, month: nmonth,m:m },  function(data){
			var strData= data.split("|");
			var strCalendar = strData[0];

			var strDesc = strData[1];
			for(i = 2; i < strData.length; i++) strDesc += "|" + strData[i];

			setTimeout(function(){
				$('div#displayCalender').html( strCalendar );
				$('div#txtCalender').html( strDesc );

				$('div#displayCalender a#btPrev').click( function() {
					$(this).loadCalendar( $('a#btPrev').getUrlParam("year"), $('a#btPrev').getUrlParam("month"), $('a#btPrev').getUrlParam("m"))
					return false;
				});
				$('div#displayCalender a#btNext').click( function() {
					$(this).loadCalendar( $('a#btNext').getUrlParam("year"), $('a#btNext').getUrlParam("month"), $('a#btNext').getUrlParam("m"))
					return false;
				});

				$("a").each( function() {
					if ($(this).attr('href') == '#' || $(this).attr('href') == '') {
						$(this).attr({href:''});
						$(this).click( function() {
							return false;
						});
					}
					$(this).focus( function() {
						this.blur();
					});
				});

			}, 500);

		});
	},

	waitCalendar: function() {
		$('div#displayCalender').html( '<div class="loading"></div>' );
		$('div#txtCalender').html( '' );
	},
		/**
	* Create inline calendar
	*/
	loadCalendar1: function(nyear1, nmonth1,m) {

		$(this).waitCalendar1();
		var dt = new Date();
		if (nyear1 == undefined) nyear1 = dt.getFullYear();
		//alert(nyear1);
		if (nmonth1 == undefined) nmonth1 = dt.getMonth()+1;
		//alert(nmonth1);
		if (m == undefined) m = 2;
		$.get('ajax/events1.php', {year1: nyear1, month1: nmonth1,m:m },  function(data){
			var strData= data.split("|");
			var strCalendar = strData[0];

			var strDesc = strData[1];
			for(i = 2; i < strData.length; i++) strDesc += "|" + strData[i];

			setTimeout(function(){
				$('div#displayCalender1').html( strCalendar );
				$('div#txtCalender1').html( strDesc );

				$('div#displayCalender1 a#btPrev1').click( function() {

					$(this).loadCalendar1( $('a#btPrev1').getUrlParam("year1"), $('a#btPrev1').getUrlParam("month1"))
					return false;
				});
				$('div#displayCalender1 a#btNext1').click( function() {
					$(this).loadCalendar1( $('a#btNext1').getUrlParam("year1"), $('a#btNext1').getUrlParam("month1"))
					return false;
				});

				$("a").each( function() {
					if ($(this).attr('href') == '#' || $(this).attr('href') == '') {
						$(this).attr({href:''});
						$(this).click( function() {
							return false;
						});
					}
					$(this).focus( function() {
						this.blur();
					});
				});

			}, 500);

		});
	},

	waitCalendar1: function() {
		$('div#displayCalender1').html( '<div class="loading"></div>' );

		//$('div#txtCalender1').html( '' );
	},	loadCalendar3: function(nyear, nmonth) {

		$(this).waitCalendar3();
		var dt = new Date();
		if (nyear == undefined) nyear = dt.getFullYear();
		//alert(nyear);
		if (nmonth == undefined) nmonth = dt.getMonth()+1;
		//alert(nmonth);
		$.get('ajax/eventshome.php', {year: nyear, month: nmonth },  function(data){
			var strData= data.split("|");
			var strCalendar = strData[0];

			var strDesc = strData[1];
			for(i = 2; i < strData.length; i++) strDesc += "|" + strData[i];

			setTimeout(function(){
				$('div#displayCalender3').html( strCalendar );
				$('div#txtCalender').html( strDesc );

				$('div#displayCalender3 a#btPrev').click( function() {
					$(this).loadCalendar3( $('a#btPrev').getUrlParam("year"), $('a#btPrev').getUrlParam("month"))
					return false;
				});
				$('div#displayCalender3 a#btNext').click( function() {
					$(this).loadCalendar3( $('a#btNext').getUrlParam("year"), $('a#btNext').getUrlParam("month"))
					return false;
				});

				$("a").each( function() {
					if ($(this).attr('href') == '#' || $(this).attr('href') == '') {
						$(this).attr({href:''});
						$(this).click( function() {
							return false;
						});
					}
					$(this).focus( function() {
						this.blur();
					});
				});

			}, 500);

		});
	},

	waitCalendar3: function() {
		$('div#displayCalender3').html( '<div class="loading"></div>' );
		$('div#txtCalender').html( '' );
	},

	ResetPassword: function(username, email) {
		$.get('ajax/forget_passwd.php', {Username: username, Email: email }, function(data){
			var arrData= data.split("|");
			var strData = arrData[0];
			alert( arrData[1] );
			if (arrData[0] == 1) {
				$(this).slideToggle('div#formForgetPasswd', 'div#formLogin');
			}
		});
	},

	slideToggle: function( el1, el2 ) {
		var pos1 = parseInt($(el1).css('left') );
		var pos2 = parseInt($(el2).css('left') );

		if ( parseInt($(el2).css('left')) == 0 && $(el2).css('display')!='none') { // Close another item
			//alert('Close another: ' + el2);
			$(el2).animate({opacity: 'show'}, "fast", function(){
				$(el2).animate({ left: 250}, "normal", function() { $(this).slideToggle(el1, el2) } );
			});
		} else if ( parseInt($(el1).css('left')) == 0 && $(el1).css('display')!='none') { // Close current item
			//alert('Close current: ' + el1);
			$(el1).animate({opacity: 'show'}, "fast", function(){
				$(el1).animate({ left: 250}, "normal" );
			});
		} else {
			//alert('Open: ' + el1);
			if ( $(el1).css('display')=='none' ) $(el1).css('display', 'block');

			$(el1).animate({opacity: 'show'}, "fast", function(){
				$(el1).animate({ left: 0}, "normal" );
			});
		}
	}

});

/* exten jquery function */
function clean_username (username) {
	username = username.toLowerCase();
	return (username || "").replace(/\s/g, "" );
}

function clean_whitespace( text ) { // remove all space
	return (text || "").replace(/\s/g, "" );
}

function validateField(field) {
	var error = false;

	// remove whitespace
	$(field).val( jQuery.trim( $(field).val() ) );

	// required fields
	if ($(field).attr("class").indexOf("required") != -1) {
		if (!$(field).val().length)
			error = true;
	}
	// numeric fields
	if ($(field).val().length && $(field).attr("class").indexOf("numeric") != -1) {
		if (!/^[0-9]*$/.test($(field).val()))
			error = true;
	}
	// emails
	if ($(field).val().length && $(field).attr("class").indexOf("email") != -1) {
		if (!/^[a-zA-Z0-9]{1}([\._a-zA-Z0-9-]+)(\.[_a-zA-Z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+){1,3}$/.test($(field).val()))
			error = true;
	}
	// url
	if ($(field).val().length && $(field).attr("class").indexOf("url") != -1) {
		if (!/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i.test($(field).val()))
			error = true;
	}

	if (error) {
		$(field).addClass("focus");
	} else {
		$(field).removeClass("focus");
	}

	return !error;
}


/* Handle
$('a').focus( function() {
	this.blur();
});

*/
$("a").each( function() {
	if ($(this).attr('href') == '#' || $(this).attr('href') == '') {
		$(this).attr({href:''});
		$(this).click( function() {
			return false;
		});
	}
	$(this).focus( function() {
		$(this).blur();
	});
});

/* */
/* */
$(document).ready(function() {

	// Load Inline Calendar
	if ( $('div#displayCalender').length > 0 ) $(this).loadCalendar('','',$("input#m").val());
	// LightbBox
	if ( $("div#Container div#Image a").length > 0 ) $("div#Container div#Image a").lightBox( );
	if ( $("div#Container div#ImageLarge a").length > 0 ) $("div#Container div#ImageLarge a").lightBox( );



});

