

function isIdcardFormat(idcard,format)
{
	
	 if(idcard.match(format)== null)
		  {
		   return false;
	      }
	  return true;  	
}

function isValidatePwd(pwd)
{
	  var regWhole =/^[a-zA-Z0-9!@#\$%\^&\*\(\)]{1,}$/;
	  var regNumber = /[0-9]/;
	  var regSpecial = /[!@#\$%\^&\*\(\)]/;
	  var regLetter = /[a-zA-Z]/;

	  if(regWhole.test(pwd))
	  {

		  if(pwd.match(regNumber)== null)
		  {
		   return false;
	      } 
		  
		  if(pwd.match(regSpecial)== null)
		  {
		   return false;
	      } 
		  if(pwd.match(regLetter)== null)
		  {
		   return false;
	      }
	 	  return true;  		  
	   }else{   
		return false;
	   }		
}

/**
 * 判断提供的字符串中是否只含有数字或字母字符
 * @param field 输入字符串
 * @return true/false
 */
function isValidate(field)
{


	var i;

	for (i = 0; i < field.length; i++)
	{
		var c = field.substr(i,1);

		if (! (isLetter(c) || isDigit(c) ) )
		{
			return false;
		}
	}

	return true;
}



function isLetterString(field)
{
	field = myTrim(field);

	var i;

	for (i = 0; i < field.length; i++)
	{
		var c = field.charAt(i);

		if (! isLetter(c) )
		{
			return false;
		}
	}

	return true;
}


function isRunNian(s){
	//alert(s%4);
	if(s%4!=0){
		return false;
	}else{
		if(s%100!=0){
			return true;
		}else{
			if(s%400==0){
				return true;
			}else{
				return false;
			}
		}
	}
}





 function getLastDay(year,month){
	var s = new Array("01","03","05","07","08","10","12");
	var s1=new Array("04","06","09","11");

	for(i=0;i< s.length;i++){
		if(month==s[i]){
			return "31";
		}
	}

	for(i=0;i<s1.length;i++){
		if(month==s1[i]){
			return "30";
		}
	}

	if(isRunNian(year)){
		return "29";
	}else{
		return "28";
	}

}



function isNumbers(field)
{
	field = myTrim(field);

	var i;

	for (i = 0; i < field.length; i++)
	{
		var c = field.charAt(i);

		if (!isDigit(c) )
		{
			return false;
		}
	}

	return true;
}


function radio_active(radio_group)
{
	for(counter = 0 ; counter < radio_group.length ; counter++)
	{
		if(radio_group[counter].checked)
		{
			return counter;
		}
	}

	return -1;
}



function isEmpty(field)
{
	field = trimEnter(field);
	return ((field == null) || (field.length == 0) || myTrim(field)=="");
}


function trimEnter(input)
{	
	var tmp = "";
	
	for (var begin=0;begin <input.length;begin++)
	{	
		var chrCode = input.charCodeAt(begin);
		if((chrCode!=13)&&(chrCode!=10))
		tmp+=input.charAt(begin);
		
	}
	return tmp;
}



function isInteger(field)
{
	s = myTrim(field);

	var i;

	if (isEmpty(field))
	{
		return false;
	}

	for (i=0; i<field.length; i++)
	{
		var c = field.charAt(i);

		if (!isDigit(c))
		{
			return false;
		}

		if(c==0&&i==0&&field.length>1)
		{
			return false;
		}
	}

	return true;
}



function isLetter(c)
{
	return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) );
}



function isDigit(c)
{
	return ((c >= "0") && (c <= "9"));
}


function myTrim(str)
{
	var end = false;
	var ch;

	while(!end)
	{
		if (str.length == 0) break;
		ch = str.charAt(0);

		if (ch == ' ')
		{
			str = str.substring(1,str.length);
		}
		else
		{
			end = true;
		}
	}

	end = false;

	while(!end)
	{
		if (str.length == 0)
		{
			break;
		}

		ch = str.charAt(str.length-1);

		if (ch == ' ')
		{
			str = str.substring(0,str.length-1);
		}
		else
		{
			end = true;
		}
	}

	return str;
}





function myReset(w, h)
{
	var pox = (screen.width-w)/2;
	var poy = (screen.height-h)/2;
	window.resizeTo(w+15, h+10);
	window.moveTo(((pox>0&&pox<screen.width)?pox:0), ((poy>0&&poy<screen.height)?poy:0));
}



