function trim(sStr)
{
   var s;
   sStr = sStr.toString();
   sStr = sStr.replace(/(^\s*)|(\s*$)/g,"");
   //sStr = sStr.replace(/\s{2,}/g," "); /*----- Removes the unwanted spaces(more than one)-----*/
   return(sStr);
}/*---- Regular expression functions for clearing the spaces ----*/

function validate(obj)
{
	obj1 = trim(obj.value)
	if(obj1 == "")
	{		
		alert("Search Text is Empty");
		obj.focus();
		return false;
	}
	else
	return true;
}/*----- Validate Search Text is empty or not-----*/

function clear_spaces(formName)
{
	var element_all =  formName.elements;
	var i;
	for(i=0;i<element_all.length;++i)
	{
		if (element_all[i].type == "text" || element_all[i].type == "textarea")
			element_all[i].value = trim(element_all[i].value);
			
	}
}/*----- Trim all the text boxes Only-----*/

function checkText(obj)
{
/*-----The trim function has to be called before calling this function -----*/
/*---- Later , type will be passed as a parameter so that the type will be like email, phone no , numeric, character ---*/
if(obj.value == "")
	{
		return false;
	}
else
	return true;
}/*---- Checks the text box for empty string -----*/

function checkConfPassword(obj1,obj2)
{
	
/*-----The trim function has to be called before calling this function -----*/

if(obj1.value != "" && obj2.value != "")
	{
		if(trim(obj1.value) != trim(obj2.value))
		return false;
		else
		return true;
	}
else
	return false;
}/*---- Checks the cofirm password and password are same -----*/

function checkSelectBox(obj)
{
	if ( obj.options[obj.selectedIndex].value == 0 )
		return false;
	else
		return true;
}

function checkCombo(obj)
{
/*-----The trim function has to be called before calling this function -----*/
/*---- Later , type will be passed as a parameter so that the type will be like email, phone no , numeric, character ---*/
if(obj.value == "0")
	{
//		alert("Please enter the "+name);
		//obj.focus();
		return false;
	}
else
	return true;
}/*---- Checks the text box for empty string -----*/


function checkEqual(string1,string2)
{
	var retVal = (string1 === string2) ? true : false;
	return retVal;
}/*-----checkEqual()----*/

function checkSelected(obj)
{
	/*if(obj.options[obj.selectedIndex].value == 0 )
		return false;
	else
	return true;*/
//return (obj.options[obj.selectedIndex].value == 0 ) ? false : true;
//alert(obj.selectedIndex);
return (obj.selectedIndex == 0 ) ? false : true;
}/*----checkSelected()-----*/

function checkSelectedVideo(obj)
{
	/*if(obj.options[obj.selectedIndex].value == 0 )
		return false;
	else
	return true;*/
//return (obj.options[obj.selectedIndex].value == 0 ) ? false : true;
//alert(obj.selectedIndex);
return (obj.selectedIndex == 0 ) ? false : true;
}/*----checkSelected()-----*/


function checkMSelected(obj)
{
	
	var i = 0;
	for( i =0 ;i< obj.length; i++)
	{
		alert(obj[i].checked);
	 if ((obj[i].selected) || (obj[i].checked)) 
		 return true;
	}

return false;
}/*----checkSelected()-----*/


 function telephoneCheck(telephoneNum)
 {
 	var validCharRegExp = /^\+?[\d\- ]+$/;
	var isValid = (validCharRegExp.test(telephoneNum));
	
	return isValid;
 }
function PostalCode(postalCode)
  {
  	var validCharRegExp = /^\d[\d\- ]+$/; 
	var isValid = (validCharRegExp.test(postalCode));
	
	return isValid;
  }
 
 function OnlyAlphabetic(string)
 {
 //	if(string == "" ) return false;
 	var invalidCharRegExp = /[^a-zÅåÆæØø]/i;
	var isValid = !(invalidCharRegExp.test(string));
	
	return isValid;
 }

 
 //To validate Numbers only .................................
function isOnlyNumeric(string)
 {
 	if(string == "" ) return false;
 	var invalidCharRegExp = /[^\d]/;
	var isValid = !(invalidCharRegExp.test(string));	
	return isValid;
 }
 
function emailCheck(email)
  {
	 // alert(email);
	 var validCharRegExp = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,20})$/i;
	//var validCharRegExp = /^\w(\.?[-\w])*@\w(\.?[-\w])*\.([a-z]{3}(\.[a-z]{2})?|[a-z]{2}(\.[a-z]{2})?)$/i;
