function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function changeBg(elem,over)
{
	if(over) elem.style.backgroundColor = '#39AeB2';
	else elem.style.backgroundColor = '#FFFFFF';
	
	return true;
}

function pagination(url)
{
	document.forms['searchform'].action=url;
	document.forms['searchform'].submit();
}

function setChecked(id)
{
	var elem = document.getElementById(id);
	if(elem.checked)
	{
		elem.checked = false;
	}
	else
	{
		elem.checked = true;
	}
}

function launchwin(winurl,winname,winfeatures)
{
	var newwin = window.open(winurl,'',winfeatures);
}

function launchwin(winurl,winname,winfeatures)
{
	window.open(winurl,winname,winfeatures);
}

function popupSized(location, framename, width, height) {
    window.open(location,"","height=" + height + ",width=" + width + ",top=0, left=5, channelmode=0,dependent=0,directories=0,fullscreen=0,location=0,menubar=0,resizable=1,scrollbars=1,status=1,toolbar=0", framename?framename:"");
}

var selectedArray = new Array();

var selectedTemplate;
var words;

function in_array(value)
{
	for(var i=0;i < selectedArray.length;i++)
	{
		if (selectedArray[i].value == value) return true;
	}
	return false
}

function delete_word(value)
{
	var _array = new Array();
	for(var i=0; i < selectedArray.length; i++)
	{                                
		if(selectedArray[i].value != value)
		{
			var newSelected = new SelectedWord(selectedArray[i].value, selectedArray[i].text);
			_array[_array.length] = newSelected;                    
		}
	}
	selectedArray = _array;
	write_words(selectedArray);
}

function SelectedWord(value, text)
{            
	this.value = value;
	this.text = text;
}

function AddWord(select) 
{
	var selectedId = select.selectedIndex;
	var id = select.options[selectedId].value;
	var name = select.options[selectedId].text;
	if(id!=-1)
	{
		if(!in_array(id))
		{
			word = new SelectedWord(id,name);
			selectedArray.push(word);
			write_words(selectedArray);
		}
	}
}

function add_word(_value,_text)
{
	var id = parseInt(_value);
	if(!in_array(id))
	{
		word = new SelectedWord(id,_text);
		selectedArray.push(word);
		write_words(selectedArray);
	}
}

function add_useremail(_value,_text)
{
	var id = _value;
	if(!in_array(id))
	{
		word = new SelectedWord(id,_text);
		selectedArray.push(word);
		write_words(selectedArray);
	}
}

function write_words(selectedArray)
{
	var str = "";            
	for (var i = 0 ;i < selectedArray.length;i++)
	{                
		var value = selectedArray[i].value;
		var text = selectedArray[i].text;
		str+=selectedTemplate.replace(/WORDID/g,value).replace(/WORDTEXT/g,text).replace(/&lt;/,"<").replace(/&gt;/,">")+"<br/>";
	} 
	
	if(words) 
	{                
		words.innerHTML=str
	}
}  


var selectedFilesArray = new Array();

var selectedFilesTemplate;
var wordsFile;

function in_FileArray(value)
{
	for(var i=0;i < selectedFilesArray.length;i++)
	{
		if (selectedFilesArray[i].value == value) return true;
	}
	return false
}

function delete_file(value)
{
	var _array = new Array();
	for(var i=0; i < selectedFilesArray.length; i++)
	{                                
		if(selectedFilesArray[i].value != value)
		{
			var newSelectedFile = new SelectedFile(selectedFilesArray[i].value, selectedFilesArray[i].text);
			_array[_array.length] = newSelectedFile;                    
		}
		else
		{
			if ( typeof( deleteFile ) == 'function' ) deleteFile( selectedFilesArray[i].value ) ;
		}
	}
	selectedFilesArray = _array;
	write_FilesWords(selectedFilesArray);
}

function SelectedFile(value, text)
{            
	this.value = value;
	this.text = text;
}

function AddFile(id,fileName) 
{
	if(id!=-1)
	{
		if(!in_FileArray(id))
		{
			word = new SelectedFile(id,fileName);
			selectedFilesArray.push(word);
			write_FilesWords(selectedFilesArray);
		}
	}
}

function write_FilesWords(selectedFilesArray)
{
	var str = "";            
	for (var i = 0 ;i < selectedFilesArray.length;i++)
	{                
		var value = selectedFilesArray[i].value;
		var text = selectedFilesArray[i].text;
		str+=selectedFilesTemplate.replace(/WORDID/g,value).replace(/WORDTEXT/g,text).replace(/&lt;/,"<").replace(/&gt;/,">")+"<br/>";
	} 
	
	if(wordsFile) 
	{                
		wordsFile.innerHTML=str
	}
}

function getTextElementValueById(elemId)
{
	var elem = document.getElementById(elemId);
	return elem.value;
}

function getSelectOptionValueById(elemId)
{
	var select = document.getElementById(elemId);
	return select.options[select.selectedIndex].value;
}

function isCheckedByElemId(elemId)
{
	var elem = document.getElementById(elemId);
	if(elem.checked) return true;
	else return false;
}

function isCheckedByElemIdB(elemId)
{
	var elem = document.getElementById(elemId);
	if(elem.checked) return 1;
	else return 0;
}


function setTextElementValueById(elemId,text)
{
	var elem = document.getElementById(elemId);
	elem.value = text;
}

function setSelectOptionValueById(elemId,optionValueId)
{
	var select = document.getElementById(elemId);
	var i=0;
    for(i=0;i<select.options.length;i++)
    {
    	if(select.options[i].value==optionValueId)
    	{
    		select.selectedIndex = i;
    		break;
    	}
    }
}

function setCheckedByElemId(elemId,val)
{
	var elem = document.getElementById(elemId);
	elem.checked = val;
}
