/*********************************
Javascript Document for Orange Academy
©2008 Ukoh William @ http://www.williamukoh.com. All rights reserved. Forget it, I will sue!!!
Scope: For adverts displayed on the website

************
META-DATA
************
@ date created :: 13 June 2008
@ last modified :: 13 June 2008
@ description :: Contains client-side logic for all pages :) requires jQuery javascript library
*/
//Displays the news headlines
$(document).ready(function(){

	var Core = com.williamukoh.Core;
	var _urls = ["/assets/lib/ui/effects.shake.js","/extensions/controllers/preload.php"];
	
	function init(){
	
		//Configure external links
		$("a.external,area.external").click(function(){
				window.open($(this).attr("href"));
				return false;
		 });
		 
		 //Fix IE6 PNG problem
		 $('div.logo img,div.buttons img').pngfix();
		 
		 //Navigation hovers
		function swapImage(e){
			var _filename = $(e.target).attr("src");
			var _new = _filename.replace("_on\.png",".png");
			$(e.target).attr("src",_new);
		}
	
		function restoreImage(e){
			var _filename = $(e.target).attr("src");
			var _new = _filename.replace("\.png","_on.png");
			$(e.target).attr("src",_new);
		}
	
		$("div.buttons img").hover(swapImage,restoreImage);
		 
		
		$("input#emailAddress").val("email address")
		.focus(function(e){
			if($(this).val() == "email address")
				$(this).val("");
		}).blur(function(e){
			if($(this).val() == "")
				$(this).val("email address");
		});
		
		 //Configure "what is club orange?" "becoming a member" "make general enquiries" links
		 $("a#orange_link").click(function(e){
			
			if(!$("#left-column-content").get().length)
					return true;
					
			showContent("about");
			e.preventDefault();
		 });
		 
		 $("a#member_link").click(function(e){
										   
		   if(!$("#left-column-content").get().length)
					return true;
					
		 	showContent("member");
			e.preventDefault();
		 });
		 
		 $("a#enquiries_link").click(function(e){
											  
		   	if(!$("#left-column-content").get().length)
				return true;
				
		 	showContent("enquiries");
			e.preventDefault();
		 });
		 
		 //Configure login button
		 $("#submit_btn, #submit_btn2").bind("click", function(e) {
			
			//If the effect has loaded
			var _isValid = true;
			var _uname = $.trim($("input#uname").val());
			var _pword = $.trim($("input#pword").val());
			
			if(_uname.length < 1)
				_isValid = false;
			
			if(_pword.length < 1)
				_isValid = false;
				
				
			if(!_isValid){
				
				alert("Please enter a valid Username and Password");
				
				if(init.effectsLoaded)
					$("div.login-holder").effect("shake",{}, 100);
				
				return false;
			}
			$("#login_form").submit();
			
			return true;
		 });
		 
		 // Array.shuffle( deep ) - Randomly interchange elements
		Array.prototype.shuffle = function( b ) {
		 var i = this.length, j, t;
		 while( i ) {
		  j = Math.floor( ( i-- ) * Math.random() );
		  t = b && typeof this[i].shuffle!=='undefined' ? this[i].shuffle() : this[i];
		  this[i] = this[j];
		  this[j] = t;
		 }
		 return this;
		};
		
		//Fix opera browser positioning bug
		if($.browser.opera)
			$("input#submit_btn").css("left","940px");
	}
		
	function showContent(pid){
	
		//$("div.left-column").addClass("left-column-bg");
		$("div#left-column-content").slideUp(function(){
			
			$(this).html("");
			
		}).slideDown(function(){
			
			loadContent(pid);
			$(this).html("<div style='height:330px; background:#000'><p>&nbsp;</p><p style='text-align:center;color:#fff'><img src='/assets/images/icons/preloader.gif' class='imgMiddle' /> &nbsp;Loading. Please wait...</p></div>");
			
		});
	}
	
	function loadContent(pid){
		
		//Page ID
		var _pid = pid;
		
		 $.get("/pages/view.page.php", { uid: _pid}, showResults);
	}
	
	
	function showResults(data){
		
		$("div#left-column-content").slideUp(function(){
		
				$("div.left-column").removeClass("left-column-bg");
				
				$(this).html($("#left-column-content",data).html());
				
				$(this).slideDown();
		})
	
	}

	function onEffectsLoaded(){
		init.effectsLoaded = true;
	}
	

	init();
	Core.loader.loadScript(_urls,onEffectsLoaded);
	
});