var currentbutton;

function echeck(str) 
{
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false;
		 }

 		 return true;				
	}

function ValidateEmail( inputID )
{
	var emailID = document.getElementById( inputID );
	
	if (( emailID.value==null ) || ( emailID.value=="") )
		return false;
	if (echeck(emailID.value)==false)
		return false;

	return true;
 }


function checkPostNr( inputID )
{
	var obj = document.getElementById( inputID );
	
	if( !IsNumeric( obj.value ) )
		obj.value = '';

	if ( obj.value.length > 4 )
		obj.value = obj.value.substring( 0, 4 );	
}

function generateGoal()
{
	if ( document.getElementById( 'testtype' ).value == 2 )
	{
		generateGreenGoal();
	}
	else
	{
		var catid 		= document.getElementById( 'catid' ).value;
		var userid 		= document.getElementById( 'userid' ).value;
		var catname 	= document.getElementById( 'catname' ).value;
		var epost		= document.getElementById( 'mottatips' ).value;
		var buttonid 		= document.getElementById( 'buttonid' ).value;
		
		currentbutton = buttonid;
		
		var idStr 		= document.getElementById( 'catidstr_' + catid );
		var oldValue 	= document.getElementById( 'oldvalue_' + catid );
			
		
		var idArr = idStr.value.split(";;");
		var maal;
		var totsum = 0;
		var rowarr;
		var dummy;
		var KUTT;
		var fly = 0;
		var found = 0;
		
		var updatedIdStr = '';
		
		
		if ( catname == 'mat' || catname == 'clothes' || catname == 'fly' )
		{
			for( var i=0;i<idArr.length;i++ )
			{
				rowarr = idArr[i].split( ";" );
				// rowarr[1] er visningstypen, 2 er checkbox
				
				if ( rowarr[1] != 2 )
				{
					maal = document.getElementById( rowarr[0] );
					updatedIdStr = updatedIdStr + rowarr[0] + ";";
					//alert( rowarr[0] + " sin value = " + maal.value );
					if ( maal.value )
					{
						totsum = totsum + parseInt ( maal.value );
						found = 1;
					}
				}
				else
				{
					if ( catname == 'fly' )
					{
						maal = document.getElementById( rowarr[0] );
						if ( maal.checked )
						{
							KUTT = maal.value;
							insertRow( '',rowarr[0], KUTT, oldValue.value, catid, userid, catname, epost )
							fly = 1;
						}						
					}
				}
	
			}
			if ( fly == 0 )
			{
				KUTT = oldValue.value - totsum; // KUTT ER DET MAN VIL KUTTE TOTALT FOR KATEGORIENE MAT eller KLÆR
				
				if ( KUTT <= 0 )
					infoModal( 'Du kan ikke kutte mer enn det du har oppgitt i testen', buttonid );
				else
				{	
					if ( found == 1 )
						insertRow( '', updatedIdStr, KUTT, oldValue.value, catid, userid, catname, epost )
					else	
						infoModal( 'Du m&aring; velge deg en m&aring;lsetning', currentbutton );

				}
			}
		}
		else
		{
			
			var newIDStr = '';
			
			for( var i=0;i<idArr.length;i++ )
			{
				rowarr = idArr[i].split( ";" );
				// rowarr[1] er visningstypen, 2 er checkbox
				
				if ( rowarr[1] != 2 )
				{
					maal = document.getElementById( rowarr[0] );
					//alert( rowarr[0] + " sin value = " + maal.value );
					if ( maal.value )
					{
						dummy = parseInt ( maal.value );
					}
				}	
				else
				{
					maal = document.getElementById( rowarr[0] );
					if ( maal.checked )
					{				
						KUTT = maal.value;
						//insertRow( rowarr[0], KUTT, oldValue.value, catid, userid, catname, epost )
						newIDStr = newIDStr + rowarr[0] + "_" + KUTT + ";;";
						found = 1;
					}
				}
		
			}
			
			if ( found == 1 )
				insertRow( newIDStr, rowarr[0], KUTT, oldValue.value, catid, userid, catname, epost )
			else
				infoModal( 'Du har ikke huket av for noen m&aring;lsetninger', currentbutton );
		}
		
		showHide( 'vztmodal' );
	}
}

