﻿/*
 * Thickbox 2.0 - One Box To Rule Them All.
 * By Cody Lindley (http://www.codylindley.com)
 * Copyright (c) 2006 cody lindley
 * Licensed under the MIT License:
 *   http://www.opensource.org/licenses/mit-license.php
 * Thickbox is built on top of the very light weight jQuery library.
 */

tb = { imageArray: null, imageGroup: false, currentImage: 0, boxWidth: 440, boxHeight: 440, langcode: "SK", lang: { SK: { close: "Zavrieť", prev: "dozadu", next: "dopredu" }, PL: { close: "Zawrzeć", prev: "poprzedni", next: "następny" }, EN: { close: "Close", prev: "previous", next: "next" }, DE: { close: "Zumachen", prev: "vorige", next: "folgend" }, ES: { close: "Vaer", prev: "previo", next: "siguiente" }, FR: { close: "Fermer", prev: "précédant", next: "suivant" }, IT: { close: "Chiudere", prev: "precedente", next: " successive" }, PT: { close: "Chiudere", prev: "previo", next: "veniente" }, RU: { close: "закрыть", prev: "предшествующий", next: "последующий" }
}, init: function()
{ $("a.thickbox").click(tb.show); tb.langcode = languageCode;}, clickNumber: function()
{ tb.showImage(this.rel - 1); return false;}, show: function()
{ if (document.getElementById("TB_HideSelect") == null)
{ $("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>"); $("#TB_overlay").click(tb.remove);}
tb.imageGroup = this.rel || false; tb.overlaySize(); var urlString = /\.jpg|\.jpeg|\.png|\.gif/g; var urlType = this.href.toLowerCase().match(urlString); if(urlType)
{ htmlPaging = "<div id='TB_secondLine'><div id='prevnext'><a href='#' id='TB_prev' rel=''>" + tb.lang[tb.langcode]["prev"] + "</a><a href='#' id='TB_next' rel=''>" + tb.lang[tb.langcode]["next"] + "</a></div><div id='TB_pages'></div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='" + tb.lang[tb.langcode]["close"] + "'>" + tb.lang[tb.langcode]["close"] + "</a></div><div class='break'></div><h2 id='TB_caption'></h2> <p id='TB_desc'></p> <a href='' id='TB_ImageOff' title='" + tb.lang[tb.langcode]["close"] + "'></a>"; $("#TB_window").append(htmlPaging); tb.positionBox(); htmlPages = ""; if(tb.imageGroup)
{ tb.imageArray = $("a[@rel= "+ tb.imageGroup + "]"); currHref = this.href; tb.imageArray.each(function(i)
{ if(this.href == currHref) tb.currentImage = i; htmlPages += " <a href='#' rel='" + (i + 1) + "'>" + (i + 1) + "</a> ";}); if(tb.imageArray.length > 1)
{ $("#TB_pages").append(htmlPages); $("#TB_prev").click(tb.clickNumber); $("#TB_next").click(tb.clickNumber); $("#TB_pages a").click(tb.clickNumber);}
}
else tb.imageArray = $(this); $("#TB_closeWindowButton").click(tb.remove); tb.showImage(tb.currentImage); return false;}
else
{ var queryString = url.replace(/^[^\?]+\??/,''); var params = tb.parseQuery( queryString ); TB_WIDTH = (params['width']*1) + 30; TB_HEIGHT = (params['height']*1) + 40; ajaxContentW = TB_WIDTH - 30; ajaxContentH = TB_HEIGHT - 45; if(url.indexOf('TB_iframe') != -1){ urlNoQuery = url.substr(0,tb.strPos(url, "?")); $("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a></div></div><iframe src='"+urlNoQuery+"' id='TB_iframeContent' style='width:"+(ajaxContentW + 30)+"px;height:"+(ajaxContentH + 18)+"px;'></iframe>");}else{ $("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");}
$("#TB_closeWindowButton").click(tb.remove); if(url.indexOf('TB_inline') != -1){ $("#TB_ajaxContent").html($('#' + params['inlineId']).html()); TB_position(); $("#TB_load").remove(); $("#TB_window").css({display:"block"});}else if(url.indexOf('TB_iframe') != -1){ TB_position(); $("#TB_load").remove(); $("#TB_window").css({display:"block"});}else{ $("#TB_ajaxContent").load(url, function(){ TB_position(); $("#TB_load").remove(); $("#TB_window").css({display:"block"});});}
}
return false;}, showImage: function(i)
{ tb.setOpacity('TB_HideSelect',"0.6","60"); tb.setOpacity('TB_overlay',"0.6","60"); tb.setOpacity('TB_HideSelect',"0","0"); $(document).unkeyup(); tb.currentImage = i; if ( ioff = document.getElementById('TB_ImageOff'))
{ $(ioff).height( ioff.offsetHeight + "px");}
$("#TB_Image").remove(); imgPreloader = new Image(); imgPreloader.onload = tb.imgLoad; imgPreloader.src = tb.imageArray.get(i).href;}, imgLoad: function()
{ var i = tb.currentImage; var oThis = tb.imageArray.get(i); var oPrev = tb.imageArray.get(i - 1); var oNext = tb.imageArray.get(i + 1); this.onload = null; var pagesize = tb.getPageSize(); var x = pagesize[0] - 150; var y = pagesize[1] - 150; var imageWidth = imgPreloader.width; var imageHeight = imgPreloader.height; url = oThis.href; caption = oThis.firstChild.alt; desc = oThis.firstChild.title; $("#TB_pages a").removeClass("active").eq(i).addClass("active"); if(oPrev)
{ $("#TB_prev").removeClass("hidden").rel(i - 1 + 1); $(document).keyup( function(e){ if(e.keyCode == 37) tb.showImage(i - 1);});}
else $("#TB_prev").addClass("hidden"); if(oNext)
{ $("#TB_next").removeClass("hidden").rel(i + 1 + 1); $(document).keyup( function(e){ if(e.keyCode == 39) tb.showImage(i + 1);});}
else $("#TB_next").addClass("hidden"); if(caption) $("#TB_caption").removeClass("hidden").html(caption); else $("#TB_caption").addClass("hidden").html(caption); if(desc) $("#TB_desc").removeClass("hidden").html(desc); else $("#TB_desc").addClass("hidden").html(desc); tbw = document.getElementById("TB_window"); ioff = document.getElementById('TB_ImageOff'); tb.boxWidth = (tbw.offsetWidth - ioff.offsetWidth) + imageWidth + 2*15+10; tb.positionBox(); $("#TB_ImageOff").height("auto").append("<img id='TB_Image' src='" + url + "' width='" + imageWidth + "' height='" + imageHeight + "' alt='" + caption + "'/>").click(tb.remove); $("#TB_window").css({display:"block"}); tb.overlaySize();}, remove: function()
{ $("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove();}); $(document).unkeyup(); return false;}, positionBox: function()
{ var arrayPageScroll = tb.getPageScrollTop(); var pagesize = tb.getPageSize(); $("#TB_window").css({marginLeft: '-' + parseInt(tb.boxWidth / 2) + 'px', width: tb.boxWidth + 'px', top: (arrayPageScroll[1] + 40)+"px"});}, overlaySize: function()
{ if (window.innerHeight && window.scrollMaxY)
{ yScroll = window.innerHeight + window.scrollMaxY;}
else if (document.body.scrollHeight > document.body.offsetHeight)
{ yScroll = document.body.scrollHeight;}
else
{ yScroll = document.body.offsetHeight;}
$("#TB_overlay").css("height",yScroll + 10 + "px"); $("#TB_HideSelect").css("height",yScroll +"px");}, getPageScrollTop: function ()
{ var yScrolltop; if (self.pageYOffset)
{ yScrolltop = self.pageYOffset;}
else if (document.documentElement && document.documentElement.scrollTop)
{ yScrolltop = document.documentElement.scrollTop;}
else if (document.body)
{ yScrolltop = document.body.scrollTop;}
arrayPageScroll = new Array('',yScrolltop)
return arrayPageScroll;}, getPageSize: function()
{ var de = document.documentElement; var w = window.innerWidth || self.innerWidth || (de && de.clientWidth) || document.body.clientWidth; var h = window.innerHeight || self.innerHeight || (de && de.clientHeight) || document.body.clientHeight; arrayPageSize = new Array(w, h); return arrayPageSize;}, setOpacity: function(idelement,nvalue,nvalueIE){ if (document.getElementById(idelement)){ var oe = document.getElementById(idelement); oe.setAttribute("style", "opacity:"+nvalue+";")
if (oe.style.setAttribute)
oe.style.setAttribute("filter", "alpha(opacity="+nvalueIE+");")
}
}, strPos: function(str, ch)
{ for (var i = 0; i < str.length; i++) if (str.substring(i, i+1) == ch) return i; return -1;}, parseQuery: function(query)
{ var Params = new Object(); if (!query) return Params; 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;}
}; $(document).ready(function()
{ if( GetParameter(String(document.location.search), "tgaction")!="preview"){ langcode = languageCode; tb.init();}
} ); 