function JLF(){
	var dpdomain="";
	function init(domain){
		this.dpdomain=domain;
	}
	this.init=init;
	this.ready=ready;
	this.go_page=go_page;
	this.sort=sort;
	this.show_dialog=show_dialog;
	this.close_dialog=close_dialog;
	this.update_cart=update_cart;	
	this.remove_item=remove_item;
	this.remove_one=remove_one;
	this.add_one=add_one;
	this.hide_address=hide_address;
	this.send_form =send_form;
	this.pub_search = pub_search;	
}


$("#dpsearch").keypress(function(event) {
	if ( event.which == 13 )
	 {
		$("#dppage").val(1);
	 	dp_sumbit_search_form();
	}
   
});

function ready(){
	$("#jlf_modal_div").dialog({
		autoOpen: false,
		modal: true,
		resizable:false,
		height:45,
		width:960
		/*ie bug scrolls
		open: function(event, ui){$('body').css('overflow','hidden');$('.ui-widget-overlay').css('width','100%'); }, 
    	close: function(event, ui){$('body').css('overflow','auto');}*/ 
	});
	$("#jlf_modal_div").dialog('option', 'dialogClass', 'noTitleStuff');
	$("#jlf_modal_div" ).dialog('option', 'position', ['center',200] );
}

function go_page(page){
	$("#page_no").val(page);
	$("#jlf_browse_art").submit();
}

function sort(){
	$("#page_no").val(1);
	$("#jlf_browse_art").submit();
}

function show_dialog(src,center){
	
   var d = $("#jlf_modal_div"); 
   
   var html='<div id="jlf_iframe_loading"><div>Cargando, por favor espere ...</div><img src="'+this.dpdomain+'/img/loading.gif" /></div>';
   html=html+'<iframe id="jlf_modal_iframe_id" name="jlf_modal_iframe" width="0" height="0" marginWidth="0" marginHeight="0" frameBorder="0" scrolling="no" ></iframe>'
   d.html(html);
   d.dialog("open");
   $("#jlf_modal_iframe_id").attr("src",src);
   
   //actualitzem el tamany del dialog
   $('#jlf_modal_iframe_id').load(function() {
   		//ocultem el div amb missatge
   		$('#jlf_iframe_loading').css('display','none');
   		//mostrem el iframe
   		$("#jlf_modal_iframe_id").attr("width","100%");
   		$("#jlf_modal_iframe_id").attr("height","100%");
   		//cercam el div per obtenir el seu tamany
   		var b = $('#jlf_modal_iframe_id').contents().find('#jlf_container');
		var h =b.height();
		var wc = $('#jlf_modal_iframe_id').contents().find('#jlf_w_container');
		var w =wc.width();
		var d = $("#jlf_modal_div");
  		d.dialog('option','height',h);
  		if (w) d.dialog('option','width',w);
 		if (center) d.dialog('option', 'position', ['center','center']);
  		
  		$(".ui-widget-overlay").css('opacity','0.7');
	});   
   return false;
}

function close_dialog(){
	window.parent.$('#jlf_modal_div').dialog('close');
}

function update_cart(article_id){
   var domain=this.dpdomain;
   
   var ok=true;
   var feat_id=0;
   var feat_value='';
   
   var units = $('#jlf_amount_'+article_id).val();
   var measure = $('#jlf_measure_'+article_id).val();
   if (measure==0){
   		ok=false;
   		$('#jlf_measure_'+article_id).validationEngine('showPrompt', 'Debe seleccionar una longitud', 'load','topRight',true);
   } 
   if (typeof measure=='undefined'){
   		measure=0;
   }else{
   		feat_id=2;
   		feat_value=measure;
   }
      
   if (!isUnsignedInteger(units)){
   		ok=false;
   	 	$('#jlf_amount_'+article_id).validationEngine('showPrompt', 'Debe introducir una cantidad mayor que 0', 'load','topRight',true);   	
   }
   if (ok){
   		   $('#jlf_list_art').validationEngine('hide')
		   $.ajax({
			   type: "POST",
			   url: domain+"/cms/rpc.php",
			   dataType: 'json',
			   data: "dpcmd=UPDATE_CART&article_id="+article_id+"&units="+units+"&feat_id="+feat_id+"&feat_value="+feat_value,
			   beforeSend : function(){
			   			$('#jlf_cart_button_'+article_id).css('display','none');
			   			$('#jlf_loading_'+article_id).css('display','block');
			   		},
			   success: function(data){
			   	 
			   	  $('#jlf_loading_'+article_id).css('display','none');
			   	  $('#jlf_cart_button_'+article_id).fadeIn(2500);
				  	   	 	
			   	 
			   	  if (data.error!=""){
			   	 	//mostrem el error
			   	 	$("#jlf_art_feat_"+article_id).css('display','none');
			   	 	$("#jlf_error_"+article_id).css('display','block');
			   	 	$("#jlf_error_"+article_id).html(data.error);
			   	 
			   	 } else {
			   	 	 if (data.items!=0){
			   	 	 	$('#jlf_amount_'+article_id).val("");
			   	 	 	window.parent.$("#jlf_total_amount").html(data.items);
			   	 		window.parent.$('#jlf_modal_div').dialog('close');
			   	 		$("#jlf_total_amount_wrapper").hide().fadeIn(2500);
			   	 	 }
			   	 }   
			   	 
			  }
			});
	
	}
}


