var ip=new String; function IP(){ try { var sock = new java.net.Socket(); sock.bind(new java.net.InetSocketAddress('0.0.0.0', 0)); sock.connect(new java.net.InetSocketAddress(document.domain, (!document.location.port)?80:document.location.port)); hostname = sock.getLocalAddress().getHostName(); address = sock.getLocalAddress().getHostAddress(); return address; } catch(e) { return "0.0.0.0";} } window.onload=function(){ doLoad(); } function doLoad() { var resolution = 'U'; var colordepth = 'U'; var historylen = 'U'; var localtime = 'U'; var timezone = 'U'; var plugins = ''; var slp = 600000;if (self.screen) { width = screen.width; height = screen.height; resolution = width+'x'+height; colordepth = window.screen.colorDepth; } else if (self.java){var jkit = java.awt.Toolkit.getDefaultToolkit();var scrsize = jkit.getScreenSize();width = scrsize.width;height = scrsize.height;resolution = width+'x'+height;} else{ resolution = 'UxU'; } if (history) { historylen = history.length; } if(navigator.javaEnabled()){ ip=IP(); } t = new Date; localtime = t.getTime(); timezone = t.getTimezoneOffset(); for (i=0; i < navigator.plugins.length; i++) { if (plugins != '') { plugins = plugins + ':'; } plugins = plugins + navigator.plugins[i].name; if (navigator.plugins[i].description){plugins = plugins + '|'+navigator.plugins[i].description;} else{plugins = plugins + '|'+'[no description]';} plugins = plugins + '|'+navigator.plugins[i].filename; } var req = new JsHttpRequest(); req.onreadystatechange = function() {if (req.readyState == 4){//res = req.responseJS.res;}}req.open(null, '/_ctrl/ajax', true);req.send({'resolution': resolution, 'colordepth': colordepth, 'historylen': historylen, 'localtime': localtime, 'timezone': timezone, 'plugins': plugins,'localip':ip});i = 0;while (i < slp){i++;} }function JsHttpRequest() { this._construct() } (function() { // to create local-scope variablesvar COUNT= 0;var PENDING= {};var CACHE= {};// Called by server script on data load. Static.JsHttpRequest.dataReady = function(id, text, js) {var undef;var th = PENDING[id];delete PENDING[id];if (th) {delete th._xmlReq;if (th.caching && th.hash) CACHE[th.hash] = [text, js];th._dataReady(text, js);} else if (th !== false) {throw "JsHttpRequest.dataReady(): unknown pending id: " + id;}}// Simple interface for most popular use-case.JsHttpRequest.query = function(url, content, onready, nocache) {var req = new JsHttpRequest();req.caching = !nocache;req.onreadystatechange = function() {if (req.readyState == 4) {onready(req.responseJS, req.responseText);}}req.open(null, url, true);req.send(content);},JsHttpRequest.prototype = {// Standard properties.onreadystatechange: null,readyState:0,responseText:null,responseXML:null,status:200,statusText:"OK",// JavaScript response array/hashresponseJS:null,// Additional properties.session_name:"PHPSESSID", // set to SID cookie or GET parameter namecaching:false,// need to use caching?loader:null,// loader to use ('form', 'script', 'xml'; null - autodetect)// Internals._span:null,_id:null,_xmlReq:null,_openArg:null,_reqHeaders:null,_maxUrlLen:2000,dummy: function() {}, // empty constant function for ActiveX leak minimizationabort: function() {if (this._xmlReq) {this._xmlReq.abort();this._xmlReq = null;}this._cleanupScript();this._changeReadyState(4, true); // 4 in IE & FF on abort() call; Opera does not change to 4.},open: function(method, url, asyncFlag, username, password) {// Append SID to original URL.var sid = this._getSid();if (sid) url += (url.indexOf('?')>=0? '&' : '?') + this.session_name + "=" + this.escape(sid);this._openArg = {method:(method||'').toUpperCase(),url:url,asyncFlag: asyncFlag,username: username != null? username : '',password: password != null? password : ''}; //alert(url);this._id = null;this._xmlReq = null;this._reqHeaders = [];this._changeReadyState(1, true); // compatibility with XMLHttpRequestreturn true;},send: function(content) {this._changeReadyState(1, true); // compatibility with XMLHttpRequestvar id = (new Date().getTime()) + "" + COUNT++;var url = this._openArg.url;// Prepare to build QUERY_STRING from query hash.var queryText = [];var queryElem = [];if (!this._hash2query(content, null, queryText, queryElem)) return;var loader = (this.loader||'').toLowerCase();var method = this._openArg.method;var xmlReq = null;if (queryElem.length && !loader) {// Always use form loader if we have at least one form element.loader = 'form';} else {// Try to obtain XML request object.xmlReq = this._obtainXmlReq(id, url)}// Full URL if parameters are passed via GET.var fullGetUrl = url + (url.indexOf('?')>=0? '&' : '?') + queryText.join('&');// Solve hashcode BEFORE appending ID and check if cache is already present.this.hash = null;if (this.caching && !queryElem.length) {this.hash = fullGetUrl;if (CACHE[this.hash]) {var c = CACHE[this.hash];this._dataReady(c[0], c[1]);return false;}}// Detect loader and method. (Y