//$Id: rogueDevice.js,v 1.8 2011/07/15 04:45:36 aruljose Exp $
function validateRogue()
{
    return false;
}
function validateRogueAlertConfig()
{
             document.hostForm.actionFrom.value = "sendAlerts";
             var toAddress = document.hostForm.toAdd.value;
             var soundOption = document.hostForm.selectSound.checked; 
             var soundFile = document.hostForm.soundFile.value; 
             var mailOption = document.hostForm.emailID.checked; 
              
              document.hostForm.soundOption.value = soundOption;
              document.hostForm.mailOption.value = mailOption;
                if(mailOption == true)
                {
                    var rogueDevice = document.hostForm.rogueDevice.checked;
                    document.hostForm.rogueDevice.value = rogueDevice;
                     
                    var expiredDevice = document.hostForm.expiredDevice.checked;
                    document.hostForm.expiredDevice.value = expiredDevice;
                     document.hostForm.toAddress.value = toAddress;
                    if(!rogueDevice && !expiredDevice)
                    {
                        alert("Please choose aleast one option to send Email ")
                        return false;
                    }else
                    {
                        toAdd1 = toAddress.split(",");
                        for(var i = 0 ; i< toAdd1.length ; i++)
                        {
                            if(!validateEmail(toAdd1[i]))
                            {
                                return false;
                            }
                        }
                     }   
             
             }
             return true;
             
             
}
function showInfo( val)
{
    
    var emailchaneIDElem = document.getElementById(val);
   if(emailchaneIDElem.style.visibility =="hidden") {
       emailchaneIDElem.style.visibility="visible";
      
   } else {
       emailchaneIDElem.style.visibility="hidden";
   }
   
}

function showMailOption(val, currentTimeHour , currentTimeMin)
{
    
    document.hostForm.actionFrom.value=val;
    var emailchaneIDElem = document.getElementById('emailchaneID');
   if(emailchaneIDElem.style.visibility =="hidden") {
       emailchaneIDElem.style.visibility="visible";
       document.hostForm.actionFrom.value="getMailID";
      var url = '/rogueDeviceAlertConfig.do?actionFrom=getMailID&adminStatus=SCHEDULE_TYPE=Minutely&MINUTELY_START_TIME_HOUR='+currentTimeMin+'&MINUTELY_START_TIME_MIN='+currentTimeMin+'&MINUTELY_INTERVAL=5';
      persist(url);
   } else {
       emailchaneIDElem.style.visibility="hidden";
   }
   
}
function updateRogueConfigValue()
{
    document.hostForm.actionFrom.value = "getMailID";
     var url = '/rogueDeviceAlertConfig.do?actionFrom=getMailID';
     persist(url);
}

function enableHintMessage()
{
    document.hostForm.actionFrom.value="enbleHintMessage";       
    var url = '/rogueDeviceAlertConfig.do?actionFrom=enbleHintMessage&uid='+new Date().getTime();
    persist(url);
    
}

function closeHintMessage()
{
   // document.hostForm.actionFrom.value="hideHintMessage";
    var url = '/rogueDeviceAlertConfig.do?actionFrom=hideHintMessage&uid='+new Date().getTime();
    document.getElementById("inputTable").className='hide';
    document.getElementById("showLink").className='';
    persist(url);
    
}
function hintMessageOption()
{
    document.hostForm.actionFrom.value="hintMessageOption";
    var url = '/rogueDeviceAlertConfig.do?actionFrom=hintMessageOption&uid='+new Date().getTime();
    persist(url);
    
}
function setButtonType(value ,currentTimeHour , currentTimeMin)
{
             document.hostForm.actionFrom.value = value;
             var toAddress = document.hostForm.toAdd.value;
             var soundOption = document.hostForm.selectSound.checked; 
             var soundFile = document.hostForm.soundFile.value; 
             var mailOption = document.hostForm.emailID.checked; 
             if(value == "sendAlerts")
             {
                if(mailOption == true)
                {
                    var rogueDevice = document.hostForm.rogueDevice.checked;
                    
                    var expiredDevice = document.hostForm.expiredDevice.checked;
                    if(!rogueDevice && !expiredDevice)
                    {
                        alert("Please choose aleast one option to send Email ")
                        return false;
                    }else
                    {
                        toAdd1 = toAddress.split(",");
                        for(var i = 0 ; i< toAdd1.length ; i++)
                        {
                            if(!validateEmail(toAdd1[i]))
                            {
                                return false;
                            }
                        }
                     }   
                }
                var url = '/rogueDeviceAlertConfig.do?&methodToCall=execute&adminStatus=Enabled&SCHEDULE_TYPE=Minutely&MINUTELY_START_TIME_HOUR='+currentTimeHour+'&MINUTELY_START_TIME_MIN='+currentTimeMin+'&MINUTELY_INTERVAL=5&actionFrom='+value+'&toAddress='+toAddress+'&soundOption='+soundOption+'&soundFile='+soundFile+'&mailOption='+mailOption+'&rogueDevice='+rogueDevice+'&expiredDevice='+expiredDevice;
                //alert(url);

                persist(url);
                
             }else if(value == "stopAlerts")
             {
                    var url = '/rogueDeviceAlertConfig.do?&methodToCall=execute&adminStatus=Disabled&SCHEDULE_TYPE=Minutely&MINUTELY_START_TIME_HOUR='+currentTimeHour+'&MINUTELY_START_TIME_MIN='+currentTimeMin+'&MINUTELY_INTERVAL=5&actionFrom='+value+'&toAddress='+toAddress+'&soundOption='+soundOption+'&soundFile='+soundFile+'&mailOption='+mailOption+'&rogueDevice='+rogueDevice+'&expiredDevice='+expiredDevice;
                    persist(url);
             }
}

