/* 通用js函数 */

//取得文件所在目录
function dirname(file_src) {
    var dir=''
    ns = file_src.split("/")
    for (i=0;i<ns.length-1;i++) {
        dir = dir + ns[i] + '/' 
    }
    return dir
}

/* 年月日下拉框变换 */
function change_ymd(qyear,qmonth,qday)  { 
    select_item_y=qyear.options[qyear.selectedIndex].text;

    var month29=false
    if ((select_item_y%4==0 && select_item_y%100!=0)||(select_item_y%400==0))
        month29=true;

    select_item_m=qmonth.options[qmonth.selectedIndex].text;
    switch(select_item_m) { 
        case '2' :if (month29) {MD(qday,29)}  else {MD(qday,28)};break;
        case '4' : 
        case '6' : 
        case '9' : 
        case '11' : MD(qday,30);break; 
        default : MD(qday,31);break; 
    }

} 

function MD(qday,days) { 
    select_item_d=qday.options[qday.selectedIndex].text;
    
    j=qday.options.length; 
    for(k=0;k<j;k++) qday.options.remove(0); 
    for(i=0;i<days;i++) { 
        var day=document.createElement('OPTION'); 
        qday.options.add(day); 
        day.innerText=i+1; 
    } 
    
    if (select_item_d>days)
         qday.selectedIndex=days-1
    else qday.selectedIndex=select_item_d-1
} 


//遍历表单(frm)上所有的元素，根据chkbox的名字前缀(chkbox_prefix)找出相关的chkbox
//然后根据最大可选择数(max_num)判断，是否多选择了。theone是当前选中的chkbox
function ItemSelect_chk(frm,max_num,chkbox_prefix,theone)  {
    if (max_num==0) return;
    
    for (j=0,i=0; i<frm.elements.length; i++) {
        e = frm.elements[i];
        if (chkbox_prefix == e.name.substring(0,chkbox_prefix.length)) { //同一组
            
            if ( (max_num==1) && (e.name!=theone.name)) { //单选
                e.checked=false;    
            } else {  //多选
                if ((chkbox_prefix == theone.name.substring(0,chkbox_prefix.length))&&
                    e.checked==true   ) {
                    j++;
                }
            } 
            
        } //endof if
    } //endof for
    
    if (j > max_num) {
        alert("这个问题最大的选择数是"+max_num+"个！");
        theone.checked=false;
    }
}//endof func


/*  选中指定的form中相关的chkbox
    form : chkbox所在表单
    group_str : chkbox名字匹配的字符串
用法：
    <a style="color:yellow;cursor:hand" onclick="CheckAll(batch_form,'topic_ids')">全选</a>
    <input type=Hidden name=topic_ids_flag value=0>
或者
    <input type=checkbox name=topic_ids_chk onclick="CheckAll(batch_form,'topic_ids')">
    <input type=Hidden name=topic_ids_flag value=0>

替换 topic_ids为相应的group_str
*/
function CheckAll(form,group_str) {
    var flag;
    
    if (form.elements[group_str+'_flag'].value=='0') {
        flag = true;
        form.elements[group_str+'_flag'].value = '1' ;
    } else {
        flag = false;
        form.elements[group_str+'_flag'].value = '0' ;
    }
    
    for (var i=0;i<form.elements.length;i++) {
        e = form.elements[i];
        if (e.name.indexOf(group_str)!=-1) e.checked=flag;
    }
}
/*
function CheckAll(form)  {
    if (check_flag.innerHTML=='全选') {
        flag=true;
        check_flag.innerHTML='取消'
    } else {
        flag=false;
        check_flag.innerHTML='全选'
    }
    for (var i=0;i<form.elements.length;i++)    {
        var e = form.elements[i];
        if (e.name != 'chkall')       
            e.checked = form.chkall.checked; 
   }
}
*/
