var options = false;
var cart = false;

function displayPopup(){
	$('body').append('<div id="popup" class="jqmWindow"><img class="close" style="float:right;" src="/images/close.gif"/><div class="content"></div><div id="splash"><img src="/images/loading.gif?"'+Math.floor(Math.random()*11)+' width="32" height="32"/></div></div>');
	$('#popup').jqm({onShow: showEvent, modal: true}).jqmShow();
	$('div.jqmOverlay').click(function(){ClosePopup();});
	$('.close').click(function(){ClosePopup();});
}
function showEvent(hash){
		hash.w.show();
		SetSplashStatus(true);
		$.get(options['url'],options['params'],function (data){
				loadEvent(data);
			}
	);
}
function loadEvent(data){
	if (options['boxClass']) $('#popup').addClass(options['boxClass']);
	$('#popup > div.content').html(data);
	if (options['CancelAction']){
			$(options['CancelAction']).click(function(){
				ClosePopup();
				return false;
			});
			$(options['CancelAction']).show();
	}		
	if (options['DoAction']) {
		$(options['DoAction']).click(submitEvent);
	}
	
	if (options['loadCallback']) {
		options['loadCallback']();
	}
	SetSplashStatus(false);
}

function submitEvent(data){
	  SetSplashStatus(true);
	  var fields = $('#popup > div.content').find(":input");
	  var inputs = getAjaxFormFields(fields);
	  $.get(options['url'],inputs,function (data){
	  		loadEvent(data);
	  		if (options['submitCallback'] != null){
	  			options['submitCallback']();
				}
	  	});
		return false;
}
function ClosePopup(){
	$('#popup').jqmHide();
	$('#popup').remove();
}
function getAjaxFormFields(fields){
	var inputs = new Object();
	inputs['ajax']=1;
	for (i=0;i<fields.length;i++){
	  	if (fields[i].name != '') {
			if ((fields[i].type == 'radio' || fields[i].type == 'checkbox')){
				if (fields[i].checked) inputs[fields[i].name]= fields[i].value;
			}
			else
				inputs[fields[i].name]= fields[i].value;
		}
	}
	return inputs;
}

function SetSplashStatus(visible){
	if (visible){
		$('#splash').show();
		$('#dialog > div.content').fadeOut("slow");
		
	}
	else{
		$('#splash').hide();
		$('#dialog > div.content').fadeIn("slow");
	}
}

$(document).ready(function() {
	 $('a.AddLink').click(function (){
			  var item = $(this).attr('href');
			  var rg = new RegExp("/cart/(.+)/");
			  var img = $(this).find('img')[0];
						
			  
				var id = rg.exec(item)[1];
				if (id != ''){
					$.get('/cart.php',{add: id,ajax:1},function(data){
						$('#MyCart').html("Your basket: &pound;"+data);
						img.src = '/images/added.png';
					});
				}
		return false;
	 });
	 
	 $('img.product_image').click(function(){
	 	  var url = $(this).attr('src');
	 		options = {boxClass: 'previewBox', url: '/preview.php?int_pid='+url.replace(/\/productimage\/\d+?\/(\d+?)\//gi,'$1'),params: {ajax:1}};
			displayPopup();
			return false;		
	 	});
	 	 $("div.scrollable").scrollable({
	 	 		// items are auto-scrolled in 2 secnod interval         
	 	 		interval: 3000,                  
	 	 		// when last item is encountered go back to first item         
	 	 		loop: false,                   
	 	 		// make animation a little slower than the default         
	 	 		speed: 600,                  
	 	 		// when seek starts make items little transparent         
	 	 		onBeforeSeek: function() {             this.getItems().fadeTo(300, 0.2);},                 
	 	 		 // when seek ends resume items to full transparency         
	 	 		onSeek: function() {             this.getItems().fadeTo(300, 1);         }     }
	 	 	);     
	 	 	cart = $.get('/aj.php',{ajax_cmd:1},function (data){
	 	 			var items = ","+data+",";
	 	 			var links = $('a.AddLink');
	 	 			var pid = 0;
	 	 			for (i=0;i<links.length;i++){
	 	 					pid = links[i].href.replace(/.+?\/cart\/(\d+?)\//gi,'$1');
	 	 					if (items.indexOf(','+pid+',') > -1) links[i].firstChild.src = "/images/added.png";
	 	 			}
	 	 		}
	 	 	);
	 	 	$('.adv_search').click(function(){
	 	 		if ($('.search_panel').is(':visible')) 
	 	 			$('.search_panel').hide();
	 	 		else
	 	 			$('.search_panel').show();
	 	 	});
});	 


