/**
 * Common Java Script
 * Fungsi-fungsi umum javascript
 *
 * @access public
 * @author Agung Harry Purnama (agung.hp@awakami.com)
 * @since 9/19/2006 2:25PM
 */


function showObject(the_id){
    var idObj = document.getElementById(the_id);
        
    if (idObj.style.display == "none"){
        idObj.style.display = "";
    }
}

function hideObject(the_id){
    var idObj = document.getElementById(the_id);
        
    if (idObj.style.display == ""){
        idObj.style.display = "none";
    }
}


function showHideObject(the_id){
    var idObj = document.getElementById(the_id);

    if (idObj.style.display == "none"){
        idObj.style.display = "";
    }else{
        idObj.style.display = "none";
    }    
}

function checkAllCheckbox(triggerObj, targetName){
    var nodeListObj = document.getElementsByName(targetName);

    if (triggerObj.checked){
        targetCheckedValue = true;
    }else{
        targetCheckedValue = false;
    }
   
    for (var i=0; i < nodeListObj.length; i++){
        if(nodeListObj[i].disabled){
            nodeListObj[i].checked = false;
        }
        else{            
            nodeListObj[i].checked = targetCheckedValue;
        }
    }
}

function checkAllCheckbox2(triggerObj, targetName, targetName2){
    var nodeListObj = document.getElementsByName(targetName);
    var nodeListObj2 = document.getElementsByName(targetName2);
    
    if (triggerObj.checked){
        targetCheckedValue = true;
    }else{
        targetCheckedValue = false;
    }
   
    for (var i=0; i < nodeListObj.length; i++){
        if(nodeListObj[i].disabled){
            nodeListObj[i].checked = false;
        }
        else{            
            nodeListObj[i].checked = targetCheckedValue;
        }
    }
    
    for (var i=0; i < nodeListObj2.length; i++){
        if(nodeListObj2[i].disabled){
            nodeListObj2[i].checked = false;
        }
        else{            
            nodeListObj2[i].checked = targetCheckedValue;
        }
    }
}

function formConfirmSubmit(theform, the_message){
    act = window.confirm(the_message);
    if (act == true){
        s = document.getElementById(theform);
        s.submit();
    }
}


function confirmSubmit(the_url, the_message){
    act = window.confirm(the_message);
    if (act == true){
        location.href = the_url;
    }
}

function goToURL(the_url){
    location.href = the_url;
}

function setCheckAllCheckboxStatus(checkAllID, watchedObjectName){
    var nodeListObj = document.getElementsByName(watchedObjectName);
    var checkAllObj = document.getElementById(checkAllID);
    
    var x = true;
    for (var i=0; i < nodeListObj.length; i++){
        if (!nodeListObj[i].checked && !nodeListObj[i].disabled){
            x = checkAllObj.checked = false;
            break;
        }
    }
    
    if (x) checkAllObj.checked = true;
}

function setCheckAllCheckboxStatus2(checkAllID, watchedObjectName, watchedObjectName2){
    var nodeListObj = document.getElementsByName(watchedObjectName);
    var nodeListObj2 = document.getElementsByName(watchedObjectName2);
    var checkAllObj = document.getElementById(checkAllID);
    
    var x = true;
    for (var i=0; i < nodeListObj.length; i++){
        if (!nodeListObj[i].checked && !nodeListObj[i].disabled){
            x = checkAllObj.checked = false;
            break;
        }
    }
    for (var i=0; i < nodeListObj2.length; i++){
        if (!nodeListObj2[i].checked && !nodeListObj2[i].disabled){
            x = checkAllObj.checked = false;
            break;
        }
    }    
    
    if (x) checkAllObj.checked = true;
}

function setButtonActivation(buttonID, watchedObjectName){
    var nodeListObj = document.getElementsByName(watchedObjectName);
    
    var status = false;    
    for (var i=0; i < nodeListObj.length; i++){
        if (nodeListObj[i].checked){
            status = true;
            break;
        }
    }
    if (status) 
        buttonActivate(buttonID);
    else
        buttonDeactivate(buttonID);
}

function setButtonActivation2(buttonID, watchedObjectName, watchedObjectName2){
    var nodeListObj = document.getElementsByName(watchedObjectName);
    var nodeListObj2 = document.getElementsByName(watchedObjectName2);
    
    var status = false;    
    for (var i=0; i < nodeListObj.length; i++){
        if (nodeListObj[i].checked){
            status = true;
            break;
        }
    }
    for (var i=0; i < nodeListObj2.length; i++){
        if (nodeListObj2[i].checked){
            status = true;
            break;
        }
    }
    if (status) 
        buttonActivate(buttonID);
    else
        buttonDeactivate(buttonID);
}

