
function YesNo(text) {
    var que = "Are you sure you want to delete this item?";
    if (text != null) 
        que = text;
    if (confirm(que)) {
        return true;
    }    
    return false;
}
function YesNo2(text,in_val) {
    var que = "Enter new value.";
    var rez = "";
    if (text != null) 
        que = text;
    if (rez = prompt(que,in_val)) {
        return rez;
    }    
    return false;
}
// sets directly Section field value via button
function SetSectionValue(elem,val) {
    var form = elem.form;
    if (val != "") {
        form.subsection.value = val;
        return true;
    }
    return false;
}

// sets directly Section field value via link and submits the form
function GoSubsection(elem,val) {
    var form = document.getElementById(elem);
    if (!form)
        form = elem.form;
    var val2 = parseInt(val);
    if (isNaN(val2)) {
        return false;
    } else if (val2 >= 0) {
        form.subsection.value = val2;
        form.submit();
        return false;
    }
    return false;
}

// sets directly value into field with name item
function SetItemValue(elem,item,val) {
    var form = elem.form;
    eval("form."+item+".value = val");
    return true;
}

// sets directly value into field with name item, elem is form ID
function SetItemValue2(elem,item,val) {
    var form = document.getElementById(elem);
    if (!form)
        form = elem.form;
    eval("form."+item+".value = val");
    return true;
}

// Shows access violation message
function CheckAccess(right) {
    if (right == "yes") {
        return true;
    } else {
        alert("You don't have access rights for this option.");
        return false;
    }
}

// Set the value of form's ACTION field.
function SetAction(elem,act) {
    var form = elem.form;
    if (act == "delete_item") {
        if (!YesNo()) {
            return false;
        }
    }
    form.action.value = act;
    return true;
}

// This is used within sourceTarget, it compares case insensitive strings
function iCompare(s1, s2) {
    if (s1.toUpperCase() < s2.toUpperCase())
       return -1;
    if (s1.toUpperCase() > s2.toUpperCase())
       return 1;
    // a must be equal to b
    return 0;
}

// This function handles two multipleselection lists
function sourceTarget(butt, from_name, to_name) {
    var form = document.getElementById(butt);
    if (!form)
        form = butt.form;
    eval("var from = form."+from_name);
    eval("var to = form."+to_name);
    
    var offered = new Array();
    var choosed = new Array();
    var entries = new Object(); // Assoc. arrays, ["val"] value, ["back"] background
    var tmp_str = ""; // temporary string
    var tmp_pos = 0;  // temporary index of #

    for(var i = 0; i < from.length; i++) {
        // first make unique text like concatenation of original text + # + value
        tmp_str = from[i].text + "#" + from[i].value;
        entries[tmp_str] = new Object();
        entries[tmp_str]["val"] = from[i].value;
        entries[tmp_str]["back"] = from[i].style.backgroundColor;
        if(from[i].selected == true) { // The from element is selected
            choosed[choosed.length] = tmp_str; // Add element into to list
        } else {
            offered[offered.length] = tmp_str;
        }
    }

    for(i = 0; i < to.length; i++) {
        tmp_str = to[i].text + "#" + to[i].value;
        entries[tmp_str] = new Object();
        entries[tmp_str]["val"] = to[i].value;
        entries[tmp_str]["back"] = to[i].style.backgroundColor;
        choosed[choosed.length] = tmp_str;
    }

    from.length = 0; // Empty From and To lists
    to.length = 0;

    offered.sort(iCompare); // Sort temporary lists
    choosed.sort(iCompare);

    for(var j = 0; j < offered.length; j++) { // Copy temporary from into real from
        // here we need to slice # + value from 
        tmp_pos = offered[j].lastIndexOf("#");
        if (tmp_pos >= 0) { // remove # and all after it
            tmp_str = offered[j].slice(0,tmp_pos);
        } else {
            tmp_str = offered[j];
        }
        from[j] = new Option(tmp_str, entries[offered[j]]["val"]);
        from[j].style.backgroundColor = entries[offered[j]]["back"];
    }

    for(j = 0; j < choosed.length; j++) { // Copy temporary to into real to
        tmp_pos = choosed[j].lastIndexOf("#");
        if (tmp_pos >= 0) { // remove # and all after it
            tmp_str = choosed[j].slice(0,tmp_pos);
        } else {
            tmp_str = choosed[j];
        }
        to[j] = new Option(tmp_str, entries[choosed[j]]["val"]);
        to[j].style.backgroundColor = entries[choosed[j]]["back"];
    }
}

