/**
 * 判断纪念日，提供的字符串中是否只含有数字或横线"-"
 */
function isCallDateLetter(chr) 
//数字和特殊字符检测函数 
{ 
var i; 
var CD="-0123456789"; 
for (i=0;i<11;i++) 
   if(chr==CD.charAt(i)) 
    return(1); 
return(0); 
} 

function isCallDate(chr){
	var i;
	for(i=0;i<chr.length;i++){
		var c;
		c=chr.charAt(i);
		if(isCallDateLetter(c)==0){
			return false;
		}
	}
	return true;
}



/**
 * 判断提供的字符串中是否只含有数字或字母字符
 * @param field 输入字符串
 * @return true/false
 */
function isValidate(field)
{
    field = myTrim(field);

    var i;

    for (i = 0; i < field.length; i++)
    {
        var c = field.charAt(i);

        if (! (isLetter(c) || isDigit(c) ) )
        {
            return false;
        }
    }

    return true;
}


/**
 * 判断提供的字符串只含有字母字符
 * @param field 输入字符串
 * @return true/false
 */
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;
}


/**
 * 判断提供的字符串只含有数字字符
 * @param field 输入字符串
 * @return true/false
 */
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;
}


/**
 * 获取提供的单选按钮组的被选择项索引
 * @param radio_group 单选按钮组对象
 * @return 单选按钮组的被选择项索引
 */
function radio_active(radio_group)
{
    for(counter = 0 ; counter < radio_group.length ; counter++)
    {
        if(radio_group[counter].checked)
        {
            return counter;
        }
    }

    return -1;
}


/**
 * 判断提供的字符串是否为空
 * @param field 输入字符串
 * @return true/false
 */
function isEmpty(field)
{
    return ((field == null) || (field.length == 0) || myTrim(field)=="");
}


/**
 * 判断提供的字符串是否为整数
 * @param field 输入字符串
 * @return true/false
 */
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;
}


/**
 * 判断输入的字符是否为大写或字母字符
 * @param c 输入字符
 * @return true/false
 */
function isLetter(c)
{
    return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) );
}


/**
 * 判断输入的字符是否为0-9数字字符
 * @param c 输入字符
 * @return true/false
 */
function isDigit(c)
{
    return ((c >= "0") && (c <= "9"));
}

/**
 * 去掉输入字符串的前后空格
 * @param str 输入字符
 * @return  去掉前后空格的字符串
 */
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;
}




 /**
  * 重新设置窗口的位置
  * @param w 宽度
  * @param h 高度
 */
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));
}


/**
 * 判断给定的字段是否为价格格式(精度为2的浮点数)
 * @param field 价格字符串
 * @return true/false
 */
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;
        }
    }

    var afterdot = field.substring(field.indexOf('.',0)+1).length;

    if(afterdot > 2)
    {
        return false;
    }

    return true;
}


/**
 * 计算文本域中的中英文符的总长度
 * @param field 输入的中英文混合字符串
 * @return 文本域中的中英文符的总长度
 */
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") )
        {
            size=size+1;
        }
        else
        {
            size=size+2;
        }
    }

    return size;
}



/**
 * 设置字母图标为选中状态
 * @param field 输入的字母
 */
function setLetterBorder(toneNameLetter)
{
    var imgName = "img" + toneNameLetter.toLowerCase();
    document.images[imgName].border = 2;

}



/**
 * 根据selectstart的值的情况，设置selectend的值
 * 在selectstart.value = value1的时候，设置selectend.value = value2
 * @param selectstart SELECT 对象一
 * @param value1 值一
 * @param selectend SELECT 对象二
 * @param value2 SELECT 值二
 */
function setSelectValue(selectstart, value1, selectend, value2)
{
    if(selectstart.value == value1)
    {
        selectend.value = value2;
        selectend.disabled = true;
    }
    else
    {
        selectend.disabled = false;
    }
}


/**
 * 检测手机号码，检测条件:0.中国:<1>手机号码11位长度 <2>数值字符串 <3>以13开头
 *                    1.泰国:<1>手机号码9位长度，<2>数值字符串 <3>首位必须为0
 *
 * @param phone 输入的手机号码
 * @param countrytype 国家类型 0.中国, 1.泰国(不同的国家校验方式不同),
 * 缺省国家类型为中国
 *
 * @return 0.正确；1.输入为空 2.长度不对；3.首位字符错误
 */
function checkHandPhone(phone , countrytype)
{

    //判断输入是否为空
    if(isNaN(phone))
    {
        return 1;
    }

    //如果是泰国
    if(countrytype == 1)
    {
        if(phone.length != 9)
        {
            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;
        }
    }
}


/**
 * 检测固定电话，检测条件:1.不可为空,2首位为0 3.长度不超过15位 4.数值字符串
 * @param phone 输入的固定电话号码
 * @return 0.正确；1.输入为空 2.长度为0；3.长度大于15 4.首位数字非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
    {
        return 0;
    }
}



/**
 * 转化dbField字符串格式,将单引号转化为双引号
 * @param dbField 输入的字符串
 * @return 转化后的字符串
 */
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;
}


/**
 * 使用IE浏览器背景音乐播放铃音
 * @param file 完整的铃音文件URL全路径名
 * @return 转化后的字符串
 */
function play(field)
{
    document.all.bgsound.src=field;
}



/**
 * 将浮点数规整为指定的精度
 * @pram original_number 原始浮点数
 * @pram decimals 结果的小数位精度值
 * @return 规整后的浮点数
 */
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);
}



