/**
 * @author al
 */
jQuery(document).ready(function($){
	//$("#button-press").hide();
	$("#button-press").click(function(){
		$('form[name="contact_form"]').ajaxSubmit(ajaxFormOptions1);
		return false;
	});
	var changeTitle = function(item){
		var title = $('#slider ul li img:eq(' + item + ')').attr("title");
		$('#slider h1').text(title);
		var link =  $('#slider ul li a:eq(' + item + ')').attr("href");
		//console.log(item + ' ' + link);
		//Cufon.replace('h1', { hover: true, fontFamily: 'Pakenham', fontWeight: 'bold' });
		Cufon.refresh();
		$("#slider h2 a").attr("href", link);
	}
	$('#dock2').Fisheye({
		maxWidth: 60,
		items: '.dock-container2 > a, .dock-container2 > div',
		itemsText: 'span',
		container: '.dock-container2',
		itemWidth: 40,
		proximity: 80,
		alignment : 'left',
		valign: 'bottom',
		halign : 'center'
	});
	$('#slider').easySlider({
			auto: true,
			continuous: true,
			controlsShow: false,
			pause: 6000,
			animBefore: changeTitle
			
	});
	$('#footer-wrapper ul li a#admin-link').click(function(){
		var dHTML = '<div id="dialog" title="Login to Admin?"><img class="logofloatleft" src="/images/easyeditorlogo.png" alt="Easy Editor" /><p>Enter your username/password:</p>';
		dHTML +='<form method="POST" action="#"><fieldset><label for="username">Username</label><input type="text" name="username" id="username" class="text ui-widget-content ui-corner-all" />';
		dHTML +='<label for="password">Password</label><input type="password" name="password" id="password" value="" class="text ui-widget-content ui-corner-all" /></fieldset><input type="hidden" name="actions" value="login"></form></div>';
		$('body').append(dHTML);
		$("#dialog").dialog({
			bgiframe: true,
			resizable: false,
			height:400,
			width:400,
			modal: true,
			overlay: {
				backgroundColor: '#000',
				opacity: 0.5
			},
			buttons: {
				Cancel: function() {$(this).dialog('close')},
				Submit: function() {
					var form = $("#dialog form");
					
					form.attr("action", window.location.href);
				
					form.submit();				
				}
			},
			close: function(event, ui) {$(this).remove();}
		});
		return false;
	});
	
	
	

		function validate(input){
			if(input.name =="email"){
				return isValidEmail(input.value) ? tickit(input) : untickit(input);
			}else{ 
				return input.value != "" ? tickit(input) :  untickit(input);
			}
		}
		
		$('input.compulsory').change(function(e){
			validate(this);
		});
		$('input.compulsory').blur(function(e){
			validate(this);
		});
		function isValidEmail(emailAddress) {
			var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
			return pattern.test(emailAddress);
		}
		function tickit(elem){
			$(elem).css('background', 'transparent url(/images/tick.png) no-repeat center right');
			return true;
		}
		function untickit(elem){
			$(elem).css('background', 'transparent url(/images/star.png) no-repeat center right');
			return false;
		}
		var ajaxFormOptions1 = { 
			target: 'form[name="contact_form"] fieldset',   
        	beforeSubmit: showRequest1, 
        	success: showResponse1, 
			url:"/lib/lasso/contact.lasso"
   		 }; 
	
	function showRequest1(formData, jqForm, options){
		var tcontinue = true;
		$('input.compulsory').each(function(i, elem){ //validate form fields whose data is cached by the browser
			if(!validate(elem)){
				$(elem).css('backgroundColor', '#ffaeb4');
				tcontinue = false;
			}
		});
		if(tcontinue ==  true){
			$('form[name="contact_form"] fieldset').append('<div id="mask"></div>')
			$('form[name="contact_form"] fieldset #mask').append('<div style="width: 32px;height: 32px;position: absolute;top: 50%;left: 50%;margin-left: -20px;margin-top: -20px; overflow:hidden;background-color:#000000; padding:6px;"><img src="/images/ajax-loader.gif" /></div>');
			$('form[name="contact_form"] fieldset #mask').fadeTo("slow", 0.5).show();
		}else{
			return false;
		}
	}
	function showResponse1(responseText, statusText){
		$('form[name="contact_form"] fieldset #mask').remove();
	}
	
	$('form[name="contact_form"]').ajaxForm(ajaxFormOptions1);
	var startup = $('input.compulsory');
	jQuery.each(startup, function(){ //validate form fields whose data is cached by the browser
		validate(this);
	});
	
	$("#products li a").click(function(){
		var ele = $(this).attr('href')+ '&json=1';
		$.getJSON(ele, function(data) {
			if (data.success == true) {
				$("#blank-receiver").html(data.content);
				Cufon.refresh();
			}else{
				$("#blank-receiver").html('<div class="error">An error occurred loading this content</div>');
			}
			
		});
		return false;
	});
	
	//////////////////////// Scripts routine ////////////////////////
	/*loads scripts of type text/plain and evaluates them and, once loaded, 
	 * it evaluates the contents. This means <script> tages can have 
	 * both a src and contents
	 */
	
	var scripts = $('script[type="text/plain"]'); ///scripts must be text/plain or jQuery/Jaxer will run them on the serverside
	
	/*
	jQuery.each(scripts, function(i, val){
		var script=this;
		 //if theres actual script rather than just a 
		var scriptText = script.text;
		
		if($(this).attr('src') && $(this).attr('src')!=''){ //this should never happen as Jaxer deals with src scripts
			console.dir(script)
			var parent = $(script).parent();
			jQuery.get($(this).attr('src'), {}, function(data, textStatus){
				console.log('loaded')
					//console.log(scriptText);
					(new Function(data))(eval(scriptText));
				eval(scriptText);
			}, "script");
						
			//jQuery.getScript($(this).attr('src'), function(data, textStatus){
				//console.dir(script.parent());
				//console.log(this)
				//console.log(i +" embedded: "+ scriptText)
				//eval(scriptText);
			//});
		}else{
			(new Function(scriptText))();
		}
	});
	/////////////////////////////////////////////////////////////////
	*/
	

});
