
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}


function getMovieRef(movieName) {
	if (navigator.appName.indexOf("Microsoft") != -1) {
		return window[movieName];
	} else {
		return document[movieName];
	}
}

function ParamEntry(k, v) {
	this.key = k;
	this.value = v;
}


function getParameterValue(params, key) {
	
	for(i=0; i< params.length; i++){
		if(params[i].key == key) {
			return params[i].value;
		}
	}
	
	return "";
}


function parseString(toParse, delimiter) {

	retVal = new Array();

	if (toParse.length > 0) { 

		searchString = toParse.substring(1, toParse.length); 
		var searchStringArray = searchString.split(delimiter); 

		for (var i = 0; i <= searchStringArray.length - 1; i++) { 

			var left = searchStringArray[i].substring(0, searchStringArray[i].indexOf("=")); 
			var right = searchStringArray[i].substring(searchStringArray[i].indexOf("=") + 1, searchString.length); 
			retVal[i] = new ParamEntry(left, right);

		} 
	} 

	return retVal;
}

function hideElement(elementId) {
	document.getElementById(elementId).style.display = "none";
}


function showElement(elementId) {
	document.getElementById(elementId).style.display = "";
} 


function isElementVisible(elementId) {
	return (document.getElementById(elementId).style.display != "none");
}



function hideAllShowCategoryList(showCLPane) {

	if (window.hideAjaxCommentIndexPane) {
		hideAjaxCommentIndexPane();
	}
	
	if (window.hideAjaxCommentSubmissionPane) {
		hideAjaxCommentSubmissionPane();
	}

	if (window.hideSendToAFriendPane) {
		hideSendToAFriendPane();
	}
	
	if (showCLPane && window.showCategoryListPane) {
		showCategoryListPane();
	}
	
	if(window.hideDirectVideoLink) {
		hideDirectVideoLink();
	}
	
	if(window.hideEmbedPane) {
		hideEmbedPane();
	}
	
	if(window.hideAjaxRatedPane) {
		hideAjaxRatedPane();
	}
}


function setClassForElementById(elementId, className) {
	document
		.getElementById(elementId)
		.setAttribute("class", className);
	document
		.getElementById(elementId)
		.setAttribute("className", className);
}


function setClassForElement(element, className) {
	element.setAttribute("class", className);
	element.setAttribute("className", className);
}

//****************************************************************************
//
// Function:   sendXMLHttpGETRequest
//
// Parameters: xmlElement - an xml node
//             name of child to extract value
//
// Purpose:    Wrapper function to simplify sending and process xml requests
//
// Returns:    url - Url to which request is sent
//             responseFunction - called on the response xml when the data is
//               returned from the server
//             extraData - passed to the response function as a second param
//
//****************************************************************************

function sendXMLHttpGETRequest(url, responseFunction, extraData) {

  var getReqResp = false;

  if (window.XMLHttpRequest) {
    getReqResp = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    getReqResp = new ActiveXObject("Microsoft.XMLHTTP");
  }

  if (getReqResp) {

    getReqResp.open("GET", url, true);
    getReqResp.send(null);

    getReqResp.onreadystatechange = function() {
      if (4 == getReqResp.readyState) {
        if (200 == getReqResp.status) {
          if (null != getReqResp.responseXML) {
            responseFunction(getReqResp.responseXML, extraData);
          } else {
            alert("No data received from server");
          }
        } else {
          alert("XMLHttpRequest failed with response code " +  getReqResp.status);
        }
      } 
      return;
    }

  } else {
    alert("Browser does not support XMLHttpRequest");
  }
  return;
}


//****************************************************************************
//
// Function:   sendXMLHttpPOSTRequest
//
// Parameters: xmlElement - an xml node
//             name of child to extract value
//
// Purpose:    Wrapper function to simplify sending and process xml requests
//
// Returns:    url - Url to which request is sent
//             responseFunction - called on the response xml when the data is
//               returned from the server
//             extraData - passed to the response function as a second param
//
//****************************************************************************

function sendXMLHttpPOSTRequest(url, parameters, responseFunction) {

	var postReqResp = false;

	if (window.XMLHttpRequest) {
	  postReqResp = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
	  postReqResp = new ActiveXObject("Microsoft.XMLHTTP");
	}


	if (postReqResp) {

	  postReqResp.open('POST', url, true);
  	postReqResp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		postReqResp.send(parameters);

	  postReqResp.onreadystatechange = function() {
	    if (4 == postReqResp.readyState) {
	      if (200 == postReqResp.status) {
	        if (null != postReqResp.responseXML) {
	          responseFunction(postReqResp.responseXML);
	        } else {
	          alert("No data received from server");
	        }
	      } else {
	        alert("XMLHttpRequest failed with response code " + postReqResp.status);
	      }
	    } 
			return;
		}
  } else {
    alert("Browser does not support XMLHttpRequest");
  }
  return;
}


function addCustomOnClickHandler(elementId, customBeforeOrigHandlerFunction) {

	var element = document.getElementById(elementId);
	var elementOnClickHandler = element.onclick;

	element.onclick = function() {

		// add your custom handler here
		customBeforeOrigHandlerFunction();

		// do what you eventually were supposed to do
		if (null != elementOnClickHandler) {
			elementOnClickHandler();
		}
	}
}


function setCustomOnClickHandler(elementId, customBeforeOrigHandlerFunction) {
	document.getElementById(elementId).onclick = customBeforeOrigHandlerFunction;
}


function isInArray(arrayObj,elemnt) {
	for (var ii=0; ii < arrayObj.length; ii++){
		if (elemnt == arrayObj[ii]) return true;
	}		
	return false;			
}

//
// Add events to an object in a cross browser compliant fashion.
//
function crossBrowserAddEvent(object, eventType, method) {
  if (object.attachEvent) {
    object.attachEvent("on" + eventType, method);
  } else if (object.addEventListener) {
    object.addEventListener(eventType, method, false);
  }
}



function trimEscapeSequences (t) {
 return t.replace(/^[ \r\n\t]*/, "").replace(/[ \r\n\t]*$/, "");
}


function stripTags (t) {
while (t.match(/<.*>/)) t = t.replace(/<[^>]*>/, "");
return t;
}


function submitForm (e) {  
	if(e && e.which){
		e = e;
		characterCode = e.which;
	}
	else{
		e = e;
		characterCode = e.keyCode;
	}	 
	
	if(characterCode == 13){
		document.forms[0].submit();
		return false;
	}
		return true;
}<!-- PTV Cache: persloche04/tomcatvip Sat, 22 May 2010 06:25:32 GMT / 86400 (0) -->