
/* ******* cportal/script/multiselectEditor.js ******* */
function selectAll(editorID){
	var editor=document.getElementById(editorID);
	var selects=editor.getElementsByTagName("select");
	var unselected=selects[0];
	var selected=selects[1];
	while(unselected.options.length>0){
		var option=unselected.options[unselected.length-1];
		unselected.options[unselected.length-1]=null;
		selected.options[selected.options.length]=option;
	}
}
function selectOne(editorID){
	var editor=document.getElementById(editorID);
	var selects=editor.getElementsByTagName("select");
	var unselected=selects[0];
	var selected=selects[1];
	var size=unselected.length;
	for(var i=size-1;i>=0;i--){
		var option=unselected.options[i];
		if(option.selected){
			unselected.options[i]=null;
			selected.options[selected.options.length]=option;
		}
	}
}
function unselectOne(editorID){
	var editor=document.getElementById(editorID);
	var selects=editor.getElementsByTagName("select");
	var unselected=selects[0];
	var selected=selects[1];
	var size=selected.length;
	for(var i=size-1;i>=0;i--){
		var option=selected.options[i];
		if(option.selected){
			selected.options[i]=null;
			unselected.options[unselected.options.length]=option;
		}
	}
}
function unselectAll(editorID){
	var editor=document.getElementById(editorID);
	var selects=editor.getElementsByTagName("select");
	var unselected=selects[0];
	var selected=selects[1];
	while(selected.options.length>0){
		var option=selected.options[selected.length-1];
		selected.options[selected.length-1]=null;
		unselected.options[unselected.options.length]=option;
	}
}
function selectSelected(form){
try{
	var selects=form.getElementsByTagName("select");
	if(selects){
		for(var i=0;i<selects.length;i++){
			var sel=selects[i];
			var name=sel.getAttribute("name");
			if(name != null && name.indexOf("selected")==0){
				for(var j=0;j<sel.options.length;j++){
					sel.options[j].selected=true;
				}
			}
		}
	}
	}catch(e){
		alert(e);
	}
}

/* ******* cportal/script/multivalueEditor.js ******* */
function removeEditor(button){
	var row=button.parentNode.parentNode.parentNode.parentNode.parentNode;
	row.parentNode.removeChild(row);
}
function addEditor(multivalueEditorID){
	var mvEditor=document.getElementById(multivalueEditorID+"container");
	var template=document.getElementById(multivalueEditorID+"template");
	var newEditor=template.cloneNode(true);
	newEditor.removeAttribute("style");
	newEditor.removeAttribute("id");
//	newEditor.setAttribute("id",multivalueEditorID+mvEditor.getElementsByTagName("div").length);
	var oldID=multivalueEditorID;
	var newID=multivalueEditorID+mvEditor.getElementsByTagName("div").length;
	setEnabled(newEditor,true);
	mvEditor.appendChild(newEditor);
	replaceID(newEditor, oldID,newID);
	return newEditor;
}
function replaceID(element,oldID,newID){
	try{
	var elm=element;
	var attrs=["id","onclick"];
	for(var i=0;i<attrs.length;i++){
		var name=attrs[i];
		var value=elm.getAttribute(name);
		if(value!= null && value!=""){
			value=value.toString();
			var rep=""+normalizeEventHandler(value);
			var regexp=new RegExp(oldID,"g");
			rep=rep.replace(regexp,newID);
			if(value.indexOf("function")==0){
				rep=new Function(rep);
			}
			elm.setAttribute(name,rep);
		}
	}
	var size=elm.childNodes.length;
	for(var i=0;i<size;i++){
		var node=elm.childNodes[i];
		if(node.nodeType==1){	// element node
			replaceID(node,oldID,newID);
		}
	}
	}catch(e){
		alert(e);
	}
}
/**
 * Workaround to the lack of DOM support in IE.
 * Element.getAttribute(name) returns reference to funcion
 * rather than attribute value. So, we must strip leading 
 * ("function anonymous..") and trailing stuff.
 * If possible, avoid using IE.
 */
