/*
http://www.weberdesignlabs.com/blog/2007/09/flash-itunes-cover-flow-version-2/

14908569 Mode
14908570 Schmuck
14908571 Haus & Garten
14908572 Basteln
14908573 Schuhe & Accessoires
14908574 Beauty & Vitalität
14908575 Technik
14908576 Heimtextilien
14908577 Kochen & Genießen
16377209 Ricarda M.
*/


//Image Preloader Function
function addListener(element, type, expression, bubbling)
{ bubbling = bubbling || false;
  if(window.addEventListener)	{ // Standard
    element.addEventListener(type, expression, bubbling);
    return true;
  } else if(window.attachEvent) { // IE
    element.attachEvent('on' + type, expression);
    return true;
  } else return false;
}

var ImageLoader = function(url)
{ this.url = url;
  this.image = null;
  this.loadEvent = null;
};

ImageLoader.prototype = 
{ load:function(ii,n_recs){
    this.image = document.createElement('img');
    var url = this.url;
    var image = this.image;

    var loadEvent = this.loadEvent;
    addListener(this.image, 'load', function(e){
      if(loadEvent != null){
	    //console.log("loaded"+ii);
        loadEvent(url,image,ii,n_recs);
      }
    }, false);
    this.image.src = this.url;
  },
   getImage:function(){
   return this.image;
  }
};



function populate_zpf(a_product_ids,zone,symbolic,target_id,category,rec_attributes,target_attributes,target_header_txt,div_id,b_display_target)
{ 
   if (symbolic !== '_NR_')
   {  // special case.  Over ride of the header text passed from the configuration file
      target_header_txt = "Other customers also shopped";
      var n_recs        = 12; //Anzahl angezeigter Recos >> Max Anzahl: a_product_ids.length;
	  var lines         = [];
	  var astr_CarouselImages = [];
	  var image_table = ''; 	
	  loader = [];  	  
      ajax_cf = new ContentFlow('ContentFlow_gallery');
	  
	  // 0 product short Dubner
	  // 1 product id
      // 2 price
      // 3 "streichpreis"
      // 4 Brand
	  // 5 Last-On-Air
	  // 6 avg. customer rating
	  // 7 Review Amount
	  // 8 stock
	  

      if (b_display_target)
      {  rec_attributes.unshift(target_attributes);
         n_recs++;
      }
	        
      // Recommendations
      for (var ii=1; ii < n_recs; ii++)
      { if(rec_attributes[ii])
	     { var rec_prod_id       = b_display_target ? (ii == 0 ? target_id : a_product_ids[ii - 1]) : a_product_ids[ii];
  		   var image_description = rec_attributes[ii][0];

	   
		   // Switch special characters
		   image_description = image_description.replace(/_a_/g,  "&auml;");
		   image_description = image_description.replace(/_A_/g,  "&Auml;");		   
		   image_description = image_description.replace(/_o_/g,  "&ouml;");
		   image_description = image_description.replace(/_O_/g,  "&Ouml;");
		   image_description = image_description.replace(/_u_/g,  "&uuml;");
		   image_description = image_description.replace(/_U_/g,  "&Uuml;");
		   image_description = image_description.replace(/_ss_/gi, "&szlig;");
		   image_description = image_description.replace(/_egrave_/g, "&egrave;");
		   image_description = image_description.replace(/_Egrave_/g, "&Egrave;");
		   image_description = image_description.replace(/_eacute_/g, "&eacute");
		   image_description = image_description.replace(/_Eacute_/g, "&Eacute");
		  
 		   str_REDubner = image_description.replace(" ","%20");
		   str_REDubner = str_REDubner.slice(0,29);
		   str_RELinkDubner = str_REDubner.replace(/\'/g," ");
		   

           var selected_hrefurl   = "/deqic/qvcapp.aspx/app.detail/params.item."+rec_prod_id+".cm_scid.MTPK?cm_re=00_Topseller-_-01_PD-_-"+rec_prod_id+"%20"+str_RELinkDubner;
           var selected_href      = "javascript:cmCreateManualLinkClickTag('"+selected_hrefurl+"');window.location='"+selected_hrefurl+"'";


		   
		   //Replace price . with ,  
		   var price             = rec_attributes[ii][2];
           price = price.replace(".", ","); 
		   
		   //Check ob Preis Nachstellen hat
		   var aint_Price = price.split(",");
		   
		   
		   if (typeof(aint_Price[1]) != 'undefined')
		   { if(aint_Price[1].length == 1)
		       price = aint_Price[0]+","+aint_Price[1]+"0";
		   }
		   else
		   { if(price.length > 1)
		       price = aint_Price[0]+",00";
		   }
		   
           var n_stars           = rec_attributes[ii][6];
		   if(n_stars == 0)
		     n_stars = "00";
			 
		   var reviewamnt        = rec_attributes[ii][7];
  		   if(reviewamnt == 0)
		      reviewamnt = "0";
		  
           var category          = rec_attributes[ii][4];
		   var int_width         = 142;
		   var int_height        = 142;

		   
		   var image_url         = 'http://images-p.qvc.com/is/image/de/'+rec_prod_id.charAt(0)+'/'+rec_prod_id.charAt(4)+rec_prod_id.charAt(5)+'/'+rec_prod_id+'.001?wid='+int_width+'&hei='+int_height+'&defaultImage=/qvc/gif/de/deDummy.jpg&op_sharpen=1';
		   var alt_description   = image_description;
		   var prod_id_row       = '';
	

		   //Preload-Images
		   loader[ii] = new ImageLoader(image_url);  
		   loader[ii].loadEvent = function(url,image,ii,n_recs)
		   { //When last image is loaded then initialize carousel
			 if(ii == n_recs-1)
			 { //Initialize carousel
			   window.setTimeout("ContentFlowGlobal.JMInit()", 150);
		     }
		   }
           loader[ii].load(ii,rec_attributes.length);
		   
		   //Set Div for Carousel
		   str_CarouselDiv = '<div class="item"><img href="'+selected_href+'" class="content" src="'+image_url+'"/><div class="caption"><a href="'+selected_href+'"><span class="link_red_quo">&raquo;</span> <span class="link_text">'+alt_description+'<br>&euro; '+price+'</span> </a></div></div>';
		   document.getElementById("flowimg").innerHTML += str_CarouselDiv;  		   
		   }
	  }

	  //Set Reco inlcude invisible when no recs are found
	  if(!n_recs || n_recs < 1)
	  { document.getElementById("ContentFlow_gallery").innerHTML = "";
		document.getElementById("carousel_container").style.display='none';
	  }
   }
   else
   { document.getElementById("ContentFlow_gallery").innerHTML = "";
     document.getElementById("carousel_container").style.display='none';
   }
}

function meta_a_zp(a,b,c,d,e,f,g,h)
{ 
  populate_zpf(a,b,c,d,e,f,g,h,'itemcontainer',true);
}


