function init()  {
	// On every page load...
	return true;
}


function popup(url, windowname, width, height, menue, scroller, resizable) {
	var sizeParams = '';
	if(width) {
		sizeParams += 'width=' + width + ',';
	}
	if(height) {
		sizeParams += 'height=' + height + ',';
	}
	newWindow = window.open(url, windowname, sizeParams + 'toolbar=0,location=0,directories=0,status=0,menubar=' + menue + ',scrollbars=' + scroller + ',resizable=' + resizable);
	newWindow.focus();
}

function resizeWindowToContent(elementID) {
	var element = document.getElementById(elementID);
	if(element) {
		var neededHeight = element.offsetHeight + 100;
		var neededWidth = element.offsetWidth + 16;
		window.resizeTo(neededWidth, neededHeight);
	}
}

function setCatalogs(inputFieldName, destinationWrap) {
	var inputs = document.getElementsByTagName('input');
	if(inputs.length > 0) {
		var allCatalogsString = '';
		for(var i=0; i < inputs.length; i++) {
			var input = inputs[i];
			if(input.name == inputFieldName && input.checked) {
				allCatalogsString += input.title + ', ';
			}
		}
		
		allCatalogsString = allCatalogsString.substring(0, (allCatalogsString.length-2));
		
		var destinationWrapElement = document.getElementById(destinationWrap);
		if(destinationWrapElement) {
			var destinationField = destinationWrapElement.getElementsByTagName('input')[0];
			if(destinationField) {
				destinationField.value = allCatalogsString;
			}
		}
	}
}

function presetCatalogFields(sourceWrap, destinationFieldName) {
	var sourceWrapElement = document.getElementById(sourceWrap);
	if(sourceWrapElement) {
		var sourceField = sourceWrapElement.getElementsByTagName('input')[0];
		if(sourceField) {
			var inputs = document.getElementsByTagName('input');
			if(inputs.length > 0) {
				for(var i=0; i < inputs.length; i++) {
					var input = inputs[i];
					if(input.name == destinationFieldName) {
						if(sourceField.value.indexOf(input.title) != -1) {
							input.checked = true;
						}
					}
				}
			}
		}
	}
}

function checkRequestForm() {
	var requestSenderSpan = document.getElementById('requestSender');
	if(requestSenderSpan) {
		var email = requestSenderSpan.getElementsByTagName('input')[0];
	}
	
	if(! checkEmail(email.value)) {
		new Effect.Appear(document.getElementById('errorEmail'), {'duration':0.4});
		return false;
	} else  {
		new Effect.Fade(document.getElementById('errorEmail'), {'duration':0.4});
		return true;	
	}
}

function checkEmail(email) {
  var proto  = "(mailto:)?";
  var usr    = "([a-zA-Z0-9][a-zA-Z0-9_.-]*|\"([^\\\\\x80-\xff\015\012\"]|\\\\[^\x80-\xff])+\")";
  var domain = "([a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*[a-zA-Z0-9][a-zA-Z0-9._-]*\\.[a-zA-Z]{2,5}";
  var regex  = "^" + proto + "?" + usr + "\@" + domain + "$";

  var rgx    = new RegExp(regex);
  return rgx.exec(email) ? true : false;
}