//var validCharRegExp = /^\w(\.?\w)*@\w(\.?[-\w])*\.([a-z]{3}(\.[a-z]{2})?|[a-z]{2}(\.[a-z]{2})?)$/i;
	

	var isValid = (validCharRegExp.test(email));
	
	return isValid;
}/*----- Email-----*/

   
function checkDate(fromDate, toDate) 
{
	var from = fromDate.value;
	var to = toDate.value;
	if(from != "" && to != ""){

		from = from.substr(8,2)+"-"+from.substr(5,2)+"-"+from.substr(0,4);
		to = to.substr(8,2)+"-"+to.substr(5,2)+"-"+to.substr(0,4);
	//	alert(" from date "+ from +"\n To date :"+to);
		if (Date.parse(from) <= Date.parse(to )){

			 return true;
		}
	}
	else
		return true;// here if the from date or to date is empty ... no error message should be thrown
	return false;
}/*----CheckDate()-----*/

function cancel()
{
window.history.back(-1);
}/*---Cancel()---*/


function alphaOnly(e) {
 	var k;
	document.all ? k = e.keyCode : k = e.which;
	return ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 9 || k == 32 || k == 0 || k == 95);
}
function numbersonly(myfield, e, dec)
{
var key;
var keychar;

if (window.event)
   key = window.event.keyCode;
else if (e)
   key = e.which;
else
   return true;
keychar = String.fromCharCode(key);

// control keys
 if ((key==null) || (key==0) || (key==8) || 
    (key==9) || (key==13) || (key==27)  || (key==43) || (key==45) || (key==32))
   return true;

// numbers
else if ((("0123456789").indexOf(keychar) > -1))
   return true;

// decimal point jump
else if (dec && (keychar == "."))
   {
   myfield.form.elements[dec].focus();
   return false;
   }
else
   return false;
}

function getArabic(s)
{
	s=s.replace(/\s/g,"");
s=s.replace(/&#(\d+);/g,
    function($1, $2) {
        return String.fromCharCode($2);
    });
	return s;
}
function charRemaining(tField, nField, maxAllowed) {
	if (tField.value.length > maxAllowed) {
		tField.value = tField.value.substring(0, maxAllowed);
	}
	nField.value = maxAllowed - tField.value.length;
}

function SelectAll()
{
	var frm = document.member;
	for(i=0;i<frm.elements.length;i++)
	{
		if(frm.elements[i].type == "checkbox")
		{
			if(frm.selectall.checked) {
				if(frm.elements[i].name=="chbox[]"||frm.elements[i].name == "selectall"||frm.elements[i].name == "songIds[]") {
					frm.elements[i].checked = true;
				}else {
					frm.elements[i].checked = false;
				}
			}
			else {
				frm.elements[i].checked = false;
			}
		}
	}
}

function uncheck(nm)
{
	var frm = document.member;
	var setflag = true;
	if(nm.checked == false)
	{
		frm.selectall.checked = false;
	}
	else
	{
		for(i=0;i<frm.elements.length;i++)
		{
			if(frm.elements[i].type == "checkbox"&&(frm.elements[i].name=="chbox[]"||frm.elements[i].name=="songIds[]"))
			{
				if((frm.elements[i].checked) == false && frm.elements[i].name != "selectall")
				{
				 setflag = false;
				}
			}
		}
		if(setflag == true)	
		{
		 frm.selectall.checked = true;
		}
	}
}

function playRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="songIds[]")
		{
			flag = 1;
			frm.playVal.value = "Y";
			frm.submit();
			return true;
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to play");//Select a Member to Delete
		return false;
	}
}


function deleteRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to delete the selected "+pageType+"("+extArg+")?"))
			{
				//frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to delete");//Select a Member to Delete
		return false;
	}
}
function approveRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to approve the selected "+pageType+"("+extArg+")?"))
			{
				frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to Approve");
		return false;
	}
}
function archiveRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to archive the selected "+pageType+"("+extArg+")?"))
			{
				frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to Archive");
		return false;
	}
}
function activateRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to activate the selected "+pageType+"("+extArg+")?"))
			{
				//frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to activate");
		return false;
	}
}
function blockRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to block the selected "+pageType+"("+extArg+")?"))
			{
				//frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to block");
		return false;
	}
}
function blockUserRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to block the selected "+pageType+"("+extArg+")?"))
			{
				reasonDiv();
				return false;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to block");
		return false;
	}
}
function reasonDiv(){
	document.getElementById('reasonDiv').style.display="block";
	document.getElementById('blockDiv').style.display="block";
}
function closeReasonDiv(){
	document.getElementById('reasonDiv').style.display="none";
	document.getElementById('blockDiv').style.display="none";
}
function publishRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to Publish the selected "+pageType+"("+extArg+")?"))
			{
				//frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to Publish");
		return false;
	}
}
function unpublishRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			
			flag = 1;
			if(confirm("Do you want to Unpublish the selected "+pageType+"("+extArg+")?"))
			{
				//frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to Unpublish");
		return false;
	}
}
function redeemRecord()
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to Request Redeemed the selected User?"))
			{
				//frm.submit();
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a User to Request Redeemed");//Select a Member to Delete
		return false;
	}
}
function deleteAllRecord(pageType,extArg)
{
	var frm = document.member;
	var tick = frm.elements;
	var flag = 0;
	for (i=0; i<tick.length; ++i)
	{
		if(tick[i].checked&&tick[i].name=="chbox[]")
		{
			flag = 1;
			if(confirm("Do you want to delete all the selected "+pageType+"("+extArg+")?"))
			{
				return false;
			}
			else
			{
				return false;
			}
		}
	}
	if(flag == 0)
	{
		alert("Please select a "+pageType+" to delete");//Select a Member to Delete
		return false;
	}
}
function isMultipleChecked(chks,count,maxCnt){
	var checkCount = 0;
	for (var i = 0; i < chks.length; i++){
		if (chks[i].checked){
			checkCount++;
		}
	}
	if (checkCount < count)	{
		flg=1;
		return false;
	}
	if(checkCount > maxCnt){
		flg=2;
		return false;
	}
	return true;
}
function fnsearchText()
{
	if(trim(document.getElementById('search').value) == '')
	{
		alert("Search text is empty");
		return false;
	}
	else
	{
		return true;
	}
}
function numbersonly(myfield, e, dec)
{
	var key;
	var keychar;

	if (window.event)
	   key = window.event.keyCode;
	else if (e)
	   key = e.which;
	else
	   return true;
	keychar = String.fromCharCode(key);

	// control keys
	 if ((key==null) || (key==0) || (key==8) || 
		(key==9) || (key==13) || (key==27)  || (key==43) || (key==45) || (key==32))
	   return true;

	// numbers
	else if ((("0123456789").indexOf(keychar) > -1))
	   return true;

	// decimal point jump
	else if (dec && (keychar == "."))
	   {
	   myfield.form.elements[dec].focus();
	   return false;
	   }
	else
	   return false;
}
function numbersonlywoplus(myfield, e, dec)
{
	var key;
	var keychar;

	if (window.event)
	   key = window.event.keyCode;
	else if (e)
	   key = e.which;
	else
	   return true;
	keychar = String.fromCharCode(key);

	// control keys
	 if ((key==null) || (key==0) || (key==8) || 
		(key==9) || (key==13) || (key==27)   || (key==45) || (key==32))
	   return true;

	// numbers
	else if ((("0123456789").indexOf(keychar) > -1))
	   return true;

	// decimal point jump
	else if (dec && (keychar == "."))
	   {
	   myfield.form.elements[dec].focus();
	   return false;
	   }
	else
	   return false;
}

