﻿
// this section is used for dropdown menu creating ,appearing and disappearing
//---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
var menu1 = new Array()
menu1[0] = '<a onMouseOver="SelectedServiceSubPages()" onMouseOut="ServicesNotSelected()" href="ServicesAppDevelopment.aspx">Application Development</a>'
menu1[1] = '<a onMouseOver="SelectedServiceSubPages()" onMouseOut="ServicesNotSelected()" href="ServicesAppManagement.aspx">Application Management</a>'
menu1[2] = '<a onMouseOver="SelectedServiceSubPages()" onMouseOut="ServicesNotSelected()" href="ServicesNuRim.aspx">NuRim</a>'
menu1[3] = '<a onMouseOver="SelectedServiceSubPages()" onMouseOut="ServicesNotSelected()" href="ServicesTestingServices.aspx">Testing Services</a>'
menu1[4] = '<a onMouseOver="SelectedServiceSubPages()" onMouseOut="ServicesNotSelected()" href="ServicesStrategicConsulting.aspx">Strategic Consulting</a>'

var menu2 = new Array()
menu2[0] = '<a onMouseOver="SelectedNurimSubPages()" onMouseOut="NurimNotSelected()" href="NurimDbManagement.aspx">Database Management<br/>and Support Services</a>'
menu2[1] = '<a onMouseOver="SelectedNurimSubPages()" onMouseOut="NurimNotSelected()" href="NurimAppMaintenanceSupport.aspx">Application Management<br/>and Support Services</a>'
menu2[2] = '<a onMouseOver="SelectedNurimSubPages()" onMouseOut="NurimNotSelected()" href="NurimInfraMonitoringAndSupport.aspx">Infrastructure Management<br/>and Support Services</a>'
menu2[3] = '<a onMouseOver="SelectedNurimSubPages()" onMouseOut="NurimNotSelected()" href="NurimQualityAssurance.aspx">Testing and Support<br/>Services</a>'

var menu3 = new Array()
menu3[0] = '<a onMouseOver="SelectedCorporateSubPages()" onMouseOut="CorporateNotSelected()" href="CorporateAboutUs.aspx">About Us&nbsp;&nbsp;&nbsp;</a>'
menu3[1] = '<a onMouseOver="SelectedCorporateSubPages()" onMouseOut="CorporateNotSelected()" href="CorporateTheTeam.aspx">Team&nbsp;&nbsp;&nbsp;</a>'
menu3[2] = '<a onMouseOver="SelectedCorporateSubPages()" onMouseOut="CorporateNotSelected()" href="NewsClipping.aspx">News&nbsp;&nbsp;&nbsp;</a>'

var menu4 = new Array()
menu4[0] = '<a onMouseOver="SelectedCareerSubPages()" onMouseOut="CareerNotSelected()" href="CareersWorkingInNuware.aspx">Working in NuWare&nbsp;&nbsp</a>'
menu4[1] = '<a onMouseOver="SelectedCareerSubPages()" onMouseOut="CareerNotSelected()" href="CareersJobOpenings.aspx">Job Openings&nbsp;&nbsp</a>'


var menuwidth = '165px' //default menu width
var menubgcolor = 'white'  //menu bgcolor
var disappeardelay = 1  //menu disappear speed onMouseout (in miliseconds)
var hidemenu_onclick = "yes" //hide menu when user clicks within menu?

/////No further editting needed

var ie4 = document.all
var ns6 = document.getElementById && !document.all

if (ie4 || ns6)
  document.write('<div id="dropmenudiv" style="filter:alpha(opacity=100);-moz-opacity:1;opacity:1;visibility:hidden;width:' + menuwidth + ';background-color:' + menubgcolor + '" onMouseover="clearhidemenu()" onMouseout="dynamichide(event)"></div>')

function getposOffset(what, offsettype) {
    var totaloffset = (offsettype == "left") ? what.offsetLeft : what.offsetTop;
    var parentEl = what.offsetParent;
    while (parentEl != null) {
        totaloffset = (offsettype == "left") ? totaloffset + parentEl.offsetLeft : totaloffset + parentEl.offsetTop;
        parentEl = parentEl.offsetParent;
    }
    return totaloffset;
}


