// inCMS common js
// (c)2008 Spika David, Inexes

var inCMS = new Object();

// Fce vrátí html prvek
// parametry: ID nebo prvek
inCMS.getObj = function (x) {
	if (typeof x != 'string') return x;
	else if (Boolean(document.getElementById)) return document.getElementById(x);
		else return null;
	}

// Fce vrátí pole všech html prvků v daném prvku, jejichž className obsahuje zadaný řetězec
// parametry: ID prvku ve kterém hledat, název prvku který hledat (možno použít *), podřetězec className
inCMS.getElementsByClass = function (p,t,c) {
	var o = inCMS.getObj(p);
	var tempField = new Array();
	var elements = o.getElementsByTagName(t);
	for (var i=0; i<elements.length; i++) {
		if (elements[i].className.indexOf(c) != -1) {
			tempField[tempField.length] = elements[i];
			}
		}
	return tempField;
	}

// Fce přidá skript (před nebo za stávající funkce) navázaný na definovanou událost html prvku
// použití: addEvent(window,'onload','alert(o.id);');
// parametry: ID nebo prvek, název události, skript navázaný na událost (pravidla pro skript: na daný prvek neodkazovat přes this, ale přes o), příznak jestli má být nový skript vložen před/za stávající
inCMS.addEvent = function (obj,e,s,before) {
	var o = inCMS.getObj(obj);
	eval('var oldEvent = o.' + e + ';');
	if (!before) eval('o.' + e + ' = function (' + (inCMS.browser.IE ? '' : 'event') + ') { ' + (oldEvent ? 'oldEvent(' + (inCMS.browser.IE ? '' : 'event') + ');' : '') + s + ' };');
	else eval('o.' + e + ' = function (' + (inCMS.browser.IE ? '' : 'event') + ') { ' + s + (oldEvent ? 'oldEvent(' + (inCMS.browser.IE ? '' : 'event') + ');' : '') + ' };');
	}

// Fce přidá skript navázaný na definovanou událost všem html prvkům, jejichž className obsahuje zadaný řetězec
// parametry: ID prvku ve kterém hledat, název prvku (možno použít *), podřetězec className, název události, skript navázaný na událost, příznak jestli má být nový skript vložen před/za stávající
inCMS.addEventByClass = function (p,t,c,e,s,before) {
	var o = inCMS.getObj(p);
	var elements = o.getElementsByTagName(t);
	for (var i=0; i<elements.length; i++) {
		if (elements[i].className.indexOf(c) != -1) {
			inCMS.addEvent(elements[i],e,s,before);
			}
		}
	}

// Fce přidá skript navázaný na definovanou událost všem formulářovým prvkům, jejichž className obsahuje zadaný řetězec
// parametry: název prvku (možno použít *), podřetězec className, název události, skript navázaný na událost, příznak jestli má být nový skript vložen před/za stávající
inCMS.addEventToForm = function (t,c,e,s,before) {
	var elements = document.forms[0];	
	for (var i=0; i<elements.length; i++) {
		if (elements[i].nodeName.toLowerCase() == t && elements[i].className.indexOf(c) != -1) {
			inCMS.addEvent(elements[i],e,s,before);
			}
		}
	}

// Fce nahradí chybějící podporu css pseudotřídy :hover pro IE6- všem html prvkům, jejichž className obsahuje zadaný řetězec
// parametry: ID prvku ve kterém hledat, název prvku (možno použít *), podřetězec className
inCMS.hoverByClass = function (p,t,c) {
	if (inCMS.browser.IE6) {
		var o = inCMS.getObj(p);
		var elements = o.getElementsByTagName(t);
		for (var i=0; i<elements.length; i++) {
			if (elements[i].className.indexOf(c) != -1) {
				inCMS.addEvent(elements[i],'onmouseover','o.className += \' hover\';');
				inCMS.addEvent(elements[i],'onmouseout','o.className = o.className.replace(\' hover\',\'\');');
				}
			}
		}
	}

// Fce nastaví html prvku css styl
// parametry: ID nebo prvek, 'vlastnost', 'hodnota'
inCMS.setObjStyle = function (obj,prop,val) {
	var o = inCMS.getObj(obj);
	if (o && o.style) {
		eval ('o.style.'+prop+'="'+val+'"');
		return true;
		}
	else return false;
	}