function priceonly(myfield, e, dec)
{
	var key;
	var keychar;

	if (window.event)
	   key = window.event.keyCode;
	else if (e)
	   key = e.which;
	else
	   return true;
	keychar = String.fromCharCode(key);
	// control keys
	 if ((key==null) || (key==0) || (key==8) || 
		(key==9) || (key==13) || (key==27) || (key==45))
	   return true;

	// numbers
	else if ((("0123456789").indexOf(keychar) > -1))
	   return true;

	// decimal point jump
	else if (dec && (keychar == "."))
	{
		myfield.form.elements[dec].focus();
		return false;
	}	
	else
	   return false;
}
function fnSiteSearch(){
	var frm = document.siteForm;
	var error = new Array();
	var errorMessage = "";
	clear_spaces(frm);

	error[0] = checkText(frm.txtSearch) ? (frm.txtSearch.value=="Find" ? "Enter Search Text" : "")  : "Enter Search Text";
  
	for(i= 0 ;i<error.length; ++i){
		errorMessage+= error[i] != "" ? " * " +error[i]+"\n" : "";
	}		
	if(errorMessage == "")
	{
		frm.submit();
		//return false;
	}
	else
	{
		alert(errorMessage);						 
		return false;
	}
}
function clearSearch(){	
	document.location.href="advancedSearch.php";
}
function getSearchVal(){
	document.location.href="advancedSearch.php";
}
function keypressSearchVal(){
	document.location.href="advancedSearch.php";
}
function playTrack(trackId)
{
	var frm = document.playFrm;
	frm.playVal.value = "Y";
	frm.track_id.value = trackId;
	frm.submit();
	return true;
}
function detectFlashVersion(v){
	var flashVersionIsInstalled = false;
	if(typeof ActiveXObject !== 'undefined'){
		// Check ActiveXObject for Flash version capability
		/*@cc_on @*/
		/*@if(@_jscript_version >= 5)
			try {
				flashVersionIsInstalled = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.' + v);
			} catch (e) {}
		@end @*/
		if(flashVersionIsInstalled){
			flashVersionIsInstalled = true;
		}
	} else {
		// Check navigator.plugins for "Shockwave Flash"
		var p = navigator.plugins, i = p.length - 1, re = /Shockwave Flash/;
		for (i; i > -1; --i){
			if(re.test(p[i].name)){
				flashVersionIsInstalled = p[i];
				break;
			}
		}
		if(flashVersionIsInstalled){
			flashVersionIsInstalled = parseInt(flashVersionIsInstalled['description'].replace(/[^\d\.]/g, '')) >= v;
		}
	}
	return flashVersionIsInstalled;
}
function checkURL(value) {
 	var urlregex = new RegExp("^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$");
	//var urlregex = new RegExp("^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}[0-9A-Za-z\.\-]*\.[0-9A-Za-z\.\-]*$");
	if(urlregex.test(value))
	{
		return true;
	}
	return false;
}
function fnVerify(uploaded_id,track_id)
{   
	var url = 'verifyCopyright.php';
	var rand   = Math.random(9999);
	var pars   = "uploaded_id="+uploaded_id+"&track_id="+track_id+"&action=verifyCopyright&rand="+rand;
	var myAjax = new Ajax.Request( url, {method: 'post', parameters: pars, onComplete: showResponseVerify} );
}
function showResponseVerify(originalRequest){
	var newData = originalRequest.responseText;
	if(newData=="-1") {
		openManageCopyRightDiv(1);
	}else if(newData=="0") {
		openManageCopyRightDiv(2);
	}else {
		var tableVal  = newData.split(":##:");
		var registeredDate = tableVal[0];
		var fingerPrint = tableVal[1];
		var owner = tableVal[2];
		var fileName = tableVal[3];
		openManageCopyRightDiv(3);
		document.getElementById('verifySuccessDiv').innerHTML = "Copyright :  All Rights Reserved<br><br>Registered :  "+unescape(registeredDate)+"<br><br>Digital Finger Print :  "+unescape(fingerPrint)+"<br><br>Algorithm used:  SHA256<br><br>Owner :  "+unescape(owner)+"<br><br>File Name :  "+unescape(fileName)+"<br><br>";
		//document.getElementById('verifySuccessDiv').innerHTML = "Copyright :  All Rights Reserved<br><br>Registered :  "+unescape(registeredDate)+"<br><br>Algorithm used:  SHA256<br><br>Owner :  "+unescape(owner)+"<br><br>File Name :  "+unescape(fileName)+"<br><br>";
	}
	
}
function inviteValidate(frmName){
	frm = frmName;	
	var error = new Array();	
	var errorMessage = "";	
	clear_spaces(frm);
	var str=frm.email.value;
	newVal = str.replace(/, /g, ",");

	var test=newVal.split(",");
	
	error[0] = isEmpty(frm.email) ? "Please check you have entered valid email addresses and that they are separated by a comma and a space.":"";	
	
	for(i=0;i<test.length;i++) {
		var emai=test[i];
		//alert(emai);
		if(error[0]==""){
			error[0] = emailCheck(emai) ? "" : "Please check you have entered valid email addresses and that they are separated by a comma and a space.";
		}
	}
	
  	for(i= 0;i<error.length; ++i){
		if(error[i]!=undefined)
			errorMessage+= error[i] != "" ? " * " +error[i]+"\n" : "";
	}
	
	if(errorMessage == "")
	{
		frm.submit();
	}
	else
	{
		alert(errorMessage);
		return false;
	}
}

function commentsTrackValidate(frmName,sketchId,menuId,trackId){
	frm = frmName;	
	var error = new Array();	
	var errorMessage = "";	
	clear_spaces(frm);
	error[0] = (isEmpty(frm.comments) || (frm.comments.value=="Type your comments here")) ? "Enter your comments":"";	
	
	for(i= 0;i<error.length; ++i){
		if(error[i]!=undefined)
			errorMessage+= error[i] != "" ? " * " +error[i]+"\n" : "";
	}
	
	if(errorMessage == "")
	{
		//frm.submit();
		

		$.post("trackPopupComments.php", $("#trackPopFrm").serialize(),
		   function(data) {
			 $('#innerContent').html(data);
		   });
	}
	else
	{
		alert(errorMessage);
		return false;
	}
}
