/*
   Skrypt jest darmowy, poki ten komentarz w nim pozostaje.
   Released under Creative Commons License
   http://creativecommons.org/licenses/by/2.0/

   Original author: Kornel Lesinski
   http://pornel.net/pups/

   Modified by: Grzegorz Gawlik / Web Designers 
   http://www.webdesigners.pl/
*/


var pornpups =
{
	/** uaktywnia wszystkie linki w podanym elemencie. z pewnoscia chcesz to wywolac (patrz koniec tego pliku) */
	init: function(element)
	{
		/** wymagany jest element i obsluga DOM */
		if (!element || !element.getElementsByTagName) {return false;}

		var as = element.getElementsByTagName('a');
		for(var i=0;i<as.length;i++)
		{
			/* dzieki ponizszej linijce upopupiane sa tylko linki do obrazkow. zakomentuj ja i bedzie dzialalo na wszystkie. mozesz tez zmienic warunek zeby dzialalo np. tylko na linki z okreslona klasa (tip: .className) */
			if ((as[i].href+'').match(/\.(jpe?g|png|gif)/i))
			{
				as[i].onclick = this.click;
			}
			if ((as[i].href+'').match(/galeria\/pokaz\/[^\/]+\/zdjecie\/.*/i))
			{
				as[i].onclick = this.clickGallery;
			}
		}

		return true;
	},

	/** tworzenie dokumentu, ktory jest w nowootwartym oknie. zmien HTML wg gustu */
	writedoc: function(win, href, title, alt, h)
	{
	
		title = title.replace(/ - kliknij aby powiększyć /gi,'');
		title = title.replace(/Kliknij aby powiększyć /gi,'');
	
		var doc = win.document;
		doc.open('text/html;charset=ISO-8859-2');
		doc.write(
	  
	  	  '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' +
	  	  '<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl">' +
	  	  '<head>' +
	  	  '<title>Memoriał Marka Gawłowskiego - ' +  title + '</title>' +
	  	  '<meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />' +
	  	  '<link rel="stylesheet" type="text/css" href="style/popup.css" />'+
	  	  '</head>' +
	  	  '<body>' +
	  	  '<p id="zamknij"><a href="javascript:window.close();">Zamknij okno</a></p>' +
	  	  '<div id="container">' +
	  	  '	<img src="'+href+'" alt="'+alt+'" title="'+title+'" />' +
	  	  '	<p>'+title+'</p>' +
	  	  '</div>' +
	  	  '</body>' +
	  	  '</html>'

	  	);
	  	doc.close();
	},

	/** funkcja ma za zadanie wydobyc wymiary z podanego ciagu (tytulu linku)
	    zwraca tablice zawierajaca ladnie sformatowany tytul oraz
	    wymiary pobrane z podanego ciagu w formacie dla window.open
	    zmien ta funkcje, jesli chcesz zapisywac wymiary w inny sposob
	*/
	title2size: function(str)
	{
		if (str)
		{
			/* wyrazenie regularne szuka czegos na wzor "(111x222)" */
			var out = str.match(/\(([0-9]+)x([0-9]+)\)/);
			
			/* po czym usuwa znaleziony fragment i dodane pare pixeli marginesu */
			if (out) return new Array(str.replace(/\(([0-9]+)x([0-9]+)\)/g,''),parseInt(out[1]),parseInt(out[2]));
		}
		
		/* w przypadku problemow - podaje wartosci domyslne (zmien na takie, jakie ci pasuja) */
		return new Array(str, 800, 800);
		
		
	},

	/** obsluga klikniecia */
	click: function()
	{
		/* jesli okno tej miniatury jest otwarte - zamknij */
		try {
			if (this.pp_win && this.pp_win.close && !this.pp_win.closed) {this.pp_win.close(); this.pp_win=false;}
		}
		/* explorer ma z tym dziwne problemy, ktore na szczescie mozna olac */
	  	catch(e){}

		try {
			/* znajdz obrazek, jego alt i title */
			
			var imgs = this.getElementsByTagName('img');
			
			if(imgs[0])
			  {
			
				var title = imgs[0].getAttribute('title') ? imgs[0].getAttribute('title') : this.getAttribute('title');
				var alt = imgs[0].getAttribute('alt');
			  }
			else
			  {
				var title = this.getAttribute('title');
			  }
			/* parametry okna, z wymiarami (tu wymiary sa powiekszane, aby bylo troche miejsca wokol obrazka) */
			var titleandsize = pornpups.title2size(title);
			var gpwidth = titleandsize[1] + 140;
			var gpheight = titleandsize[2] + 216;
			var winopts = "dependent=yes,toolbar=no,resizable=yes,width=" + gpwidth + ',height=' + gpheight;

			var win = window.open(this.href,'_blank',winopts);
			
		 	if (win && win.opener)
			{
				this.pp_win = win;
				pornpups.writedoc(win,this.href,titleandsize[0],alt,titleandsize[2]);
		    		return false;
		  	}
		}
	  	/* siatka bezpieczenstwa, jakby ktoras funkcja nawalila */
	  	catch(e){}

	  /* jesli nie udalo sie otworzyc okna - zwraca true, co otwiera obrazek w tym samym oknie */
	  return true;
	},
	clickGallery: function () {
	
		/* jesli okno tej miniatury jest otwarte - zamknij */
		try {
			if (this.pp_win && this.pp_win.close && !this.pp_win.closed) {this.pp_win.close(); this.pp_win=false;}
		}
		
		/* explorer ma z tym dziwne problemy, ktore na szczescie mozna olac */
	  	catch(e){}
		
		try {
			/* znajdz obrazek, jego alt i title */
			
			var imgs = this.getElementsByTagName('img');
			
			if(imgs[0])
			  {
			
				var title = imgs[0].getAttribute('title') ? imgs[0].getAttribute('title') : this.getAttribute('title');
				var alt = imgs[0].getAttribute('alt');
			  }
			else
			  {
				var title = this.getAttribute('title');
			  }
			/* parametry okna, z wymiarami (tu wymiary sa powiekszane, aby bylo troche miejsca wokol obrazka) */
			var titleandsize = pornpups.title2size(title);
			var gpwidth = titleandsize[1] + 140;
			var gpheight = titleandsize[2] + 216;
			var winopts = "dependent=yes,toolbar=no,resizable=yes,width=" + gpwidth + ',height=' + gpheight;

			/* do the boogie! */
			window.open(this.href,'_blank',winopts);
			return false;
		}
	  	/* siatka bezpieczenstwa, jakby ktoras funkcja nawalila */
	  	catch(e){}

	  /* jesli nie udalo sie otworzyc okna - zwraca true, co otwiera obrazek w tym samym oknie */
	  return true;
	
	},
	initNow: function()
	{
		this.init(document.body);
	},

	initLoad: function()
	{
		var oldOnload = window.onload;
		var that = this;
		window.onload = function()
		{
			if (oldOnload) try{oldOnload();}catch(e){/*explorer dziwne rzeczy plecie*/}
			that.initNow();
		}
	}
};

/** inicjalizacja **/
//pornpups.initLoad();
//pornpups.initNow();

var sfArray = new Array();
sfArray["newsletter_email"] = "Tu wpisz swój adres e-mail...";

var smartFields =
{	
	makeSmartFields: function () {
	
		var d = document;
		var a = sfArray;
		
		for (x in a)
		{
			var id = x;
			var value = a[x];
			var f = d.getElementById(id);
			
			if(!isNull(f))
			  {
				f.onblur = this.a_onblur;
				f.onfocus = this.a_onfocus;
			  }
		}
	},
	
	a_onblur: function() {
	
		if(this.value == "") { this.value = sfArray[this.id]; }
	},
	
	a_onfocus: function() {
		
		if(this.value == sfArray[this.id]) { this.value = ""; }
	},
	
	initNow: function() {

		this.makeSmartFields();
	}
}
function isNull(a) {
    return typeof a == 'object' && !a;
}
function isObject(a) {
    return (a && typeof a == 'object') || isFunction(a);
}


function initNow() {

	smartFields.initNow();
	pornpups.initNow();
}

/*
window.onload=function() {

	smartFields.initNow();
	pornpups.initNow();
}
*/