// Fce vrátí hodnotu css parametru u html prvku
// parametry: ID nebo prvek, 'vlastnost'
inCMS.getObjStyle = function (obj,prop) {
	var o = inCMS.getObj(obj);
	if (document.defaultView) var val = window.document.defaultView.getComputedStyle(o,null).getPropertyValue(prop); // Mozilla
	else if (o.currentStyle) var val = eval('o.currentStyle.' + prop); // IE
	return val;
	}

// Fce nastaví css styl všem html prvkům, jejichž className obsahuje zadaný řetězec
// parametry: název prvku (možno použít *), podřetězec className, 'vlastnost', 'hodnota'
inCMS.setObjStyleByClass = function (p,t,c,prop,val) {
	var o = inCMS.getObj(p);
	var elements = o.getElementsByTagName(t);
	for (var i=0; i<elements.length; i++) {
		if (elements[i].className.indexOf(c) != -1) {
			inCMS.setObjStyle(elements[i],prop,val);
			}
		}
	}

// Fce na zobrazení/zneviditelnění html prvku
// parametry: ID nebo prvek, zobrazení - true/false
inCMS.showObj = function (obj,on) {
	return inCMS.setObjStyle(obj,'visibility',(on) ? 'visible':'hidden');
	}

// Fce na zobrazení/skrytí html prvku
// parametry: ID nebo prvek, zobrazení - true/false, hodnota css vlastnosti display (není povinná, pokud 2. parametr = false)
inCMS.displayObj = function (obj,on,type) {
	if (on && !type) { 
		if (!inCMS.browser.IE && inCMS.getObj(obj) && inCMS.getObj(obj).nodeName.toLowerCase() == 'tr') type = 'table-row';
		else if (!inCMS.browser.IE && inCMS.getObj(obj) && inCMS.getObj(obj).nodeName.toLowerCase() == 'tbody') type = 'table-row-group';
		else type = 'block';
		}
	return inCMS.setObjStyle(obj,'display',(on) ? type:'none');
	}

// Konstruktor na vytvoření kopie objektu (pro uživatelské objekty příjímané přes AJAX, jejichž struktura není známa)
// použití: novy_objekt = new cloneObj(stary_objekt)
// parametry: objekt
inCMS.cloneObj = function (obj) {
	for (var property in obj) {
		if (typeof obj[property] == 'object') { 
			if (obj.length) this.length = obj.length;
			this[property] = new cloneObj (obj[property]);
			}
		else this[property] = obj[property];
		}
	}

// Fce na porovnání 2 objektů (pro uživatelské objekty příjímané přes AJAX, jejichž struktura není známa)
// Pokud se liší, vrací true
// parametry: objekt1, objekt2
inCMS.compareObjs = function (obj1,obj2) {
	var isChange = false;
	var maxCount = (obj1.length >= obj2.length) ? obj1.length : obj2.length;
	for (var i=0; i<maxCount; i++) {
		var item = obj1[i]; // 1
		if (!item) { isChange = true; break; }
		else for (var property in item) {
			item = obj1[i]; // 1
			var val1 = item[property]; // 1 - vlastnost
			item = obj2[i]; // 2
			if (!item) { isChange = true; break; }
			else {
				var val2 = item[property]; // 2 - vlastnost
				if (typeof val1 != 'object' && typeof val2 != 'object' && val1 != val2) { isChange = true; break; }
				}
			}
		}
	return isChange;
	}

// Fce vrátí pole indexů, na kterých se v zadaném poli vyskytuje zadaná hodnota
// parametry: pole, hodnota, příznak podle kterého se testuje rovnost(substring=false) nebo jen obsah podřetězce(substring=true)
inCMS.findFieldIndexesByValue = function (field,value,substring) {
	var fieldIndexes = new Array();
	for (var i=0; i<field.length; i++) {
		if (field[i] == value && !substring) {
			fieldIndexes.length++;
			fieldIndexes[fieldIndexes.length-1] = i;
			}
		if (field[i].indexOf(value) != -1 && substring) {
			fieldIndexes.length++;
			fieldIndexes[fieldIndexes.length-1] = i;
			}
		}
	return fieldIndexes;
	}

