if(!window.Jacuba){
window.Jacuba=new Object();
}
//Adding include cssimages/-/en_US/
// Adding insert: cssimages
if(!window.Jacuba)window.Jacuba = new Object();
Jacuba.cssimages = new Object();
Jacuba.cssimages['chart-panel'] = new Array();
Jacuba.cssimages['chart-panel'][0] = "/images/chart/panel_back.gif";
Jacuba.cssimages['pie-plain-3d'] = new Array();
Jacuba.cssimages['pie-plain-3d'][0] = "/images/chart/pie_3d.gif";
Jacuba.cssimages['bar-plain'] = new Array();
Jacuba.cssimages['bar-plain'][0] = "/images/chart/bar_plain.gif";
Jacuba.cssimages['chart-label-link-odd'] = new Array();
Jacuba.cssimages['chart-label-link-odd'][0] = "/images/chart/table_2.gif";
Jacuba.cssimages['topLeftCell'] = new Array();
Jacuba.cssimages['topLeftCell'][0] = "/images/chart/table_topleft.gif";
Jacuba.cssimages['butt-save-hover'] = new Array();
Jacuba.cssimages['butt-save-hover'][0] = "/images/chart/save.gif";
Jacuba.cssimages['pie-plain'] = new Array();
Jacuba.cssimages['pie-plain'][0] = "/images/chart/pie.gif";
Jacuba.cssimages['tab-middle'] = new Array();
Jacuba.cssimages['tab-middle'][0] = "/images/chart/tab_onbackground.gif";
Jacuba.cssimages['tab-middle'][1] = "/images/chart/tab_offbackground.gif";
Jacuba.cssimages['bar-stacked-3d'] = new Array();
Jacuba.cssimages['bar-stacked-3d'][0] = "/images/chart/bar_stacked_3d.gif";
Jacuba.cssimages['summary-merge-both'] = new Array();
Jacuba.cssimages['summary-merge-both'][0] = "/images/chart/both_1_2.gif";
Jacuba.cssimages['summary-merge-both'][1] = "/images/chart/both_2_1.gif";
Jacuba.cssimages['butt-print-hover'] = new Array();
Jacuba.cssimages['butt-print-hover'][0] = "/images/chart/print.gif";
Jacuba.cssimages['warning'] = new Array();
Jacuba.cssimages['warning'][0] = "/images/chart/warning.gif";
Jacuba.cssimages['butt-save'] = new Array();
Jacuba.cssimages['butt-save'][0] = "/images/chart/save.gif";
Jacuba.cssimages['butt-data-options-pressed'] = new Array();
Jacuba.cssimages['butt-data-options-pressed'][0] = "/images/chart/data.gif";
Jacuba.cssimages['charts-logo'] = new Array();
Jacuba.cssimages['charts-logo'][0] = "/images/chart/logo.gif";
Jacuba.cssimages['summary-merge-rows'] = new Array();
Jacuba.cssimages['summary-merge-rows'][0] = "/images/chart/rows_1.gif";
Jacuba.cssimages['summary-merge-rows'][1] = "/images/chart/rows_2.gif";
Jacuba.cssimages['butt-data-options-hover'] = new Array();
Jacuba.cssimages['butt-data-options-hover'][0] = "/images/chart/data.gif";
Jacuba.cssimages['body'] = new Array();
Jacuba.cssimages['body'][0] = "/images/chart/info_icon.gif";
Jacuba.cssimages['bar-plain-3d'] = new Array();
Jacuba.cssimages['bar-plain-3d'][0] = "/images/chart/bar_plain_3d.gif";
Jacuba.cssimages['bar-overlapped'] = new Array();
Jacuba.cssimages['bar-overlapped'][0] = "/images/chart/bar_overlapped.gif";
Jacuba.cssimages['remove-button'] = new Array();
Jacuba.cssimages['remove-button'][0] = "/images/chart/remove.gif";
Jacuba.cssimages['butt-chart'] = new Array();
Jacuba.cssimages['butt-chart'][0] = "/images/chart/chart.gif";
Jacuba.cssimages['label-tooltip-arrow'] = new Array();
Jacuba.cssimages['label-tooltip-arrow'][0] = "/images/chart/arrow_more.gif";
Jacuba.cssimages['quick-bar'] = new Array();
Jacuba.cssimages['quick-bar'][0] = "/images/chart/databar_bg.gif";
Jacuba.cssimages['error'] = new Array();
Jacuba.cssimages['error'][0] = "/images/chart/error_icon.gif";
Jacuba.cssimages['summary-merge-columns'] = new Array();
Jacuba.cssimages['summary-merge-columns'][0] = "/images/chart/columns_1.gif";
Jacuba.cssimages['summary-merge-columns'][1] = "/images/chart/columns_2.gif";
Jacuba.cssimages['pie-elliptic'] = new Array();
Jacuba.cssimages['pie-elliptic'][0] = "/images/chart/pie_elliptic.gif";
Jacuba.cssimages['tab-left'] = new Array();
Jacuba.cssimages['tab-left'][0] = "/images/chart/tab_onleft.gif";
Jacuba.cssimages['tab-left'][1] = "/images/chart/tab_offleft.gif";
Jacuba.cssimages['chart-label-link-even'] = new Array();
Jacuba.cssimages['chart-label-link-even'][0] = "/images/chart/table_1.gif";
Jacuba.cssimages['butt-help-hover'] = new Array();
Jacuba.cssimages['butt-help-hover'][0] = "/images/chart/help.gif";
Jacuba.cssimages['butt-help'] = new Array();
Jacuba.cssimages['butt-help'][0] = "/images/chart/help.gif";
Jacuba.cssimages['butt-chart-hover'] = new Array();
Jacuba.cssimages['butt-chart-hover'][0] = "/images/chart/chart.gif";
Jacuba.cssimages['summary-merge-neither'] = new Array();
Jacuba.cssimages['summary-merge-neither'][0] = "/images/chart/none_1.gif";
Jacuba.cssimages['summary-merge-neither'][1] = "/images/chart/none_2.gif";
Jacuba.cssimages['bar-stacked'] = new Array();
Jacuba.cssimages['bar-stacked'][0] = "/images/chart/bar_stacked.gif";
Jacuba.cssimages['butt-settings-hover'] = new Array();
Jacuba.cssimages['butt-settings-hover'][0] = "/images/chart/options.gif";
Jacuba.cssimages['butt-settings'] = new Array();
Jacuba.cssimages['butt-settings'][0] = "/images/chart/options.gif";
Jacuba.cssimages['butt-data-options'] = new Array();
Jacuba.cssimages['butt-data-options'][0] = "/images/chart/data.gif";
Jacuba.cssimages['butt-chart-pressed'] = new Array();
Jacuba.cssimages['butt-chart-pressed'][0] = "/images/chart/chart.gif";
Jacuba.cssimages['butt-settings-pressed'] = new Array();
Jacuba.cssimages['butt-settings-pressed'][0] = "/images/chart/options.gif";
Jacuba.cssimages['butt-print'] = new Array();
Jacuba.cssimages['butt-print'][0] = "/images/chart/print.gif";
Jacuba.cssimages['tab-right'] = new Array();
Jacuba.cssimages['tab-right'][0] = "/images/chart/tab_onright.gif";
Jacuba.cssimages['tab-right'][1] = "/images/chart/tab_offright.gif";
Jacuba.cssimages['pie-elliptic-3d'] = new Array();
Jacuba.cssimages['pie-elliptic-3d'][0] = "/images/chart/pie_elliptic_3d.gif";

if(!Jacuba.debug){
Jacuba.debug=function(_1,_2){
if(_2){
if(window.Jacuba&&window.Jacuba.DEBUG_LEVEL&&_2>window.Jacuba.DEBUG_LEVEL){
return;
}
}
var _3=document.getElementById("debug");
if(_3){
_3.appendChild(document.createTextNode(_1));
_3.appendChild(document.createElement("BR"));
}
if(Jacuba.Coding&&Jacuba.Coding.debug){
Jacuba.Coding.debug(_1);
}
};
}
if(!Jacuba.stackTracer){
Jacuba.stackTracer=new Object();
Jacuba.stackTracer.stack=new Array();
Jacuba.stackTracer.push=function(_4){
if(!_4){
alert("! stack frame required");
}
Jacuba.stackTracer.stack[Jacuba.stackTracer.stack.length]=_4;
};
Jacuba.stackTracer.pop=function(_5){
if(Jacuba.stackTracer.stack.length>0){
var _6=Jacuba.stackTracer.stack[Jacuba.stackTracer.stack.length-1];
if(_5&&_5!=_6){
alert("! popped frame was not on top");
}
Jacuba.stackTracer.stack.length=Jacuba.stackTracer.stack.length-1;
}else{
alert("! stack is empty");
}
};
Jacuba.stackTracer.getTrace=function(){
var s="";
for(var x=Jacuba.stackTracer.stack.length-1;x>=0;x--){
s+=Jacuba.stackTracer.stack[x]+"\r\n";
}
return s;
};
}
if(!Jacuba.ErrorHandler&&!window.onerror){
Jacuba.ErrorHandler=new Object();
Jacuba.ErrorHandler.listeners=new Array();
Jacuba.ErrorHandler.reportError=function(_9,url,_11){
Jacuba.debug("ERROR: "+_9+" ("+url+":"+_11+")",1);
for(var x=0;x<Jacuba.ErrorHandler.listeners.length;x++){
var _12=Jacuba.ErrorHandler.listeners[x];
if(_12!=null){
_12.receiveError(_9,url,_11);
}
}
};
Jacuba.ErrorHandler.addListener=function(_13){
if(!_13){
throw "A listener must be supplied";
}
if(!_13.receiveError){
throw "Supplied listener does not have a 'receiveError' method";
}
Jacuba.ErrorHandler.listeners[Jacuba.ErrorHandler.listeners.length]=_13;
};
Jacuba.ErrorHandler.removeListener=function(_14){
for(var x=0;x<Jacuba.ErrorHandler.listeners.length;x++){
if(Jacuba.ErrorHandler.listeners[x]==_14){
Jacuba.ErrorHandler.listeners[x]=null;
break;
}
}
};
window.onerror=function(msg,url,_16){
Jacuba.ErrorHandler.reportError(msg,url,_16);
};
Jacuba.ErrorHandler.installCoding=function(){
Jacuba.Coding.applyToObject("ErrorHandler",Jacuba.ErrorHandler);
};
}
if(!Jacuba.detectBrowser){
Jacuba.detectBrowser=function(){
var _17=navigator.userAgent.toLowerCase();
var _18,substring;
var _19,OS,version;
var _20=function(str){
_18=_17.indexOf(str)+1;
substring=str;
return _18;
};
if(_20("konqueror")){
_19="KQ";
OS="LX";
}else{
if(_20("safari")){
_19="SF";
}else{
if(_20("omniweb")){
_19="OW";
}else{
if(_20("opera")){
_19="OP";
}else{
if(_20("webtv")){
_19="TV";
}else{
if(_20("icab")){
_19="IC";
}else{
if(_20("msie")){
_19="IE";
}else{
if(!_20("compatible")){
_19="NS";
version=_17.charAt(8);
}else{
_19="";
}
}
}
}
}
}
}
}
if(!version){
version=_17.charAt(_18+substring.length);
}
if(!OS){
if(_20("linux")){
OS="LX";
}else{
if(_20("x11")){
OS="UX";
}else{
if(_20("mac")){
OS="MC";
}else{
if(_20("win")){
OS="WN";
}else{
OS="";
}
}
}
}
}
Jacuba.BROWSER_NAME=_19;
Jacuba.BROWSER_VERSION=version;
Jacuba.BROWSER_OS=OS;
};
Jacuba.detectBrowser();
}
if(!window.Jacuba.I18N){
window.Jacuba.I18N=new Object();
}
//Converting properties to en_US
Jacuba.I18N.LANG = "en_US";
if(!window.Jacuba){
window.Jacuba=new Object();
}
//Adding include textmanager/-/en_US/
if(!window.Jacuba){
window.Jacuba=new Object();
}
if(!window.Jacuba.TextManager){
window.Jacuba.TextManager=new Object();
Jacuba.TextManager.init=function(){
this.inited=true;
this.holders=new Array();
if(this.lang==null){
this.lang=Jacuba.I18N.LANG;
}
};
if(!window.Jacuba.TextManager.inited){
Jacuba.TextManager.init();
}
Jacuba.TextManager.setLanguage=function(_1){
if(this.lang==_1){
return;
}
this.lang=_1;
for(var x in Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]){
this.loadText(x);
}
Jacuba.I18N.LANG=this.lang;
for(var x=0;x<this.holders.length;x++){
this.holders[x].update();
}
};
Jacuba.TextManager.loadText=function(_3){
if(Jacuba.I18N.loaded_packs[this.lang][_3]!=null){
return;
}
var _4=false;
var _5=Jacuba.I18N.loaded_packs[this.lang];
if(_5!=null){
var _6=_5[_3];
if(_6!=null){
_4=true;
}
}
if(!_4){
}
};
Jacuba.TextManager.getText=function(_7,_8){
var _9=Jacuba.I18N.loaded_packs[this.lang][_7][_8];
for(var x=2;x<arguments.length;x++){
_9=_9.replace(new RegExp("\\$\\{"+(x-2)+"\\}","g"),arguments[x]);
}
return _9;
};
Jacuba.TextManager.setElementText=function(_10,_11,_12){
this.holders[this.holders.length]=new Jacuba.TextManager.TextHolderElement(_10,_11,_12,true);
};
Jacuba.TextManager.setElementValue=function(_13,_14,_15){
this.holders[this.holders.length]=new Jacuba.TextManager.ValueHolderElement(_13,_14,_15);
};
Jacuba.TextManager.setOptionText=function(_16,_17,_18){
this.holders[this.holders.length]=new Jacuba.TextManager.OptionHolder(_16,_17,_18);
};
Jacuba.TextManager.TextHolderElement=function(_19,_20,_21,_22){
this.html=_19;
this.module=_20;
this.textid=_21;
this.ishtml=_22!=null?_22:false;
this.update();
};
Jacuba.TextManager.TextHolderElement.prototype.update=function(){
var _23=Jacuba.TextManager.getText(this.module,this.textid);
if(this.ishtml){
this.html.innerHTML=_23;
}else{
while(this.html.firstChild){
this.html.removeChild(this.html.firstChild);
}
this.html.appendChild(document.createTextNode(_23));
}
};
Jacuba.TextManager.ValueHolderElement=function(_24,_25,_26){
this.html=_24;
this.module=_25;
this.textid=_26;
this.update();
};
Jacuba.TextManager.ValueHolderElement.prototype.update=function(){
var _27=Jacuba.TextManager.getText(this.module,this.textid);
this.html.value=_27;
};
Jacuba.TextManager.OptionHolder=function(_28,_29,_30){
this.html=_28;
this.module=_29;
this.textid=_30;
this.update();
};
Jacuba.TextManager.OptionHolder.prototype.update=function(){
var _31=Jacuba.TextManager.getText(this.module,this.textid);
this.html.text=_31;
};
Jacuba.TextManager.installCoding=function(){
if(!Jacuba.Coding){
alert("Coding framework not available");
return;
}
Jacuba.Coding.applyToObject("TextManager",Jacuba.TextManager);
Jacuba.Coding.applyToClass("TextManager.TextHolderElement");
Jacuba.Coding.applyToClass("TextManager.ValueHolderElement");
Jacuba.Coding.applyToClass("TextManager.OptionHolder");
};
}

