/* Copyright 2006 por Connecty Networks. Todos os direitos reservados */
function Request() { this.controllerURL = "controller.php"; this.convertParams = function(hash) { var res = []; for(k in hash) { res.push(k + "=" + escape(hash[k]));}
return res.join("&");}
this.send = function(params, widget, method) { var req; if (window.XMLHttpRequest) { try { req = new XMLHttpRequest() } catch(e) {}
} else if (window.ActiveXObject) { try { req = new ActiveXObject("Microsoft.XMLHTTP") } catch(e) {}
if (!req) { try { req = new ActiveXObject("Msxml2.XMLHTTP") } catch (e) {}
}
}
if(!req) { return false;}
var widgetId = widget.id; params.module = widget.cfg.module; if(!mozilla_nav) { var date = new Date(); params.noCache = "" + date.getTime() + (Math.random() * 1000000);}
req.onreadystatechange = function() { if (req.readyState == 4) { if ((req.status < 400) && req.responseText) { try { eval("kernel.getWidget(widgetId).dispatchMsg("+req.responseText+")");} catch(e) { }
} else { }
}
}
if (method == "POST") { req.open("POST", this.controllerURL, false); req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); req.send(this.convertParams(params));} else { req.open("GET", this.controllerURL + "?" + this.convertParams(params), true); req.send(null);}
return req;}
}
function XMLRequest() { this.send = function(url, widget, callback, params, noProxy) { var req; if (window.XMLHttpRequest) { try { req = new XMLHttpRequest() } catch(e) {}
} else if (window.ActiveXObject) { try { req = new ActiveXObject("MSXML2.XMLHttp") } catch (e) {}
if (!req) { try { req = new ActiveXObject("Microsoft.XMLHTTP") } catch(e) {}
}
}
if(!req) { return false;}
if(!mozilla_nav) { var date = new Date(); noCache = '&noCache='+ date.getTime() + (Math.random() * 1000000);} else { noCache = '';}
var paramStr = ""; if(params) { for(i in params) { paramStr += "&"+i+"="+escape(params[i]);}
}
var widgetId = widget.id; var cf = callback; req.onreadystatechange = function() { if (req.readyState == 4) { if (req.status == 200) { try { kernel.getWidget(widgetId)[cf](req);} catch(e) { }
} else { }
}
}
if(noProxy == true) { req.open("GET", url+"?"+noCache, true);} else { req.open("GET", "xmlproxy.php?url="+escape(url)+paramStr+noCache, true);}
req.send(null); return req;}
}