
function validatePasswordForm() {
	var errormessages = new Array();
	var messagespot = "messagespot";
	emptyElement( messagespot );
	newpassword = $F( "newpassword" ).strip();
	verpassword = $F( "verpassword" ).strip();
	oldpassword = $F( "oldpassword" ).strip();
	if( newpassword == "" ) {
		errormessages.push( "Du gl&ouml;mde att fylla i f&auml;ltet Nytt l&ouml;senord." );
		selectField( "newpassword" );
	}
	else {
		if( !validateUsernameAndPassword( newpassword ) ) {
			errormessages.push( "Det nya l&ouml;senordet du skrev in &auml;r inte giltigt." );
			selectField( "newpassword" );
		}
	}
	if( verpassword == "" ) {
		errormessages.push( "Du gl&ouml;mde att fylla i f&auml;ltet Upprepa &ouml;nskat l&ouml;senord." );
		selectField( "verpassword" );
	}
	if( verpassword != newpassword ) {
		errormessages.push( "L&ouml;senorden i l&ouml;senordsf&auml;lten &auml;r inte identiska." );
		selectField( "verpassword" );
	}
	if( oldpassword == "" ) {
		errormessages.push( "Du gl&ouml;mde att fylla i ditt f&auml;ltet Gammalt l&ouml;senord." );
		selectField( "oldpassword" );
	}
	else {
		if( !validateUsernameAndPassword( oldpassword ) ) {
			errormessages.push( "L&ouml;senordet du skrev in i f&auml;ltet Gammalt l&ouml;senord &auml;r inte giltigt." );
			selectField( "oldpassword" );
		}
	}

	if ( errormessages.length > 0 ) {
		messageToDisplay = "<SPAN CLASS=label>F&ouml;ljande fel intr&auml;ffade:</SPAN><BR>";
		for( j = 0; j < errormessages.length; j++ ) {
			if( errormessages.length > 1 ) {
				messageToDisplay += (j+1) + ": ";
			}
			messageToDisplay += errormessages[j] + "<BR>";
		}
		updateElement( messagespot, messageToDisplay );
		return false;
	}
	return true;
}