/**
 * 检查用户输入的字符串是否含有非法字符"? , & , < , > ,^ , $ , ' , ""
 * @pram field 被检测的字符串
 * @return true/false
 */
function containInvalidChar(field)
{
    for (i = 0; i < field.length; i++)
    {
        var c = field.charAt(i);

        if(c == '?' || c == '&' || c == '<'
           || c == '>' || c == '\'' || c == '"'
           || c == '@' || c == '#')
        {
            return true;
        }
    }

    return false;
}



/**
 * 转化HTML页面上的特殊字符为编码方式
 * @pram field 输入的字符串
 * @return 转化后的字符串
 */
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;
}



/**
 * 下拉显示子菜单
 * @pram name 输入的菜单名称
 *
 */
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++
        }
    }
}


/**
 * 隐藏子菜单
 * @pram name 输入的菜单名称
 *
 */
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";
    }
}




/**
 * 根据指定的分隔符把字符串分割为数组
 * @param str 字符串
 * @param sperate1 分隔符1
 * @param sperate2 分隔符2
 */
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

/**
 * 判断全局窗口对象是否有效
 * @return true/false
 */
function window_available()
{
    if(! new_window)
    {
        return false;
    }
    else if(new_window.closed)
    {
        return false;
    }
    else
    {
        return true;
    }
}

/**
 * 如果窗口对象已经存在,关闭原来打开的窗口,打开新窗口,播放铃音
 * @param url 播放铃音的地址
 * @param toneName 显示的铃音名称
 * @param backgroundmap 窗口背景图片
 */
function playTone(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.document.writeln('<html>');
    new_window.document.writeln('<head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>铃音播放</title><link href="iess.css" rel="stylesheet" type="text/css"></head>');
    new_window.document.writeln('<body background="' + backgroundmap + '" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">');
    new_window.document.writeln('<center>');
    new_window.document.writeln('<br>');
    new_window.document.writeln('<br>');
    new_window.document.writeln('<table width="75%" border="0" cellpadding="5" cellspacing="1">');
    new_window.document.writeln('<tr align="center"><td colspan="2" >播放铃音:' + toneName + '</td></tr>');
    new_window.document.writeln('</table>');

    new_window.document.writeln("<p><object id='MediaPlayer' width=0 height=0 classid='CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95' standby='Loading Microsoft?Windows?Media Player components...' type='application/x-oleobject' Hidden='True'>");
    new_window.document.writeln("<param name='transparentAtStart' value='true'>");
    new_window.document.writeln("<param name='transparentAtStop' value='true'>");
    new_window.document.writeln("<param name='AnimationAtStart' value='true'>");
    new_window.document.writeln("<param name='AutoStart' value='true'>");
    new_window.document.writeln("<param name='AutoRewind' value='false'>");
    new_window.document.writeln("<param name='SendMouseClickEvents' value='True'>");
    new_window.document.writeln("<param name='DisplaySize' value='0'>");
    new_window.document.writeln("<param name='AutoSize' value='true'>");
    new_window.document.writeln("<param name='ShowDisplay' value='false'>");
    new_window.document.writeln("<param name='ShowStatusBar' value='true'>");
    new_window.document.writeln("<param name='ShowControls' value='true'>");
    new_window.document.writeln("<param name='ShowTracker' value='true'>");
    new_window.document.writeln("<param name='Hidden' value='false'>");
    new_window.document.writeln("<param name='FileName' value=''>");

    new_window.document.writeln("</OBJECT> </p>");
    new_window.document.writeln("<p>&nbsp;</p>");
    new_window.document.writeln("</center>");
    new_window.document.writeln("</body>");
    new_window.document.writeln("</html>");

    new_window.MediaPlayer.FileName = url;
    new_window.MediaPlayer.Play();

}


/**
 * 做时间格式校验
 * @param dateString 时间字串
 * @return true/false
 */
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;
    }

}

//判断输入字符串是否是正确的日期格式
//return true/false 
function isDateString(sDate)
{    var iaMonthDays = [31,28,31,30,31,30,31,31,30,31,30,31];
    var iaDate = new Array(3);
    var year, month, day;

    if (arguments.length != 1) return false;
    iaDate = sDate.toString().split("-");
    if (iaDate.length != 3) return false;
    if (iaDate[1].length > 2 || iaDate[2].length > 2) return false;

    year = parseFloat(iaDate[0]);
    month = parseFloat(iaDate[1]);
    day=parseFloat(iaDate[2]);

    if (year < 1900 || year > 2100) return false;
    if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) iaMonthDays[1]=29;
    if (month < 1 || month > 12) return false;
    if (day < 1 || day > iaMonthDays[month - 1]) return false;
    return true;
}

function checkAll(eChk){
	var a = document.getElementsByName(eChk);
  	var n = a.length;
  	for (var i=0; i<n; i++){
  		a[i].checked = window.event.srcElement.checked;
	}
}

function chkDelete(eChk){
	var a = document.getElementsByName(eChk);
  	var n = a.length;
	var isselected=0;
  	for (var i=0; i<n; i++){
  		if(a[i].checked==true)isselected++;
	}
	if(isselected==0){
		alert('请选择要删除的项目');
		return false;
	}

	var prt;
	prt=confirm('确认要删除这'+isselected+'个项目吗？');
	if(!prt){
		return false;
	}
	else
	{
	return true;
	}
}
