


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){
	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++)
	{
		
		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 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')
		{
			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)
{
	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 == "'")
		{
			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");
		
	}
	else
	{
		new_window.close();
		new_window = window.open('/auditionpage.htm' ,"", "width=0 , height=0");
	}



	new_window.MediaPlayer.FileName = url;
	

}



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 listenWindow;


function listen(tongPath,toneName,singer,toneCode,channelCodes,operType)
{
	  var channelCode = channelCodes;
	  if(channelCode=="")
	  {
	  	 if(document.getElementById("channelCodeId").value!="")
		   {
		  	   channelCode = document.getElementById("channelCodeId").value;
		   }
	  }
	  
    if(listenWindow != null)
    {
        listenWindow.close();
    }
    var left = 20;
    var top = 20;
	
    var lisurl= "../user/listentone.do?toneCode="+toneCode+"&cc="+channelCode;
    
	  listenWindow = window.open(lisurl,"listen","width=400,height=365,top="+top+",left="+left);
}

var listenWindow_new;

function listen_new(toneID,toneCode,toneName,singerName,price,toneValidDay,tonePath,monthFee,spName,downTimes)
{
    if(listenWindow_new != null)
	{
		 listenWindow_new.close();
	}
	browsetonedetail(toneID,toneCode,toneName,singerName,'',price,toneValidDay,spName,'','',downTimes,tonePath,'',monthFee,'1');
}


function browsetonedetail(toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,pdownloadTimes,downloadTimes,toneFile,pointCardPrice,monthFee,downSign,channelCode,operType)
{		
    var toneChannelCode = toneCode + "_" + channelCode;
    var playURL = "/user/listen/player.screen";
	
	  var ajaxPlayURL = "/user/listen/ajaxplayer.screen";
	  var param = "toneinfo="+toneChannelCode;
	  ajaxUtil.isExec=false;
	  ajaxUtil.isAsynch=false;
	
	  ajaxUtil.doPost(ajaxPlayURL,param);
	  var m_win_player = window.open(playURL,"mwlisten","width=850,height=650,top=100,left=100");
	  m_win_player.focus();
}

function browsetonedetailself(toneID,toneCode,toneName,singerName,desc,price,toneValidDay,spName,updateTime,pdownloadTimes,downloadTimes,toneFile,pointCardPrice,monthFee,downSign,channelCode,operType)
{		
    var h=window.screen.availHeight;
	  var w=window.screen.availWidth;
	  selfForm.toneID.value = toneID;
	  selfForm.toneCode.value = toneCode;
	  selfForm.toneName.value = toneName;
	  selfForm.singerName.value = singerName;
	  selfForm.desc.value = desc;
	  selfForm.price.value = price;
	  selfForm.toneValidDay.value = toneValidDay;
	  selfForm.spName.value = spName;
	  selfForm.updateTime.value = updateTime;
	  selfForm.pdownloadTimes.value = pdownloadTimes;
	  selfForm.downloadTimes.value = downloadTimes;
	  selfForm.toneFile.value = toneFile;
	  selfForm.pointCardPrice.value = pointCardPrice;
	  selfForm.monthFee.value = monthFee;
	  selfForm.reloadSign.value = 0;
	  selfForm.downSign.value = downSign;
	  selfForm.channelCode.value = channelCode;
	  selfForm.action = "/user/listentone_2009.do";
	  selfForm.submit();
}

function getStartTime()
{
	   var d,s="";                     
	   d = new Date();                 
	   s += d.getYear()+ "-";          
	   s += d.getMonth()+1 + "-";      
	   s += d.getDate() + " ";         
	   s += d.getHours() + ":";        
     s += d.getMinutes() + ":";      
     s += d.getSeconds();            
	   return(s);                      
}

 var adminlistenWin
function adminlisten(toneType,tongPath, toneID, toneName)
{
	if(adminlistenWin != null)
	{
		 adminlistenWin.close();
	}
	var left = 20;
	var top = 20;
	var lisurl= encodeURI("listentone.screen?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName);
	adminlistenWin = window.open(lisurl,"","width=400,height=300,top="+top+",left="+left);
}


 var splistenWin;
function splisten(toneType,tongPath, toneID, toneName)
{
	if(splistenWin != null)
	{
		 splistenWin.close();
	}
	var left = 20;
	var top = 20;
	var lisurl= encodeURI("../sp/listentone.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;
	var top = 20;
	corplistenWin = window.open("../corp/listentone.screen?toneType="+toneType+"&tonePath="+tongPath+"&toneID="+toneID+"&toneName="+toneName,"","width=400,height=300,top="+top+",left="+left);
}
function numberOnly() 
{
  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 SetCookie(name,value)
{
    var Days = 1; 
    var exp  = new Date();    
    exp.setTime(exp.getTime() + Days*24*60*60*1000);
    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString()+";path=/user";
}
function delCookie(name)
{
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval=getCookie(name);
    if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString()+";path=/user";
}
function getCookie(name)
{
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
     if(arr != null) return unescape(arr[2]); return null;

}

function setRefurbishFlag()
{
	 delCookie("isRefurbishFlag");
   SetCookie("isRefurbishFlag","1");	
}
