// On désactive l'utilisation de WebSocket si la préférence 'scenari.liveCollab.useXHR' est à true
sio.Transport['websocket'].check = function () {
	try {
		var vPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
		return vPrefs.getBoolPref('scenari.liveCollab.useXHR') != true;
	} catch (e) {
		return true;
	}
};

// Surcharge de la création de l'objet XMLHttpRequest
sio.util.request = function (xdomain) {
	var vXHR = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance(Ci.nsIXMLHttpRequest);
	vXHR.overrideMimeType('text/plain');
	return vXHR;
};

// On force la possibilité d'utiliser XHR
sio.Transport['xhr-polling'].check = function (socket, xdomain) {
	return true;
}

// Désactivation de la gestion des requêtes cross-domain (inutile avec le XHR du chrome)
sio.Socket.prototype.isXDomain = function () {
	return false;
};

// Désactivation d'un timeout pour un bug de WebKit
sio.Transport['xhr-polling'].ready = function (pSocket, pFn) {
	pFn.call(this);
};