﻿      /* This file is for SoftwareTool.aspx screen 
    created by Lily on May 26, 2009 */

   var myRequest = getXMLHttpRequest();
          
    function getXMLHttpRequest(){
        var request = new XMLHttpRequest();
        return request;
    }
    
     window.dhtmlHistory.create();
    
    window.onload =  function() {        
        dhtmlHistory.initialize();        
        dhtmlHistory.addListener(historyChange);

     };
     
     /** Our callback to receive history change  events. */
     function historyChange(newLocation, historyData) {
       var id;                    
       if (newLocation.charAt(0) =='s'){
            id = newLocation.substring(1);
            
            ToggleDisplaySub(id);
       }
    } 
  
   //for show and hide sub category
     function ToggleDisplaySub(id){
        //current one
        CurrentID = parseInt(id);
        var CurrentElem = document.getElementById('subCategory' + CurrentID);
        
        var Item= document.getElementsByTagName('input');
        var count = Item.length; 
        //close all of the div except current one       
             for (i = 1; i < count; i++) {
                 var ID = Item[i].value;
                 if (ID > 0 && ID != CurrentID){
                    var Elem = document.getElementById('subCategory'+ID);
                    if (Elem){
                        Elem.style.display = 'none';
                        Elem.style.visibility = 'hidden';
                    }
                  }
               } 
             //looking for current item, open or close it
           if (CurrentElem){            
                if (CurrentElem.style.display == 'block'){
                    CurrentElem.style.display = 'none';
                    CurrentElem.style.visibility = 'hidden';

                }
                else {
                    CurrentElem.style.display = 'block';
                    CurrentElem.style.visibility = 'visible';
                }
            }
          //looking for current item parent div, open it for back button only
          else {
               var ParentElem = document.getElementById('sparent'+CurrentID);
               if (ParentElem) { 
                    var parentDiv = document.getElementById('subCategory'+ParentElem.value);
                     if (parentDiv){
                        parentDiv.style.display = 'block';
                        parentDiv.style.visibility = 'visible';
                    }
               }
            }
       
           DisplayTools(CurrentID);
         
        
        return false;
      }
  
        
       function DisplayTools(id){
            changeStyleOnClick(id);
            var defaultText = document.getElementById("ctl00_Middle_DefaultTool");
            if (id!=1 && id!=2 && id!=3 & id!=17) {
                if (defaultText){
                    defaultText.style.display = 'none';
                    defaultText.style.visibility = 'hidden';
                    }
                myRequest.open("POST", 'DisplaySoftwareTool.aspx', true);
                myRequest.onreadystatechange = handleToolResponse;
                myRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
                myRequest.send ('value1=' + id ); 
              }
            else
            {
               if (defaultText){
                defaultText.style.display = 'block';
                defaultText.style.visibility = 'visible';
              }
              var content = document.getElementById("ctl00_Middle_ToolContent");
                if (content){
                    content.innerHTML = '';
                    return false;
                } 
            }                           
        }
        
         function handleToolResponse(){  
            if (myRequest.readyState == 4){
                if (myRequest.status == 200){
                    var content = document.getElementById("ctl00_Middle_ToolContent")
                    if (content){
                        content.innerHTML = myRequest.responseText;
                        return false;
                    }                                          
                } 
                else {
                       alert("Fail to load Software Tool.");
                        return false;
                    } 
                }
            }
            
                     
        function changeStyleOnClick(currentID){
            
            var Item= document.getElementsByTagName('input');
            var count = Item.length; 
            var CurrentElem = document.getElementById(currentID);
            var ParentElem = document.getElementById('sparent'+currentID);

            //CurrentElem.name        
             //close all of the login except current one       
             for (i = 1; i < count; i++) {
                 var ID = Item[i].value;
                 if (ID > 0 && ID !=currentID && ID!=ParentElem.value){
                    var Elem = document.getElementById(ID);
                    if (Elem){
                        Elem.className = 'a';
                     }
                 }
                 else               
                 {
                     if (CurrentElem.name==0){
                        CurrentElem.className = "selected";
                     }
                     else{
                     CurrentElem.className = "l2selected";
                     }
                 }
             }                     
         }