function changePassword() {
	var messagespot = "messagespot";
	var contentspot = "contentspot";
	newpassword = $F( "newpassword" ).strip(); verpassword = $F( "verpassword" ).strip(); oldpassword = $F( "oldpassword" ).strip();
	paramurl = "newpassword=" + newpassword + "&verpassword=" + verpassword + "&oldpassword=" + oldpassword + "&optype=1";
//	showAlertMessage( paramurl );

	if( validatePasswordForm() ) {
		var changepasswordrequest = createRequest();
		var url = "usersettingshandler.php";
		changepasswordrequest.open( "POST", url, true );
		changepasswordrequest.onreadystatechange = function doDOMChanges() {
			if( changepasswordrequest.readyState == 4 ) {
				if( changepasswordrequest.status == 200 ) {
					var response = changepasswordrequest.responseText;
					if( response != 1 && response != 2 ) {
						updateElement( messagespot, response );
					}
					else {
						if( response == 1 ) {
							updateElement( contentspot, "Ditt l&ouml;senord har nu &auml;ndrats och skickats till den e-post adress som du registrerade ditt konto med.<BR><BR>" + 
																"Vanligtvis tar det h&ouml;gst 10 minuter innan e-post meddelandet n&aring;r fram.<BR><BR>" + 
																"Om du efter 10 min fortfarande inte har f&aring;tt n&aring;got e-post meddelande, kan du kontakta oss via v&aring;r<BR> " + 
																" kontaktformul&auml;r som du hitttar till via l&auml;nken \"Skicka ett meddelande till Allt om familjen \" l&auml;ngst ner<BR>" + 
																" p&aring; sidan s&aring; f&ouml;rs&ouml;ker vi att &aring;tg&auml;rda felet och hj&auml;lpa dig s&aring; fort som m&ouml;jligt.<BR>" + 
																"<BR>Gl&ouml;m inte att skriva ditt anv&auml;ndarnamn och e-post adress som du registrerade dig med i meddelandet.<BR>" );
							emptyElement( messagespot );
						}
						if( response == 2 ) {
							updateElement( contentspot, "Ditt l&ouml;senord &auml;ndrades men e-postmeddelandet som inneh&ouml;ll ditt nya l&ouml;senord kunde av<BR>" + 
												"n&aring;gon anledning inte skickas till dig.<BR>" + 
												"Vi beklagar det intr&auml;ffade.<BR>" + 
												"Du kan skicka ett meddelande till oss via v&aring;r kontaktformul&auml;r som du hitttar till via l&auml;nken<BR>" + 
												"\"Skicka ett meddelande till Allt om familjen \" l&auml;ngst ner p&aring; sidan s&aring; f&ouml;rs&ouml;ker vi att<BR>" + 
												"&aring;tg&auml;rda felet och hj&auml;lpa dig s&aring; fort som m&ouml;jligt.<BR>" + 
												"<BR>Gl&ouml;m inte att skriva ditt anv&auml;ndarnamn och e-post adress som du registrerade dig med i<BR>meddelandet." );
							emptyElement( messagespot );
						}
					}
				}
				else {
					updateElement( messagespot, "Det uppstod ett fel n&auml;r ditt l&ouml;senord skulle bytas!\nFelkod: " + changepasswordrequest.status );
				}
			}
			else {
				updateElement( messagespot, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> &Auml;ndrar l&ouml;senord... Var god v&auml;nta..." );
			}
		}
		changepasswordrequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
		changepasswordrequest.send( paramurl );
	}
}


function validateEmailForm() {
	var errormessages = new Array();
	var messagespot = "messagespot";
	emptyElement( messagespot );
	newemail = $F( "newemail" ).strip();
	veremail = $F( "veremail" ).strip();
	password = $F( "password" ).strip();
	if( newemail == "" ) {
		errormessages.push( "Du gl&ouml;mde att fylla i f&auml;ltet Ny e-postadress." );
		selectField( "newemail" );
	}
	else {
		if( !validateEmail( newemail ) ) {
			errormessages.push( "Den nya e-postadressen du skrev in &auml;r inte giltig." );
			selectField( "newemail" );
		}
	}
	if( veremail == "" ) {
		errormessages.push( "Du gl&ouml;mde att fylla i f&auml;ltet Upprepa ny e-postadress." );
		selectField( "veremail" );
	}
	if( veremail != newemail ) {
		errormessages.push( "E-postadresserna i e-postf&auml;lten &auml;r inte identiska." );
		selectField( "veremail" );
	}
	if( password == "" ) {
		errormessages.push( "Du gl&ouml;mde att fylla i ditt f&auml;ltet Ditt l&ouml;senord." );
		selectField( "password" );
	}
	else {
		if( !validateUsernameAndPassword( password ) ) {
			errormessages.push( "L&ouml;senordet du skrev in i f&auml;ltet Ditt l&ouml;senord &auml;r inte giltigt." );
			selectField( "password" );
		}
	}
	
	if ( errormessages.length > 0 ) {
		messageToDisplay = "<SPAN CLASS=label>F&ouml;ljande fel intr&auml;ffade:</SPAN><BR>";
		for( j = 0; j < errormessages.length; j++ ) {
			if( errormessages.length > 1 ) {
				messageToDisplay += (j+1) + ": ";
			}
			messageToDisplay += errormessages[j] + "<BR>";
		}
		updateElement( messagespot, messageToDisplay );
		return false;
	}
	return true;
}

function changeEmail() {
	var messagespot = "messagespot";
	var contentspot = "contentspot";
	newemail = $F( "newemail" ).strip(); veremail = $F( "veremail" ).strip(); password = $F( "password" ).strip();
	paramurl = "newemail=" + newemail + "&veremail=" + veremail + "&password=" + password + "&optype=2";
//	showAlertMessage( paramurl );
	
	if( validateEmailForm() ) {
		var changeemailrequest = createRequest();
		var url = "usersettingshandler.php";
		changeemailrequest.open( "POST", url, true );
		changeemailrequest.onreadystatechange = function doDOMChanges() {
			if( changeemailrequest.readyState == 4 ) {
				if( changeemailrequest.status == 200 ) {
					var response = changeemailrequest.responseText;
					if( response != 1 && response != 2 ) {
						updateElement( messagespot, response );
					}
					else {
						if( response == 1 ) {
							updateElement( contentspot, "Din e-postadress har nu &auml;ndrats och dina uppdaterade anv&auml;ndaruppgifter har skickats till den nya e-postadressen.<BR><BR>" + 
																"Vanligtvis tar det h&ouml;gst 10 minuter innan e-post meddelandet n&aring;r fram.<BR><BR>" + 
																"Om du efter 10 min fortfarande inte har f&aring;tt n&aring;got e-post meddelande, kan du kontakta oss via v&aring;r<BR> " + 
																" kontaktformul&auml;r som du hitttar till via l&auml;nken \"Skicka ett meddelande till Allt om familjen \" l&auml;ngst ner<BR>" + 
																" p&aring; sidan s&aring; f&ouml;rs&ouml;ker vi att &aring;tg&auml;rda felet och hj&auml;lpa dig s&aring; fort som m&ouml;jligt.<BR>" + 
																"<BR>Gl&ouml;m inte att skriva ditt anv&auml;ndarnamn och din e-post adress i meddelandet.<BR>" );
							emptyElement( messagespot );
						}
						if( response == 2 ) {
							updateElement( contentspot, "Din e-postadress &auml;ndrades men e-postmeddelandet som inneh&ouml;ll dina uppdaterade<BR>" +
												"anv&auml;ndaruppgifter kunde av n&aring;gon anledning inte skickas till den nya e-postadressen.<BR>" + 
												"Vi beklagar det intr&auml;ffade.<BR>" + 
												"Du kan skicka ett meddelande till oss via v&aring;r kontaktformul&auml;r som du hitttar till via l&auml;nken<BR>" + 
												"\"Skicka ett meddelande till Allt om familjen \" l&auml;ngst ner p&aring; sidan s&aring; f&ouml;rs&ouml;ker vi att<BR>" + 
												"&aring;tg&auml;rda felet och hj&auml;lpa dig s&aring; fort som m&ouml;jligt.<BR>" + 
												"<BR>Gl&ouml;m inte att skriva ditt anv&auml;ndarnamn och din e-post adress i<BR>meddelandet." );
							emptyElement( messagespot );
						}
					}
				}
				else {
					updateElement( messagespot, "Det uppstod ett fel n&auml;r din e-postadress skulle bytas!\nFelkod: " + changeemailrequest.status );
				}
			}
			else {
				updateElement( messagespot, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> &Auml;ndrar din e-post adress... Var god v&auml;nta..." );
			}
		}
		changeemailrequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
		changeemailrequest.send( paramurl );
	}
}

function confirmChangeAccountstatus( param1, param2, returnvalue ) {
//	alert( param1 + " " + param2 + " " + returnvalue );
	emptyElement( 'messagespot' );
	emptyElement( 'contentspot' );
	message = "";
	if( param1 == 0 ) {
		message = "&Auml;r du s&auml;ker på att du vill inaktivera ditt konto?\n";
		message += "F&ouml;r att ha tillg&aring;ng till alla funktioner hos alltomfamiljen.se\n";
		message += "b&ouml;r ditt konto vara aktivt.\n";
		message += "Efter inaktivering av ditt konto, kan du n&auml;r som helst\n";
		message += "logga in och aktivera det igen.\n";
	}
	else {
		message = "&Auml;r du s&auml;ker på att du vill aktivera ditt konto?\n";
	}
	if( returnvalue == "" ) {
		paramvarvalue1 = param1; paramvarvalue2 = param2; callbackfunctionname = "confirmChangeAccountstatus";
		paramurl = "paramvarvalue1=" + paramvarvalue1 + 
						"&paramvarvalue2=" + paramvarvalue2 + 
						"&callbackfunctionname=" + callbackfunctionname + 
						"&confirmquestion=" + escape( message );
		getPage( "confirmpage.php", "messagespot", paramurl );
	}
	else {
		if( returnvalue == 1 ) {
			self.location = "accounthandler.php?optype=2";
		}
		emptyElement( "messagespot" );
	}
}

function confirmDeleteAccount( param1, param2, returnvalue ) {
	emptyElement( 'messagespot' );
	emptyElement( 'contentspot' );
	confirmquestion = "&Auml;r du s&auml;ker p&aring; att du vill radera ditt konto?<BR>";
	confirmquestion += "Detta tar bort alla bilder, bloggar etc. som du har i ditt konto hos alltomfamiljen.se\n";
	if( returnvalue == "" ) {
		paramvarvalue1 = param1; paramvarvalue2 = param2; callbackfunctionname = "confirmDeleteAccount";
		paramurl = "paramvarvalue1=" + paramvarvalue1 + 
						"&paramvarvalue2=" + paramvarvalue2 + 
						"&callbackfunctionname=" + callbackfunctionname + 
						"&confirmquestion=" + escape( confirmquestion );
		getPage( "confirmpage.php", "messagespot", paramurl );
	}
	else {
		if( returnvalue == 1 ) {
			self.location = "accounthandler.php?optype=1";
		}
		else { }
		emptyElement( "messagespot" );
	}
}