//Adding include comm/-/en_US/
if(!window.Jacuba){
window.Jacuba=new Object();
}
if(!window.Jacuba.Comm){
if(!Jacuba.debug){
Jacuba.debug=function(_1,_2){
if(_2){
if(window.Jacuba&&window.Jacuba.DEBUG_LEVEL&&_2>window.Jacuba.DEBUG_LEVEL){
return;
}
}
var _3=document.getElementById("debug");
if(_3){
_3.appendChild(document.createTextNode(_1));
_3.appendChild(document.createElement("BR"));
}
if(Jacuba.Coding&&Jacuba.Coding.debug){
Jacuba.Coding.debug(_1);
}
};
}
//Converting properties to en_US
Jacuba.I18N.MSG = {server_nocomp: "Server failed to specifiy target of communication", already_inprogress: "Communication already in progress!", nocomp: "No component with id \"${0}\"", noclient_commreceive: "Supplied client object does not have a 'commReceive' method.", nocontext: "No communication context with id '${0}'", noclient: "A client object must be supplied!"};
if(!window.Jacuba.I18N.loaded_packs){
Jacuba.I18N.loaded_packs=new Object();
}
if(!window.Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]){
Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]=new Object();
}
Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]["comm"]=Jacuba.I18N.MSG;
window.Jacuba.Comm=new Object();
Jacuba.Comm.LOG_RECORD_HEADINGS=new Array("Context","Client","Activity","Method","URL","Description");
//Converting properties to en_US
Jacuba.Comm.MAX_ATTEMPTS = 3;
Jacuba.Comm.RETRY_INTERVAL = 500;
Jacuba.Comm.contexts=new Object();
Jacuba.Comm.curr_context=null;
Jacuba.Comm.iframe_parent=null;
Jacuba.Comm.log_buffer=new Array();
Jacuba.Comm.log_pointer=0;
Jacuba.Comm.log_length=50;
Jacuba.Comm.log_count=0;
Jacuba.Comm.held_data=new Object();
Jacuba.Comm.held_data_counter=0;
Jacuba.Comm.hold=function(_4){
var id=(Jacuba.Comm.held_data_counter++)+"";
Jacuba.Comm.held_data[id]=_4;
return id;
};
Jacuba.Comm.getHeld=function(id){
return Jacuba.Comm.held_data[id];
};
Jacuba.Comm.withdrawHeld=function(id){
var _6=Jacuba.Comm.held_data[id];
delete Jacuba.Comm.held_data[id];
return _6;
};
Jacuba.Comm.request=function(_7,_8,_9,_10,_11){
var _12=0;
if(arguments.length>5){
var _13=arguments[5];
if(_13!=null){
if(typeof _13!="number"){
throw "! attempt number must be numeric: "+_13+" ("+(typeof _13)+")";
}
_12=_13;
}
}
if(_7==null){
alert(Jacuba.TextManager.getText("comm","noclient"));
return;
}
if(!_7.commReceive){
alert(Jacuba.TextManager.getText("comm","noclient_commreceive"));
return;
}
var _14=false;
for(var i in Jacuba.Comm.contexts){
var _16=Jacuba.Comm.contexts[i];
if(!_16.inUse()){
_16.request(_7,_8,_9,_10,_11,_12);
_14=true;
break;
}
}
if(!_14){
var _16=new Jacuba.Comm.Context();
_16.request(_7,_8,_9,_10,_11,_12);
Jacuba.Comm.contexts[_16.getId()]=_16;
}
};
Jacuba.Comm.getActiveCommCount=function(){
var _17=0;
for(var i in Jacuba.Comm.contexts){
var _18=Jacuba.Comm.contexts[i];
if(_18.inUse()){
_17++;
}
}
return _17;
};
Jacuba.Comm.doWhenIdle=function(fn){
if(Jacuba.Comm.getActiveCommCount()==0){
Jacuba.debug("no active comms doing work now");
fn();
}else{
Jacuba.debug("enqueuing work");
if(!Jacuba.Comm.pending_fns){
Jacuba.Comm.pending_fns=new Array();
}
Jacuba.Comm.pending_fns[Jacuba.Comm.pending_fns.length]=fn;
}
};
Jacuba.Comm.serverSend=function(){
var _20=Jacuba.Comm.curr_context;
if(_20==null){
alert(Jacuba.TextManager.getText("comm","server_norecipient"));
return;
}
var _21=new Object();
_21.url=_20.url;
_21.arguments=new Array();
for(var i=0;i<arguments.length;i++){
_21.arguments[i]=arguments[i];
}
_20.client.commReceive(_21);
};
Jacuba.Comm.serverError=function(msg,_23){
var _24=Jacuba.Comm.curr_context;
if(_24==null){
alert(Jacuba.TextManager.getText("comm","server_norecipient"));
return;
}
Jacuba.Comm.logError(_24,msg);
var _25=false;
var _26=new Jacuba.Comm.ErrorResponse(_24,msg,_23);
if(_24.client.commReceiveError){
_25=_24.client.commReceiveError(_26);
}
if(!_25){
var _27=false;
if(_23=="too_busy"){
var _28=_26.getAttemptNumber();
if(_28<Jacuba.Comm.MAX_ATTEMPTS){
_27=true;
}
}
if(_27){
_26.retry();
_25=true;
}
}
if(!_25){
alert("Server Error: "+msg);
}
};
Jacuba.Comm.response=function(_29,fn){
Jacuba.debug("received response in context "+_29);
var _30=Jacuba.Comm.contexts[_29];
if(_30==null){
alert(Jacuba.TextManager.getText("comm","nocontext",_29));
return;
}
_30.receive(fn);
};
Jacuba.Comm.contextClosed=function(_31){
if(Jacuba.Comm.pending_fns){
Jacuba.debug("pending fns ("+Jacuba.Comm.getActiveCommCount()+" active)");
if(Jacuba.Comm.getActiveCommCount()==0){
for(var x=0;x<Jacuba.Comm.pending_fns.length;x++){
Jacuba.Comm.pending_fns[x]();
}
Jacuba.Comm.pending_fns=null;
}
}
};
Jacuba.Comm.errorResponse=function(msg){
var s="Server has reported a problem:\r\n"+msg+"\r\n\r\n";
s+="Active communications:\r\n";
for(var i in Jacuba.Comm.contexts){
var _34=Jacuba.Comm.contexts[i];
if(_34.inUse()){
s+=_34.getId()+": ";
if(_34.client.id){
s+="client="+_34.client.id;
}
s+="url="+_34.url+"\r\n";
}
}
alert(s);
};
Jacuba.Comm.ensureIFrameParent=function(){
if(Jacuba.Comm.iframe_parent){
return;
}
var div=document.createElement("DIV");
div.style.position="absolute";
div.style.top="0px";
div.style.left="0px";
document.body.appendChild(div);
Jacuba.Comm.iframe_parent=div;
};
Jacuba.Comm.addLogRecord=function(_36){
if(Jacuba.Coding&&Jacuba.Coding.log){
var _37=Jacuba.Coding.getLoggingCategory("comm");
if(!_37){
Jacuba.Coding.defineLoggingCategory("comm",Jacuba.Comm.LOG_RECORD_HEADINGS);
}
var _38=new Array();
for(var x=0;x<_36.length;x++){
_38[x]=_36[x];
}
Jacuba.Coding.log(_38,"comm");
}
var _39=Jacuba.Comm.log_pointer++;
if(Jacuba.Comm.log_pointer>=Jacuba.Comm.log_length){
Jacuba.Comm.log_pointer=0;
}
_36[_36.length]=""+(Jacuba.Comm.log_count++);
Jacuba.Comm.log_buffer[_39]=_36;
};
Jacuba.Comm.logRequest=function(_40,_41){
var _42=_40.client;
if(_42){
_42=_42.id;
}else{
_42="N/A";
}
if(!_42){
_42="?";
}
var _43=_40.desc;
if(_40.attempt_count>0){
_43+=" (ATTEMPT "+(_40.attempt_count+1)+")";
}
var _44=new Array(_40.getId(),_42,"request",_41?"POST":"GET",_40.url,_43);
Jacuba.Comm.addLogRecord(_44);
};
Jacuba.Comm.logResponse=function(_45,_46){
var _47=_45.client;
if(_47){
_47=_47.id;
}else{
_47="N/A";
}
if(!_47){
_47="?";
}
var _48=new Array(_45.getId(),_47,"response","-",_45.url,_46);
Jacuba.Comm.addLogRecord(_48);
};
Jacuba.Comm.logError=function(_49,_50){
var _51=_49.client;
if(_51){
_51=_51.id;
}else{
_51="N/A";
}
if(!_51){
_51="?";
}
var _52=new Array(_49.getId(),_51,"ERROR","-",_49.url,_50);
Jacuba.Comm.addLogRecord(_52);
};
Jacuba.Comm.updateLogTable=function(_53){
if(!_53){
return;
}
while(_53.firstChild){
_53.removeChild(_53.firstChild);
}
var _54=document.createElement("TBODY");
_53.appendChild(_54);
var tr,td;
tr=document.createElement("TR");
_54.appendChild(tr);
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="Context";
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="Client";
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="Activity";
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="Method";
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="URL";
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="Description";
th=document.createElement("TH");
tr.appendChild(th);
th.innerHTML="No";
if(Jacuba.Comm.log_buffer.length==0){
return;
}
var _56=Jacuba.Comm.log_buffer.length==Jacuba.Comm.log_length?Jacuba.Comm.log_pointer:0;
var _57=Jacuba.Comm.log_buffer.length==Jacuba.Comm.log_length?_56-1:Jacuba.Comm.log_buffer.length-1;
if(_57<0){
_57=Jacuba.Comm.log_buffer.length-1;
}
while(true){
var _58=Jacuba.Comm.log_buffer[_56];
tr=document.createElement("TR");
_54.appendChild(tr);
for(var i=0;i<_58.length;i++){
var td=document.createElement("TD");
tr.appendChild(td);
td.innerHTML=_58[i];
}
if(_56==_57){
break;
}
_56++;
if(_56>=Jacuba.Comm.log_buffer.length){
_56=0;
}
}
};
Jacuba.Comm.sha1Hash=function(msg){
var K=[1518500249,1859775393,2400959708,3395469782];
msg_bytes=Jacuba.Comm.utf8(msg);
msg_bytes[msg_bytes.length]=128;
var l=Math.ceil(msg_bytes.length/4)+2;
var N=Math.ceil(l/16);
var M=new Array(N);
for(var i=0;i<N;i++){
M[i]=new Array(16);
for(var j=0;j<16;j++){
M[i][j]=(msg_bytes[i*64+j*4]<<24)|(msg_bytes[i*64+j*4+1]<<16)|(msg_bytes[i*64+j*4+2]<<8)|(msg_bytes[i*64+j*4+3]);
}
}
M[N-1][14]=((msg_bytes.length-1)>>>30)*8;
M[N-1][15]=((msg_bytes.length-1)*8)&4294967295;
var H0=1732584193;
var H1=4023233417;
var H2=2562383102;
var H3=271733878;
var H4=3285377520;
var W=new Array(80);
var a,b,c,d,e;
for(var i=0;i<N;i++){
for(var t=0;t<16;t++){
W[t]=M[i][t];
}
for(var t=16;t<80;t++){
W[t]=Jacuba.Comm.sha1HashROTL(W[t-3]^W[t-8]^W[t-14]^W[t-16],1);
}
a=H0;
b=H1;
c=H2;
d=H3;
e=H4;
for(var t=0;t<80;t++){
var s=Math.floor(t/20);
var T=(Jacuba.Comm.sha1HashROTL(a,5)+Jacuba.Comm.sha1HashF(s,b,c,d)+e+K[s]+W[t])&4294967295;
e=d;
d=c;
c=Jacuba.Comm.sha1HashROTL(b,30);
b=a;
a=T;
}
H0=(H0+a)&4294967295;
H1=(H1+b)&4294967295;
H2=(H2+c)&4294967295;
H3=(H3+d)&4294967295;
H4=(H4+e)&4294967295;
}
return Jacuba.Comm.sha1HashToHexStr(H0)+Jacuba.Comm.sha1HashToHexStr(H1)+Jacuba.Comm.sha1HashToHexStr(H2)+Jacuba.Comm.sha1HashToHexStr(H3)+Jacuba.Comm.sha1HashToHexStr(H4);
};
Jacuba.Comm.utf8=function(_74){
var c,s;
var enc=new Array();
var i=0;
while(i<_74.length){
c=_74.charCodeAt(i++);
if(c>=56320&&c<57344){
continue;
}
if(c>=55296&&c<56320){
if(i>=_74.length){
continue;
}
s=_74.charCodeAt(i++);
if(s<56320||c>=56832){
continue;
}
c=((c-55296)<<10)+(s-56320)+65536;
}
if(c<128){
enc[enc.length]=c;
}else{
if(c<2048){
enc[enc.length]=192+(c>>6);
enc[enc.length]=128+(c&63);
}else{
if(c<65536){
enc[enc.length]=224+(c>>12);
enc[enc.length]=128+(c>>6&63);
enc[enc.length]=128+(c&63);
}else{
enc[enc.length]=240+(c>>18);
enc[enc.length]=128+(c>>12&63);
enc[enc.length]=128+(c>>6&63);
enc[enc.length]=128+(c&63);
}
}
}
}
return enc;
};
Jacuba.Comm.sha1HashF=function(s,x,y,z){
switch(s){
case 0:
return (x&y)^(~x&z);
case 1:
return x^y^z;
case 2:
return (x&y)^(x&z)^(y&z);
case 3:
return x^y^z;
}
};
Jacuba.Comm.sha1HashROTL=function(x,n){
return (x<<n)|(x>>>(32-n));
};
Jacuba.Comm.sha1HashToHexStr=function(num){
var s="",v;
for(var i=7;i>=0;i--){
v=(num>>>(i*4))&15;
s+=v.toString(16);
}
return s;
};
Jacuba.Comm.Context=function(){
this.id=(Jacuba.Comm.Context.id_counter++)+"";
this.iframe_ok=false;
this.method=null;
};
Jacuba.Comm.Context.id_counter=0;
Jacuba.Comm.Context.prototype.getId=function(){
return this.id;
};
Jacuba.Comm.Context.prototype.getDescription=function(fn){
return this.desc;
};
Jacuba.Comm.Context.prototype.request=function(_81,url,_83,_84,_85,_86){
this.client=_81;
this.url=url;
this.desc=_84;
this.parent=_85;
this.props=_83;
this.method=_83?"POST":"GET";
this.attempt_count=_86;
var msg=_81.id+" requests via context "+this.id+" - "+(_83?"props":"no props")+(_84?" - "+_84:"");
Jacuba.debug(msg);
Jacuba.Comm.logRequest(this,_83);
this.ensureIFrame();
if(Jacuba.DEBUG){
this.iframe.style.border="1px solid #00FF00";
}
var win=this.iframe.contentWindow;
if(this.method=="GET"){
this.method="GET";
var _88=this.url;
var _89=_88.indexOf("?");
if(_89==-1){
_88+="?";
}else{
_88+="&";
}
_88+="timestamp="+new Date().getTime();
var url="javascript: \"<html><head><script>function loaded(){parent.Jacuba.Comm.contexts['"+this.id+"'].iframe_ok = true; if (jacubaRun){parent.Jacuba.Comm.response('"+this.id+"',jacubaRun);}}</scr"+"ipt><script type='text/javascript' src=\\\""+_88+"\\\"></scr"+"ipt></head><body>";
if(_84){
url+=_84;
}
url+="</body></html>\"";
win.location.replace(url);
}else{
this.method="POST";
var _90=this.commId();
var _91="<FORM id=\"form\" action=\""+url+"\" method=\"POST\" onsubmit=\"parent.Jacuba.debug('POSTED props')\">";
_91+="<INPUT type=\"HIDDEN\" name=\"comm_context-id\" value=\""+this.id+"\">";
_91+="<INPUT type=\"HIDDEN\" name=\"comm_response-type\" value=\"document\">";
_91+="<INPUT type=\"HIDDEN\" name=\"comm_id\" value=\""+_90+"\">";
for(var x in _83){
_91+="<INPUT type=\"HIDDEN\" name=\""+Jacuba.Comm.Context.escapeHTML(x)+"\" value=\""+Jacuba.Comm.Context.escapeHTML(_83[x])+"\">";
}
_91+="</FORM>";
var _92=Jacuba.Comm.hold(_91);
Jacuba.debug(_91);
var doc="<HTML><HEAD><meta content=\"text/html; charset=UTF-8\" http-equiv=\"content-type\"></meta><script>function loaded(){var context=parent.Jacuba.Comm.contexts['"+this.id+"']; var content = parent.Jacuba.Comm.withdrawHeld('"+_92+"'); document.body.innerHTML = content; document.getElementById('form').submit(); context.posted();};if(window.addEventListener){window.addEventListener(\"load\",loaded,false);}else{window.attachEvent(\"onload\", loaded)}</scr"+"ipt></HEAD><BODY>";
if(_84){
doc+=_84;
}
doc+="</BODY></HTML>";
var url=doc.replace(/"/g,"\\\"");
this.stored_iframe=this.iframe;
this.iframe=this.createCommIFrame();
this.iframe.style.display="";
this.iframe.src="javascript:\""+url+"\"";
this.addIFrameToDocument(this.iframe);
}
};
Jacuba.Comm.Context.prototype.posted=function(){
this.iframe_ok=true;
Jacuba.debug("SUBMITING FORM");
var _94=this.commId();
var _95=this.url;
if(_95.indexOf("?")==-1){
_95=this.url+"?comm_get="+_94;
}else{
_95+="&comm_get="+_94;
}
Jacuba.Comm.request(this.client,_95,null,this.desc?"["+this.id+"] "+this.desc:null,this,this.attempt_count);
};
Jacuba.Comm.Context.prototype.getProperties=function(){
if(this.props){
return this.props;
}
if(this.parent){
return this.parent.getProperties();
}
};
Jacuba.Comm.Context.prototype.childClosed=function(){
Jacuba.Comm.logResponse(this,"response supplied by parallel request");
if(!this.iframe_ok){
Jacuba.Comm.logError(this,"Failed to submit data!");
if(!Jacuba.DEBUG){
this.iframe.parentNode.removeChild(this.iframe);
}else{
this.iframe.style.border="1px solid #FF0000";
}
this.iframe=null;
}
this.close();
};
Jacuba.Comm.Context.prototype.receive=function(fn){
if(Jacuba.DEBUG){
this.iframe.style.border="1px solid #FFFF00";
}
var _96=this.iframe.contentWindow.comm_description;
if(!_96){
_96="response: "+this.desc;
}
Jacuba.Comm.logResponse(this,_96);
var _97=Jacuba.Comm.curr_context;
Jacuba.Comm.curr_context=this;
if(fn!=null){
fn();
}
Jacuba.Comm.curr_context=_97;
this.close();
};
Jacuba.Comm.Context.prototype.close=function(){
if(this.method=="POST"){
if(this.iframe){
if(Jacuba.DEBUG){
this.iframe.style.border="1px solid #00FFFF";
}else{
this.iframe.parentNode.removeChild(this.iframe);
}
this.iframe=null;
}
}
this.client=null;
this.url=null;
this.desc=null;
this.comm_id=null;
this.props=null;
this.iframe_ok=false;
this.method=null;
this.attempt_count=null;
if(this.parent){
this.parent.childClosed();
this.parent=null;
}
if(this.iframe){
if(!Jacuba.DEBUG){
this.iframe.style.display="none";
}else{
this.iframe.style.border="1px solid #666666";
}
}
Jacuba.Comm.contextClosed(this);
};
Jacuba.Comm.Context.prototype.inUse=function(){
return this.client!=null;
};
Jacuba.Comm.Context.prototype.ensureIFrame=function(){
if(this.iframe!=null){
return;
}
if(this.stored_iframe!=null){
this.iframe=this.stored_iframe;
this.stored_iframe=null;
return;
}
this.iframe=this.createCommIFrame();
this.addIFrameToDocument(this.iframe);
};
Jacuba.Comm.Context.prototype.createCommIFrame=function(){
var _98=document.createElement("IFRAME");
_98.src="javascript:\"\"";
if(!Jacuba.DEBUG){
_98.style.display="none";
_98.style.width="1px";
_98.style.height="1px";
_98.frameBorder="0";
_98.style.margin="0px";
_98.style.border="0px";
}else{
_98.style.border="1px solid #666666";
}
return _98;
};
Jacuba.Comm.Context.prototype.addIFrameToDocument=function(_99){
if(Jacuba.DEBUG){
document.getElementsByTagName("BODY")[0].appendChild(_99);
}else{
Jacuba.Comm.ensureIFrameParent();
Jacuba.Comm.iframe_parent.appendChild(_99);
}
};
Jacuba.Comm.Context.prototype.commId=function(){
if(this.comm_id){
return this.comm_id;
}
var _100=navigator.userAgent.toLowerCase();
var rnd=Math.round((Math.random()*10000));
var time=new Date();
this.comm_id=Jacuba.Comm.sha1Hash(_100+rnd+time+"");
return this.comm_id;
};
Jacuba.Comm.Context.prototype.disposeIFrame=function(){
if(this.iframe==null){
return;
}
this.iframe.parentNode.removeChild(this.iframe);
this.iframe=null;
};
Jacuba.Comm.Context.escapeHTML=function(str){
if(str==null){
return "";
}
return str.toString().replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");
};
Jacuba.Comm.ErrorResponse=function(_104,msg,code){
this.client=_104.client;
this.url=_104.url;
this.desc=_104.desc;
this.props=_104.getProperties();
this.attempt_count=_104.attempt_count;
this.msg=msg;
this.code=code;
};
Jacuba.Comm.ErrorResponse.prototype.retry=function(wait){
var _107=this.client;
var _108=this.url;
var _109=this.desc;
var _110=this.props;
var _111=this.attempt_count+1;
var pos=_108.lastIndexOf("comm_get");
if(pos!=-1){
var pos2=_108.indexOf("&",pos);
var _114="";
if(pos2!=-1){
_114=_108.substring(pos2+1,_108.length);
}
_108=_108.substring(0,pos)+_114;
if(_108.charAt(_108.length-1)=="?"){
_108=_108.substring(0,_108.length-1);
}
}
var work=function(){
Jacuba.Comm.request(_107,_108,_110,_109,null,_111);
};
var key=Jacuba.Comm.hold(work);
if(wait==null){
wait=Math.pow(2,this.attempt_count)*Jacuba.Comm.RETRY_INTERVAL;
}
Jacuba.Comm.doWhenIdle(function(){
window.setTimeout("Jacuba.Comm.withdrawHeld(\""+key+"\")()",wait);
});
};
Jacuba.Comm.ErrorResponse.prototype.getMessage=function(){
return this.msg;
};
Jacuba.Comm.ErrorResponse.prototype.getCode=function(){
return this.code;
};
Jacuba.Comm.ErrorResponse.prototype.getRequestProperties=function(){
return this.props;
};
Jacuba.Comm.ErrorResponse.prototype.getRequestURL=function(){
return this.url;
};
Jacuba.Comm.ErrorResponse.prototype.getRequestDescription=function(){
return this.desc;
};
Jacuba.Comm.ErrorResponse.prototype.getAttemptNumber=function(){
return this.attempt_count;
};
Jacuba.Comm.installCoding=function(){
if(!Jacuba.Coding){
alert("Coding framework not available");
return;
}
Jacuba.Coding.applyToObject("Comm",Jacuba.Comm);
Jacuba.Coding.applyToClass("Comm.ErrorResponse");
Jacuba.Coding.applyToClass("Comm.Context");
};
}