function normalizeEventHandler(handler){
	ret=""+handler;
	if(ret.indexOf("function")==0){
		ret=ret.substring(23,ret.length-2);
	}
	return ret;
}
function setEnabled(container, enabled){
	var inputs=container.getElementsByTagName("input");
	for(var i=0;i<inputs.length;i++){
		inputs[i].removeAttribute("disabled");
	}
	inputs=container.getElementsByTagName("textarea");
	for(var i=0;i<inputs.length;i++){
		inputs[i].removeAttribute("disabled");
	}
}

/* ******* cportal/script/querySearch.js ******* */
function insertQuery(queryName, insQuery){
	var value=prompt("Vložte názov kritéria","");
	if(value){
		queryName.value=value;
		insQuery.value="true";
	}else{
		return false;
	}
}
function deleteQuery(queries, delQuery){
	if(queries.selectedIndex > 0){
		delQuery.value="true";
	}else{
		return false;
	}
}

//tato funkcia je pouzivana na nacitanie vysledkov vyhladavania pri starom sposobe searchu
function setThisQuery(){
	var qrs=document.getElementById("queries");
	if(qrs.selectedIndex != 0){
		setQuery(qrs.selectedIndex-1);
	}
}

function setThisSearchQuery() {
	var qrs=document.getElementById("queries");
	if(qrs.selectedIndex != 0){
		setSearchQuery(qrs.selectedIndex-1);
	}
}

//stara funkcia na reset
function searchReset(){
	var wordsVal=document.getElementById("wordsVal");
	var wordsOp=document.getElementById("wordsOp");
	var category=document.getElementById("category");
	var since=document.getElementById("since");
	var contentType=document.getElementById("contentType");
	var division=document.getElementById("division");
	var urlVal=document.getElementById("urlVal");
	wordsVal.value="*";
	setSelect(wordsOp,0);
	setSelect(category,0);
	setSelect(since,0);
//	setSelect(contentType,0);
	setSelect(division,0);
	setSelect(urlVal,0);
}

function searchResetAction(){
	var query=document.getElementById("query");
	var category=document.getElementById("category");
	var fromDate=document.getElementById("fromDate");
	var division=document.getElementById("division");
	var subsiteParam=document.getElementById("subsiteParam");

	var markInText=document.getElementById("markInText");
	var jump2first=document.getElementById("jump2first");
	var archivSearch=document.getElementById("archivSearch");
	
	query.value="";
	setSelect(category,0);
	setSelect(fromDate,0);
	setSelect(division,0);
	setSelect(subsiteParam,0);

	setCheckbox(markInText, 0);
	setCheckbox(jump2first, 0);
	setCheckbox(archivSearch, 0);
}

//tato funkcia je pouzivana na nacitanie vysledkov vyhladavania pri starom sposobe searchu
function setQuery(index){
	var wordsVal=document.getElementById("wordsVal");
	var wordsOp=document.getElementById("wordsOp");
	var category=document.getElementById("category");
	var since=document.getElementById("since");
	var contentType=document.getElementById("contentType");
	var division=document.getElementById("division");
	var urlVal=document.getElementById("urlVal");
	wordsVal.value=queries[index][1];
	setSelect(wordsOp,queries[index][3]);
	setSelect(category,queries[index][5]);
	setSelect(since,queries[index][7]);
//	setSelect(contentType,queries[index][9]);
	setSelect(division,queries[index][11]);
	setSelect(urlVal,queries[index][13]);
}

function setSearchQuery(index){
	var query=document.getElementById("query");
	var category=document.getElementById("category");
	var fromDate=document.getElementById("fromDate");
	var division=document.getElementById("division");
	var subsiteParam=document.getElementById("subsiteParam");

	var markInText=document.getElementById("markInText");
	var jump2first=document.getElementById("jump2first");
	var archivSearch=document.getElementById("archivSearch");

	query.value=queries[index][1];
	setSelect(category,queries[index][3]);
	setSelect(fromDate,queries[index][5]);
	setSelect(division,queries[index][7]);
	setSelect(subsiteParam,queries[index][9]);

	setCheckbox(markInText,queries[index][11]);
	setCheckbox(jump2first,queries[index][13]);
	setCheckbox(archivSearch,queries[index][15]);
}