// Fce odstraní zadanou hodnotu z pole
// parametry: pole; hodnota
inCMS.removeValueFromField = function (field,value) {
	var position = field.length+1;
	for (var i=0; i<field.length; i++) if (field[i] == value) position = i;
	for (var i=position; i<field.length-1; i++) field[i] = field[i+1];
	field.length--;
	}

// Fce odstraní zadanou hodnotu z pole
// parametry: pole; hodnota
inCMS.addValueToField = function (field,value) {
	field.length++;
	field[field.length-1] = value;
	}	

// Fce vrátí hodnotu zadaného parametru z url
// použití: hodnota = getParamsFromUrl()['parametr']
inCMS.getParamsFromUrl = function () {
	var field  = window.location.search.substr(1).split('&');
	var params = new Array(); 
	for (var i=0; i<field.length; i++) {
		params[field[i].split('=')[0]] = unescape(field[i].split('=')[1]); 
		}
	return params;
	}

// Objekt pro práci s popup okny
inCMS.popup = {
	// Odkaz na popup okno otevřené metodou open()
	win : null,
	// Metoda na otevření nového popup okna 
	// parametry: url, šířka okna, výška okna, posuvníky a proměnná velikost okna - true/false, název okna
	open : function (src,width,height,fixedSize) {
		if (fixedSize) var param = 'no';
		else var param = 'yes';
		var p = 'toolbar=no,menubar=no,location=no,directories=no,scrollbars=' + param + ',resizable= ' + param + ',status=no,width=' + width + ',height=' + height + ',left=' + (screen.availWidth/2-width/2) + ',top=' + (screen.availHeight/2-height/2);
		if (this.win) this.win.close();
		this.win = window.open(src,'',p);
		this.win.focus();
		},
	// Metoda vrátí odkaz na html prvek umístěný v rodičovském okně do popup okna
	// parametry: ID nebo prvek
	getObj : function (x) {
		return inCMS.getObj(x);
		}
	};

// Detail obrázku v novém okně:
inCMS.imagePopupWindow = null;
inCMS.imagePopup = function (src,title,width,height) {
	if (inCMS.imagePopupWindow) inCMS.imagePopupWindow.close();
	var imageWidth = width;
	var imageHeight = height;
	if (width < 400)  width = 400;
	if (height < 300) height = 300;
	if (width > 990 || height > 700) var s = 'scrollbars=yes';
	else var s = 'scrollbars=no';
	if (width > 990)  width = 990;
	if (height > 700) height = 700;
	var p = 'toolbar=no,menubar=no,location=no,resizable=yes,directories=no,status=no,width=' + width + ',height=' + height + ',left=' + (screen.availWidth/2-width/2) + ',top=' + (screen.availHeight/2-height/2) + ',' + s;
	inCMS.imagePopupWindow = window.open(appWWWRoot + 'admin/PreviewImage.html?src='+escape(src)+'&title='+escape(title)+'&width='+imageWidth+'&height='+imageHeight,'',p);
	inCMS.imagePopupWindow.focus();		
	}

// Objekt na detekci prohlížeče
inCMS.browser = {
	IE : navigator.appName == 'Microsoft Internet Explorer',
	IE6 : navigator.userAgent.indexOf('MSIE 6') != -1,
	IE7 : navigator.userAgent.indexOf('MSIE 7') != -1,
	opera : navigator.userAgent.indexOf('Opera') != -1,
	gecko : navigator.userAgent.indexOf('Gecko') != -1,
	safari : navigator.userAgent.indexOf('Safari') != -1
	}
// Opera se může tvářit i jako jiný prohlížeč, proto oprava:
if (inCMS.browser.opera) {
	for (var property in inCMS.browser) {
		if (property != 'opera') inCMS.browser[property] = false;
		}
	}

// Fce vrátí souřadnice html prvku vůči stránce (každý prohlížeč může vracet jiné)
// parametry: ID nebo prvek
inCMS.getObjCoords = function (obj) {
	var element = inCMS.getObj(obj);
	var coords = { x : 0, y : 0 };
	while (element) {
		coords.x += element.offsetLeft;
		coords.y += element.offsetTop;
		element = element.offsetParent;
	}
	return coords;
}