function generateGreenGoal()
{

	var catid 		= document.getElementById( 'catid' ).value;
	var userid 		= document.getElementById( 'userid' ).value;
	var catname 	= document.getElementById( 'catname' ).value;
	var epost		= document.getElementById( 'mottatips' ).value;
	var buttonid 	= document.getElementById( 'buttonid' ).value;
	
	currentbutton = buttonid;

	var idStr 		= document.getElementById( 'catidstr_' + catid );
	var idArr = idStr.value.split(";;");

	var maal;
	var rowarr;
	var KUTT;
	var found = 0;

	var newIDStr = '';

	for( var i=0;i<idArr.length;i++ )
	{
		rowarr = idArr[i].split( ";" );
		
		maal = document.getElementById( rowarr[0] );
		if ( maal.checked )
		{				
			KUTT = maal.value;
			//insertGreenRow( rowarr[0], KUTT, catid, userid, epost )
			newIDStr = newIDStr + rowarr[0] + "_" + KUTT + ";;";
			found = 1;
		}						
	}
	
	if ( found == 1 )
		insertGreenRow( newIDStr, rowarr[0], KUTT, catid, userid, epost );
	else
		infoModal( 'Du har ikke huket av for noen m&aring;lsetninger', currentbutton );
	
	
	showHide( 'vztmodal' );

}

function insertRow( newIDStr, idStr, KUTT, oldValue, catid, userid, catname, epost )
{
	//alert( "IDs = " + idStr	+ "KUTT = " + KUTT );
	var url = '/lg/layout/set/ajax/vztklimatest/setmaal/';
	var poststr = "id=" + encodeURI( idStr ) + "&kutt=" + KUTT + "&catid=" + catid + "&userid=" + userid + "&epost=" + epost + "&type=1&catname=" + catname + "&oldvalue=" + oldValue +"&newidstr=" + newIDStr ;
	postRequestMaal( url, poststr );

}

function insertGreenRow( newIDStr, idStr, KUTT, catid, userid, epost )
{
	var url = '/lg/layout/set/ajax/vztklimatest/setmaal/';
	var poststr = "id=" + encodeURI( idStr ) + "&kutt=" + KUTT + "&catid=" + catid + "&userid=" + userid + "&epost=" + epost + "&type=2&newidstr=" + newIDStr;
  	postRequestMaal( url, poststr );
	
}

function showConfirmModal()
{
	var utg = document.getElementById( currentbutton );
	var x = findPosX( utg );
	var y = findPosY( utg );
	var bbox = document.getElementById( 'vztconfirmmodal' );
	
	bbox.style.left = parseInt( x+20) + 'px';
	bbox.style.top = parseInt( y + 20 ) + 'px';
	bbox.style.display = 'inline';
}

function showModal( testtype, buttonid, catid, userid, catname )
{

	document.getElementById( 'catid' ).value = catid;
	document.getElementById( 'userid' ).value = userid;
	document.getElementById( 'catname' ).value = catname;
	document.getElementById( 'buttonid' ).value = buttonid;
	document.getElementById( 'testtype' ).value = testtype;

	var utg = document.getElementById( buttonid );
	var x = findPosX( utg );
	var y = findPosY( utg );
	var bbox = document.getElementById( 'vztmodal' );
	
	bbox.style.left = parseInt( x+20) + 'px';
	bbox.style.top = parseInt( y + 20 ) + 'px';
	bbox.style.display = 'inline';
}


function infoModal( text, where )
{
	document.getElementById( 'vzth2' ).innerHTML = text;
	var utg = document.getElementById( where );
	var x = findPosX( utg );
	var y = findPosY( utg );
	var bbox = document.getElementById( 'vztinfomodal' );
	
	bbox.style.left = parseInt( x+20) + 'px';
	bbox.style.top = parseInt( y + 20 ) + 'px';
	bbox.style.display = 'inline';	
	
}


/*

	A			J			A			X


*/

var http_requestmaal = false;
   
function postRequestMaal(url, parameters) {
  http_requestmaal = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_requestmaal = new XMLHttpRequest();
	 if (http_requestmaal.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_request.overrideMimeType('text/xml');
		http_requestmaal.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_requestmaal = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_requestmaal = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_requestmaal) {
	 alert('Kan ikke opprette XMLHTTP instansen. Bytt browser');
	 return false;
  }
  
  http_requestmaal.onreadystatechange = hentPHPMaal;
  http_requestmaal.open('POST', url, true);
  http_requestmaal.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_requestmaal.setRequestHeader("Content-length", parameters.length);
  http_requestmaal.setRequestHeader("Connection", "close");
  http_requestmaal.send(parameters);
}

function hentPHPMaal() {
  if ( http_requestmaal.readyState == 4 ) {
	 if ( http_requestmaal.status == 200 ) 
	 {
		//alert(http_request.responseText);
		result = http_requestmaal.responseText;
		//alert( result );
		if ( result )
		{
			var wasOk=0;
			var resArr = result.split( '|||||' );
			var resSplit = resArr[0].split(";");
			
			for( var i=0;i<resSplit.length;i++ )
			{
				if ( resSplit[i] != '' )
				{
					document.getElementById( "wrap" + resSplit[i] ).style.display = 'none';
					wasOk = 1;
				}
			}
			
			if ( wasOk == 1 )
				showConfirmModal();
				
	
			
			
			
		}
	 } 
  }
}

