//####################################################################################################### FUNCTINS ###
//# FUNCTIONS FOR DIALOGS
//--------------------------------------------------------------------------------------------------------------------
// FUNCTION BASE: DIALOGS SPECIFIC FUNCTIONS
//--------------------------------------------------------------------------------------------------------------------   
  function dlgCloneValue(target, dest){  
    for(i=0; i<dest.length; i++) document.getElementById(dest[i]).value = document.getElementById(target).value;  
  }  

  function dlgGenHours(cmbObj, beginHour, endHour, intervalMin, defHour, defMin){ 
    for(i=0; i<cmbObj.length; i++){  
      elem = document.getElementById(cmbObj[i]);
      elem.options[0] = new Option("--:--", "--:--");
      elem.options[0].selected = ((defHour == "" || defMin == "") ? true : false);
      
      for(j=beginHour*60, k = 1; j<=endHour*60; j=j+intervalMin, k++){ 
        minutes = j%60;  
        hours   = parseInt(j/60);  
        minutes_str = (minutes < 10 ? "0"+minutes : minutes);  
        hours_str   = (hours < 10 ? "0"+hours : hours);  
        
        if(hours==defHour && minutes==defMin){
          value = hours_str + ":" + minutes_str; 
          elem.options[k] = new Option(value, value);
          elem.options[k].selected = true;
        }       
        else{
          value = hours_str + ":" + minutes_str;
          elem.options[k] = new Option(value, value);  
        }  
      }  
    } 
  }
  
  function dlgFillCmb(cmbObj, value, text, defValue){ 
    var cmbObj = (typeof(cmbObj) == 'object' ? cmbObj : document.getElementById(cmbObj));
    
   if(cmbObj == null) alert(text);
    
    for(i=0; i<value.length; i++){  
      if(value[i] == defValue){
        cmbObj.options[i] = new Option(value[i], text[i]);  
        cmbObj.options[i].selected = true;
      }
      else{
        cmbObj.options[i] = new Option(value[i], text[i]);
      }
    }  
  }
  
  function dlgSelectItem(cmbObj, value){  
    for(i=0; i<cmbObj.options.length; i++){  
      if(cmbObj.options[i].value == value){
        cmbObj.options[i].selected = true;
        return true;
      }
    }  
  }  
//--------------------------------------------------------------------------------------------------------------------
// FUNCTION BASE: HTML GUI OBJECTS VISIBLILITY
//--------------------------------------------------------------------------------------------------------------------  
  function setVisibleByObjectsI(visibleElemId, elemId){
    isVisible = 'true';
    for(i=0; i<elemId.length; i++){  
      elem = document.getElementById(elemId[i]);
      if(elem.style.display == 'block') isVisible = 'false';
    }
    
    elemTarget = document.getElementById(visibleElemId); 
    if(isVisible == 'true'){
      elemTarget.style.display = 'block';
      elemTarget.style.visibility = "visible";
    }	  
    else{
      elemTarget.style.display = 'none';
      elemTarget.style.visibility = "hidden";	  
    }
  }  
//--------------------------------------------------------------------------------------------------------------------
// FUNCTION BASE: HTML GUI OBJECTS ACTIVITY
//--------------------------------------------------------------------------------------------------------------------  
  function setEnabled(elemName, enabled){
    function ds(e){return false;}
    function ra(){return true;}    
    elem = document.getElementById(elemName);
    
    if(enabled == false){
        elem.disabled = false;
        elem.style.color = elem.style.colorDisabled = (elem.style.colorDisabled ? elem.style.colorDisabled : "#888");
        elem.style.cursor = "wait";
        elem.onclick = ds;
    }	  
    else{
      elem.disabled = false;
      elem.style.color = elem.style.colorEnabled = (elem.style.colorEnabled ? elem.style.colorEnabled : "#000");
      elem.style.cursor = "pointer";
      elem.onclick = ra;
    }
  }  
//--------------------------------------------------------------------------------------------------------------------
// FUNCTION BASE: HTML GUI OBJECTS SELECTION
//--------------------------------------------------------------------------------------------------------------------  
  function setUnselectable(elemName, disableClick){
    function ds(e){return false;}
    function ra(){return true;}
    document.getElementById(elemName).onselectstart = new Function('return false');
    document.getElementById(elemName).onmousedown = ds;
    if(disableClick == true) document.getElementById(elemName).onclick = ra;	   
  }
//--------------------------------------------------------------------------------------------------------------------
// FUNCTION BASE: HTML GUI OBJECTS MODIFICATIONS
//--------------------------------------------------------------------------------------------------------------------  
  function setText(elemName, text){
    document.getElementById(elemName).innerHTML = text;   
  }  
  function setTextFromAttribute(srcElem, srcAttribute, destTag){
    tooltip = srcElem.getAttribute(srcAttribute);
    document.getElementById(destTag).innerHTML = tooltip;	
  }
 //--------------------------------------------------------------------------------------------------------------------
// FUNCTION BASE: HTML GUI OBJECTS ACTIVITY
//--------------------------------------------------------------------------------------------------------------------  
  function toggleHeight(elemName, heightA, heightB){
    elem = document.getElementById(elemName);
    
    if(elem.style.height == (heightA + 'px')){
        elem.style.height = heightB + 'px';
    }	  
    else{
        elem.style.height = heightA + 'px';
    }
  }
