// JavaScript Document

var Lyrics = {
	author: "Milko Leporis",
	version: "0.1",
	forSite: "www.msjb.org",
	
	letters: new Array(),
	groups: new Array(),
	songsByLetter: new Array(),
	songsByGroup: new Array(),
	
	lyrics: "",
	versesNum: 0,
	refs: new Array(),
	
	by: "",
	letter: "",
	group: "",
	groupName: "",
	
	setMethod: function(by){
		Lyrics.by = by;
		Lyrics.closeSong();
		if(by == "Letter"){
			//$("#Lyrics_browseByLetter").fadeIn("slow");
			Lyrics.showLetterLinks();
			Lyrics.showSongsByLetter('first');
		} else if(by == "Group"){
			Lyrics.showSongGroups(0);
			Lyrics.showSongsByGroup(1);
		} else if(by == "Add"){
			Lyrics.addSong();	
		} else if(by == "Manage"){
			Lyrics.Manage.selectMode("Groups");	
		}
	},
	
	addLetter: function(letter){
		Lyrics.letters[Lyrics.letters.length] = letter;
	},
	addGroup: function(group){
		Lyrics.groups[Lyrics.groups.length] = group;
	},
	addSongByLetter: function(song){
		Lyrics.songsByLetter[Lyrics.songsByLetter.length] = song;
	},
	addSongByGroup: function(song){
		Lyrics.songsByGroup[Lyrics.songsByGroup.length] = song;
	},
	
	showLetterLinks: function(){
		$("#Lyrics_letterLinks").html("<img src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		Lyrics.letters = new Array();
		
		$.post("_server/server.lyrics.php", {
		action: "getLetters" 
		}, function(xml){
			if( $('error',xml).text() == "No"){
				
				var letters = $('letters',xml).text();
				var l = letters.split("|");
				for(j=0; j<l.length; j++){
					Lyrics.addLetter(l[j]);	
				}
				var retVal = "";
				for(var i=0; i<Lyrics.letters.length; i++){
					retVal += "<a href=\"javascript:Lyrics.showSongsByLetter('"+Lyrics.letters[i]+"')\" onmouseover=\"Tip('Pesme čiji naslov počinje sa "+Lyrics.letters[i]+"', SHADOW, true, ABOVE, true)\" onmouseout=\"UnTip()\">"+Lyrics.letters[i]+"</a> ";
				}
				
				$("#Lyrics_letterLinks").html(retVal);

			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});		
	},
	showSongsByLetter: function(letter){
		$("#Lyrics_songsByLetter").html("<img style=\"margin-left: 250px; margin-top: 15px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		Lyrics.letter = letter;
		Lyrics.songsByLetter = new Array();
		$.post("_server/server.lyrics.php", {
		action: "getSongsByLetter" ,
		letter: letter
		}, function(xml){
			if($('error',xml).text() == "No"){
				
				$("song", xml).each(function(id){
					song = $("song", xml).get(id);
					
					var songId = $("songId", song).text();
					var songTitle = $("songTitle", song).text();
					var songLetter = $("songLetter", song).text();
					var versesCount = $("versesCount", song).text();
					var songAuthor = $("songAuthor", song).text();
					var songCreationYear = $("songCreationYear", song).text();
					var songAdder = $("songAdder", song).text();
					var songAddingDate = $("songAddingDate", song).text();
					if(songAuthor == "")
						songAuthor = "<i>Nepoznat</i>";
					if(songCreationYear == 0)
						songCreationYear = "";
					
					songByLetter = new Array(songId,songTitle,songLetter,versesCount,songAuthor,songCreationYear,songAdder,songAddingDate);
					Lyrics.addSongByLetter(songByLetter);
				});	
				songs = Lyrics.drawSongsTable(Lyrics.songsByLetter,0);
				$("#Lyrics_songsByLetter").html(songs);		
			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});		
	},
	drawSongsTable: function(array,mod){
		var songs = "";
		if(mod == 1){
			for(var i=0; i<Lyrics.groups.length; i++){
				if(Lyrics.groups[i][0] == Lyrics.group){
					Lyrics.groupName = Lyrics.groups[i][1];
					break;
				}	
			}
			$("#Lyrics_GroupName").html(Lyrics.groupName);
			//songs += "<div style=\"font-size: 20px; font-weight: bold; margin-top: 0px;\">"+Lyrics.groupName+"</div>";
		}
		songs += "<table id=\"categoryTable\" cellpadding=\"3\" border=\"0\" cellspacing=\"1\">";
		
		for(i=0; i<array.length;i++){
			if(i%2 == 0)
				 bgColor = "#EDEDED";
			else
				 bgColor = "#FFFFFF";
			songs += "<tr bgcolor=\""+bgColor+"\">";
			
			if(mod == 2){
				songs += "<td width=\"305px\">"+array[i][1]+"</td>";
				songs += "<td width=\"185px\">";
				songs += "<a href=\"javascript:Lyrics.Manage.edit('"+array[i][0]+"','')\">izmeni</a>";
				songs += " <a href=\"javascript:Lyrics.Manage.deleteSong('"+array[i][0]+"')\">obriši</a>";
				songs += "</td>";
			} else {
				songs += "<td width=\"305px\"><a href=\"javascript:Lyrics.showLyrics('"+array[i][0]+"','"+mod+"')\">"+array[i][1]+"</a></td>";
				songs += "<td width=\"100px\">"+array[i][4]+"</td>";
				songs += "<td width=\"83px\">"+array[i][5]+"</td>";
			}
			songs += "</tr>";
		}

		songs += "</table>";
		
		return songs;
	},
	filterSongs: function(mod){
		if(mod == 0){ // by letter
			var tempArray = new Array();
			by = document.getElementById("Lyrics_byLetterFilter").value;
			by = by.toLowerCase();
			byLen = by.length;
			for(i=0; i<Lyrics.songsByLetter.length; i++){
				title = Lyrics.songsByLetter[i][1];
				title = title.toLowerCase();
				if(title.substr(0,byLen) == by)
					tempArray[tempArray.length] = Lyrics.songsByLetter[i];
			}
			songs = Lyrics.drawSongsTable(tempArray,0);
			$("#Lyrics_songsByLetter").html(songs);		
		} else if(mod == 1){ // by group
			var tempArray = new Array();
			by = document.getElementById("Lyrics_byGroupFilter").value;
			by = by.toLowerCase();
			byLen = by.length;
			for(i=0; i<Lyrics.songsByGroup.length; i++){
				title = Lyrics.songsByGroup[i][1];
				title = title.toLowerCase();
				if(title.substr(0,byLen) == by)
					tempArray[tempArray.length] = Lyrics.songsByGroup[i];
			}
			songs = Lyrics.drawSongsTable(tempArray,1);
			$("#Lyrics_songsByGroup").html(songs);		
		} else if(mod == 2){ // by letter for edit
			var tempArray = new Array();
			by = document.getElementById("Lyrics_byLetterEditFilter").value;
			by = by.toLowerCase();
			byLen = by.length;
			for(i=0; i<Lyrics.songsByLetter.length; i++){
				title = Lyrics.songsByLetter[i][1];
				title = title.toLowerCase();
				if(title.substr(0,byLen) == by)
					tempArray[tempArray.length] = Lyrics.songsByLetter[i];
			}
			songs = Lyrics.drawSongsTable(tempArray,2);
			$("#Lyrics_Manage_Songs_Manager_Songs").html(songs);		
		}
	},
	showLyrics: function(songId,mod){
		$("#Lyrics_songLyrics_1").html("<img style=\"margin-left: 250px; margin-top: 30px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		$("#Lyrics_songLyrics_2").html("<img style=\"margin-left: 250px; margin-top: 30px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		$("#Lyrics_songLyrics_3").html("<img style=\"margin-left: 250px; margin-top: 30px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		var song = new Array();
		var songVerses = new Array();
		var songGroups = new Array();
		Lyrics.refs = new Array();
		
		$.post("_server/server.lyrics.php", {
		action: "showLyrics",
		song: songId
		}, function(xml){
			if($('error',xml).text() == "No"){
				
				var songTitle = $("songTitle", xml).text();
				var versesCount = $("versesCount", xml).text();
				var songAuthor = $("songAuthor", xml).text();
				var songCreationYear = $("songCreationYear", xml).text();
				var songAddingDate = $("songAddingDate", xml).text();
				
				Lyrics.verseNum = versesCount;
				
				song = new Array(songTitle,versesCount,songAuthor,songCreationYear,songAddingDate);
				
				$("songverse", xml).each(function(id){
					songverse = $("songverse", xml).get(id);
					var verseNumber = $("verseNumber", songverse).text();
					var verseText = $("verseText", songverse).text();
					var isRef = $("isRef", songverse).text();
					v = new Array(verseNumber, verseText, isRef);
					Lyrics.refs[Lyrics.refs.length] = isRef;
					songVerses[songVerses.length] = v;
				});
				
				$("songgroup", xml).each(function(id){
					songgroup = $("songgroup", xml).get(id);
					var sgId = $("sgId", songgroup).text();
					var sgName = $("sgName", songgroup).text();
					sg = new Array(sgId, sgName);
					songGroups[songGroups.length] = sg;
				});
				
				Lyrics.displayLyrics(song,songVerses,songGroups,mod);
			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});	
	},
	displayLyrics: function(song,verses,groups, mod){
		
		var toolbar = "";
		var details = "";
		var lyrics = "";
		
		toolbar += "<div style=\"text-align:left\">";
		//toolbar += "<a href=\"javascript:Lyrics.printPreview()\" title=\"Print Preview\"><img src=\"http://www.msjb.org/_images/imgPrintPreview.jpg\" border=\"0\"></a>";
		
		/*
		onmouseover="Tip('Pretraga pesama po početnom slovu pesme.', SHADOW, true, ABOVE, true)" 
								onmouseout="UnTip()"
		*/
		
		toolbar += " <a href=\"javascript:Lyrics.fullscreen()\" onmouseover=\"Tip('Fullscreen prikaz pesme.', SHADOW, true, ABOVE, true)\" onmouseout=\"UnTip()\"><img src=\"http://www.msjb.org/_images/imgFullscreen.jpg\" border=\"0\"></a>";
		toolbar += " <a href=\"javascript:Lyrics.toPDF()\" onmouseover=\"Tip('Export pesme u PDF.', SHADOW, true, ABOVE, true)\" onmouseout=\"UnTip()\"><img src=\"http://www.msjb.org/_images/imgPDF.jpg\" border=\"0\"></a>";
		toolbar += "</div><br/>";
		
		
		details += "<div style=\"text-align:right\">"+song[2];
		if(song[3] != 0)
			details += ", "+song[3]+"</div>";
		else
			details += "</div><br/>";
		
		if(mod == 1){
			details += "<div style=\"text-align:right\">";
			temp = "<img src=\"http://www.msjb.org/_images/imgSongCategoriesSmall.jpg\" align=\"absmiddle\"> ";
			for(i=0; i<groups.length;i++){
					temp += "<a href=\"javascript:Lyrics.showSongsByGroup('"+groups[i][0]+"')\">"+groups[i][1]+"</a>,";	
			}	
			temp = temp.substr(0,temp.length-1);
			details += temp;
			details += "</div><br/>";
		}
		lyrics += "<h1 id=\"Lyrics_lyricsTitle\" style=\"text-align:center\">"+song[0]+"</h1>";
		
		lyrics += "<div id=\"Lyrics_lyricsContent\">";
		for(j=0; j<verses.length; j++){
			if(verses[j][2] == 1)
				refStyle = ";font-weight: bold;";
			else
				refStyle = ";";
			lyrics += "<div id=\"Lyrics_verse_"+j+"\" style=\"text-align:center"+refStyle+"\"><pre>";
			lyrics += verses[j][1];
			lyrics += "</pre></div>";
		}
		lyrics += "</div>";
		
		Lyrics.lyrics = lyrics;
		$("#Lyrics_songLyrics_1").html(toolbar+details+lyrics);
		$("#Lyrics_songLyrics_2").html(toolbar+details+lyrics);
		$("#Lyrics_songLyrics_3").html(toolbar+details+lyrics);
	},
	closeSong: function(){
		$("#Lyrics_songLyrics_1").html("");	
		$("#Lyrics_songLyrics_2").html("");	
	},
	showSongGroups: function(mod){
		$("#Lyrics_songGroups").html("<img style=\"margin-left: 250px; margin-top: 15px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		Lyrics.groups = new Array();
		$.post("_server/server.lyrics.php", {
		action: "getGroups" 
		}, function(xml){
			if($('error',xml).text() == "No"){
				
				$("songgroup", xml).each(function(id){
					songgroup = $("songgroup", xml).get(id);
					var sgId = $("sgId", songgroup).text();
					var sgName = $("sgName", songgroup).text();
					sg = new Array(sgId, sgName);
					Lyrics.addGroup(sg);
				});
				if(mod == 0){
					var retVal = "";
					for(var i=0; i<Lyrics.groups.length; i++){
						retVal += "<a href=\"javascript:Lyrics.showSongsByGroup('"+Lyrics.groups[i][0]+"','"+Lyrics.groups[i][1]+"')\">"+Lyrics.groups[i][1]+"</a> ";
					}
					//temp = $("#Lyrics_songGroups").html();
					$("#Lyrics_songGroups").html(retVal);
				
				} else if(mod == 1){
					Lyrics.populateGroupPicker();	
				}
						
			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});	
	},
	showSongsByGroup: function(group, groupName){
		$("#Lyrics_songsByGroup").html("<img style=\"margin-left: 250px; margin-top: 15px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		Lyrics.group = group;
		Lyrics.groupName = groupName;
		Lyrics.songsByGroup = new Array();
		$.post("_server/server.lyrics.php", {
		action: "getSongsByGroup" ,
		group: group
		}, function(xml){
			if($('error',xml).text() == "No"){
				
				$("song", xml).each(function(id){
					song = $("song", xml).get(id);
					
					var songId = $("songId", song).text();
					var songTitle = $("songTitle", song).text();
					var songLetter = $("songLetter", song).text();
					var versesCount = $("versesCount", song).text();
					var songAuthor = $("songAuthor", song).text();
					var songCreationYear = $("songCreationYear", song).text();
					var songAdder = $("songAdder", song).text();
					var songAddingDate = $("songAddingDate", song).text();
					if(songAuthor == "")
						songAuthor = "<i>Nepoznat</i>";
					if(songCreationYear == 0)
						songCreationYear = "";
					
					songsByGroup = new Array(songId,songTitle,songLetter,versesCount,songAuthor,songCreationYear,songAdder,songAddingDate);
					Lyrics.addSongByGroup(songsByGroup);
				});	
				songs = Lyrics.drawSongsTable(Lyrics.songsByGroup,1);
				$("#Lyrics_songsByGroup").html(songs);		
			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});		
	},
	addSong: function(){
		$("#Lyrics_songSaved").hide();
		if(Lyrics.groups.length == 0)
			Lyrics.showSongGroups(1);
		Lyrics.populateGroupPicker();
		$("#Lyrics_addSong").show();
		Lyrics.emptySongAdder();
	},
	emptySongAdder: function(){
		if(document.getElementById("Lyrics_newSongName") != null) {
			document.getElementById("Lyrics_newSongName").value = "";
			document.getElementById("Lyrics_newSongAuthor").value = "";
			document.getElementById("Lyrics_newSongYear").value = "";
			document.getElementById("Lyrics_newSongVerseCount").value = "";
		}
	},
	closeSongAdder: function(){
		$("#Lyrics_addSong").hide();
	},
	populateGroupPicker: function(){
		retVal = "";
		for(i=0; i<Lyrics.groups.length; i++){
			retVal += "<option value=\""+Lyrics.groups[i][0]+"\">"+Lyrics.groups[i][1]+"</option>";
		}
		retVal += "<option value=\"0\" selected=\"selected\">.. izaberi ..</option>";
		$("#Lyrics_newSongGroup_1").html(retVal);
		$("#Lyrics_newSongGroup_2").html(retVal);
		$("#Lyrics_newSongGroup_3").html(retVal);
	},
	addNewGroup: function(){
		$("#Lyrics_newGroup").show();
	},
	closeGroupAdder: function(){
		$("#Lyrics_newGroup").hide();
	},
	saveGroup: function(){
		$("#Lyrics_GroupAdderStatus").html("...");
		$.post("_server/server.lyrics.php", {
			action: "saveGroup",
			gName: document.getElementById("Lyrics_newGroupTitle").value
		}, function(xml){
			if($('error',xml).text() == "No"){
				Lyrics.showSongGroups(1);
				$("#Lyrics_GroupAdderStatus").html("Kategorija sačuvana.");
			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});	
	},
	setupVerses: function(edited){
		var retVal = "<br/><br/><br/><br/>";
		var versesCount = document.getElementById("Lyrics_newSongVerseCount").value;
		for(i=0; i<versesCount; i++){
			retVal += "<input type=\"checkbox\" id=\"Lyrics_isVerse_"+i+"_ref\" /><label for=\"Lyrics_isVerse_"+i+"_ref\"> Refren?</label><br/>";
			retVal += "<textarea id=\"Lyrics_verse_"+i+"\" cols=\"55\" rows=\"5\"></textarea><br/><br/>";
		}
		retVal += "<input type=\"button\" value=\" Sačuvaj \" onclick=\"javascript:Lyrics.saveSong("+edited+")\">";
		$("#Lyrics_writer").html(retVal);	
	},
	songSaved: function(){
		$("#Lyrics_songSaver").fadeOut("slow");
		$("#Lyrics_songSaved").show();
		$("#Lyrics_writer").html("");	
	},
	saveSong: function(edited){
		
		
		var verseCount = document.getElementById("Lyrics_newSongVerseCount").value;
		var verses = "";
		var refs = "";
		for(i=0; i<verseCount; i++){
			verses += document.getElementById("Lyrics_verse_"+i).value+"|";
			refs += document.getElementById("Lyrics_isVerse_"+i+"_ref").checked+"|";
		}
		verses = verses.substr(0,verses.length-1);
		refs = refs.substr(0,refs.length-1);
		
		$("#Lyrics_songSaver").show();
		
		Lyrics.closeSongAdder();
		
		
		$.post("_server/server.lyrics.php", {
		action: "saveSong",
		edited: edited,
		title: document.getElementById("Lyrics_newSongName").value,
		author: document.getElementById("Lyrics_newSongAuthor").value,
		year: document.getElementById("Lyrics_newSongYear").value,
		group_1: document.getElementById("Lyrics_newSongGroup_1").value,
		group_2: document.getElementById("Lyrics_newSongGroup_2").value,
		group_3: document.getElementById("Lyrics_newSongGroup_3").value,
		menager: document.getElementById("Lyrics_newSongAdder").value,
		verseCount: verseCount,
		verses: verses,
		isRef: refs
		}, function(xml){
			if($('error',xml).text() == "No"){
				Lyrics.songSaved();		
			} else {
				alert("Greška : Servis trenutno nije moguć.");
			}
		});
	},
	printPreview: function(){
		$("#Lyrics_printSetup").show();	
		
		$("#Lyrics_printPreview").html(Lyrics.lyrics);
	},
	toPDF: function(){
		$("#Lyrics_exportPDFSetup").show();	
		$("#Lyrics_pdfPreview").html(Lyrics.lyrics);	
		
		var title = $("#Lyrics_lyricsTitle").text();
		var verses = "";
		for(i=0; i<Lyrics.verseNum; i++){
			verses += $("#Lyrics_verse_"+i).text()+"|";
		}
		verses = verses.substring(0,verses.length-1);
		
		document.getElementById("Lyrics_pdfTitle").value = title;
		document.getElementById("Lyrics_pdfVerses").value = verses;
		document.getElementById("Lyrics_pdfRefs").value = Lyrics.refs;
	},
	print: function(){
		var _c = document.createElement("IFRAME");
		var _d = null;
		_c.style.cssText = "position:absolute;width:21cm;height:29.7cm;background-color: #FFFFFF;z-index:101";
		//_c.style.cssText = "position:absolute;width:0px;height:0px;left:-500px;top:-500px;";
		document.body.appendChild(_c);
		_d = _c.contentWindow.document;
		var lyrics = $("#Lyrics_printPreview").html();
		//alert(lyrics);
		_d.write("<div>"+lyrics+"</div>");
		_d.close();
		_c.contentWindow.focus();
		_c.contentWindow.print();
		alert("Printing...");
		//document.body.removeChild(_c);
	},
	exportToPDF: function(){
		
	},
	fullscreen: function(){
		newWindow = window.open("","Pesma",
		"resizable,scrollbars");
		newWindow.document.write("<style type=\"text/css\">.Lyrics_fullscreen h1{font-size: 36px;font-family: Verdana, Arial, Helvetica, sans-serif;} .Lyrics_fullscreen{font-size: 30px;} .Lyrics_fullscreen pre{font-family: Verdana, Arial, Helvetica, sans-serif;}</style>");
		newWindow.document.write("<div class=\"Lyrics_fullscreen\">"+Lyrics.lyrics+"</div>");
		newWindow.focus( );	
	},
	closePrintPreview: function(){
		$("#Lyrics_printSetup").hide();	
	},
	updatePrintColor: function(){
		var color = "#"+document.getElementById("Lyrics_printColor").value;
		$("#Lyrics_lyricsTitle").css("color",color);
		$("#Lyrics_lyricsContent").css("color",color);
	},
	updatePrintFont: function(){
		var font = document.getElementById("Lyrics_printFont").value;
		$("#Lyrics_lyricsTitle").css("font-family",font);
		$("#Lyrics_printPreview pre").css("font-family",font);
	},
	updatePrintSize: function(){
		var size = document.getElementById("Lyrics_printSize").value+"pt";
		$("#Lyrics_lyricsTitle").css("font-size",size);
		$("#Lyrics_lyricsContent pre").css("font-size",size);
	},
	closePDFExportPreview: function(){
		$("#Lyrics_exportPDFSetup").hide();	
	},
	updatePDFColor: function(){
		var color = "rgb("+document.getElementById("Lyrics_PDFColor").value+")";
		$("#Lyrics_lyricsTitle").css("color",color);
		$("#Lyrics_lyricsContent").css("color",color);
	},
	updatePDFFont: function(){
		var font = document.getElementById("Lyrics_PDFFont").value;
		$("#Lyrics_lyricsTitle").css("font-family",font);
		$("#Lyrics_pdfPreview pre").css("font-family",font);
	},
	updatePDFSize: function(){
		var size = document.getElementById("Lyrics_PDFSize").value+"pt";
		$("#Lyrics_lyricsTitle").css("font-size",size);
		$("#Lyrics_lyricsContent pre").css("font-size",size);
	},
	search: function(page){
		$("#Lyrics_searchResultsStats").html("").hide();
		$("#Lyrics_searchResults").html("<img style=\"margin-left: 250px; margin-top: 15px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
		var q = document.getElementById("Lyrics_searchBox").value;
		var resultsHTML = "";
		var statsHTML = "";
		$.post("_server/server.lyrics.php", {
		action: "search",
		q: q,
		page: page
		}, function(xml){
			if($('error',xml).text() == "No"){
				statsHTML += "Broj rezultata : <b>"+$('resNum',xml).text()+"</b><br/>";
				$("#Lyrics_searchResultsStats").html(statsHTML).show();	
				
				resultsHTML = "";
				num = 1;
				$("song", xml).each(function(id){
					song = $("song", xml).get(id);
					
					var songId = $("songId", song).text();
					var songTitle = $("songTitle", song).text();
					var songLetter = $("songLetter", song).text();
					var versesCount = $("versesCount", song).text();
					var songAuthor = $("songAuthor", song).text();
					var songCreationYear = $("songCreationYear", song).text();
					var songAdder = $("songAdder", song).text();
					var songAddingDate = $("songAddingDate", song).text();
					if(songAuthor == "")
						songAuthor = "<i>Nepoznat</i>";
					if(songCreationYear == 0)
						songCreationYear = "";
					resultsHTML += "<div class=\"Lyrics_searchResult\">";
					resultsHTML += "<div style=\"float:right;\">";
					resultsHTML += "autor : "+songAuthor+", godina : "+songCreationYear;
					resultsHTML += "</div>";
					resultsHTML += num+". <a href=\"javascript:Lyrics.showLyrics('"+songId+"','0')\">"+songTitle+"</a>";
					
					resultsHTML += "</div>";
					
					num++;
				});	
				
				
				$("#Lyrics_searchResults").html(resultsHTML);	
			} else {
				$("#Lyrics_searchResultsStats").html("").hide();
				html = "";
				html += '<div class="Lyrics_error" style="display: block">';
				html += 'Nema rezultata.';
				html += '</div>';
				$("#Lyrics_searchResults").html(html);
			}
		});
		
	},
	Manage : {
		activeMode: "Songs",
		selectMode: function(mode){
			Lyrics.Manage.activeMode = mode;
			$("#Lyrics_Manage_Songs").hide();
			$("#Lyrics_Manage_Groups").hide();
			$("#Lyrics_Manage_"+Lyrics.Manage.activeMode).show();
			Lyrics.Manage.initManager(mode);
		},
		initManager: function(mode){
			var managerHTML = "";
			if(mode == "Songs"){
				$("#Lyrics_Maneger_Song_editor").html("");
				retVal = "";
				for(var i=0; i<Lyrics.letters.length; i++){
					retVal += "<a href=\"javascript:Lyrics.Manage.showSongsForEdit('"+Lyrics.letters[i]+"')\">"+Lyrics.letters[i]+"</a> ";
				}
				$("#Lyrics_Manage_Songs_Manager_Letters").html(retVal+" <br/><br/><br/>");
				Lyrics.Manage.showSongsForEdit(Lyrics.letters[0]);
			} else if(mode == "Groups"){
				$("#Lyrics_Manage_Group_Manager").html("<img style=\"margin-left: 250px; margin-top: 15px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
				Lyrics.groups = new Array();
				$.post("_server/server.lyrics.php", {
				action: "getGroups" 
				}, function(xml){
					if($('error',xml).text() == "No"){
						
						$("songgroup", xml).each(function(id){
							songgroup = $("songgroup", xml).get(id);
							var sgId = $("sgId", songgroup).text();
							var sgName = $("sgName", songgroup).text();
							sg = new Array(sgId, sgName);
							Lyrics.addGroup(sg);
						});
						managerHTML += "<table id=\"Lyrics_Manage_Table\" border=\"0\" cellspacing=\"0\" cellpadding=\"3px\">";
						for(var i=0; i<Lyrics.groups.length; i++){
							if(i%2 == 0)
								 bgColor = "#EDEDED";
							else
								 bgColor = "#FFFFFF";
							managerHTML += "<tr bgcolor=\""+bgColor+"\">";
							managerHTML += "<td width=\"400px\">";
							managerHTML += Lyrics.groups[i][1];
							//managerHTML += "<a href=\"javascript:Lyrics.showSongsByGroup('"+Lyrics.groups[i][0]+"','"+Lyrics.groups[i][1]+"')\">"+Lyrics.groups[i][1]+"</a> ";
							managerHTML += "</td>";
							managerHTML += "<td width=\"75px\"><a href=\"javascript:Lyrics.Manage.edit('"+Lyrics.groups[i][0]+"','"+Lyrics.groups[i][1]+"')\">promeni</a></td>";
							managerHTML += "</tr>";
						}
						managerHTML += "</table>";
						$("#Lyrics_Manage_Group_Manager").html(managerHTML);	
					} else {
						alert("Greška : Servis trenutno nije moguć.");
					}
				});	
				
				
				
			}	
		},
		showSongsForEdit: function(letter){
			$("#Lyrics_Manage_Songs_Manager_Songs").html("<img style=\"margin-left: 250px; margin-top: 15px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
			
			Lyrics.letter = letter;
			Lyrics.songsByLetter = new Array();
			$.post("_server/server.lyrics.php", {
			action: "getSongsByLetter" ,
			letter: letter
			}, function(xml){
				if($('error',xml).text() == "No"){
					
					$("song", xml).each(function(id){
						song = $("song", xml).get(id);
						
						var songId = $("songId", song).text();
						var songTitle = $("songTitle", song).text();
						var songLetter = $("songLetter", song).text();
						var versesCount = $("versesCount", song).text();
						var songAuthor = $("songAuthor", song).text();
						var songCreationYear = $("songCreationYear", song).text();
						var songAdder = $("songAdder", song).text();
						var songAddingDate = $("songAddingDate", song).text();
						if(songAuthor == "")
							songAuthor = "<i>Nepoznat</i>";
						if(songCreationYear == 0)
							songCreationYear = "";
						
						songByLetter = new Array(songId,songTitle,songLetter,versesCount,songAuthor,songCreationYear,songAdder,songAddingDate);
						Lyrics.addSongByLetter(songByLetter);
					});	
					songs = Lyrics.drawSongsTable(Lyrics.songsByLetter,2);
					$("#Lyrics_Manage_Songs_Manager_Songs").html(songs);		
				} else {
					alert("Greška : Servis trenutno nije moguć.");
				}
			});			
		},
		edit: function(id, name){
			if(Lyrics.Manage.activeMode == "Groups"){
					html = "";
					html += '<label for="Lyrics_Manage_GroupOldName">Naziv : </label>';
					html += '<input type="text" id="Lyrics_Manage_GroupOldName" value="'+name+'"/>';
					html += ' <input type="button" value=" Sačuvaj " onclick="javascript:Lyrics.Manage.save(\''+id+'\')"/>';
					$("#Lyrics_Maneger_Group_editor").html(html).show();	
			}
			if(Lyrics.Manage.activeMode == "Songs"){
					html = "";
					$("#Lyrics_Maneger_Song_editor").html("<img style=\"margin-left: 250px; margin-top: 30px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader.gif\" >");
					var song = new Array();
					var songVerses = new Array();
					var songGroups = new Array();
					Lyrics.refs = new Array();
					
					$.post("_server/server.lyrics.php", {
					action: "showLyrics",
					song: id
					}, function(xml){
						if($('error',xml).text() == "No"){
							
							var songTitle = $("songTitle", xml).text();
							var versesCount = $("versesCount", xml).text();
							var songAuthor = $("songAuthor", xml).text();
							var songCreationYear = $("songCreationYear", xml).text();
							var songAdder = $("songAdder", xml).text();
							var songAddingDate = $("songAddingDate", xml).text();
							
							Lyrics.verseNum = versesCount;
							
							song = new Array(songTitle,versesCount,songAuthor,songCreationYear,songAddingDate,songAdder);
							
							$("songverse", xml).each(function(id){
								songverse = $("songverse", xml).get(id);
								var verseId = $("verseId", songverse).text();
								var verseNumber = $("verseNumber", songverse).text();
								var verseText = $("verseText", songverse).text();
								var isRef = $("isRef", songverse).text();
								v = new Array(verseNumber, verseText, isRef, verseId);
								Lyrics.refs[Lyrics.refs.length] = isRef;
								songVerses[songVerses.length] = v;
							});
							
							$("songgroup", xml).each(function(id){
								songgroup = $("songgroup", xml).get(id);
								var sgId = $("sgId", songgroup).text();
								var sgName = $("sgName", songgroup).text();
								sg = new Array(sgId, sgName);
								songGroups[songGroups.length] = sg;
							});
							
							html = "<table>";
							html += '<tr>';
							html += '<td><label for="Lyrics_Manage_editTitle">Naziv : </label></td>';
							html += '<td><input type="text" id="Lyrics_Manage_editTitle" value="'+song[0]+'" size="50" maxlength="250"/></td>';
							html += '</tr>';
							html += '<tr>';
							html += '<td><label for="Lyrics_Manage_editAuthor">Autor : </label></td>';
							html += '<td><input type="text" id="Lyrics_Manage_editAuthor" value="'+song[2]+'" size="20" maxlength="250"/><small> nije obavezno</small></td>';
							html += '</tr>';
							html += '<tr>';
							html += '<td><label for="Lyrics_Manage_editYear">Godina nastanka : </label></td>';
							if(song[3] == 0)
								year = "";
							else
								year = song[3];
							html += '<td><input type="text" id="Lyrics_Manage_editYear" value="'+year+'" size="4" maxlength="4"/><small> nije obavezno</small></td>';
							html += '</tr>';
							
							html += '<tr>';
							html += '<td><br/><label for="Lyrics_Manage_editGroups">Kategorija : </label></td>';
							html += '<td><br/>';
							
							html += '<select id="Lyrics_Manage_editGroup_1">';
							
							retVal = "";
							var choose = true;
							for(i=0; i<Lyrics.groups.length; i++){
								if(songGroups[0] != null && songGroups[0][0] == Lyrics.groups[i][0]) {
									retVal += "<option value=\""+Lyrics.groups[i][0]+"\" selected=\"selected\">"+Lyrics.groups[i][1]+"</option>";
									choose = false;
								} else {
									retVal += "<option value=\""+Lyrics.groups[i][0]+"\">"+Lyrics.groups[i][1]+"</option>";
								}
							}
							if(choose)
								retVal += "<option value=\"0\" selected=\"selected\">.. izaberi ..</option>";
							else
								retVal += "<option value=\"0\">.. izaberi ..</option>";
							html += retVal;
							html += '</select>';
							html += ' <select id="Lyrics_Manage_editGroup_2">';
							retVal = "";
							choose = true;
							for(i=0; i<Lyrics.groups.length; i++){
								if(songGroups[1] != null && songGroups[1][0] == Lyrics.groups[i][0]) {
									retVal += "<option value=\""+Lyrics.groups[i][0]+"\" selected=\"selected\">"+Lyrics.groups[i][1]+"</option>";
									choose = false;
								} else {
									retVal += "<option value=\""+Lyrics.groups[i][0]+"\">"+Lyrics.groups[i][1]+"</option>";
								}
							}
							if(choose)
								retVal += "<option value=\"0\" selected=\"selected\">.. izaberi ..</option>";
							else
								retVal += "<option value=\"0\">.. izaberi ..</option>";
							html += retVal;
							choose = true;
							html += '</select>';
							html += ' <select id="Lyrics_Manage_editGroup_3">';
							retVal = "";
							for(i=0; i<Lyrics.groups.length; i++){
								if(songGroups[2] != null && songGroups[2][0] == Lyrics.groups[i][0]) {
									retVal += "<option value=\""+Lyrics.groups[i][0]+"\" selected=\"selected\">"+Lyrics.groups[i][1]+"</option>";
									choose = false;
								} else {
									retVal += "<option value=\""+Lyrics.groups[i][0]+"\">"+Lyrics.groups[i][1]+"</option>";
								}
							}
							if(choose)
								retVal += "<option value=\"0\" selected=\"selected\">.. izaberi ..</option>";
							else
								retVal += "<option value=\"0\">.. izaberi ..</option>";
							html += retVal;
							html += '</select>';
							html += '</td>';
							html += '</tr>';
							
							html += '<tr>';
							html += '<td><br/><label for="Lyrics_Manage_editManager">Lyrics Manager : </label></td>';
							html += '<td><br/><input type="text" id="Lyrics_Manage_editManager" value="'+song[5]+'" size="20" maxlength="20" disabled="disabled"/></td>';
							html += '</tr>';
							html += '<tr>';
							html += '<td><label for="Lyrics_Manage_editDate">Datum : </label></td>';
							html += '<td><input type="text" id="Lyrics_Manage_editDate" value="'+song[4]+'" size="10" maxlength="10" disabled="disabled"/></td>';
							html += '</tr>';
							
							
							for(var i=0; i<song[1]; i++){
								html += '<tr valign="top">';
								html += '<td><br/>strofa '+(i+1)+'.</td>';
								html += '<td><br/>';
								if(songVerses[i][2] == 1)
									html += '<input type="checkbox" checked="checked" id="Lyrics_Manage_isVerse_'+i+'_ref" /><label for="Lyrics_Manage_isVerse_'+i+'_ref"> Refren?</label><br/>';
								else
									html += '<input type="checkbox" id="Lyrics_Manage_isVerse_'+i+'_ref" /><label for="Lyrics_Manage_isVerse_'+i+'_ref"> Refren?</label><br/>';
								html += '<textarea id="Lyrics_Manage_editVerse_'+i+'" cols="40" rows="5">'+songVerses[i][1]+'</textarea>';
								html += '<input type="hidden" id="Lyrics_Manage_verseId_'+i+'" value="'+songVerses[i][3]+'" /></td>';
								html += '</tr>';		
							}
							
							html += '<tr>';
							html += '<td><br/>&nbsp;</td>';
							html += '<td><br/><input style="width:150px; float: right" type="button" value=" Sačuvaj izmene " onclick="Lyrics.Manage.save(\''+id+'\')"/></td>';
							html += '</tr>';
							html += "</table>";
							html += '<input type="hidden" id="Lyrics_Manage_verseCount" value="'+song[1]+'" />';
							$("#Lyrics_Maneger_Song_editor").html(html).show();	
						} else {
							alert("Greška : Servis trenutno nije moguć.");
						}
					});	
					
					
					
			}
		},
		closeEdit: function(){
			if(Lyrics.Manage.activeMode == "Groups"){
				$("#Lyrics_Maneger_Group_editor").html("").hide();	
			}	
		},
		save: function(id){
			if(Lyrics.Manage.activeMode == "Groups"){
				$.post("_server/server.lyrics.php", {
					action: "editGroupName",
					name: document.getElementById("Lyrics_Manage_GroupOldName").value,
					id: id
				}, function(xml){
					if($('error',xml).text() == "No"){
						Lyrics.Manage.closeEdit();
						$("#Lyrics_Manage_"+Lyrics.Manage.activeMode).show();
						Lyrics.Manage.initManager(Lyrics.Manage.activeMode);
						
					} else {
						alert("Greška : Servis trenutno nije moguć.");
					}
				});
			} 
			if(Lyrics.Manage.activeMode == "Songs"){
				
				var verseCount = document.getElementById("Lyrics_Manage_verseCount").value;
				var verses = "";
				var verseIds = "";
				var refs = "";
				for(i=0; i<verseCount; i++){
					verses += document.getElementById("Lyrics_Manage_editVerse_"+i).value+"|";
					verseIds += document.getElementById("Lyrics_Manage_verseId_"+i).value+"|";
					refs += document.getElementById("Lyrics_Manage_isVerse_"+i+"_ref").checked+"|";
				}
				verses = verses.substr(0,verses.length-1);
				refs = refs.substr(0,refs.length-1);
				
				var title = document.getElementById("Lyrics_Manage_editTitle").value;
				var author = document.getElementById("Lyrics_Manage_editAuthor").value;
				var year = document.getElementById("Lyrics_Manage_editYear").value;
				var group_1 = document.getElementById("Lyrics_Manage_editGroup_1").value;
				var group_2 = document.getElementById("Lyrics_Manage_editGroup_2").value;
				var group_3 = document.getElementById("Lyrics_Manage_editGroup_3").value;
				var menager = document.getElementById("Lyrics_Manage_editManager").value;
				
				$("#Lyrics_Maneger_Song_editor").html("<img style=\"margin-left: 230px; margin-top: 30px\"src=\"http://www.msjb.org/_images/loaders/ajax-loader(3).gif\" >");
		
				$.post("_server/server.lyrics.php", {
				action: "saveEditedSong",
				title: title,
				author: author,
				year: year,
				group_1: group_1,
				group_2: group_2,
				group_3: group_3,
				menager: menager,
				verseCount: verseCount,
				verses: verses,
				verseIds: verseIds,
				isRef: refs,
				id: id
				}, function(xml){
					if($('error',xml).text() == "No"){
						Lyrics.Manage.showSongsForEdit(Lyrics.letter);
						html = "";
						html += '<div class="Lyrics_notification" style="display: block">';
						html += 'Izmene sačuvane.';
						html += '</div>';
						$("#Lyrics_Maneger_Song_editor").html(html);
					} else {
						alert("Greška : Servis trenutno nije moguć.");
					}
				});
			}	
		},
		deleteSong: function(id){
			$.post("_server/server.lyrics.php", {
				action: "deleteSong",
				id: id
			}, function(xml){
				if($('error',xml).text() == "No"){
					Lyrics.Manage.showSongsForEdit(Lyrics.letter);	
				} else {
					alert("Greška : Servis trenutno nije moguć.");
				}
			});
		}
	}
};

$(document).ready(function(){
	//Tabs.showTab('Letter');
});

var ids = new Array("1","2","3","4","5");
var lyricsTabs = new LMW_Tabs(ids,ids,'Lyrics'); 