// Implode sel multipleselection item into string with separator between elements
// if sel_only = true, only select items from multiselect will be used, by default all items will be used
function implodeSelection(frm_name, sel_name, itm_name, separator, sel_only) {
    var form = document.getElementById(frm_name);
    eval("var sel = form."+sel_name);
    eval("var itm = form."+itm_name);
    var sep = separator.substr(0,1); // separator has one character length
    var tmp_text = "";
    var selected_only = false;
    if (sel_only != null) 
        selected_only = sel_only;
    
    for(var i = 0; i < sel.length; i++) {
        if (selected_only == true && sel[i].selected == true) {
            tmp_text = tmp_text + sel[i].value + sep;
        } else if (selected_only == false) {
            tmp_text = tmp_text + sel[i].value + sep;
        }
    }
    // trim right separator
    if (tmp_text.length>0) {
        if (tmp_text.charAt(tmp_text.length-1) == sep) {
            tmp_text = tmp_text.substr(0,tmp_text.length-1);
        }
    }
    itm.value = tmp_text;
    return true;
}

// Field validation
function validateField(fld, mode, min_val, max_val) {
    // Validate val, if validation fails show alert and return false else return true
    // Mode:
    // 1 - Only letters
    // 2 - Letters and _
    // 3 - Letters and numbers and _
    // 4 - Integer value
    // 5 - Number
    // 6 - Mobile phone like +number or 00number
    // 7 - Mail like ___@___.___
    // 8 - Phone number in format [+]number
    // The new optional parameters min_val and max_val are added the modes 4 and 5 will be chacked against them
    var val = fld.value;
    var msg = "";
    var letters = "qwertyuiopasdfghjklzxcvbnmüöäß";
    var special = "_";
    var plus    = "+";
    var numbers = "0123456789";
    var allowed = "";
    var result = true;
    switch (mode) {
    case 1:
        allowed = letters;
        msg = "The field value contains invalid characters, the valid characters are letters, only.";
        break;
    case 2:
        allowed = letters+special;
        msg = "The field value contains invalid characters, the valid characters are letters and _.";
        break;
    case 3:
        allowed = letters+special+numbers;
        msg = "The field value contains invalid characters, the valid characters are letters, numbers and _.";
        break;
    case 4:
        allowed = numbers;
        msg = "Invalid integer value!";
        break;
    }
    if (mode == 1 || mode == 2 || mode == 3 || mode == 4) {    
        var tmpVal = val.toLowerCase(); // make lowercase copy to speeup searching
        for (i=0;i<tmpVal.length;i++) {
            if (allowed.indexOf(tmpVal.charAt(i)) < 0) {
                result = false;
                break;
            }
        }
    } else if (mode == 5) {
        floatValue=parseFloat(val);
        if (val != "" && isNaN(floatValue)) {
            msg = "Invalid decimal number.";
            result = false;
        }
    } else if (mode == 6) {
        if (val.length > 0) {
            if (((val.charAt(0) == "+") || (val.charAt(0) == "0" && val.charAt(1) == "0")) && val.length > 7) {
                val = val.slice(1);
                pat = /[0-9]/gi
                pat2 = /[^0-9]/gi
                res = val.replace(pat,"");
                if (res != "") {               
                    result = false;
                } else {
                    if (pat2.test(val))
                        result = false;
                }
            } else {                
                result = false;
            }
            if (!result)
                msg = "Invalid mobile phone number format.";
        }
    } else if (mode == 7) {
        if ((val != "") && ((val.indexOf('@')== -1) || (val.indexOf('.')== -1))){
            result = false; 
        }
        if (!result)
            msg = "Invalid mail.";
            
    } else if (mode == 8) {
        if (val.length > 0) {
            fc = val.charAt(0);
            if (((fc == "+") || (Number(fc) >= 0 && Number(fc) <= 9)) && val.length > 2) {
                val = val.slice(1);
                pat = /[0-9]/gi
                pat2 = /[^0-9]/gi
                res = val.replace(pat,"");
                if (res != "") {               
                    result = false;
                } else {
                    if (pat2.test(val))
                        result = false;
                }
            } else {                
                result = false;
            }
            if (!result)
                msg = "Invalid phone number format.";
        }
    }
    
    if (result) { // now check min and max val
        if (val != "" && (mode == 4 || mode == 5)) {
            if (mode == 4) {
                new_val = parseInt(val);
            } else if (mode == 5) {
                new_val = parseFloat(val);
            }
            if (isNaN(new_val)) {
                new_val = 0;
            }
            if (min_val != null && new_val < min_val) {
                result = false;
            }
            if (max_val != null && new_val > max_val) {
                result = false;
            }
            if (!result) { //set the error message
                if (min_val != null && max_val != null) {
                    msg = "Invalid value, it must be between "+min_val+" and "+max_val+".";
                } else if (min_val != null) {
                    msg = "Invalid value, it must NOT be less then"+min_val+".";
                } else if (max_val != null) {
                    msg = "Invalid value, it must NOT be greater then"+max_val+".";
                }
            }
        }
    } 
    
    if (!result) {
        alert(msg);
        fld.focus();
    }
    return result;   
}

