var countBeforeFocus;
function trim(strVal) {

    if (strVal == null || strVal == "")
        return "";

    // Trim whitespace from left end of string
    var i = 0;
    var c = null;

    do {
        c = strVal.charAt (i++);
    } while (c == " " && i < strVal.length);

    if (c == " " && i == strVal.length)
        return "";

    strVal = strVal.substr (i - 1);
   
    // Trim whitespace from right end of string
    i = strVal.length - 1;
    c = null;
    do {
        c = strVal.charAt (i--);
    } while (c == " " && i > -1);
   
    strVal = strVal.substring (0, i + 2);
   
    return strVal;
}




function makemp3() {
	albumname =  document.albmakefrm.album_name.value;
	if (albumname==''){
		alert('Please enter a name for your collection.');
		document.albmakefrm.album_name.focus();
		return;
	}

	var myMatch = /[^a-zA-Z0-9\-_]/;

	if (albumname.search(myMatch)>-1){ 
		alert("Only following characters can be used to name your album: a-z, 0-9, - and _");
		document.albmakefrm.album_name.focus();
		return;
	}
	
	document.albmakefrm.submit();
}

function showMp3Menu() {
	ayah =  document.albumfrm.ayahcount.value;
	if (ayah <1){
		alert('Your collection is empty. Please add one or more ayahs and try again.');
		return;
	}
	document.location.href='/cgi-bin/java?handler=QExplorer&action=mp3menu';
}


function setAlbumName() {
	name = document.albumfrm.albumname.value;
	if (name=='') {
		alert('Please enter a name for your collection.');
		return;
	}
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=setname&name=' + name;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Setting name. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
	}	
}

function changeLang(chkbx, aid) {
	val = 0;
	if (chkbx.checked) {
		val = 1;
	}
	
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=setalbumlang&aid=' + aid + "&val="+val;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Changing. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
	}	
}


function editalbum(albumname) {
		xmlHttp=GetXmlHttpObject(albumHandler);
		if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
		}
		var url='/cgi-bin/java?handler=QExplorer&action=modifyAlb&album=' + albumname;
		document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Loading Album. Please wait...</font>" ;
		xmlHttp.open("GET", url , true) 
		xmlHttp.send(null) 
}

function deletealbum(albumname) {
	 if (!confirm("Are you sure you want to delete this collection?")) {
	 	return;
	 }
	
		xmlHttp=GetXmlHttpObject(albumHandler);
		if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
		}
		var url='/cgi-bin/java?handler=QExplorer&action=deleteAlb&album=' + albumname;
		document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Removing Album. Please wait...</font>" ;
		xmlHttp.open("GET", url , true) 
		xmlHttp.send(null) 
}

function removemp3(aid) {
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=delmp3&aid=' + aid;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Removing mp3. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
	} 
}

function addmp3(queryparam, aid) {
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=addmp3&aid=' + aid + '&' + queryparam;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Adding mp3. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
			
	} else {
	  //reload entire page
		document.location.href='/cgi-bin/java?handler=QExplorer&action=addmp3&dispby=bychap&' + queryparam;
	}
}

function displayAlbumColumn() {
if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("album").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=showalbum';
			document.getElementById("album").innerHTML="<table width=200><tr bgcolor='#EFEFEF'><td nowrap><font class='fnt_norm_red'>Getting MP3 collections. Please wait...</font></td></tr></table>";
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
			
	} else {
	  //reload entire page
		document.location.href='/cgi-bin/java?handler=QExplorer&action=addmp3&dispby=bychap&' + queryparam;
	}

}

function addmp3FromSrch(queryparam, aid) {
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=addmp3&aidtoadd=' + aid + '&' + queryparam;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Adding mp3. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
			
	} else {
	  //reload entire page
		document.location.href='/cgi-bin/java?handler=QExplorer&action=addmp3&dispby=bychap&' + queryparam + '&aidtoadd=' + aid ;
	}
}


function albumHandler() { 
		if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
				document.getElementById('album').innerHTML=xmlHttp.responseText;
				if (document.getElementById('insertrow')) {
					document.getElementById('insertrow').innerHTML="";
				}
		} 
} 



function setOnFocusCount(txt) {
	countBeforeFocus	= txt.value;
}

function changcount(txt,aid) {
	if (countBeforeFocus == txt.value) {
		return;
	}
	
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=changecount&aid=' + aid + '&count=' + txt.value;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Updating repeat count. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
	} 	
	
}

function changeAlbumRec(cbx,aid) {
	rec = cbx.options[cbx.selectedIndex].value;
	setCookie('album.rec', rec, 90,'day');
	if (document.getElementById('album')) {
			xmlHttp=GetXmlHttpObject(albumHandler);
			if (!xmlHttp) {
				document.getElementById("insertrow").innerHTML="<font class='fnt_norm_red'>Please upgrade your browser to use this service.</font>";
				return;
			}
			var url='/cgi-bin/java?handler=QExplorer&action=changeAlbumRec&aid=' + aid + '&rec=' + rec;
			document.getElementById("insertrow").innerHTML="<font class=qrnexp_norm_blk>&nbsp;Changing Reciter. Please wait...</font>" ;
			xmlHttp.open("GET", url , true) 
			xmlHttp.send(null) 
	} 	
	
}

function GetXmlHttpObject(handler) { 
		var objXmlHttp=null

		if (navigator.userAgent.indexOf("Opera")>=0) {
			alert("This feature doesn't work in Opera");
			return;
		} 
		
		if (window.ActiveXObject) { // IE
			var strName="Msxml2.XMLHTTP";
			if (navigator.appVersion.indexOf("MSIE 5.5")>=0) {
				strName="Microsoft.XMLHTTP";
			} 

			try { 
				objXmlHttp=new ActiveXObject(strName);
				objXmlHttp.onreadystatechange=handler;
				return objXmlHttp;
			} catch(e) { 
				
				return;
			} 
		} 

		if (window.XMLHttpRequest) { // Mozilla, Safari,...
			objXmlHttp=new XMLHttpRequest();
			objXmlHttp.onload=handler;
			objXmlHttp.onerror=handler; 
			return objXmlHttp;
		}
}