/**
 * lh.js
 * @author Lewis Howles
 *
 * Default Niceties.
 */

var lh = {
	
	/*
	 * Set default text for inputs (title attribute)
	 */
	setInputTexts : function(){
	   $("input[type=text], textarea").each(
		   function(){
			   $(this).val($(this).attr('title'));
		   }
	   );
	},
	
	/*
	* Show / hide text from inputs
	*/
	inputText : function(){
	   $("input, textarea").focus(function(event){
		   if($(this).val() === $(this).attr('title'))
			   $(this).val("");
	   }).blur(function(event){
		   if($(this).val() === "")
			   $(this).val($(this).attr('title'));
	   });
	},
	
	/*
	* Set target blank on external links
	*/
	externalLinks : function(){
		$('a[rel="external"]').attr('target', '_blank');
		$('a[rel="external nofollow"]').attr('target', '_blank');
		$('a[rel="nofollow external"]').attr('target', '_blank');
		$('#twitter_update_list a').attr('target', '_blank')
	}
}

$(function() {
	lh.externalLinks();
	
	var $ticker = $('#ticker');
	
	$('li', $ticker).show();
	
	$('.remove', '#ticker').click(function(){
		$ticker.fadeOut();
	});
	
	$('ul', $ticker).ticker({
		cursorList: " ",
		rate: 50,
		delay: 4000
	}).trigger("play");
	
	$('#accordion').accordion();
	
	if ($('#faqs').length) {
		var $faqs = $('#faqs');
		
		$('.answer', $faqs).hide();
		
		$('h4', $faqs).toggle(function(){
			$(this).addClass('open').next('.answer').show();
		}, function(){
			$(this).removeClass('open').next('.answer').hide();
		});
	}
	
	if ($('#romancart').length) {
		var $price = $.getUrlVar('price');
		
		$('#romancart').attr('src','http://www.romancart.com/cart.asp?storeid=12353&itemname=Vulcan to the Sky Pledge&quantity=1&price='+$price);
	}
	
	if ($('#posters').length) {
		$('a.iframe').fancybox({
			'width' : '95%',
			'height' : '95%',
			'autoScale' : false,
			'transitionIn' : 'none',
			'transitionOut' : 'none',
			'type' : 'iframe'
		});
	}
	
	if ($('#partners').length) {
		var $filtered, $shuffled, $partners = $('#partners ul');
		$shuffled = $partners.shuffle();
		$filtered = $shuffled.children('li:lt(6)');
		$('li', $partners).remove('li');
		$($partners).append($filtered);
	}
});

$.extend({
  getUrlVars: function(){
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
      hash = hashes[i].split('=');
      vars.push(hash[0]);
      vars[hash[0]] = hash[1];
    }
    return vars;
  },
  getUrlVar: function(name){
    return $.getUrlVars()[name];
  }
});


$.fn.shuffle = function() {
  return this.each(function(){
	var items = $(this).children();
	return (items.length)
	  ? $(this).html($.shuffle(items))
	  : this;
  });
}

$.shuffle = function(arr) {
  for(
	var j, x, i = arr.length; i;
	j = parseInt(Math.random() * i),
	x = arr[--i], arr[i] = arr[j], arr[j] = x
  );
  return arr;
}