// Fce vrátí souřadnice kurzoru vůči stránce (každý prohlížeč může vracet jiné)
// parametry: event
inCMS.getMouseCoords = function (e) {
	if (e.pageX || e.pageY) {
		return {x:e.pageX, y:e.pageY};
		}
	return {
		x:e.clientX + document.body.scrollLeft - document.body.clientLeft,
		y:e.clientY + document.body.scrollTop  - document.body.clientTop
		};
	}

// Fce vrátí aktuální velikost okna
inCMS.windowSize = function () {
	if (document.documentElement && document.documentElement.clientWidth)	{
		var size = { width : document.documentElement.clientWidth, height : document.documentElement.clientHeight };
		return size;
		}
	else if (document.body && document.body.clientWidth) {
		var size = { width : document.body.clientWidth,	height : document.body.clientHeight	};
		return size;
		}
	else var size = { width : 0, height : 0 };
	return size;
	}

// Fce vrátí aktuální pozici stránky
inCMS.pagePosition = function () {
	var left = (window.pageXOffset) ? window.pageXOffset
		: (document.documentElement && document.documentElement.scrollLeft) ? document.documentElement.scrollLeft
		: (document.body) ? document.body.scrollLeft
		: 0;
	var top = (window.pageYOffset) ? window.pageYOffset
		: (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop
		: (document.body) ? document.body.scrollTop
		: 0;
	var position = { x : left, y : top };
	return position;
	}

// Fce vrátí aktuální velikost stránky
inCMS.pageSize = function () {
	var w = (window.innerWidth && window.scrollMaxX) ? window.innerWidth + window.scrollMaxX
		: (document.body.scrollWidth > document.body.offsetWidth) ? document.body.scrollWidth
		: document.body.offsetWidth;
	var h = (window.innerHeight && window.scrollMaxY) ? window.innerHeight + window.scrollMaxY
		: (document.body.scrollHeight > document.body.offsetHeight) ? document.body.scrollHeight
		: document.body.offsetHeight;
	if (w < inCMS.windowSize().width) w = inCMS.windowSize().width;
	if (h < inCMS.windowSize().height) h = inCMS.windowSize().height;
	var size = { width : w, height : h };
	return size;
	}

// Metoda nastaví průhlednost html prvku
// parametry: html prvek (nebo jeho ID), hodnota průhlednosti 0-100
inCMS.setOpacity = function (obj,val) {
	var o = inCMS.getObj(obj);
	if (inCMS.browser.IE) o.style.filter = (val == 100) ? 'none' : 'alpha(opacity=' + val + ')';
	else {
		o.style.MozOpacity = val/100;
		o.style.KHTMLOpacity = val/100;
		o.style.opacity = val/100;
		}
	}

// Fce uloží do cookies zadanou hodnotu
inCMS.setCookie = function (name,value,path,domain,secure) {
	expires = new Date();
	expires.setTime(expires.getTime() + (24 * 60 * 60 * 1000 * 31));
	document.cookie = escape(name) + "=" + escape(value) +
	((expires) ? "; expires=" + expires.toGMTString() : "") +
	((path) ? "; path=" + path : "") +
	((domain) ? "; domain=" + domain : "") +
	((secure) ? "; secure" : "");
	}

// Fce vrátí z cookies hodnotu podle jména
inCMS.getCookie = function (name) {
	var cookieList = document.cookie.split("; ");
	for (var i=0; i<cookieList.length; i++){
		var cookie = cookieList[i].split("=");
		if (unescape(cookie[0]) == name) {
			return unescape(cookie[1]);
			break;
			}
		}
	return null;
	}

inCMS.preloadImages = new Array();
inCMS.preloadImages[0] = new Image();
inCMS.preloadImages[0].src = 'Design/Progress.gif';

// *********************************
// Kód pro jednotlivé moduly a menu:
// *********************************

/**
* inCMS module: gallery_type6
**/
inCMS.galleries = {
	items : new Array()
}

// Inicializační metoda, spuštěná až po načtení stránky
inCMS.addEvent(window,'onload','inCMS.galleries.postInit();');
inCMS.galleries.postInit = function () {
	var body = document.getElementsByTagName('body')[0];
	if (!inCMS.getObj('overlay')) {
		var overlay = document.createElement('div');
		overlay.id = 'overlay';
		body.appendChild(overlay);
	}
	if (!inCMS.getObj('lightbox')) {
		var lightbox = document.createElement('div');
		lightbox.id = 'lightbox';
		body.appendChild(lightbox);
	}
	var links = inCMS.getElementsByClass('page','a','preload');
	this.preloadImages = new Array();
	for (var i=0; i<links.length; i++) {
		this.preloadImages[i] = new Image();
		this.preloadImages[i].src = links[i].href;
	}
}

// Inicializační metoda, kterou volá každá galerie při načítání stránky
// parametry: ID hlavního DIVu každé galerie (div class="gallery" id="gallery-ID" 
// kde ID je pořadí galerie na stránce), příznaky zobrazení volitelných údajů
inCMS.galleries.init = function (initObj) {
	this.items.length++;
	this.items[this.items.length-1] = new Object();
	var gallery = this.items[this.items.length-1];
	for (var property in initObj) {
		eval('gallery.' + property + ' = initObj.' + property + ';');
	}
	gallery.id = parseInt(gallery.mainBoxID.split('-')[1]);
	var mainBox = inCMS.getObj(gallery.mainBoxID);
	gallery.contentBox = mainBox.getElementsByTagName('div')[0].getElementsByTagName('div')[1];
	gallery.pictures = gallery.contentBox.getElementsByTagName('img');
	gallery.infozone = mainBox.parentNode.id == 'infoContentBox';
	for (var i=0;i<gallery.pictures.length;i++) {
	    gallery.pictures[i].className += ' rc';
		gallery.pictures[i].parentNode.className += ' imageContainer';
		if (inCMS.browser.IE6) {
			inCMS.addEvent(gallery.pictures[i],'onmouseover','o.className += \' hover\';');
			inCMS.addEvent(gallery.pictures[i],'onmouseout','o.className = o.className.replace(\' hover\',\'\');');
		}
	}
}

// Metoda nastaví pozici vysvíceného boxu na prostředek okna
inCMS.addEvent(window,'onresize','inCMS.galleries.lightboxPosition();');
inCMS.galleries.lightboxPosition = function () {
	if (inCMS.getObj('overlay') && inCMS.getObj('lightbox')) {
		var top = (inCMS.windowSize().height - inCMS.getObj('lightbox').offsetHeight)/2 + inCMS.pagePosition().y;
		var left = (inCMS.windowSize().width - inCMS.getObj('lightbox').offsetWidth)/2 + inCMS.pagePosition().x;
		if (top < inCMS.pagePosition().y + 10) top = inCMS.pagePosition().y + 10;
		if (left < 10) left = 10;
		inCMS.setObjStyle('lightbox','top',top + 'px');
		inCMS.setObjStyle('lightbox','left',left + 'px');
		if (inCMS.browser.IE) {
			inCMS.setObjStyle('overlay','width',(inCMS.pageSize().width) + 'px');
			inCMS.setObjStyle('overlay','height',(inCMS.pageSize().height) + 'px');
		}
	}
}

// Zobrazi LightBox s obrazkem v plne velikosti
inCMS.galleries.showLightBox = function(number, index, /*id, */title, 
                                        description, date, author, width, height, src, fileName) {
    var gallery = this.items[0];
	/*for (var i=0; i<this.items.length; i++) {
		if (this.items[i].id == number) {
			var gallery = this.items[i];
			break;
		}
	}*/
	
	var actualPicture = index;
	if (inCMS.browser.IE6) inCMS.setObjStyleByClass('page','select','','visibility','hidden');
	var navigationWidth = gallery.displayNavigation ? 160 : 0;
	var displayText = gallery.displayTitle || gallery.displayDate || gallery.displayAuthor || gallery.displayFileName;
	var textWidth = displayText ? (width-navigationWidth > 250 ? width-navigationWidth : 250) : 0;
	var lightboxWidth = textWidth+navigationWidth > width ? textWidth+navigationWidth : width;
	var noImage = src.indexOf('/FileType/') != -1;
	var tempHTML = '';
	
	if (gallery.displayNavigation) {
		tempHTML += '<p id="lightbox-navigation">';
		if (actualPicture > 1) tempHTML += '<a href="javascript:inCMS.galleries.showNext(' + number + ',' + (actualPicture-2) + ')" class="buttonBack"><img src="Modules/Galleries/Type6/Design/BackgroundPrevious.gif" alt="" /></a>';
		tempHTML += '<a href="javascript:inCMS.galleries.hideLightbox();" class="buttonClose"><img src="Modules/Galleries/Type6/Design/BackgroundCloser.gif" alt="" /></a>\n';
		if (actualPicture < gallery.pictures.length) tempHTML += ' <a href="javascript:inCMS.galleries.showNext(' + number + ',' + actualPicture + ')" class="buttonForward"><img src="Modules/Galleries/Type6/Design/BackgroundNext.gif" alt="" /></a>';
		tempHTML += '<span class="page-counter">' + actualPicture + '/' + gallery.pictures.length + '</span>';
		tempHTML += '</p>\n';
	}
	
	tempHTML += '<a href="' + (noImage ? gallery.pictures[index-1].parentNode.href : 'javascript:inCMS.galleries.hideLightbox();') + 
	               '" id="lightbox-image" class="imageContainer" style="display:block;width:' + (width) + 'px; height:' + (height) + 
	               'px;position:relative;"><img id="lightbox-image" src="' + src + '" width="' + width + '" height="' + height + '" alt="" />';
	if (!noImage) tempHTML += '<span class="rc-tl"></span><span class="rc-tr"></span>' + 
	                          '<span class="rc-bl"></span><span class="rc-br"></span>';
	tempHTML += '</a>\n';
    gallery.displayTitle = gallery.displayTitle && (title != "");
	
	if (displayText) {
		tempHTML += '<div id="lightbox-text">\n';
		if (gallery.displayTitle) tempHTML += '<h3>' + title + '</h3>\n';
		if (gallery.displayTitle && description && description != '') tempHTML += '<p class="description">' + description + '</p>\n';
		if (gallery.displayDate || gallery.displayAuthor) {
			tempHTML += '<p class="dateAuthor">';
			if (gallery.displayDate && (date != "")) tempHTML +=  '<span class="date">' + date + '</span>';
			if ((gallery.displayDate && (date != "")) && (gallery.displayAuthor && (author != ""))) tempHTML += '&nbsp;|&nbsp;'
			if (gallery.displayAuthor && (author != "")) tempHTML +=  '<span class="author">' + author + '</span>';
			tempHTML += '</p>\n';
		}
		if (gallery.displayFileName) tempHTML += '<p class="fileName">' + fileName + '</p>\n';
		tempHTML += '</div>\n';
	}
	
	tempHTML += '<span class="cleaner"></span>\n';
	inCMS.getObj('lightbox').innerHTML = tempHTML;
	inCMS.setObjStyle('lightbox','width',lightboxWidth + 'px');
	var closerShift = 11;
	inCMS.setObjStyle('lightbox-closer','left',(width - closerShift) + 'px');
	inCMS.setObjStyle('lightbox-closer','top',(noImage ? 0 : closerShift) + 'px');
	inCMS.displayObj('overlay',true);
	inCMS.displayObj('lightbox',true);
	this.lightboxPosition();
	//return false;
}

// Metoda skryje vysvícený box
inCMS.galleries.hideLightbox = function () {
	inCMS.displayObj('lightbox',false);
	inCMS.displayObj('overlay',false);
	if (inCMS.browser.IE6) inCMS.setObjStyleByClass(document,'select','','visibility','visible');
}

// Metoda zobrazí detail dalšího obrázku 
inCMS.galleries.showNext = function (number, index) {
    if ((index >= 0) && (index < number)) {
        if (inCMS.browser.IE) {
            inCMS.getObj('item_' + index).getElementsByTagName('a')[0].click();
            location.href = inCMS.getElementsByClass('mainBox', 'div', 'imgBigPreview')[0].getElementsByTagName('a')[0].href;
        } else {
            inCMS.getObj('item_' + index).getElementsByTagName('a')[0].onclick();
            location.href = inCMS.getElementsByClass('mainBox', 'div', 'imgBigPreview')[0].getElementsByTagName('a')[0].href;
        }
    }
}

// Metoda nastaví průhlednost html prvku
// parametry: html prvek (nebo jeho ID), hodnota průhlednosti 0-100
inCMS.galleries.setOpacity = function (obj,val) {
	var o = inCMS.getObj(obj);
	if (inCMS.browser.IE) o.style.filter = (val == 100) ? 'none' : 'alpha(opacity=' + val + ')';
	else {
		o.style.MozOpacity = val/100;
		o.style.KHTMLOpacity = val/100;
		o.style.opacity = val/100;
	}
}

//------------------------------------------------------------------------------------------------------

// Vycisti oznacene odkazy
inCMS.galleries.clearSelectedImages = function(total) {
    for (var i=0;i<total;i++) {
        var newStyle = inCMS.getObj('item_' + i).className;
        inCMS.getObj('item_' + i).className = newStyle.replace(" selected", "");
    }
}

// Metoda zobrazí vysvícený box (detail galerie)
inCMS.galleries.showImage = function(total, index, id, title, alt, date, author, width,
	height, url, file, thumbnailId) {
	inCMS.getObj('imgBigPreview').src = 'Image.aspx?DocID=' + (thumbnailId > 0 ? thumbnailId : id) +
					'&Width=253&Height=197&RTypeID=3';
	inCMS.getObj('imgBigPreview').alt = alt;
	inCMS.getObj('imgBigPreview').title = title;
	inCMS.galleries.clearSelectedImages(total);
	index--;
	var newStyle = inCMS.getObj('item_' + index).className + " selected";
	inCMS.getObj('item_' + index).className = newStyle;
	var onClickMethod = "inCMS.galleries.showLightBox(" + total +
												", " + (index + 1) + /*", " + id + */", '" + title + "', '" +
												alt + "', '" + date + "', '" + author + "', " + width +
												", " + height + ", '" + url + "', '" + file + "');";
	inCMS.getObj('hlBigPreview').href = "javascript:" + onClickMethod;
	return false;
}
// inCMS module: menu_v1

// Fce na inicializaci submenu (ovládané přes onClick) - zabalí všechny položky a rozbalí určenou položku (včetně všech položek v cestě) + přidá šipku (class) u položek obsahujících podpoložky
// parametry: cesta k položce, která se má rozbalit (Array)
inCMS.menuInit_v1 = function (path) {
	var menuID = 'menuList-v' + path[0];
	if (inCMS.getObj(menuID)) {
		var menu = inCMS.getObj(menuID);
		var childUL = menu.getElementsByTagName('ul');
		for (var i=0; i<childUL.length; i++) {
			inCMS.displayObj(childUL[i],false);
		}
		for (var i=1; i<path.length; i++) {
			menuID += '-' + path[i];
			inCMS.displayObj(menuID,true);
		}
		var childLI = menu.getElementsByTagName('li');
		for (var i=0; i<childLI.length; i++) {
			if (inCMS.browser.IE6) {
				inCMS.addEvent(childLI[i],'onmouseover','o.className += \' hover\';');
				inCMS.addEvent(childLI[i],'onmouseout','o.className = o.className.replace(\' hover\',\'\');');
			}
			if (childLI[i].getElementsByTagName('ul').length > 0) {
				childLI[i].className += ' isParent';
			}	
		}
	}
}	

// Fce na rozbalení určené položky submenu (ovládané přes onClick)
// Pokud položka, na kterou bylo kliknuto, někam odkazuje - Fce vrací true a žádné rozbalení se neprovede
// pokud neodkazuje - Dojde k rozbalení a fce vrací false
// parametry: položka na kterou bylo kliknuto; ID seznamu UL, který se má rozbalit
function expandMenuList (item,menuListID) {
	if (item.href != 'javascript:void(0);') return true;
	var path = menuListID.split('-');
	for (var i=0; i<path.length-1; i++) path[i] = path[i+1];
	path.length--;
	path[0] = path[0].substring(1,path[0].length);
	item.blur();
	inCMS.menuInit_v1(path);
	return false;
}