function isPrice(field)
{
	field = myTrim(field);
	var i;
	var seenDecimalPoint = false;

	if (isEmpty(field))
	{
		return false;
	}

	if (field == ".")
	{
		return false;
	}

	for (i=0; i<field.length; i++)
	{
		// Check that current character is number.
		var c = field.charAt(i);

		if ((c == ".") && !seenDecimalPoint)
		{
			seenDecimalPoint = true;
		}
		else if (!isDigit(c))
		{
			return false;
		}
	}
	if(seenDecimalPoint == true)
	{
	  var afterdot = field.substring(field.indexOf('.',0)+1).length;

	  if(afterdot > 2)
	  {
		 return false;
	  }
    }
	return true;
}



function calculatebytesize(field)
{
	field = myTrim(field);

	var i;
	var size=0;

	for (i = 0; i < field.length; i++)
	{
		var c = field.charAt(i);

		if ((c >= "!") && (c <= "\u20AC")||(c==" ") )
		{
			size=size+1;
		}
		else
		{
			size=size+3;
		}
	}

	return size;
}

function calculatebytesizeforpage(field)
{
	field = myTrim(field);

	var i;
	var size=0;

	for (i = 0; i < field.length; i++)
	{
		var c = field.charAt(i);

		if ((c >= "!") && (c <= "\u20AC")||(c==" ") )
		{
			size=size+1;
		}
		else
		{
			size=size+2;
		}
	}

	return size;
}


function setLetterBorder(toneNameLetter)
{
	var imgName = "img" + toneNameLetter.toLowerCase();
	document.images[imgName].border = 2;

}


function setSelectValue(selectstart, value1, selectend, value2)
{
	if(selectstart.value == value1)
	{
		selectend.value = value2;
		selectend.disabled = true;
	}
	else
	{
		selectend.disabled = false;
	}
}


function checkHandPhone(phone , countrytype)
{

	
	if(isNaN(phone))
	{
		return 1;
	}

	
	if(countrytype == 1)
	{
		if(phone.length != 8)
		{
			return 2;
		}
		else if(phone.charAt(0) != '0')
		{
			return 3;
		}
		else
		{
			return 0;
		}
	}
	else
	{
		if(phone.length != 11)
		{
			return 2;
		}
		else if(phone.charAt(0) != '1' || (phone.charAt(1) != '3' && phone.charAt(1) != '5'))
		{
			return 3;
		}
		else
		{
			return 0;
		}
	}
}



function checkFixedPhone(phone)
{
	if(isNaN(phone))
	{
		return 1;
	}
	else if(phone.length == 0)
	{
		return 2;
	}
	else if (phone.length > 15)
	{
		return 3;
	}

	else if(phone.charAt(0) != '0')
	{
		return 4;
	}
	else if(	phone.length <10)
	{
		return 5;
	}
	else
	{
		return 0;
	}
}




function convertDBFormat(dbField)
{
	var returnStr = "";
	var fieldArray = dbField.split("'");

	for(var i = 0; i < fieldArray.length; i++)
	{
		if(i == fieldArray.length - 1)
		{
			returnStr = returnStr + fieldArray[i];
		}
		else
		{
			returnStr = returnStr + fieldArray[i] + "''";
		}
	}

	return returnStr;
}


function play(field)
{
	document.all.bgsound.src=field;
}




function round_decimals(original_number , decimals)
{
	var result1 = original_number * Math.pow(10 , decimals);
	var result2 = Math.round(result1);
	var result3 = result2 / Math.pow(10 , decimals);

	return(result3);
}




function containInvalidChar(field)
{
	if(field.match(/^\_+$/g))
	{
		return true;
	}
	
	for (i = 0; i < field.length; i++)
	{
		var c = field.charAt(i);

		if(c == '_' || c == '&' || c == '<' || c == ';' || c == '*' || c == '(' || c == ')'
		   || c == '>' || c == '"'
		   || c == '@' || c == '#'|| c == '\\'|| c == "'" || c == '?'
		   || c == '$' || c == '^' || c == '\/' || c == '~' || c == '%' || c == '!' || c == '=' || c == '*')
		{
			return true;
		}
	}
	return false;
}


function isPhoneNumber(field)
{
	for (i = 0; i < field.length; i++)
	{
		var c = field.charAt(i);
		
		if((!isDigit(c))&&c!='-')
		{
			return false;
		}
	}

	return true;

}



