function setHeight(container,numItems,perRow,h){
	if(numItems < 1)numItems = 1
	$(container).style.height = ((Math.ceil(numItems/perRow))*h)+"px";
}
function getWidth(){
  var left = 0;
  if (self.innerHeight){
    left = self.innerWidth;
  }else if (document.documentElement && document.documentElement.clientHeight){
    left = document.documentElement.clientWidth;
  }else if (document.body){
    left = document.body.clientWidth;
  }
  return left;
}
//for placing alertPopup
function findPosX(obj){
	var curleft = 0;
	if(obj.offsetParent)
		while(1){
			curleft += obj.offsetLeft;
			if(!obj.offsetParent)break;
			obj = obj.offsetParent;
		}
	else if(obj.x)curleft += obj.x;
	return curleft;
}
function findPosY(obj){
	var curtop = 0;
	if(obj.offsetParent)
		while(1){
			curtop += obj.offsetTop;
			if(!obj.offsetParent)break;
			obj = obj.offsetParent;
		}
	else if(obj.y)curtop += obj.y;
	return curtop;
}

var ajaxRequest = function(url, completionFn, requestType, parameters){
	var params = '';
	if(parameters){
		params = parameters;
		console.log('params:' + parameters);
	}
	var requestType = 'get';
	if(requestType){
		console.log('method: post');
		requestType = 'post';
	}
	try {
		new Ajax.Request(url+'&r='+Math.random(), {
			method: requestType,
			parameters: params,
			onComplete: function(transport){
				completionFn();
				if(transport.responseText.evalJSON().Result == 'OK'){
					console.log('response from ajaxRequest: ' + transport.responseText);
					return "OK";
				} else {
					return "ERROR";
				}
			},
		    onFailure: function(){
			    alert('Ajax request failed, please try again.');
			    console.error('Ajax request failed. URL: ' + url);
			    return "ERROR";
			}
		});
	} catch (err){
		console.error('Ajax request failed. URL: ' + url);
		console.log("ERROR: " + err);
		return "ERROR";
	}
}

var getCacheBuster = function(){
	var d = new Date();
	return "cb"+d.getFullYear()+d.getUTCMonth()+d.getUTCDay()+d.getHours()+d.getMinutes()+"";
}
//Usage: setSelectedIndex(document.getElementById("selectboxname"),"3");
function setSelectedIndex(s, valsearch){
	// Loop through all the items in drop down list
	for (i = 0; i< s.options.length; i++){
		if (s.options[i].value == valsearch){
			// Item is found. Set its property and exit
			s.options[i].selected = true;
			break;
		}
	}
	return;
}
var isInt = function(sText){
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var c;
   for(var i=0;i < sText.length && IsNumber == true;i++){ 
	   c = sText.charAt(i); 
	   if (ValidChars.indexOf(c) == -1){
		   IsNumber = false;
      }
   }
   return IsNumber;
}
//for placing popups
function findScrollPos(){
	var windowScrollTop = 0;
  if(typeof(window.pageYOffset) == 'number')windowScrollTop = window.pageYOffset;
  else if(document.body && (document.body.scrollLeft || document.body.scrollTop))windowScrollTop = document.body.scrollTop;
  else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop))windowScrollTop = document.documentElement.scrollTop;
	return windowScrollTop;
}
//for "activating" inputs
function editFld(){
  this.value = "";
	this.removeClassName('noclick');
	this.addClassName('clicked');
}