//Copyright (c) 2006 Open Light Software Inc.  Based in part on "prototype.lite.js" and "moo.ajax.js" (see http://mad4milk.net/)
var Class={create:function(){
return function(){
this.initialize.apply(this,arguments);
};
}};
Object.extend=function(_1,_2){
for(property in _2){
_1[property]=_2[property];
}
return _1;
};
Function.prototype.bind=function(_3){
var _4=this;
return function(){
return _4.apply(_3,arguments);
};
};
Function.prototype.bindAsEventListener=function(_5){
var _6=this;
return function(_7){
_6.call(_5,_7||window.event);
};
};
function $(){
if(arguments.length==1){
return get$(arguments[0]);
}
var _8=[];
$c(arguments).each(function(el){
_8.push(get$(el));
});
return _8;
function get$(el){
if(typeof el=="string"){
el=document.getElementById(el);
}
return el;
}
}
if(!window.Element){
var Element=new Object();
}
Object.extend(Element,{remove:function(_b){
_b=$(_b);
_b.parentNode.removeChild(_b);
},hasClassName:function(_c,_d){
_c=$(_c);
if(!_c){
return;
}
var _e=false;
_c.className.split(" ").each(function(cn){
if(cn==_d){
_e=true;
}
});
return _e;
},addClassName:function(_10,_11){
_10=$(_10);
Element.removeClassName(_10,_11);
_10.className+=" "+_11;
},removeClassName:function(_12,_13){
_12=$(_12);
if(!_12){
return;
}
var _14="";
_12.className.split(" ").each(function(cn,i){
if(cn!=_13){
if(i>0){
_14+=" ";
}
_14+=cn;
}
});
_12.className=_14;
},cleanWhitespace:function(_17){
_17=$(_17);
$c(_17.childNodes).each(function(_18){
if(_18.nodeType==3&&!/\S/.test(_18.nodeValue)){
Element.remove(_18);
}
});
},find:function(_19,_1a){
_19=$(_19)[_1a];
while(_19.nodeType!=1){
_19=_19[_1a];
}
return _19;
}});
var Position={cumulativeOffset:function(_1b){
var _1c=0,valueL=0;
do{
_1c+=_1b.offsetTop||0;
valueL+=_1b.offsetLeft||0;
_1b=_1b.offsetParent;
}while(_1b);
return [valueL,_1c];
}};
document.getElementsByClassName=function(_1d){
var _1e=document.getElementsByTagName("*")||document.all;
var _1f=[];
$c(_1e).each(function(_20){
if(Element.hasClassName(_20,_1d)){
_1f.push(_20);
}
});
return _1f;
};
Array.prototype.iterate=function(_21){
for(var i=0;i<this.length;i++){
_21(this[i],i);
}
};
if(!Array.prototype.each){
Array.prototype.each=Array.prototype.iterate;
}
function $c(_23){
var _24=[];
for(var i=0;i<_23.length;i++){
_24.push(_23[i]);
}
return _24;
}
var Ajax={};
Ajax.Request=Class.create();
Ajax.Request.prototype={initialize:function(url,_27){
this.transport=this.getTransport();
this.postBody=_27.postBody||"";
this.method=_27.method||"post";
this.onSuccess=_27.onSuccess||null;
this.onFailure=_27.onFailure||null;
this.update=$(_27.update)||null;
this.request(url);
},request:function(url){
this.transport.open(this.method,url,true);
this.transport.onreadystatechange=this.onStateChange.bind(this);
if(this.method=="post"){
this.transport.setRequestHeader("Content-type","application/x-www-form-urlencoded");
if(this.transport.overrideMimeType){
this.transport.setRequestHeader("Connection","close");
}
}
this.transport.send(this.postBody);
},onStateChange:function(){
if(this.transport.readyState!=4){
return;
}
if(this.transport.status&&this.transport.status>=200&&this.transport.status<300){
if(this.onSuccess){
setTimeout(function(){
this.onSuccess(this.transport);
}.bind(this),10);
}
if(this.update){
setTimeout(function(){
this.update.innerHTML=this.transport.responseText;
}.bind(this),10);
}
}else{
if(this.onFailure){
setTimeout(function(){
this.onFailure(this.transport);
}.bind(this),10);
}
}
this.transport.onreadystatechange=function(){
};
},getTransport:function(){
if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
}else{
if(window.XMLHttpRequest){
return new XMLHttpRequest();
}else{
return false;
}
}
}};
function ff_skip_spacers(_29,_2a){
if(_29[_2a].nodeName!="#text"){
return _29[_2a];
}
if(_29[_2a+1].nodeName!="#text"){
return _29[_2a+1];
}
if(_29[_2a+2].nodeName!="#text"){
return _29[_2a+2];
}
return null;
}
function ff_build(_2b,_2c,_2d){
if(_2b=="text"){
return document.createTextNode(_2c);
}
elem=document.createElement(_2b);
if(_2c!=null){
for(opt in _2c){
elem[opt]=_2c[opt];
}
}
if(_2d!=null){
for(var ii=0;ii<_2d.length;++ii){
elem.appendChild(_2d[ii]);
}
}
return elem;
}
function ff_edit(_2f,_30){
if(_2f.nodeName!="#text"){
return true;
}
var _31=_2f.parentNode;
var ec=ff_build("textarea",{name:"",rows:"5",cols:"10",value:_2f.data});
var btn=ff_build("button",{value:"OK",onclick:function(){
_2f.data=ec.value;
_31.insertBefore(_2f,ec);
_31.removeChild(ec);
_31.removeChild(btn);
}});
_31.insertBefore(btn,_2f);
_31.insertBefore(ec,_2f);
_31.removeChild(_2f);
return true;
}
function ff_subst(_34,_35,cls){
_34.firstChild.data=_35;
_34.className=cls;
}
function ff_toggle(_37,_38){
var _39=_38.className;
_38.className=_37.className;
_37.className=_39;
}
function ff_cls_nodes(_3a,_3b){
var _3c=[];
for(var ii=0;ii<_3a.childNodes.length;++ii){
if(_3a.childNodes[ii].className==_3b){
_3c.push(_3a.childNodes[ii]);
}
_3c=_3c.concat(ff_cls_nodes(_3a.childNodes[ii],_3b));
}
return _3c;
}
function ff_class_act(_3e,_3f){
var _40=document.getElementsByTagName("*")||document.all;
for(var ii=0;ii<_40.length;++ii){
if(_40[ii].className==_3e){
_3f(_40[ii]);
}
}
}
function ff_get_param(_42,_43){
if(_43==null){
_43=top.location.search;
}
var _44=_43.indexOf(_42+"=");
if(_44<0){
return null;
}
_44+=_42.length+1;
var end=_43.indexOf("&");
if(end<0){
return _43.substring(_44);
}else{
return _43.substring(_44,end);
}
}
function ff_form_elem(_46,_47,_48,el,def){
var inp;
if(_47=="button"){
inp=ff_build("button",_48,[ff_build("text",_46)]);
_46=null;
}else{
inp=ff_build("input",_48);
inp.type=_47;
}
if(el!=null){
el.push([_46,inp]);
}
if(def){
inp.value=def;
}
if(_46){
return [ff_build("label",null,[ff_build("text",_46)]),inp,ff_build("br")];
}else{
return [inp,ff_build("br")];
}
}
var FFStatus=Class.create();
FFStatus.prototype={initialize:function(_4c){
this._elem=_4c;
},read:function(){
if(this._elem.firstChild==null){
return "";
}else{
return this._elem.firstChild.data;
}
},write:function(_4d){
if(_4d.length>0){
if(this._elem.firstChild==null){
this._elem.appendChild(document.createTextNode(_4d));
}else{
this._elem.firstChild.deleteData(0,this._elem.firstChild.data.length);
this._elem.firstChild.appendData(_4d);
}
}else{
if(this._elem.firstChild!=null){
this._elem.removeChild(this._elem.firstChild);
}
}
}};
function _visc_desc(_4e){
var d=ff_build("div",null);
d.innerHTML=_4e;
return d;
}
function visc_itemfinder(url,_51){
var _52=ff_build("span");
var el=[];
var ch=[_visc_desc(_51),ff_build("br"),_52].concat(_vis_form_elem("item","text",{size:"15"},el,"Buried Treasure"),_vis_form_elem("x","text",{size:"3"},el,"100"),_vis_form_elem("y","text",{size:"3"},el,"100"),_vis_form_elem("GO","button",{onclick:function(){
_vis_load_image(_52,url,el);
}}));
return ff_build("div",null,ch);
}
function visc_survey(url,_56){
var _57=ff_build("span");
var el=[];
var ch=[_visc_desc(_56),ff_build("br"),_57].concat(ff_build("br"),_vis_form_elem("items","text",{size:"30"},el,"My Favorite OS is, Linux!!!->100, OS X->25, Solaris->20, Windows->5"),_vis_form_elem("GO","button",{onclick:function(){
_vis_load_image(_57,url,el);
}}));
return ff_build("div",null,ch);
}
function visc_orgchart(url,_5b){
var _5c=ff_build("span");
var el=[];
var ch=[_visc_desc(_5b),ff_build("br"),_5c].concat(_vis_form_elem("boss","text",{size:"35"},el,"PHB->Dilbert, PHB->Wally, PHB->Alice, Dilbert->Dogbert"),_vis_form_elem("vip","text",{size:"35"},el,"PHB, Dogbert"),_vis_form_elem("title","text",{size:"35"},el,"PHB->Master, Dilbert->Slave"),_vis_form_elem("GO","button",{onclick:function(){
_vis_load_image(_5c,url,el);
}}));
return ff_build("div",null,ch);
}
function visc_wanderer(url,_60){
var ch=[_visc_desc(_60),ff_build("br")].concat(_vis_form_elem("Launch (in New Window)","button",{onclick:function(){
var _62=window.open(url,"","width=300,height=400,resizable");
}}));
return ff_build("div",null,ch);
}
function visc_flightdeck(url,_64){
var _65="<object type=\"application/x-shockwave-flash\" data=\"/fdui-resources/canvases/canvas.swf\" width=\"480\" height=\"360\"> <param name=\"movie\" value=\"/fdui-resources/canvases/canvas.swf\" /> <param name=\"FlashVars\" value=\""+url+"\" /></object>";
var _66=ff_build("div");
var el=[];
var ch=[_visc_desc(_64),ff_build("br"),_66].concat(_vis_form_elem("(Re)Launch Demo","button",{onclick:function(){
_66.innerHTML="";
_66.innerHTML=_65;
}}));
return ff_build("div",null,ch);
}
function vis_navbar(_69,_6a,_6b,_6c){
var _6d=ff_cls_nodes(_69,_6a);
if(_6d.length!=_6c.length){
return;
}
var _6e={selected:null};
for(var ii=0;ii<_6d.length;++ii){
_vis_set_nav(_6d[ii],_6b,_6c[ii],_6e);
}
}
function _vis_set_nav(_70,_71,_72,_73){
_70.onclick=function(){
if(_71.childNodes.length){
_71.removeChild(_71.firstChild);
}
if(_73.selected){
_73.selected.className=_70.className;
}
_73.selected=_70;
_70.className="selected";
_71.appendChild(_72);
};
}
function _vis_form_elem(_74,_75,_76,el,def){
var inp;
if(_75=="button"){
inp=ff_build("button",_76,[ff_build("text",_74)]);
_74=null;
}else{
inp=ff_build("input",_76);
inp.type=_75;
}
if(el!=null){
el.push([_74,inp]);
}
if(def){
inp.value=def;
}
if(_74){
return [ff_build("label",null,[ff_build("text",_74)]),inp,ff_build("br")];
}else{
return [inp,ff_build("br")];
}
}
function _vis_load_image(_7a,url,_7c){
if(_7c==null){
_7c=[];
}
img=ff_build("img");
if(_7a.childNodes.length){
_7a.replaceChild(img,_7a.firstChild);
}else{
_7a.appendChild(img);
}
img.src="/images/spinner.gif";
img.onerror=function(){
_7a.replaceChild(ff_build("p",null,[ff_build("text","Your input is malformed")]),img);
};
params="";
for(var ii=0;ii<_7c.length;++ii){
arg=vis_strip(_7c[ii][1].value);
if(arg){
if(params){
params+="&";
}else{
params+="?";
}
params+=_7c[ii][0]+"="+encodeURIComponent(arg);
}
}
img.src=url+params;
}
function vis_strip(_7e){
return _7e.replace(/^\s+/,"").replace(/\s+$/,"");
}

