/*
 * Thickbox 3.1 - One Box To Rule Them All.
 * By Cody Lindley (http://www.codylindley.com)
 * Copyright (c) 2007 cody lindley
 * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
*/

//placeValuesBeforeTB_=savedValues&&modal=false


var tb_pathToImage = "http://devel.rowerowy.szczecin.pl/design/mapa/images/loadingAnimation.gif";
var tb_pathToClose = "http://devel.rowerowy.szczecin.pl/design/mapa/images/close.gif";

$(document).ready(function(){
	tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
	imgLoader = new Image();// preload image
	imgLoader.src = tb_pathToImage;
});

function tb_init(domChunk){
	$(domChunk).click(function(){
	var t = this.title || this.name || null;
	var a = this.href || this.alt;
	var g = this.rel || false;
	tb_show(t,a,g);
	this.blur();
	return false;
	});
}

function tb_show(caption, url, divID) {//function called when the user clicks on a thickbox link
	var TB_iframe=true

	try {
		if (typeof document.body.style.maxHeight === "undefined") {//if IE 6
			$("body","html").css({height: "100%", width: "100%"});
			$("html").css("overflow","hidden");
			if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6
				//$("body").append("<iframe id='TB_HideSelect'></iframe><div id='"+divID+"' class='TB_window'></div>");
				$("body").append("<div id='"+divID+"' class='TB_window'></div>");
				$("#TB_overlay").click(tb_remove);
			}
		}else{//all others
			if(document.getElementById("TB_overlay") === null){
				$("body").append("<div id='"+divID+"' class='TB_window'></div>");
				$("#TB_overlay").click(tb_remove);
			}
		}

		if(caption===null){caption="";}
		$("body").append("<div id='TB_load'><img src='"+imgLoader.src+"' /></div>");//add loader to the page
		$('#TB_load').show();//show loader

		var baseURL;
	   if(url.indexOf("?")!==-1){ //ff there is a query string involved
			baseURL = url.substr(0, url.indexOf("?"));
	   }else{
	   		baseURL = url;
	   }

	   var urlString = /\.jpg$|\.jpeg$|\.png$|\.gif$|\.bmp$/;
	   var urlType = baseURL.toLowerCase().match(urlString);


		var queryString = url.replace(/^[^\?]+\??/,'');
		var params = tb_parseQuery( queryString );


		TB_WIDTH = (params['width']*1) + 30 || 350; //defaults to 630 if no paramaters were added to URL
		TB_HEIGHT = (params['height']*1) + 40 || 440; //defaults to 440 if no paramaters were added to URL
		ajaxContentW = TB_WIDTH - 30;
		ajaxContentH = TB_HEIGHT - 45;


		urlNoQuery = url.split('TB_');

		$("#"+divID).append("<div class='jqHandle jqDrag'><div class='TB_closeAjaxWindow'  class='jqDnR'><a href='#' onclick='tb_remove("+divID+")' class='TB_closeWindowButton"+divID+"' title='Close'><img src="+tb_pathToClose+" alt='zamknij okno' /></a></div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' class='TB_iframeContent' name='TB_iframeContent"+Math.round(Math.random()*1000)+"' onload='tb_showIframe("+divID+")' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;' ></iframe>");



		if(url.indexOf('TB_inline') != -1){
			$("#"+divID+"div.TB_ajaxContent").append($('#' + params['inlineId']).children());
			$("#"+divID).unload(function () {
				$('#' + params['inlineId']).append( $("#"+divID+"div.TB_ajaxContent").children() ); // move elements back when you're finished
			});
			tb_position(divID);
			$("#TB_load").remove();
			$("#"+divID).css({display:"block"});
		}else if(TB_iframe != -1){
			tb_position(divID);
			if($.browser.safari){//safari needs help because it will not fire iframe onload
				$("#TB_load").remove();
				$("#"+divID).css({display:"block"});
			}
		}else{
			$("#"+divID+"div.TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
				tb_position(divID);
				$("#TB_load").remove();
				tb_init("#"+divID+"div.TB_ajaxContent a.thickbox");
				$("#"+divID).css({display:"block"});
			});
		}

		if(!params['modal']){
			document.onkeyup = function(e){
				if (e == null) { // ie
					keycode = event.keyCode;
				} else { // mozilla
					keycode = e.which;
				}
				if(keycode == 27){ // close
					tb_remove();
				}
			};
		}

	} catch(e) {
		//nothing here
	}

	$().ready(function() {
  	$('#'+divID).jqDrag('.jqDrag').jqResize('.jqResize');
	});
}

//helper functions below
function tb_showIframe(divID){
	$("#TB_load").remove();
	$("#"+divID).css({display:"block"});
}


function tb_remove(divID) {
  	$("#"+divID+"div.TB_imageOff").unbind("click");
 	$("#"+divID+"div.TB_closeWindowButton").unbind("click");
 	$("#"+divID).fadeOut("fast",function(){
//  		$('#'+divID+' div.TB_HideSelect').trigger("unload").unbind().remove();
//  		$('#'+divID+' div.TB_overlay').trigger("unload").unbind().remove();
//  		$('#'+divID).trigger("unload").unbind().remove();
  		$('#'+divID+' div.TB_HideSelect').unbind().remove();
  		$('#'+divID+' div.TB_overlay').unbind().remove();
  		$('#'+divID).unbind().remove();

 //		alert('#'+divID+',"#'+divID+' div.TB_overlay","#'+divID+' div.TB_HideSelect"');
 		});
 	$("#TB_load").remove();
 	if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
 		$("body","html").css({height: "auto", width: "auto"});
 		$("html").css("overflow","");
 	}
 	document.onkeydown = "";
 	document.onkeyup = "";
 	return false;
 }

function tb_position(divID) {
$("#"+divID).css({marginLeft: '-' + parseInt((TB_WIDTH / 2),10) + 'px', width: TB_WIDTH + 'px'});
	if ( !(jQuery.browser.msie && jQuery.browser.version < 7)) { // take away IE6
		$("#"+divID).css({marginTop: '-' + parseInt((TB_HEIGHT / 2),10) + 'px'});
	}
}

function tb_parseQuery ( query ) {
   var Params = {};
   if ( ! query ) {return Params;}// return empty object
   var Pairs = query.split(/[;&]/);
   for ( var i = 0; i < Pairs.length; i++ ) {
      var KeyVal = Pairs[i].split('=');
      if ( ! KeyVal || KeyVal.length != 2 ) {continue;}
      var key = unescape( KeyVal[0] );
      var val = unescape( KeyVal[1] );
      val = val.replace(/\+/g, ' ');
      Params[key] = val;
   }
   return Params;
}