var _thises = new Array();
var _this;
var _event;
var aj;
var ajxTarget;
var customFunc;
var DEBUG = function (){};
DEBUG.writelnXML = DEBUG.write = DEBUG.writeln = function() {};
var IE = navigator.userAgent.match(/IE/);
var BROWSER;
if (window.XMLHttpRequest) aj = new XMLHttpRequest();
else if (window.ActiveXObject) aj = new ActiveXObject('MSXML2.XMLHTTP.3.0');
else alert('Browser not supported');
function include(file)
{
d = new Date;
aj.open('GET', file+'?'+d.getTime(), false);
aj.send(null);
eval(aj.responseText);
}
var NAMESPACE = '';
function _import(className)
{
if (NAMESPACE.length)
include(NAMESPACE+'/Client/'+className+'.js');
else
include('Forca/Client/'+className+'.js')
}
function hasProperties(object)
{
for (var i in object) { return true; }
return false;
}
Date.prototype.getDaysInMonth = function(month,year)
{
if (typeof month == undefined) month = this.getMonth();
switch (month)
{
case 0: case 2: case 4: case 6: case 7: case 9: case 11:
return 31;
case 1:
return (((typeof year==Number)?year:
this.getFullYear())%4)?28:29;
default:
return 30;
}
};
String.prototype._replace = function(regexp,replacement)
{
var result = this;
while (result.search(regexp)>=0)
result=result.replace(regexp,replacement);
return result;
};
function $(id)
{
return document.getElementById(id);
}
function _(tag)
{
return document.createElement(tag);
}
function _label(text)
{
var label = _('LABEL');
label.innerHTML = text;
return label;
}
function _el(tagName,content,id,name)
{
var result = _(tagName);
if (content && typeof content == 'object') result.appendChild(content);
else if (content) result.innerHTML = content;
if (id != undefined) result.id = id;
if (name != undefined) result.name = name;
return result;
}
function _option(text,value,id,name)
{
var result = _el('OPTION',text,id,name);
result.value = (value==undefined)?text:value;
return result;
}
function _table(id,name)
{
result = _el('TABLE',null,id,name);
result.tbody = result.appendChild(_('TBODY'));
return result;
}
function _td(content,id,name)
{
return _el('TD',content,id,name);
}
function _button(text,width,className)
{
if (!className) var className = 'button';
var result = _('input');
result.value = text;
result.className = className;
result.type = 'button';
result.style.width = width+'px';
return result;
}
function ajax()
{
aj.abort();
}
var ajaxReceiver;
var hiddenAJX = false;
function ajx(url,func,data)
{
if (typeof DEBUG != 'undefined') DEBUG.writeln('request: '+url);
ajax();
d = new Date;
var async = true;
if (typeof func != 'undefined') if (!func) async=false;
ajaxReceiver = func;
if (async)
{
aj.onreadystatechange = function()
{
try
{
if (typeof DEBUG != 'undefined') DEBUG.writeln('state: '+
aj.readyState+', status: '+aj.status+' ('+aj.statusText+')');
// alert(aj.readyState+','+aj.status+','+aj.statusText);
// uploadStatus.innerHTML += "
"+ aj.readyState+','+aj.status+','+aj.statusText;
if (aj.readyState==4)
{
if ($('loading'))
$('loading').style.display = 'none';
if (aj.status==200)
{
// if (DEBUG1) DEBUG1.write(aj.responseText);
if (aj.responseText.match(/^error/i))
alert(aj.responseText);
else if (ajaxReceiver)
{
if (ajaxReceiver._actual)
{
ajaxReceiver._actual.scripts = new Array();
var regex = /