function showhide(obj, e, visible, hidden, menuwidth) {
    if (ie4 || ns6)
        dropmenuobj.style.left = dropmenuobj.style.top = "-500px"
    if (menuwidth != "") {
        dropmenuobj.widthobj = dropmenuobj.style
        dropmenuobj.widthobj.width = menuwidth
    }
    if (e.type == "click" && obj.visibility == hidden || e.type == "mouseover")
        obj.visibility = visible
    else if (e.type == "click")
        obj.visibility = hidden
}

function iecompattest() {
    return (document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body
}

function clearbrowseredge(obj, whichedge) {
    var edgeoffset = 0
    if (whichedge == "rightedge") {
        var windowedge = ie4 && !window.opera ? iecompattest().scrollLeft + iecompattest().clientWidth - 15 : window.pageXOffset + window.innerWidth - 15
        dropmenuobj.contentmeasure = dropmenuobj.offsetWidth
        if (windowedge - dropmenuobj.x < dropmenuobj.contentmeasure)
            edgeoffset = dropmenuobj.contentmeasure - obj.offsetWidth
    }
    else {
        var topedge = ie4 && !window.opera ? iecompattest().scrollTop : window.pageYOffset
        var windowedge = ie4 && !window.opera ? iecompattest().scrollTop + iecompattest().clientHeight - 15 : window.pageYOffset + window.innerHeight - 18
        dropmenuobj.contentmeasure = dropmenuobj.offsetHeight
        if (windowedge - dropmenuobj.y < dropmenuobj.contentmeasure) { //move up?
            edgeoffset = dropmenuobj.contentmeasure + obj.offsetHeight
            if ((dropmenuobj.y - topedge) < dropmenuobj.contentmeasure) //up no good either?
                edgeoffset = dropmenuobj.y + obj.offsetHeight - topedge
        }
    }
    return edgeoffset
}

function populatemenu(what) {
    if (ie4 || ns6)
        dropmenuobj.innerHTML = what.join("")
}


function dropdownmenu(obj, e, menucontents, menuwidth) {
    if (window.event) event.cancelBubble = true
    else if (e.stopPropagation) e.stopPropagation()
    clearhidemenu()
    dropmenuobj = document.getElementById ? document.getElementById("dropmenudiv") : dropmenudiv
    populatemenu(menucontents)

    if (ie4 || ns6) {
        showhide(dropmenuobj.style, e, "visible", "hidden", menuwidth)
        dropmenuobj.x = getposOffset(obj, "left")
        dropmenuobj.y = getposOffset(obj, "top")
        dropmenuobj.style.left = dropmenuobj.x - clearbrowseredge(obj, "rightedge") + "px"
        dropmenuobj.style.top = dropmenuobj.y - clearbrowseredge(obj, "bottomedge") + obj.offsetHeight + "px"
    }

    return clickreturnvalue()
}

function clickreturnvalue() {
    if (ie4 || ns6) return false
    else return true
}

function contains_ns6(a, b) {
    while (b.parentNode)
        if ((b = b.parentNode) == a)
        return true;
    return false;
}

function dynamichide(e) {
    if (ie4 && !dropmenuobj.contains(e.toElement))
        delayhidemenu()
    else if (ns6 && e.currentTarget != e.relatedTarget && !contains_ns6(e.currentTarget, e.relatedTarget))
        delayhidemenu()
}

function hidemenu(e) {
    if (typeof dropmenuobj != "undefined") {
        if (ie4 || ns6)
            dropmenuobj.style.visibility = "hidden"
    }
}

function delayhidemenu() {
    if (ie4 || ns6)
        delayhide = setTimeout("hidemenu()", disappeardelay)
}

function clearhidemenu() {
    if (typeof delayhide != "undefined")
        clearTimeout(delayhide)
}

if (hidemenu_onclick == "yes")
    document.onclick = hidemenu
//------------------------------------------------------------------------------------------------------------------------------




//this section contains javascript code for changing image style on MouseOver and MouseOut
//--------------------------------------------------------------------------------------------------------------------------
function MM_preloadImages() { //v3.0
    var d = document; if (d.images) {
        if (!d.MM_p) d.MM_p = new Array();
        var i, j = d.MM_p.length, a = MM_preloadImages.arguments; for (i = 0; i < a.length; i++)
            if (a[i].indexOf("#") != 0) { d.MM_p[j] = new Image; d.MM_p[j++].src = a[i]; } 
    }
}

function MM_swapImgRestore() { //v3.0

    var i, x, a = document.MM_sr; for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}

function MM_findObj(n, d) { //v4.01
    var p, i, x; if (!d) d = document; if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n]; for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) x = d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
    var i, j = 0, x, a = MM_swapImage.arguments; document.MM_sr = new Array; for (i = 0; i < (a.length - 2); i += 3)
        if ((x = MM_findObj(a[i])) != null) { document.MM_sr[j++] = x; if (!x.oSrc) x.oSrc = x.src; x.src = a[i + 2]; }
    }
    //--------------------------------------------------------------------------------------------------------------------------



    // this section contains javascript code  that returns the current IST , UST and GMT 
    //------------------------------------------------------------------------------------------------------------------------

    function getCurrentUSTUKTIST() {
        
        // this section shows the indian standard time
        var dte = timeServer;
        dte.setTime(dte.getTime() +(dte.getTimezoneOffset() + 330) * 60 * 1000);
        var text = document.getElementById("spnIndiaTime");

        var time = dte.toLocaleTimeString();
        var time2 = dte.toTimeString().split(':');
        var time = "<b>" + time2[0] + ":" + time2[1] + " " + "</b>";
        text.innerHTML = time;

        //this section displays the GMT time

        var dte2 = timeServer;
        var text2 = document.getElementById("spnGMTTime");
        //var time2 = dte2.getUTCHours()+1 ;// instead of hard coding used function checkDayLightSaving
        var time2 = dte2.getUTCHours() + (isDayLightSavingObserverd()?1:0);//UK time is (GMT+1) if DST is observerd else equal to GMT
        var time3 = dte2.getUTCMinutes();
            
        time3 = ( time3 < 10 ? "0" : "" ) + time3;
        
        text2.innerHTML = "<b>" + time2 + ":" + time3 + " " + "</b>";


        var dte3 = timeServer;
        var text3 = document.getElementById("spnUSTime");

        //var time4 = dte2.getUTCHours() - 4// instead of hard coding used function checkDayLightSaving
        var time4 = dte2.getUTCHours() - (isDayLightSavingObserverd()?4:5);//UK time is (GMT-4) if DST is observerd else equal to (GMT-5)
        var time5 = dte2.getUTCMinutes();
        
        time5 = ( time5 < 10 ? "0" : "" ) + time5;
        
        text3.innerHTML = "<b>" + time4 + ":" + time5 + " " + "</b>";
    }

    //checks whether daylight saving is observed or not.Returns true if observer else false.
    function isDayLightSavingObserverd(){
        var today = timeServer;
        var yr = today.getFullYear();
        var dst_start = new Date("March 14, " + yr + " 02:00:00"); // 2nd Sunday in March can't occur after the 14th 
        var dst_end = new Date("November 07, " + yr + " 02:00:00"); // 1st Sunday in November can't occur after the 7th
        var day = dst_start.getDay(); // day of week of 14th
        dst_start.setDate(14 - day); // Calculate 2nd Sunday in March of this year
        day = dst_end.getDay(); // day of the week of 7th
        dst_end.setDate(7 - day); // Calculate first Sunday in November of this year
        if (today >= dst_start && today < dst_end){ //does today fall inside of DST period?
            return true; //if so then return true
        }
        else{
            return false; //if not then return false
        } 
    }

