var GB_ROOT_DIR = "./greybox/";
var GB_CURRENT = null;
GB_hide = function(cb) {
GB_CURRENT.hide(cb);
};
GreyBox = new AJS.Class( {
init : function(_2) {
  this.use_fx = AJS.fx; this.type = "page"; this.overlay_click_close = false; this.salt = 0; this.root_dir = GB_ROOT_DIR; this.callback_fns = []; this.reload_on_close = false; this.src_loader = this.root_dir + "loader_frame.html"; var _3 = window.location.hostname.indexOf("www"); var _4 = this.src_loader.indexOf("www"); if(_3 !=- 1 && _4 ==- 1) {
	 this.src_loader = this.src_loader.replace("://", "://www."); }
  if(_3 ==- 1 && _4 !=- 1) {
	 this.src_loader = this.src_loader.replace("://www.", "://"); }
  this.show_loading = true; AJS.update(this, _2); }
, addCallback : function(fn) {
  if(fn) {
	 this.callback_fns.push(fn); }
  }
, show : function(_6) {
  GB_CURRENT = this; this.url = _6; var _7 = [AJS.$bytc("object"), AJS.$bytc("select")]; AJS.map(AJS.flattenList(_7), function(_8) {
	 _8.style.visibility = "hidden"; }
  ); this.createElements(); return false; }
, hide : function(cb) {
  var me = this; AJS.callLater(function() {
	 var _b = me.callback_fns; if(_b != []) {
		AJS.map(_b, function(fn) {
		   fn(); }
		); }
	 me.onHide(); if(me.use_fx) {
		var _d = me.overlay; AJS.fx.fadeOut(me.overlay, {
		   onComplete : function() {
			  AJS.removeElement(_d); _d = null; }
		   , duration : 300}
		); AJS.removeElement(me.g_window); }
	 else {
		AJS.removeElement(me.g_window, me.overlay); }
	 me.removeFrame(); AJS.REV(window, "scroll", _GB_setOverlayDimension); AJS.REV(window, "resize", _GB_update); var _e = [AJS.$bytc("object"), AJS.$bytc("select")]; AJS.map(AJS.flattenList(_e), function(_f) {
		_f.style.visibility = "visible"; }
	 ); GB_CURRENT = null; if(me.reload_on_close) {
		window.location.reload(); }
	 if(AJS.isFunction(cb)) {
		cb(); }
	 }
  , 10); }
, update : function() {
  this.setOverlayDimension(); this.setFrameSize(); this.setWindowPosition(); }
, createElements : function() {
  this.initOverlay(); this.g_window = AJS.DIV( {
	 "id" : "GB_window"}
  ); AJS.hideElement(this.g_window); AJS.getBody().insertBefore(this.g_window, this.overlay.nextSibling); this.initFrame(); this.initHook(); this.update(); var me = this; if(this.use_fx) {
	 AJS.fx.fadeIn(this.overlay, {
		duration : 300, to : 0.7, onComplete : function() {
		   me.onShow(); AJS.showElement(me.g_window); me.startLoading(); }
		}
	 ); }
  else {
	 AJS.setOpacity(this.overlay, 0.7); AJS.showElement(this.g_window); this.onShow(); this.startLoading(); }
  AJS.AEV(window, "scroll", _GB_setOverlayDimension); AJS.AEV(window, "resize", _GB_update); }
, removeFrame : function() {
  try {
	 AJS.removeElement(this.iframe); }
  catch(e) {
	 }
  this.iframe = null; }
, startLoading : function() {
  this.iframe.src = this.src_loader + "?s=" + this.salt++; AJS.showElement(this.iframe); }
, setOverlayDimension : function() {
  var _11 = AJS.getWindowSize(); if(AJS.isMozilla() || AJS.isOpera()) {
	 AJS.setWidth(this.overlay, "100%"); }
  else {
	 AJS.setWidth(this.overlay, _11.w); }
  var _12 = Math.max(AJS.getScrollTop() + _11.h, AJS.getScrollTop() + this.height); if(_12 < AJS.getScrollTop()) {
	 AJS.setHeight(this.overlay, _12); }
  else {
	 AJS.setHeight(this.overlay, AJS.getScrollTop() + _11.h); }
  }
, initOverlay : function() {
  this.overlay = AJS.DIV( {
	 "id" : "GB_overlay"}
  ); if(this.overlay_click_close) {
	 AJS.AEV(this.overlay, "click", GB_hide); }
  AJS.setOpacity(this.overlay, 0); AJS.getBody().insertBefore(this.overlay, AJS.getBody().firstChild); }
, initFrame : function() {
  if(!this.iframe) {
	 var d = {
		"name" : "GB_frame", "class" : "GB_frame", "frameBorder" : 0}; if(AJS.isIe()) {
		d.src = "javascript:false;document.write(\"\");"; }
	 this.iframe = AJS.IFRAME(d); this.middle_cnt = AJS.DIV( {
		"class" : "content"}
	 , this.iframe); this.top_cnt = AJS.DIV(); this.bottom_cnt = AJS.DIV(); AJS.ACN(this.g_window, this.top_cnt, this.middle_cnt, this.bottom_cnt); }
  }
, onHide : function() {
  }
, onShow : function() {
  }
, setFrameSize : function() {
  }
, setWindowPosition : function() {
  }
, initHook : function() {
  }
}
);
_GB_update = function() {
if(GB_CURRENT) {
  GB_CURRENT.update();
  }
};
_GB_setOverlayDimension = function() {
if(GB_CURRENT) {
  GB_CURRENT.setOverlayDimension();
  }
};
AJS.preloadImages(GB_ROOT_DIR + "indicator.gif");
script_loaded = true;
var GB_SETS = {
};
function decoGreyboxLinks() {
var as = AJS.$bytc("a");
AJS.map(as, function(a) {
  if(a.getAttribute("href") && a.getAttribute("rel")) {
	 var rel = a.getAttribute("rel"); if(rel.indexOf("gb_") == 0) {
		var _17 = rel.match(/\w+/)[0]; var _18=rel.match(/\[(.*)\]/)[1]; var _19=0; var _1a={"caption":a.title||"","url":a.href}; if(_17=="gb_pageset"||_17=="gb_imageset"){ if(!GB_SETS[_18]){ GB_SETS[_18]=[]; } GB_SETS[_18].push(_1a); _19=GB_SETS[_18].length; } if(_17=="gb_pageset"){ a.onclick=function(){ GB_showFullScreenSet(GB_SETS[_18],_19); return false; }; } if(_17=="gb_imageset"){ a.onclick=function(){ GB_showImageSet(GB_SETS[_18],_19); return false; }; } if(_17=="gb_image"){ a.onclick=function(){ GB_showImage(_1a.caption,_1a.url); return false; }; } if(_17=="gb_page"){ a.onclick=function(){ var sp=_18.split(/, ?/); GB_show(_1a.caption,_1a.url,parseInt(sp[1]),parseInt(sp[0])); return false; }; } if(_17=="gb_page_fs"){ a.onclick=function(){ GB_showFullScreen(_1a.caption,_1a.url); return false; }; } if(_17=="gb_page_center"){ a.onclick=function(){ var sp=_18.split(/, ?/); GB_showCenter(_1a.caption,_1a.url,parseInt(sp[1]),parseInt(sp[0])); return false; }; } } } });
		}
	 AJS.AEV(window, "load", decoGreyboxLinks);
	 GB_showImage = function(_1d, url, _1f) {
		var _20 = {
		   width : 300, height : 300, type : "image", fullscreen : false, center_win : true, caption : _1d, callback_fn : _1f};
		var win = new GB_Gallery(_20);
		return win.show(url);
		};
	 GB_showPage = function(_22, url, _24) {
		var _25 = {
		   type : "page", caption : _22, callback_fn : _24, fullscreen : true, center_win : false};
		var win = new GB_Gallery(_25);
		return win.show(url);
		};
	 GB_showPage2 = function(_220, url, _240) {
		var _250 = {
		   type : "page", caption : _220, callback_fn : _240, fullscreen : false, center_win : true, width : 500, height : 325};
		var win = new GB_Gallery(_250);
		return win.show(url);
		};
	 GB_Gallery = GreyBox.extend( {
		init : function(_27) {
		   this.parent( {
			  }
		   ); this.img_close = this.root_dir + "g_close.gif"; AJS.update(this, _27); this.addCallback(this.callback_fn); }
		, initHook : function() {
		   AJS.addClass(this.g_window, "GB_Gallery"); var _28 = AJS.DIV( {
			  "class" : "inner"}
		   ); this.header = AJS.DIV( {
			  "class" : "GB_header"}
		   , _28); AJS.setOpacity(this.header, 0); AJS.getBody().insertBefore(this.header, this.overlay.nextSibling); var _29 = AJS.TD( {
			  "id" : "GB_caption", "class" : "caption", "width" : "40%"}
		   , this.caption); var _2a = AJS.TD( {
			  "id" : "GB_middle", "class" : "middle", "width" : "20%"}
		   ); var _2b = AJS.IMG( {
			  "src" : this.img_close}
		   ); AJS.AEV(_2b, "click", GB_hide); var _2c = AJS.TD( {
			  "class" : "close", "width" : "40%"}
		   , _2b); var _2d = AJS.TBODY(AJS.TR(_29, _2a, _2c)); var _2e = AJS.TABLE( {
			  "cellspacing" : "0", "cellpadding" : 0, "border" : 0}
		   , _2d); AJS.ACN(_28, _2e); if(this.fullscreen) {
			  AJS.AEV(window, "scroll", AJS.$b(this.setWindowPosition, this)); }
		   else {
			  AJS.AEV(window, "scroll", AJS.$b(this._setHeaderPos, this)); }
		   }
		, setFrameSize : function() {
		   var _2f = this.overlay.offsetWidth; var _30 = AJS.getWindowSize(); if(this.fullscreen) {
			  this.width = _2f - 40; this.height = _30.h - 80; }
		   AJS.setWidth(this.iframe, this.width); AJS.setHeight(this.iframe, this.height); AJS.setWidth(this.header, _2f); }
		, _setHeaderPos : function() {
		   AJS.setTop(this.header, AJS.getScrollTop() + 10); }
		, setWindowPosition : function() {
		   var _31 = this.overlay.offsetWidth; var _32 = AJS.getWindowSize(); AJS.setLeft(this.g_window, ((_31 - 50 - this.width) / 2)); var _33 = AJS.getScrollTop() + 55; if(!this.center_win) {
			  AJS.setTop(this.g_window, _33); }
		   else {
			  var fl = ((_32.h - this.height) / 2) + 20 + AJS.getScrollTop(); if(fl < 0) {
				 fl = 0; }
			  if(_33 > fl) {
				 fl = _33; }
			  AJS.setTop(this.g_window, fl); }
		   this._setHeaderPos(); }
		, onHide : function() {
		   AJS.removeElement(this.header); AJS.removeClass(this.g_window, "GB_Gallery"); }
		, onShow : function() {
		   if(this.use_fx) {
			  AJS.fx.fadeIn(this.header, {
				 to : 1}
			  ); }
		   else {
			  AJS.setOpacity(this.header, 1); }
		   }
		}
	 );
	 AJS.preloadImages(GB_ROOT_DIR + "g_close.gif");
	 GB_showFullScreenSet = function(set, _36, _37) {
		var _38 = {
		   type : "page", fullscreen : true, center_win : false};
		var _39 = new GB_Sets(_38, set);
		_39.addCallback(_37);
		_39.showSet(_36 - 1);
		return false;
		};
	 GB_showImageSet = function(set, _3b, _3c) {
		var _3d = {
		   type : "image", fullscreen : false, center_win : true, width : 300, height : 300};
		var _3e = new GB_Sets(_3d, set);
		_3e.addCallback(_3c);
		_3e.showSet(_3b - 1);
		return false;
		};
	 GB_Sets = GB_Gallery.extend( {
		init : function(_3f, set) {
		   this.parent(_3f); if(!this.img_next) {
			  this.img_next = this.root_dir + "next.gif"; }
		   if(!this.img_prev) {
			  this.img_prev = this.root_dir + "prev.gif"; }
		   this.current_set = set; }
		, showSet : function(_41) {
		   this.current_index = _41; var _42 = this.current_set[this.current_index]; this.show(_42.url); this._setCaption(_42.caption); this.btn_prev = AJS.IMG( {
			  "class" : "left", src : this.img_prev}
		   ); this.btn_next = AJS.IMG( {
			  "class" : "right", src : this.img_next}
		   ); AJS.AEV(this.btn_prev, "click", AJS.$b(this.switchPrev, this)); AJS.AEV(this.btn_next, "click", AJS.$b(this.switchNext, this)); GB_STATUS = AJS.SPAN( {
			  "class" : "GB_navStatus"}
		   ); AJS.ACN(AJS.$("GB_middle"), this.btn_prev, GB_STATUS, this.btn_next); this.updateStatus(); }
		, updateStatus : function() {
		   AJS.setHTML(GB_STATUS, (this.current_index + 1) + " / " + this.current_set.length); if(this.current_index == 0) {
			  AJS.addClass(this.btn_prev, "disabled"); }
		   else {
			  AJS.removeClass(this.btn_prev, "disabled"); }
		   if(this.current_index == this.current_set.length - 1) {
			  AJS.addClass(this.btn_next, "disabled"); }
		   else {
			  AJS.removeClass(this.btn_next, "disabled"); }
		   }
		, _setCaption : function(_43) {
		   AJS.setHTML(AJS.$("GB_caption"), _43); }
		, updateFrame : function() {
		   var _44 = this.current_set[this.current_index]; this._setCaption(_44.caption); this.url = _44.url; this.startLoading(); }
		, switchPrev : function() {
		   if(this.current_index != 0) {
			  this.current_index--; this.updateFrame(); this.updateStatus(); }
		   }
		, switchNext : function() {
		   if(this.current_index != this.current_set.length - 1) {
			  this.current_index++; this.updateFrame(); this.updateStatus(); }
		   }
		}
	 );
	 AJS.AEV(window, "load", function() {
		AJS.preloadImages(GB_ROOT_DIR + "next.gif", GB_ROOT_DIR + "prev.gif"); }
	 );
	 GB_show = function(_45, url, _47, _48, _49) {
		var _4a = {
		   caption : _45, height : _47 || 500, width : _48 || 500, fullscreen : false, callback_fn : _49};
		var win = new GB_Window(_4a);
		return win.show(url);
		};
	 GB_showCenter = function(_4c, url, _4e, _4f, _50) {
		var _51 = {
		   caption : _4c, center_win : true, height : _4e || 200, width : _4f || 374, fullscreen : false, callback_fn : _50};
		var win = new GB_Window(_51);
		return win.show(url);
		};
	 GB_showFullScreen = function(_53, url, _55) {
		var _56 = {
		   caption : _53, fullscreen : true, callback_fn : _55};
		var win = new GB_Window(_56);
		return win.show(url);
		};
	 GB_Window = GreyBox.extend( {
		init : function(_58) {
		   this.parent( {
			  }
		   ); this.img_header = this.root_dir + "header_bg.gif"; this.img_close = this.root_dir + "w_close.gif"; this.show_close_img = true; AJS.update(this, _58); this.addCallback(this.callback_fn); }
		, initHook : function() {
		   AJS.addClass(this.g_window, "GB_Window"); this.header = AJS.TABLE( {
			  "class" : "header"}
		   ); this.header.style.backgroundImage = "url(" + this.img_header + ")"; var _59 = AJS.TD( {
			  "class" : "caption"}
		   , this.caption); var _5a = AJS.TD( {
			  "class" : "close"}
		   ); if(this.show_close_img) {
			  var _5b = AJS.IMG( {
				 "src" : this.img_close}
			  ); var _5c = AJS.SPAN("Close"); var btn = AJS.DIV(_5b, _5c); AJS.AEV([_5b, _5c], "mouseover", function() {
				 AJS.addClass(_5c, "on"); }
			  ); AJS.AEV([_5b, _5c], "mouseout", function() {
				 AJS.removeClass(_5c, "on"); }
			  ); AJS.AEV([_5b, _5c], "mousedown", function() {
				 AJS.addClass(_5c, "click"); }
			  ); AJS.AEV([_5b, _5c], "mouseup", function() {
				 AJS.removeClass(_5c, "click"); }
			  ); AJS.AEV([_5b, _5c], "click", GB_hide); AJS.ACN(_5a, btn); }
		   tbody_header = AJS.TBODY(); AJS.ACN(tbody_header, AJS.TR(_59, _5a)); AJS.ACN(this.header, tbody_header); AJS.ACN(this.top_cnt, this.header); if(this.fullscreen) {
			  AJS.AEV(window, "scroll", AJS.$b(this.setWindowPosition, this)); }
		   }
		, setFrameSize : function() {
		   if(this.fullscreen) {
			  var _5e = AJS.getWindowSize(); overlay_h = _5e.h; this.width = Math.round(this.overlay.offsetWidth - (this.overlay.offsetWidth / 100) * 10); this.height = Math.round(overlay_h - (overlay_h / 100) * 10); }
		   AJS.setWidth(this.header, this.width + 6); AJS.setWidth(this.iframe, this.width); AJS.setHeight(this.iframe, this.height); }
		, setWindowPosition : function() {
		   var _5f = AJS.getWindowSize(); AJS.setLeft(this.g_window, ((_5f.w - this.width) / 2) - 13); if(!this.center_win) {
			  AJS.setTop(this.g_window, AJS.getScrollTop()); }
		   else {
			  var fl = ((_5f.h - this.height) / 2) - 20 + AJS.getScrollTop(); if(fl < 0) {
				 fl = 0; }
			  AJS.setTop(this.g_window, fl); }
		   }
		}
	 );
	 AJS.preloadImages(GB_ROOT_DIR + "w_close.gif", GB_ROOT_DIR + "header_bg.gif");
	 script_loaded = true;
