﻿
function sendGoogle(vPath) {
	try {
		var pageTracker = _gat._getTracker("UA-1972630-8");
		pageTracker._initData();
		pageTracker._trackPageview(vPath);
	} catch(err) { }
}

function wuuuuuuuuuuuuuuuuuu(wloc,wdth,hght){
	if(wdth==0)wdth=620;
	if(hght==0)hght=630;
	var paramki='menubar=no, toolbar=no, location=yes, width='+wdth+', height='+hght+', left=30, top=30, scrollbars=yes, status=yes, resizable=yes';
	namik = 'LP';
	nwin=window.open(wloc,namik,paramki);
	nwin.focus();
};

function IGgetURL( url ){
	if(typeof( url ) != "string") return;
	var urlA = url.split('|');
	var par = new Array();
	for ( var i=0, ile=urlA.length; i<ile; i+=2) {
		if ( urlA[i] && urlA[i+1] ) {
			par[urlA[i]] = urlA[i+1];
		}
	}
	var urlToOpen = par['url'];
	if ( par['prid'] ) {
		if ( urlToOpen.indexOf('?') > 0 ) {
			urlToOpen += '&prID='+par['prid'];
		} else {
			urlToOpen += '?prID='+par['prid'];
		}
	}
	//	google code
	if ( par['gID'] ) {
		sendGoogle('/baner/'+par['gID']+'/click');
	}
	if ( par['url'] && par['w'] && par['h'] ) {
		if ( screen.availWidth > par['w'] && screen.availHeight > par['h'] ) {
			wuuuuuuuuuuuuuuuuuu(urlToOpen,par['w'],par['h']);
		} else { 
			wuuuuuuuuuuuuuuuuuu(urlToOpen, screen.availWidth, screen.availHeight );
		}
		return;
	} else if ( par['url'] ) {
		window.location.href=urlToOpen;
		return;
	}
}


