var changed = false;
var textChanged = "";
var url = "scripting/request.asp";

function failure(transport) {
	alert(transport.responseText);
}

function getFormElements(form, args) {
	var elements = form.elements;

	for(var i=0; i<elements.length; i++) {
  	switch(elements[i].type.toLowerCase()) {
      case 'checkbox':
				args[elements[i].id] = elements[i].checked ? 1 : 0;
				break;
				
			case 'radio':
				if(elements[i].checked)
					args[elements[i].id] = elements[i].value;
				break;

			default:
				var value = elements[i].value.replace(/'/g, "''");
				args[elements[i].id] = value.replace(/"/g, "&quot;");
    }
	}
	return args;
}

//function ajaxRequest(form, parameters) {
function ajaxRequest(form) {
//	var parameters = getFormElements(form, Object.extend(parameters || {}, {className:form.className, method:form.name}));
	var parameters = getFormElements(form, {className:form.className, method:form.name});
	new Ajax.Request(url, {onFailure:failure, method:'post', parameters:parameters});
}

function ajaxUpdate(form) {
	var parameters = getFormElements(form, {className:form.className, method:form.name});
	new Ajax.Updater("dummy", url, {onFailure:failure, method:'post', evalScripts:true, parameters:parameters});
}

function sendSql(sql) {
	new Ajax.Request(url, {onFailure:failure, method:'post', parameters:{sql:sql}});
} 

function showHelp(key) {
	MM_openBrWindow('help_window.asp?key='+key,'','width=300,height=200,left=500,top=100');
}

function wopen(url,features) {
	if(isChanged() == false) {
		if(features)
			window.open(url,"Profiler",features);
		else
			window.open(url);		
	}
}

function MM_ConfirmopenBrWindow(theURL,winName,features,theform,thedialog) { //v2.0
	if(isChanged() == false) {
		window.open(theURL,winName,features);
	}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
	// windows name is uniqe
	winName = new Date().getTime();
	window.open(theURL,winName,features);
}

function etutorInfo(id, register) {
	MM_openBrWindow("etutor_info.asp?id="+id+"&register="+register, "", "resizable=yes,height=400,width=500");
}

function etutorPreview(id) {
	course = window.open("etutor_preview.asp?id="+id, "etcoursecontent", "scrollbars=yes,dependent=yes,status=no,resizable=yes,height=720,width=1020");
	course.focus();
}

function modelessDlg(url,features) {
	if(features)
		showModelessDialog(url,window,features);
	else
		showModelessDialog(url,window,'status:false;dialogWidth:600px;dialogHeight:700px');
}

function logout() {
	if(changed)
		document.form1.submit();
	else
		document.location.href = "logout.asp";
}

function isChanged(text) {
	if(text)
		textChanged = text;

	if(changed) {
		changed = false;
	
		if(confirm(textChanged)) {
			document.form1.mode.value="save";
			document.form1.submit();
		}
		return true;
	} else
		return false;
}

function setChanged() {
	changed = true;
}

function saveData() {
	changed = false;
	document.form1.mode.value="save";
	document.form1.submit();
}

function absTop(el) {
	return (el.offsetParent) ? el.offsetTop + absTop(el.offsetParent) : el.offsetTop;
}

function absLeft(el) {
   return (el.offsetParent) ? el.offsetLeft + absLeft(el.offsetParent) : el.offsetLeft;
}

function hideText() {
	var elm = findIt('toolTipp');
	elm.style.display = 'none';
}

function showText(obj,text) {
	if(text == "")
		return;
		
	var left = absLeft(obj);
	
	if(left > 180)
		left -= 150;

	var elm = findIt('toolTipp');
 	elm.style.top = absTop(obj) + 25; 
	elm.style.left = left;
	elm.style.display = '';
	
	findIt('toolTippText').innerHTML = text;
}

function showSection(step) {
	document.location.href="?schritt="+step;
}

function ismaxlength(obj){
	var mlength = parseInt(obj.getAttribute("maxlength") || 255);
	
	if (obj.getAttribute && obj.value.length > mlength)
		obj.value = obj.value.substring(0,mlength)
}

function movecontent(fromsection,tosection){
	document.getElementById(tosection).innerHTML = document.getElementById(fromsection).innerHTML;
}