function setCheckbox(sel, param) {
	if(param == 1){
		sel.checked=true;
	} else {
		sel.checked=false;
	}
}

function setSelect(sel, value){
	if(value == "" || value == 0){
		sel.selectedIndex=0;
	}else{
		for(var i=0;i<sel.options.length;i++){
			if(sel.options[i].value.indexOf(value)!=-1){
				sel.selectedIndex=i;
			}
		}
	}
}

/* ******* cportal/script/entityList.js ******* */
function toggleListCheckboxes(checkElem, fieldName, namespace) {
	var form = checkElem.form;
	l = form.elements.length;
	for (i=0; i<l; i++) {
		elem = form.elements[i];
		if (elem.type == "checkbox" && elem.name == fieldName) {
			elem.checked = checkElem.checked;
		}
	}
}


/* ******* cportal/script/form.js ******* */
function onFormSubmit(form){
	var ret=true;
	try{
//		ret=validate(form);
		if(ret){
			disableActions(form);
		}
	}catch(e){
	}
	try{
		selectSelected(form);
	}catch(e){
	}
//	return ret;
return true;
}
function disableActions(form){
	for(var i=form.elements.length-1;i>=0;i--){
		try{
			var elm=form.elements[i];
			var elmName=elm.nodeName.toLowerCase();
			if(elmName=='button' || (elmName=='input' && (elm.type=='submit' || elm.type=='button'))){
				elm.disabled=true;
			}
		}catch(e){
		}
	}
}

/* ******* cportal/script/contextHelp.js ******* */
var contextHelp;
var contextHelpIeHack;
function showContextHelp(event, id){
	contextHelp=document.getElementById(id);
	if (contextHelpIeHack==null) {
		var x = navigator.userAgent.indexOf('MSIE');
		contextHelpIeHack = (x > 0)&&(parseFloat(navigator.userAgent.substr(x+5,3)) < 8.0);
	}
	if (event.srcElement) {
		contextHelp.style.left=(event.offsetX+(contextHelpIeHack?findElementPosX(event.srcElement):0))+'px';
		contextHelp.style.top=(event.offsetY-4+(contextHelpIeHack?findElementPosY(event.srcElement):document.getElementsByTagName('html')[0].scrollTop))+'px';
	} else {
		contextHelp.style.left=(event.clientX+window.pageXOffset)+'px';
		contextHelp.style.top=(event.clientY+window.pageYOffset)+'px';
	}
	contextHelp.style.display='block';
}
function hideContextHelp(){
  if(contextHelp){
		contextHelp.style.display='none';
		contextHelp=null;
  }
}
function findElementPosY(obj) {
    curtop = 0;
    if (obj.offsetParent) {
        while (obj.offsetParent) {
            curtop += obj.offsetTop;
            obj = obj.offsetParent;
        }
    }//if offsetParent exists
    else if (obj.y)
        curtop += obj.y
    return curtop;
}//findElementPosY
function findElementPosX(obj) {
    curleft = 0;
    if (obj.offsetParent) {
        while (obj.offsetParent) {
            curleft += obj.offsetLeft;
            obj = obj.offsetParent;
        }
    }//if offsetParent exists
    else if (obj.x)
        curleft += obj.x
    return curleft;
}//findElementPosX

