/*
 * Author:		Adam Collison [adam.collison@soak.co.uk]
 * Agency:		Soak Digital Ltd.
 * Project: 	Soak Site - v2.0
 */
 
/* General Config */
/* *********************************************************************************/

var BASE_URL = '';

/* Window onload events */
/* *********************************************************************************/

$(window).load(function(){
	
	// documents and external links to open in new window
	$("a.newwindow, a[href$='pdf']").attr('target','_blank').attr('title','(This link opens in a new window)');
	
});

$(function(){
	
	$('input[type=text]').intelliLabel();
	$('.scroll-pane').jScrollHorizontalPane({scrollbarHeight:5, scrollbarMargin:0});
	$('#dialog').jqm();
	
	$('.work-detail .gallery img').live('click',function() {
														 
		if($(this).parents('p').hasClass('thumb'))
		{
			var newTitle = $(this).attr('alt');
			var newNum = $(this).parents('a').attr('name');
			var newSrc = $(this).attr('src');
		}
		else
		{
			var newTitle = $(this).parents('li').find('.thumb img').attr('alt');
			var newNum = $(this).parents('li').find('.thumb a').attr('name');
			var newSrc = $(this).parents('li').find('.thumb img').attr('src');
		}
														 
		var img = new Image();
		$('#dialog .heading h2').text(newTitle);
		$('#dialog .content').hide();
		$('#dialog .loader').show();
		$('#dialog').data('number',newNum);
		$('#dialog').jqmShow(); 
		$(img).load(function () {
			$('#dialog .loader').delay(300).slideUp('normal',function() {
				$('#dialog .content').html($(img));
				$('#dialog .content').slideDown();
			});
		}).attr('src',newSrc.replace(/thumb/,'large'));
		return false;
		
	});
	
	var newNum;
	
	$('#dialog .next-image').live('click',function() {
		var img = new Image();
												   
		if($('#dialog').data('number') < 4)
		{
			newNum = parseFloat($('#dialog').data('number')) + 1;
		}
		else
		{
			newNum = 1;
		}
		var oldSrc = $('.work-detail .gallery a[name="' + newNum + '"] img').attr('src');
		
		$('#dialog .content').slideUp('normal',function() {
			$('#dialog .loader').slideDown();
			$(img).load(function () {
					$('#dialog .content').html($(img));
					$('#dialog .loader').delay(300).slideUp('normal',function() {
					$('#dialog .heading h2').text($('.work-detail .gallery a[name="' + newNum + '"] img').attr('alt'));
					$('#dialog .content').slideDown();
					$('#dialog').data('number',newNum);
				});
			}).attr('src',oldSrc.replace(/thumb/,'large'));
		});
		return false;
														 
	});
	
	$('#dialog').jqmAddClose('#dialog .close'); 
	
	$('.contact .panel-b form').append('<div id="erroremail" class="error hide">Please enter your email address</div><div id="errormessage" class="error hide">Please enter a message</div><div id="errorintrestedin" class="error hide">Please let us know what your interested in</div><div id="success" class="hide">Your message has been sent, we will be in touch sortly</div>');

	// Post state data via the state.php object.

	$('.contact .panel-b form').live('submit',function(stateData) {

		$.post(

			'includes/helper.contact.php',

			{name:$('#frm_name').val(), email:$('#frm_email').val(), tel:$('#frm_tel').val(),intrestedin:$('#frm_intrestedin').val(),message:$('#frm_message').val()},

			function(data) {

				
				if(Boolean(data.success))

				{

					$('#success').show();		
					$('#frm_name').val('Your Name');
					$('#frm_email').val('Email');
					$('#frm_tel').val('Telephone');
					$('#frm_intrestedin').val('');
					$('#frm_message').val('');
					$('#frm_name,#frm_email,#frm_tel,#frm_intrestedin,#frm_message').live('click',function(){$('#success').fadeOut();});
				
				}

				else

				{

					if(Boolean(data.erroremail))
					{
						$('#erroremail').fadeIn();
						$('#frm_email').live('click',function(){$('#erroremail').fadeOut();});
					}
					if(Boolean(data.errorintrestedin))
					{
						$('#errorintrestedin').fadeIn();
						$('#frm_intrestedin').live('click',function(){$('#errorintrestedin').fadeOut();});
					}
					if(Boolean(data.errormessage))
					{
						$('#errormessage').fadeIn();
						$('#frm_message').live('click',function(){$('#errormessage').fadeOut();});
					}
					
				}

				

			}, "json"

		);

		return false;

	});

	$('.read-more').live('click',function() {
		var linkObj = $(this);
		if($("#"+$(this).attr('rel')).hasClass('visible'))
		{
			$("#"+$(this).attr('rel')).slideUp('normal',function() {
				linkObj.text("Read More +");		
				$(this).removeClass('visible');
			});	
		}
		else
		{
			$("#"+$(this).attr('rel')).slideDown('normal',function() {
				linkObj.text("Read Less -");	
				$(this).addClass('visible');
			})	
		}
		return false;
	});

	$('.news-detail h3 a').live('click',function() {
		var linkObj = $(this).parents('li').find('a.read-more');
		var rel = $(this).parents('li').find('a.read-more').attr('rel');
		if($("#"+rel).hasClass('visible'))
		{
			$("#"+rel).slideUp('normal',function() {
				linkObj.text("Read More +");		
				$(this).removeClass('visible');
			});	
		}
		else
		{
			$("#"+rel).slideDown('normal',function() {
				linkObj.text("Read Less -");	
				$(this).addClass('visible');
			})	
		}
		return false;
	});
	
	$('.call-back a').live('click', function(){
		$(this).parents('.call-back').removeClass('sent').removeClass('problem').addClass('form').children('form').removeClass();
		$(this).blur();
		return false;
	});
	
	$('#call-back').live('submit',function(stateData) {
		$.post(
			'includes/helper.call-back.php',
			{antispam:$('#frm_call_back_name1').val(), name:$('#frm_call_back_name').val(), company:$('#frm_call_back_company').val(), tel:$('#frm_call_back_number').val()},
			function(data) {
				if(Boolean(data.success))
				{
					$('.call-back').removeClass('form').addClass('sent');
					$('.call-back form').addClass('hide');
					$('#frm_call_back_name').val('').intelliLabel();
					$('#frm_call_back_company').val('').intelliLabel();
					$('#frm_call_back_number').val('').intelliLabel();
				}
				else
				{
					$('.call-back').removeClass('form').addClass('problem');
					$('.call-back form').addClass('hide');
				}
			},
			"json"
		);
		return false;
	});
});
	

/* Moves label into a text input and handles focus / blur events */
/* *********************************************************************************/

jQuery.fn.intelliLabel = function(e){
	var intelliDelay = new Array();
	this.each(function(){

		$(this).data('label', e);
		if (!e){
			$(this).data('label', $('label[for=' + $(this).attr('id') + ']').text());
		}
		
		$('#' + $(this).attr('id')).live('focus', function(){
			clearTimeout(intelliDelay[$(this).attr('id')]);
			if ($(this).val() == $(this).data('label')) $(this).val('').css('color','#333');
		}).live('blur', function(){
			if ($(this).val() == '') {
				var intelliObj = $(this);
				intelliDelay[$(this).attr('id')] = setTimeout(function() {
					intelliObj.val(intelliObj.data('label'));
					if (intelliObj.data('color')) {
						intelliObj.css('color', intelliObj.data('color'));
					}
				}, 400);
			}
		});
		
		if ($(this).val() == '' || $(this).val() == $(this).data('label')){
			$(this).val($(this).data('label'));
			if ($(this).data('color')){
				$(this).css('color', $(this).data('color'));
			}
		}
	});
}