﻿
var BrowserInfo = function()
{
    this.Type = null;
    var Agent = navigator.userAgent;
    if (Agent.indexOf("MSIE") != -1) this.Type = 'IE';
    else if (Agent.indexOf("Firefox") != -1)  this.Type = 'FF';
    else if (Agent.indexOf("Navigator") != -1)  this.Type = 'NV';
    else if (Agent.indexOf("Opera") != -1 ) this.Type = 'OP';
    else this.Type = 'UK';
}

var XmlDom = function(Xml)
{
    var xmlDoc = null;
    this.XmlNode = XmlNode;
    this.OuterXML = OuterXML;
    
    var XmlNode = function()
    {
        var SelectNode = function(name)
        {
            //return xmlDoc.getElementsByTagName(name)[0];
        }
        this.SelectNode = SelectNode;
    }
    
    XmlDom.prototype.SelectNodes = function(name)
    {
        return xmlDoc.getElementsByTagName(name)[0];
    };
    //this.SelectNode = XmlNode.SelectNode;
    
    var GetAttribute = function(name)
    {
            var atr = v.getAttribute('arg');
            if (atr != null) alert(v.getAttribute('arg'));
        return xmlDoc.getElementsByTagName("title")[0].getAttribute(name);

    }
    
    var OuterXML = function(node)
    { //  with Opera
        if (node.ownerDocument && node.ownerDocument.implementation &&
            document.implementation.createLSSerializer &&
            (serializer = node.ownerDocument.implementation.createLSSerializer()))
        {
            return serializer.writeToString(node);
        }
    }
    
    try //Internet Explorer
    {
        xmlDoc = new ActiveXObject("MSXML2.DOMDocument");
        xmlDoc.async = "false";
        xmlDoc.loadXML(Xml);
    }
    catch(e)
    {
        try //Firefox, Mozilla, Opera, etc.
        {
            var parser = new DOMParser();
            xmlDoc = parser.parseFromString(Xml,"text/xml");
        }
        catch(e) {alert(e.message); return null;}
    }
    this.DocumentElement = xmlDoc.documentElement;
    return xmlDoc;
}

var GetElementPosition = function(element)
{
    var x = y = 0;
    var obj = element;
    do
    {
        x += obj.offsetLeft;
        y += obj.offsetTop;
        obj = obj.offsetParent;
    } while (obj.offsetParent != null)
    var Browser = new BrowserInfo().Type;
    if (Browser == 'IE' && element.offsetParent.offsetParent.style.position == '')
    {
        x += 10;
        y += 14;
    }
    y += element.offsetHeight;
    return [x,y];
}

function employee() {
  this.dept = "HR";
  this.manager = "John Johnson";
}
var ken = new employee();
function printProp() {
  for (property in ken) {
    alert(property);
  }
}
