﻿// JScript File

        /////menu click events://////
 var g;
	    if ((ie) && (!opera)) 
	    {
	        var svgGraph = document.getElementById('svgGraph');
	        svgGraph.style.display= "none";
            var vmlGraph = document.getElementById('GraphDIV');
            vmlGraph.style.display = "";
            g=new Graph("graph");
	    }
	    else
	    {
	        var svgGraph = document.getElementById('svgGraph');
	        svgGraph.style.display= "";
            var vmlGraph = document.getElementById('GraphDIV');
            vmlGraph.style.display = "none";
            g=new SVG_Graph("graph");
           
	    }

function ClickButton1(oControl,obj,e)
{
    if(obj==oControl.Items[0])
    {
        try
        {
            ExpandBot();
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(obj==oControl.Items[1])
    {
        try
        {
            AddRule();
            ss.n_maxValue+=1;
            ss.S0Oc=ss.n_pathLength/(ss.n_maxValue-ss.n_minValue);
            ss.f_setValue(ss.n_value);
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(obj==oControl.Items[2])
    {
        try
        {
            RemoveNode();
            ProbabilityMax();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(obj==oControl.Items[3])
    {
        try
        {
            ImproveLayout();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
}

function ClickButton2(oControl,obj,e)
{
    if(obj==oControl.Items[0])
    {
        try
        {
            var webPanel = igpnl_getPanelById("MyMaster_DemoPageOutput_WebPanel7");
            if(webPanel.getVisible())
            {
                webPanel.setVisible(false);
            }
            else
            {
                RuleListShow(); 
                webPanel.setVisible(true);
            }
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(obj==oControl.Items[1])
    {
        try
        {
            PrintPage();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(obj==oControl.Items[2])
    {
        alert("Export Graph");
    }
    else if(obj==oControl.Items[3])
    {
        try
        {
            AllRulesShow();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    
}
function MenuClick(menu,id)
{    
    if(id=="MyMasterDemoPageOutputUltraWebMenu1_1_1")
    {
        try
        {
            ExpandBot();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_1_2")
    {
        try
        {
            AddRule();
            ss.n_maxValue+=1;
            ss.S0Oc=ss.n_pathLength/(ss.n_maxValue-ss.n_minValue);
            ss.f_setValue(ss.n_value);
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_1_4")
    {
        try
        {
            RemoveNode();
            ProbabilityMax();
        }
        catch(e)
        {
            alert(e.message);
        }
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_1_5")
    {
        try
        {
            ImproveLayout();
        }
        catch(e)
        {
            alert(e.message);
        }
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_2")
    {
        try
        {
            var webPanel = igpnl_getPanelById("MyMaster_DemoPageOutput_WebPanel7");
            if(!webPanel.getVisible())
            {
                webPanel.setVisible(true);
                RuleListShow();
            }
            else
            {
                webPanel.setVisible(false);
            }
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_3")
    {
        PrintPage();
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_4_1")
    {
        try
        {
            AllRulesShow();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_5_1")
    {
        
    }
    else if(id=="MyMasterDemoPageOutputUltraWebMenu1_5_2")
    {
        configWindow = window.open("ConfigSetup.aspx",null,"height=300,width=400,status=no,menubar=no,location=no,titlebar=no,directories=no");
        configWindow.focus();
        window.setTimeout("CheckConfig()",100);
    }
}
var configWindow=null;
var timer=null;

function CheckConfig()
{
    var ConfigTag = document.getElementById("MyMaster_DemoPageOutput_configchange").value;
    if(configWindow.closed)
    {
        window.clearTimeout(timer);
        if(ConfigTag=="1")
        {
            document.getElementById("MyMaster_DemoPageOutput_configchange").value="0";
            document.getElementById("MyMaster_DemoPageOutput_ReadRulesButton").click();
        }
    }
    else
    {
        timer = window.setTimeout("CheckConfig()",50);
    }
}

function NodeContextClick(menu,id)
{
    if(id=="MyMasterDemoPageOutputNodeContextMenu_7")
    {
        try
        {
            var webPanel = igpnl_getPanelById("MyMaster_DemoPageOutput_WebPanel7");
            if(webPanel.getVisible())
            {
                webPanel.setVisible(false);
            }
            else
            {
                RuleListShow(); 
                webPanel.setVisible(true);
            }
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputNodeContextMenu_5")
    {
        try
        {
            ImproveLayout();
        }
        catch(e)
        {
            alert(e.message);
        }
    }
    else if(id=="MyMasterDemoPageOutputNodeContextMenu_8")
    { 
        try
        {
            AllRulesShow();
        }
        catch(ex)
        {
            alert(ex.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputNodeContextMenu_4")
    {
        try
        {
            RemoveNode();
            ProbabilityMax();
        }
        catch(e)
        {
            alert(e.message);
        }  
    }
    else if(id=="MyMasterDemoPageOutputNodeContextMenu_1")
    {
        try
        {
            ExpandBot();
        }
        catch(e)
        {
            alert(e.message);
        }
    }
    else if(id=="MyMasterDemoPageOutputNodeContextMenu_2")
    {
        try
        {
            AddRule();
            ss.n_maxValue+=1;
            ss.S0Oc=ss.n_pathLength/(ss.n_maxValue-ss.n_minValue);
            ss.f_setValue(ss.n_value);
        }
        catch(e)
        {
            alert(e.message);
        }
    }
}

function BodyContextClick(menu,id)
{
    if(id=="MyMasterDemoPageOutputBodyContextMenu_1")
    {
        try
        {
            var webPanel = igpnl_getPanelById("MyMaster_DemoPageOutput_WebPanel7");
            if(!webPanel.getVisible())
            {
                webPanel.setVisible(true);
                RuleListShow();
            }
            else
            {
                webPanel.setVisible(false);
            }
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputBodyContextMenu_2")
    {
        try
        {
            AllRulesShow();
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputBodyContextMenu_3")
    {
        try
        {
            ImproveLayout();
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputBodyContextMenu_5")
    {
        try
        {
            window.location.reload(false);
        }
        catch(e)
        {
            alert(e.message);
        } 
    }
    else if(id=="MyMasterDemoPageOutputBodyContextMenu_6")
    {
        try
        {
            PrintPage();
        }
        catch(e)
        {
            alert(e.message);
        }
    }
    else if(id=="MyMasterDemoPageOutputBodyContextMenu_7")
    {
    }
}


             ///////////// functions  //////////////
             function ClosePanel(oWebPanel, oEvent)
             {
                //alert(oWebPanel.getClientID());
                oEvent.cancel=true;
                if(oWebPanel.getVisible())
                {
                     oWebPanel.setVisible(false);
                }
             }
             
        ////////////////////////////////////////////////////////
        function AddRule()
        {
            for(var key in g.nodes)
            {
                if(g.nodes[key].isSelected)
                {
                    g.RuleListAdd(g.nodes[key]);
                    break;
                }
            }
        }
        
      
//////////////////////////////////////////////////
       
        function StopMoving()
        {
            clearTimeout(moving);
            onMove=false;
        }
            var moving=null;
            var mover=document.getElementById("MoveZone");
            moveCenterX=28;
            moveCenterY=28;
        
            var cX,cY=0;
            var onMove=false;
        function Moving(evt)
        {
            try
            {
                var graph=document.getElementById(g.groupid);
                evt=evt?evt:(window.event?window.event:null);
                if(evt)
                {
                    cX=evt.offsetX;
                    cY=evt.offsetY;
                }
                // document.body.scrollTop=0;
                onMove=true;
                
                var dL = (cX-moveCenterX)/8;
                var dU = (cY-moveCenterY)/8;
                if(dL > 1 || dL < -1)
                g.GraphMoveL(dL);
                if(dU > 1 || dU < -1)
                g.GraphMoveUp(dU);
                
                if(dL <1 && dL>-1 && dU<1 && dU>-1)
                {
                    g.SetGraphPos();
                    return;
                }
                moving = setTimeout("Moving()",10);
             }
             catch(e)
             {
                alert(e.message);
             }
        }
        

        function ChangeMoving()
        {
            if(onMove)
            {
                StopMoving();
                Moving();
            }
        }
/////////////////////////////////////////////////
        function ProbabilityMax()
        {
            var max=0;
            var eRules={};
            for(var key in g.Rules)
            {
                var rules=g.Rules[key];
                for(var i in rules)
                {   
                    var rId=rules[i].FromText+rules[i].ToText;
                    if(!eRules[rId])
                    {
                        max++;
                        eRules[rId]=rules[i];
                    }
                }
            }
            if(max>1)
            {
                ss.n_maxValue = max-1;
                ss.S0Oc=ss.n_pathLength/(ss.n_maxValue-ss.n_minValue);
                ss.f_setValue(ss.n_value);
            }
            else
            {
                ss.n_maxValue=0;
                ss.S0Oc=ss.n_pathLength/(1-ss.n_minValue);
                ss.f_setValue(ss.n_value);
            };
        }
/////////////////////////////////////////////////
        function PrintPage()
        {
            window.print();
        }
            
        document.oncontextmenu=MouseRightClick;
        function MouseRightClick(evt)
        {  
            evt=evt?evt:(window.event?window.event:null);
            var a = evt.srcElement ? evt.srcElement : evt.target;
            var des=document.getElementById("descriptionM");
            
            if(a.tagName.toLowerCase()=="input")
            { 
                //igmenu_showMenu('ctl00mainContentPlaceHolderTextContextMenu', evt);
            }
            else
            { 
           
                if(des.style.display=="none")
                { 
                    if(a.parentNode.tagName=="oval")
                    {
                        igmenu_showMenu('MyMasterDemoPageOutputNodeContextMenu', evt);
                    }
                    else
                    { 
                        igmenu_showMenu('MyMasterDemoPageOutputBodyContextMenu', evt);
                    } 
                }
            }
           
            return false;
        }
        
        document.onclick=ClickMouse;
        function ClickMouse()
        {
        }
        

var keyword = null;
function InputOnFocus(oMain,obj,e)
{
    keyword =oMain.text;
    if(keyword == "Input your keyword here!")
    {
        oMain.setText("");
    }
    else
    {
        oMain.select();
    }
}

function InputOnBlur(oMain,obj,e)
{
    if(obj == "")
    {
       // oMain.setText(keyword);
      //  oMain.select();
    }
    else
    {
    }
}

function ExpandIt()
{
    if( getOs() == "1")
      document.getElementById("MyMaster_DemoPageOutput_NavPanel").style.height = "85px"
    
}
   function ExpandIt2()
{ 
    if( getOs() == "1")
       document.getElementById("MyMaster_DemoPageOutput_ControlPanel").style.height = "125px";
       
   } 
    function getOs()
    {
       if(navigator.userAgent.indexOf("MSIE")>0)return 1;
       if(isFirefox=navigator.userAgent.indexOf("Firefox")>0)return 2;
       if(isSafari=navigator.userAgent.indexOf("Safari")>0)return 3;  
       if(isCamino=navigator.userAgent.indexOf("Camino")>0)return 4;
       if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0)return 5;
       return 0;
    }    