//checks whether daylight saving is observed or not.Returns true if observer else false.
//    function isDayLightSavingObserverd() {
//       var rightNow = new Date();
//       
//       var date1 = new Date(rightNow.getFullYear(), 0, 1, 0, 0, 0, 0);
//       var date2 = new Date(rightNow.getFullYear(), 6, 1, 0, 0, 0, 0);
//       
//       var temp = date1.toGMTString();
//       var date3 = new Date(temp.substring(0, temp.lastIndexOf(" ")-1));
//       
//       var temp = date2.toGMTString();
//       var date4 = new Date(temp.substring(0, temp.lastIndexOf(" ")-1));
//       
//       var hoursDiffStdTime = (date1 - date3) / (1000 * 60 * 60);
//       var hoursDiffDaylightTime = (date2 - date4) / (1000 * 60 * 60);
//       
//       if (hoursDiffDaylightTime == hoursDiffStdTime)
//          return false;
//       else 
//          return true;
//    }

    
    //-----------------------------------------------------------------------------------------------------------------------

    // On sub page selection for amy main page the main image should be highlighted, that logic is implemented here
   //-------------------------------------------------------------------------------------------------------------------------
   
    function SelectedServiceSubPages()
    {
        var page = "Services";
        var img = document.getElementById("imgServices");
        img.src = "images/bu_services_on.gif";
        getCurrentUSTUKTIST();
    }

    function ServicesNotSelected() {


        if (pageName != "Services" && pageName != "ServicesAppDevelopment" && pageName != "ServicesAppManagement" && pageName != "ServicesAppDevelopment"
       && pageName != "ServicesNuRim" && pageName != "ServicesTestingServices" && pageName != "ServicesStrategicConsulting") {
            var img = document.getElementById("imgServices");
            img.src = "images/bu_services_off.gif";
        }
    }


    function SelectedNurimSubPages() {
        var page = "Nurim";
        var img = document.getElementById("imgNurim");
        img.src = "images/bu_nurim_on.gif";
        getCurrentUSTUKTIST();
    }
    
    function NurimNotSelected() {
        if (pageName!= "Nurim" && pageName!= "NurimDbManagement" && pageName!= "NurimAppMaintenanceSupport" &&
            pageName != "NurimQualityAssurance" && pageName!= "NurimInfraMonitoringAndSupport") {
            var img = document.getElementById("imgNurim");
            img.src = "images/bu_nurim_off.gif";
        }
    }

    function SelectedClientSubpages() {
        var page = "Clients";
        var img = document.getElementById("imgClient");
        img.src = "images/bu_client_on.gif";
        getCurrentUSTUKTIST();
    }
   
   
    function SelectedCorporateSubPages() {
        var page = "Corp";
        var img = document.getElementById("imgCorporate");
        img.src = "images/bu_corporate_on.gif";
        getCurrentUSTUKTIST();
    }


    function CorporateNotSelected() {

        if (pageName!= "Corp") {
            var img = document.getElementById("imgCorporate");
            img.src = "images/bu_corporate_off.gif";
        }
    }

    function SelectedCareerSubPages() {
        var page = "Career";
        var img = document.getElementById("imgCareers");
        img.src = "images/bu_careers_on.gif";
        getCurrentUSTUKTIST();
    }
    function CareerNotSelected() {

        if (pageName!= "Career") {
            var img = document.getElementById("imgCareers");
            img.src = "images/bu_careers_off.gif";
        }
    }
    
    function SelectedContactSubpages() {
        var page = "Contact";
        var img = document.getElementById("imgContact");
        img.src = "images/bu_contact_on.gif";
        getCurrentUSTUKTIST();
    }
    function ContactNotSelected() {
        if (pageName!= "Contact") {
            var img = document.getElementById("imgContact");
            img.src = "images/bu_contact_off.gif";
        }
    }

    //-----------------------------------------------------------------------------------------------------
    
    //===============Events for marquee control=================////
    function stopscroll()
    {
        var scroller=document.getElementById("scroller");
        scroller.stop();
    }
    
    function startscroll()
    {
        var scroller=document.getElementById("scroller");
        scroller.start();
    }
    //=============================================================////
    
   
   
    //===================Form Validation=======================///
    
    function Emailvalidation()
    {
//        var emailPat = /^(\".*\"|[A-Za-z]\w*)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z]\w*(\.[A-Za-z]\w*)+)$/;
//        var emailid=document.getElementById('txtEmail').value;
//        var matchArray = emailid.match(emailPat);
//        if (matchArray == null)
        var str=document.getElementById('txtEmail').value;
        var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

 		 return true	
    }
    
    function FormValidate()
    {
        if(document.getElementById('txtLastName').value=="")
        {
            alert("Last Name cannot be blank");
            document.getElementById('txtLastName').select();
            return false;
        }
        if(document.getElementById('txtFirstName').value=="")
        {
            alert("First Name cannot be blank");
            document.getElementById('txtFirstName').select();
            return false;
        }
        else if(document.getElementById('txtEmail').value=="")
        {
            alert("Enter valid Email.");
            document.getElementById('txtEmail').focus();
            return false;
        }
        else if (!Emailvalidation())
        {
           document.getElementById('txtEmail').select();
           return false;
        }
        else if(document.getElementById('txtContactNo').value=="" || isNaN(document.getElementById('txtContactNo').value))
        {
            alert("Enter valid phone number.");
            document.getElementById('txtContactNo').select();
            return false;
        }
        else
        {
            return true;
        }
    }
    
    //===================Form Validation=======================///