/*
Dieses File ist u.a. ein Workaround für das Problem, dass bei einem Mambot die Ausgabe von URLs 
umgewandelt wird (z.B.: & zu &amp;). Damit funktionieren diese URLs mit Ajax nicht mehr.
Benötigt für den YellowPages Mambot.
Getestet und funktionsfähig 10/2006.
*/

/*Die Funktion(en) sind Klassen, die ein URL als Member haben,
welche später vom Aufrufer verwendet werden kann.*/

//Namespace 2112

// wenn gibt, dann nehmen, ansonsten initialisieren...
window.NS2112 = window.NS2112 || {};


NS2112.makeHey = function()
{
   alert("Net2112 Namespace.") ;
}





NS2112.xmlProvider = function(strName)
{
	this.Name = strName ;
};
//NS2112.extend(NS2112.xmlProvider, NS2112.xmlProvider.BookmarkProvider);




/*Statistik updater*/
NS2112.xmlProvider.statsUpdater = function (iClientID, strServer, strURI) 
{
   this.URL = '/axStats/2112StatsUpdater.php?&TOPIC=updateStats&CLIENTID=' + iClientID + '&HOST=' + strServer +  '&URI=' + encodeURIComponent(strURI)   ;   
   this.ID = '2112' ;
};

NS2112.xmlProvider.request = function ()
{
};

NS2112.xmlProvider.request.prototype.makeRequest = function (url, bCallAsync) 
{		
	    //alert('Calling ' + url) ;
	    http_request_users = false;
	    if (window.XMLHttpRequest) { // Mozilla, Safari,...
	        http_request_users = new XMLHttpRequest();
	        if (http_request_users.overrideMimeType) {
	            http_request_users.overrideMimeType('text/xml');
	        }
	    } else if (window.ActiveXObject) { // IE
	        try {
	            http_request_users = new ActiveXObject("Msxml2.XMLHTTP");
	        } catch (e) {
	            try {
	            http_request_users = new ActiveXObject("Microsoft.XMLHTTP");
	            } catch (e) {}
	        }
	    }
	
	    if (!http_request_users) 
		 {
	        //alert('Giving up :( Cannot create an XMLHTTP instance');
	        return false;
	    }
	    
	    //http_request_users.onreadystatechange = updateGUI;
	    http_request_users.open('GET', url, bCallAsync);
	    http_request_users.send(null);

/* !!!!!  Da manche Webserver evt. Whitespaces am Anfang schicken, 
   Müssen diese unbedingt entfernt werden! Sonst funktioniert der Parser nicht.
*/
		 //return http_request_users.responseText.replace(/^\s+/,""); 
var i = http_request_users.responseText.indexOf('<') ;
return http_request_users.responseText.substr( i);
} ;











/***************************************************************************************************/



NS2112.namespace = function(ns) {

    if (!ns || !ns.length) {
        return null;
    }

    var levels = ns.split(".");
    var nsobj = NS2112;

    // YAHOO is implied, so it is ignored if it is included
    for (var i=(levels[0] == "NS2112") ? 1 : 0; i<levels.length; ++i) {
        nsobj[levels[i]] = nsobj[levels[i]] || {};
        nsobj = nsobj[levels[i]];
    }

    return nsobj;
};


NS2112.extend = function(subclass, superclass) {
    var f = function() {};
    f.prototype = superclass.prototype;
    subclass.prototype = new f();
    subclass.prototype.constructor = subclass;
    subclass.superclass = superclass.prototype;
    if (superclass.prototype.constructor == Object.prototype.constructor) {
        superclass.prototype.constructor = superclass;
    }
};

NS2112.namespace("xmlProvider");

