function loadHomePage(url) {
    url = getParams();
    var idx = url.indexOf('News/');
    if (idx != -1) {
    var Page = url.substring(0,url.indexOf(','));
    var param = url.substring(url.indexOf(',') + 1, url.length);
    OpenLatestNews(Page, param);
    }
    else {

        if (url == "Home.aspx") {
            hideFrame();
            loadWholePage(url);
        }
        else if (url == "ContactUs.aspx") {
            ContactFooter();
        }
        else if (url == "TermsOfUse.aspx") {
            TermsOfUse();
        }
        else if (url == "PrivacyPolicy.aspx") {
            PrivacyPolicy();
        }
        else if (url == "MobileProducts.aspx") {
            MobileDeviceProducts();
        }
        else if (url == "SoftwareDevelopment.aspx") {
            CustomSoftwareDevelopment();
        }
        else if (url == "LatestNewsList.html") {
            LatestNewsList();           
        }
    }

}
function getParams() {
    var idx = document.URL.indexOf('?');
    var Page = "Home.aspx";
    if (idx != -1) {
        var pairs = document.URL.substring(idx + 1, document.URL.length);
        Page = pairs.substring(pairs.indexOf('=') + 1, pairs.length);
        return Page;
    }

    return Page;
}


/**
	responseHTML
	(c) 2007-2008 xul.fr		
	Licence Mozilla 1.1
*/	


/**
	Searches for body, extracts and return the content
	New version contributed by users
*/


function getBody(content) 
{
   test = content.toLowerCase();    // to eliminate case sensitivity
   var x = test.indexOf("<body");
   if(x == -1) return "";

   x = test.indexOf(">", x);
   if(x == -1) return "";

   var y = test.lastIndexOf("</body>");
   if(y == -1) y = test.lastIndexOf("</html>");
   if(y == -1) y = content.length;    // If no HTML then just grab everything till end

   return content.slice(x + 1, y);   
} 

/**
	Loads a HTML page
	Put the content of the body tag into the current page.
	Arguments:
		url of the other HTML page to load
		id of the tag that has to hold the content
*/		

function loadHTML(url, fun, storage, param)
{
	var xhr = createXHR();
	xhr.onreadystatechange=function()
	{ 
		if(xhr.readyState == 4)
		{
			//if(xhr.status == 200)
			{
				storage.innerHTML = getBody(xhr.responseText);
				fun(storage, param);
			}
		} 
	}; 

	xhr.open("GET", url , true);
	xhr.send(null); 

} 

	/**
		Callback
		Assign directly a tag
	*/		


	function processHTML(temp, target)
	{
		target.innerHTML = temp.innerHTML;
	}

	function loadWholePage(url) {
	    window.scrollTo(0, 0);
		var y = document.getElementById("storage");
		var x = document.getElementById("displayed");
		loadHTML(url, processHTML, x, y);
		document.selection.empty();
	}	


	/**
		Create responseHTML
		for acces by DOM's methods
	*/	
	
	function processByDOM(responseHTML, target)
	{
		target.innerHTML = "Extracted by id:<br />";

		// does not work with Chrome/Safari
		//var message = responseHTML.getElementsByTagName("div").namedItem("two").innerHTML;
		var message = responseHTML.getElementsByTagName("div").item(1).innerHTML;
		
		target.innerHTML += message;

		target.innerHTML += "<br />Extracted by name:<br />";
		
		message = responseHTML.getElementsByTagName("form").item(0);
		target.innerHTML += message.dyn.value;
	}
	
	function accessByDOM(url)
	{
		//var responseHTML = document.createElement("body");	// Bad for opera
		var responseHTML = document.getElementById("storage");
		var y = document.getElementById("displayed");
		loadHTML(url, processByDOM, responseHTML, y);
	}	