function converturlcode(field)
{
	field = field.replace('%','%25')
	field = field.replace('&','%26')
	field = field.replace('"','&quot;')
	field = field.replace('>','&gt;')
	field = field.replace('<','&lt;')
	field = field.replace('#','%23')
	field = field.replace('+','%2B')

	return field;
}






function dropit2(name)
{
	var zindex=100
	var sOpen=""
	var nMenuNum = name.substring(name.length - 1,name.length)

	sOpen="dropmenu" + nMenuNum

	var themenu=document.all[sOpen]

	if (themenu == null)
	{
		return
	}

	if (document.all)
	{
		themenu.style.left=document.body.scrollLeft+event.clientX-event.offsetX
		themenu.style.top=document.body.scrollTop+event.clientY-event.offsetY+25

		if (themenu.style.visibility=="hidden")
		{
			 themenu.style.visibility="visible"
			 themenu.style.zIndex=zindex++
		}
	}
}



function hidemenu(name)
{
	var zindex=100
	var sOpen=""
	var nMenuNum = name.substring(name.length - 1,name.length)
	sOpen="dropmenu" + nMenuNum
	var themenu=document.all[sOpen]

	if (themenu == null)
	{
		return;
	}

	var theID = window.event.toElement.id.substring(0,1)

	if(window.event.toElement.id!=sOpen && window.event.toElement.id!="link" )
	{
		themenu.style.visibility="hidden";
	}
}





function decomposeString(str, sperate1, sperate2)
{
	var returnArray = new Array();
	var tempArray = str.split(sperate1);
	var p = 0;

	for(i = 0; i < tempArray.length; i++)
	{
		var andArray = tempArray[i].split(sperate2);

		for(j = 0; j < andArray.length; j++)
		{
			if(andArray[j] != '' && andArray[j] != null)
			{
				returnArray[p++] = andArray[j];
			}
		}
	}

	return returnArray;
}


var new_window


function window_available()
{
	if(! new_window)
	{
		return false;
	}
	else if(new_window.closed)
	{
		return false;
	}
	else
	{
		return true;
	}
}


function play(url , toneName , backgroundmap)
{

	if(!window_available())
	{

		new_window = window.open('/auditionpage.htm' ,"", "width=200 , height=200");
		//new_window.close();
	}
	else
	{
		new_window.close();
		new_window = window.open('/auditionpage.htm' ,"", "width=0 , height=0");
	}



	new_window.MediaPlayer.FileName = url;
	//new_window.MediaPlayer.Play();

}



function validatetime(dateString)
{

	if(dateString.length!=8)
	{
		return false;
	}

	if(isNumbers(dateString.substring(0,2))==false
	   ||isNumbers(dateString.substring(3,5))==false
	   ||isNumbers(dateString.substring(6,8))==false)
	{
		return false;
	}

	if(dateString.charAt(2)!=':'||dateString.charAt(5)!=':')
	{
		return false;
	}

	var hour=parseInt(dateString.substring(0,2),10);
	var minute=parseInt(dateString.substring(3,5),10);
	var second=parseInt(dateString.substring(6,8),10);

	if(hour<24&&minute<60&&second<60)
	{
		return true;
	}
	else
	{
		return false;
	}

}
var deliverWindow;
function delivertone(tonePath,toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,downTimes)
{
    var param = "tonePath="+tonePath+"&toneID=" + toneID + "&toneCode=" + toneCode + "&toneName=" + toneName 
	          + "&singerName=" + singerName + "&desc=" + desc + "&price=" + price  
			  + "&toneValidDay=" + toneValidDay + "&spName=" + spName + "&updateTime=" + updateTime 
			  + "&downTimes=" + downTimes;
    if(deliverWindow != null)
	{
		 deliverWindow.close();
	}
	deliverWindow=window.open("/user/userdelivertone.screen?"+param,"","width=420,height=320,top=100,left=100");
}
var downWindow;
function downtone(tonePath,toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,downTimes)
{
    var param = "tonePath="+tonePath+"&toneID=" + toneID + "&toneCode=" + toneCode + "&toneName=" + toneName 
	          + "&singerName=" + singerName + "&desc=" + desc + "&price=" + price  
			  + "&toneValidDay=" + toneValidDay + "&spName=" + spName + "&updateTime=" + updateTime 
			  + "&downTimes=" + downTimes;
    if(downWindow != null)
	{
		 downWindow.close();
	}
	downWindow=window.open("/user/userdowntone.screen?"+param,"","width=420,height=360,top=100,left=100");
}

 var listenWindow;
