// Funktion som visar felmeddelanden
var errormessages = new Array();
function showErrors() {
 	if( errormessages.length > 0 ) {
 		mes = "Följande fel inträffade:<BR><BR>";
 		for( i = 0; i < errormessages.length; i++ ) {
 			mes += (i+1) + ": " + errormessages[i] + "<BR>";
 		}
 		showAlertMessage( mes );
		errormessages = new Array();
 	}
}

function printErrors( elementname ) {
 	if( errormessages.length > 0 ) {
 		mes = "<SPAN CLASS=label>F&ouml;ljande fel intr&auml;ffade:</SPAN><BR><BR>";
 		for( i = 0; i < errormessages.length; i++ ) { mes += "<SPAN CLASS=label>" + (i+1) + ":</SPAN> " + errormessages[i] + "<BR>"; }
 		mes += "<BR>";
 		updateElement( elementname, mes );
		errormessages = new Array();
 	}
}
var contentelementname = "maincontentspot"; var messageelementname = "mainmessagespot"; var subcontentelementname = "subcontentspot"; var submessageelementname = "submessagespot";

function getMainPageContent() {
	getPage3( createRequest(), 'mainpagecontent.php', 'searchresultmessagespot', 'searchresultcontentspot', '', '', '' );
}

function resetWorkspace() {
	emptyElement( contentelementname ); emptyElement( messageelementname );
	emptyElement( "searchresultcontentspot" );
	emptyElement( "searchresultmessagespot" );
}
function resetJustWorkspace() { emptyElement( contentelementname ); }
function resetJustMessagespace() { emptyElement( messageelementname ); }

function resetSubWorkspace() { emptyElement( subcontentelementname ); emptyElement( submessageelementname ); }
function resetJustSubWorkspace() { emptyElement( subcontentelementname ); }
function resetJustSubMessagespace() { emptyElement( submessageelementname ); }

function emptyWorkspot( milliseconds ) { setTimeout( "resetWorkspace()", milliseconds ); }
function emptyMainMessagespot( milliseconds ) { setTimeout( "resetJustMessagespace()", milliseconds ); }
function emptyMainContentspot( milliseconds ) { setTimeout( "resetJustWorkspace()", milliseconds ); }

function emptySubWorkspot( milliseconds ) { setTimeout( "resetSubWorkspace()", milliseconds ); }
function emptySubContentspot( milliseconds ) { setTimeout( "resetJustSubWorkspace()", milliseconds ); }
function emptySubMessagespot( milliseconds ) { setTimeout( "resetJustSubMessagespace()", milliseconds ); }

function siteSearch() {
	searchword = $F( "searchword" );
	ismain = $F( "ismain" );
	filnamn = "sitesearchresults.php";
//	alert( searchword );
	if( searchword.length > 1 ) {
		resetWorkspace();
		resetSubWorkspace();
		userSearchRequest = createRequest();
		paramurl = "searchword=" + searchword + "&ismain=" + ismain;
		var url = filnamn + "?" + paramurl;
		userSearchRequest.open( "POST", url, true );
		userSearchRequest.onreadystatechange = function showFile() {
			if( userSearchRequest.readyState == 4 ) {
				if( userSearchRequest.status == 200 ) {
					var getpageresponse = userSearchRequest.responseText;
					updateElement( "searchresultcontentspot", getpageresponse );
					emptyElement( "searchresultmessagespot" );
				}
				else {
					updateElement( "searchresultmessagespot", "Det uppstod ett fel n&auml;r den efterfr&aring;gade filen skulle laddas in!<BR>Felkod: " + getpagerequest.status );
				}
			}
			else {
	            updateElement( "searchresultmessagespot", 
	            						"<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> " + 
	            						"S&ouml;kning p&aring;g&aring;r... Var god v&auml;nta..." ); 
			}
		}
		userSearchRequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
		userSearchRequest.send( paramurl );
	}
	else {
		updateElement( "searchresultmessagespot", "S&ouml;kordet m&aring;ste best&aring; av minst 2 tecken." );
   }
   return false;
}


function showMessage( messageid ) {
	resetWorkspace()
	getpageobj1 = createRequest();
	getPage2( getpageobj1, "showusermessagedetails.php", contentelementname, "messageid=" + messageid );
	elementids = new Array( messageid + "_main", messageid + "_pic", messageid + "_message", messageid + "_date", messageid + "_delete" );
	for( i = 0; i < elementids.length; i++ ) {
		$( elementids[i] ).removeClassName( "whiteback" );
		$( elementids[i] ).removeClassName( "lightpink" );
	}
}