//Converting properties to en_US
Jacuba.I18N.MSG = {Y_Axis: "Y-Axis label", Bar: "Bar", plain: "Plain", Direction: "Direction", Text_color_help: "The color that should be used for the text", no_image: "There is no image tag with id \"${0}\"", merged_both_tip: "Rows and Columns with the same heading are merged.", Advanced: "Advanced", Axes: "Axes", Point_shapes: "Mark plotted points with shapes", reset: "reset", bad_width: "The supplied width must be a number", merged_both: "Merge Rows and Columns", color1: "Color 1", too_busy: "Unfortunately the charting service is too busy to handle your request at this time, please try again later", Second: "Second", Pie_plain: "Plain", Font_style: "Font style", color2: "Color 2", Generate: "Make Chart", Plain_3D: "Plain 3D", opacity: "Opacity", Stacked: "Stacked", bad_index: "Bad value for property \"${0}\", the index ${1} is not permitted, should be: ${2}", Print: "Print", title_help: "The title of the chart", Point_shapes_help: "Places shapes on the plotted points when checked", Courier: "Courier", excluded_row_conflict: "Cannot select row ${0} as it has been excluded", print: "Print", missing_chart_type: "A chart type must be selected", Elliptic3d: "Elliptic 3D", length_help: "The largest value that can appear on the value axis.", General: "General", merged_rows_tip: "Rows with the same heading are merged.", merge_columns: "Merge Columns", aggregation_help: "Add another table from the website to aggregate data.  The name of the tables appear above.  When there is more than one table, options will become available to merge them.", Chart_Type: "Chart Type", Stacked_3D: "Stacked 3D", missing_rows: "At least one row must be selected", Plain: "Plain", Close: "Close", chart: "Chart", Line: "Line", chart_type_help: "The type of the chart", merge_rows: "Merge Rows", height_help: "The height of the chart image", quick_help: "Quick Help", Legend: "Legend", bad_length: "The supplied end value must be a number", aggregation_tip: "<strong>Tip:</strong> Options apply to merging the table below the options with the aggregation of those above", Settings: "Settings", Chart_Type_Window_Title: "Advanced Chart Options - ${0}", Times_New_Roman: "Times New Roman", Size: "Size", X_Axis: "X-Axis label", Normal: "Normal", Verdana: "Verdana", font_style_help: "The style of the text to used in the chart.", Aggregation: "Aggregation", font_help: "The name of the font to be used for text in the chart", Show_legend: "Show legend", modified: "(modified)", Default: "Default", missing_bar_style: "A style of bar chart must be selected", Modified: "(Modified)", merge_collision: "Cell Merging", loading_message: "Loading...", missing_columns: "At least one column must be selected", Text_size: "Text size", bold: "Bold", Title: "Title", missing_table_element: "There is no table HTML tag with the id \"${0}\"", Axis_labels: "Axis labels", missing_offset: "Start value must be specified if an end value is supplied", italic: "Italic", data_options: "Data Options", Elliptic: "Elliptic", Width: "Width", show_legend_help: "Whether or not the chart should have a legend.", pie_elliptic_help: "Produces an elliptical (rather than circular) pie chart when checked", Area: "Area", missing_width: "A width must be supplied", save: "Save", Background_color: "Background color", offset_help: "The smallest value that can appear on the value axis.", Cancel: "Cancel", Overlapped: "Overlapped", merged_neither: "No Merging", collision_sum_tip: "Where a cell is in both tables the values from the two tables are added together.", First: "First", collision_either_tip: "Where a cell is in both tables a non empty cell is chosen where possible.", Orientation: "Orientation", theme_help: "Pre-set color settings", advanced: "advanced", settings: "Settings", ThreeD: "3D", missing_height: "A height must be supplied", bad_offset: "The supplied start value must be a number", missing_chart_area_element: "There is no HTML tag with the id \"${0}\"", pie3d_help: "Renders the pie chart in 3D when checked", Offset: "Start value", Choose_Color: "Choose Color", server_error: "Server Error", width_help: "The width of the chart image", Preview: "Preview", Height: "Height", Reverse: "Reverse", orientation_help: "Chart rotated 90 degrees when reversed", bad_text_size: "Text size must be a positive number", Gradient_fill: "Gradient fill", text_size_help: "The text size is the point size that the text should appear in the chart.", Okay: "Okay", merged_columns: "Merge Columns", Sum: "Sum", merged_rows: "Merge Rows", bold_italic: "Bold italic", Arial: "Arial", bad_height: "The supplied height must be a number", collision_first_tip: "Where a cell is in both tables the cell is taken from first table.", remove: "remove", merged_neither_tip: "Rows of second table are appended to the bottom, Columns of second table are appended to the right.", xaxis_help: "The label of the x-axis.", collision_second_tip: "Where a cell is in both tables the cell is taken from second table.", Text_color: "Text color", Fill_style: "Fill Style", bad_offset_length: "End value must be bigger than start value", form_error: "Form Error", Length: "End value", help: "Help", yaxis_help: "The label of the y-axis.", excluded_column_conflict: "Cannot select column ${0} as it has been excluded", Bar_style: "Chart style", Background_color_help: "The color that should be used as the background for the chart", SansSerif: "Sans Serif", Font: "Font", missing_chart_area_id: "The id of the chart area tag must be supplied as a \"chart-area\" form field.", Pie_style: "Chart style", missing_table_id: "The id of the table must be supplied as a \"table\" form field.", Theme: "Theme", Save: "Save", tip: "<strong>Tip:</strong> Use the check boxes to turn data on and off - Click on colored squares to change chart colors", Pie: "Pie", Chart: "Chart", Reset: "Reset", Back: "Back", Either: "Either", Help: "Help", merged_columns_tip: "Columns with the same heading are merged."};
if(!window.Jacuba.I18N.loaded_packs){
Jacuba.I18N.loaded_packs=new Object();
}
if(!window.Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]){
Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]=new Object();
}
Jacuba.I18N.loaded_packs[Jacuba.I18N.LANG]["chart"]=Jacuba.I18N.MSG;
Jacuba.Chart=function(_56,_57,_58){
Jacuba.TextManager.loadText("chart");
this.id="Chart:"+(Jacuba.Chart.ID_COUNTER++);
Jacuba.debug("Creating chart "+this.id,2);
this.criteria_elem=_56;
this.criteria=new Jacuba.Chart.Criteria(_56);
Jacuba.Chart.charts[this.id]=this;
this.attempt_count=0;
var _59=this.criteria.get("table");
if(_59==null||_59.length==0){
alert(Jacuba.Chart.Util.getText("missing_table_id"));
return;
}
var _60=document.getElementById(_59);
if(_60==null){
alert(Jacuba.Chart.Util.getText("missing_table_element",_59));
return;
}
this.table_elem=_60;
this.data=new Jacuba.Chart.Table(_60);
var msg=Jacuba.Chart.initialCheck(this.data,this.criteria);
if(msg!=null){
alert(msg);
return;
}
if(_58){
this.aggregator=new Jacuba.Chart.Aggregator(this);
this.aggregator.addChart(_60,_56);
}
this.criteriaInit();
if(_57==null){
_57=this.criteria.get("chart-area");
}
var _61=null;
if(_57==null){
var _62=this.criteria.get("may-edit")!="false";
if(_62){
_61=document.createElement("DIV");
_56.style.display="none";
_56.parentNode.insertBefore(_61,_56);
var _63=this.criteria.get("width");
if(_63!=null&&_63.length!=0){
if(!Jacuba.Chart.Util.isNumeric(_63)){
alert(Jacuba.Chart.Util.getText("bad_width"));
return;
}
_61.style.width=parseFloat(_63)+"px";
}
var _64=this.criteria.get("height");
if(_64==null||_64.length==0){
alert(Jacuba.Chart.Util.getText("missing_height"));
return;
}
if(!Jacuba.Chart.Util.isNumeric(_64)){
alert(Jacuba.Chart.Util.getText("bad_height"));
return;
}
if(this.criteria.get("may-edit")=="false"){
_61.style.height=parseFloat(_64)+"px";
}else{
_61.style.height=(parseFloat(_64)+Jacuba.Chart.Interface.JACUBA_BAR_HEIGHT)+"px";
}
}
}else{
_61=document.getElementById(_57);
if(_61==null){
alert(Jacuba.Chart.Util.getText("missing_chart_area_element",_57));
return;
}
}
this.insert(_61);
Jacuba.debug("Chart "+this.id+" created");
};
Jacuba.Chart.selectors=new Array();
Jacuba.Chart.applied_forms=new Array();
Jacuba.Chart.charts=new Object();
Jacuba.Chart.applyTo=function(){
Jacuba.debug("Chart.applyTo called",2);
var _65=Jacuba.Chart.selectors;
for(var i=0;i<arguments.length;i++){
var _67=arguments[i];
if(_67==null){
throw "null selector at index "+i;
}
if(!_67.match(/^\s*(class|id|name|element)\s*\:\s*(\S+)\s*$/)){
throw "illegal selector: "+_67;
}
var _67={axis:RegExp.$1,value:RegExp.$2};
_65[_65.length]=_67;
}
Jacuba.Chart.applyToSelections();
Jacuba.debug("applyTo completed",2);
};
Jacuba.Chart.isFormApplied=function(_68){
if(_68==null){
throw "no form";
}
for(var i=0;i<Jacuba.Chart.applied_forms.length;i++){
if(Jacuba.Chart.applied_forms[i]==_68){
return true;
}
}
return false;
};
Jacuba.Chart.initialCheck=function(_69,_70){
var _71=_70.get("rows");
if(_71!=null){
var _72=_69.rowCount();
var _73=new Jacuba.Chart.Util.NumberSet(_71);
var _74=_73.containsHigher(_72-1);
if(_74!=-1){
return Jacuba.TextManager.getText("chart","bad_index","rows",_74+"","0-"+(_72-1));
}
var _75=_70.get("excluded-rows");
if(_75!=null){
var _76=new Jacuba.Chart.Util.NumberSet(_75);
for(var x=0;x<_72;x++){
if(_73.contains(x)&&_76.contains(x)){
return Jacuba.TextManager.getText("chart","excluded_row_conflict",x+"");
}
}
}
}
var _77=_70.get("columns");
if(_77!=null){
var _78=_69.columnCount();
var _79=new Jacuba.Chart.Util.NumberSet(_77);
var _74=_79.containsHigher(_78-1);
if(_74!=-1){
return Jacuba.TextManager.getText("chart","bad_index","columns",_74+"","0-"+(_78-1));
}
var _80=_70.get("excluded-columns");
if(_80!=null){
var _81=new Jacuba.Chart.Util.NumberSet(_80);
for(var x=0;x<_78;x++){
if(_79.contains(x)&&_81.contains(x)){
return Jacuba.TextManager.getText("chart","excluded_column_conflict",x+"");
}
}
}
}
return null;
};
Jacuba.Chart.applyToSelections=function(){
var _82=Jacuba.Chart.selectors;
var _83=document.getElementsByTagName("FORM");
Jacuba.debug(_83.length+" forms found",2);
for(var i=0;i<_83.length;i++){
var _84=_83[i];
for(var j=0;j<_82.length;j++){
var _86=_82[j];
var _87;
var _88=_86.value;
switch(_86.axis){
case "element":
_87=_84.nodeName==_86.value;
break;
case "class":
_87=_84.className==_86.value;
break;
case "name":
_87=_84.name==_86.value;
break;
case "id":
_87=_84.id==_86.value;
break;
default:
_87=false;
}
if(_87&&!Jacuba.Chart.isFormApplied(_84)){
Jacuba.debug("form matches and hasn't already been applied",1);
var _89=true;
if(_86.axis!="id"){
var _90=_84.elements;
Jacuba.debug(_90.length+" elements in form",1);
var _91=false;
var _92=false;
for(var k=0;k<_90.length;k++){
Jacuba.debug(_90[k].name+" "+(_90[k].name=="table"),1);
if(_90[k].name=="table"){
_91=true;
}
if(_90[k].name=="generated-form"){
_92=true;
}
}
_89=_91&&!_92;
}
if(_89){
Jacuba.debug("Applying chart");
new Jacuba.Chart(_84);
Jacuba.Chart.applied_forms[Jacuba.Chart.applied_forms.length]=_84;
}
}
}
}
};
Jacuba.Chart.getCharts=function(){
var _94=new Array();
for(var x in Jacuba.Chart.charts){
_94[_94.length]=Jacuba.Chart.charts[x].getMediator();
}
return results;
};
Jacuba.Chart.getChartByElementId=function(id){
if(id==null){
throw "an element id must be supplied";
}
var _95;
for(var x in Jacuba.Chart.charts){
var _96=Jacuba.Chart.charts[x];
if((_96.criteria_elem&&_96.criteria_elem.id==id)||(_96.table_elem&&_96.table_elem.id==id)||(_96.chart_image&&_96.chart_image.id==id)){
_95=_96;
break;
}
}
return _95?_95.getMediator():null;
};
Jacuba.Chart.prototype.addChart=function(_97,_98,_99,_100,_101){
if(this.aggregator){
this.aggregator.addChart(_97,_98,_99,_100,_101);
}else{
throw "chart cannot aggregate";
}
this.load();
};
//Converting properties to en_US
Jacuba.Chart.HOST = "www.jacuba.com";
Jacuba.Chart.PORT = "80";
Jacuba.Chart.SERVICE_BASE = "http://www.jacuba.com:80/service/";
Jacuba.Chart.URL_BASE = "http://www.jacuba.com:80/service/charter/-/en_US/";
Jacuba.Chart.IMG_BASE = "http://www.jacuba.com:80/images/";
Jacuba.Chart.TRANSP_IMG = "";
Jacuba.Chart.JACUBA_LOGO_IMG = "";
Jacuba.Chart.WARNING_IMG_WIDTH = 51;
Jacuba.Chart.WARNING_IMG_HEIGHT = 45;
Jacuba.Chart.META_URL = "";
Jacuba.Chart.MAKE_CHART_URL = "";
Jacuba.Chart.GRADIENT_PREVIEW_URL = "";
Jacuba.Chart.THEME_URL = "";
Jacuba.Chart.FONT_URL = "";
Jacuba.Chart.HELP_URL = "http://www.jacuba.com:80/chart/userhelp.html";
Jacuba.Chart.CACHE_SIZE = 10;
Jacuba.Chart.INITIAL_RETRY_INTERVAL = 500;
Jacuba.Chart.MAX_RETRIES = 3;
Jacuba.Chart.changeProtocol=function(_102,url){
var _103=_102;
var pos1=url.indexOf("://");
var pos2=url.indexOf("/",pos1+3);
var pos3=url.indexOf(":",pos1+3);
var epos=pos3==-1?pos2:Math.min(pos2,pos3);
if(epos==-1){
epos=url.length;
}
var host=url.substring(pos1+3,epos);
_103+="://"+host;
if(pos2!=-1){
_103+=url.substring(pos2);
}
return _103;
};
Jacuba.Chart.PROTOCOL="http";
if(window.location.href.indexOf("https:")==0){
Jacuba.Chart.PROTOCOL="https";
if(Jacuba.Chart.SERVICE_BASE!=""){
Jacuba.Chart.SERVICE_BASE=Jacuba.Chart.changeProtocol(Jacuba.Chart.PROTOCOL,Jacuba.Chart.SERVICE_BASE);
}
if(Jacuba.Chart.IMG_BASE!=""){
Jacuba.Chart.IMG_BASE=Jacuba.Chart.changeProtocol(Jacuba.Chart.PROTOCOL,Jacuba.Chart.IMG_BASE);
}
if(Jacuba.Chart.URL_BASE!=""){
Jacuba.Chart.URL_BASE=Jacuba.Chart.changeProtocol(Jacuba.Chart.PROTOCOL,Jacuba.Chart.URL_BASE);
}
}
if(Jacuba.Chart.URL_BASE==""){
Jacuba.Chart.URL_BASE=Jacuba.Chart.SERVICE_BASE+"charter/-/"+Jacuba.I18N.LANG+"/";
}
if(Jacuba.Chart.TRANSP_IMG==""){
Jacuba.Chart.TRANSP_IMG=Jacuba.Chart.IMG_BASE+"i.gif";
}
if(Jacuba.Chart.JACUBA_LOGO_IMG==""){
Jacuba.Chart.JACUBA_LOGO_IMG=Jacuba.Chart.IMG_BASE+"logo47x18.gif";
}
if(Jacuba.Chart.META_URL==""){
Jacuba.Chart.META_URL=Jacuba.Chart.URL_BASE;
}
if(Jacuba.Chart.MAKE_CHART_URL==""){
Jacuba.Chart.MAKE_CHART_URL=Jacuba.Chart.URL_BASE;
}
if(Jacuba.Chart.GRADIENT_PREVIEW_URL==""){
Jacuba.Chart.GRADIENT_PREVIEW_URL=Jacuba.Chart.SERVICE_BASE+"gradient/-/"+Jacuba.I18N.LANG+"/";
}
if(Jacuba.Chart.THEME_URL==""){
Jacuba.Chart.THEME_URL=Jacuba.Chart.SERVICE_BASE+"charttheme/-/"+Jacuba.I18N.LANG+"/";
}
if(Jacuba.Chart.FONT_URL==""){
Jacuba.Chart.FONT_URL=Jacuba.Chart.SERVICE_BASE+"chartfont/-/"+Jacuba.I18N.LANG+"/";
}
Jacuba.Chart.LANGUAGE_MODULE="chart";
Jacuba.Chart.ID_COUNTER=0;
Jacuba.Chart.DELIMETERS=new Array();
Jacuba.Chart.DELIMETERS[0]="q";
Jacuba.Chart.DELIMETERS[1]="Z";
Jacuba.Chart.DELIMETERS[2]="qx";
Jacuba.Chart.DELIMETERS[3]="qZ";
Jacuba.Chart.held_data=new Object();
Jacuba.Chart.held_data_counter=0;
Jacuba.Chart.hold=function(data){
var id=(Jacuba.Chart.held_data_counter++)+"";
Jacuba.Chart.held_data[id]=data;
return id;
};
Jacuba.Chart.getHeld=function(id){
return Jacuba.Chart.held_data[id];
};
Jacuba.Chart.withdrawHeld=function(id){
var val=Jacuba.Chart.held_data[id];
delete Jacuba.Chart.held_data[id];
return val;
};
Jacuba.Chart.prototype.cache=null;
Jacuba.Chart.prototype.getMediator=function(){
if(this.mediator){
return this.mediator;
}
this.mediator=new Jacuba.Chart.Mediator(this);
return this.mediator;
};
Jacuba.Chart.prototype.loadData=function(){
this.data=this.aggregator?this.aggregator.getTable():new Jacuba.Chart.Table(this.table_elem);
this.criteriaInit();
};
Jacuba.Chart.prototype.loadProperties=function(){
this.criteria=this.aggregator?this.aggregator.getCriteria():new Jacuba.Chart.Criteria(this.criteria_elem);
this.criteriaInit();
};
Jacuba.Chart.prototype.load=function(){
this.data=this.aggregator?this.aggregator.getTable():new Jacuba.Chart.Table(this.table_elem);
this.criteria=this.aggregator?this.aggregator.getCriteria():new Jacuba.Chart.Criteria(this.criteria_elem);
this.criteriaInit();
if(this.iface){
this.iface.criteriaChanged();
this.iface.refresh();
}
};
Jacuba.Chart.prototype.criteriaInit=function(){
Jacuba.stackTracer.push("Jacuba.Chart.prototype.criteriaInit");
var msg=Jacuba.Chart.initialCheck(this.data,this.criteria);
if(msg!=null){
alert(msg);
return;
}
var _111=this.criteria.get("title");
if(_111==null||_111.length==0){
var _112=this.data.getCaption();
if(_112!=null&&_112.length!=0){
this.criteria.set("title",_112);
}
}
var rows=this.criteria.get("rows");
if(rows==null||rows.length==0){
var _114=this.criteria.get("column-heading-row");
var _115=new Jacuba.Chart.Util.NumberSet(this.criteria.get("excluded-rows"));
var ns=new Jacuba.Chart.Util.NumberSet();
var _117=this.data.rowCount();
for(var x=0;x<_117;x++){
if(!_115.contains(x)&&x!=_114){
ns.add(x);
}
}
this.criteria.set("rows",ns.toString());
}
var _118=this.criteria.get("columns");
if(_118==null||_118.length==0){
var _119=this.criteria.get("row-heading-column");
var _120=new Jacuba.Chart.Util.NumberSet(this.criteria.get("excluded-columns"));
var ns=new Jacuba.Chart.Util.NumberSet();
var _121=this.data.columnCount();
for(var x=0;x<_121;x++){
if(!_120.contains(x)&&x!=_119){
ns.add(x);
}
}
this.criteria.set("columns",ns.toString());
}
Jacuba.stackTracer.pop("Jacuba.Chart.prototype.criteriaInit");
};
Jacuba.Chart.prototype.insert=function(elem){
if(this.criteria.get("may-edit")!="false"){
this.html=elem;
var _123=document.createElement("DIV");
_123.className="chart-interface";
elem.appendChild(_123);
this.insertInterface(_123);
}else{
this.generate();
}
};
Jacuba.Chart.prototype.alert=function(_124,_125){
if(this.iface!=null){
this.iface.alert(_124,_125);
}else{
alert(_125);
}
};
Jacuba.Chart.prototype.queuePriorityWork=function(work){
if(this.work_queue==null){
this.work_queue=new Jacuba.Chart.Util.List();
}
this.work_queue.insert(work,0);
if(this.work_queue.length==1){
window.setTimeout("Jacuba.Chart.charts['"+this.id+"'].doWork()",5);
}
};
Jacuba.Chart.prototype.isQueued=function(work){
return this.work_queue&&this.work_queue.contains(work);
};
Jacuba.Chart.prototype.queueWork=function(work){
if(this.work_queue==null){
this.work_queue=new Jacuba.Chart.Util.List();
}
this.work_queue.append(work);
if(this.work_queue.length==1){
window.setTimeout("Jacuba.Chart.charts['"+this.id+"'].doWork()",5);
}
};
Jacuba.Chart.prototype.hasWork=function(){
return this.work_queue&&this.work_queue.length>0;
};
Jacuba.Chart.prototype.workCount=function(){
return this.work_queue?this.work_queue.length:0;
};
Jacuba.Chart.prototype.getWork=function(_127){
return this.work_queue?this.work_queue.get(_127):null;
};
Jacuba.Chart.prototype.doWork=function(){
var work=this.work_queue.get(0);
this.work_queue.remove(0);
var _128=this.work_queue.length;
if(typeof work=="string"){
eval(work);
}else{
work();
}
if(_128>0){
window.setTimeout("Jacuba.Chart.charts['"+this.id+"'].doWork()",5);
}
};
Jacuba.Chart.prototype.insertInterface=function(elem){
Jacuba.debug("inserting interface table for chart: "+this.id,1);
Jacuba.Chart.ImageManager.block();
this.iface=new Jacuba.Chart.Interface(this,elem);
this.iface.init();
var _129=function(){
Jacuba.debug("will release images when comms idle ("+Jacuba.Comm.getActiveCommCount()+")");
Jacuba.Comm.doWhenIdle(Jacuba.Chart.ImageManager.release);
};
this.iface.doWhenReady(_129);
};
Jacuba.Chart.prototype.generate=function(_130){
Jacuba.stackTracer.push("Jacuba.Chart.prototype.generate");
var _131;
if(this.iface!=null){
if(!this.iface.isReady()){
var work="Jacuba.Chart.interfaces['"+this.iface.id+"'].chart.generate()";
if(!this.isQueued(work)){
this.queueWork(work);
this.iface.updateLoadingMessage();
}
return;
}
_131=this.iface.getCriteria();
}else{
var _132=null;
var _133=this.criteria.get("theme");
if(_133){
_132=Jacuba.Chart.ThemeManager.getTheme(_133);
if(!_132.isLoaded()){
var t=this;
var fn=function(){
t.generate();
};
_132.addOnloadFunction(fn);
_132.load();
return;
}
}
_131=this.criteria.clone();
if(_132!=null){
var _136=_132.getProperties();
var _137=new Array();
for(var x in _136){
if(x.indexOf("plot-color-")==0){
var _138=parseInt(x.substring(11));
_137[_138]=_136[x];
}else{
var curr=_131.get(x);
if(!curr){
_131.set(x,_136[x]);
}
}
}
var plot=_131.get("plot");
var _141=new Jacuba.Chart.Util.NumberSet(_131.get(plot));
var _142=_141.getMembers();
for(var x=0;x<_142.length;x++){
var _143=_137[x];
var key="plot-color-"+_142[x];
if(_143&&!_131.get(key)){
_131.set(key,_143);
}
}
}
_131.removeClientOnly();
}
var msg=Jacuba.Chart.Util.validateCriteria(_131);
if(msg!=null){
this.alert(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"form_error"),msg);
return;
}
var _145=this.data.toDataString();
var _146=_131.toDataString();
var _147=this.data.getKey();
var _148=Jacuba.Chart.Util.makeKey(_147+_146);
this.table_data_str=_145;
this.criteria_data_str=_146;
this.chart_key=_148;
this.table_key_str=_147;
var url=null;
if(this.cache!=null){
var img=this.cache.get(_148);
if(img!=null){
url=img.src;
}
}
this.after_generate_fn=_130;
if(url!=null){
this.displayChart(_148,url);
if(this.after_generate_fn){
this.after_generate_fn();
this.after_generate_fn=null;
}
}else{
Jacuba.debug("Requesting from server: "+_148,2);
var url=Jacuba.Chart.META_URL+"?id="+this.id+"&table-key="+_147+"&chart-key="+_148;
this.requestJavascript(url,"transmitting table and chart key");
}
Jacuba.stackTracer.pop("Jacuba.Chart.prototype.generate");
};
Jacuba.Chart.prototype.retryGenerate=function(){
this.generate(this.after_generate_fn);
};
Jacuba.Chart.prototype.requestJavascript=function(url,desc){
Jacuba.Chart.requestJavascript(url,this,desc);
};
Jacuba.Chart.prototype.commReceive=function(_151){
var args=_151.arguments;
if(args.length>0){
this.receive(args[0],args.length>1?args[1]:null);
}
};
Jacuba.Chart.prototype.commReceiveError=function(_153){
var _154=false;
if(_153.getCode()=="too_busy"){
var _155=this.attempt_count;
var wait=this.retry_wait;
var _157=false;
if(_155<Jacuba.Chart.MAX_RETRIES){
_157=true;
}
if(_157){
if(wait==null){
wait=Jacuba.Chart.INITIAL_RETRY_INTERVAL;
}else{
wait=wait*2;
}
this.retry_wait=wait;
var _158=_153.getRequestProperties();
if(_158!=null&&_158["criteria"]){
var _159="Jacuba.Chart.charts['"+this.id+"'].retryGenerate()";
var work=function(){
window.setTimeout(_159,wait);
};
this.queueWork(work);
this.attempt_count++;
}else{
_153.retry(wait);
}
}else{
this.alert(Jacuba.Chart.Util.getText("server_error"),Jacuba.Chart.Util.getText("too_busy"));
}
_154=true;
}
return _154;
};
Jacuba.Chart.prototype.receive=function(_160,url){
Jacuba.debug(this.id+" recieved status "+_160,2);
if(_160!=0){
this.sendChartData(_160==2,_160!=0);
}else{
if(this.retry_wait!=null){
this.retry_wait=this.retry_wait/2;
if(this.retry_wait<Jacuba.Chart.INITIAL_RETRY_INTERVAL){
this.retry_wait=null;
}
}
this.attempt_count=0;
this.displayChart(this.chart_key,url);
if(this.after_generate_fn){
this.after_generate_fn();
this.after_generate_fn=null;
}
}
};
Jacuba.Chart.prototype.sendChartData=function(_161,_162){
var _163=new Object();
if(_161){
_163["table"]=this.table_data_str;
}else{
_163["table-key"]=this.table_key_str;
}
if(_162){
_163["criteria"]=this.criteria_data_str;
}else{
_163["criteria-key"]=this.criteria_data_str;
}
Jacuba.Comm.request(this,Jacuba.Chart.MAKE_CHART_URL,_163,"send chart data");
};
Jacuba.Chart.prototype.displayChart=function(key,url){
if(this.cache==null){
this.cache=new Jacuba.Chart.Util.Cache(Jacuba.Chart.CACHE_SIZE);
}
var img=this.cache.get(key);
if(img==null){
if(!url||url.length==0){
url=Jacuba.Chart.MAKE_CHART_URL+"?chart-key="+key;
}else{
if(url.charAt(0)=="?"){
url=Jacuba.Chart.MAKE_CHART_URL+url;
}
}
img=new Object();
img.src=url;
this.cache.put(key,img);
}
this.cache.requested(key);
Jacuba.debug("showing chart: "+img.src);
if(this.iface){
this.iface.displayChart(img);
}else{
var _164=this.criteria.get("image");
if(_164!=null){
var _165=document.getElementById(_164);
if(_165==null){
alert(Jacuba.TextManager.getText("chart","no_image",_164));
}else{
Jacuba.Chart.ImageManager.setSrc(_165,img.src,true);
this.chart_image=_165;
}
}else{
var _166=this.chart_image?this.chart_image:this.criteria_elem;
this.chart_image=document.createElement("IMG");
Jacuba.Chart.ImageManager.setSrc(this.chart_image,img.src,true);
_166.parentNode.insertBefore(this.chart_image,_166);
}
}
};
Jacuba.Chart.prototype.print=function(){
var _167=this.iface?this.iface.chart_image:this.chart_image;
if(_167!=null){
if(this.print_frame==null){
var _168=document.createElement("IFRAME");
_168.style.width="1px";
_168.style.height="1px";
_168.frameBorder="0";
_168.style.margin="0px";
_168.style.border="0px";
document.body.appendChild(_168);
this.print_frame=_168;
}
var doc="<HTML><HEAD><TITLE>"+this.criteria.get("title")+"</TITLE></HEAD><BODY onload=\"window.focus(); window.print();\"><IMG src=\""+_167.src+"\"></BODY></HTML>";
var url=doc.replace(/"/g,"\\\"");
this.print_frame.contentWindow.location.replace("javascript:\""+url+"\"");
}
};
Jacuba.Chart.prototype.save=function(){
var _170=this.iface?this.iface.chart_image:this.chart_image;
if(_170!=null){
if(Jacuba.BROWSER_NAME=="IE"){
var _171=50;
var _172=50;
var _173=Math.round((screen.height-_172)/2);
var _174=Math.round((screen.width-_171)/2);
window.open(_170.src+"&filename="+this.table_elem.id+".png",null,"width="+_171+",height="+_172+",top="+_173+",left="+_174);
}else{
if(this.save_frame==null){
var _175=document.createElement("IFRAME");
_175.style.width="1px";
_175.style.height="1px";
_175.frameBorder="0";
_175.style.margin="0px";
_175.style.border="0px";
document.body.appendChild(_175);
this.save_frame=_175;
}
this.save_frame.contentWindow.location.replace(_170.src+"&filename="+this.table_elem.id+".png");
}
}
};
Jacuba.Chart.prototype.showInterface=function(){
if(this.chart_area!=null){
this.chart_area.style.display="none";
}
if(this.iface!=null){
this.iface.show();
}
};
Jacuba.Chart.requestJavascript=function(url,from,desc){
Jacuba.debug(from.id+" requests "+url,2);
Jacuba.Comm.request(from,url,null,desc,null);
};
Jacuba.Chart.Mediator=function(_177){
this.chart=_177;
};
Jacuba.Chart.Mediator.prototype.getId=function(){
return this.chart.id;
};
Jacuba.Chart.Mediator.prototype.reload=function(){
this.chart.load();
};
Jacuba.Chart.Mediator.prototype.redraw=function(){
this.chart.generate();
};
Jacuba.Chart.FontManager=new Object();
Jacuba.Chart.FontManager.id="FontManager";
Jacuba.Chart.FontManager.loaded=false;
Jacuba.Chart.FontManager.loading=false;
Jacuba.Chart.FontManager.load=function(){
if(this.loading||this.loaded){
return;
}
this.loading=true;
Jacuba.Comm.request(this,Jacuba.Chart.FONT_URL,null,"requesting font list");
};
Jacuba.Chart.FontManager.addOnloadFunction=function(fn){
if(fn==null){
Jacuba.debug("No function supplied to FontManager.addOnloadFunction");
return;
}
if(this.onload_fns==null){
this.onload_fns=new Array();
}
this.onload_fns[this.onload_fns.length]=fn;
};
Jacuba.Chart.FontManager.isLoaded=function(){
return this.loaded;
};
Jacuba.Chart.FontManager.getFontIds=function(){
if(!this.loaded){
Jacuba.debug("Fonts not loaded");
return null;
}
return this.font_ids;
};
Jacuba.Chart.FontManager.getFontName=function(id){
if(!this.loaded){
Jacuba.debug("Fonts not loaded");
return null;
}
return this.font_names[id];
};
Jacuba.Chart.FontManager.onload=function(){
if(this.onload_fns!=null){
for(var x=0;x<this.onload_fns.length;x++){
this.onload_fns[x]();
}
this.onload_fns=null;
}
};
Jacuba.Chart.FontManager.commReceive=function(_178){
var args=_178.arguments;
this.font_ids=new Array();
this.font_names=new Object();
var _179=0;
for(var x=0;x<args.length;x+=2){
this.font_ids[_179]=args[x];
this.font_names[args[x]]=args[x+1];
_179++;
}
this.loaded=true;
this.loading=false;
if(this.onload_fns!=null){
window.setTimeout("Jacuba.Chart.FontManager.onload()",5);
}
};
Jacuba.Chart.ThemeManager=new Object();
Jacuba.Chart.ThemeManager.themes=new Object();
Jacuba.Chart.ThemeManager.loaded=false;
Jacuba.Chart.ThemeManager.loading=false;
Jacuba.Chart.ThemeManager.onload_fns=null;
Jacuba.Chart.ThemeManager.id="ThemeManager";
Jacuba.Chart.ThemeManager.load=function(){
if(this.loading||this.loaded){
return;
}
this.loading=true;
Jacuba.Comm.request(this,Jacuba.Chart.THEME_URL+"?action=list",null,"requesting theme list");
};
Jacuba.Chart.ThemeManager.addOnloadFunction=function(fn){
if(fn==null){
Jacuba.debug("No function supplied to Theme.addOnloadFunction");
return;
}
if(this.onload_fns==null){
this.onload_fns=new Array();
}
this.onload_fns[this.onload_fns.length]=fn;
};
Jacuba.Chart.ThemeManager.isLoaded=function(){
return this.loaded;
};
Jacuba.Chart.ThemeManager.getThemeIds=function(){
if(!this.loaded){
Jacuba.debug("Themes not loaded");
return null;
}
return this.theme_ids;
};
Jacuba.Chart.ThemeManager.getThemeName=function(id){
if(!this.loaded){
Jacuba.debug("Themes not loaded");
return null;
}
return this.theme_names[id];
};
Jacuba.Chart.ThemeManager.getTheme=function(id){
var _180=this.themes[id];
if(!_180){
_180=new Jacuba.Chart.Theme(id);
this.themes[id]=_180;
}
return _180;
};
Jacuba.Chart.ThemeManager.onload=function(){
if(this.onload_fns!=null){
for(var x=0;x<this.onload_fns.length;x++){
this.onload_fns[x]();
}
this.onload_fns=null;
}
};
Jacuba.Chart.ThemeManager.commReceive=function(_181){
var args=_181.arguments;
this.theme_ids=new Array();
this.theme_names=new Object();
var _182=0;
for(var x=0;x<args.length;x+=2){
this.theme_ids[_182]=args[x];
this.theme_names[args[x]]=args[x+1];
_182++;
}
this.loaded=true;
this.loading=false;
if(this.onload_fns!=null){
window.setTimeout("Jacuba.Chart.ThemeManager.onload()",5);
}
};
Jacuba.Chart.Theme=function(id){
this.id=id;
this.loaded=false;
this.loading=false;
this.props=new Object();
this.onload_fns=null;
};
Jacuba.Chart.Theme.prototype.isLoaded=function(){
return this.loaded;
};
Jacuba.Chart.Theme.prototype.load=function(){
if(this.loaded||this.loading){
return;
}
this.loading=true;
Jacuba.Comm.request(this,Jacuba.Chart.THEME_URL+"?action=get&theme="+this.id,null,"loading theme "+this.id);
};
Jacuba.Chart.Theme.prototype.addOnloadFunction=function(fn){
if(fn==null){
Jacuba.debug("No function supplied to Theme.addOnloadFunction");
return;
}
if(this.onload_fns==null){
this.onload_fns=new Array();
}
this.onload_fns[this.onload_fns.length]=fn;
};
Jacuba.Chart.Theme.prototype.getProperties=function(){
if(!this.loaded){
Jacuba.debug("Theme not loaded!");
return null;
}
return this.props;
};
Jacuba.Chart.Theme.prototype.getPlotColors=function(){
if(this.plot_colors){
return this.plot_colors;
}
var _183=new Array();
for(var x in this.props){
if(x.indexOf("plot-color-")==0){
var _184=parseInt(x.substring(11));
_183[_184]=this.props[x];
}
}
this.plot_colors=_183;
return _183;
};
Jacuba.Chart.Theme.prototype.onload=function(){
if(this.onload_fns!=null){
for(var x=0;x<this.onload_fns.length;x++){
this.onload_fns[x]();
}
this.onload_fns=null;
}
};
Jacuba.Chart.Theme.prototype.commReceive=function(_185){
if(this.loaded){
Jacuba.debug("Theme "+this.id+" received communication after loading complete");
return;
}
var args=_185.arguments;
if(args.length==1&&args[0]=="done"){
this.loaded=true;
this.loading=false;
if(this.onload_fns!=null){
window.setTimeout("Jacuba.Chart.ThemeManager.getTheme(\""+this.id+"\").onload()",5);
}
}else{
if(args.length==2){
var key=args[0];
var val=args[1];
this.props[key]=val;
}else{
Jacuba.debug("Theme "+this.id+" receieved a bad communication");
}
}
};
Jacuba.Chart.Table=function(elem){
if(elem!=null){
this.html=elem;
var trs=new Array();
Jacuba.Chart.Util.getTRLevelElements(elem,trs);
this.rows=new Array();
this.row_count=trs.length;
this.column_count=0;
var _187=0;
for(var y=0;y<trs.length;y++){
if(trs[y].nodeName=="CAPTION"){
this.caption=Jacuba.Chart.Util.nodeTextValue(trs[y]);
}
if(trs[y].nodeName=="TR"){
var _189=0;
var _190=0;
if(this.rows.length<=_187){
this.rows[_187]=new Array();
}
for(var curr=trs[y].firstChild;curr!=null;curr=curr.nextSibling){
while(this.rows[_187][_190]!=null){
_190++;
}
if(curr.nodeName=="TD"||curr.nodeName=="TH"){
var att=curr.getAttribute("colspan");
var _192=att!=null&&att.length!=0?parseInt(att):1;
att=curr.getAttribute("rowspan");
var _193=att!=null&&att.length!=0?parseInt(att):1;
_189+=_192;
var val=Jacuba.Chart.Util.trim(Jacuba.Chart.Util.nodeTextValue(curr));
for(var tmp=0;tmp<_192;tmp++){
this.rows[_187][_190]=val;
if(_193!=1){
for(var tmp2=1;tmp2<_193;tmp2++){
if(this.rows.length<=_187+tmp2){
this.rows[_187+tmp2]=new Array();
}
this.rows[_187+tmp2][_190]=val;
}
}
_190++;
}
}
}
if(_189>this.column_count){
this.column_count=_189;
}
_187++;
}
}
for(var x=0;x<this.rows.length;x++){
if(this.rows[x].length<this.column_count){
for(var i=this.rows[x].length;i<this.column_count;i++){
this.rows[x][i]="";
}
}
}
}else{
this.rows=new Array();
this.row_count=0;
this.column_count=0;
}
};
Jacuba.Chart.Table.prototype.getKey=function(){
if(this.key){
return this.key;
}
this.key=Jacuba.Chart.Util.makeKey(this.toDataString());
return this.key;
};
Jacuba.Chart.Table.prototype.getCaption=function(){
return this.caption;
};
Jacuba.Chart.Table.prototype.columnCount=function(){
return this.rows.length>0?this.rows[0].length:0;
};
Jacuba.Chart.Table.prototype.rowCount=function(){
return this.rows.length;
};
Jacuba.Chart.Table.prototype.toString=function(){
var s="";
for(var y=0;y<this.rows.length;y++){
for(var x=0;x<this.rows[y].length;x++){
if(x!=0){
s+=",";
}
s+=this.rows[y][x];
}
s+="\r\n";
}
return s;
};
Jacuba.Chart.Table.prototype.toHTML=function(){
var _196=document.createElement("TABLE");
_196.setAttribute("border","1");
var _197=document.createElement("TBODY");
_196.appendChild(_197);
for(var y=0;y<this.rows.length;y++){
var tr=document.createElement("TR");
_197.appendChild(tr);
for(var x=0;x<this.rows[y].length;x++){
var td=document.createElement("TD");
tr.appendChild(td);
var _200=this.rows[y][x];
if(_200==null||_200.length==0){
_200="&nbsp;";
}
td.innerHTML="<nobr>"+_200+"</nobr>";
}
}
return _196;
};
Jacuba.Chart.Table.prototype.toDataString=function(){
if(this.data_string){
return this.data_string;
}
var _201="yXQ1Hd7VzR";
var s="";
for(var y=0;y<this.rows.length;y++){
s+=_201+this.rows[y].join(_201);
}
var _202=null;
for(var x=0;x<Jacuba.Chart.DELIMETERS.length;x++){
if(s.indexOf(Jacuba.Chart.DELIMETERS[x])==-1){
_202=Jacuba.Chart.DELIMETERS[x];
break;
}
}
if(_202==null){
_202=Jacuba.Chart.Util.chooseDelimeter(s);
}
s=s.replace(/yXQ1Hd7VzR/g,_202);
this.data_string=_202.length+_202+(this.rows.length!=0?this.rows[0].length:0)+s;
return this.data_string;
};
Jacuba.Chart.Table.prototype.getDelimeter=function(){
for(var x=0;x<Jacuba.Chart.DELIMETERS.length;x++){
var _203=Jacuba.Chart.DELIMETERS[x];
if(!this.contains(_203)){
return _203;
}
}
var _204="yXQ1Hd7VzR";
var s="";
for(var y=0;y<this.rows.length;y++){
for(var x=0;x<this.rows[y].length;x++){
if(x!=0||y!=0){
s+=_204;
}
s+=this.rows[y][x];
}
}
return Jacuba.Chart.Util.chooseDelimeter(s);
};
Jacuba.Chart.Table.prototype.contains=function(str){
for(var y=0;y<this.rows.length;y++){
for(var x=0;x<this.rows[y].length;x++){
if(this.rows[y][x].indexOf(str)!=-1){
return true;
}
}
}
return false;
};
Jacuba.Chart.Criteria=function(elem,_205){
this.html=elem;
this.props=new Object();
if(!_205){
this.props["plot"]="rows";
this.props["orientation"]="normal";
this.props["row-heading-column"]="0";
this.props["column-heading-row"]="0";
this.props["chart-type"]="bar";
this.props["datatype"]="number";
this.props["locale"]="en_US";
this.props["show-legend"]="true";
this.props["bar-style"]="plain";
this.props["open-on"]="chart";
this.props["title-font-family"]="Verdana";
this.props["title-text-size"]="14";
this.props["title-font-style"]="bold";
this.props["may-edit"]="false";
}
if(elem){
for(var i=elem.firstChild;i!=null;i=i.nextSibling){
if(i.nodeName=="INPUT"){
var inp=i;
this.props[inp.name]=inp.value;
}
}
}
if(!_205){
if(!this.props["width"]||!this.props["height"]){
var _207=this.props["image"];
if(_207){
var _208=document.getElementById(_207);
if(_208){
if(!this.props["width"]){
this.props["width"]=_208.offsetWidth;
}
if(!this.props["height"]){
this.props["height"]=_208.offsetHeight;
}
}
}
}
if(!this.props["width"]){
this.props["width"]="700";
}
if(!this.props["height"]){
this.props["height"]="449";
}
}
};
Jacuba.Chart.Criteria.prototype.get=function(prop){
return this.props[prop];
};
Jacuba.Chart.Criteria.prototype.set=function(key,_210){
Jacuba.stackTracer.push("Jacuba.Chart.Criteria.prototype.set");
this.props[key]=_210;
Jacuba.stackTracer.pop("Jacuba.Chart.Criteria.prototype.set");
};
Jacuba.Chart.Criteria.prototype.setAll=function(_211){
for(var x in _211){
this.props[x]=_211[x];
}
};
Jacuba.Chart.Criteria.prototype.remove=function(key){
delete this.props[key];
};
Jacuba.Chart.Criteria.prototype.removeClientOnly=function(){
var a=new Array();
for(var x in this.props){
if(x=="excluded-columns"||x=="excluded-rows"||x=="table"||x=="open-on"||x=="chart-area"||x.indexOf("may-")==0){
a[a.length]=x;
}
}
for(var x=0;x<a.length;x++){
this.remove(a[x]);
}
};
Jacuba.Chart.Criteria.prototype.removeEmptyProperties=function(){
var a=new Array();
for(var i in this.props){
var val=this.props[i];
if(val==null||val.length==0){
a[a.length]=i;
}
}
for(var x=0;x<a.length;x++){
this.remove(a[x]);
}
};
Jacuba.Chart.Criteria.prototype.clone=function(){
var copy=new Jacuba.Chart.Criteria(this.html);
for(var i in this.props){
copy.props[i]=this.props[i];
}
return copy;
};
Jacuba.Chart.Criteria.prototype.toDataString=function(){
var a=new Array();
var _214=0;
for(var x in this.props){
a[_214]=x;
_214++;
}
a.sort();
var _215="yXQ1Hd7VzR";
var s="";
for(var x=0;x<a.length;x++){
var key=a[x];
var val=this.props[key];
if(x!=0){
s+=_215;
}
s+=key+"="+val;
}
var _216=null;
for(var x=0;x<Jacuba.Chart.DELIMETERS.length;x++){
if(s.indexOf(Jacuba.Chart.DELIMETERS[x])==-1){
_216=Jacuba.Chart.DELIMETERS[x];
break;
}
}
if(_216==null){
_216=Jacuba.Chart.Util.chooseDelimeter(s);
}
s=s.replace(/yXQ1Hd7VzR/g,_216);
return _216.length+_216+s;
};
Jacuba.Chart.Criteria.prototype.contains=function(str){
for(var x in this.props){
if(x.indexOf(str)!=-1){
return true;
}
var val=this.props[x];
if(val!=null&&val.indexOf(str)!=-1){
return true;
}
}
return false;
};
Jacuba.Chart.Criteria.prototype.toString=function(){
var s="";
for(var i in this.props){
s+=i+"="+this.props[i]+"\r\n";
}
return s;
};
Jacuba.Chart.interfaces=new Object();
Jacuba.Chart.interface_count=0;
Jacuba.Chart.Interface=function(_217,elem){
elem.style.position="relative";
this.tmp_start=(new Date()).getTime();
this.html=elem;
this.chart=_217;
this.criteria=_217.criteria.clone();
this.inputs=new Array();
this.anchors=new Array();
this.selectboxes=new Array();
this.id=Jacuba.Chart.interface_count+"";
Jacuba.Chart.interface_count++;
Jacuba.Chart.interfaces[this.id]=this;
this.create();
if(Jacuba.ErrorHandler){
Jacuba.ErrorHandler.addListener(this);
}
};
Jacuba.Chart.Interface.prototype.input_focused=false;
Jacuba.Chart.Interface.prototype.inputs=null;
Jacuba.Chart.Interface.prototype.anchors=null;
Jacuba.Chart.Interface.prototype.width=0;
Jacuba.Chart.Interface.prototype.height=0;
Jacuba.Chart.Interface.JACUBA_BAR_HEIGHT=22;
Jacuba.Chart.Interface.prototype.init=function(){
if(this.tmp_start){
var _218=(new Date()).getTime();
var _219=_218-this.tmp_start;
delete this.tmp_start;
Jacuba.debug("Chart with id "+this.id+" interface created in "+_219+"ms");
}
var _220=this.criteria.get("open-on");
if(_220=="settings"){
this.showCard("advanced");
}else{
if(_220=="chart"){
this.chart.generate();
}else{
this.showCard("main");
if(this.tab_groups){
var _221=this.tab_groups["data"];
if(_221){
_221.selectTabByIndex(1);
}
}
}
}
var t=this;
var _222=function(){
var _223=Jacuba.Chart.Interface.extractStyleCriteria(t.chart.criteria);
t.applyCriteria(_223);
t.default_theme=new Jacuba.Chart.Interface.CriteriaTheme(t);
var _224=t.criteria.get("theme");
if(!_224||_224=="_default"||(t.theme_monitor&&t.theme_monitor.hasChanged())){
t.selected_theme=t.default_theme;
t.monitorTheme();
var _225=t.fields["theme"];
if(_225){
_225.setValue("_default",true);
}
}
};
if(this.isReady("table")){
if(this.isReady("apply-theme")){
_222();
}else{
this.doWhenReady(_222,"apply-theme");
}
}else{
var t=this;
var work=function(){
if(t.isReady("apply-theme")){
_222();
}else{
t.doWhenReady(_222,"apply-theme");
}
};
this.doWhenReady(work,"table");
}
this.updateLoadingMessage();
};
Jacuba.Chart.Interface.prototype.visibleIndexForTableIndex=function(_226,_227){
var _228=this.criteria;
var set=new Jacuba.Chart.Util.NumberSet(_228.get("excluded-"+(_227?"rows":"columns")));
var _230=_228.get((_227?"column":"row")+"-heading-"+(_227?"row":"column"));
if(_230==null){
_230=0;
}
set.add(_230);
var _231=set.getMembers();
var _232=0;
for(var x=0;x<_231.length;x++){
if(_231[x]<_226){
_232++;
}else{
break;
}
}
return _226-_232;
};
Jacuba.Chart.Interface.prototype.criteriaChanged=function(){
Jacuba.stackTracer.push("Jacuba.Chart.Interface.prototype.criteriaChanged");
for(var x in this.chart.criteria.props){
this.criteria.set(x,this.chart.criteria.get(x));
}
Jacuba.stackTracer.pop("Jacuba.Chart.Interface.prototype.criteriaChanged");
};
Jacuba.Chart.Interface.prototype.create=function(){
this.fields=new Object();
var _233=Jacuba.Chart.Util.getId("main");
var _234="<TABLE id='"+_233+"' class='outer' cellpadding='0' cellspacing='0' border='0' style='width: 100%; height: 100%;'><TBODY></TBODY></TABLE>";
this.html.innerHTML=_234;
this.html_table_tbody=document.getElementById(_233).firstChild;
this.card=null;
this.cards=new Object();
var _235=new Jacuba.Chart.Interface.Card();
this.cards["main"]=_235;
if(this.criteria.get("may-set-advanced")!="false"){
this.cards["advanced"]=new Jacuba.Chart.Interface.Card();
}
var _236=new Jacuba.Chart.Interface.Card();
this.cards["chart"]=_236;
var _237=this.installToolBar();
_235.addElement(_237);
if(this.chart.aggregator!=null){
_235.addElement(this.insertDataTabsElement());
}else{
_235.addElement(this.insertQuickBar());
_235.addElement(this.insertTableElement());
_235.addElement(this.insertDataBottomElement());
}
if(this.criteria.get("may-set-advanced")!="false"){
var _238=this.cards["advanced"];
_238.addElement(_237);
_238.addElement(this.insertSettingsTabsElement());
_238.addElement(this.insertSettingsElement());
_238.addElement(this.insertSettingsGenerateElement());
}
var _239=this.installChartArea();
_236.addElement(_237);
_236.addElement(_239);
for(var x in this.fields){
var _240=this.criteria.get(x);
if(_240!=null){
var _241=this.fields[x];
_241.setValue(_240);
}
var _242=this.criteria.get("may-set-"+x);
if(_242=="false"){
this.fields[x].setDisabled(true);
}
}
for(var x in this.fields){
this.fields[x].init();
}
this.table=new Jacuba.Chart.Interface.Table(this.table_area,this);
this.table.refresh();
var _243=this.criteria.get("theme");
this.selected_theme=_243==null||_243.length==0?null:Jacuba.Chart.ThemeManager.getTheme(_243);
this.applyTheme();
this.html.firstChild.style.border="1px solid red";
this.html.firstChild.style.border="0px";
};
Jacuba.Chart.Interface.prototype.refresh=function(){
this.chart.showInterface();
this.table.refresh();
if(this.table_element.html.style.display=="none"){
this.redraw_table=true;
}
if(this.card=="chart"){
this.chart.generate();
}
};
Jacuba.Chart.Interface.prototype.addElement=function(_244){
if(!this.elements){
this.elements=new Array();
}
this.html_table_tbody.appendChild(_244.html);
this.elements[this.elements.length]=_244;
};
Jacuba.Chart.Interface.prototype.installToolBar=function(){
var _245=Jacuba.Chart.Util.getId("toolbar");
var _246=Jacuba.Chart.Util.getId("toolbar-tr");
var html="<TABLE id=\""+_245+"\" class=\"toolbar\" cellpadding='0' cellspacing='0' border='0'><TBODY><TR id=\""+_246+"\"></TR></TBODY></TABLE>";
var elem=new Jacuba.Chart.Interface.Element();
elem.html.style.height="0%";
elem.html.style.display="none";
elem.setInnerHTML(html);
this.addElement(elem);
this.toolbar=document.getElementById(_245);
var tr=document.getElementById(_246);
var td;
var t=this;
var _248=new Jacuba.Chart.Interface.Button(35,35,"butt-data-options",Jacuba.Chart.Util.getText("data_options"));
_248.setAction(function(){
if(!t.modal_block){
t.updateCriteria();
var msg=Jacuba.Chart.Util.validateAdvancedCriteria(t.criteria);
if(msg!=null){
t.alert(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"form_error"),msg);
return false;
}
t.chart.showInterface();
t.showCard("main");
}
return false;
});
this.cards["main"].associateButton(_248);
if(this.criteria.get("may-set-advanced")!="false"){
var _249=new Jacuba.Chart.Interface.Button(35,35,"butt-settings",Jacuba.Chart.Util.getText("settings"));
_249.setAction(function(){
if(!t.modal_block){
t.updateCriteria();
var msg=Jacuba.Chart.Util.validateAdvancedCriteria(t.criteria);
if(msg!=null){
t.alert(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"form_error"),msg);
return false;
}
t.chart.showInterface();
t.showCard("advanced");
}
return false;
});
this.cards["advanced"].associateButton(_249);
}
var _250=new Jacuba.Chart.Interface.Button(35,35,"butt-chart",Jacuba.Chart.Util.getText("chart"));
_250.setAction(function(){
if(!t.modal_block){
t.updateCriteria();
var msg=Jacuba.Chart.Util.validateAdvancedCriteria(t.criteria);
if(msg!=null){
t.alert(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"form_error"),msg);
return false;
}
t.chart.generate();
}
return false;
});
this.cards["chart"].associateButton(_250);
var _251=new Jacuba.Chart.Interface.Button(22,35,"butt-save",Jacuba.Chart.Util.getText("save"));
_251.setAction(function(){
if(!t.modal_block){
t.updateCriteria();
var msg=Jacuba.Chart.Util.validateAdvancedCriteria(t.criteria);
if(msg!=null){
t.alert(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"form_error"),msg);
return false;
}
t.chart.generate(t.chart.save);
}
return false;
});
var _252=new Jacuba.Chart.Interface.Button(27,35,"butt-print",Jacuba.Chart.Util.getText("print"));
_252.setAction(function(){
if(!t.modal_block){
t.updateCriteria();
var msg=Jacuba.Chart.Util.validateAdvancedCriteria(t.criteria);
if(msg!=null){
t.alert(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"form_error"),msg);
return false;
}
t.chart.generate(t.chart.print);
}
return false;
});
var _253=new Jacuba.Chart.Interface.Button(18,35,"butt-help",Jacuba.Chart.Util.getText("help"));
_253.setAction(function(){
Jacuba.Chart.Util.openHelp();
});
var _254=new Array();
_254[_254.length]=_248;
_254[_254.length]=_249;
_254[_254.length]=_250;
_254[_254.length]=_251;
_254[_254.length]=_252;
_254[_254.length]=_253;
for(var x=0;x<_254.length;x++){
var _255=_254[x];
td=document.createElement("TD");
td.className="icon-place";
tr.appendChild(td);
var icon=_255.getIcon();
td.appendChild(icon);
_255.attachEventHandlers(td);
td=document.createElement("TD");
td.className="label-place";
tr.appendChild(td);
var _257=_255.getLabel();
td.appendChild(_257);
_255.attachEventHandlers(td);
}
td=document.createElement("TD");
td.className="logo-place";
var tmp=document.createElement("IMG");
td.appendChild(tmp);
tr.appendChild(td);
Jacuba.Chart.ImageManager.setSrc(tmp,Jacuba.Chart.TRANSP_IMG);
Jacuba.Chart.ImageManager.setClassName(tmp,"charts-logo");
return elem;
};
Jacuba.Chart.Interface.prototype.insertQuickBar=function(){
var _258=Jacuba.Chart.Util.getId("chart_type");
var _259=Jacuba.Chart.Util.getId("theme");
var _260=Jacuba.Chart.Util.getId("theme-mod");
var _261=Jacuba.Chart.Util.getId("type-advanced");
var _262="<TABLE class='quick-bar' cellpadding='0' cellspacing='0' border='0'><TBODY><TR>";
var _263=this.criteria.get("may-set-theme")!="false"?"first":"only";
_262+="<TD class='"+_263+"'>"+Jacuba.Chart.Util.getText("Chart_Type")+": <SELECT id='"+_258+"' name='chart-type'>";
if(this.criteria.get("may-set-chart-type-to-bar")!="false"){
_262+="<OPTION value='bar'>"+Jacuba.Chart.Util.getText("Bar")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-line")!="false"){
_262+="<OPTION value='line'>"+Jacuba.Chart.Util.getText("Line")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-area")!="false"){
_262+="<OPTION value='area'>"+Jacuba.Chart.Util.getText("Area")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-pie")!="false"){
_262+="<OPTION value='pie'>"+Jacuba.Chart.Util.getText("Pie")+"</OPTION>";
}
_262+="</SELECT>";
if(this.criteria.get("may-set-advanced-chart-type")!="false"){
_262+=" <A href=\"javascript:void(0)\" id='"+_261+"'>"+Jacuba.Chart.Util.getText("Advanced")+"</A>";
}
_262+="</TD>";
if(this.criteria.get("may-set-theme")!="false"){
_262+="<TD class='last'>"+Jacuba.Chart.Util.getText("Theme")+": <SELECT name='theme' id='"+_259+"'></SELECT><SPAN id='"+_260+"'></SPAN></TD>";
}
_262+="</TR></TBODY></TABLE>";
var elem=new Jacuba.Chart.Interface.Element();
elem.html.style.height="0%";
elem.html.style.display="none";
elem.setInnerHTML(_262);
this.addElement(elem);
Jacuba.Chart.ImageManager.setClassName(elem.td,"quick-bar");
var _264=document.getElementById(_258);
if(!this.fields["chart-type"]){
this.fields["chart-type"]=new Jacuba.Chart.Interface.Field(_264);
}else{
this.fields["chart-type"].duplicateElement(_264);
}
var _265=document.getElementById(_261);
if(_265){
var t=this;
_265.onclick=function(e){
var x,y;
if(navigator.appName.indexOf("Microsoft")!=-1){
e=window.event;
x=e.clientX;
y=e.clientY;
}else{
x=e.pageX;
y=e.pageY;
}
x-=Jacuba.Chart.Util.getOffsetX(t.html);
y-=Jacuba.Chart.Util.getOffsetY(t.html);
x+=10;
var _267=t.html.offsetWidth;
var _268=200;
if(x+_268>_267-10){
x-=_268+10;
if(x<0){
x=_267-10-_268;
}
}
var _269=t.html.offsetHeight;
var _270=150;
if(y+_270>_269-10){
y-=_270+10;
if(y<0){
y=_269-10-_270;
}
}
t.openChartTypeAdvancedWindow(_268,_270,x,y);
return false;
};
this.registerAnchorElement(_265);
}
if(this.criteria.get("may-set-theme")!="false"){
var _271=document.getElementById(_259);
if(!this.fields["theme"]){
this.fields["theme"]=new Jacuba.Chart.Interface.Field(_271);
var t=this;
var _272=new Object();
_272.fieldChanged=function(){
t.themeSelected();
};
this.fields["theme"].addListener(_272);
}else{
this.fields["theme"].duplicateElement(_271);
}
var _273=document.getElementById(_260);
if(!this.theme_mod_elems){
this.theme_mod_elems=new Array();
}
this.theme_mod_elems[this.theme_mod_elems.length]=_273;
this.populateThemeSelection(_271);
}
return elem;
};
Jacuba.Chart.Interface.prototype.insertAggregationElement=function(){
var _274=new Jacuba.Chart.Interface.Element();
_274.html.style.height="100%";
_274.html.style.display="none";
this.addElement(_274);
if(this.chart.aggregator){
this.chart.aggregator.setParentInterface(this);
this.chart.aggregator.setInterfaceContainer(_274.td);
}
return _274;
};
Jacuba.Chart.Interface.prototype.insertTableElement=function(){
var _275=Jacuba.Chart.Util.getId("table_area");
var tmp="<DIV id='"+_275+"' class='chart-table'></DIV>";
var elem=new Jacuba.Chart.Interface.Element();
elem.html.style.height="100%";
elem.html.style.display="none";
elem.html.className="row2";
elem.td.style.verticalAlign="top";
elem.setInnerHTML(tmp);
var _276=this;
var _277=Jacuba.Chart.Util.moveMethod(elem,"setVisible","superSetVisible");
elem.setVisible=function(_278){
this[_277](_278);
if(_278&&_276.redraw_table){
_276.table.updateHeadings();
_276.table.updateCellSizes();
_276.redraw_table=false;
}
};
this.addElement(elem);
this.table_area=document.getElementById(_275);
this.table_element=elem;
this.redraw_table=true;
return elem;
};
Jacuba.Chart.Interface.prototype.insertQuickOptionsElement=function(){
var _279=Jacuba.Chart.Util.getId("width");
var _280=Jacuba.Chart.Util.getId("height");
var _281=Jacuba.Chart.Util.getId("show_legend");
var _282=Jacuba.Chart.Util.getId("chart_type");
var _283=Jacuba.Chart.Util.getId("bar_options");
var _284=Jacuba.Chart.Util.getId("line_options");
var _285=Jacuba.Chart.Util.getId("area_options");
var _286=Jacuba.Chart.Util.getId("pie_options");
var _287=Jacuba.Chart.Util.getId("plain");
var _288=Jacuba.Chart.Util.getId("plain3d");
var _289=Jacuba.Chart.Util.getId("stacked");
var _290=Jacuba.Chart.Util.getId("stecked3d");
var _291=Jacuba.Chart.Util.getId("overlapped");
var _292=Jacuba.Chart.Util.getId("point_shapes");
var _293=Jacuba.Chart.Util.getId("pie3d");
var _294=Jacuba.Chart.Util.getId("pie_elliptic");
var _295=Jacuba.Chart.Util.getId("generate");
var _296=Jacuba.Chart.Util.getId("orientation-place");
var _297=Jacuba.Chart.Util.getId("orientation");
var _298=Jacuba.Chart.Util.getId("theme-place");
var _299=Jacuba.Chart.Util.getId("theme");
var _300=Jacuba.Chart.Util.getId("theme-mod");
if(!this.theme_id){
this.theme_id=_299;
}
if(!this.theme_mod_id){
this.theme_mod_id=_300;
}
html_str="<TABLE cellpadding='0' cellspacing='0' border='0'><TBODY><TR><TD class='column1' valign='TOP'>";
html_str+="<TABLE cellpadding='0' cellspacing='0' border='0'><TBODY>";
html_str+="<TR><TD class='label'><NOBR>"+Jacuba.Chart.Util.getText("Width")+"</NOBR></TD><TD class='field'><INPUT id='"+_279+"' type='TEXT' name='width' class='number'></TD></TR>";
html_str+="<TR><TD class='label'><NOBR>"+Jacuba.Chart.Util.getText("Height")+"</NOBR></TD><TD class='field'><INPUT id='"+_280+"' type='TEXT' name='height' class='number'></TD></TR>";
html_str+="<TR><TD colspan='2'><NOBR><LABEL><INPUT id='"+_281+"' type='CHECKBOX' name='show-legend' value='true'> "+Jacuba.Chart.Util.getText("Show_legend")+"</LABEL></NOBR></TD></TR>";
html_str+="</TBODY></TABLE>";
html_str+="</TD><TD class='column2' valign='TOP'>";
html_str+=Jacuba.Chart.Util.getText("Chart_Type")+": <SELECT id='"+_282+"' name='chart-type'>";
if(this.criteria.get("may-set-chart-type-to-bar")!="false"){
html_str+="<OPTION value='bar'>"+Jacuba.Chart.Util.getText("Bar")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-line")!="false"){
html_str+="<OPTION value='line'>"+Jacuba.Chart.Util.getText("Line")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-area")!="false"){
html_str+="<OPTION value='area'>"+Jacuba.Chart.Util.getText("Area")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-pie")!="false"){
html_str+="<OPTION value='pie'>"+Jacuba.Chart.Util.getText("Pie")+"</OPTION>";
}
html_str+="</SELECT>";
html_str+="<SPAN id='"+_296+"'> "+Jacuba.Chart.Util.getText("Orientation")+": <SELECT name='orientation' id='"+_297+"'>";
html_str+="<OPTION value='normal'>"+Jacuba.Chart.Util.getText("Normal")+"</OPTION>";
html_str+="<OPTION value='reverse'>"+Jacuba.Chart.Util.getText("Reverse")+"</OPTION>";
html_str+="</SELECT></SPAN>";
if(this.criteria.get("may-set-theme")!="false"){
html_str+="<SPAN id='"+_298+"'> "+Jacuba.Chart.Util.getText("Theme")+": <SELECT name='theme' id='"+_299+"'></SELECT><SPAN id='"+_300+"'></SPAN></SPAN>";
}
html_str+="<DIV class='chart-type-options' style='height: 4em'>";
html_str+="<DIV id=\""+_283+"\">";
if(this.criteria.get("may-set-bar-style-to-plain")!="false"){
html_str+="<NOBR><LABEL><INPUT id='"+_287+"' type='RADIO' name='bar-style' value='plain'>"+Jacuba.Chart.Util.getText("Plain")+"</LABEL></NOBR> ";
}
if(this.criteria.get("may-set-bar-style-to-plain_3d")!="false"){
html_str+="<NOBR><LABEL><INPUT id='"+_288+"' type='RADIO' name='bar-style' value='plain_3d'>"+Jacuba.Chart.Util.getText("Plain_3D")+"</LABEL></NOBR> ";
}
if(this.criteria.get("may-set-bar-style-to-stacked")!="false"){
html_str+="<NOBR><LABEL><INPUT id='"+_289+"' type='RADIO' name='bar-style' value='stacked'>"+Jacuba.Chart.Util.getText("Stacked")+"</LABEL></NOBR> ";
}
if(this.criteria.get("may-set-bar-style-to-stacked_3d")!="false"){
html_str+="<NOBR><LABEL><INPUT id='"+_290+"' type='RADIO' name='bar-style' value='stacked_3d'>"+Jacuba.Chart.Util.getText("Stacked_3D")+"</LABEL></NOBR> ";
}
if(this.criteria.get("may-set-bar-style-to-overlapped")!="false"){
html_str+="<NOBR><LABEL><INPUT id='"+_291+"' type='RADIO' name='bar-style' value='overlapped'>"+Jacuba.Chart.Util.getText("Overlapped")+"</LABEL></NOBR>";
}
html_str+="</DIV>";
html_str+="<DIV id=\""+_284+"\">";
html_str+="<LABEL for=\""+_292+"\"><INPUT id='"+_292+"' type='CHECKBOX' name='line-draw-shapes' value='true'> "+Jacuba.Chart.Util.getText("Point_shapes")+"</LABEL>";
html_str+="</DIV>";
html_str+="<DIV id=\""+_285+"\"></DIV>";
html_str+="<DIV id=\""+_286+"\"><INPUT id='"+_293+"' type='CHECKBOX' name='pie-3d' value='true'> "+Jacuba.Chart.Util.getText("ThreeD")+"<BR><INPUT id='"+_294+"' type='CHECKBOX' name='pie-elliptic' value='true'> "+Jacuba.Chart.Util.getText("Elliptic")+"</DIV>";
html_str+="</DIV>";
html_str+="<DIV class='generate'><INPUT id='"+_295+"' type='BUTTON' value=\""+Jacuba.Chart.Util.getText("Generate")+"\"></DIV>";
html_str+="<DIV style='clear:both'></DIV>";
html_str+="</TD></TR></TBODY></TABLE>";
var elem=new Jacuba.Chart.Interface.Element();
elem.html.style.height="0%";
elem.html.style.visibility="hidden";
elem.html.className="row3";
elem.td.className="chart-panel";
elem.setInnerHTML(html_str);
this.addElement(elem);
this.type_panels=new Object();
this.type_panels["bar"]=document.getElementById(_283);
this.type_panels["line"]=document.getElementById(_284);
this.type_panels["area"]=document.getElementById(_285);
this.type_panels["pie"]=document.getElementById(_286);
this.fields["width"]=new Jacuba.Chart.Interface.Field(document.getElementById(_279));
this.fields["height"]=new Jacuba.Chart.Interface.Field(document.getElementById(_280));
if(!this.fields["show-legend"]){
this.fields["show-legend"]=new Jacuba.Chart.Interface.Field(document.getElementById(_281));
}else{
this.fields["show-legend"].duplicateElement(document.getElementById(_281));
}
var _301=document.getElementById(_282);
if(!this.fields["chart-type"]){
this.fields["chart-type"]=new Jacuba.Chart.Interface.Field(_301);
}else{
this.fields["chart-type"].duplicateElement(_301);
}
this.fields["orientation"]=new Jacuba.Chart.Interface.Field(document.getElementById(_297));
this.fields["line-draw-shapes"]=new Jacuba.Chart.Interface.Field(document.getElementById(_292));
this.fields["pie-3d"]=new Jacuba.Chart.Interface.Field(document.getElementById(_293));
this.fields["pie-elliptic"]=new Jacuba.Chart.Interface.Field(document.getElementById(_294));
var _302=document.getElementById(_299);
if(!this.fields["theme"]){
this.fields["theme"]=new Jacuba.Chart.Interface.Field(_302);
}else{
this.fields["theme"].duplicateElement(_302);
}
var _303=new Jacuba.Chart.Interface.Field();
this.fields["bar-style"]=_303;
var tmp=document.getElementById(_287);
if(tmp!=null){
_303.addValueElement(tmp);
}
tmp=document.getElementById(_288);
if(tmp!=null){
_303.addValueElement(tmp);
}
tmp=document.getElementById(_289);
if(tmp!=null){
_303.addValueElement(tmp);
}
tmp=document.getElementById(_290);
if(tmp!=null){
_303.addValueElement(tmp);
}
tmp=document.getElementById(_291);
if(tmp!=null){
_303.addValueElement(tmp);
}
this.selected_chart_type=this.criteria.get("chart-type");
for(var x in this.type_panels){
if(x!=this.selected_chart_type){
this.type_panels[x].style.display="none";
}
}
var _304=this.fields["chart-type"];
var _305=new Object();
var t=this;
_305.fieldChanged=function(){
t.chartTypeChanged();
var _306=document.getElementById(_296);
if(t.fields["chart-type"].getValue()=="pie"){
_306.style.display="none";
}else{
_306.style.display="";
}
};
_304.addListener(_305);
var _307=document.getElementById(_295);
var t=this;
_307.onclick=function(){
t.chart.generate();
};
this.registerInputElement(_307);
if(this.criteria.get("may-set-theme")!="false"){
this.populateThemeSelection();
}
return elem;
};
Jacuba.Chart.Interface.prototype.insertDataBottomElement=function(){
var _308=Jacuba.Chart.Util.getId("generate-chart-place");
var _309="<TABLE cellpadding='0' cellspacing='0' border='0'><TBODY><TR><TD class='tip'>"+Jacuba.Chart.Util.getText("tip")+"</TD><TD valign='BOTTOM' class='make-chart-place' id='"+_308+"'></TD></TR></TBODY></TABLE>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(_309);
elem.html.style.display="none";
elem.td.className="bottom-bar";
this.addElement(elem);
var _310=document.getElementById(_308);
this.insertGenerateButton(_310);
return elem;
};
Jacuba.Chart.Interface.prototype.insertAggregationBottomElement=function(){
var _311=Jacuba.Chart.Util.getId("generate-chart-place");
var _312="<TABLE cellpadding='0' cellspacing='0' border='0'><TBODY><TR><TD class='tip'>"+Jacuba.Chart.Util.getText("aggregation_tip")+"</TD><TD valign='BOTTOM' class='make-chart-place' id='"+_311+"'></TD></TR></TBODY></TABLE>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(_312);
elem.html.style.display="none";
elem.td.className="bottom-bar";
this.addElement(elem);
var _313=document.getElementById(_311);
this.insertGenerateButton(_313);
return elem;
};
Jacuba.Chart.Interface.prototype.insertGenerateButton=function(_314){
var _315=document.createElement("INPUT");
_315.type="SUBMIT";
_315.value=Jacuba.Chart.Util.getText("Generate");
_314.appendChild(_315);
var t=this;
_315.onclick=function(){
t.chart.generate();
};
this.registerInputElement(_315);
};
Jacuba.Chart.Interface.prototype.insertDataTabsElement=function(){
this.data_general_id=Jacuba.Chart.Util.getId("data_general");
this.data_aggregation_id=Jacuba.Chart.Util.getId("data_aggregation");
var _316=Jacuba.Chart.Util.getId("data-tabs");
var _317=Jacuba.Chart.Util.getId("link-data-general");
var _318=Jacuba.Chart.Util.getId("link-data-aggregation");
var _319=Jacuba.Chart.Util.getId("imgtmp");
var _320=null;
var _321="<TABLE border='0' cellpadding='0' cellspacing='0' class='tabs' id='"+_316+"'><TBODY><TR>";
if(_320==null){
_320=_317;
}
_321+="<TD width='0%' valign='BOTTOM'><a id='"+_317+"' href='javascript:void(0)' class='deselected'></a></TD>";
_321+="<TD width='0%' valign='BOTTOM'><a id='"+_318+"' href='javascript:void(0)' class='deselected'></a></TD>";
_321+="</TR></TBODY></TABLE>";
_321+="<DIV class='under-tabs'><IMG id=\""+_319+"\" width='1' height='1'></DIV>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(_321);
elem.html.style.height="0%";
elem.html.className="row1";
elem.td.className="tab-panel";
elem.html.style.display="none";
this.addElement(elem);
var _322=document.getElementById(_317);
_322.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("General")));
var _323=document.getElementById(_318);
_323.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("Aggregation")));
this.selected_data_link=document.getElementById(_320);
this.selected_data_link.className="selected";
this.data_tabs=document.getElementById(_316);
this.installTabGroup("data",_320,elem);
var _324=new Array();
_324[0]=this.insertQuickBar();
_324[1]=this.insertTableElement();
_324[2]=this.insertDataBottomElement();
this.installTabElementLink(_317,"data",_324);
var _325=new Array();
_325[0]=this.insertAggregationElement();
_325[1]=this.insertAggregationBottomElement();
this.installTabElementLink(_318,"data",_325);
Jacuba.Chart.ImageManager.setSrc(document.getElementById(_319),Jacuba.Chart.TRANSP_IMG);
return elem;
};
Jacuba.Chart.Interface.prototype.insertSettingsTabsElement=function(){
this.advanced_general_id=Jacuba.Chart.Util.getId("advanced_general");
this.advanced_type_id=Jacuba.Chart.Util.getId("advanced_type");
this.advanced_title_id=Jacuba.Chart.Util.getId("advanced_title");
this.advanced_legend_id=Jacuba.Chart.Util.getId("advanced_legend");
this.advanced_label_id=Jacuba.Chart.Util.getId("advanced_label");
var _326=Jacuba.Chart.Util.getId("adv-tabs");
var _327=Jacuba.Chart.Util.getId("link-general");
var _328=Jacuba.Chart.Util.getId("link-type");
var _329=Jacuba.Chart.Util.getId("link-title");
var _330=Jacuba.Chart.Util.getId("link-legend");
var _331=Jacuba.Chart.Util.getId("link-label");
var _332=Jacuba.Chart.Util.getId("tmpimg");
var _333=null;
var _334=null;
var _335="<TABLE border='0' cellpadding='0' cellspacing='0' class='tabs' id='"+_326+"'><TBODY><TR>";
if(this.criteria.get("may-set-advanced-general")!="false"){
if(_333==null){
_333=_327;
_334=this.advanced_general_id;
}
_335+="<TD width='0%' valign='BOTTOM'><a id='"+_327+"' href='#' class='deselected'></a></TD>";
}
if(this.criteria.get("may-set-advanced-chart-type")!="false"){
if(_333==null){
_333=_328;
_334=this.advanced_type_id;
}
_335+="<TD width='0%' valign='BOTTOM'><a id='"+_328+"' href='#' class='deselected'></a></TD>";
}
if(this.criteria.get("may-set-advanced-title")!="false"){
if(_333==null){
_333=_329;
_334=this.advanced_title_id;
}
_335+="<TD width='0%' valign='BOTTOM'><a id='"+_329+"' href='#' class='deselected'></a></TD>";
}
if(this.criteria.get("may-set-advanced-legend")!="false"){
if(_333==null){
_333=_330;
_334=this.advanced_legend_id;
}
_335+="<TD width='0%' valign='BOTTOM'><a id='"+_330+"' href='#' class='deselected'></a></TD>";
}
if(this.criteria.get("may-set-advanced-axes")!="false"){
if(_333==null){
_333=_331;
_334=this.advanced_label_id;
}
_335+="<TD width='0%' valign='BOTTOM'><a id='"+_331+"' href='#' class='deselected'></a></TD>";
}
_335+="</TR></TBODY></TABLE>";
_335+="<DIV class='under-tabs'><IMG id=\""+_332+"\" width='1' height='1'></DIV>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(_335);
elem.html.style.height="0%";
elem.html.className="row1";
elem.td.className="tab-panel";
elem.html.style.display="none";
this.addElement(elem);
var _336=document.getElementById(_327);
if(_336){
_336.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("General")));
}
var _337=document.getElementById(_328);
if(_337){
_337.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("Chart_Type")));
}
var _338=document.getElementById(_329);
if(_338){
_338.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("Title")));
}
var _339=document.getElementById(_330);
if(_339){
_339.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("Legend")));
}
var _340=document.getElementById(_331);
if(_340){
_340.appendChild(Jacuba.Chart.Interface.authorTab(Jacuba.Chart.Util.getText("Axes")));
}
this.selected_advanced_link=document.getElementById(_333);
this.selected_advanced_link.className="selected";
this.adv_tabs=document.getElementById(_326);
this.adv_selected_area_id=_334;
this.general_link_id=_327;
this.type_link_id=_328;
this.title_link_id=_329;
this.legend_link_id=_330;
this.label_link_id=_331;
Jacuba.Chart.ImageManager.setSrc(document.getElementById(_332),Jacuba.Chart.TRANSP_IMG);
return elem;
};
Jacuba.Chart.Interface.authorTab=function(text){
var _342=document.createElement("TABLE");
_342.border=0;
_342.cellPadding=0;
_342.cellSpacing=0;
var _343=document.createElement("TBODY");
_342.appendChild(_343);
var tr=document.createElement("TR");
_343.appendChild(tr);
var td=document.createElement("TD");
tr.appendChild(td);
var tmp=document.createElement("IMG");
tmp.border="0";
td.appendChild(tmp);
Jacuba.Chart.ImageManager.setSrc(tmp,Jacuba.Chart.TRANSP_IMG);
Jacuba.Chart.ImageManager.setClassName(tmp,"tab-left");
td=document.createElement("TD");
tr.appendChild(td);
Jacuba.Chart.ImageManager.setClassName(td,"tab-middle");
var nobr=document.createElement("NOBR");
td.appendChild(nobr);
nobr.innerHTML=text;
td=document.createElement("TD");
tr.appendChild(td);
tmp=document.createElement("IMG");
tmp.border="0";
td.appendChild(tmp);
Jacuba.Chart.ImageManager.setSrc(tmp,Jacuba.Chart.TRANSP_IMG);
Jacuba.Chart.ImageManager.setClassName(tmp,"tab-right");
return _342;
};
Jacuba.Chart.Interface.prototype.openChartTypeAdvancedWindow=function(_345,_346,x,y){
var _347=this.getValue("chart-type");
var _348=Jacuba.Chart.Util.getId("bar_options");
var _349=Jacuba.Chart.Util.getId("line_options");
var _350=Jacuba.Chart.Util.getId("area_options");
var _351=Jacuba.Chart.Util.getId("pie_options");
var _352=Jacuba.Chart.Util.getId("plain");
var _353=Jacuba.Chart.Util.getId("plain3d");
var _354=Jacuba.Chart.Util.getId("stacked");
var _355=Jacuba.Chart.Util.getId("stecked3d");
var _356=Jacuba.Chart.Util.getId("overlapped");
var _357=Jacuba.Chart.Util.getId("point_shapes");
var _358=Jacuba.Chart.Util.getId("pie3d");
var _359=Jacuba.Chart.Util.getId("orientation-place");
var _360=Jacuba.Chart.Util.getId("orientation");
var _361=Jacuba.Chart.Util.getId("chart-type");
var _362=Jacuba.Chart.Util.getId("pie-plain");
var _363=Jacuba.Chart.Util.getId("pie-3d");
var _364=Jacuba.Chart.Util.getId("pie-elliptic");
var _365=Jacuba.Chart.Util.getId("pie-elliptic-3d");
var _366="<TABLE style='width: 100%;'><TBODY>";
if(_347!="pie"){
var tmp=this.getValue("orientation");
_366+="<TR id='"+_359+"'><TD style='width: 0%'><NOBR>"+Jacuba.Chart.Util.getText("Orientation")+"</NOBR></TD><TD style='width: 100%'>";
_366+="<SELECT name='orientation' id='"+_360+"'>";
_366+="<OPTION value='normal'";
if(tmp=="normal"){
_366+=" selected";
}
_366+=">"+Jacuba.Chart.Util.getText("Normal")+"</OPTION>";
_366+="<OPTION value='reverse'";
if(tmp=="reverse"){
_366+=" selected";
}
_366+=">"+Jacuba.Chart.Util.getText("Reverse")+"</OPTION>";
_366+="</SELECT>";
_366+="</TD></TR>";
}
_366+="<TR><TD></TD><TD style='width: 100%'>";
if(_347=="area"){
_366+="<DIV></DIV>";
}
_366+="</TD></TR>";
_366+="</TBODY></TABLE>";
if(_347=="line"){
var tmp=this.getValue("line-draw-shapes");
_366+="<LABEL for=\""+_357+"\"><INPUT id='"+_357+"' type='CHECKBOX' name='line-draw-shapes' value='true'";
if(tmp=="true"){
_366+=" checked";
}
_366+="> "+Jacuba.Chart.Util.getText("Point_shapes")+"</LABEL>";
}
if(_347=="pie"){
var tmp=this.getValue("pie-3d");
var _367=new Array();
var str;
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("Pie_plain")+"\"><img id='"+_362+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='pie-plain'></a> "+Jacuba.Chart.Util.getText("Pie_plain");
_367[_367.length]=str;
if(this.criteria.get("may-set-pie-3d")!="false"){
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("ThreeD")+"\"><img id='"+_363+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='pie-plain-3d'></a> "+Jacuba.Chart.Util.getText("ThreeD");
_367[_367.length]=str;
}
if(this.criteria.get("may-set-pie-elliptic")!="false"){
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("Elliptic")+"\"><img id='"+_364+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='pie-elliptic'></a> "+Jacuba.Chart.Util.getText("Elliptic");
_367[_367.length]=str;
}
if(this.criteria.get("may-set-pie-elliptic")!="false"&&this.criteria.get("may-set-pie-3d")!="false"){
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("Elliptic3d")+"\"><img id='"+_365+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='pie-elliptic-3d'></a> "+Jacuba.Chart.Util.getText("Elliptic3d");
_367[_367.length]=str;
}
if(_367.length>0){
var _368=2;
_366+="<TABLE border=\"0\"><TBODY>";
for(var i=0;i<_367.length;i++){
if(i%_368==0){
if(i!=0){
_366+="</TR>";
}
_366+="<TR>";
}
_366+="<TD style='width: 45%'>"+_367[i]+"</TD>";
}
_366+="</TR>";
_366+="</TBODY></TABLE>";
}
}
if(_347=="bar"){
var tmp=this.getValue("bar-style");
var _367=new Array();
if(this.criteria.get("may-set-bar-style-to-plain")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Plain")+"\"><img id='"+_352+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='bar-plain'></a> "+Jacuba.Chart.Util.getText("Plain");
_367[_367.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-plain_3d")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Plain_3D")+"\"><img id='"+_353+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='bar-plain-3d'></a> "+Jacuba.Chart.Util.getText("Plain_3D");
_367[_367.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-stacked")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Stacked")+"\"><img id='"+_354+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='bar-stacked'></a> "+Jacuba.Chart.Util.getText("Stacked");
_367[_367.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-stacked_3d")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Stacked_3D")+"\"><img id='"+_355+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='bar-stacked-3d'></a> "+Jacuba.Chart.Util.getText("Stacked_3D");
_367[_367.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-overlapped")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Overlapped")+"\"><img id='"+_356+"' src='"+Jacuba.Chart.TRANSP_IMG+"' border='0' align='absmiddle' class='bar-overlapped'></a> "+Jacuba.Chart.Util.getText("Overlapped");
_367[_367.length]=str;
}
if(_367.length>0){
var _368=2;
_366+="<TABLE border=\"0\"><TBODY>";
for(var i=0;i<_367.length;i++){
if(i%_368==0){
if(i!=0){
_366+="</TR>";
}
_366+="<TR>";
}
_366+="<TD style='width: 45%'>"+_367[i]+"</TD>";
}
_366+="</TR>";
_366+="</TBODY></TABLE>";
}
}
var win=new Jacuba.Chart.Interface.Window(_345);
var _370;
if(_347=="bar"){
_370="Bar";
}else{
if(_347=="line"){
_370="Line";
}else{
if(_347=="pie"){
_370="Pie";
}else{
if(_347=="area"){
_370="Area";
}
}
}
}
var _371=Jacuba.Chart.Util.getText(_370);
var _372=Jacuba.Chart.Util.getText("Chart_Type_Window_Title",_371);
win.setTitle(_372);
win.setContent(_366);
win.bind(this.html);
var _373=document.getElementById(_360);
if(_373&&this.criteria.get("may-set-orientation")=="false"){
_373.disabled=true;
}
var _374;
if(_347=="pie"){
_374=new Jacuba.Chart.Util.RadioGroup();
var _375=document.getElementById(_362);
if(_375){
var td=_375.parentNode.parentNode;
td.className="unselected-bar-style";
_374.addRadio(new Jacuba.Chart.Util.Radio("plain",td,"selected-bar-style"));
}
var _376=document.getElementById(_363);
if(_376){
var td=_376.parentNode.parentNode;
td.className="unselected-bar-style";
_374.addRadio(new Jacuba.Chart.Util.Radio("plain_3d",td,"selected-bar-style"));
}
var _377=document.getElementById(_364);
if(_377){
var td=_377.parentNode.parentNode;
td.className="unselected-bar-style";
_374.addRadio(new Jacuba.Chart.Util.Radio("elliptic",td,"selected-bar-style"));
}
var _378=document.getElementById(_365);
if(_378){
var td=_378.parentNode.parentNode;
td.className="unselected-bar-style";
_374.addRadio(new Jacuba.Chart.Util.Radio("elliptic_3d",td,"selected-bar-style"));
}
var _379=this.getValue("pie-3d");
var _380=this.getValue("pie-elliptic");
var val;
if(_379=="true"&&_380=="true"){
val="elliptic_3d";
}else{
if(_379=="true"){
val="plain_3d";
}else{
if(_380=="true"){
val="elliptic";
}else{
val="plain";
}
}
}
_374.setValue(val);
}
var _381;
if(_347=="bar"){
_381=new Jacuba.Chart.Util.RadioGroup();
var _382=document.getElementById(_352);
if(_382){
var td=_382.parentNode.parentNode;
td.className="unselected-bar-style";
_381.addRadio(new Jacuba.Chart.Util.Radio("plain",td,"selected-bar-style"));
}
var _383=document.getElementById(_353);
if(_383){
var td=_383.parentNode.parentNode;
td.className="unselected-bar-style";
_381.addRadio(new Jacuba.Chart.Util.Radio("plain_3d",td,"selected-bar-style"));
}
var _384=document.getElementById(_354);
if(_384){
var td=_384.parentNode.parentNode;
td.className="unselected-bar-style";
_381.addRadio(new Jacuba.Chart.Util.Radio("stacked",td,"selected-bar-style"));
}
var _385=document.getElementById(_355);
if(_385){
var td=_385.parentNode.parentNode;
td.className="unselected-bar-style";
_381.addRadio(new Jacuba.Chart.Util.Radio("stacked_3d",td,"selected-bar-style"));
}
var _386=document.getElementById(_356);
if(_386){
var td=_386.parentNode.parentNode;
td.className="unselected-bar-style";
_381.addRadio(new Jacuba.Chart.Util.Radio("overlapped",td,"selected-bar-style"));
}
_381.setValue(this.getValue("bar-style"));
}
var t=this;
var _387=function(){
var _373=document.getElementById(_360);
if(_373){
t.setValue("orientation",_373.value);
}
if(_381){
t.setValue("bar-style",_381.getValue());
}
var _388=document.getElementById(_357);
if(_388){
t.setValue("line-draw-shapes",_388.checked?_388.value:"false");
}
if(_374){
var _389=_374.getValue();
var _390=_389=="elliptic"||_389=="elliptic_3d";
var _391=_389=="plain_3d"||_389=="elliptic_3d";
t.setValue("pie-3d",_391?"true":"false");
t.setValue("pie-elliptic",_390?"true":"false");
}
};
win.addButton(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"Okay"),_387);
win.addButton(Jacuba.TextManager.getText(Jacuba.Chart.LANGUAGE_MODULE,"Close"));
win.setCloseHandler(function(win){
win.dispose();
t.modalBlock(false);
});
this.modalBlock(true);
win.open(this.html,y,x);
return win;
};
Jacuba.Chart.Interface.prototype.getValue=function(name){
if(this.fields[name]){
return this.fields[name].getValue(name);
}else{
return this.criteria.get(name);
}
};
Jacuba.Chart.Interface.prototype.setValue=function(name,_393){
Jacuba.stackTracer.push("Jacuba.Chart.Interface.prototype.setValue");
if(this.fields[name]){
this.fields[name].setValue(_393);
}else{
this.criteria.set(name,_393);
}
Jacuba.stackTracer.pop("Jacuba.Chart.Interface.prototype.setValue");
};
Jacuba.Chart.Interface.prototype.insertSettingsElement=function(){
var _394=Jacuba.Chart.Util.getId("font-color");
var _395=Jacuba.Chart.Util.getId("font-family");
var _396=Jacuba.Chart.Util.getId("font-style");
var _397=Jacuba.Chart.Util.getId("text-size");
var _398=Jacuba.Chart.Util.getId("background-color");
var _399=Jacuba.Chart.Util.getId("offset");
var _400=Jacuba.Chart.Util.getId("length");
var _401=Jacuba.Chart.Util.getId("width");
var _402=Jacuba.Chart.Util.getId("height");
var _403=Jacuba.Chart.Util.getId("theme");
var _404=Jacuba.Chart.Util.getId("theme-mod");
var _405=null;
var _406=Jacuba.Chart.Util.getId("xaxis-label");
var _407=null;
var _408=Jacuba.Chart.Util.getId("yaxis-label");
var _409=Jacuba.Chart.Util.getId("help-pane");
var _410=Jacuba.Chart.Util.getId("help-title");
var _411=Jacuba.Chart.Util.getId("help-content");
var _412=Jacuba.Chart.Util.getId("adv-content");
var _413=Jacuba.Chart.Util.getId("adv-title-place");
var _414=Jacuba.Chart.Util.getId("adv-type-place");
var _415=Jacuba.Chart.Util.getId("adv-legend-place");
var _416=Jacuba.Chart.Util.getId("bar_options");
var _417=Jacuba.Chart.Util.getId("line_options");
var _418=Jacuba.Chart.Util.getId("area_options");
var _419=Jacuba.Chart.Util.getId("pie_options");
var _420=Jacuba.Chart.Util.getId("plain");
var _421=Jacuba.Chart.Util.getId("plain3d");
var _422=Jacuba.Chart.Util.getId("stacked");
var _423=Jacuba.Chart.Util.getId("stecked3d");
var _424=Jacuba.Chart.Util.getId("overlapped");
var _425=Jacuba.Chart.Util.getId("point_shapes");
var _426=Jacuba.Chart.Util.getId("pie3d");
var _427=Jacuba.Chart.Util.getId("pie_elliptic");
var _428=Jacuba.Chart.Util.getId("orientation-place");
var _429=Jacuba.Chart.Util.getId("orientation");
var _430=Jacuba.Chart.Util.getId("chart-type");
var _431=Jacuba.Chart.Util.getId("pie-plain");
var _432=Jacuba.Chart.Util.getId("pie-3d");
var _427=Jacuba.Chart.Util.getId("pie-elliptic");
var _433=Jacuba.Chart.Util.getId("pie-elliptic-3d");
var _434="<DIV id='"+_412+"'>";
if(this.criteria.get("may-set-advanced-general")!="false"){
_434+="<TABLE cellpadding='0' cellspacing='0' style='width: 100%' class='fields'><TBODY id='"+this.advanced_general_id+"'>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Width")+"</TD><TD style='width: 100%' class='value'><INPUT id='"+_401+"' type='TEXT' name='width' class='number'> px</TD></TR>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Height")+"</TD><TD style='width: 100%' class='value'><INPUT id='"+_402+"' type='TEXT' name='height' class='number'> px</TD></TR>";
if(this.criteria.get("may-set-theme")!="false"){
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Theme")+"</NOBR></TD><TD style='width: 100%' class='value'><SELECT id='"+_403+"'></SELECT><SPAN id='"+_404+"'></SPAN></TD></TR>";
}
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Background_color")+"</NOBR></TD><TD style='width: 100%' class='value'><DIV id='"+_398+"' style='width: 1em;'></DIV></TD></TR>";
_434+="</TBODY></TABLE>";
}
if(this.criteria.get("may-set-advanced-chart-type")!="false"){
_434+="<TABLE cellpadding='0' cellspacing='0' style='width: 100%; display: none' class='fields'><TBODY id='"+this.advanced_type_id+"'>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Chart_Type")+"</NOBR></TD><TD style='width: 100%' id='"+_414+"' class='value'><SELECT id='"+_430+"'>";
if(this.criteria.get("may-set-chart-type-to-bar")!="false"){
_434+="<OPTION value='bar'>"+Jacuba.Chart.Util.getText("Bar")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-line")!="false"){
_434+="<OPTION value='line'>"+Jacuba.Chart.Util.getText("Line")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-area")!="false"){
_434+="<OPTION value='area'>"+Jacuba.Chart.Util.getText("Area")+"</OPTION>";
}
if(this.criteria.get("may-set-chart-type-to-pie")!="false"){
_434+="<OPTION value='pie'>"+Jacuba.Chart.Util.getText("Pie")+"</OPTION>";
}
_434+="</SELECT></TD></TR>";
_434+="<TR id='"+_428+"'><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Orientation")+"</NOBR></TD><TD style='width: 100%' class='value'>";
_434+="<SELECT name='orientation' id='"+_429+"'>";
_434+="<OPTION value='normal'>"+Jacuba.Chart.Util.getText("Normal")+"</OPTION>";
_434+="<OPTION value='reverse'>"+Jacuba.Chart.Util.getText("Reverse")+"</OPTION>";
_434+="</SELECT>";
_434+="</TD></TR>";
_434+="<TR id=\""+_416+"\"><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Bar_style")+"</NOBR></TD><TD style='width: 100%' class='value'>";
var _435=new Array();
if(this.criteria.get("may-set-bar-style-to-plain")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Plain")+"\"><img id='"+_420+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Plain");
_435[_435.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-plain_3d")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Plain_3D")+"\"><img id='"+_421+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Plain_3D");
_435[_435.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-stacked")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Stacked")+"\"><img id='"+_422+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Stacked");
_435[_435.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-stacked_3d")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Stacked_3D")+"\"><img id='"+_423+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Stacked_3D");
_435[_435.length]=str;
}
if(this.criteria.get("may-set-bar-style-to-overlapped")!="false"){
var str="<a href='javascript:void(0)' title=\""+Jacuba.Chart.Util.getText("Overlapped")+"\"><img id='"+_424+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Overlapped");
_435[_435.length]=str;
}
if(_435.length>0){
var _436=3;
_434+="<TABLE border=\"0\"><TBODY>";
for(var i=0;i<_435.length;i++){
if(i%_436==0){
if(i!=0){
_434+="</TR>";
}
_434+="<TR>";
}
_434+="<TD style='width: 30%'>"+_435[i]+"</TD>";
}
_434+="</TR>";
_434+="</TBODY></TABLE>";
}
_434+="</TD></TR>";
_434+="<TR id=\""+_417+"\"><TD colspan='2' class='value'>";
_434+="<LABEL for=\""+_425+"\"><INPUT id='"+_425+"' type='CHECKBOX' name='line-draw-shapes' value='true'> "+Jacuba.Chart.Util.getText("Point_shapes")+"</LABEL>";
_434+="</TD></TR>";
_434+="<TR id=\""+_418+"\"><TD style='width: 0%' class='label'></TD><TD style='width: 100%' class='value'></TD></TR>";
_434+="<TR id=\""+_419+"\"><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Pie_style")+"</NOBR></TD><TD style='width: 100%' class='value'>";
_435.length=0;
var str;
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("Pie_plain")+"\"><img id='"+_431+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Pie_plain");
_435[_435.length]=str;
if(this.criteria.get("may-set-pie-3d")!="false"){
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("ThreeD")+"\"><img id='"+_432+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("ThreeD");
_435[_435.length]=str;
}
if(this.criteria.get("may-set-pie-elliptic")!="false"){
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("Elliptic")+"\"><img id='"+_427+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Elliptic");
_435[_435.length]=str;
}
if(this.criteria.get("may-set-pie-elliptic")!="false"&&this.criteria.get("may-set-pie-3d")!="false"){
str="<a href=\"javascript:void(0)\" title=\""+Jacuba.Chart.Util.getText("Elliptic3d")+"\"><img id='"+_433+"' border='0' align='absmiddle'></a> "+Jacuba.Chart.Util.getText("Elliptic3d");
_435[_435.length]=str;
}
if(_435.length>0){
var _436=2;
_434+="<TABLE border=\"0\"><TBODY>";
for(var i=0;i<_435.length;i++){
if(i%_436==0){
if(i!=0){
_434+="</TR>";
}
_434+="<TR>";
}
_434+="<TD style='width: 45%'>"+_435[i]+"</TD>";
}
_434+="</TR>";
_434+="</TBODY></TABLE>";
}
_434+="</TD></TR>";
_434+="</TBODY></TABLE>";
}
if(this.criteria.get("may-set-advanced-title")!="false"){
_434+="<TABLE cellpadding='0' cellspacing='0' style='width: 100%; display: none' class='fields'><TBODY id='"+this.advanced_title_id+"'>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Title")+"</NOBR></TD><TD style='width: 100%' id='"+_413+"'></TD></TR>";
_434+="</TBODY></TABLE>";
}
if(this.criteria.get("may-set-advanced-legend")!="false"){
_434+="<TABLE cellpadding='0' cellspacing='0' style='width: 100%; display: none' class='fields'><TBODY id='"+this.advanced_legend_id+"'>";
_434+="<TR><TD style='0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Show_legend")+"</NOBR></TD><TD style='width: 100%' id='"+_415+"'></TD></TR>";
_434+="</TBODY></TABLE>";
}
if(this.criteria.get("may-set-advanced-axes")!="label"){
_434+="<TABLE cellpadding='0' cellspacing='0' style='width: 100%; display: none' class='fields'><TBODY id='"+this.advanced_label_id+"'>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Offset")+"</NOBR></TD><TD style='width: 100%'><INPUT id='"+_399+"' type='TEXT' name='offset' class='value'></TD></TR>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Length")+"</NOBR></TD><TD style='width: 100%'><INPUT id='"+_400+"' type='TEXT' name='length' class='value'></TD></TR>";
var _437=this.criteria.get("plot")=="columns"?"rows-label":"columns-label";
_405=this.criteria.get("orientation")=="reverse"?"values-label":_437;
_407=this.criteria.get("orientation")=="reverse"?_437:"values-label";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("X_Axis")+"</NOBR></TD><TD style='width: 100%'><INPUT id='"+_406+"' type='TEXT' name='"+_405+"' style='width: 100%'></TD></TR>";
_434+="<TR><TD style='width: 0%' class='label'><NOBR>"+Jacuba.Chart.Util.getText("Y_Axis")+"</NOBR></TD><TD style='width: 100%'><INPUT id='"+_408+"' type='TEXT' name='"+_407+"' style='width: 100%'></TD></TR>";
_434+="</TBODY></TABLE>";
}
var _438=Jacuba.Chart.Util.getId("help-body");
_434+="<DIV id='"+_409+"' style='display: none' class='help-pane'><DIV class='heading'>"+Jacuba.Chart.Util.getText("quick_help")+"</DIV><DIV id=\""+_438+"\"><DIV class='title'><SPAN id='"+_410+"'></SPAN>:</DIV><DIV id='"+_411+"'></DIV></DIV><DIV>";
_434+="</DIV>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(_434);
elem.html.style.height="100%";
elem.html.className="row2";
elem.html.style.display="none";
elem.td.className="field-area";
elem.td.style.verticalAlign="top";
this.addElement(elem);
Jacuba.Chart.ImageManager.setClassName(document.getElementById(_438),"body");
var _439=new Array(_420,_421,_422,_423,_424,_431,_432,_427,_433);
var clss=new Array("bar-plain","bar-plain-3d","bar-stacked","bar-stacked-3d","bar-overlapped","pie-plain","pie-plain-3d","pie-elliptic","pie-elliptic-3d");
var _441=new Object();
_441["border"]="0";
_441["align"]="absmiddle";
for(var x=0;x<_439.length;x++){
var _442=document.getElementById(_439[x]);
if(_442){
Jacuba.Chart.ImageManager.setSrc(_442,Jacuba.Chart.TRANSP_IMG);
Jacuba.Chart.ImageManager.setClassName(_442,clss[x]);
}
}
this.selected_advanced_area=document.getElementById(this.adv_selected_area_id);
this.selected_advanced_area.parentNode.style.display="";
this.adv_content_div=document.getElementById(_412);
if(this.criteria.get("may-set-advanced-general")!="false"){
var tmp=document.getElementById(_398);
var val=this.criteria.get("background-color");
if(val==null||val.length==0){
val="#FFFFFF";
}
var stub=Jacuba.Chart.Interface.FillSelector.createStub(val,"1em","1em");
tmp.appendChild(stub);
this.fields["background-color"]=new Jacuba.Chart.Interface.FillSelector(stub,this);
this.fields["background-color"].setSolid(true);
var t=this;
stub.onfocus=function(){
t.showHelp("Background_color","Background_color_help");
t.input_focused=true;
};
stub.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
var _444=document.getElementById(_401);
if(!this.fields["width"]){
this.fields["width"]=new Jacuba.Chart.Interface.Field(_444);
}else{
this.fields["width"].duplicateElement(document.getElementById(_444));
}
t=this;
_444.onfocus=function(){
t.showHelp("Width","width_help");
t.input_focused=true;
};
_444.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
var _445=document.getElementById(_402);
if(!this.fields["height"]){
this.fields["height"]=new Jacuba.Chart.Interface.Field(_445);
}else{
this.fields["width"].duplicateElement(document.getElementById(_445));
}
t=this;
_445.onfocus=function(){
t.showHelp("Height","height_help");
t.input_focused=true;
};
_445.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
if(this.criteria.get("may-set-theme")!="false"){
var _446=document.getElementById(_403);
if(!this.fields["theme"]){
this.fields["theme"]=new Jacuba.Chart.Interface.Field(_446);
var t=this;
var _447=new Object();
_447.fieldChanged=function(){
t.themeSelected();
};
this.fields["theme"].addListener(_447);
}else{
this.fields["theme"].duplicateElement(_446);
}
var _448=document.getElementById(_404);
if(!this.theme_mod_elems){
this.theme_mod_elems=new Array();
}
this.theme_mod_elems[this.theme_mod_elems.length]=_448;
this.populateThemeSelection(_446);
t=this;
_446.onfocus=function(){
t.showHelp("Theme","theme_help");
t.input_focused=true;
};
_446.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
}
this.installTextFieldSection("",this.general_link_id,this.advanced_general_id);
this.installAdvancedTabLink("general",this.general_link_id,this.advanced_general_id);
}
if(this.criteria.get("may-set-advanced-chart-type")!="false"){
var _449=document.getElementById(_430);
if(!this.fields["chart-type"]){
this.fields["chart-type"]=new Jacuba.Chart.Interface.Field(_449);
if(this.criteria.get("chart-type")){
this.fields["chart-type"].setValue(this.criteria.get("chart-type"));
}
}else{
this.fields["chart-type"].duplicateElement(_449);
}
var t=this;
_449.onfocus=function(){
t.showHelp("Chart_Type","chart_type_help");
t.input_focused=true;
};
_449.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
var _450=document.getElementById(_429);
this.fields["orientation"]=new Jacuba.Chart.Interface.Field(_450);
_450.onfocus=function(){
t.showHelp("Orientation","orientation_help");
t.input_focused=true;
};
_450.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
var _451=document.getElementById(_425);
this.fields["line-draw-shapes"]=new Jacuba.Chart.Interface.Field(_451);
_451.onfocus=function(){
t.showHelp("Point_shapes","Point_shapes_help");
t.input_focused=true;
};
_451.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
this.type_panels=new Object();
this.type_panels["bar"]=document.getElementById(_416);
this.type_panels["line"]=document.getElementById(_417);
this.type_panels["area"]=document.getElementById(_418);
this.type_panels["pie"]=document.getElementById(_419);
var _452=new Jacuba.Chart.Util.RadioGroup();
var _453=document.getElementById(_420);
if(_453){
var td=_453.parentNode.parentNode;
td.className="unselected-bar-style";
_452.addRadio(new Jacuba.Chart.Util.Radio("plain",td,"selected-bar-style"));
}
var _454=document.getElementById(_421);
if(_454){
var td=_454.parentNode.parentNode;
td.className="unselected-bar-style";
_452.addRadio(new Jacuba.Chart.Util.Radio("plain_3d",td,"selected-bar-style"));
}
var _455=document.getElementById(_422);
if(_455){
var td=_455.parentNode.parentNode;
td.className="unselected-bar-style";
_452.addRadio(new Jacuba.Chart.Util.Radio("stacked",td,"selected-bar-style"));
}
var _456=document.getElementById(_423);
if(_456){
var td=_456.parentNode.parentNode;
td.className="unselected-bar-style";
_452.addRadio(new Jacuba.Chart.Util.Radio("stacked_3d",td,"selected-bar-style"));
}
var _457=document.getElementById(_424);
if(_457){
var td=_457.parentNode.parentNode;
td.className="unselected-bar-style";
_452.addRadio(new Jacuba.Chart.Util.Radio("overlapped",td,"selected-bar-style"));
}
_452.setValue(this.getValue("bar-style"));
this.fields["bar-style"]=_452;
var _458=new Jacuba.Chart.Util.RadioGroup();
var _459=document.getElementById(_431);
if(_459){
var td=_459.parentNode.parentNode;
td.className="unselected-bar-style";
_458.addRadio(new Jacuba.Chart.Util.Radio("plain",td,"selected-bar-style"));
}
var _460=document.getElementById(_432);
if(_460){
var td=_460.parentNode.parentNode;
td.className="unselected-bar-style";
_458.addRadio(new Jacuba.Chart.Util.Radio("plain_3d",td,"selected-bar-style"));
}
var _461=document.getElementById(_427);
if(_461){
var td=_461.parentNode.parentNode;
td.className="unselected-bar-style";
_458.addRadio(new Jacuba.Chart.Util.Radio("elliptic",td,"selected-bar-style"));
}
var _462=document.getElementById(_433);
if(_462){
var td=_462.parentNode.parentNode;
td.className="unselected-bar-style";
_458.addRadio(new Jacuba.Chart.Util.Radio("elliptic_3d",td,"selected-bar-style"));
}
var _463=this.getValue("pie-3d");
var _464=this.getValue("pie-elliptic");
var val;
if(_463=="true"&&_464=="true"){
val="elliptic_3d";
}else{
if(_463=="true"){
val="plain_3d";
}else{
if(_464=="true"){
val="elliptic";
}else{
val="plain";
}
}
}
_458.setValue(val);
var _447=new Object();
var t=this;
_447.fieldChanged=function(){
var _465=_458.getValue();
var _466=_465=="elliptic"||_465=="elliptic_3d";
var _467=_465=="plain_3d"||_465=="elliptic_3d";
t.setValue("pie-3d",_467?"true":"false");
t.setValue("pie-elliptic",_466?"true":"false");
};
_458.addListener(_447);
this.selected_chart_type=this.criteria.get("chart-type");
for(var x in this.type_panels){
if(x!=this.selected_chart_type){
this.type_panels[x].style.display="none";
}
}
var _468=this.fields["chart-type"];
var _447=new Object();
var t=this;
_447.fieldChanged=function(){
t.chartTypeChanged();
var _469=document.getElementById(_428);
if(t.fields["chart-type"].getValue()=="pie"){
_469.style.display="none";
}else{
_469.style.display="";
}
};
_468.addListener(_447);
this.installAdvancedTabLink("chart-type",this.type_link_id,this.advanced_type_id,null);
}
if(this.criteria.get("may-set-advanced-title")!="false"){
tmp=document.getElementById(_413);
var _449;
if(this.fields["title"]){
_449=this.fields["title"].duplicateElement();
}else{
_449=document.createElement("INPUT");
_449.type="TEXT";
this.fields["title"]=new Jacuba.Chart.Interface.Field(_449);
if(this.criteria.get("title")){
this.fields["title"].setValue(this.criteria.get("title"));
}
}
_449.style.width="100%";
tmp.appendChild(_449);
var t=this;
_449.onfocus=function(){
t.showHelp("Title","title_help");
t.input_focused=true;
};
_449.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
_449.onkeyup=function(){
t.fields["title"].setValue(_449.value);
};
this.installTextFieldSection("title-",this.title_link_id,this.advanced_title_id,this.fields["title"]);
this.installAdvancedTabLink("title",this.title_link_id,this.advanced_title_id,_449);
}
if(this.criteria.get("may-set-advanced-legend")!="false"){
tmp=document.getElementById(_415);
var _470=document.createElement("INPUT");
_470.type="CHECKBOX";
if(!this.fields["show-legend"]){
this.fields["show-legend"]=new Jacuba.Chart.Interface.Field(_470);
if(this.criteria.get("show-legend")){
this.fields["show-legend"].setValue(this.criteria.get("show-legend"));
}
}else{
this.fields["show-legend"].duplicateElement(_470);
}
tmp.appendChild(_470);
var t=this;
_470.onfocus=function(){
t.showHelp("Show_legend","show_legend_help");
t.input_focused=true;
};
_470.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
this.installTextFieldSection("legend-",this.legend_link_id,this.advanced_legend_id,this.fields["show-legend"]);
this.installAdvancedTabLink("legend",this.legend_link_id,this.advanced_legend_id);
}
if(this.criteria.get("may-set-advanced-axes")!="false"){
tmp=document.getElementById(_399);
val=this.criteria.get("start-value");
if(val!=null&&val.length!=0){
tmp.value=val;
}
this.fields["start-value"]=new Jacuba.Chart.Interface.Field(tmp);
t=this;
tmp.onfocus=function(){
t.showHelp("Offset","offset_help");
t.input_focused=true;
};
tmp.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
tmp=document.getElementById(_400);
val=this.criteria.get("end-value");
if(val!=null&&val.length!=0){
tmp.value=val;
}
this.fields["end-value"]=new Jacuba.Chart.Interface.Field(tmp);
tmp.onfocus=function(){
t.showHelp("Length","length_help");
t.input_focused=true;
};
tmp.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
tmp=document.getElementById(_406);
val=this.criteria.get(_405);
if(val!=null&&val.length!=0){
tmp.value=val;
}
this.fields[_405]=new Jacuba.Chart.Interface.Field(tmp);
var t=this;
tmp.onfocus=function(){
t.showHelp("X_Axis","xaxis_help");
t.input_focused=true;
};
tmp.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
var _471=tmp;
tmp=document.getElementById(_408);
val=this.criteria.get(_407);
if(val!=null&&val.length!=0){
tmp.value=val;
}
this.fields[_407]=new Jacuba.Chart.Interface.Field(tmp);
tmp.onfocus=function(){
t.showHelp("Y_Axis","yaxis_help");
t.input_focused=true;
};
tmp.onblur=function(){
t.hideHelp();
t.input_focused=false;
};
this.installTextFieldSection("label-",this.label_link_id,this.advanced_label_id);
this.installAdvancedTabLink("axes",this.label_link_id,this.advanced_label_id,_471);
}
var _472=document.getElementById(_409);
var _473=document.getElementById(_410);
var _474=document.getElementById(_411);
this.setupAdvancedHelpPane(_472,_473,_474);
return elem;
};
Jacuba.Chart.Interface.prototype.insertSettingsGenerateElement=function(){
var _475=Jacuba.Chart.Util.getId("adv-generate");
var _476="<DIV class='advanced-generate'><INPUT id='"+_475+"' type='BUTTON' value=\""+Jacuba.Chart.Util.getText("Generate")+"\"></DIV>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(_476);
elem.html.style.height="0%";
elem.html.className="row3";
elem.html.style.display="none";
this.addElement(elem);
var _477=document.getElementById(_475);
var t=this;
_477.onclick=function(){
t.chart.generate();
};
this.registerInputElement(_477);
return elem;
};
Jacuba.Chart.Interface.prototype.installChartArea=function(){
var _478=Jacuba.Chart.Util.getId("chart-area");
var html="<DIV id=\""+_478+"\" class=\"chart-area\" style=\"width: 100%; height: 100%; overflow: auto;\"></DIV>";
var elem=new Jacuba.Chart.Interface.Element();
elem.setInnerHTML(html);
elem.html.style.height="100%";
elem.html.style.display="none";
elem.td.style.padding="0";
this.addElement(elem);
this.chart_area=document.getElementById(_478);
if(Jacuba.BROWSER_NAME!="IE"){
this.chart_area.style.position="relative";
}
return elem;
};
Jacuba.Chart.Interface.prototype.installJacubaBar=function(){
var _479=document.createElement("TABLE");
var _480=document.createElement("TBODY");
_479.appendChild(_480);
_479.cellPadding="0";
_479.cellSpacing="0";
_479.border="0";
_479.style.width="100%";
_479.className="jacuba-bar";
var tr=document.createElement("TR");
_480.appendChild(tr);
td=document.createElement("TD");
td.style.width="0%";
td.style.padding="1px";
td.innerHTML="<A href='http://www.jacuba.com' target='_blank' style='padding: 0px; margin: 0px'><IMG border='0' src=\""+Jacuba.Chart.JACUBA_LOGO_IMG+"\" width='47' height='18' alt='Jacuba' style='margin: 0px; padding: 0px; display: block' hspace='0' vspace='0'></A>";
tr.appendChild(td);
td=document.createElement("TD");
td.style.width="100%";
td.style.fontSize="10pt";
td.style.textAlign="right";
tr.appendChild(td);
var _481=Jacuba.Chart.Util.getId("settings-link");
var _482=Jacuba.Chart.Util.getId("adv-settings-link");
var _483=Jacuba.Chart.Util.getId("chart-link");
var _484=Jacuba.Chart.Util.getId("save-link");
var _485=Jacuba.Chart.Util.getId("print-link");
var _486=Jacuba.Chart.Util.getId("help-link");
var html="";
html+="<UL style='list-style: none; margin: 0;'>";
html+="<LI style='display: inline; border-right: 1px solid black; padding: 0em 0.25em 0em 0.25em'><A id='"+_481+"' href='#'></A></LI>";
if(this.criteria.get("may-set-advanced")!="false"){
html+="<LI style='display: inline; border-right: 1px solid black; padding: 0em 0.25em 0em 0.25em'><A id='"+_482+"' href='#'></A></LI>";
}
html+="<LI style='display: inline; border-right: 1px solid black; padding: 0em 0.25em 0em 0.25em'><A id='"+_483+"' href='#'></A></LI>";
if(this.criteria.get("may-save")!="false"){
html+="<LI style='display: inline; border-right: 1px solid black; padding: 0em 0.25em 0em 0.25em'><A id='"+_484+"' href='#'></A></LI>";
}
if(this.criteria.get("may-print")!="false"){
html+="<LI style='display: inline; border-right: 1px solid black; padding: 0em 0.25em 0em 0.25em'><A 