function $GN()
{
    var _1=new Array();
    for(var i=0;i<arguments.length;i++)
    {
	    var _3=arguments[i];
	    if(typeof _3=="string")
	    {
		    _3=document.getElementById(_3);
	    }
	    if(arguments.length==1)
	    {
		    return _3;
	    }
	    _1.push(_3);
    }
    return _1;
};
/*-------------------------------------------------------------*/
var GateNews_Soap = 
{
    ConvertString : function(data)
    {
        var st = '';
        if (data!=null)
        {
            if (typeof data == 'string')
                st = data;
            else
            {
                for(var dat in data)
                {
	                if(typeof data[dat] == 'object')
	                {
	                    var obTmp = data[dat];
	                    if (obTmp!=null)
		                    for(var da=0 ; da<obTmp.length;da++)
			                    st += '<' + dat + '>' + obTmp[da] + '</' + dat + '>';
			        }
	                else
	                    st += '<' + dat + '>' + data[dat] + '</' + dat + '>';
                }
            }
        }
        return st;
    },
    $Request : function (url_,setup)
    {
        var XmlReq;
        if (window.XMLHttpRequest)
            XmlReq = new XMLHttpRequest();
        else if (window.ActiveXObject)
            XmlReq = new ActiveXObject("Microsoft.XMLHTTP");
        if (XmlReq != null)
        {
            XmlReq.onreadystatechange = function() 
            {
                if (XmlReq.readyState == 4) 
                {
                    if (XmlReq.status == 200)
                    {
                        var result = XmlReq.responseText;
                        result = result.replace(/&amp;/gi,'&');
                        result = result.replace(/&lt;/gi,'<');
                        result = result.replace(/&gt;/gi,'>');
                        setup.OnSuccess(result);
                    }
                    else 
                        setup.OnError('Error retrieving XML data..!');
                }
                else
                    setup.OnLoading();
            };
            XmlReq.open("POST",url_,true);
            XmlReq.setRequestHeader("Content-type", "application/soap+xml; charset=utf-8");
            var strData = '<?xml version="1.0" encoding="utf-8"?>';
            strData += '<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">';
                strData += '<soap12:Body>';
                    strData += '<' + setup.Function + ' xmlns="' + setup.Namespace + '">';
                        strData += GateNews_Soap.ConvertString(setup.Para);
                    strData += '</' + setup.Function + '>';
                strData += '</soap12:Body>';
            strData += '</soap12:Envelope>';
            XmlReq.setRequestHeader("Content-length", strData.length);
            XmlReq.send(strData);
        }
        else
        {
            setup.OnError('Your browser does not support XMLHTTP.');
        }
    }
};
/*-------------------------------------------------------------*/
var GateNewsLib = 
{
    Channels : ['TheGioi','KinhDoanh','VanHoa','XaHoi','KhoaHoc','CNTT','PhapLuat','TheThao','TamTinh','GiaiTri','DoiSong','OToNhaDat','TroChoi'],
    Websites : ['Home','VnExpress','NgoiSao','SoHoa','DoThi','NhacSo','VTV','VietNamNet','VTCNews','TienPhongOnline','AnNinhThuDo'],
    $GetIndex : function(a,al)
    {
        var as = a.split(',');
        a = '';
        for(var i=0;i<as.length;i++)
        {
            var a_i = as[i].toLowerCase();
            for(var j=0;j<al.length;j++)
            {
                var a_j = al[j].toLowerCase();
                if(a_i==a_j)
                {
                    a += a_i + ',';
                    break;
                }
           } 
        }
        a = a.substring(0,a.length-1);
        return a; 
    },
    $GetChannels : function(ch)
    {
        return GateNewsLib.$GetIndex(ch,GateNewsLib.Channels);
    },
    $GetWebsites : function(wi)
    {
        return GateNewsLib.$GetIndex(wi,GateNewsLib.Websites);
    },
    $NewNews : function(objCon,ch,we,co,si,te)
    {
        if(co<=20)
        {
            ch = GateNewsLib.$GetChannels(ch);
            we = GateNewsLib.$GetWebsites(we);
            $GN(objCon).innerHTML = '<div align="center"><img alt="" src="http://news.gate.vn/Images/ADSpinner.gif" vspace="10" /></div>';
            document.write('<script type="text/javascript" src="http://news.gate.vn/Api/ajApi.aspx?t='+te+'&o='+objCon+'&f=GetNewNews&c='+ch+'&w='+we+'&s='+co+'&d='+si+'"></script>');
        }
    },
    $HotNews : function(objCon,ch,we,co,si,te)
    {
        if(co<=20)
        {
            ch = GateNewsLib.$GetChannels(ch);
            we = GateNewsLib.$GetWebsites(we);
            $GN(objCon).innerHTML = '<div align="center"><img alt="" src="http://news.gate.vn/Images/ADSpinner.gif" vspace="10" /></div>';
            document.write('<script type="text/javascript" src="http://news.gate.vn/Api/ajApi.aspx?t='+te+'&o='+objCon+'&f=GetHotNews&c='+ch+'&w='+we+'&s='+co+'&d='+si+'"></script>');
        }
    },
    $GetContent : function(objCon,si,wi,hi)
    {
        var url = window.location.href;
        url = url.match(/(.*?)(\x3F|\x26)id\x3D([^\x2F]+)\x2F([^\x2F]+)$/);
        var ch = url[3];
        var id = url[4];
        url = url[1];
        $GN(objCon).innerHTML ='<iframe allowtransparency="true" scrolling="auto" vspace="0" hspace="0" marginheight="0" marginwidth="0" src="http://news.gate.vn/Api/Content.aspx?d='+si+'&ch='+ch+'&id='+id+'&url='+url+'" name="GateNewsIFrame" frameborder="0" height="'+hi+'" width="'+wi+'"></iframe>';
    },
    $NewNews_ : function(objCon,ch,we,co,si)
    {
        if(co<=20)
        {
            ch = GateNewsLib.$GetChannels(ch);
            we = GateNewsLib.$GetWebsites(we);
            var Contain = $GN(objCon);
            new GateNews_Soap.$Request('http://news.gate.vn/Api/Api.asmx',
            {
                Function: 'GetNewNews',
                Namespace: 'http://news.gate.vn/',
                Para : 
                {
                    'CIndexs'      :   ch,
                    'WIndexs'      :   we,
                    'count'        :   co,
                    'domain'       :   si
                },
                OnSuccess: function(result) 
                {
                    Contain.innerHTML = result;
                    
                },
                OnError: function(err)
                {
                    Contain.innerHTML = err;
                },
                OnLoading : function()
                {
                    Contain.innerHTML = '<div align="center"><img alt="" src="http://news.gate.vn/Images/ADSpinner.gif" vspace="10" /></div>';
                }
            });
        }
    }
};