// Check list of fields against NULL value
function mandatoryFields(frm_name, fList, mesg) {
    // field names in fList are separated with ,
    var form = document.getElementById(frm_name);
    var fArray = fList.split(",");
    var tmp = "";
    for (var i=0; i < fArray.length; i++) {
        eval("tmp = form."+fArray[i]+".value");
        if (tmp == "") {
            alert(mesg);
            setFocus(frm_name, fArray[i]);
            return false;
        }
    }
    return true;
}

function MakeList(elem){
    var form = elem.form;    
    var len = form.APP.length;    
    var result = ";";
    for(var i=0;i<len;i++){
        if(form.APP.options[i].selected) {
            result = result + form.APP.options[i].value+";";
        }
    }
    form.listAPP.value=result;
} 

function goLink(id,act) {
  var form = document.getElementById(id);
  form.section.value = act;
  form.submit();   
}

function getNCharUsed(frm,msg,dsp,by_id){
    if (by_id != null && by_id == "yes") {
        var form = document.getElementById(frm);
        var len_fld = document.getElementById(dsp);
        var msg_fld = document.getElementById(msg);
    } else {
        var form = frm;
    }
    if (by_id != null && by_id == "yes") {
        var len = msg_fld.value.length;
    } else if (msg != null) {
        eval("var len    = form."+msg+".value.length");
    } else {
        var len    = form.message.value.length;
    }
    if (isNaN(len)) len = 0;
    var msg_   = Math.ceil(len/160);
    if (isNaN(msg_)) msg_ = 0;
    if (by_id != null && by_id == "yes") {
        len_fld.value = len+"/"+msg_;
    } else if (dsp != null) {
        var t = len+"/"+msg_;
        eval("form."+dsp+".value = '"+t+"'");
        
    } else {
        form.curLen.value = len+"/"+msg_;
    }
}

// functions for menu
// ======================================================================================
function goMenu(frm, sec, apl) {
    var form = document.getElementById(frm);
    form.section.value = sec;
    form.selected_application.value = apl;
    form.submit();
    return false;
}

// functions for the application tool section
// ======================================================================================
function goApplication(frm) {
    var form = document.getElementById(frm);
    var len = form.applicationslist.length;
    for (var i=0; i<len; i++) {
        if (form.applicationslist.options[i].selected) {
            var fArray = form.applicationslist.options[i].value.split(",");
            form.selected_application.value = fArray[0];
            form.section.value = fArray[1];
        }
    }
    form.submit();
    return false;
}

// set value into some field and submit form
function SetAndSubmit(elem,item,val) {
    var form = document.getElementById(elem);
    eval("form."+item+".value = val");
    form.submit();
    return false;
}

// check time in form hh:mm
function checkTime(frm_name) {
    var form = document.getElementById(frm_name);
    var index = form.time.value.indexOf(":");
    var len = form.time.value.length;    
    var msg = "Time is not in a valid format!";
    re = /[0-9]/gi
    if (index < 1){
        alert(msg);
        return false;
    }else{
        var hour = form.time.value.substr(0,index);
        var min = form.time.value.substr(index + 1, len);
        while (hour.length < 2) hour = "0" + hour;
        while (min.length < 2) min = "0" + min;
        res = hour.replace(re, "");
        result = min.replace(re, ""); 
        if ((res != "")||(result != "")){
            alert(msg);
            return false;
        }
        if ((hour < 0) || (hour > 23) || (hour == "") || (min < 0) || (min > 59) || (min == "")){
            alert(msg);
            return false;
        }
    }
    form.time.value = hour + ":" + min;
    return true;  
}

