function changeOnSelect(selectIds, targetId, operation, baseStr, delimiter) {
  
  var selectValues = new Array();  

  j=0;
  if (!selectIds.join) {
    temp = selectIds;
    selectIds = new Array();
    selectIds[0] = temp;
  }

  for (i = 0; i < selectIds.length; i++) {
    var objSel = document.getElementById(selectIds[i]);

    if ( objSel.selectedIndex != -1) {
      selectValues[j++] = objSel.options[objSel.selectedIndex].value;
    }    
  }
  
  if (typeof(delimiter) == 'undefined') {delimiter="-";}
  resultStr = "";
  for (var i = 0; i < selectValues.length; i++) {
    resultStr += selectValues[i];
    if (i != (selectValues.length-1)) {resultStr += delimiter;}
  }

  if (operation=="ref") {
    var ref = document.getElementById(targetId);
    ref.href = baseStr + resultStr;
  }
}

function isArray(obj) {
	if (!obj) return false;

   if (obj.constructor.toString().indexOf("Array") == -1)
      return false;
   else
      return true;
}

function trimString(sInString){
	if (typeof(sInString) == "undefined") return "";
	sInString = sInString.replace(/ /g," ");
	return sInString.replace(/(^\s+)|(\s+$)/g, "");
}


function changeVisibility(elId, childTag) {
	el = document.getElementById(elId);
	if (el) {
		children = el.getElementsByTagName(childTag);
		if (children) {
			for (i=0; i< children.length; i++) {
				if (children[i]) {
					if (children[i].style.visibility == "hidden") {
						children[i].style.visibility = "visible";
						children[i].style.display = "block";
					} else {
						children[i].style.visibility = "hidden";
						children[i].style.display = "none";
					}				
				}			
			}
		}		
	}
}

function replaceString(txt,cut_str,paste_str){
	var f=0;
	var ht='';
	ht = ht + txt;
	f=ht.indexOf(cut_str);
	while (f!=-1){
		f=ht.indexOf(cut_str);
		if (f>0){ht = ht.substr(0,f) + paste_str + ht.substr(f+cut_str.length);};
	};
	return ht
};

function getParametersMap(parameterStr) {
	//alert("1"+parameterStr);
	if (!parameterStr) return new Array();
	if (parameterStr.indexOf("=")==-1) return new Array();
	var paramSets = parameterStr.split(",");
	var result = new Array();	
	for (var i = 0; i < paramSets.length; i++) {		
		var keyVal = paramSets[i].split("=");
		if (keyVal[0]) {
			var key = trimString(keyVal[0]);
			if (key.length) result[key] = trimString(keyVal[1]); 
		}
	}
	return result;
}

/* keep this comment to reuse freely: http://www.fullposter.com/?1 */
function getParent(element, parent){
	if(typeof element=="string"){element=document.getElementById(element);};
	if(!element){return null;};
	var elements=[];
	if(typeof parent!="string"){/*no parent: gets all parents till #document*/
		while(element.parentNode){
		element=element.parentNode;
		elements.unshift(element);
			if(element==parent){return elements;};
		}
	}
	else{/*string, presumes you want to locate the first parent node that is such TAG*/
	parent=parent.toUpperCase();
		while(element.parentNode){
		element=element.parentNode;
		elements.unshift(element);
			if(element.nodeName && element.nodeName.toUpperCase()==parent){return elements;};
		}
	};
	return elements;
}

function isDefined( variable) {
    return (typeof(window[variable]) == "undefined")?  false: true;
}

function getFormParameters(formId, submitName) {

	var result = new Array();
	var parentElement;
	if ((typeof(formId) != "undefined") && (formId.length))	
		parentElement = document.getElementById(formId);
	//alert(formId + " " + parentElement);
	if (!parentElement) parentElement = document;
	submitName = submitName || "";
	
	var textareas = parentElement.getElementsByTagName('textarea');
	for (var i = 0; i < textareas.length; i++) {
		if (textareas[i] && textareas[i].name) {
			var value = null;
			var got = false;
			if (tinyMCE) {				
				var tinyMCETextObj = tinyMCE.get(textareas[i].id);
				if (tinyMCETextObj) {
					value = tinyMCETextObj.getContent();
					result[textareas[i].name] = encodeURIComponent(value);
					got = true;
					//alert(textareas[i].id + " / " +tinyMCETextObj.getContent());
				}
			} 
			if (!got) {
				result[textareas[i].name] = encodeURIComponent(textareas[i].value);
			}						
		}
	}
		
	var inputs = parentElement.getElementsByTagName('input');
	var buttons = parentElement.getElementsByTagName('button');
	for (var i = 0; i < buttons.length; i++) {
		inputs[inputs.length] = buttons[i];
	}
	
	for (var i = 0; i < inputs.length; i++) {
		if (inputs[i] && inputs[i].name) {						
			if (typeof(submitName) == "undefined") {
				result[inputs[i].name] = encodeURIComponent(inputs[i].value);
			} else if (((inputs[i].type!='submit')&&(inputs[i].type!='SUBMIT'))
			  || (trimString(inputs[i].name)==trimString(submitName))) {
			  
			  	if ((inputs[i].type=='checkbox') || (inputs[i].type=='CHECKBOX')) {
			  		if (inputs[i].checked) {
			  			result[inputs[i].name] = encodeURIComponent(inputs[i].value);
			  		} 
			  	} else {
					result[inputs[i].name] = encodeURIComponent(inputs[i].value);
				}
			}			
		}
	}
	
	var selects = parentElement.getElementsByTagName('select');	
	for (var i = 0; i < selects.length; i++) {
		if (selects[i] && selects[i].name)
			result[selects[i].name] = encodeURIComponent(selects[i].value);
	}
	
	return result;
}

function showElement(elementId) {
	element = document.getElementById(elementId);
	element.className = 'visible'; // element.style.display = 'block';
}

function hideElement(elementId) {
	element = document.getElementById(elementId);
	element.className = 'invisible'; // element.style.display = 'none';
}

function closeWindow() {
	window.opener.focus();
	window.close();
}

function changeAccessType() {
	var element = document.getElementsByName("content-access");
	var chosen;
	chosen=element.options[element.selectedIndex].value;
	if (chosen == "private") {
		
	} else {
	
	}
}
/*function showBlock(id) {
	if (document.getElementById(id).style.display == 'none') {
		document.getElementById(id).style.display='inline';
	} else {
		document.getElementById(id).style.display = 'none';
}

function showContentIdsList(sourceId, contentIds) {
	if (document.getElementById(id).style.display == 'none') {
		document.getElementById(id).style.display='inline';
	} else {
		document.getElementById(id).style.display = 'none';
}*/