function persist(url)
{

        if (window.XMLHttpRequest)
        {
                req = new XMLHttpRequest();
                req.onreadystatechange = processReqChangeDay;
                req.open("GET", url, true);
                req.send(null);
        }

        else if (window.ActiveXObject)
        {
                isIE = true;
                req = new ActiveXObject("Microsoft.XMLHTTP");
                if (req)
                {
                        req.onreadystatechange = processReqChangeDay;
                        req.open("GET", url, true);
                        req.send();
                }
        }
}
var req;
function processReqChangeDay()
{
    
       
        if (req.readyState == 4) 
	{
            
		if (req.status == 200) 
                {
                    var actionFrom = trim(document.hostForm.actionFrom.value);
                   //alert(req.responseText);
                    if(actionFrom == "getMailID")
                    {
                        
                        var x = req.responseXML.getElementsByTagName('MailSettings');;
                        var resolveDNSValue = trim(x[0].getAttribute("toAddress"));
                        
                        document.hostForm.toAdd.value = resolveDNSValue;
                        document.getElementById("toAdd").value=resolveDNSValue;
                        if(x[0].getAttribute("SoundOption") == "1")
                        {
                            document.hostForm.selectSound.checked = true;
                        }else
                        {
                            document.hostForm.selectSound.checked = false;
                        }
                        if(x[0].getAttribute("EmailOption") == "1")
                        {
                            document.hostForm.emailID.checked = true;
                           document.hostForm.toAdd.disabled=false;
                        }else
                        {
                            document.hostForm.emailID.checked = false;
                            document.hostForm.toAdd.disabled=true;
                        }

                        if(x[0].getAttribute("ValidExpiredSystem") == "1")
                        {
                            document.hostForm.expiredDevice.checked = true;
                        }else
                        {
                            document.hostForm.expiredDevice.checked = false;
                        }

                        if(x[0].getAttribute("rogueDeviceMail") == "1")
                        {
                            document.hostForm.rogueDevice.checked = true;
                        }else
                        {
                            document.hostForm.rogueDevice.checked = false;
                        }                        
                        
                        
                    }else if(actionFrom == "sendAlerts")
                    {
                        showMailOption("cancel" );
                        			
                    }
                    else if(actionFrom == "stopAlerts")
                    {
                        showMailOption("stopAlerts");

                    }else if(actionFrom == "enbleHintMessage")
                    {
                        document.getElementById("inputTable").className='';
                        document.getElementById("showLink").className='hide';
                       
                    }else if(actionFrom == "hideHintMessage")
                    {
                        document.getElementById("inputTable").className='hide';
                        document.getElementById("showLink").className='';
                        
                    }else if(actionFrom == "hintMessageOption")
                    {
                        if(trim(req.responseText) == "true" )
                        {
                            document.getElementById("inputTable").className='hide';
                            document.getElementById("showLink").className='';
                        }else
                        {
                           document.getElementById("inputTable").className='';
                           document.getElementById("showLink").className='hide';
                        }
                        
                       
                    }

                 }       
		else
                {  
			alert("There was a problem retrieving the XML data:\n" +req.statusText);
		}
	}
}
function setAction(action)
{
    document.importForm.actionFrom.value=action;
}
var selectedViewName = "rogueVCC.cc?";
function showInputFeildRogue(choice)
{
    if(choice == 'validRogueDevices'){
            window.TAB_VIEW_NAME='TempValidSystems.cc?';
            renderView("TempValidSystems.cc?viewname=TempValidSystems")
            //refreshSubView("TempValidSystems",true,new AjaxOptions({USEXMLHTTPFORREFRESH:true,NAVIGABLE:false}));       
            ShowTab('validRogueDevices');
            HideTab('rogueDevices');
            HideTab('trustDevices');
            HideTab('markedRogueDevices');

            
    }else if(choice == 'trustDevices')
    {
            window.TAB_VIEW_NAME='TrustView.cc?';
            renderView("TrustView.cc?viewname=TrustView")
            //refreshSubView("TrustView",true,new AjaxOptions({USEXMLHTTPFORREFRESH:true,NAVIGABLE:false}));    
            ShowTab('trustDevices');
            HideTab('validRogueDevices');
            HideTab('rogueDevices');
            HideTab('markedRogueDevices');

    }else if(choice == 'markedRogueDevices')
    {
            window.TAB_VIEW_NAME='MarkedRogueView.cc?';
            renderView("MarkedRogueView.cc?viewname=MarkedRogueView")
            //refreshSubView("MarkedRogueView",true,new AjaxOptions({USEXMLHTTPFORREFRESH:true,NAVIGABLE:false}));    
            ShowTab('markedRogueDevices');
            HideTab('trustDevices');
            HideTab('validRogueDevices');
            HideTab('rogueDevices');
            

    }else
    {
            window.TAB_VIEW_NAME='rogueVCC.cc?';
            renderView("rogueVCC.cc?viewname=rogueVCC")
            //refreshSubView("rogueVCC",true,new AjaxOptions({USEXMLHTTPFORREFRESH:true,NAVIGABLE:false}));    
            ShowTab('rogueDevices');
            HideTab('validRogueDevices');
            HideTab('trustDevices');
            HideTab('markedRogueDevices');
    }
    selectedViewName = window.TAB_VIEW_NAME;
    
}
function renderView(viewName)
{
    var localVar = "tt";
    var myAnonFunction = function(response,reqOptions)
    {        
       document.getElementById(localVar).innerHTML = response.getOnlyHtml();
    };
    AjaxAPI.sendRequest({URL:viewName,ONSUCCESSFUNC:myAnonFunction});

}
function renderSubnetView(selectedSubnet,deviceType) {
    viewName = selectedViewName+"selectedSubnet=" + selectedSubnet+"&viewname="+deviceType;
    var url = "/commonaction.do?actionFrom=rogueSubnetFilter&getKey=persistSubnet&selectedValue="+selectedSubnet+"&selectedToolID=ROGUE_RESOLVER";
    var myAnonFunction = function(response,reqOptions)
    {
    }
    AjaxAPI.sendRequest({URL:url,ONSUCCESSFUNC:myAnonFunction});
    renderView(viewName);
    
}
function ShowTab(divId)
{
	var id = document.getElementById(divId);
	id.style.display = "block";
}
function HideTab(divId){
	var id = document.getElementById(divId);
	id.style.display = "none";
}

var moving=false
var IE=document.all
function Dragnow(e,id)
{
    divID = id;
    curposx=(IE ? event.clientX : e.pageX) // Cursorx Start Position
    curposy=(IE ? event.clientY : e.pageY) // Cursory Start Position
    objectx=parseInt(document.getElementById(id).style.left) // Objectx Start Position
    objecty=parseInt(document.getElementById(id).style.top) // Objecty Start Position
    moving=true
    document.onmousemove=Moveto
}
var divID ;
function Moveto(e )
{
    xx=(IE ? event.clientX : e.pageX)
    yy=(IE ? event.clientY : e.pageY)
    if (moving==true)
    {
        document.getElementById(divID).style.left = xx-(curposx-objectx)
        document.getElementById(divID).style.top=yy-(curposy-objecty)
        return false
    }
}
function refreshRogueSummaryView()
{
    refreshSubView("RogueSummaryView",true,new AjaxOptions({USEXMLHTTPFORREFRESH:true,NAVIGABLE:false}));    
}
function showUnknownDeviceDetails(mac) {
    showURLInDialog('/lan/UnknownRogueDevice.jsp?mac='+mac,'position=relative,modal=yes,width=520,scrollbars=no,title=Unknown'); //No I18N

}