function findToString(listaq, patt) {
    var offset = listaq.indexOf(patt);
    if (offset <= -1) return false;
    else return true;
}

function AddToList(frm, num, lista) {
    var form = document.getElementById(frm);    
    var pom = num;
    var p = "GR";
    var poz;
    var duz;
    var pom;
    p = p.concat(num);
    if (p.checked) {
        form.lista.value = form.lista.value.concat(num);
    }else {
        num = num.concat(";");
        poz = findToString(form.lista.value, num);
        duz = form.lista.value.length;
        if (poz) {
            poz = form.lista.value.indexOf(num);
            pom = form.lista.value.substr(0, poz);
            form.lista.value = pom.concat(form.lista.value.substr(poz + num.length, duz));
        } else {
            form.lista.value = form.lista.value.concat(num);
        }
    }
}

function CheckDate(elem) {
    if (elem.value == "")
        return;
    var isOK = true;
    var elems = elem.value.split(".");
    if (elems.length == 3) {
        var d=parseInt(elems[0], 10);
        var m=parseInt(elems[1], 10);
        var y=parseInt(elems[2], 10);
        if (isNaN(d) || isNaN(m) || isNaN(y)) {
            isOK = false;
        } else {
            if (d<1 || d>31)
                isOK = false;
            if (m<1 || m>12)
                isOK = false;
            if (y<1900 || y>2090)
                isOK = false;
        }
    } else {
        isOK = false;
    }
    if (isOK == false) {
        alert("The value " + elem.value + " is not a valid date in format: dd.mm.yyyy");
        elem.focus();
    }
}

// Function validates data in Direct Message Send Screen
function CheckSendMessage(form_id) {
    var form = document.getElementById(form_id);   
    var errMsg = "";
    if (form.template[0].value == 1 && form.template[0].checked) {
        if (form.news.value == "") 
            errMsg = "You have to choose message template you want to send.";
    } else if (form.template[1].value == 3 && form.template[1].checked) {
        if (form.new_template_title.value == "" || form.message.value == "") 
            errMsg = "Title and text are mandatory fields for new template.";
    } else if (form.template[2].value == 2 && form.template[2].checked) {
        if (form.message.value == "") 
            errMsg = "Message text is mandatory field for direct send.";
    }
    if (errMsg != "") {
        alert(errMsg);
        return false;
    }
    return true;
}

// Clear fields in Direct Message Send Screen when message source is changed
function ChangeSendMessageSource(form_id) {
    var form = document.getElementById(form_id);   
    if (form.template[0].value == 1 && form.template[0].checked) {
        form.new_template_title.value = "";
        form.message.value = "";
        form.curLen.value = "0/0";
    } else if (form.template[1].value == 3 && form.template[1].checked) {
        form.news.options[0].selected = true;
    } else if (form.template[2].value == 2 && form.template[2].checked) {
        form.news.options[0].selected = true;
        form.new_template_title.value = "";
    }
    return true;
}

/**
 * set all check boxes
 */
function SetAllCheckBoxes(form_id, item_name, on_off) {
    var form = document.getElementById(form_id);
    var len = form.elements.length;
    for (var i = 0; i < len; i++) {
        var e = form.elements[i];
        if (e.name != null && e.name.indexOf(item_name) >= 0 && e.type == "checkbox") {
            e.checked = (on_off == "on") ? true : false;
        }
    }    
    return false;
}


// Set state to all list item elements
function ToggleList(form_id, item_name, new_state) {
    // new_state may be on or off
    var form = document.getElementById(form_id);
    eval("var elem = form."+item_name);
    for(var i=0;i<elem.length;i++){
        if (new_state == "on")
            elem.options[i].selected = true;
        else 
            elem.options[i].selected = false;
    }
}

// Select specified list item element
function ToggleListItem(form_id, item_name, set_value) {
    // new_state may be on or off
    var form = document.getElementById(form_id);
    eval("var elem = form."+item_name);
    for(var i=0;i<elem.length;i++){
        if (elem.options[i].value == set_value)
            elem.options[i].selected = true;
        else 
            elem.options[i].selected = false;
    }
}

