

function addLoadEvent(func) {
  var oldonload = window.onload;
  window.onload = function() {
	  if(typeof oldonload == 'function'){
		  oldonload();
	  }
      func();
  }
}

function changeText(htmlElement, newText){

	htmlElement.textContent = newText;
	// For some versions of IE
	htmlElement.innerText = newText;
}

function changeCssClass(htmlElement, newCssClass){
	htmlElement.setAttribute("class", newCssClass);
	// For some versions of IE
	htmlElement.setAttribute("className", newCssClass); 
}

function changeCssClassById(elementId, newCssClass){
	
	var element = document.getElementById(elementId);
	changeCssClass(element, newCssClass);
}

function endsWith(testString, endingString){
    if(endingString.length > testString.length) return false;
    return testString.indexOf(endingString)==(testString.length-endingString.length);
}

function getJsfNamedDescendant(nonSeamAncestorId, seamDescendantTagName, seamDescendantPartialId){
	
	var parent = document.getElementById(nonSeamAncestorId);
	if(undefined != parent){
	
		var elegibleDescendants = parent.getElementsByTagName(seamDescendantTagName);
		for(var i = 0; i < elegibleDescendants.length; i++){
		
			var curDescendant = elegibleDescendants[i];
			var curDescendantId = curDescendant.getAttribute("id");
			
			if(undefined != curDescendantId && endsWith(curDescendantId, seamDescendantPartialId)){
				
				return curDescendant;
			}
		}
	}
	
	return null;
}

function checkOrUnchecks (masterCheckBoxName) {
	
	var master = document.getElementById(masterCheckBoxName);

	if (master != null)
	{
		var inputs = document.getElementsByTagName("input");
		
		if (inputs != null && inputs.length > 0)
		{
			for ( i=0; i < inputs.length; i++ ){
				if(inputs[i].type == "checkbox"){
					inputs[i].checked = master.checked; 
				}
			}
		}
	}
}

/**
 * Verifies if the categories filter feature is available in this page, and if true it will change rightColumn margin-top to be below than categories filter.
 */
jQuery.noConflict()(window).ready(function () {
	moveRightColumnToItsPosition();
});
 
function moveRightColumnToItsPosition() {
	if(jQuery.noConflict()('.othersFilters').offset().top != null && jQuery.noConflict()('.othersFilters').offset().top != 0) {
		var margin = 5;
		var rightColumnTopMargin = (jQuery.noConflict()('.searchOptions').offset().top - jQuery.noConflict()('#contentWrapper').offset().top) + jQuery.noConflict()('.cardsList .filter .bg').height() + margin;
		
		jQuery.noConflict()('#colRight').css('padding-top', rightColumnTopMargin);
		
		jQuery.noConflict()('.completeAccount').addClass("absolute");
	}
	
	jQuery.noConflict()('#colRight').removeClass("hide");
}

var $otherOptions=jQuery.noConflict();

function targetEventShowOtherOptions(event) {
	var element = event.target || event.srcElement;
	var selected = $otherOptions(element);

	if(selected != null){
		
		var menu = selected.parent().find('div').find('div');
		
		if(menu != null || menu != undefined) {
		
			if(event.type == 'mouseover') {
				if($otherOptions(menu).hasClass("displayNone"))
					$otherOptions(menu).removeClass("displayNone");
				
				if($otherOptions(menu).hasClass("displayBlock"))
					$otherOptions(menu).removeClass("displayBlock");
				
				return;
			}
			
			if(event.type == 'click') {
				var display = menu.css('display');
				
				if(display == 'none') {									
					
					$otherOptions(menu).addClass("displayBlock");
					
					if($otherOptions(menu).hasClass("displayNone")) {
						$otherOptions(menu).removeClass("displayNone");
					}
				}
				else
				{
					if($otherOptions(menu).hasClass("displayBlock")) {
						$otherOptions(menu).removeClass("displayBlock");
					}
						
					$otherOptions(menu).addClass("displayNone");
				}
			}
		}
	}
}


var $message=jQuery.noConflict();
function hideFadeShowAppearMessage(targetDiv) {
	$message(targetDiv).toggleClass('active');
	$message(targetDiv).toggleClass('unread',false);
}



var $moreActions = jQuery.noConflict();
$moreActions(document).ready(function () {
	putCssInLastMenuItem();
});

function putCssInLastMenuItem(){
	var last = $moreActions('.subMenuWrapper ul li:last-child');
	
	if(last == null || last == undefined || last.size() == 0)
		return;
	
	$moreActions(last).addClass('last');

}

var $errorMessageHide = jQuery.noConflict();

function hideMessage() {
	var messagesErrorDiv = $errorMessageHide('#messagesErrorDiv');
	
	if(messagesErrorDiv == null || messagesErrorDiv == undefined)
		return;
	
	var existSecondMessage = $errorMessageHide(messagesErrorDiv).find('#errorMessage');
	
	if(existSecondMessage == null || existSecondMessage == undefined || existSecondMessage.length == 0) 
		return;
	
	var firstH3 = $errorMessageHide(messagesErrorDiv).find('#errorTryAgain');
	if(firstH3 != null && firstH3 != undefined)
		$errorMessageHide(firstH3).css('display','none'); 
}