/* ******* cportal/script/simplePicker.js ******* */
function onCategoryChange(categories, selectID, firstOption, secondOption){
	var data=document.getElementById('tempList');
	data=getNthChild(data,0);
	var categoryID=categories.options[categories.selectedIndex].value;
	var category=findCategory(data, categoryID);
	var select=document.getElementById(selectID);
	var newOptions=new Array();
	newOptions=getOptions(category);
	newOptions.sort(compareOptions);
	replaceOptions(select.options, newOptions,firstOption,secondOption);
}
function replaceOptions(oldOptions, newOptions, firstOption, secondOption){
	oldOptions.length=0;
	if(firstOption != null){
		oldOptions[0]=firstOption;
	}
	if(secondOption != null){
		oldOptions[oldOptions.length]=secondOption;
	}
	for(var i=0;i < newOptions.length;i++){
		oldOptions[oldOptions.length]=newOptions[i];
	}
}
function findCategory(root, categoryID){
	if(root.getAttribute('title')==categoryID){
		return root;
	}
	var ret=null;
	var categories=getNthChild(root, 0).childNodes;
	for(var i=0;i < categories.length; i++){
		var node=categories[i];
		if(node.nodeType==1){
			ret=findCategory(node, categoryID);
			if(ret!=null) return ret;
		}
	}
	return null;
}
function getNthChild(root, n){
  var counter=0;
	for(var i=0;i < root.childNodes.length; i++){
		var node=root.childNodes[i];
		if(node.nodeType==1){
			if(counter++ ==n){
				return node;
			}
		}
	}
}
function getTextContent(root){
	var ret='';
	for(var i=0;i < root.childNodes.length; i++){
		var node=root.childNodes[i];
		if(node.nodeType==3){
				ret+=node.nodeValue;
		}
	}
	return ret;
}
function getOptions(category){
	var contracts=getNthChild(category, 1).childNodes;
	var ret=[];
	for(var i=0;i < contracts.length; i++){
		var node=contracts[i];
		if(node.nodeType==1){
			ret.push(new Option(getTextContent(node),node.getAttribute('title')));
		}
	}
	var categories=getNthChild(category, 0).childNodes;
	for(var i=0;i < categories.length; i++){
		var category=categories[i];
		if(category.nodeType==1){
			ret=ret.concat(getOptions(category));
		}
	}
	return ret;
}
function compareOptions(opt1, opt2) {
	txt1=opt1.text;
	txt2=opt2.text;
	return txt1.localeCompare(txt2);
}
function sortOptions(elem,startFrom) {
	var l = elem.options.length;
	if (startFrom >= l) return;
	var oldOpts = new Array();
	var selOpt;
	var selIdx = elem.selectedIndex;
	if (!startFrom) startFrom = 0;
	for (i = startFrom; i < l; i++) {
		opt = elem.options[i];
		oldOpts.push(opt);
		if (i == selIdx) {
			selOpt = opt;
		}
	}
	oldOpts.sort(compareOptions);
	for (i = 0; i < l-startFrom; i++) {
		if (oldOpts[i] == selOpt) {
			selIdx = i+startFrom;
			break;
		}
	}
	replaceOptions(elem.options, oldOpts, (startFrom > 0)? elem.options[0]:null, (startFrom > 1)? elem.options[1]:null);
	elem.selectedIndex = selIdx;
}
function simplePickerOnLoad() {
	var cElem = document.getElementById("Content");
	var forms;
	if (cElem) forms = cElem.getElementsByTagName("form");
	else forms = document.getElementsByTagName("form");
	if (forms) {
		for (i = 0; i < forms.length; i++) {
			var sElem = forms[i].elements['contractID'];
			if (sElem && sElem.id.substring(0,2) == "ns" && sElem.id.substring(sElem.id.length-"contractID1".length) == "contractID1") {
				var startFrom = 0;
				var l = sElem.options.length;
				while (startFrom < l && (sElem.options[startFrom].value == "-" || sElem.options[startFrom].value == "_")) startFrom++;
				sortOptions(sElem, startFrom);
			}
		}
	}
}

if (document.all) {
	window.attachEvent("onload", simplePickerOnLoad);
} else {
	window.addEventListener("load", simplePickerOnLoad, false);
}


/* ******* cportal/smashed-robots.js ******* */
namespace("sk.tmobile.smashed.robots");
sk.tmobile.smashed.robots.IFrame={
	resize:function(id, increment){
		var iframe=null, height=0, clientHeight=0;
		try{
			iframe=top.document.getElementById(id);
			if(!iframe)return;
			height=iframe.contentWindow.document.body.scrollHeight;
			clientHeight=iframe.contentWindow.document.body.parentNode.clientHeight;
			if(document.all && clientHeight > height){
				height=clientHeight;
			}
			if(height >= 25){
				height+=increment;
				iframe.style.height=height + "px";
				iframe.style.overflowY="hidden";
			}
		}catch(e){
			// document in standards compliant mode
		}
	}
}

