// JavaScript Document
/**
*	@author Milko Leporis, www.milkoleporis.com
*
*/

var oldHTML = Array();
function myPageEdit(section,type,user)
{
	var temp = $('#'+section).text();
	oldHTML[section] = $('#'+section).html();
	switch(type)
	{
		case "heading":
			$('#'+section).html("<input type=\"text\" id=\"myPage"+section+"Editor\" value=\""+temp+"\" size=\"50\">"+
									 " <br/><input type=\"button\" value=\" Odustani \" onclick=\"javascript:cancelEdit('"+section+"')\" style=\"width: 75px;\">"+
									 " <input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:saveEdit('"+section+"','"+user+"')\" style=\"width: 75px;\">"
									 );
		break;
		case "textarea":
			$('#'+section).html("<textarea id=\"myPage"+section+"Editor\" cols=\"50\" rows=\"5\">"+temp+"</textarea>"+
									 " <br/><input type=\"button\" value=\" Odustani \" onclick=\"javascript:cancelEdit('"+section+"')\" style=\"width: 75px;\">"+
									 " <input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:saveEdit('"+section+"','"+user+"')\" style=\"width: 75px;\">"
									 );
		break;
		case "interests":
			$('#'+section).html("<textarea id=\"myPage"+section+"Editor\" cols=\"50\" rows=\"5\">"+temp+"</textarea>"+
									 " <br/><input type=\"button\" value=\" Odustani \" onclick=\"javascript:cancelEdit('"+section+"')\" style=\"width: 75px;\">"+
									 " <input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:saveEdit('"+section+"','"+user+"')\" style=\"width: 75px;\">"
									 );
		break;
		case "friends":
			$("#actionStatus").ajaxStart(function(){
					$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
			}).ajaxComplete(function(){
					$(this).html("Lista korisnika dobavljena.").show();
			});
			$.post("http://www.msjb.org/_server/server.myPage.php", {
			action: "getFriends",
			user: user
			}, function(XML){	
				var error = $("error", XML).text();
					var allUsersStr = $("allUsers", XML).text();
					var allUserFriendsStr = $("userFriends", XML).text();
					var allUsers = allUsersStr.split("|");
					var allUserFriends = allUserFriendsStr.split("|");
					var friendsPickerForm = "<table border=\"0\">";
					friendsPickerForm += "<tr><td colspan=\"3\">";
					friendsPickerForm += "<small>Izaberi ime na levoj strani i pritisni [>>] da bi ga dodao u prijatelje.<br/>";
					friendsPickerForm += "Izaberi ime na desnoj strani i pritisni [<<] da bi ga uklonio iz liste prijatelja.<br/>";
					friendsPickerForm += "I pritisni SAVE.</small>";
					friendsPickerForm += "</td></tr>";
					friendsPickerForm += "<tr height=\"200px\">";
					friendsPickerForm += "<td width=\"200px\">";
					friendsPickerForm += "<select id=\"friendsPickerList\" size=\"10\" style=\"width:190px;\">";
					var userr = "";
					for(var i=0; i<allUsers.length-1; i++){
						userr = allUsers[i].split(" - ");
						friendsPickerForm += "<option value=\""+userr[0]+"\">"+allUsers[i]+"</option>";
					}
					friendsPickerForm += "</select>";
					friendsPickerForm += "</td>";
					friendsPickerForm += "<td  width=\"35px\">";
					friendsPickerForm += "<input type=\"button\" value=\" >> \" onclick=\"javascript:addToFriends()\">";
					friendsPickerForm += "<br/><input type=\"button\" value=\" << \" onclick=\"javascript:removeFromFriends()\">";
					friendsPickerForm += "</td>";
					friendsPickerForm += "<td width=\"200px\">";
					friendsPickerForm += "<select id=\"friendsList\" size=\"10\" style=\"width:190px;\">";
					userr = "";
					for(var j=0; j<allUserFriends.length-1; j++){
						//userr = allUserFriends[j].split(" - ");
						friendsPickerForm += "<option value=\""+allUserFriends[j]+"\">"+allUserFriends[j]+"</option>";
					}	
					friendsPickerForm += "</select>";
					friendsPickerForm += "</td>";
					friendsPickerForm += "</tr>";
					friendsPickerForm += "<tr>";
					friendsPickerForm += "<td colspan=\"3\" align=\"right\">";
					friendsPickerForm += "<input type=\"button\" value=\" Zatvori \" onclick=\"javascript:closeFriendsPickerForm()\" style=\"width: 75px;\">";
					friendsPickerForm += " <input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:saveFriends('"+section+"','"+user+"')\" style=\"width: 75px;\">";
					friendsPickerForm += "</td>";
					friendsPickerForm += "</tr>";
					friendsPickerForm += "</table>";
					$('#friendsPicker').html(friendsPickerForm);
					$('#friendsPicker').fadeIn("slow");
			});
		break;
	}
}
function addToFriends(){	
		var list = document.getElementById("friendsPickerList");
		var selectedFriend = list.value;
		//alert("AddToFriends:"+selectedFriend);
		$('#friendsList').append("<option value=\""+selectedFriend+"\">"+selectedFriend+"</option>");		
}
function getFriendsList(){
		var oldFriends = $('#friendsList').html();
		var browser = navigator.appName;
		if(browser == "Microsoft Internet Explorer") {
			var friends = oldFriends.split("</OPTION>");
		}
		else {
			var friends = oldFriends.split("</option>");
		}
		var friend = new Array();
		var friendsList = new Array();
		for(var i=0; i<friends.length-1; i++){
			friend = friends[i].split(">");
			friendsList[i] = friend[1];
		}
		return friendsList;
}
function removeFromFriends(){
		var list = document.getElementById("friendsList");
		var selectedFriend = list.value;
		var friendsList = new Array();
		friendsList = getFriendsList();
		$('#friendsList').html("");
		//alert(friendsList.length);
		for(var i=0; i<friendsList.length; i++){
			//alert("appending");
			if(friendsList[i] != selectedFriend)
				$('#friendsList').append("<option value=\""+friendsList[i]+"\">"+friendsList[i]+"</option>");		
		}
}
function saveFriends(section,user){
	var friendsList = new Array();
	friendsList = getFriendsList();
	var friendsListStr = "";
	for(var i=0; i<friendsList.length; i++){
		friendsListStr += friendsList[i] + "|";	
	}
		$("#actionStatus").ajaxStart(function(){
					$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
			}).ajaxComplete(function(){
					$(this).html("Prijatelji sa&#269;uvani.").show();
			});
		$.post("http://www.msjb.org/_server/server.myPage.php", {
		action: "saveFriends",
		section: section,
		friends: friendsListStr,
		user: user
		}, function(xml){	
			var error = $("error", xml).text();
			if(error == "No")
			{
				closeFriendsPickerForm();
				$('#'+section).html("");
				var avatarTypes = ($("avatars", xml).text()).split("|");
				var friends = "";
				friends += "<table border=\"0\">";
				for(var j=0; j<friendsList.length; j++){
					if(j == 0 || j % 8 == 0) {
						friends += "<tr>";
					}				
					if(avatarTypes[j] != "dummy.jpg") {
						friends += "<td>";
						friends += "<a href=\""+friendsList[j]+"\" title=\""+friendsList[j]+"\">";
						friends += "<img src=\"_avatars/"+friendsList[j]+avatarTypes[j]+"\"  border=\"0\"/>";
						friends += "</a>";
						friends += "</td>";
					} else {
						friends += "<td>";
						friends += "<a href=\""+friendsList[j]+"\" title=\""+friendsList[j]+"\">";
						friends += "<img src=\"_avatars/dummy.jpg\"  border=\"0\"/>";
						friends += "</a>";
						friends += "</td>";
					}
				}
				friends += "</table>";
				$('#'+section).html(friends);
			}
		});
}
function cancelEdit(section){
	$('#'+section).html(oldHTML[section]);
}
function saveEdit(section,user){
	var editor = document.getElementById("myPage"+section+"Editor");
	var value = editor.value;
	$("#actionStatus").ajaxStart(function(){
			$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
	}).ajaxComplete(function(){
			$(this).html("Promene sa&#269;uvane.").show();
	});
	$.post("http://www.msjb.org/_server/server.myPage.php", {
		action: "saveEdit",
		section: section,
		value: value,
		user: user
	}, function(xml){	
		var error = $("error", xml).text();
		if(error == "No") {
			$('#'+section).text(value);
		}
	});
}
var sections = new Array();
function toggleSection(section){
	$('#'+section).toggle();
}
function closeFriendsPickerForm(){
	$('#friendsPicker').fadeOut("slow");	
}
function myPageImagePicker(user){
	$('#imagePicker').html("<form method=\"post\" id=\"avatarUploadForm\" action=\"http://www.msjb.org/myMsjb.php?user="+user+"\" enctype=\"multipart/form-data\">"+
			"50x50 pixela maksimalna veličina slike<br/>" +
			"<input type=\"file\" id=\"myPageImageEditor\" name=\"userAvatar\" size=\"50\">"+
			"<br/><br/><input type=\"button\" value=\" Cancel \" onclick=\"javascript:cancelImgPicker()\" style=\"width: 75px;\">"+
			" <input type=\"submit\" value=\" Save \" style=\"width: 75px;\"><input type=\"hidden\" name=\"avatarUpload\" value=\"yes\">"+
			"</form>"
	);
}
function cancelImgPicker(){
	$('#imagePicker').html("");	
}
function shout(owner,visitor,type, msgId){
	var text = document.getElementById("shoutText").value;	
	if(text.length <= 100) {	
		$("#actionStatus").ajaxStart(function(){
			$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
		}).ajaxComplete(function(){
			$(this).html("Poruka poslata.").show();
		});	
		$.post("http://www.msjb.org/_server/server.myPage.php", {
			action: "shout",
			owner: owner,
			visitor: visitor,
			text: text,
			private: "no"
		}, function(xml){			
			var error = $("error", xml).text();
			var newShout = "";
			if(error == "No"){
				if(type == 1){
					$('#replayShoutForm').toggle();				
				}		
			}
		});
	} else {
		alert("Poruka može biti dugačka najviše 100 znakova.");	
	}	
}
function deleteShout(id, user){	
	$("#actionStatus").ajaxStart(function(){
			$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
	}).ajaxComplete(function(){
			$(this).html("Poruka obrisana.").show();
	});	
	$.post("http://www.msjb.org/_server/server.myPage.php", {
			action: "deleteShout",
			id: id,
			user: user
	}, function(xml){			
			var error = $("error", xml).text();
			var last = $("last", xml).text();
			if(error == "No"){
				$('#sh_'+id).fadeOut("slow");				
				if(last == 0) {
					$("#myShoutMsgs").html("Nemate ni jednu poruku");
					$("#noMsgsSpacer").html("<br/><br/><br/><br/><br/><br/><br/><br/><br/>");
				}				
			}
	});
}
function deleteAllMessages(user){	
	$("#actionStatus").ajaxStart(function(){
			$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
		}).ajaxComplete(function(){
			$(this).html("Sve poruke obrisane.").show();
		});	
	$.post("http://www.msjb.org/_server/server.myPage.php", {
			action: "deleteAllShouts",
			user: user
	}, function(xml){
			
			var error = $("error", xml).text();
			if(error == "No"){
				$("#myShoutMsgs").html("Nemate ni jednu poruku");	
				$("#noMsgsSpacer").html("<br/><br/><br/><br/><br/><br/><br/><br/><br/>");
			}
	});
}
function replayShout(to, from, msgId){
	var replyForm = "";
		replyForm += "<h3 class=\"titleBar\">Odgovori</h3>";
		replyForm += "<form>";
		replyForm += "<textarea id=\"shoutText\" rows=\"3\" cols=\"32\"></textarea>";
		replyForm += "";
		replyForm += "<input type=\"button\" value=\" Zatvori \" onclick=\"javascript:cancelShoutReply('"+msgId+"')\" style=\"width: 100px; float:right; margin-top: -45px;\"/> <br/>";
		replyForm += "<input type=\"button\" value=\" Pošalji \" onclick=\"javascript:shout('"+to+"','"+from+"',1,"+msgId+")\" style=\"width: 100px;float:right; margin-top: -20px;\"/>";
		replyForm += "</form>";
	$('#replayShoutForm').html(replyForm);
	$('#replayShoutForm').show();
}
function cancelShoutReply(msgId){
	$('#replayShoutForm').hide();	
}
var edUserName = "";
var edFirstName = "";
var edLastName = "";
var edEmail = "";
var edBirthDate = "";
function editPersonalData(user){
	$("#callbackStatus").hide();
	document.getElementById("btnChangeData").setAttribute("href","javascript:doNothing()");
	edFirstName = $("#edPersonalFirstName").text();
	$("#edPersonalFirstName").html("<input type=\"text\" value=\""+edFirstName+"\" name=\"edPersonalFirstName\" id=\"txtPersonalFirstName\"/>");
	edLastName = $("#edPersonalLastName").text();
	$("#edPersonalLastName").html("<input type=\"text\" value=\""+edLastName+"\" name=\"edPersonalLastName\" id=\"txtPersonalLastName\"/>");	
	edEmail = $("#edPersonalEmail").text();
	$("#edPersonalEmail").html("<input type=\"text\" value=\""+edEmail+"\" name=\"edPersonalEmail\" id=\"txtPersonalEmail\"/>");	
	edBirthDate = $("#edPersonalBirthDate").text();
	$("#edPersonalBirthDate").html("<input type=\"text\" value=\""+edBirthDate+"\" name=\"edPersonalBirthDate\" id=\"txtPersonalBirthDate\"/><br/><small> [yyyy-mm-dd]</small>");	
	buttons = "<br/><input type=\"button\" value=\" Odustani \" onclick=\"javascript:cancelPersonalDataEdit()\" style=\"width:75px;\">";
	buttons += " <input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:savePersonalDataEdit()\" style=\"width:75px;\">";
	$("#edPersonalButtons").html(buttons);
}
function cancelPersonalDataEdit(){
	document.getElementById("btnChangeData").setAttribute("href","javascript:editPersonalData()");
	$("#edPersonalButtons").html("");
	$("#edPersonalFirstName").html(edFirstName);
	$("#edPersonalLastName").html(edLastName);
	$("#edPersonalEmail").html(edEmail);
	$("#edPersonalBirthDate").html(edBirthDate);
	$("#callbackStatus").hide();
}
function savePersonalDataEdit(){
	var edFirstName = document.getElementById("txtPersonalFirstName").value;
	var edLastName = document.getElementById("txtPersonalLastName").value;
	var edEmail = document.getElementById("txtPersonalEmail").value;
	var edBirthDate = document.getElementById("txtPersonalBirthDate").value; 
	var levels = document.getElementById("hidUserLevels").value; 	
	$("#actionStatus").ajaxStart(function(){
			$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
		}).ajaxComplete(function(){
			$(this).html("Podaci uspe&scaron;no sa&#269;uvani.").show();
		});	
	$.post("http://www.msjb.org/_server/server.myPage.php", {
			action: "updatePersonalData",
			userName: $("#edPersonalUserName").text(),
			firstName: edFirstName,
			lastName: edLastName,
			email: edEmail, 
			birthDate: edBirthDate,
			levels: levels
	}, function(xml){
			var error = $("error", xml).text();
			if(error == "No"){
				document.getElementById("btnChangeData").setAttribute("href","javascript:editPersonalData()");
				$("#edPersonalButtons").html("");				
				$("#edPersonalFirstName").text(edFirstName);
				$("#edPersonalLastName").text(edLastName);
				$("#edPersonalEmail").text(edEmail);
				$("#edPersonalBirthDate").text(edBirthDate);
			}
	});
}
function editPassword(user){
	$("#callbackStatus").hide();	
	var passwordEditor = "<br/>";
		passwordEditor += "<div class=\"panel\">";
		passwordEditor += "<h2 style=\"width: 175px;\">Promena lozinke</h2>";
		passwordEditor += "<form>";
		passwordEditor += "<table border=\"0\">";
		passwordEditor += "<tr><td width=\"115px\">Stara lozinka : </td>";
		passwordEditor += "<td><input type=\"password\" id=\"txtOldPass\" name=\"oldPass\"/></td></tr>";
		passwordEditor += "<tr><td>Nova lozinka : </td>";
		passwordEditor += "<td><input type=\"password\" id=\"txtChPasss1\" name=\"chPasss1\"/></td></tr>";
		passwordEditor += "<tr><td>Nova ponovo : </td>";
		passwordEditor += "<td><input type=\"password\" id=\"txtChPasss2\" name=\"chPasss2\"/></td></tr>";
		passwordEditor += "<tr><td colspan=\"2\" align=\"right\"><br/>";
		passwordEditor += "<input type=\"button\" value=\" Odustani \" onclick=\"javascript:cancelPasswordEdit()\" style=\"width:75px;\"/> ";
		passwordEditor += "<input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:saveNewPassword('"+user+"')\" style=\"width:75px;\"/>";
		passwordEditor += "</td></tr>";
		passwordEditor += "</table>";
		passwordEditor += "</form>";
		passwordEditor += "</div>";		
	$("#passwordEditor").html(passwordEditor);
}
function cancelPasswordEdit(){
	$("#passwordEditor").html("");
	$("#callbackStatus").hide();
}
function saveNewPassword(user){
	var oldPass = document.getElementById("txtOldPass").value;
	var chPass1 = document.getElementById("txtChPasss1").value;
	var chPass2 = document.getElementById("txtChPasss2").value;	
	if( (oldPass.length == 0) || (oldPass == " ") ||
	    (chPass1.length == 0) || (chPass1 == " ") ||	
		(chPass2.length == 0) || (chPass2 == " ")) {
		alert("Morate popuniti sva polja.");
	} else {	
		if(chPass1 == chPass2) {		
			$.post("http://www.msjb.org/_server/server.myPage.php", {
					action: "changePassword",
					userName: user,
					oldPass: oldPass,
					newPass: chPass1					
			}, function(xml){					
					var error = $("error", xml).text();
					if(error == "No"){
						$("#passwordEditor").html("");					
						$("#actionStatus").html("Lozinka uspe&scaron;no promenjena.").show();		
					} else if(error == "Yes"){					
						$("#actionStatus").html("");
						alert("Niste uneli ispravnu staru lozinku.");	
						$("#actionStatus").html("");
					}
			});
		} else {
			alert("Morate uneti istu lozinku za [Nova lozinka] i [Nova ponovo].");	
		}
	}
}
function flagUser(flagFor, flagFrom){	
	var form = "";
	form = "<table>";
	form += "<tr valign=\"top\">";
	form += "<td><small>Napišite razlog zašto ste označili stranicu korisnika  <b>"+flagFor+"</b> kao neprimerenu.</small><br/><br/></td>";
	form += "</tr>";
	form += "<tr valign=\"top\">";
	form += "<td>Razlog : </td></tr>";
	form += "<tr><td><textarea id=\"txtFlagReason\"></textarea></td>";
	form += "</tr>";
	form += "<tr><td colspan=\"2\" align=\"center\"><br/><input type=\"button\" value=\" Zatvori \" onclick=\"javascript:closeFlagEditor()\" style=\"width: 75px\">";
	form += " <input type=\"button\" value=\" Po&scaron;alji \" onclick=\"javascript:sendFlag('"+flagFor+"','"+flagFrom+"')\" style=\"width: 75px\"></td></tr>";
	form += "</table><div id=\"flagedStatus\"></div>";	
	$("#flagEditor").html(form).show();	
}
function closeFlagEditor(){
	$("#flagEditor").hide();	
}
function sendFlag(flagFor, flagFrom){
	$("#actionStatus").ajaxStart(function(){
			$(this).html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader(4).gif\" >");
	}).ajaxComplete(function(){
			$(this).html("Prijava poslata.").show();
	});
	$.post("http://www.msjb.org/_server/server.default.php", {
		action: "flagUser",
		flagFrom: flagFrom,
		flagFor: flagFor,
		reason: document.getElementById("txtFlagReason").value					
	}, function(xml){
			closeFlagEditor();		
		var error = $("error", xml).text();
		if(error == "No"){				
		} else if(error == "Yes"){						
		}
	});	
}
function doNothing(){}