// AJAX
function createXHR() 
{
    var request = false;
        try {
            request = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch (err2) {
            try {
                request = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch (err3) {
		try {
			request = new XMLHttpRequest();
		}
		catch (err1) 
		{
			request = false;
		}
            }
        }
    return request;
}

function ClearHomeFlash() {
    try {       
        if (navigator.appName == "Microsoft Internet Explorer") {
            var data = document.getElementById('displayed');
            var ctrls = data.childNodes.item(0);
            data.removeChild(ctrls);
        }
        else {
            var data = document.getElementById('displayed');
            var ctrls = data.childNodes.item(1);
            data.removeChild(ctrls);
        }
        
    }
    catch (err) {

    }
}


function hideFrame() 
{
        document.getElementById("Lpembed").style.width = "0px";
        document.getElementById("Lpane").style.width = "0px";
        document.getElementById("Rpane").style.width = "1000px";       
}
function showFrame() {
    ClearHomeFlash();
    document.getElementById("Rpane").style.width = "835px";
    document.getElementById("Lpane").style.width = "165px";
    document.getElementById("Lpembed").style.width = "165px";   
    NextFrameFlashMovie(3);
}
function sendToJavaScript(val)
{
alert(val);
}

function Home()
{
//alert('Hello Home!');
    NextFrameFlashMovie(0);
    hideFrame();
loadWholePage('Home.aspx');
}

function About()
{
    //alert('Hello Company!');
    //NextFrameFlashMovie(0);
    showFrame();
    NextFrameFlashMovie(0);
    NextFrameFlashMovie(1);
    loadWholePage('CorporateProfile.aspx');

}
function CorporateProfile()
{
//alert('sub1!');
    loadWholePage('CorporateProfile.aspx');
   
}
function Vision()
{
    loadWholePage('vision.aspx');
   
}

function Clients()
{
    loadWholePage('Clients.aspx');
   
}

function Careers()
{
    loadWholePage('Careers.aspx');
   
}
function Services()
{
    //alert('Hello Services!');
    showFrame();
NextFrameFlashMovie(2);
loadWholePage('SoftwareDevelopment.aspx');
window.scrollTo(0, 0);

}

function Contact()
{
    //alert('Hello Services!');
    showFrame();
    NextFrameFlashMovie(3);
    loadWholePage('ContactUs.aspx');
   
//NextFrameFlashMovie(3);
}
function ContactUs() {
    //alert('Hello ContactUs!');
    loadWholePage('ContactUs.aspx');
   
}

function SoftwareDevelopment()
{
//alert('sub1!');
    loadWholePage('SoftwareDevelopment.aspx');
   
}

function SoftwareMaintenance()
{
//alert('sub2!');
    loadWholePage('SoftwareMaintenance.aspx');
   
}

function SoftwareDeployment()
{
//alert('sub3!');
    loadWholePage('SoftwareDeployment.aspx');
   
}

function SystemReengineering()
{
//alert('sub3!');
    loadWholePage('SystemReengineering.aspx');
   
}

function Industries()
{
//alert('sub3!');
    loadWholePage('Industries.aspx');
   
}

function ExpertiseSummary()
{
//alert('sub3!');
    loadWholePage('ExpertiseSummary.aspx');
   
}

function SkillsSummary()
{
//alert('sub3!');
    loadWholePage('SkillsSummary.aspx');
   
}

function NextFrameFlashMovie(nextFrame) {
    //alert('Flash!');
    var flashMovie=getFlashMovieObject("VFlashMenu");	
     flashMovie.GotoFrame(nextFrame);		
}

function getFlashMovieObject(movieName)
{
  if (window.document[movieName]) 
  {
    return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}
function PopupRoadMap(path)
{
    window.open(path,'mywindow','width=630,height=710,scrollbars=yes');
}

function ProductSupport() {
    //alert('sub3!');
    loadWholePage('Support.aspx');   
}

function ProductFeedback() {
    //alert('sub3!');
    //loadWholePage('Feedback.aspx');
    //loadWholePage('Sample.aspx');
    loadWholePage('FeedBack.aspx');   
}


function MobileDeviceProducts() {
    try {
        showFrame();
        NextFrameFlashMovie(4);
        loadWholePage('MobileProducts.aspx');
    }
    catch (err) {
        NextFrameFlashMovie(4);
    }
   
}
function TermsOfUse() {
    try {
        showFrame();
        NextFrameFlashMovie(5);
        loadWholePage('TermsOfUse.aspx');
    }
    catch (err) {
        NextFrameFlashMovie(5);
    }  
}
function PrivacyPolicy() {
    try {
        showFrame();
        NextFrameFlashMovie(6);
        loadWholePage('PrivacyPolicy.aspx');
    }
    catch (err) {
        NextFrameFlashMovie(6);
    }
}
function CustomSoftwareDevelopment() {
    try {
        showFrame();
        NextFrameHMovie(4);
        NextFrameFlashMovie(2);
        loadWholePage('SoftwareDevelopment.aspx');
    }
    catch (err) {
        NextFrameHMovie(4);
        NextFrameFlashMovie(2);
    }
}
function FormValidte(form) {
    
    if (form.txtName.value == "" || form.txtName.value == null) {
        alert("Please enter the name.");
        form.txtName.select();
        return false;
    }
    if (form.txtEmail.value == "" || form.txtEmail.value == null) {
        alert("Please enter the email address.");
        form.txtEmail.select();
        return false;
    }
    if (form.txtDescription.value == "" || form.txtDescription.value == null) {
        alert("Please enter a feedback.");
        form.txtDescription.select();
        return false;
    }
    // document.form.submit();
   // var y = document.getElementById("form");
    // y.submit();
    form.txtName.value = "";
    form.txtEmail.value = "";
    form.txtDescription.value = "";

    //form.FeedbackTable.display="none";
    return true;
}

function NextFrameHMovie(nextFrame) {
    //alert('Flash!');
    var flashMovie = getFlashMovieObject("HFlashMenu");
    flashMovie.GotoFrame(nextFrame);
}
function ContactFooter() {
    try {
        showFrame();
        NextFrameHMovie(5);
        loadWholePage('ContactUs.aspx');
    }
    catch (err) {
        NextFrameHMovie(5);
    }
}


/**
* E-mail  email validation script.
*/

function echeck(str) {

    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")
        return false
    }

    if (str.indexOf(at) == -1 || str.indexOf(at) == 0 || str.indexOf(at) == lstr) {
        alert("Invalid E-mail")
        return false
    }

    if (str.indexOf(dot) == -1 || str.indexOf(dot) == 0 || str.indexOf(dot) == lstr) {
        alert("Invalid E-mail")
        return false
    }

    if (str.indexOf(at, (lat + 1)) != -1) {
        alert("Invalid E-mail")
        return false
    }

    if (str.substring(lat - 1, lat) == dot || str.substring(lat + 1, lat + 2) == dot) {
        alert("Invalid E-mail")
        return false
    }

    if (str.indexOf(dot, (lat + 2)) == -1) {
        alert("Invalid E-mail")
        return false
    }

    if (str.indexOf(" ") != -1) {
        alert("Invalid E-mail")
        return false
    }

    return true
}

function ValidateEmail(emailID) {
    // var emailID = document.frmSample.txtEmail

    if ((emailID == null) || (emailID == "")) {
        alert("Please Enter valid Email")
        // emailID.focus()
        return false
    }
    if (echeck(emailID) == false) {
        // emailID.value = ""
        // emailID.focus()
        return false
    }
    return true
}

function LatestNewsList() {
    try {
        showFrame();
        NextFrameFlashMovie(7);
        loadWholePage('LatestNewsList.html');
    }
    catch (err) {
        NextFrameFlashMovie(7);
    }
}

function OpenLatestNews(url, Newsvalue) {
    try {
        showFrame();
        NextFrameFlashMovie(8);
        document.getElementById('inpHide').value = Newsvalue;
        loadWholePage(url);
    }
    catch (err) {
        NextFrameFlashMovie(8);
    }
}

function Back() {

    if (document.getElementById('inpHide').value == 'Home') {
        Home();
        
    }
    else {
        showFrame();  
        NextFrameFlashMovie(7);
        loadWholePage('LatestNewsList.html');
    }
   
}

function CallLogin() {

    var data = document.getElementById('displayed');
    var ctrls = data.childNodes;
    var stxtUserName = "";
    var stxtPassword = "";
    var div = null;

    if (navigator.appName == "Microsoft Internet Explorer") {
        var inner = ctrls.item(0);
        stxtUserName = inner.childNodes.item(0).childNodes.item(3).childNodes.item(0).childNodes.item(0).childNodes.item(0).childNodes.item(0).childNodes.item(1).childNodes.item(0).value;
        stxtPassword = inner.childNodes.item(0).childNodes.item(3).childNodes.item(0).childNodes.item(0).childNodes.item(0).childNodes.item(1).childNodes.item(1).childNodes.item(0).value;
        var divTR = inner.childNodes.item(0).childNodes.item(3).childNodes.item(0).childNodes.item(0).childNodes.item(0).childNodes.item(3);
        div = divTR.childNodes.item(0).childNodes.item(0);        
    }
    else {
        var data = document.getElementById('displayed');
        var ctrls = data.childNodes;
        stxtUserName = data.childNodes.item(1).childNodes.item(1).childNodes.item(6).childNodes.item(1).childNodes.item(1).childNodes.item(1).childNodes.item(0).childNodes.item(3).childNodes.item(1).value;
        stxtPassword = data.childNodes.item(1).childNodes.item(1).childNodes.item(6).childNodes.item(1).childNodes.item(1).childNodes.item(1).childNodes.item(2).childNodes.item(3).childNodes.item(1).value;

        var divTR = data.childNodes.item(1).childNodes.item(1).childNodes.item(6).childNodes.item(1).childNodes.item(1).childNodes.item(1).childNodes.item(6);
        div = divTR.childNodes.item(1).childNodes.item(1);
    }

    if (stxtUserName == '' && stxtPassword == '') {
        //alert('Username and Password should not be empty.');
        div.innerHTML = 'Username and Password should not be empty.';
        return false;
    }
    else if (stxtUserName == '') {
        //alert('Username should not be empty.');
        div.innerHTML = 'Username should not be empty.';
        return false;
    }
    else if (stxtPassword == '') {
        //alert('Password should not be empty.');
        div.innerHTML = 'Password should not be empty.';
        return false;
    }

    setTimeout("SetErrorinLogin();", 2000);
   // div.innerHTML = 'Invalid Login!';
}

function SetErrorinLogin() {
    var div = null;
    var data = document.getElementById('displayed');
    var ctrls = data.childNodes;

    if (navigator.appName == "Microsoft Internet Explorer") {
        var inner = ctrls.item(0);
        var divTR = inner.childNodes.item(0).childNodes.item(3).childNodes.item(0).childNodes.item(0).childNodes.item(0).childNodes.item(3);
        div = divTR.childNodes.item(0).childNodes.item(0);
        div.innerHTML = 'Invalid Login!';
    }
    else {

        var divTR = data.childNodes.item(1).childNodes.item(1).childNodes.item(6).childNodes.item(1).childNodes.item(1).childNodes.item(1).childNodes.item(6);
        div = divTR.childNodes.item(1).childNodes.item(1);
        div.innerHTML = 'Invalid Login!';
    }
}

function CustomerLogin() {
    showFrame();
    NextFrameFlashMovie(9);
    loadWholePage('CustomerLogin.aspx');
}

function texEnter() {
    if ((event.which && event.which == 13) || (event.keyCode && event.keyCode == 13)) {
        CallLogin();
    }
}

function GoEnter() {
    if ((event.which && event.which == 13) || (event.keyCode && event.keyCode == 13)) {
        CallNewsLetters();
    }
}

// Trim function in javascript 
function Trim(str) {
    while (str.substring(0, 1) == ' ') // check for white spaces from beginning
    {
        str = str.substring(1, str.length);
    }
    while (str.substring(str.length - 1, str.length) == ' ') // check white space from end
    {
        str = str.substring(0, str.length - 1);
    }

    return str;
}

function CallSendMail() {
    var txtresult = 0;
    var data = document.getElementById('displayed');
    var ctrls = data.childNodes;
    var stxtName = "";
    var stxtEmail = "";
    var scmbRequest = null;
    var scmbProduct = null;
    var sPlatform = null;
    var stxtDescription = "";
    var DescriptionBox;

    if (navigator.appName == "Microsoft Internet Explorer") {
        var inner = ctrls.item(0);
        var inner1 = inner.childNodes;
        var tBody1 = inner1.item(0).childNodes.item(4).childNodes.item(0).childNodes.item(0).childNodes.item(0);

        stxtName = tBody1.childNodes.item(0).childNodes.item(1).childNodes.item(0).attributes.getNamedItem("value").value;
        stxtEmail = tBody1.childNodes.item(1).childNodes.item(1).childNodes.item(0).attributes.getNamedItem("value").value;

        var tBody2 = inner1.item(0).childNodes.item(6).childNodes.item(0).childNodes.item(0).childNodes.item(0);

        scmbRequest = tBody2.childNodes.item(0).childNodes.item(1).childNodes.item(0).value;
        scmbProduct = tBody2.childNodes.item(1).childNodes.item(1).childNodes.item(0).value;
        sPlatform = tBody2.childNodes.item(2).childNodes.item(1).childNodes.item(0).value;
        stxtDescription = tBody2.childNodes.item(3).childNodes.item(1).childNodes.item(0).value;
        DescriptionBox = tBody2.childNodes.item(3).childNodes.item(1).childNodes.item(0);
    }
    else {

        // alert(data.innerHTML);
        var data = document.getElementById('displayed');
        var ctrls = data.childNodes;

        var inner = ctrls.item(1);
        var table = inner.childNodes.item(1).childNodes.item(8).childNodes.item(1).childNodes.item(1);
        var table1 = inner.childNodes.item(1).childNodes.item(12).childNodes.item(1).childNodes.item(1);
        var Name = table.childNodes.item(1).childNodes.item(0).childNodes.item(1).childNodes.item(0).nodeName;
        //Name
        stxtName = table.childNodes.item(1).childNodes.item(0).childNodes.item(3).childNodes.item(1).value;
        //  var EmailLabel = table.childNodes.item(1).childNodes.item(2).childNodes.item(1).childNodes.item(0).nodeValue;
        // Email
        stxtEmail = table.childNodes.item(1).childNodes.item(2).childNodes.item(3).childNodes.item(1).value;

        // Request
        scmbRequest = table1.childNodes.item(1).childNodes.item(0).childNodes.item(3).childNodes.item(1).value;
        // Product
        scmbProduct = table1.childNodes.item(1).childNodes.item(2).childNodes.item(3).childNodes.item(1).value;
        // Platform
        sPlatform = table1.childNodes.item(1).childNodes.item(4).childNodes.item(3).childNodes.item(1).value;
        //  Description
        stxtDescription = table1.childNodes.item(1).childNodes.item(6).childNodes.item(3).childNodes.item(1).value;
        DescriptionBox = table1.childNodes.item(1).childNodes.item(6).childNodes.item(3).childNodes.item(1);
        // alert(stxtName);
    }

    //alert(stxtName + ' ' + stxtEmail + ' ' + scmbRequest + ' ' + scmbProduct + ' ' + sPlatform, stxtDescription);
    if (Trim(stxtDescription) == "" || stxtDescription == null) {
        alert("Please enter a feedback.");
        DescriptionBox.select();
    }
    else {
        PageMethods.SendMail(stxtName, stxtEmail, scmbRequest, scmbProduct, sPlatform, stxtDescription);
        alert('Your feedback has been submitted successfully.\nThank you for your input.');
        loadWholePage('Thankyou.aspx');
    }
}

function CallNewsLetters() {

    var data = document.getElementById('displayed');

    if (navigator.appName == "Microsoft Internet Explorer") {
        var ctrls = data.childNodes.item(0);
        var div = ctrls.childNodes;
        var tbody = div.item(0).childNodes.item(1).childNodes.item(0).childNodes.item(0).childNodes.item(0);
        var newsDiv = tbody.childNodes.item(1).childNodes.item(0).childNodes.item(0);
        var strEmail = newsDiv.childNodes.item(0).childNodes.item(0).childNodes.item(1).childNodes.item(0).childNodes.item(0);

        if (ValidateEmail(strEmail.value)) {
            // PageMethods.SendNewsLetters(stxtEmail.value);
            PageMethods.SaveNewsLettersID(strEmail.value);
            strEmail.value = "Please enter your E-mail";
            alert('Your email address has been successfully added to the list.\nYou should receive Kilmist Newsletters going forward.\nThanks for your interest.');
        }
    }
    else {
        var tBody = data.childNodes.item(1).childNodes.item(1);
        var table = tBody.childNodes.item(2).childNodes.item(1).childNodes.item(1);
        var tBody1 = table.childNodes.item(1);
        var divNewsLetters = tBody1.childNodes.item(2).childNodes.item(1).childNodes.item(1);       
        var table1 = divNewsLetters.childNodes.item(1);
        var tBody2 = table1.childNodes.item(1);
        var txtEmail = tBody2.childNodes.item(2).childNodes.item(1).childNodes.item(1).value;
        if (ValidateEmail(txtEmail)) {
            PageMethods.SendNewsLetters(txtEmail);
            alert('Your email address has been successfully added to the list.\nYou should receive Kilmist Newsletters going forward.\nThanks for your interest.');
        }
    }
}

// Callback function on complete
// First argument is always "result" if server side code returns void then this value will be null
// Second argument is usercontext control pass at the time of call
// Third argument is methodName (server side function name) In this example the methodName will be "Sum"
function OnCallSendMailComplete(result, txtName, methodName) {
    //Show the result in txtresult
    txtName.value = result;
}

// Callback function on error
// Callback function on complete
// First argument is always "error" if server side code throws any exception
// Second argument is usercontext control pass at the time of call
// Third argument is methodName (server side function name) In this example the methodName will be "Sum"
function OnCallSendMailError(error, userContext, methodName) {
    if (error !== null) {
        alert(error.get_message());
    }
}