// sets insert statistic when SMS Gate is changed (test aplication)
function ChangeGate(elem,item) {
    var form = elem.form;
    if (form.from_ip.value == "999.999.999.999"){
        eval("form."+item+".checked = false");
    } else {
        eval("form."+item+".checked = true");
    }
    return true;
}

function frameSource(source){
    var frame_id = document.getElementById('frame_res'); 
    parent.frame_res.document.open(); 
    parent.frame_res.document.write('<html><body marginwidth=5 marginheight=5 style=\"font-family: Verdana, Arial, sans-serif; font-size: 11px\" bgcolor=#FFFFFF>'+source+'</body></html>'); 
    parent.frame_res.document.close();
}

function blank(){
    return "<html><body marginwidth=0 marginheight=0 style=\"font-family: Verdana, Arial, sans-serif; font-size: 11px\" bgcolor=#FFFFFF></body></html>";
}

//when press enter in the field, submit form
function enterSubmit(item) {
    var form = item.form;
    if (event.keyCode != null) {
        if (event.keyCode == 13) {
            form.submit();
        }
    }
}

// change the visibility attribute of an element id
// if FULL exists - element will not be displayed at all
function ToogleDisplay(elem,on_off,full) {
    var el = document.getElementById(elem);
    if (el == null) {
        return true;
    }
    if (on_off == true) {
        if (full != null && full == true) {
            el.style.display = 'inline';
        }
        el.style.visibility = 'inherit';
    } else {
        el.style.visibility = 'hidden';
        if (full != null && full == true) {
            el.style.display = 'none';
        }
    }
    return true;
}

// raises new browser window and loads pageSource page in it
function showNewWindow(pageSource,wwidth,wheight,scrlBar) {
    var scrollBar = "yes"
    if (scrlBar != null) {
        scrollBar = scrlBar
    }
    loc = pageSource;
    // set window properties
    var windowprops = "resizable=yes,width="+wwidth+",height="+wheight+",status=no,location=no,toolbar=no,titlebar=no,scrollbars="+scrollBar;
    // raise new window from new url
    var popwin = window.open(loc,"Popup", windowprops);
    popwin.focus();
    return false;
}

// Use picture bold.gif, italic.gif, underline.gif (bold.gif, italic.gif, underline.gif)
// as checkbox and save in filed with comaseparated (bold,italic,underline)
// 
function setWeight(nr,res,frm) {
    var form = document.getElementById(frm);
    var rez = document.getElementById(res);
    eval("var bold = form.bold"+nr+".value");
    eval("var italic = form.italic"+nr+".value");
    eval("var underline = form.underline"+nr+".value");
    if ( bold == 1){
        bold = 'bold';
        eval("document.pbold"+nr+".src='images/bolds.gif'");     
    } else {
        bold = '';
        eval("document.pbold"+nr+".src='images/bold.gif'");
    }
    if ( italic == 1){
        italic = 'italic';
        eval("document.pitalic"+nr+".src='images/italics.gif'");     
    } else {
        italic = '';
        eval("document.pitalic"+nr+".src='images/italic.gif'");
    }
    if ( underline == 1){
        underline = 'underline';
        eval("document.punderline"+nr+".src='images/underlines.gif'");     
    } else {
        underline = '';
        eval("document.punderline"+nr+".src='images/underline.gif'");
    } 
    eval("rez.value = bold+','+italic+','+underline");
}

function onloadWeight(nr,res,frm) {
    var form = document.getElementById(frm);
    var rez = document.getElementById(res);
    var bold = "";
    var italic = "";
    var underline = "";
    
    if (rez.value.indexOf('bold') != -1) {
        bold = 1;
        eval("form.bold"+nr+".value");
    }
    if (rez.value.indexOf('italic') != -1) {
        italic = 1;
        eval("form.italic"+nr+".value");
    }
    if (rez.value.indexOf('underline') != -1) {
        underline = 1;
        eval("form.underline"+nr+".value");
    }
    if ( bold == 1){
        //bold = 'bold';
        eval("document.pbold"+nr+".src='images/bolds.gif'");     
    } else {
        //bold = '';
        eval("document.pbold"+nr+".src='images/bold.gif'");
    }
    if ( italic == 1){
        //italic = 'italic';
        eval("document.pitalic"+nr+".src='images/italics.gif'");     
    } else {
        //italic = '';
        eval("document.pitalic"+nr+".src='images/italic.gif'");
    }
    if ( underline == 1){
        //underline = 'underline';
        eval("document.punderline"+nr+".src='images/underlines.gif'");     
    } else {
        //underline = '';
        eval("document.punderline"+nr+".src='images/underline.gif'");
    } 
    
}


