function _isNull(obj){
	if (typeof(obj) == "undefined")
	  return true;
	  
	if (obj == undefined)
	  return true;
	  
	if (obj == null)
	  return true;
	 
	return false;
}

function _random()
{
    var rnd="";
    for(var i=0;i<10;i++)
        rnd+=Math.floor(Math.random()*10);
    return rnd;
}

function _refresh() { window.location.reload( false );}

function getStlInputParameters(ajaxDivID)
{
var ajaxElement = document.getElementById(ajaxDivID);
if(ajaxElement == null) return;

var inputs = ajaxElement.getElementsByTagName("input");
var myhash = new Hash();
if(inputs != null && inputs.length > 0)
{
	for(var i = 0 ;i < inputs.length; i++)
	{
		var name = inputs[i].getAttribute('name');
		if (name != null && name.length > 0)
		{
			var values = '';
			if(inputs[i].type=="radio" || inputs[i].type=="checkbox")
			{
				if (inputs[i].checked)
				{
					if (myhash.get(name) != null)
					{
						values = myhash.get(name);
						values = values + "," + inputs[i].value;
					}
					else
					{
						values = inputs[i].value;
					}
					myhash.set(name, values.replace(/</g,"_lessthan_"));
				}
			}
			else if (inputs[i].type=="file")
			{
				
			}
			else
			{
				values = inputs[i].value;
				myhash.set(name, values.replace(/</g,"_lessthan_"));
			}
		}
	}
}

var textareas = ajaxElement.getElementsByTagName("textarea");
if(textareas != null && textareas.length > 0)
{
	for(var i = 0 ;i < textareas.length; i++)
	{
		var name = textareas[i].getAttribute('name');
		if (name != null && name.length > 0)
		{
			myhash.set(name, textareas[i].value.replace(/</g,"_lessthan_"));
			try{
				var editor = FCKeditorAPI.GetInstance(name);
				if (editor != undefined)
				{
					myhash.set(name, editor.GetXHTML().replace(/</g,"_lessthan_")); 
				}
			}catch(e){}		
		}
	}
}

var selects = ajaxElement.getElementsByTagName("select");
if(selects != null && selects.length > 0)
{
	for(var i = 0 ;i < selects.length; i++)
	{
		var name = selects[i].getAttribute('name');
		if (name != null && name.length > 0)
		{
			var values = '';
			try{
				for(var j = 0 ;j < selects[i].options.length; j++)
				{
					if (selects[i].options[j].selected)
					{
						if (values != '')
						{
							values = values + "," + selects[i].options[j].value;
						}
						else
						{
							values = selects[i].options[j].value;
						}
					}
				}
				myhash.set(name, values.replace(/</g,"_lessthan_"));
			}catch(e){}		
		}
	}
}

return myhash;
}

function stlInputSubmit(resultsPageUrl, ajaxDivID, successTemplate, failureTemplate){
	try{
		var myhash = getStlInputParameters(ajaxDivID);
		myhash.set('successTemplate', successTemplate);
		myhash.set('failureTemplate', failureTemplate);
		var option = {
			method:'post',
			parameters: myhash
		};
		new Ajax.Updater ({success:ajaxDivID}, resultsPageUrl, option);
	}catch(e){}
}

function stlInputReplaceTextarea(attributeName, editorUrl, height, width){
	var oFCKeditor = new FCKeditor(attributeName) ;
	oFCKeditor.BasePath = editorUrl ;
	oFCKeditor.Config['CustomConfigurationsPath'] = editorUrl + '/my.config.js' ;
	oFCKeditor.ToolbarSet = 'MyToolbarSet' ;
	if (height > 0){
		oFCKeditor.Height = height ;
	}else{
		oFCKeditor.Height = 360 ;
	}
	if (width > 0){
		oFCKeditor.Width = width ;
	}else{
		oFCKeditor.Width = 550 ;
	}
	oFCKeditor.ReplaceTextarea();
}

function stlGetQueryString(isWidthAnd)     
{ 
	var queryString = document.location.search;
	
	if (queryString == null || queryString.length <= 1) return "";
	if (isWidthAnd){
		return "&" + decodeURI(decodeURI(queryString.substring(1)));
	}else{
		return decodeURI(decodeURI(queryString.substring(1)));
	}
}

function stlGetQueryStringValue(sParam)
{   
  var   sBase   =   window.location.search   
  var   re         =   eval("/"   +   sParam   +   "=([^&]*)/")   
  if   (re.test(sBase)){   
	  return   RegExp.$1   
  }   
  else{   
	  return "";
  }   
}