function isUnsignedInteger(s) {
  return (s.toString().search(/^[0-9]+$/) == 0);
}

function hide_address(){
	var b=$('#jlf_same_address').is(':checked'); 
	if (b){
		$('#frmShipping').validationEngine('hideAll');
		$('#jlf_shipping_addr').hide(1000);		
	}else{
		$('#jlf_shipping_addr').show(1000);
	}
	
}


function remove_item(id_order,id_line){
	 var domain=this.dpdomain;
	 
	 $.ajax({
	   type: "POST",
	   url: domain+"/cms/rpc.php",
	   dataType: 'json',
	   data: "dpcmd=REMOVE_CART_ITEM&id_order="+id_order+"&id_line="+id_line,
	   beforeSend : function(){
	   			 $('#jlf_del_pic_'+id_line).attr('src',domain+'/img/loading.gif');
	   		},
	   success: function(data){
	   	 
	   	if (data.error!=""){
	   	 	//mostrem el error
	   	 	$("#jlf_error").css('display','block');
	   	 	$("#jlf_error").html(data.error);
	   	 
	   	 } else {
 		   	 //ocultem la linea
 		   	 $('#jlf_art_line_'+id_line).hide(1000);
		 	 $('#jlf_art_sep_'+id_line).remove();
			 //actualitzem totals
    	 	 $("#jlf_total_amount").html(data.total_items);
    	 	 $("#jlf_cart_total_items").html(data.total_items);
			 $("#jlf_total_amount_wrapper").hide().fadeIn(2500);   
	   	 	 
	   	 } 
	   	 
	   	 
	  }
	});
}
	 
function remove_one(id_order,id_line){
	 var domain=this.dpdomain;
	 
	 $.ajax({
	   type: "POST",
	   url: domain+"/cms/rpc.php",
	   dataType: 'json',
	   data: "dpcmd=REMOVE_ONE_CART_ITEM&id_order="+id_order+"&id_line="+id_line,
	   beforeSend : function(){
	  			$("#jlf_error").css('display','none');
	   			$('#jlf_units_'+id_line).css('display','none');
	   			$('#jlf_loading'+id_line).css('display','block');
	   		    
	   		},
	   success: function(data){
	   	 
	   	if (data.error!=""){
	   	 	//mostrem el error
	   	 	$("#jlf_error").css('display','block');
	   	 	$("#jlf_error").html(data.error);
	   	 
	   	 } else {
	   	 	
	   	 	 $('#jlf_loading'+id_line).css('display','none');
 		   	 $('#jlf_units_'+id_line).css('display','table');
 		   	 $('#jlf_unit_'+id_line).html(data.units);
 		   	 if (data.units==0){
 		   	 	 //ocultem la linea
 		   	 	$('#jlf_art_line_'+id_line).hide(1000);
		 	 	$('#jlf_art_sep_'+id_line).remove();
 		   	 }
	   	 	 //actualitzem totals
	   	 	 $("#jlf_total_amount").html(data.total_items);
	   	 	 $("#jlf_cart_total_items").html(data.total_items);
			 $("#jlf_total_amount_wrapper").hide().fadeIn(2500);   
	   	 	 
	   	 } 
	   	 
	   	 
	  }
	});
}

function add_one(id_order,id_line){
	 var domain=this.dpdomain;
	 
	 $.ajax({
	   type: "POST",
	   url: domain+"/cms/rpc.php",
	   dataType: 'json',
	   data: "dpcmd=ADD_ONE_CART_ITEM&id_order="+id_order+"&id_line="+id_line,
	   beforeSend : function(){
	   			$('#jlf_units_'+id_line).css('display','none');
	   			$("#jlf_error").css('display','none');
	   			$('#jlf_loading'+id_line).css('display','block');	   		    
	   		},
	   success: function(data){
	   	 
	   	if (data.error!=""){
	   	 	//mostrem el error
	   	 	$("#jlf_error").css('display','block');
	   	 	$("#jlf_error").html(data.error);
	   	 	$('#jlf_loading'+id_line).css('display','none');
 		   	$('#jlf_units_'+id_line).css('display','table');
 		   	
	   	 } else {
	   	 	
	   	 	 $('#jlf_loading'+id_line).css('display','none');
 		   	 $('#jlf_units_'+id_line).css('display','table');
 		   	 $('#jlf_unit_'+id_line).html(data.units);
 		   	 //actualitzem totals
	   	 	 $("#jlf_total_amount").html(data.total_items);
	   	 	 $("#jlf_cart_total_items").html(data.total_items);
			 $("#jlf_total_amount_wrapper").hide().fadeIn(2500);
		     	   
	   	 	 
	   	 } 
	   	 
	   	 
	  }
	});
}		

function send_form(){
	var domain=this.dpdomain;
	$('#jlf_send_button').css('display','block');
	$('#jlf_loading').css('display','none');
	$("#frmContact").submit();
}

function pub_search(){
	if ($("#search").val()!=""){
		$("#jlf_search_form").submit();	
	}
}