kolorowe.prototype = {
	ileWszystkichBanerow : function() {
		var ile = 0;
		for ( var j=0, ileKategorii = this.kategorie.length; j<ileKategorii; j++ ) {
			for (var i=0, ileTmp = this[this.kategorie[j]].length; i<ileTmp; i++) {
				if ( !this[this.kategorie[j]][i]['wykluczony'] ) {
					ile++;
				}
			}
		}
		return ile;
	},
	ileBanerow : function(kategoria) {
		if ( !kategoria || typeof kategoria != 'string' ) {
			return false;
		}
		var ile = 0;
		for (var i=0, ileTmp = this[kategoria].length; i<ileTmp; i++) {
			if ( !this[kategoria][i]['wykluczony'] ) {
				ile++;
			}
		}
		return ile;
	},
	pobierzBaner : function(kategoria, id) {
		if ( !kategoria || typeof kategoria != 'string' ) {
			return false;
		}
		var ktory = 0;
		for (var i=0, ileTmp = this[kategoria].length; i<ileTmp; i++) {
			if ( !this[kategoria][i]['wykluczony'] ) {
				if ( ktory == id ) {
					return this[kategoria][i];
				}
				ktory++;
			}
		}
		return false;
	},
	wykluczBaner : function(id,kategoria, ktore) {
		/*
		if ( !id || typeof id != 'string' || !ktore || typeof ktore != 'string'  ) {
			return false;
		}
		*/

		for ( var i =0; i<this[ktore].length; i++){
			if(this[ktore][i].kategoria == kategoria){
				this[ktore][i].wykluczony = true;
			}
		}

	},
	//	zwraca liste nie pustych kategorii malych banerkow, z wyjatkiem kategorii przekazanej jako parametr
	pobierzKategorie : function( kategoria, wykluczPozostale ) {
		//	jesli nie przekazano parametru, powinna zwrocic wszystkie nie puste kategorie
		//	@wykluczPozostale	- true/false - jesli true to nie zwraca kategorii pozostałe
		//echoN('typeof kategoria.... '+typeof kategoria+', kategoria.length = '+kategoria.length);
		if ( !kategoria || typeof kategoria != 'object' || kategoria.length == 0 ) {
			kategoria = 'asdf';
		}
		var w = new Array();
		var ileKategorii = this.kategorie.length;
		for ( var j=0; j<ileKategorii; j++ ) {
			if ( this.ileBanerow(this.kategorie[j]) > 0 ) {
				var rozna = true;
				for (var i=0, ile=kategoria.length; i<ile; i++) {
					//echoN(' if   ( '+kategoria[i]+'  ==   '+this.kategorie[j] +' ) ? ');
					if ( kategoria[i] == this.kategorie[j] ) {
						rozna = false;
						break;
					}
				}
				if ( rozna ) {
					//echoN(' *** rozna kategoria... '+this.kategorie[j]);
					if ( wykluczPozostale ) {
						if ( this.kategorie[j] != 'pozostale' ) {
							w.push( this.kategorie[j] );
						}
					} else { 
						w.push( this.kategorie[j] );
					}
				}
			}
		}
		return w;
	},

	// losowanie banerka wg wagi
	losujBaner : function (banners2, debug) {

		// przenosimy banerki do nowej tablicy usuwajac wykluczone
		var banners = new Array();
		for(i=0; i<banners2.length; i++) {
			var bann = new Array();
			for(val in banners2[i]) { bann[val] = banners2[i][val]; }
			
			// jezeli nie jest wykluczony
			if(!bann.wykluczony==true){ banners.push(bann);} 
		}
		if(banners.length<=0) { return false; }
		
		//pomocnicza tablica wag
		var weights = new Array();

		//pomocnicza funkcja
		function isInWeights(w){
			for (var i=0; i<weights.length; i++){
				if (w == weights[i].weight) return true;
			}
			return false;
		}
		var weights = new Array();
		for (var i=0; i<banners.length;i++){
				if (!isInWeights(banners[i].weight)) weights.push({weight:banners[i].weight, count:0});
		}
		for (var i=0; i<weights.length;i++){
			for (var j=0; j<banners.length;j++){ 
				if(!banners[i].wykluczony==true) {
					if (weights[i].weight == banners[j].weight) weights[i].count = weights[i].count + 1; 
				}
			}
		}
		var sum = 0;
		for (var i=0; i<weights.length;i++){
			sum += weights[i].weight*weights[i].count;
		}
		var consecSums = new Array();
		var tmpSum = 0;
		for (var i=0; i<weights.length;i++){
			tmpSum += weights[i].weight*weights[i].count/sum;
			consecSums.push(tmpSum);
		}
		var randomNum = Math.random();
		var pos = 0;
		for (var i=0; i<consecSums.length;i++){
			if (randomNum <= consecSums[i]) {
				pos = i;
				break;
			}
		}
		var resWeight = weights[pos].weight;
		var resCount = weights[pos].count;
		randomNum = Math.random()*resCount;
		var index = Math.ceil(randomNum);
		var tmpIndex = 0;
		for (var i=0; i<banners.length;i++){
			if (banners[i].weight == resWeight) tmpIndex += 1;
			if (tmpIndex == index) { return banners[i];  }
		}

	}
};

/* ustawienia */
var maxMalych = 3;
var div_duzy = '#kolorowe_d';
var div_male = '#kolorowe_m';
var div_czywieszze = "#czyWieszZeContent";

var banners_dir = '/retail/blue/files/swf/';
var czywieszze_dir = '/retail/blue/images/home/'; 

var config = '/retail/blue/files/config.xml?a=' + new Date().getTime();


function banery(banners) {
	var text = "";
	for(var i = 0; i<banners.length; i++)
	{
		text += '[['+i+']] \n ';
		text += banners[i].id + '\n';
		text += banners[i].kategoria + '\n';
		text += banners[i].wykluczony + '\n';
		text += '\n\n';
	}
	alert(text);
}

k = new kolorowe();

//var ileDuzych = k.duze.length;
var ileMalych = k.male.length;
var ileCzyWieszZe = k.czywieszze.length;

//	Losowanie duzego banerka, 
/*if ( ileDuzych > 0 ) {
	var duzyBanerek = k.losujBaner(k.duze, 0);
	var duzyBanerekID = duzyBanerek.id;
	var duzyBanerekKategoria = duzyBanerek.kategoria;
	k.wykluczBaner( duzyBanerekID , duzyBanerekKategoria,  'male');
	k.wykluczBaner( duzyBanerekID , duzyBanerekKategoria, 'czywieszze');
}*/
// Pokazanie duzych banerow
drawKolorowe('main');