function getUserMessageCount( username ) {
	paramurl = "username=" + username + "&optype=4";
	userMessagesCountRequest = createRequest();
	var url = "usermessagehandler.php?" + paramurl;
	contentspotname = "messagecountspot";

	userMessagesCountRequest.open( "POST", url, true );
	userMessagesCountRequest.onreadystatechange = function doDOMChanges() {
		if( userMessagesCountRequest.readyState == 4 ) {
			if( userMessagesCountRequest.status == 200 ) {
				var response = userMessagesCountRequest.responseText;
				updateElement( contentspotname, response );
				resetJustMessagespace();
			}
			else {
				updateElement( messageelementname, "Det uppstod ett fel när antal meddelanden skulle hämtas!<BR>Felkod: " + userMessagesCountRequest.status );
			}
		}
		else {
            updateElement( messageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> H&auml;mtar antal meddelanden...<BR>Var god v&auml;nta..." ); 
		}
	}
	userMessagesCountRequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
	userMessagesCountRequest.send( paramurl );
}

function deleteMessage( id, senderusername, receiverusername ) {
	paramurl = "id=" + id + "&senderusername=" + senderusername + "&optype=2&dummy=" + new Date().getTime();
	if( confirm( "Är du säker på att du vill ta bort meddelandet från " + senderusername + "?" ) ) {
		var deletemessagerequest = createRequest();
		var url = "usermessagehandler.php";
		deletemessagerequest.open( "POST", url, true );
		deletemessagerequest.onreadystatechange = function doDOMChanges() {
			if( deletemessagerequest.readyState == 4 ) {
				if( deletemessagerequest.status == 200 ) {
					var response = deletemessagerequest.responseText;
					if( response == 1 ) {
						resetWorkspace();
						removeElement( id + "_main" );
						getUserMessageCount( receiverusername );
						test = $( "messagelist" ).getElementsBySelector( "[namn='message']" );
//						updateElement( messageelementname, test.length );
						if( test.length == 0 ) { getPage( "mymessagelist.php", "messagelist", "" ); }
					}
					else {
						updateElement( messageelementname, response );
					}
				}
				else {
					updateElement( messageelementname, "Det uppstod ett fel när meddelandet skulle tas bort!<BR>Felkod: " + deletemessagerequest.status );
				}
			}
			else {
				updateElement( messageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Tar bort meddelande... Var god v&auml;nta..." );
			}
		}
		deletemessagerequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
		deletemessagerequest.send( paramurl );
	}
}

function addUsermessage( formname, receiverusername, senderusername ) {
	text = $F( "text" );
	paramurl = "senderusername=" + senderusername + "&receiverusername=" + receiverusername + "&optype=1&text=" + escape( text ) + "&dummy=" + new Date().getTime();
//	updateElement( messageelementname, paramurl );
	if( text != null && text != "" ) {

		var addmessagerequest = createRequest();
		var url = "usermessagehandler.php";
		addmessagerequest.open( "POST", url, true );

		addmessagerequest.onreadystatechange = function doDOMChanges() {
			if( addmessagerequest.readyState == 4 ) {
				if( addmessagerequest.status == 200 ) {
					var response = addmessagerequest.responseText;
					if( response == 1 ) {
						resetJustWorkspace();
						updateElement( messageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Ditt meddelande har skickats till " + receiverusername + ".<BR><BR>" );
						setTimeout( "resetWorkspace()", 2000);
					}
					else {
						if( response == 0 ) {
							updateElement( messageelementname, "Ditt meddelande kunde inte skickas till " + receiverusername + "!" );
						}
						else { updateElement( messageelementname, response ); }
					}
				}
				else {
					updateElement( messageelementname, "Det uppstod ett fel n&auml;r meddelandet skulle skickas!<BR>Felkod: " + addmessagerequest.status );
				}
			}
			else {
				updateElement( messageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Skickar ditt meddelande..." );
			}
		}
		addmessagerequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
		addmessagerequest.send( paramurl );
	}
	else {
		updateElement( messageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Du har inte skrivit n&aring;got.<BR><BR>" );
	}
}

function addUsermessageAnswer( parentid, formname, receiverusername, senderusername ) {
	text = $F( "text" );
	paramurl = "parentid=" + parentid + "&senderusername=" + senderusername + "&receiverusername=" + receiverusername + "&optype=3&text=" + escape( text ) + "&dummy=" + new Date().getTime();
//	updateElement( messageelementname, paramurl );
	if( text != null && text != "" ) {

		var addmessagerequest = createRequest();
		var url = "usermessagehandler.php";
		addmessagerequest.open( "POST", url, true );

		addmessagerequest.onreadystatechange = function doDOMChanges() {
			if( addmessagerequest.readyState == 4 ) {
				if( addmessagerequest.status == 200 ) {
					var response = addmessagerequest.responseText;
					if( response == 1 ) {
						updateElement( submessageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Ditt meddelande har skickats till " + receiverusername + ".<BR><BR>" );
						setTimeout( "resetWorkspace()", 2000);
						setTimeout( "resetSubWorkspace()", 2000);
					}
					else {
						if( response == 0 ) {
							updateElement( submessageelementname, "Ditt meddelande kunde inte skickas till " + receiverusername + "!" );
						}
						else {
							updateElement( submessageelementname, response );
						}
					}
				}
				else {
					updateElement( submessageelementname, "Det uppstod ett fel när ditt meddelande skulle skickas!<BR>Felkod: " + addmessagerequest.status );
				}
			}
			else {
				updateElement( submessageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Skickar ditt meddelande..." );
			}
		}
		addmessagerequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
		addmessagerequest.send( paramurl );
	}
	else {
		updateElement( submessageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Du har inte skrivit något.<BR><BR>" );
	}
}

// Visar det aktuella albumet
function showAlbumDetails( userid, albumid ) {
	resetWorkspace();
	filnamn = "maingetalbumthumbs.php";
	albumDetailsRequest = createRequest();
	paramurl = "userid=" + userid + "&albumid=" + albumid + "&dummy=" + new Date().getTime();

	var url = filnamn + "?" + paramurl;

	albumDetailsRequest.open( "POST", url, true );
	albumDetailsRequest.onreadystatechange = function showFile() {
		if( albumDetailsRequest.readyState == 4 ) {
			if( albumDetailsRequest.status == 200 ) {
				var getpageresponse = albumDetailsRequest.responseText;
				updateElement( contentelementname, getpageresponse );
            	albumDetailsRequest = createRequest();
                emptyElement( messageelementname ); 
			}
			else {
				updateElement( messageelementname, "Det uppstod ett fel när albumet skulle laddas!<BR>Felkod: " + albumDetailsRequest.status );
			}
		}
		else {
            updateElement( messageelementname, "<IMG SRC=pics/loading.gif BORDER=0 ALIGN=BOTTOM STYLE=\"text-align:bottom;\"> Laddar albuminfo... Var god v&auml;nta..." ); 
		}
	}
	albumDetailsRequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
	albumDetailsRequest.send( paramurl );
}

// Funktioner som har med recept att göra.
function mainShowRecipeNames( catid, userid ) {
	resetWorkspace();
	resetSubWorkspace();
	getPage3( createRequest(), "maingetrecipenames.php", contentelementname, messageelementname, "catid=" + catid + "&userid=" + userid, '', '' );
}

function dumpRecipepic( filename, recipeid, recipetablename ) {
	var path = "uploadedpics/useralbumpics/";
	paramurl = "filename=" + filename + "&recipeid=" + recipeid + "&recipetablename=" + recipetablename + "&optype=6";
	
	var dumprecipepicrequest = createRequest();
	var url = "userrecipeshandler.php";
	dumprecipepicrequest.open( "POST", url, true );
	dumprecipepicrequest.onreadystatechange = function doDOMChanges() {
		if( dumprecipepicrequest.readyState == 4 ) {
			if( dumprecipepicrequest.status == 200 ) {
				var response = dumprecipepicrequest.responseText;
				if( response == 1 ) {
					emptyElement( "recipepicspot" );
					doDumppicAfterWork( userid, albumid );
				}
				else {
					updateElement( messageelementname, "Bilden kunde inte tas bort.<BR>Felmeddelande: " + response );
				}
			}
			else {
				updateElement( messageelementname, "Det uppstod ett fel när bilden skulle tas bort!<BR>Felkod: " + dumprecipepicrequest.status );
			}
		}
	}
	dumprecipepicrequest.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
	dumprecipepicrequest.send( paramurl );
}