// Use picture justifyleft.gif, justifycenter.gif, justifyright.gif, justifyfull.gif 
// (justifylefts.gif, justifycenters.gif, justifyrights.gif, justifyfulls.gif)
// as radiobuton 
// 
function setJustify(nr,res) {
    var rez = document.getElementById(res);
    if ( rez.value == "left"){
        eval("document.pjustifyleft"+nr+".src='images/justifylefts.gif'");     
    } else {
        eval("document.pjustifyleft"+nr+".src='images/justifyleft.gif'");
    }
    if ( rez.value == "center"){
        eval("document.pjustifycenter"+nr+".src='images/justifycenters.gif'");     
    } else {
        eval("document.pjustifycenter"+nr+".src='images/justifycenter.gif'");
    }
    if ( rez.value == "right"){
        eval("document.pjustifyright"+nr+".src='images/justifyrights.gif'");     
    } else {
        eval("document.pjustifyright"+nr+".src='images/justifyright.gif'");
    } 
    if ( rez.value == "justify"){
        eval("document.pjustifyfull"+nr+".src='images/justifyfulls.gif'");     
    } else {
        eval("document.pjustifyfull"+nr+".src='images/justifyfull.gif'");
    } 
    //eval("rez.value = bold+','+italic+','+underline");
}

function isEnter(event) {
  if (event && event.which == 13)
    return true;
  else if (window.event && window.event.keyCode == 13)
    return true;
  else
    return false;
}

/**
 * add new item into select field; duplicates are not allowed
 */
function appendSelect(frm, itm, val, desc, usrIncFunction) {

    var form = document.getElementById(frm);
    if (!form)
        form = elm.form;
    
    if(usrIncFunction != "") {
        eval('var incVar = form.' + usrIncFunction);
    }
    
    eval("var sl = form."+itm);
    var found = false;
    // check does new element already exist; if so, don't insert it
    for(i = 0; i < sl.length; i++) {
        if (sl[i].value == val) {
            found = true;
            break;
        }
    }
    if (found == false) {
        sl[sl.length] = new Option(desc, val);
        if(usrIncFunction != "") eval(incVar.value);    
    }
}

/**
 * walk through array of checkboxes and call JS code from correspodent hidden field
 */
function walkAndExecute(frm, cb_name, hd_name) {
    cb_name += "["; // checkbox should be an array
    hd_name += "["; // hidden should be an array
    var form = document.getElementById(frm);
    
    if (!form) {
        form = frm.form;
        if (!form) {
            alert('ERROR: Wrong form name!');
            return;
        }
    }
    
    var len = form.elements.length;
    var look_for = ""; // the full hidden name which we are looking for
    
    // walk through all form's elements and find checkboxes
    for (var i = 0; i < len; i++) {
        var e = form.elements[i];
        if (e.type == "checkbox" && e.name != null && e.name.indexOf(cb_name) == 0 && e.checked == true) {
            look_for = e.name.substring(cb_name.length);
            look_for = hd_name + look_for; // we got full hidden field name
            // continue to search in elements HIDDEN field with given prefix name
            for (var j = i; j < len; j++) {
                var h = form.elements[j];
                if (h.type == "hidden" && h.name == look_for && h.value != "") {
                    // now execute Js code from hidden field
                    eval(h.value);
                }
            }
        }
    }    
}

function sourceTarget2(butt, from_name, to_name) {
    var form = document.getElementById(butt);
    var tmp;
    if (!form)
        form = butt.form;
    eval("var from = form."+from_name);
    eval("var to = form."+to_name);
    for(var i = 0; i < from.length; i++) {
        if(from[i].selected == true) {
            to.value = to.value + ' ' + from[i].text + ' ';
        }
    }
}

function disableElement(sel_elemId, dis_elemId, clear_elemId) {
    //alert (document.getElementById(sel_elemId).value);
    if(document.getElementById(sel_elemId).value == "") {
        document.getElementById(dis_elemId).disabled = false;
        if(clear_elemId != "") {
            //alert(document.getElementById(clear_elemId).id);
            document.getElementById(clear_elemId).value = "";
        }
    } else {
        document.getElementById(dis_elemId).disabled = true;
    }
    
}