// Losowanie 'Czy wiesz że..'
if( ileCzyWieszZe > 0 ) {
	var czywieszze = k.losujBaner(k.czywieszze, 0);
	var czywieszZeID = czywieszze.id;
	var czyWieszZeKategoria = czywieszze.kategoria;
	k.wykluczBaner(czywieszZeID, czyWieszZeKategoria, 'male')
}


// Losowanie malego banerka

if ( ileMalych > 0 ) {

	var male = new Array();	

	if ( ileMalych==3) {

		male = k.male;

	}else if(ileMalych>3) {

		for(i=0; i<maxMalych; i++){
			male[i] = k.losujBaner(k.male, 0);
			if(typeof male[i]=='object')
			{
				k.wykluczBaner(male[i].id , male[i].kategoria, 'male');
			}
		}

		
	}
}




// Ułożenie kategorii małych banerków w takiej kolejnosci jak w k.kategorie()
var male2 = new Array();
for (i=0; i<k.kategorie.length; i++) {
	for ( var j=0, ile=male.length; j<ile ; j++ ) {
		if(male[j].kategoria == k.kategorie[i]) {
			male2.push(male[j]);
		}
	}
}
male = male2;
//==============================================================================

function drawKolorowe ( which ) {
	var flash = new String();
	if ( which == 'main' ) {

	flash = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"  width="731" height="182" id="myFlashContent">\
			<param name="movie" value="/retail/blue/files/swf/BanerMachine.swf" /> \
			<param name="scale" value="noscale" />\
			<param name="salign" value="tl" />\
			<param name="flashvars" value="number=1&path='+config+'"/>\
			<!--[if !IE]>-->\
			<object type="application/x-shockwave-flash" data="/retail/blue/files/swf/BanerMachine.swf" width="731" height="182">\
			<param name="scale" value="noscale" />\
			<param name="salign" value="tl" />\
			<param name="flashvars" value="number=1&path='+config+'"/>\
			</object>\
			<!--<![endif]-->\
	</object>';
	return flash;
	
	}

	if ( which == 'main_bottom' ) {
		var prawe_promo='';
		for ( var i=0, ile=male.length; i<ile ; i++ ) {
			if(typeof male[i]=='object') {
			
		
			prawe_promo += '<div id="ban'+i+'"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="236" height="76" id="myFlashContentMaly'+i+'">\
			<param name="movie" value="/retail/blue/files/swf/BanerMachine.swf" /> \
			<param name="scale" value="noscale" />\
			<param name="salign" value="tl" />\
			<param name="flashvars" value="number='+male[i].lp+'&path='+config+'"/>\
				<embed src="/retail/blue/files/swf/BanerMachine.swf" \
					scale="noscale" \
					salign="tl" \
					flashvars="number='+male[i].lp+'&path='+config+'" \
					type="application/x-shockwave-flash" \
					height="76" \
					width="236">\
			</object></div>';

			}
		}
		$(div_male).html(prawe_promo);

	}
	
	
	if ( which == 'czywieszze' ) {
		if(czywieszze.title) var czywieszze_title = czywieszze.title; else var czywieszze_title = '';
		if(czywieszze.alt) var czywieszze_alt = czywieszze.alt; else var czywieszze_alt = '';
		var linkS = '<a href="'+czywieszze.href+'" title="'+czywieszze_title+'" onclick="sendGoogle(\'/czy_wiesz_ze/'+czywieszze.gID+'/click\');">';
		
		var czywieszzeH = '<p>'+linkS+'<img src="'+czywieszze_dir+czywieszze.img+'" alt="'+czywieszze_alt+'" align="right"/><span class="title"><b>'+czywieszze.boldText+'</b></span>'+czywieszze.text+'</a></p>';
		czywieszzeH += '<div class="clear"></div><p><a href="'+czywieszze.href+'" title="'+czywieszze_title+'" onclick="sendGoogle(\'/czy_wiesz_ze/'+czywieszze.gID+'/click\');" class="more">więcej »</a></p>';
		
		var vpath = '/czy_wiesz_ze/'+czywieszze.gID+'/view';
		sendGoogle(vpath);
		return czywieszzeH;
	}
}

$(function() {

	//$('.koloroweLink').click(function() { IGgetURL( $(this).attr('href') ); });
	$(div_duzy).html ( drawKolorowe('main') );
	$(div_czywieszze).html( drawKolorowe('czywieszze') );
	drawKolorowe('main_bottom');
	
});