function listen(toneFile,toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,downTimes)
{
	var param = "tonePath="+toneFile+"&toneID=" + toneID + "&toneCode=" + toneCode + "&toneName=" + toneName 
	          + "&singerName=" + singerName + "&desc=" + desc + "&price=" + price  
			  + "&toneValidDay=" + toneValidDay + "&spName=" + spName + "&updateTime=" + updateTime 
			  + "&downTimes=" + downTimes;
	if(listenWindow != null)
	{
		 listenWindow.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	var lisurl= "../user/batchlistentone.screen?"+param;
	//alert(lisurl);
	listenWindow = window.open(lisurl,"","width=1220,height=680,top="+top+",left="+left);
}

function listen1(toneFile,toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,downTimes)
{
	var param = "tonePath="+toneFile+"&toneID=" + toneID + "&toneCode=" + toneCode + "&toneName=" + toneName 
	          + "&singerName=" + singerName + "&desc=" + desc + "&price=" + price  
			  + "&toneValidDay=" + toneValidDay + "&spName=" + spName + "&updateTime=" + updateTime 
			  + "&downTimes=" + downTimes;
	if(listenWindow != null)
	{
		 listenWindow.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	var lisurl= "../user/listentonepersonal.screen?"+param;
	//alert(lisurl);
	listenWindow = window.open(lisurl,"","width=420,height=380,top="+top+",left="+left);
}

 var adminlistenWin
function adminlisten(toneType,tongPath, toneID, toneName)
{
	if(adminlistenWin != null)
	{
		 adminlistenWin.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	var lisurl= encodeURI("listentone.screen?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName);
	adminlistenWin = window.open(lisurl,"","width=400,height=380,top="+top+",left="+left);
}


 var splistenWin;
function splisten(toneType,tongPath, toneID, toneName,lyric)
{
	if(splistenWin != null)
	{
		 splistenWin.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	var lisurl= encodeURI("../sp/listentone.screen?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName+"&lyric="+lyric);
	splistenWin = window.open(lisurl,"","width=400,height=420,top="+top+",left="+left);
}
function splistenbox(toneType,tongPath, toneID, toneName)
{
	if(splistenWin != null)
	{
		 splistenWin.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	var lisurl= encodeURI("../sp/listentonebox.screen?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName);
	splistenWin = window.open(lisurl,"","width=400,height=300,top="+top+",left="+left);
}


 var corplistenWin;
function corplisten(toneType,tongPath, toneID, toneName)
{
	if(corplistenWin != null)
	{
		 corplistenWin.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	corplistenWin = window.open("../corp/listentone.screen?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName,"","width=400,height=300,top="+top+",left="+left);
}

var corpmanagelistenWin;
function corpmanagelisten(toneType,tongPath, toneID, toneName)
{
	if(corpmanagelistenWin != null)
	{
		 corpmanagelistenWin.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	corplistenWin = window.open("../corpmanage/listentone.jsp?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName,"","width=400,height=300,top="+top+",left="+left);
}
function numberOnly() // onkeypress event
{
  var key = window.event.keyCode;
  if(( key > 47 && key < 58 ) || (key==8)|| (key==9)|| (key==13)|| (key==37)|| (key==38)
	|| (key==39)|| (key==40)|| (key==46) || ( key > 95 && key < 106 ))
	  window.event.returnValue = true;
  else {
	  window.event.returnValue = false;
  }
}


function trim(strValue)
{
	var iLTR, jRTL;
	var chr;

	
	for( iLTR = 0; iLTR < strValue.length; iLTR++ )
	{
		chr = strValue.charAt(iLTR) ;
		if( chr != " " ) break;
	}

	if( iLTR == strValue.length ) return "";

	
	for( jRTL = strValue.length - 1; jRTL >= 0; jRTL-- )
	{
		chr = strValue.charAt(jRTL);
		if( chr != " " ) break;
	}
	return strValue.substring(iLTR, jRTL + 1);
}


function trimZero(strValue)
{
	var iLTR;
	var chr;

	
	for( iLTR = 0; iLTR < strValue.length; iLTR++ )
	{
		chr = strValue.charAt(iLTR) ;
		if( chr != "0" ) break;
	}

	if( iLTR == strValue.length ) return "";

	return strValue.substring(iLTR, strValue.length);
}


function existChinese(strValue)
{
	var chrCode
	for(var iChar = 0; iChar < strValue.length; iChar++)
	{
		chrCode = strValue.charCodeAt(iChar);
		if(parseInt(chrCode) > 255)
		{
			return true;
		}
	}
	return false;
}



function formatInputNumber(oElement, length, decimal)
{
	var oInput = oElement;
	var oInputValue = trim(oInput.value);
	var iLowcase = oInputValue.indexOf("e");
	var iUpcase = oInputValue.indexOf("E");

	if( oInputValue == "")							
	{
		oInput.value = "";
		return true;
	}

	if (existChinese(oInputValue))					
	{
		oInput.value = "";
		return true;
	}

	if((iLowcase != -1)||(iUpcase != -1))			
	{
		
		return true;
	}

	
	var bOverflow = false;							
	var partInteger = "";							
	var countIntegerLength = 0;						
	var partDecimal = "";							
	var countDecimalLength = 0;						

	var iPoint = oInputValue.indexOf(".");			

	var allowIntegerLength = length - decimal - 1;	
	var allowDecimalLength = decimal;				

	
	if(iPoint == -1)		
	{
		partInteger = oInputValue;
		partInteger = trimZero(partInteger);		
		countIntegerLength = oInputValue.length;
	}
	else					
	{
		partInteger = oInputValue.substring(0,iPoint);
		partInteger = trimZero(partInteger);		
		countIntegerLength = partInteger.length;
		
		partDecimal = oInputValue.substring(iPoint + 1, iPoint + 1 + allowDecimalLength);
		countDecimalLength = partDecimal.length;
	}
	if (partInteger == "")	
	{
		partInteger = "0";
	}

	
	if(countIntegerLength > allowIntegerLength)
	{
		partInteger = "0";
		bOverflow = true;
	}

	
	if(countDecimalLength < allowDecimalLength)
	{
		for (var iDecimal = 0; iDecimal < (allowDecimalLength - countDecimalLength); iDecimal++)
			partDecimal = partDecimal + "0";
	}

	
	if (partDecimal != "")
	{
		oInput.value = partInteger + "." + partDecimal;
	}
	else
	{
		oInput.value = partInteger
	}
	if (bOverflow) oInput.focus();
}


function clearValue(obj){
	obj.value = "";
}


function isBlank(str){
	str = myTrim(str);
	for(var i=1; i<str.length-1; i++){
		if(str.charAt(i) == ' '){
			return true;
		}
	}
	return false;
}

/**
*time format:yyyy-MM-dd
*if starttime>endtime return 1
*if starttime<surrenttime return 2
*else return 0
*/
function isRightTime(starttime,endtime,currenttime)
{
	if(starttime>endtime)
	{
		return 1;
	}
	else if(starttime<currenttime)
	{
		return 2;
	}
	else
	{
		return 0;
	}
}


function downToneMonthFeeFun(tonePath,toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,downTimes,toneMonthFee)
{
    var param = "tonePath="+tonePath+"&toneID=" + toneID + "&toneCode=" + toneCode + "&toneName=" + toneName 
	          + "&singerName=" + singerName + "&desc=" + desc + "&price=" + price  
			  + "&toneValidDay=" + toneValidDay + "&spName=" + spName + "&updateTime=" + updateTime 
			  + "&downTimes=" + downTimes + "&toneMonthFee=" + toneMonthFee;
    if(downWindow != null)
	{
		 downWindow.close();
	}
	downWindow=window.open("/user/userdowntone.screen?"+param,"","width=420,height=450,top=100,left=100");
}

function listenMonthFeeFun(toneFile,toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,downTimes,toneMonthFee)
{
	var param = "tonePath="+toneFile+"&toneID=" + toneID + "&toneCode=" + toneCode + "&toneName=" + toneName 
	          + "&singerName=" + singerName + "&desc=" + desc + "&price=" + price  
			  + "&toneValidDay=" + toneValidDay + "&spName=" + spName + "&updateTime=" + updateTime 
			  + "&downTimes=" + downTimes + "&toneMonthFee=" + toneMonthFee;
	if(listenWindow != null)
	{
		 listenWindow.close();
	}
	var left = 20;//Math.floor( (screen.width - 400) / 2);
	var top = 20;//Math.floor( (screen.height - 300) / 2);
	var lisurl= "../user/listentone.screen?"+param;
	//alert(lisurl);
	listenWindow = window.open(lisurl,"","width=420,height=470,top="+top+",left="+left);
}