function setElementsActivation(objID, name1, name2){
    var obj = document.getElementById(objID);
    var nodeListObj1 = document.getElementsByName(name1);
    var nodeListObj2 = document.getElementsByName(name2);
    var status = true;
    
    if (obj.checked){    
        status = false;
    }
    
    for (var i=0; i < nodeListObj1.length; i++){
        nodeListObj1[i].disabled = status;
        nodeListObj2[i].disabled = status;
    }
}

function elementsActivation(objID, elemID1, elemID2){
    var obj = document.getElementById(objID);
    var elem1 = document.getElementById(elemID1);
    var elem2 = document.getElementById(elemID2);
    var status = true;
    
    if (obj.checked){    
        status = false;
    }
    
    elem1.disabled = status;
    elem2.disabled = status;
}

function setIdForId (idSeted, idSeter){
	var tempId = getElementById(idSeter);
	idSeted.value = tempId;	
}

function confirmSubmitDelete(triggerObj, urlDeleteID, watchedObjectName){
    var msg = "Apakah anda yakin akan menghapus data pilihan tersebut ?";
    var urlDelete = document.getElementById(urlDeleteID).value;
    
    var nodeListObj = document.getElementsByName(watchedObjectName);
    
    var urlArgs = "";
    for (var i=0; i < nodeListObj.length; i++){
        if (nodeListObj[i].checked){
            urlArgs += '&' + nodeListObj[i].name + '=' + nodeListObj[i].value;
        }
    }
            
    urlDelete += urlArgs;
    confirmSubmit(urlDelete, msg);
}

function confirmSubmitDelete2(triggerObj, urlDeleteID, watchedObjectName, watchedObjectName2){
    var msg = "Apakah anda yakin akan menghapus data pilihan tersebut ?";
    var urlDelete = document.getElementById(urlDeleteID).value;
    
    var nodeListObj = document.getElementsByName(watchedObjectName);
    var nodeListObj2 = document.getElementsByName(watchedObjectName2);
    
    var urlArgs = "";
    for (var i=0; i < nodeListObj.length; i++){
        if (nodeListObj[i].checked){
            urlArgs += '&' + nodeListObj[i].name + '=' + nodeListObj[i].value;
        }
    }
    for (var i=0; i < nodeListObj2.length; i++){
        if (nodeListObj2[i].checked){
            urlArgs += '&' + nodeListObj2[i].name + '=' + nodeListObj2[i].value;
        }
    }
    
    urlDelete += urlArgs;
    confirmSubmit(urlDelete, msg);
}

function buttonActivate(the_id){
    var idObj = document.getElementById(the_id);
    idObj.disabled = false;
}

function buttonDeactivate(the_id){
    var idObj = document.getElementById(the_id);
    idObj.disabled = true;
}

function popUpWindow(URLStr, winName, left, top, width, height)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  
  var popUpWin = open(URLStr, winName, 'status=yes,toolbar=no,location=no,directories=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
  popUpWin.focus();
}

function popUpFeeder(URLStr, winName, left, top, width, height, id_gi){
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  
  if(giObj = document.getElementById(id_gi)){
    if (giObj.value != ''){
        URLStr += "&search_gi" + "=" + giObj.value + "&search_mode=1";
      }
  }
   
  var popUpWin = open(URLStr, winName, 'status=yes,toolbar=no,location=no,directories=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}

function popUpJadual(URLStr, winName, left, top, width, height, id_gi, id_trafo){
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  var tempstr ='';
  
  if(giObj = document.getElementById(id_gi)){
    if (giObj.value != ''){
        tempstr += "&search_gi" + "=" + giObj.value +"";
      }
  }
  
  if(trObj = document.getElementById(id_trafo)){
    if (trObj.value != ''){
        tempstr += "&search_trafo" + "=" + trObj.value +"";
      }
  }
  
  if(tempstr != '')
    URLStr += tempstr + "&search_mode=1";
  
  var popUpWin = open(URLStr, winName, 'status=yes,toolbar=no,location=no,directories=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}

function resetInput(idname, showname){
    var  x = document.getElementById(idname);
    var  y = document.getElementById(showname);
    
    x.value = '';
    y.value = '';
}            

function putValueToOpener(var_idname, var_idvalue, var_showname, var_showvalue){

    var idname = window.opener.document.getElementById(var_idname);
    var showname = window.opener.document.getElementById(var_showname);
    idname.value = var_idvalue;
    showname.value= var_showvalue;
    return;
}
function textToUpper(obj){
	obj.value = obj.value.toUpperCase();
}

function autoFocus(field, limit, next, evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : 
        ((evt.which) ? evt.which : 0));
    if (charCode > 31 && field.value.length == limit) {
        field.form.elements[next].focus();
        field.form.elements[next].select();
    }
}

