﻿function htmlEncode(_1){
return _1.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");
};
function htmlDecode(_2){
return _2.replace(/&quot;/g,"\"").replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&amp;/g,"&");
};
function setStatusMessage(_3){
var _4=document.getElementById("messageWrapper");
if(_4==null){
_4=$("<div id='messageWrapper'><div id='message'><p>"+_3+"</p></div></div>");
$("#wrapper").before(_4);
}else{
_4=$(_4);
_4.html("<div id='message'><p>"+_3+"</p></div>");
_4.show("normal");
}
};
spectra.getType=function(_5){
if(_5=="undefined"){
return "undefined";
}
if(_5===null){
return "null";
}
var _6=Object.prototype.toString.call(_5).slice(8,-1);
return _6;
};
$(document).ready(function(){
if($.browser.msie&&(parseInt($.browser.version)==6)){
$(".button").hover(function(){
$(this).addClass("button-hover");
},function(){
$(this).removeClass("button-hover");
});
$(".filter").hover(function(){
$(this).addClass("filter-hover");
},function(){
$(this).removeClass("filter-hover");
});
$("#DistributedTo li").hover(function(){
$(this).addClass("doc-dist-hover");
},function(){
$(this).removeClass("doc-dist-hover");
});
$("ul.ShowSummary li").hover(function(){
$(this).addClass("list-hover");
},function(){
$(this).removeClass("list-hover");
});
$(".sr-col-icon").hover(function(){
$(this).addClass("sr-col-icon-hover");
},function(){
$(this).removeClass("sr-col-icon-hover");
});
$(".hover-message-wrapper").hover(function(){
$(this).addClass("hover-message-wrapper-hover");
},function(){
$(this).removeClass("hover-message-wrapper-hover");
});
$(".link-menu").hover(function(){
$(this).addClass("link-menu-hover");
},function(){
$(this).removeClass("link-menu-hover");
});
$(".menu").find("li").hover(function(){
$(this).addClass("menu-hover");
},function(){
$(this).removeClass("menu-hover");
});
$(".button-icon").hover(function(){
$(this).addClass("button-icon-hover");
},function(){
$(this).removeClass("button-icon-hover");
});
$(".dropdown-menu li").hover(function(){
$(this).addClass("dropdown-menu-hover");
},function(){
$(this).removeClass("dropdown-menu-hover");
});
$(".dropdown-menu-button").hover(function(){
$(this).addClass("dropdown-menu-button-hover");
},function(){
$(this).removeClass("dropdown-menu-button-hover");
});
}
});
$.postify=function(_7){
var _8={};
var _9=function(_a,_b){
for(var _c in _a){
var _d=isFinite(_c)?(_b!=""?_b:"")+"["+_c+"]":(_b!=""?_b+".":"")+_c;
switch(typeof (_a[_c])){
case "number":
case "string":
case "boolean":
_8[_d]=_a[_c];
break;
case "object":
if(_a[_c].toUTCString){
_8[_d]=_a[_c].toUTCString().replace("UTC","GMT");
}else{
_9(_a[_c],_d!=""?_d:_c);
}
}
}
};
_9(_7,"");
return _8;
};
var dialog=new Object();
dialog.TYPE_EMAIL_DIALOG=1;
dialog.TYPE_PROGRESS_DIALOG=2;
dialog.TYPE_EXPORT_DIALOG=3;
dialog.PROCESS_STATUS_NOT_STARTED=0;
dialog.PROCESS_STATUS_INPROGRESS=1;
dialog.PROCESS_STATUS_COMPLETED=2;
dialog.PROCESS_STATUS_CANCELLED=3;
dialog.PROCESS_STATUS_ERROR=-1;
dialog.dialogs=new Array();
dialog.Email=function(_1,_2,_3,_4,_5,_6,_7,_8,_9){
this.title=_1;
this.callback=_2;
this.address=(_5)?_5:"";
this.message=(_6)?_6:"";
this.showSubject=(_7)?_7:false;
this.subject=(_8)?_8:"";
this.elementId=(_3)?_3:"dialog-email";
this.elementClass=(_4)?_4:"jquerydialog";
this.render=(_9)?_9:true;
if(this.render){
this.show();
}
};
dialog.Email.prototype={getAddress:function(){
return this.address;
},getMessage:function(){
return this.message;
},getSubject:function(){
return this.subject;
},validate:function(){
var _a=new String(this.address);
var _b=null;
if(_a.length==0){
_b=new msg.Message(12,"Please enter an email address.",msg.PRIORITY_HIGH);
return false;
}
if(_a.indexOf("@")==-1){
_b=new msg.Message(13,"The email address "+_a+" is not valid.",msg.PRIORITY_HIGH);
return false;
}
return true;
},show:function(){
var _c=this;
var _d=$(document.createElement("div"));
_d.addClass(this.elementClass);
_d.attr("id",this.elementId);
var _e=$(document.createElement("div"));
_e.addClass("FormGroup");
_d.append(_e);
var _f=$(document.createElement("label"));
_f.addClass("TextLabel");
_f.text("To:");
_f.width(120);
_e.append(_f);
var _10=$(document.createElement("input"));
_10.attr("type","text");
_10.width(400);
_10.autocomplete(util.urls.getUrl("AutocompleteEmailAddress"),{dataType:"json",parse:function(_11){
var _12=new Array();
for(var i=0;i<_11.length;i++){
_12[i]={data:htmlEncode(_11[i]),value:_11[i],result:_11[i]};
}
return _12;
},formatItem:function(row){
return row;
},delay:100,matchSubset:false,multiple:true,multipleSeparator:"; "});
_10.change(function(){
_c.address=$(this).val();
});
_10.result(function(){
_c.address=$(this).val();
});
_e.append(_10);
_c.addressTextBox=_10;
var _13=$(document.createElement("div"));
_13.addClass("FormGroup");
_d.append(_13);
var _14=$(document.createElement("label"));
_14.addClass("TextLabel");
_14.text("Message:");
_14.width(120);
_13.append(_14);
var _15=$(document.createElement("textarea"));
_15.attr("cols","55");
_15.attr("rows","3");
_15.width(400);
_15.change(function(){
_c.message=$(this).val();
});
_13.append(_15);
_c.messageTextbox=_15;
$("#container").append(_d);
_d.dialog({title:this.title,autoOpen:true,modal:true,resizable:false,width:600,buttons:{"Send":function(){
if(_c.validate()){
if(_c.callback.apply(_c)!==false){
$(this).dialog("close");
}
}
},"Cancel":function(){
$(this).dialog("close");
}}});
}};
dialog.Progress=function(_16,_17,_18,_19,_1a){
this.title=_16;
this.callback=_17;
this.elementId=(_18)?_18:"progressDialog";
this.elementClass=(_19)?_19:"jquerydialog";
this.render=(_1a)?_1a:true;
this.val=0;
this.statusMessage=new Array();
this.body=null;
this.statusElem=null;
this.status=dialog.PROCESS_STATUS_NOT_STARTED;
if(this.render){
this.show();
}
};
dialog.Progress.prototype={value:function(_1b){
if(_1b){
this.val=_1b;
$("#"+this.elementId+"-pbar").progressbar("option","value",_1b);
}else{
return this.val;
}
},addStatusMessage:function(_1c,_1d,_1e){
if(typeof (_1c)=="string"){
_1c=$("<li>"+_1c+"</li>");
}else{
_1c.wrapAll("<li>");
}
if(_1e){
_1e.setParent(_1c);
var _1f=$("<span  class='ui-icon ui-icon-info ajaxlink' onclick='renderer.Render()'></span>");
_1c.append(_1f);
}
if(_1d){
if(this.statusElem!=null){
this.statusElem.empty;
}
this.statusMessage=new Array();
}
this.statusMessage[this.statusMessage.length]=_1c;
if(this.statusElem!=null){
this.statusElem.append(_1c);
}
},hide:function(){
if(this.body!=null){
this.body.dialog("close");
}
},init:function(){
this.value(0);
statusMessage=new Array();
},finish:function(){
$("#"+this.progressBarId()).progressbar("value",0);
$("#"+this.statusListId()).html("");
this.callback.apply(this,[this.processStatus()]);
},progressBarId:function(){
return this.elementId+"-pbar";
},statusListId:function(){
return this.elementId+"-status";
},processStatus:function(_20){
if(_20){
console.log("processStatus set to ",_20,this);
this.status=_20;
}
return this.status;
},show:function(){
var _21=this;
this.body=document.getElementById(this.elementId);
if(this.body==null){
this.body=$(document.createElement("div"));
this.body.attr("id",this.elementId);
this.body.addClass(this.elementClass);
var _22=$(document.createElement("div"));
_22.attr("id",this.progressBarId());
this.body.append(_22);
var _23=$(document.createElement("div"));
_23.addClass("scrollable");
this.body.append(_23);
this.statusElem=$(document.createElement("ul"));
this.statusElem.attr("id",this.statusListId());
_23.append(this.statusElem);
if(this.statusMessage.length>0){
for(var i=0;i<this.statusMessage.length;i++){
this.statusElem.append("<li>"+this.statusMessage[i]+"</li>");
}
}
$("#container").append(this.body);
$("#"+this.progressBarId()).progressbar({value:0});
this.body.dialog({title:this.title,width:600,modal:true,resizable:false,buttons:{"Cancel":function(){
_21.processStatus(dialog.PROCESS_STATUS_CANCELLED);
$(this).dialog("close");
}},beforeclose:function(_24,ui){
if($("#"+_21.progressBarId()).progressbar("option","value")<100){
if(_21.processStatus()==dialog.PROCESS_STATUS_INPROGRESS){
if(confirm("The task has not completed, exiting will interupt the task. \n Continue?")){
_21.processStatus(dialog.PROCESS_STATUS_CANCELLED);
}else{
return false;
}
}
}
return true;
},close:function(_25,ui){
if(_21.processStatus()==dialog.PROCESS_STATUS_INPROGRESS){
_21.processStatus(dialog.PROCESS_STATUS_COMPLETED);
}
_21.finish();
}});
}else{
this.body=$(this.body);
this.init();
this.body.dialog("open");
}
this.processStatus(dialog.PROCESS_STATUS_INPROGRESS);
}};
dialog.ExportDialog=function(_26,_27,_28,_29,_2a,_2b){
this.title=_26;
this.exportAction=_27;
this.callback=_28;
this.elementId=(_29)?_29:"export-dialog";
this.elementClass=(_2a)?_2a:"jquerydialog";
this.render=(_2b)?_2b:true;
this.body=null;
this.index=0;
this.refreshList=true;
this.status=dialog.PROCESS_STATUS_NOT_STARTED;
if(this.render){
this.show();
}
};
dialog.ExportDialog.prototype={Index:function(_2c){
if(_2c){
var _2d=this;
var _2e=this.exportAction.Documents()[this.index].DocumentCode();
var _2f=$(document.getElementById(this.elementId+"-"+this.exportAction.Documents()[this.index].ID()));
var div=$(document.createElement("div"));
div.addClass("export-results");
div.addClass("hover-message-wrapper");
var _30=$(document.createElement("span"));
_30.addClass("ui-icon");
var _31=this.exportAction.Results()[this.index];
if(_31&&_31.Exported){
_30.addClass("ui-icon-check");
_30.addClass("ui-icon-green");
}else{
_30.addClass("ui-icon-closethick");
_30.addClass("ui-icon-red");
}
div.attr("id",this.exportAction.Documents()[this.index].ID()+"-info");
var i=_2d.Index();
div.prepend(_30);
_2f.append(div);
_2d.ShowResults(i);
$(_2f).show();
this.index=_2c;
if(this.index==this.exportAction.Documents().length){
this.body.dialog("option","buttons",{"Close":function(){
$(this).dialog("close");
}});
}
}
return this.index;
},ExportAction:function(_32){
if(_32){
this.exportAction=_32;
this.index=0;
this.status=dialog.PROCESS_STATUS_NOT_STARTED;
this.refreshList=true;
}
return this.exportAction;
},processStatus:function(_33){
if(_33){
console.log("process status set to",_33,this);
this.status=_33;
}
return this.status;
},cancelExport:function(){
var _34=new Array();
this.processStatus=spectra.globals.PROCESS_STATUS_CANCELLED;
_34[0]=spectra.globals.PROCESS_STATUS_CANCELLED;
this.callback.apply(this,_34);
this.body.dialog("close");
},finish:function(){
$("#"+this.elementId+"-list").html("");
},startExport:function(){
var _35=this;
var _36=new Array();
_36[0]=this.status;
this.body.dialog("option","buttons",{"Cancel":function(){
var _37=new Array();
_35.processStatus(spectra.globals.PROCESS_STATUS_CANCELLED);
_37[0]=spectra.globals.PROCESS_STATUS_CANCELLED;
_35.callback.apply(this,_37);
$(this).dialog("close");
}});
this.body.addClass("waiting");
this.callback.apply(this,_36);
},show:function(){
var _38=this;
this.body=$("#"+this.elementId);
if(this.body.html()==null){
this.body=$(document.createElement("div"));
this.body.attr("id",this.elementId);
this.body.addClass(this.elementClass);
var _39=$(document.createElement("p"));
_39.attr("id",this.elementId+"-heading");
_39.text("The following documents will be exported.");
this.body.append(_39);
var _3a=$(document.createElement("ul"));
_3a.attr("id",this.elementId+"-list");
var _3b=null;
var _3c=null;
var _3d=null;
for(var i=0;i<this.exportAction.Documents().length;i++){
_3b=$(document.createElement("li"));
_3d="Document "+this.exportAction.Documents()[i].DocumentCode()+" "+this.exportAction.Documents()[i].DocumentType();
_3b.attr("id",this.elementId+"-"+this.exportAction.Documents()[i].ID());
_3b.text(_3d);
_3a.append(_3b);
}
this.body.append(_3a);
$("#container").append(this.body);
this.refreshList=false;
this.body.dialog({width:600,height:400,modal:true,resizable:false,buttons:{"Continue":function(){
_38.startExport();
},"Cancel":function(){
_38.cancelExport();
}},beforeclose:function(_3e,ui){
if(_38.Index()<_38.ExportAction().Documents().length){
if(confirm("The task has not completed, exiting will interupt the task. \n Continue?")){
_38.processStatus=dialog.PROCESS_STATUS_CANCELLED;
return true;
}else{
return false;
}
}
},close:function(_3f,ui){
console.dir(this);
console.dir(_3f);
console.dir(_38);
_38.processStatus=dialog.PROCESS_STATUS_COMPLETED;
_38.finish();
_38.cleanup();
}});
}else{
if(this.refreshList){
var _3a=$(document.getElementById(this.elementId+"-list"));
_3a.html("");
var _3b=null;
var _3c=null;
var _3d=null;
for(var i=0;i<this.documents.length;i++){
_3b=$(document.createElement("li"));
_3d="Document "+this.elementID+"-"+this.exportAction.Documents()[i].DocumentCode()+" "+this.exportAction.Documents()[i].DocumentType();
_3b.attr("id",this.exportAction.Documents()[i].ID());
_3b.text(_3d);
_3a.append(_3b);
}
this.body.append(_3a);
}
this.body.dialog("option","buttons",{"Continue":function(){
_38.startExport();
},"Cancel":function(){
_38.cancelExport();
}});
this.body.dialog("open");
}
},hide:function(){
this.body.hide();
},ShowResults:function(_40){
var div=document.getElementById(this.exportAction.Documents()[_40].ID()+"-results");
var _41;
if(div==null){
div=$(document.createElement("div"));
div.attr("id",this.exportAction.Documents()[_40].ID()+"-results");
div.append(this.exportAction.Results()[_40].html);
div.addClass("hover-message");
var id=this.exportAction.Documents()[_40].ID()+"-info";
var _42=$(document.getElementById(id));
$(div).css("left",-320);
$(div).css("width",300);
_42.append(div);
var _43=this;
_42.hover(function(){
var p=$(this).position().top;
var h=$(this).children(".hover-message").eq(0).height();
var _44=_43.body.height();
var _45=_43.body.position().top;
$(this).css("background-color","#008ad7");
if(p+h>_44){
var pos=(_44+_45)-(h+p)-5;
$(this).children(".hover-message").css("margin-top",-(_44-p));
}
},function(){
$(this).css("background-color","");
});
}
},cleanup:function(){
this.body.dialog("destroy");
this.body.remove();
}};
spectra.namespaces("spectra.entities");
spectra.entities.Document=function(_1,_2,_3){
this.uid=_1;
this.code=_2;
this.type=(_3)?_3:null;
};
spectra.entities.Document.prototype={ID:function(id){
if(id){
this.uid=id;
}
return this.uid;
},DocumentCode:function(_4){
if(_4){
this.code=_4;
}
return this.code;
},DocumentType:function(_5){
if(_5){
this.type=_5;
}
return this.type;
}};
var error=new Object();
error.ERROR_UNKNOWN=0;
error.ERROR_XHTTP=1;
error.ERROR_FAILURE=2;
error.ERROR_DUPLICATEID=3;
error.ERROR_SERVER=4;
error.debugMode=0;
error.errors=new Array();
error.count=0;
error.Handler=function(_1,_2,_3,_4,_5,_6){
console.log("handling error");
this.errorObj=new error.ErrorObj(_1,_2,_3);
error.errors[error.count]=this;
error.count++;
$("#errorhandler_content").html(this.errorObj.message);
this.show=(_5)?_5:true;
this.showDetail=(_6)?_6:false;
this.displayInline=(_4)?_4:true;
this.display();
};
error.Handler.prototype={display:function(){
if(this.displayInline){
var _7=$(document.createElement("div"));
_7.addClass("error");
var _8=$(document.createElement("p"));
_8.text(this.errorObj.message);
_8.addClass("error-message");
_7.append(_8);
if(this.showDetail&&!this.show){
var _9=$(document.createElement("p"));
_9.append(this.errorObj.detail);
_9.addClass("error-detail");
_7.append(_9);
}
if(this.show){
var _a=document.getElementById("messageWrapper");
if(_a==null){
_a=$("<div id='messageWrapper'></div>");
_7.attr("id","message");
_a.html(_7);
$("#wrapper").before(_a);
_a.show("normal");
}else{
_7.attr("id","message");
_a=$(_a);
_a.html(_7);
_a.show("normal");
}
}
return _7;
}else{
if(this.show){
var _b=new msgDialog.Message(10,this.message,msg.HIGH_PRIORITY);
}else{
var _b=new msgDialog.Message(10,this.message,msg.HIGH_PRIORITY,-1,false);
}
}
}};
error.ErrorObj=function(_c,_d,_e){
this.message=_c;
this.errorType=_d;
this.detail=_e;
};
error.ErrorObj.prototype={getMessage:function(){
return this.message;
},getDetail:function(){
return this.detail;
},getErrorType:function(){
return this.errorType;
}};
spectra.namespaces("spectra.ui.events");
spectra.ui.events.eventIndex=0;
spectra.ui.events.eventArray=[];
spectra.ui.events.EventType={TimedEvent:0,DataChangeEvent:1,InputChangeEvent:2};
spectra.ui.events.timedevent=function(_1,_2,_3){
this.delay=_1;
this.callback=_2;
this.callerObj=_3;
this.index=spectra.ui.events.eventIndex++;
spectra.ui.events.eventArray[this.index]=this;
};
spectra.ui.events.timedevent.prototype={applyCallback:function(){
this.callback.apply(this);
},cancel:function(){
clearTimeout(this.id);
},start:function(){
var _4=this.index;
this.id=setTimeout(function(){
spectra.ui.events.eventArray[_4].applyCallback();
},this.delay);
},clear:function(){
this.cancel();
spectra.ui.events.eventArray[this.index]=null;
},caller:function(){
return this.callerObj;
},restart:function(){
this.cancel();
this.start();
}};
spectra.ui.events.Event=function(_5,_6){
this.listeners=[];
this.event=null;
this.data=_5;
this.type=_6;
};
spectra.ui.events.Event.prototype={AddListener:function(_7,_8){
this.listeners.push({callback:_7,parent:_8});
},RemoveListener:function(_9){
for(var i=0;i<this.listeners.length;i++){
if(this.listeners[i]==_9){
this.listeners.splice(i,1);
}
}
},OriginalEvent:function(_a){
if(_a){
this.event=_a;
}
return this.event;
},EventData:function(){
return this.data;
},EventType:function(){
return this.type;
},FireEvent:function(_b,_c){
for(var i=0;i<this.listeners.length;i++){
var _d=[];
this.OriginalEvent(_b);
_d[0]=this;
_d[1]=_c;
this.listeners[i].callback.apply(this.listeners[i].parent,_d);
}
}};
spectra.namespaces("spectra.globals");
spectra.namespaces("spectra.globals.actions");
spectra.globals.PROCESS_STATUS_NOT_STARTED=0;
spectra.globals.PROCESS_STATUS_INPROGRESS=1;
spectra.globals.PROCESS_STATUS_COMPLETED=2;
spectra.globals.PROCESS_STATUS_CANCELLED=3;
spectra.globals.PROCESS_STATUS_ERROR=-1;
spectra.globals.store=new Array();
spectra.globals.storeIndex=0;
spectra.globals.RemoveAction=function(id){
globals.store[id]=null;
};
spectra.globals.Action=function(id,_1,_2){
this.id=id;
this.actionData=(_1)?_1:null;
this.request=(_2)?_2:null;
this.status=spectra.globals.PROCESS_STATUS_NOT_STARTED;
spectra.globals.store[this.id]=this;
this.index=0;
};
spectra.globals.Action.prototype={Data:function(_3){
if(_3){
this.actionData=_3;
}
return this.actionData;
},getId:function(){
return this.id;
},Request:function(_4){
if(_4){
this.request=_4;
}
return this.request;
},Status:function(_5){
if(_5){
this.status=_5;
}
return this.status;
},Index:function(_6){
if(_6){
this.index=_6;
}
return this.index;
}};
spectra.globals.actions.EmailAction=function(){
this.data=null;
this.subject="";
this.message="";
this.address="";
};
spectra.globals.actions.EmailAction.prototype={Data:function(_7){
if(_7){
this.data=_7;
}
return this.data;
},Subject:function(_8){
if(_8){
this.subject=_8;
}
return this.subject;
},Address:function(_9){
if(_9){
this.address=_9;
}
return this.address;
},Message:function(_a){
if(_a){
this.message=_a;
}
return this.message;
}};
spectra.globals.actions.ExportAction=function(){
this.documents=[];
this.exportresults=[];
this.exportgroup=null;
};
spectra.globals.actions.ExportAction.prototype={Documents:function(_b){
if(_b){
this.documents=_b;
}
return this.documents;
},ClearDocuments:function(){
this.Documents=[];
},Results:function(){
return this.exportresults;
},ExportGroup:function(_c){
if(_c){
this.exportgroup=_c;
}
return this.exportgroup;
}};
var htmlHelper=function(){
var _1={project:"~/Project/Profile/{id}"};
var _2={project:"View the project profile for \"{0}\""};
var _3="/WebClient";
function _4(_5,p0,p1,p2){
return _5.replace(/[~]/,_3).replace(/[{]0[}]/,encodeURIComponent(p0)).replace(/[{]1[}]/,encodeURIComponent(p1)).replace(/[{]2[}]/,encodeURIComponent(p2));
};
function _6(_7,_8){
var _9=$(document.createElement("a"));
_9.attr("href",_4(_1.project,_7));
_9.attr("title",_4(_2.project,_8));
_9.text(data[i].ProjectName);
return _9;
};
return {ProjectLink:_6,SetVirtualPath:function(_a){
_3=_a;
}};
}();
spectra.namespaces("spectra.ui.inputfields");
spectra.ui.inputfields.FieldTypes={Text:0,Numeric:1,Date:2,AutoComplete:3,List:4,DataTable:5};
spectra.ui.inputfields.InputListType={Default:0,OptionList:1,CheckedList:2};
spectra.ui.inputfields.AutoCompleteType={Company:0,Project:1,Tag:2};
spectra.ui.inputfields.SetDefault=function(_1,_2){
switch(_2.FieldType){
case spectra.ui.inputfields.FieldTypes.List:
_1.SetSelected(_2.DefaultValueKey);
break;
case spectra.ui.inputfields.FieldTypes.Date:
_1.SetDate(_2.Value);
break;
}
};
spectra.ui.inputfields.ListInputField=function(_3,_4,_5,_6){
this.data=_4;
this.name=_6;
this.elemParent=_3;
this.element=document.createElement("ul");
element=this.element;
element.className="inputfield inputfield-list";
this.event=_5;
this.selected=null;
this.items=[];
this.selectedItem="";
this.createOptionElement=function(_7,_8){
var _9=document.createElement("li");
_9.setAttribute("id","optionlist-"+_7.Key);
var _a=document.createElement("a");
var _b=$(_a);
_a.innerHTML=_7.Value;
_a.setAttribute("for","optionlist-"+_7.Key);
if(!_8){
_a.className="optionlist-unselected";
}else{
_a.className="optionlist-selected";
this.selected=_a;
}
this.items[_9.getAttribute("id")]=new spectra.ui.inputfields.ListInputFieldElement(_9,_a,_7.Key);
$(_9).append(_a);
$(this.element).append(_9);
var _c=this;
_b.click(function(_d){
var _e=$(this);
if(!_e.hasClass("optionlist-selected")){
var _f=$(_c.selected);
_f.removeClass("optionlist-selected");
if(!_f.hasClass("optionlist-unselected")){
_f.addClass("optionlist-unselected");
}
_b.addClass("optionlist-selected");
_c.selected=_a;
}
_c.event.FireEvent(_d,_c.items[_9.getAttribute("id")].Key());
});
};
};
spectra.ui.inputfields.ListInputField.prototype={show:function(){
switch(this.data.ListType){
case spectra.ui.inputfields.InputListType.Default:
break;
case spectra.ui.inputfields.InputListType.OptionList:
for(var i in this.data.Values){
this.createOptionElement(this.data.Values[i],this.data.DefaultValueKey==this.data.Values[i].Key);
}
$(this.elemParent).append(this.element);
$(this.elemParent).append("<div class=\"clear\"></div>");
break;
case spectra.ui.inputfields.InputListType.CheckedList:
break;
}
},ParentElement:function(){
return this.elemParent;
},Event:function(){
return this.event;
},SetSelected:function(key){
console.log("list setselected",key);
$("#optionlist-"+key+" a").click();
},Key:function(){
return this.name;
},Init:function(){
if(!this.selected){
$("#optionlist-"+this.data.DefaultValueKey+" a").click();
}else{
$(this.selected).click();
}
}};
spectra.ui.inputfields.ListInputFieldElement=function(_10,_11,key){
this.input=_10;
this.key=key;
this.label=_11;
};
spectra.ui.inputfields.ListInputFieldElement.prototype={Key:function(){
return this.key;
},Element:function(){
return this.input;
},Link:function(){
return this.label;
}};
spectra.ui.inputfields.DateInputField=function(_12,_13,key,_14,_15){
this.data=_15;
this.name=_13;
this.key=key;
this.elemParent=_12;
this.element=document.createElement("div");
this.elemParent.setAttribute("order",this.data.Order);
this.element.className="inputfield inputfield-date";
this.event=_14;
this.input=null;
this.date=null;
this.createDatePicker=function(_16,key){
var _17=document.createElement("input");
_17.setAttribute("type","text");
_17.setAttribute("id",key);
_17.setAttribute("name",_16);
this.input=_17;
var _18=document.createElement("label");
_18.innerHTML=_16;
_18.setAttribute("class","TextLabel TextLabel-inline");
_18.setAttribute("for",key);
$(this.element).append(_18);
$(this.element).append(_17);
spectra.reporting.AddInitCall(this.Init,this);
var _19=this;
$(_17).change(function(_1a){
_19.event.FireEvent(_1a,_1a.target.value);
});
};
};
spectra.ui.inputfields.DateInputField.prototype={show:function(){
try{
this.createDatePicker(this.name,this.key);
$(this.elemParent).append(this.element);
}
catch(e){
console.log("error",e);
}
},ParentElement:function(){
return this.elemParent;
},Event:function(){
return this.event;
},Init:function(){
var _1b=$("#"+this.key);
console.log("setting date "+this.date);
_1b.datepicker({dateFormat:"yy-mm-dd"});
if(this.date){
var _1c=new Date(this.date);
console.log(navigator.userAgent);
if(navigator.userAgent.match("MSIE")){
_1b.datepicker("setDate",_1c.toDateString());
}else{
_1b.datepicker("setDate",_1c);
}
}
},SetDate:function(_1d){
this.date=_1d;
var _1e=new Date(_1d);
if(navigator.userAgent.match("MSIE")){
$("#"+this.key).datepicker("setDate",_1e.toDateString());
}else{
$("#"+this.key).datepicker("setDate",_1e);
}
},Key:function(){
return this.key;
}};
spectra.ui.inputfields.TextInputField=function(_1f,_20,key,_21){
this.name=_20;
this.key=key;
this.elemParent=_1f;
this.element=document.createElement("div");
this.element.className="inputfield inputfield-text";
this.event=_21;
this.createTextField=function(_22,key){
var _23=document.createElement("input");
_23.setAttribute("type","text");
_23.setAttribute("id",key+"-"+_22);
_23.setAttribute("name",_22);
var _24=document.createElement("label");
_24.innerHTML=_22;
_24.setAttribute("class","TextLabel TextLabel-inline");
_24.setAttribute("for",key+"-"+_22);
$(this.element).append(_24);
$(this.element).append(_23);
var _25=this;
$(_23).change(function(_26){
_25.event.FireEvent(_26,_26.target.value);
});
};
};
spectra.ui.inputfields.TextInputField.prototype={show:function(){
this.createTextField(this.name,this.key);
$(this.elemParent).append(this.element);
},ParentElement:function(){
return this.elemParent;
},Event:function(){
return this.event;
},Key:function(){
return this.key;
},SetText:function(_27){
$("#"+this.key+"-"+this.name).text(_27);
},Init:function(){
}};
spectra.ui.inputfields.AutoInputField=function(_28,_29,key,_2a,_2b){
this.name=_29;
this.key=key;
this.elemParent=_28;
this.element=document.createElement("div");
this.element.className="inputfield inputfield-auto";
this.event=_2a;
this.input=null;
this.autoType=_2b;
this.getURLKey=function(_2c){
switch(_2c){
case spectra.ui.inputfields.AutoCompleteType.Project:
return "AutoCompleteProject";
case spectra.ui.inputfields.AutoCompleteType.Company:
return "AutoCompleteCompany";
case spectra.ui.inputfields.AutoCompleteType.Tag:
return "AutoCompleteTag";
}
};
this.createAutoComplete=function(_2d,key){
var _2e=document.createElement("input");
this.input=_2e;
_2e.setAttribute("type","text");
_2e.setAttribute("id",key+"-"+_2d);
_2e.setAttribute("name",_2d);
var _2f=document.createElement("label");
_2f.innerHTML=_2d;
_2f.setAttribute("class","TextLabel");
_2f.setAttribute("for",key+"-"+_2d);
$(this.element).append(_2f);
$(this.element).append(_2e);
var _30=this;
$(_2e).change(function(_31){
_30.event.FireEvent(_31,_31.target.value);
});
spectra.reporting.AddInitCall(this.Init,this);
};
};
spectra.ui.inputfields.AutoInputField.prototype={show:function(){
this.createAutoComplete(this.name,this.key);
$(this.elemParent).append(this.element);
},ParentElement:function(){
return this.elemParent;
},Event:function(){
return this.event;
},Key:function(){
return this.key;
},Init:function(){
console.log(util.urls.getUrl("AutoCompleteProject"));
$("#"+this.key+"-"+this.name).autocomplete(util.urls.getUrl("AutoCompleteProject"),{dataType:"json",parse:function(_32){
var _33=new Array();
for(var i=0;i<_32.length;i++){
_33[i]={data:htmlEncode(_32[i]),value:_32[i],result:_32[i]};
}
return _33;
},formatItem:function(row){
return row;
},delay:100,matchSubset:false,multiple:false});
}};
spectra.ui.inputfields.NumericInputField=function(_34,_35,key,_36){
this.name=_35;
this.key=key;
this.elemParent=_34;
this.element=document.createElement("div");
this.element.className="inputfield inputfield-num";
this.event=_36;
this.createTextField=function(_37,key){
var _38=document.createElement("input");
_38.setAttribute("type","text");
_38.setAttribute("id",key+"-"+_37);
_38.setAttribute("name",_37);
var _39=document.createElement("label");
_39.innerHTML=_37;
_39.setAttribute("class","TextLabel TextLabel-inline");
_39.setAttribute("for",key+"-"+_37);
$(this.element).append(_39);
$(this.element).append(_38);
var _3a=this;
$(_38).keypress(function(e){
if(e.which<=31||e.which>=39){
var _3b=$(_38).text();
$(_38).text(_3b.slice(0,_3b.length-2));
}
});
$(_38).change(function(_3c){
_3a.event.FireEvent(_3c,_3c.target.value);
});
};
};
spectra.ui.inputfields.NumericInputField.prototype={show:function(){
this.createTextField(this.name,this.key);
$(this.elemParent).append(this.element);
},ParentElement:function(){
return this.elemParent;
},Event:function(){
return this.event;
},Key:function(){
return this.key;
},SetValue:function(val){
$("#"+this.key+"-"+this.name).text(val);
},Init:function(){
}};
spectra.ui.inputfields.CompanyInputField=function(_3d,_3e,key,_3f,_40){
this.jsondata=eval(_40);
this.companies={};
this.name=_3e;
this.key=key;
this.elemParent=_3d;
this.element=document.createElement("select");
this.element.setAttribute("id",key);
this.element.className="inputfield inputfield-company";
this.label=document.createElement("label");
this.label.setAttribute("for",key);
this.label.setAttribute("class","TextLabel TextLabel-inline");
$(this.label).text("Company");
this.event=_3f;
this.addLevel=function(_41,_42){
for(var i=0;i<_42;i++){
_41="&nbsp&nbsp "+_41;
}
return _41;
};
this.addChildren=function(_43,_44){
console.log("adding a child to parent ",_43);
if(!_43.children){
_43.children=[];
}
_44.parent=_43;
var _45=0;
for(var i=0;i<_43.children.length;i++){
console.log("comparing ","parent "+_43.children[i].Name," child "+_44.Name," result "+_43.children[i].Name.localeCompare(_44.Name));
if(_43.children[i].Name.localeCompare(_44.Name)==-1){
console.log("setting index ",i);
_45=i;
}
}
console.log("child index",_45);
_43.children.splice(_45+1,0,_44);
};
this.siblingPosition=function(_46){
if(!_46.parent){
console.log("unable to find sibling");
return null;
}else{
if(_46.parent.children.length==0){
return _46.parent;
}
}
for(var i=0;i<_46.parent.children.length;i++){
if(_46.CompanyUUID==_46.parent.children[i].CompanyUUID){
var _47=i;
console.log("sibling index ",_47,i);
}
}
if(_47>0){
return _46.parent.children[_47-1];
}else{
return _46.parent;
}
};
this.createOption=function(_48,key,_49,_4a){
var _4b=document.createElement("option");
_4b.setAttribute("id",key);
_4b.setAttribute("value",key);
$(_4b).html(_48);
console.log("createoption ",_4a,_49);
if(_4a>0&&_49){
console.log(_48+" adding after ",_49);
$(_49).after(_4b);
}else{
console.log("appending "+_48);
$(this.element).append(_4b);
}
return _4b;
};
this.addChildCompany=function(_4c){
if(!_4c.element){
_4c.Name=this.addLevel(_4c.Name,_4c.Distance);
var sib=this.siblingPosition(_4c);
console.log("sibling ",sib!=null,sib);
if(sib!=null){
_4c.element=this.createOption(_4c.Name,_4c.CompanyUUID,sib.element,_4c.Distance);
}else{
_4c.element=this.createOption(_4c.Name,_4c.CompanyUUID,null,_4c.Distance);
}
}
this.companies[_4c.CompanyUUID]=_4c;
};
this.addRootCompany=function(_4d){
if(_4d.Distance!=0){
this.addChildCompany(_4d);
}else{
_4d.Name=this.addLevel(_4d.Name,_4d.Distance);
_4d.element=this.createOption(_4d.Name,_4d.CompanyUUID,null);
this.companies[_4d.CompanyUUID]=_4d;
}
};
this.addParentCompany=function(_4e){
var _4f=null;
var _50=null;
console.log("adding parent");
if(!this.companies[_4e.ParentCompanyUUID]){
for(var i=0;i<this.jsondata.length;i++){
if(this.jsondata[i].CompanyUUID==_4e.ParentCompanyUUID){
_4f=this.jsondata.splice(i,1)[0];
console.log("found parent",_4f);
this.addRootCompany(_4f);
}
}
if(_4e.ParentCompanyUUID==null){
_4e.element=this.createOption(_4e.Name,_4e.CompanyUUID,this.element,0);
}else{
_4e.Name=this.addLevel(_4e.Name,_4e.Distance);
_4e.element=this.createOption(_4e.Name,_4e.CompanyUUID,this.element,0);
}
this.companies[_4e.CompanyUUID]=_4e;
}
if(_4f){
this.addChildren(_4f,_4e);
}
};
};
spectra.ui.inputfields.CompanyInputField.prototype={show:function(){
var _51=null;
var _52=null;
while(this.jsondata.length>0){
_51=this.jsondata.shift();
if(_51.ParentCompanyUUID==null){
this.addRootCompany(_51);
}else{
if(!this.companies[_51.ParentCompanyUUID]){
console.log("if one");
this.addParentCompany(_51);
this.addChildCompany(_51);
}else{
console.log("if two");
this.addChildren(this.companies[_51.ParentCompanyUUID],_51);
this.addChildCompany(_51);
}
}
}
$(this.elemParent).append(this.label);
$(this.elemParent).append(this.element);
var _53=this;
$(this.element).change(function(_54){
_53.event.FireEvent(_54,_54.target.value);
});
},ParentElement:function(){
return this.elemParent;
},Event:function(){
return this.event;
},Key:function(){
return this.key;
},SetSelected:function(_55){
$("#"+_55).attr("selected","selected");
},Init:function(){
}};
var jsonrenderer=new Object();
jsonrenderer.RENDER_LIST=0;
jsonrenderer.RENDER_DLIST=1;
jsonrenderer.RENDER_OLIST=2;
jsonrenderer.RENDER_DIV=3;
jsonrenderer.Renderer=function(_1,_2,_3,_4,_5,_6,_7){
this.data=_1;
this.elem=$(_2);
this.fields=new Array();
this.baseClass=_3;
this.elem.addClass(this.baseClass);
this.title=_4;
this.show=(_5)?_5:true;
this.showAll=(_6)?_6:false;
this.mainElem=$(this.elem);
this.type=(_7)?_7:jsonrenderer.RENDER_DLIST;
if(this.show){
this.Render();
}
};
jsonrenderer.Renderer.prototype={setParent:function(_8){
this.elem=_8;
},BaseClass:function(){
return this.baseClass;
},ViewSpec:function(){
return this.data.ViewSpec;
},RenderType:function(){
return this.type;
},MainElem:function(){
return this.mainElem;
},Render:function(){
var _9=false;
console.log("render data");
if(this.HasCustomRenderer(this.data)){
this.CustomRenderers(this.data);
}
if(this.data.Group&&this.data.Title){
var _a=$(document.createElement("h3"));
_a.text(this.data.Title);
}
if(this.data instanceof Array){
console.log("render array",this.data);
for(var j=0;j<this.data.length;j++){
if(this.HasCustomRenderer(this.data[j])){
this.CustomRenderers(this.data[j]);
}else{
this.RenderValue(this.data,j);
}
}
}else{
console.log("render properties",this.data);
for(var i in this.data){
if(this.IsPropertyInSpec(this.data,i)){
this.RenderValue(this.data,i);
}
}
}
},IsPropertyInSpec:function(_b,_c){
if(_c=="ViewSpec"||_c=="Title"){
return false;
}
if(!_b.ViewSpec){
return this.showAll;
}
var _d=_b.ViewSpec[_c];
if(!_d){
return this.showAll;
}else{
return true;
}
},HasCustomRenderer:function(_e){
if(_e.CustomRenderer){
return true;
}
return false;
},CustomRenderers:function(_f){
switch(_f.CustomRenderer){
case "CaptionTextModel":
var _10=jsonrenderer.CaptionTextRenderer(this,_f.Caption,_f.Text);
break;
}
},AppendToMain:function(_11){
var num=this.mainElem.children().length;
if(this.mainElem.children(num-1).children()>0){
this.mainElem.children(num-1).before(_11);
}else{
this.mainElem.append(_11);
}
},AddNewMain:function(_12){
var _13=this.MainElem();
if((this.elem.is("div")||this.data.Group)&&this.type==jsonrenderer.RENDER_DLIST){
_13=$(document.createElement("ul"));
_13.addClass("jsonlist");
_12.append(_13);
}else{
if((this.elem.is("div")||this.data.Group)&&this.type==jsonrenderer.RENDER_LIST){
_13=$(document.createElement("ul"));
_13.addClass("jsonlist");
_12.append(_13);
}else{
if(this.data.Group&&this.type==jsonrenderer.RENDER_DIV){
_13=$(document.createElement("div"));
_13.addClass("jsonlist");
_12.append(_13);
}else{
if((this.elem.is("div")||this.data.Group)&&this.type==jsonrenderer.RENDER_OLIST){
_13=$(document.createElement("ol"));
_13.addClass("jsonlist");
_12.append(_13);
}
}
}
}
return _13;
},RenderValue:function(_14,i){
console.log("Render Value",i);
if(_14[i] instanceof Array){
for(var j=0;j<_14[i].length;j++){
if(this.HasCustomRenderer(_14[i][j])){
this.CustomRenderers(_14[i][j]);
}else{
this.RenderValue(_14[i],j);
}
}
}else{
if(_14[i] instanceof Object){
if(_14[i].Group){
var _15=jsonrenderer.NestRenderer(this,_14[i].Title);
}
this.fields[i]=new jsonrenderer.Renderer(_14[i],_15,this.baseClass+"-"+i,null,this.show,this.showAll,this.type);
}else{
if(this.MainElem().is("div")&&!(this.type==jsonrenderer.RENDER_DIV)){
this.mainElem=this.AddNewMain(this.MainElem());
}
this.fields[i]=new jsonrenderer.PropertyRenderer(this,i,_14);
}
}
}};
jsonrenderer.PropertyRenderer=function(_16,_17,_18){
this.Renderer=_16;
switch(_16.RenderType()){
case jsonrenderer.RENDER_DLIST:
this.name=_18.ViewSpec[_17];
this.value=_18[_17];
this.elem=jsonrenderer.CaptionTextRenderer(_16,this.name,this.value);
break;
case jsonrenderer.RENDER_DIV:
this.value=_18[_17];
this.elem=jsonrenderer.DefaultRenderer(_16,this.value,"div");
break;
default:
this.value=_18[_17];
this.elem=jsonrenderer.DefaultRenderer(_16,this.value,"li");
}
};
jsonrenderer.CaptionTextRenderer=function(_19,_1a,_1b){
if(_1b==null){
return;
}
var _1c=$(document.createElement("li"));
var _1d=$(document.createElement("div"));
_1d.addClass("jsonlist-dt");
_1d.text(_1a);
_1c.append(_1d);
var _1e=$(document.createElement("div"));
_1d.addClass("jsonlist-dd");
_1e.text(_1b);
_1c.append(_1e);
_19.AppendToMain(_1c);
};
jsonrenderer.DefaultRenderer=function(_1f,_20,_21){
if(_20==null){
return;
}
var _22=$(document.createElement(_21));
_22.addClass(this.Renderer.baseClass+_21);
if(_20){
_22.text(_20);
}
_1f.MainElem().append(_22);
};
jsonrenderer.NestRenderer=function(_23,_24){
switch(_23.RenderType()){
case jsonrenderer.RENDER_DLIST:
if(_23.MainElem().is("div")){
var _25=$(document.createElement("div"));
_25.addClass("jsonlist-group");
_23.AppendToMain(_25);
return _25;
}else{
var _26=$(document.createElement("dt"));
var _27=$(document.createElement("dd"));
_26.addClass(this.Renderer.baseClass+"-dt");
if(_24){
_26.text(_24);
}else{
_27.addClass("json-no-title");
}
_23.AppendToMain(_26);
_27.addClass(this.Renderer.baseClass+"-dd");
_23.AppendToMain(_27);
return _27;
}
break;
case jsonrenderer.RENDER_DIV:
break;
default:
this.elem=jsonrenderer.DefaultRenderer(_23,_24,"li");
return _27;
}
};
spectra.namespaces("spectra.maps");
spectra.maps.LocalKey;
spectra.maps.ProdKey;
spectra.maps.mapIndex=0;
spectra.maps.maps=new Array();
spectra.maps.InitialiseMap=function(_1,_2){
if(_2){
google.load("maps","2");
$(document).ready(function(){
spectra.maps.maps[spectra.maps.mapIndex]=new spectra.maps.map(_1,_2);
});
$(document).unload(function(){
google.maps.Unload();
});
}
};
spectra.maps.map=function(_3,_4){
if(!_4){
return;
}
if(!google){
return;
}
this.mapData=_4;
this.elemId=_3;
this.AddInfoWindow=function(_5,_6){
var _7=document.createElement("ul");
var _8=$(_7);
var _9=$("<li></li>");
_9.text(_6.Reference.Name);
_8.append(_9);
if(_6.Address.Street1){
_9=$("<li></li>");
_9.text(_6.Address.Street1);
_8.append(_9);
}
if(_6.Address.Street2){
_9=$("<li></li>");
_9.text(_6.Address.Street2);
_8.append(_9);
}
if(_6.Address.Street3){
_9=$("<li></li>");
_9.text(_6.Address.Street3);
_8.append(_9);
}
if(_6.Address.City){
_9=$("<li></li>");
_9.text(_6.Address.City);
_8.append(_9);
}
if(_6.Address.State){
_9=$("<li></li>");
_9.text(_6.Address.State);
_8.append(_9);
}
_5.bindInfoWindow(_7);
};
this.getIconFromEnum=function(_a){
switch(_a){
case 0:
return "Residential";
case 1:
return "Postal";
case 2:
return "Business";
case 3:
return "Project";
case 4:
return "Sample";
case 5:
return "Labratory";
}
};
if(google.maps.BrowserIsCompatible()){
var _b=new google.maps.Map2(document.getElementById("map_canvas"));
var _c=new google.maps.ClientGeocoder();
var _d=new google.maps.LatLng(_4.CentrePoint.Latitude,_4.CentrePoint.Longitude);
_b.setCenter(_d,16);
var _e=_b.getBounds();
_b.addControl(new google.maps.SmallMapControl());
_b.addControl(new google.maps.MapTypeControl());
var _f=new Array();
_f["Project"]=new google.maps.Icon(G_DEFAULT_ICON);
_f["Project"].image="http://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=home|0033CC";
_f["Sample"]=new google.maps.Icon(G_DEFAULT_ICON);
_f["Sample"].image="http://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=location|FFFF00";
var _10,_d,_11,i,_12;
for(i=0;i<_4.Markers.length;i++){
_12=_4.Markers[i];
_d=new google.maps.LatLng(_12.Address.Latitude,_12.Address.Longitude);
if(!_e.containsLatLng(_d)){
_e.extend(_d);
}
_11=_f[this.getIconFromEnum(_12.Address.Type)];
if(!_11){
_11=G_DEFAULT_ICON;
}
_10=new google.maps.Marker(_d,{icon:_11,title:_12.Reference.Name});
this.AddInfoWindow(_10,_12);
_b.addOverlay(_10);
}
_b.setZoom(_b.getBoundsZoomLevel(_e));
}
};
var msg=new Object();
msg.PRIORITY_LOW={id:1,lifetime:3};
msg.PRIORITY_DEFAULT={id:2,lifetime:5};
msg.PRIORITY_HIGH={id:3,lifetime:-1};
msg.messages=new Array();
msg.Message=function(id,_1,_2,_3,_4,_5){
this.id=id;
this.elementID="message_"+id;
this.message=_1;
msg.messages[id]=this;
this.priority=(_2)?_2:msg.PRIORITY_DEFAULT.id;
this.lifetime=(_3)?_3:this.defaultLifetime();
this.modal=(_5)?_5:false;
this.render=(_4)?_4:true;
if(this.lifetime>0){
this.fadeout=setTimeout("msg.messages['"+this.id+"'].clear()",this.lifetime*1000);
}
if(this.render){
this.show();
}
};
msg.Message.prototype={divElement:null,defaultLifetime:function(){
switch(this.priority){
case msg.PRIORITY_LOW.id:
return msg.PRIORITY_LOW.lifetime;
case msg.PRIORITY_HIGH.id:
return msg.PRIORITY_HIGH.lifetime;
default:
return msg.PRIORITY_DEFAULT.lifetime;
}
},clear:function(){
var _6=$("#"+this.elementID);
_6.dialog("close");
_6.dialog("remove");
_6.remove();
msg.messages[this.id]=null;
},show:function(){
var _7=document.createDocumentFragment();
var _8=document.createElement("div");
_8.setAttribute("class","jquerydialog");
_8.setAttribute("id",this.elementID);
var p=document.createElement("p");
p.setAttribute("style","padding: 20px;");
_8.appendChild(p);
var _9=document.createTextNode(this.message);
p.appendChild(_9);
this.divElement=_8;
_7.appendChild(_8);
console.log(_8);
document.getElementById("FooterWrapper").appendChild(_7);
$("#"+this.elementID).dialog({title:"Construction Hive",autoOpen:true,width:400,modal:this.modal,resizable:false,dialogClass:(this.modal)?"waiting":"",buttons:{"Close":function(){
$(this).dialog("close");
}}});
}};
var net=new Object();
net.REQUEST_TYPE_GET=0;
net.REQUEST_TYPE_POST=1;
net.READY_STATE_UNINITIALIZED=0;
net.READY_STATE_LOADING=1;
net.READY_STATE_LOADED=2;
net.READY_STATE_INTERACTIVE=3;
net.READY_STATE_COMPLETE=4;
net.REQUEST_DATA_TYPE_JSON="json";
net.REQUEST_DATA_TYPE_TEXT="text";
net.REQUEST_DATA_TYPE_HTML="html";
net.REQUEST_DATA_TYPE_XML="xml";
net.REQUEST_DATA_TYPE_SCRIPT="script";
net.REQUEST_DATA_TYPE_JSONP="jsonp";
net.cache=new Array();
net.AjaxRequest=function(_1,_2,_3,_4,_5,_6){
console.log("ajax constructor");
this.url=_1;
this.callback=_3;
this.requestType=(_2)?_2:net.REQUEST_TYPE_GET;
console.log("ajax "+_4);
this.params=(_4)?_4:"";
this.dataType=(_5)?_5:net.REQUEST_DATA_TYPE_JSON;
this.cache=false;
this.cacheKey=_1;
this.handleErrors=(_6)?_6:false;
};
net.AjaxRequest.prototype={request:null,requestType:function(_7){
if(_7){
this.requestType=_7;
}
return this.requestType;
},callBackThis:function(_8){
if(_8){
this.callbackRef=_8;
}
return (this.callbackRef)?this.callbackRef:this;
},dataType:function(_9){
if(_9){
this.dataType=_9;
}
return this.dataType;
},response:null,cacheResponse:function(_a){
this.cacheKey=_a;
this.cache=true;
},xhttp:function(){
var _b=this;
console.log("sending request");
if(this.cache){
if(net.cache[this.cacheKey]){
var _c=new Array();
_c[0]=net.cache[this.cacheKey];
this.callback.apply(this.callBackThis(),_c);
return;
}
}
if(this.requestType=net.REQUEST_TYPE_POST){
this.request=$.ajax({type:"POST",url:this.url,success:function(_d,_e){
_b.defaultCallback(_d,_e,_b);
},data:this.params,error:function(_f,_10,_11){
_b.defaultError(_f,_10,_11,_b);
},dataType:this.dataType});
}else{
this.request=$.ajax({type:"GET",url:this.url,success:function(_12,_13){
_b.defaultCallback(_12,_13,_b);
},error:function(_14,_15,_16){
_b.defaultError(_14,_15,_16,_b);
},dataType:this.dataType});
}
},defaultError:function(_17,_18,_19,_1a){
if(_1a.handleErrors){
if((!_19)&&_17.readyState==4&&_17.status==0&&_17.statusText==""&&_17.responseXML==null&&_17.getAllResponseHeaders()==null){
return;
}
var _1b="An error occurred communicating with the server";
if(_19){
_1b=_1b+" "+_19.toString();
}
var _1c=new error.Handler(_1b,error.ERROR_XHTTP,_17.responseText,false);
_1c.display();
}else{
_1a.response={Data:"",Status:3,Message:"An error occurred communicating with the server",Exception:_19};
var _1d=new Array();
_1d[0]=_1a.response;
_1a.callback.apply(this,_1d);
}
},defaultCallback:function(_1e,_1f,_20){
_20.response=_1e;
if(_20.handleErrors&&_20.dataType!=net.REQUEST_DATA_TYPE_HTML){
if(_1e.Status===1||_1e.Status===4){
var _21=new Array();
_21[0]=_1e;
if(this.cache){
net.cache[this.cacheKey]=_1e;
}
_20.callback.apply(this.callBackThis(),_21);
}else{
var _22=new error.Handler(_1e.Message,error.ERROR_XHTTP,"",true);
}
}else{
console.log("callback");
var _21=new Array();
_21[0]=_1e;
if(this.cache){
net.cache[this.cacheKey]=_1e;
}
_20.callback.apply(this.callBackThis(),_21);
}
},getAjaxError:function(_23){
var _24;
if(this.response.Status===2){
_24=error.ERROR_FAILURE;
}else{
_24=error.ERROR_XHTTP;
}
var _25=new error.Handler(_23,_24,this.response.Exception,false,false);
return _25.display();
}};
var util=new Object();
util.PageUrls=function(){
this.urls=new Array();
};
util.PageUrls.prototype={urls:Array,index:0,addUrl:function(_1,_2){
this.urls[_1]=_2;
this.index++;
},getUrl:function(_3){
return this.urls[_3];
}};
spectra.namespaces("spectra.account.manage");
spectra.account.manage.initialise=function(){
function _1(){
var _2=$(this).data("index");
if(_2>0){
$("#otherEmailWrapper_"+_2).replaceWith("");
}else{
$("#otherEmail_"+_2).val("");
$("#otherEmail_"+_2).hide();
$("#hiddenEmail_"+_2).val("");
$("#editEmail_"+_2).hide();
$("#deleteEmail_"+_2).hide();
}
$("#addEmail").show();
return false;
};
function _3(){
var _4=$(this).data("index");
$("#otherEmail_"+_4).removeAttr("disabled");
$("#editEmail_"+_4).hide();
$("#hiddenEmail_"+_4).replaceWith("");
$("#VerifyEmailInformation").show();
return false;
};
function _5(){
var _6=0;
while($("#otherEmailWrapper_"+_6).length!=0){
if(_6++>10){
break;
}
}
$("#otherEmailWrapper_"+(_6-1)).after($("<div />").attr("id","otherEmailWrapper_"+_6).addClass("FormGroup").append($("<a />").attr({id:"deleteEmail_"+_6,href:"#DeleteEmail"}).data("index",_6).append($("<span />").addClass("ui-icon").addClass("ui-icon-close").css("float","right").attr("title","Delete this email address")).click(_1)).append($("<input />").attr({id:"otherEmail_"+_6,name:"OtherEmailAddresses",value:"",type:"text"})));
if(_6>3){
$("#addEmail").hide();
}
$("#VerifyEmailInformation").show();
return false;
};
function _7(){
$("#VerifyEmailInformation").hide();
return false;
};
function _8(){
var _9=0;
while($("#otherEmailWrapper_"+_9).length!=0){
$otherEmail=$("#otherEmail_"+_9);
if($otherEmail.val()!=""){
$("#otherEmail_"+_9).attr("disabled","true").after($("<input />").attr({id:"hiddenEmail_"+_9,type:"hidden",name:"OtherEmailAddresses"}).val($otherEmail.val())).before($(" <a />").attr({id:"editEmail_"+_9,href:"#EditEmail"}).click(_3).data("index",_9).append($("<span />").addClass("ui-icon").addClass("ui-icon-pencil").css("float","right").attr("title","Edit"))).before($(" <a />").attr({id:"deleteEmail_"+_9,href:"#DeleteEmail"}).click(_1).data("index",_9).append($("<span />").addClass("ui-icon").addClass("ui-icon-close").css("float","right").attr("title","Delete this email address")));
}else{
if(_9>0){
$otherEmail.parent().replaceWith("");
}else{
$otherEmail.hide();
}
}
_9++;
}
$("#otherEmailList").append($(" <a />").attr({id:"addEmail",href:"#AddEmail"}).click(_5).append($("<span />").addClass("ui-icon").addClass("ui-icon-link").addClass("ui-icon-plusthick").css("float","right").attr("title","Add Email")).append($("<span />").text("Add email")).wrap($("<div />").addClass("formgroup")));
_7();
$("#VerifyEmailInformation").wrapInner($("<div />").css("padding","0px 10px")).prepend($("<div />").addClass("clear")).prepend($("<a />").attr({id:"HideVerifyInformation",href:"#HideVerifyInformation"}).addClass("linkright").click(_7).append($("<span />").addClass("ui-icon").addClass("ui-icon-close"))).css("background-color","#F7F7F7").css("border-color","#DDDDDD").append($("<div />").css("text-align","center").css("padding-bottom","5px").append($("<a />").attr("href","#CloseMessage").click(_7).text("close message")));
};
$(document).ready(_8);
};
spectra.namespaces("spectra.registeraccount");
spectra.registeraccount.tzData={};
spectra.registeraccount.initialiseTimeZone=function(){
$(document).ready(function(){
var tz=(new Date()).getTimezoneOffset().toString();
$("#TimeZone").children("[value="+spectra.registeraccount.tzData[tz]+"]").attr("selected",true);
});
};
jQuery.getWrappedJSON=function(_1,_2,_3,_4){
var _5={dataType:"json",type:"post",error:function(_6,_7,_8){
}};
var _9=$.extend({},_5,_4,{url:_1,data:_2});
_9.success=function(_a){
if(_a.successful){
if(_3){
_3(_a.data);
}
}else{
_9.error(_a);
}
};
$.ajax(_9);
};
spectra.namespaces("spectra.company");
spectra.company.manageCompany=function(){
var _b;
var _c;
function _d(){
var _e=10;
var _f="";
var _10="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
var _11="0123456789";
var _12="!#$%^&*_-+=?";
var _13=_10+_11+_12;
var _14=Math.floor(Math.random()*_e);
var _15=Math.floor(Math.random()*_e-1);
if(_15>=_14){
_15=_15+1;
}
for(var i=0;i<_e;i++){
var ch;
if(i==_14){
ch=_10.charAt(Math.floor(Math.random()*_10.length));
}else{
if(i==_15){
ch=_11.charAt(Math.floor(Math.random()*_11.length));
}else{
ch=_13.charAt(Math.floor(Math.random()*_13.length));
}
}
_f=_f.concat(ch);
}
return _f;
};
function _16(_17,_18,ui){
$("#mc-errorlist").empty();
var _19=_17;
_19.effect("highlight",undefined,"slow");
var _1a=Array();
var _1b=ui.draggable.siblings(".ui-selected").add(ui.draggable);
_1b.each(function(){
_1a.push($(this).data("user").ID);
$(this).animate({top:(ui.draggable.offset().top-$(this).offset().top)+"px",opacity:0},{duration:200,complete:function(){
$(this).hide();
}});
});
var _1c=$("#mc-company-tree li.ui-selected").eq(0).data("company");
var _1d=_19.data("company");
var url=$("#mc-moveusers-url").attr("href");
$.getWrappedJSON(url,{From:_1c.ID,To:_1d.ID,Users:_1a},undefined,{error:function(_1e){
_1f(_1e);
_1b.stop();
_1b.css({top:0,left:0,opacity:100});
_1b.show();
_1b.addClass("ui-selected");
}});
};
function _20(_21,_22,ui){
$("#mc-errorlist").empty();
var _23=_21;
var _24=$(ui.draggable).parents("li").eq(0);
var _25=_24.data("company");
var _26=_23.data("company");
var _27=ui.draggable.data("company");
var url=$("#mc-movecompany-url").attr("href");
if(_25.ID==_26.ID){
return;
}
$(_23.children("ul").get(0)).append(ui.draggable);
$.getWrappedJSON(url,{From:_25.ID,To:_26.ID,CompanyID:_27.ID},function(_28){
var _29=jQuery.inArray(_27,_25.ChildCompanies);
if(_29>=0){
_25.ChildCompanies.splice(_29,1);
}else{
console.log("Failed to remove the company from the Json object model",_25,_27);
}
_26.ChildCompanies.push(_27);
},{error:function(_2a){
_1f(_2a);
_24.children("ul").eq(0).append(ui.draggable);
}});
};
function _2b(_2c,ui){
var _2d=$(this);
if(ui.draggable.hasClass("mc-user")){
_16(_2d,_2c,ui);
}else{
if(ui.draggable.hasClass("mc-company")){
_20(_2d,_2c,ui);
}
}
$("#mc-company-tree li").removeClass("ui-droppable-hover");
};
function _2e(_2f){
var _30=$("<ul></ul>");
if(_2f){
if($.isArray(_2f)){
for(var i=0;i<_2f.length;i++){
_30.append(_31(_2f[i]));
}
}
}
return _30;
};
function _1f(_32){
console.log(_32);
if(_32.message){
var _33=$("<li></li>");
_33.text(_32.message);
$("#mc-errorlist").append(_33);
}
$.each(_32.errors,function(i){
var _34=$("<li></li>");
if(this.propertyName.substr(0,1)=="_"){
_34.text(this.error);
}else{
_34.text(this.propertyName+" "+this.error);
}
_34.addClass("ui-state-error");
$("#mc-errorlist").append(_34);
});
};
function _31(_35){
var _36=$("<li class=\"mc-company ui-state-default\"></li>");
var _37=$("<span class=\"mc-company-node\"></span>");
_36.attr("id","company-"+_35.ID);
_37.text(_35.Name);
_36.append(_37);
_36.append(_2e(_35.ChildCompanies));
_36.data("company",_35);
return _36;
};
function _38(){
var _39=$("#mc-userlist-url").attr("href");
$("#mc-company-tree li").removeClass("ui-selected");
$(this).addClass("ui-selected");
var _3a=$(this).data("company");
$("#mc-company-abbrname").ellipsis(false);
$("#mc-company-abbrname").attr("title",_3a.Name);
$("#mc-company-fullname").text("("+_3a.Name+")");
$.getWrappedJSON(_39,{CompanyUUID:_3a.ID},_3b);
$("#mc-user-wrapper").show();
$("#mc-details-wrapper").show();
$("#mc-viewcompanyprofile").attr("href",$("#mc-viewcompanyprofile-url").attr("href")+"/"+_3a.ID);
var _3c=$(this).parents("li").eq(0).data("company");
if(_3c){
$("#mc-deletecompany").show();
}else{
$("#mc-deletecompany").hide();
}
return false;
};
function _3d(){
$("#mc-company-tree li").not(".mc-company-root").each(function(){
var _3e="#"+$(this).attr("id")+" li";
$(this).draggable({revert:true,cursorAt:{top:10,left:10},zIndex:1000,cancel:_3e});
});
$("#mc-company-tree li").click(_38);
$("#mc-company-tree li").droppable({accept:"li",drop:_2b,tolerance:"pointer",hoverClass:"ui-droppable-hover",greedy:true});
};
function _3f(_40){
if(_40){
_b=_40;
}
$companyTree=$("#mc-company-tree");
$companyTree.empty();
if(!_b){
return;
}
$companyTree.append(_2e([_b]));
$rootCompany=$("#mc-company-tree li").eq(0);
$rootCompany.addClass("mc-company-root");
_3d();
$("#mc-user-wrapper").hide();
$("#mc-details-wrapper").hide();
$rootCompany.click();
};
function _41(_42){
if(_42){
_b=_42;
}else{
return _b;
}
};
function _43(_44){
if(_44){
_c=_44;
}else{
return _c;
}
};
function _45(){
if($("#mc-user-list li.ui-selected").size()==0){
$("#mc-roles-list").hide();
$("#mc-deleteuser").hide();
}else{
$("#mc-roles-list").show();
$("#mc-deleteuser").show();
}
};
function _46(_47){
var _48=_47.data("user");
var _49=$("#mc-company-tree li.mc-company.ui-selected").eq(0).data("company");
_47.empty();
var _4a=$("<span class=\"mc-user-name ellipsis\"></span>");
var _4b;
if(_48.Name){
_4b=_48.Name+" ("+_48.Username+")";
}else{
_4b=_48.Username;
}
_4a.text(_4b);
_4a.ellipsis(false);
_4a.attr("title",_4b);
_47.append(_4a);
$("#mc-user-header .mc-user-role").each(function(){
var _4c=$(this).data("role");
var _4d=$("<span />").addClass("mc-user-role");
if(_48.Roles[_4c]){
_4d.addClass("role-permit").text("Yes");
}else{
_4d.addClass("role-deny").text("No");
}
_47.append(_4d);
});
_47.append("<div class=\"clear\"></div>");
};
function _4e(){
$("#mc-user-list li.mc-user").each(function(){
_46($(this));
});
};
function _3b(_4f){
if(_4f){
_c=_4f;
}
$("#mc-user-list ul").remove();
if(!_c){
return;
}
var _50=$("<ul></ul>");
if($.isArray(_c)){
if(_c.length===0){
var _51=$("<li />").css("text-align","center");
_51.append($("#mc-inviteuser").clone(true));
_50.append(_51);
$("#mc-user-list").append(_50);
return;
}else{
for(var i=0;i<_c.length;i++){
var _52=$("<li class=\"mc-user ui-state-default\"></li>");
_52.data("user",_c[i]);
_46(_52);
_50.append(_52);
}
}
}else{
var _52=$("<li class=\"mc-user ui-state-default\"></li>");
_52.text(_c.Name);
_52.data("userID",_c.ID);
_50.append(_52);
}
$("#mc-user-list").append(_50);
$("#mc-user-list li").multidrag();
$("#mc-user-list li").click(_45);
_45();
};
function _53(){
$("#mc-errorlist").empty();
var _54=$(this);
var _55=_54.data("qParentCompany");
var _56=_55.data("company").ID;
var _57=_54.find("#mc-addcompany-name").val();
var url=_54.find("form").attr("action");
jQuery.getWrappedJSON(url,{Parent:_56,name:_57},function(_58){
_55.find("ul").eq(0).append(_31(_58));
_3d();
$("#mc-addcompany-name").attr("value","");
_54.dialog("close");
},{error:_1f});
};
function _59(){
$("#mc-errorlist").empty();
var _5a=$(this);
var _5b=_5a.find("#mc-addrootcompany-name").val();
var url=_5a.find("form").attr("action");
jQuery.getWrappedJSON(url,{name:_5b},function(_5c){
var _5d=$("#mc-managecompany-url").attr("href")+"/"+_5c.ID;
_5a.dialog("close");
window.document.location=_5d;
},{error:_1f});
};
function _5e(){
$("#mc-errorlist").empty();
var _5f=$(this);
var _60=_5f.data("company");
var _61=_5f.data("qUserList");
var _62=_5f.data("userIDs");
var url=$("#mc-deleteusers-url").attr("href");
_61.hide();
jQuery.getWrappedJSON(url,{From:_60.ID,Users:_62},function(_63){
_61.remove();
},{error:function(_64){
_1f(_64);
_61.show();
}});
$(this).dialog("close");
};
function _65(){
$("#mc-errorlist").empty();
var _66=$(this);
var _67=_66.data("qParentCompany");
var _68=_67.data("company").ID;
var _69=_66.find("#mc-inviteuser-username").val();
var _6a=_66.find("#mc-inviteuser-name").val();
var url=_66.find("form").attr("action");
jQuery.getWrappedJSON(url,{Company:_68,Username:_69,Name:_6a},function(_6b){
if(_6b){
_c.push(_6b);
_3b();
}else{
var _6c=$("<li></li>");
_6c.text(_69+" has been sent an invitation to join "+_67.data("company").Name+" and will be added when the invitation has been accepted.");
$("#mc-errorlist").append(_6c);
}
_66.dialog("close");
},{error:_1f});
};
function _6d(){
$("#mc-errorlist").empty();
var _6e=$(this);
var _6f=_6e.data("qParentCompany");
var _70=_6f.data("company").ID;
var _71=_6e.find("#mc-createuser-email").val();
var _72=_6e.find("#mc-createuser-name").val();
var _73=_6e.find("#mc-createuser-password").val();
var _74=_6e.find("#mc-createuser-admin").is(":checked");
var url=_6e.find("form").attr("action");
jQuery.getWrappedJSON(url,{CompanyUUID:_70,EmailAddress:_71,Name:_72,Password:_73,CreateAsAdmin:_74},function(_75){
_c.push(_75);
_3b();
_6e.dialog("close");
},{error:_1f});
};
function _76(){
$("#mc-errorlist").empty();
var _77=$(this);
var _78=$(this).data("parentCompany");
var _79=$(this).data("company");
var url=$(this).find("form").attr("action");
jQuery.getWrappedJSON(url,{From:_78.ID,CompanyID:_79.ID},function(_7a){
var _7b=jQuery.inArray(_79,_78.ChildCompanies);
if(_7b>=0){
_78.ChildCompanies.splice(_7b,1);
}else{
console.log("Failed to remove the company from the Json object model",_78,_79);
}
_77.data("qCompany").remove();
_77.dialog("close");
},{error:function(_7c){
_1f(_7c);
$(this).dialog("close");
}});
};
function _7d(){
var url=$("#mc-role-grant-url").attr("href");
_7e($(this),url);
};
function _7f(){
var url=$("#mc-role-deny-url").attr("href");
_7e($(this),url);
};
function _7e(obj,url){
$("#mc-errorlist").empty();
var _80=obj;
var _81=$("#mc-user-list li.ui-selected");
if(_81.size()==0){
return;
}
var _82=[];
_81.each(function(){
_82.push($(this).data("user").ID);
});
var _83=_80.data("role");
jQuery.getWrappedJSON(url,{Users:_82,Role:_83},function(_84){
_c=_84;
$("#mc-user-list li").each(function(){
_80=$(this);
var _85=_80.data("user").ID;
$.each(_c,function(i,o){
if(o.ID==_85){
_80.data("user",o);
return false;
}
});
});
_4e();
_45();
},{error:function(_86){
_1f(_86);
}});
return false;
};
function _87(){
if($.browser.msie&&$.browser.version<7){
$("#mc-wrapper").remove();
$("#mc-dialog-wrapper").remove();
var _88=$("<li />").addClass("ui-state-error");
_88.text("Sorry, internet explorer "+$.browser.version+" is not supported.");
$("#mc-errorlist").append(_88);
return;
}
$("#mc-inviteuser-dialog").dialog({autoOpen:false,modal:true,width:500,resizable:false,buttons:{"Send Invitation":_65,"Cancel":function(){
$(this).dialog("close");
}},open:function(){
$("#mc-inviteuser-companyname").val($($(this).data("qParentCompany")).find("span.mc-company-node").eq(0).text());
}});
$("#mc-inviteuser").click(function(){
$("#mc-inviteuser-dialog").data("qParentCompany",$("#mc-company-tree li.ui-selected").eq(0));
$("#mc-inviteuser-dialog").dialog("open");
return false;
});
$("#mc-createuser-dialog").dialog({autoOpen:false,modal:true,width:500,resizable:false,buttons:{"Create":_6d,"Cancel":function(){
$(this).dialog("close");
}},open:function(){
$("#mc-createuser-companyname").val($($(this).data("qParentCompany")).find("span.mc-company-node").eq(0).text());
$("#mc-createuser-password").val(_d());
}});
$("#mc-super-createuser").click(function(){
$("#mc-createuser-dialog").data("qParentCompany",$("#mc-company-tree li.ui-selected").eq(0));
$("#mc-createuser-dialog").dialog("open");
return false;
});
$("#mc-addcompany-dialog").dialog({autoOpen:false,modal:true,width:500,resizable:false,buttons:{"Add Company":_53,"Cancel":function(){
$(this).dialog("close");
}},open:function(){
$("#mc-addcompany-parentname").val($($(this).data("qParentCompany")).data("company").Name);
}});
$("#mc-addcompany").click(function(){
var _89=$("#mc-addcompany-dialog");
_89.data("qParentCompany",$("#mc-company-tree li.ui-selected").eq(0));
_89.dialog("open");
return false;
});
$("#mc-addrootcompany-dialog").dialog({autoOpen:false,modal:true,width:500,resizable:false,buttons:{"Add Company":_59,"Cancel":function(){
$(this).dialog("close");
}}});
$("#mc-super-addrootcompany").click(function(){
var _8a=$("#mc-addrootcompany-dialog");
_8a.dialog("open");
return false;
});
$("#mc-deleteuser-dialog").dialog({autoOpen:false,modal:true,width:500,resizable:false,buttons:{"Ok":_5e,"Cancel":function(){
$(this).dialog("close");
}},close:function(_8b,ui){
$("#mc-deleteuser-list li").remove();
}});
$("#mc-deleteuser").click(function(){
var _8c=$("#mc-user-list li.mc-user.ui-selected");
if(_8c.size()==0){
alert("No users selected");
return false;
}
var _8d=Array();
_8c.each(function(){
_8d.push($(this).data("user").ID);
});
var _8e=$("#mc-company-tree li.mc-company.ui-selected").eq(0).data("company");
var _8f=$("#mc-deleteuser-dialog");
var _90=$("#mc-deleteuser-list");
_8f.data("company",_8e);
_8f.data("qUserList",_8c);
_8f.data("userIDs",_8d);
_90.empty();
var _91=_8c.clone();
_91.find("span.mc-user-role").remove();
_90.append(_91);
_8f.dialog("open");
return false;
});
$("#mc-senioradmin").click(function(){
var _92=$("#mc-user-list li.mc-user.ui-selected");
if(_92.size()!=1){
alert("Only one user can be a senior admin");
return false;
}
var url=$("#mc-senioradmin-url").attr("href");
var _93="";
_92.each(function(){
_93=$(this).data("user").ID;
});
var _94=$("#mc-company-tree li.mc-company.ui-selected").eq(0).data("company");
$.getWrappedJSON(url,{busAssociateUUID:_93,companyUUID:_94.ID},function(_95){
_94.SeniorAdmin=_93;
_3b();
},{error:function(_96){
_1f(_96);
}});
});
$("#mc-deletecompany-dialog").dialog({autoOpen:false,modal:true,width:500,resizable:false,buttons:{"Delete":_76,"Cancel":function(){
$(this).dialog("close");
}},open:function(_97,ui){
var _98=$(this).data("parentCompany");
var _99=$(this).data("company");
$("#mc-deletecompany-from-id").val(_98.ID);
$("#mc-deletecompany-id").val(_99.ID);
$("#mc-deletecompany-name").val(_99.Name);
}});
$("#mc-deletecompany").click(function(){
var _9a=$("#mc-deletecompany-dialog");
var _9b=$("#mc-company-tree li.mc-company.ui-selected").eq(0);
_9a.data("qCompany",_9b);
_9a.data("parentCompany",_9b.parents("li").eq(0).data("company"));
_9a.data("company",_9b.data("company"));
_9a.dialog("open");
return false;
});
var _9c=$("#mc-roles-list a.mc-role");
var _9d=[];
var _9e={};
_9c.each(function(){
var _9f=$(this);
var _a0=_9f.attr("href").substr(1);
if(!_9e[_a0]){
_9e[_a0]=true;
_9d.push(_a0);
}
_9f.data("role",_a0);
});
$("#mc-roles-list a.mc-role-grant").click(_7d);
$("#mc-roles-list a.mc-role-deny").click(_7f);
spectra.company.manageCompany.RefreshCompanyTree();
var _a1=$("#mc-user-header");
_a1.empty();
_a1.append($("<span class=\"mc-user-name\">&nbsp;</span>"));
_9e=$.unique(_9d);
$.each(_9e,function(i,_a2){
$roleHeading=$("<span class=\"mc-user-role\" />").text(_a2).data("role",_a2);
_a1.append($roleHeading);
});
_a1.append($("<div class=\"clear\" />"));
spectra.company.manageCompany.BuildUserList();
};
return {Initialise:_87,RefreshCompanyTree:_3f,BuildUserList:_3b,CompanyTree:_41,UserList:_43};
}();
spectra.namespaces("spectra.docdetails");
spectra.docdetails.forwardAction=null;
spectra.docdetails.forwardDialog=null;
spectra.docdetails.Exported=false;
spectra.docdetails.ExportDocument=function(_1,_2,_3){
var _4=new msg.Message(1,"Exporting document please wait...",3,-1,true,true);
var _5={document_uuid:_1,ExportGroupUUID:_2,revision:_3};
var _6=new net.AjaxRequest(util.urls.getUrl("ExportDocument"),net.REQUEST_TYPE_POST,spectra.docdetails.ExportDocumentCallback,_5,net.REQUEST_DATA_TYPE_JSON);
_6.xhttp();
};
spectra.docdetails.ExportDocumentCallback=function(_7){
if(msg.messages[1]){
msg.messages[1].clear();
}
if(_7.Data.html){
setStatusMessage(_7.Data.html);
}else{
var _8=new error.Handler(_7.Message,error.ERROR_SERVER,"",false);
}
};
spectra.docdetails.ForwardDocument=function(_9){
console.log("forward document");
spectra.docdetails.forwardAction=new spectra.globals.Action("details-forward",_9);
spectra.docdetails.forwardDialog=new dialog.Email("Forward Document",spectra.docdetails.ForwardDialogCallback);
};
spectra.docdetails.ForwardDialogCallback=function(){
var _a={DocumentUUID:spectra.docdetails.forwardAction.Data(),To:spectra.docdetails.forwardDialog.getAddress(),Message:spectra.docdetails.forwardDialog.getMessage()};
var _b=new net.AjaxRequest(util.urls.getUrl("ForwardDocument"),net.REQUEST_TYPE_POST,spectra.docdetails.ForwardDocumentsCallback,_a,net.REQUEST_DATA_TYPE_JSON);
spectra.docdetails.forwardAction.Request(_b);
_b.xhttp();
};
spectra.docdetails.ForwardDocumentsCallback=function(_c,_d){
setStatusMessage(_c.Message);
};
spectra.docdetails.ShowStatusDetails=function(id,_e,_f,_10){
spectra.docdetails.Exported=(_f==="Exported")?true:false;
var _11={DocumentUUID:id,RevisionNumber:_e,ExportType:_10};
console.log("ShowStatusDetails");
var _12=new net.AjaxRequest(util.urls.getUrl("GetExportResults"),net.REQUEST_TYPE_POST,spectra.docdetails.ShowStatusDetailsCallback,_11,net.REQUEST_DATA_TYPE_HTML,false);
_12.cacheResponse("ShowStatusDetails-"+_10);
_12.xhttp();
};
spectra.docdetails.ShowStatusDetailsCallback=function(_13,_14){
var _15=document.getElementById("export-results-details");
if(!_15){
var _15=$(document.createElement("div"));
_15.attr("id","export-results-details");
$("#container").append(_15);
}else{
_15=$(_15);
}
var ht=500;
_15.html(_13);
if(dialog.dialogs["export-results-details"]){
dialog.dialogs["export-results-details"].dialog("open");
}else{
_15.dialog({title:"Export Details",autoOpen:true,width:600,modal:false,resizable:false,height:ht,buttons:{"Close":function(){
$(this).dialog("close");
}}});
dialog.dialogs["export-results-details"]=$(_15);
}
};
spectra.docdetails.PreviewImages=new Array();
spectra.docdetails.PreviewImageIndex=0;
spectra.docdetails.PreviewImageObjects=new Array();
spectra.docdetails.Initialise=function(){
$(document).ready(function(){
if(spectra.docdetails.PreviewImages.length>0){
var img=new Image();
img.src=spectra.docdetails.PreviewImages[0].Source;
img.id="DocumentPreviewImage";
img.alt=spectra.docdetails.PreviewImages[0].Text;
spectra.docdetails.PreviewImageObjects[0]=img;
spectra.docdetails.AddLoadingDiv(img);
}
$("#DocumentPreviewNavPrevious").hide();
if(spectra.docdetails.PreviewImages.length==1){
$("#DocumentPreviewNavNext").hide();
}
$("#DocumentPreviewNavNext").click(function(){
spectra.docdetails.ShowNextPreview();
});
$("#DocumentPreviewNavPrevious").click(function(){
spectra.docdetails.ShowPrevPreview();
});
});
$(window)._load(function(){
spectra.docdetails.LoadPreviewImages();
});
$(".ellipsis").ellipsis();
};
spectra.docdetails.LoadPreviewImages=function(){
for(var i=1;i<spectra.docdetails.PreviewImages.length;i++){
var img=new Image();
img.src=spectra.docdetails.PreviewImages[i].Source;
img.id="DocumentPreviewImage";
img.alt=spectra.docdetails.PreviewImages[i].Text;
spectra.docdetails.PreviewImageObjects[i]=img;
if(spectra.docdetails.PreviewImageIndex==i){
$(img)._load(function(){
$("#doc-preview-loading").remove();
$("#DocumentPreviewImage").remove();
$("#DocumentPreview").prepend(img);
});
}
$(img).error(function(){
$(this).width("440px").height("600px");
});
}
};
spectra.docdetails.ShowNextPreview=function(){
spectra.docdetails.PreviewImageIndex++;
if(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]&&spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex].complete){
$("#doc-preview-loading").remove();
$("#DocumentPreviewImage").replaceWith(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]);
$("#DocumentPreviewNavIndex").text("Page "+(spectra.docdetails.PreviewImageIndex+1)+" of "+spectra.docdetails.PreviewImages.length);
}else{
if(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]){
spectra.docdetails.AddLoadingDiv(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]);
}else{
spectra.docdetails.AddLoadingDiv();
}
}
if(spectra.docdetails.PreviewImageIndex+1==spectra.docdetails.PreviewImages.length){
$("#DocumentPreviewNavNext").hide();
$("#DocumentPreviewNavPrevious").show();
}else{
$("#DocumentPreviewNavNext").show();
$("#DocumentPreviewNavPrevious").show();
}
};
spectra.docdetails.AddLoadingDiv=function(img){
$("#DocumentPreviewContainer").prepend($("<div />").attr("id","doc-preview-loading").height("650px").width("450px").css({"position":"absolute","zorder":100}));
if(img){
$(img)._load(function(){
$("#doc-preview-loading").remove();
$("#DocumentPreviewImage").replaceWith(img);
$("#DocumentPreviewNavIndex").text("Page "+(spectra.docdetails.PreviewImageIndex+1)+" of "+spectra.docdetails.PreviewImages.length);
});
$(img).error(function(_16){
$("#doc-preview-loading").remove();
$("#DocumentPreviewImage").replaceWith(img);
$(img).width("440px").height("600px");
$("#DocumentPreviewNavIndex").text("Page "+(spectra.docdetails.PreviewImageIndex+1)+" of "+spectra.docdetails.PreviewImages.length);
});
}
};
spectra.docdetails.ShowPrevPreview=function(){
spectra.docdetails.PreviewImageIndex--;
if(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]&&spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex].complete){
$("#doc-preview-loading").remove();
$("#DocumentPreviewImage").replaceWith(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]);
$("#DocumentPreviewNavIndex").text("Page "+(spectra.docdetails.PreviewImageIndex+1)+" of "+spectra.docdetails.PreviewImages.length);
}else{
if(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]){
spectra.docdetails.AddLoadingDiv(spectra.docdetails.PreviewImageObjects[spectra.docdetails.PreviewImageIndex]);
}else{
spectra.docdetails.AddLoadingDiv();
}
}
if(spectra.docdetails.PreviewImageIndex==0){
$("#DocumentPreviewNavPrevious").hide();
$("#DocumentPreviewNavNext").show();
}else{
$("#DocumentPreviewNavPrevious").show();
$("#DocumentPreviewNavNext").show();
}
};
spectra.namespaces("spectra.home.contact");
spectra.home.contact.initialise=function(_1,_2,_3,_4,_5){
spectra.home.contact.initialiseSingle(_1);
spectra.home.contact.initialiseSingle(_2);
spectra.home.contact.initialiseSingle(_3);
spectra.home.contact.initialiseSingle(_4);
spectra.home.contact.initialiseSingle(_5);
};
spectra.home.contact.initialiseSingle=function(_6){
if(_6){
$(document).ready(function(){
spectra.home.contact.prepareContact(_6);
});
}
};
spectra.home.contact.prepareContact=function(_7){
var _8="#"+_7+"Link";
var _9=_7.concat("@");
_9=_9.concat("constr");
var _a=$("<a />");
_9=_9.concat("uctionhive");
_9=_9.concat(".");
_9=_9.concat("com");
_a.attr("href","mai".concat("lto://")+_9);
var _b=$(_8);
_b.text(_9);
_b.wrap(_a);
};
spectra.namespaces("spectra.widgets");
spectra.widgets.widgets=new Array();
spectra.widgets.documentWidget=function(){
this.currentUrl="";
this.RefreshFilter=function(){
var _1=this.currentUrl;
$("#dw-document-list").empty();
$("#dw-content").addClass("widget-loading");
var _2=new net.AjaxRequest(_1,net.REQUEST_TYPE_POST,this.AjaxCallback,null,net.REQUEST_DATA_TYPE_HTML);
_2.xhttp();
if(this.currentUrl.search("unread")!=-1){
$("#dw-link-more").attr("href",$("#dw-link-more-base").attr("href")+"&UserStatus=Unread");
}else{
if(this.currentUrl.search("urgent")!=-1){
$("#dw-link-more").attr("href",$("#dw-link-more-base").attr("href")+"&Status=Urgent");
}else{
if(this.currentUrl.search("outofspecification")!=-1){
$("#dw-link-more").attr("href",$("#dw-link-more-base").attr("href")+"&Status=out-of-specification");
}else{
$("#dw-link-more").attr("href",$("#dw-link-more-base").attr("href"));
}
}
}
return false;
};
this.RefreshContent=function(_3,_4){
$("#dw-content").removeClass("widget-loading");
var _5=$("#dw-document-list");
_5.html(_3);
var _6=this;
var _7=_5.find(".dw-document-group-header");
var _8=_5.find(".dw-document-group-header.ui-state-default");
_5.addClass("ui-accordion");
_7.prepend("<span class=\"ui-icon\"></span>");
_7.addClass("ui-accordion-header");
for(var i=0;i<_7.length;i++){
_6.ApplyExpandedState(_7[i]);
}
_7.hover(function(){
$(this).addClass("ui-state-hover");
},function(){
$(this).removeClass("ui-state-hover");
});
_8.click(function(){
var _9=$(this);
_9.toggleClass("dw-expanded");
_6.ApplyExpandedState(this);
_9.next().find("a.ellipsis").ellipsis();
return false;
});
$("#dw-document-list").find("a.ellipsis").ellipsis();
};
this.AjaxCallback=function(_a,_b){
spectra.widgets.widgets["documentswidget"].RefreshContent(_a,status);
};
};
spectra.widgets.documentWidget.prototype={ApplyFilter:function(_c){
$("#dw-filter").find("a").removeClass("filter-enabled");
$(_c).addClass("filter-enabled");
this.currentUrl=$(_c).attr("href");
return this.RefreshFilter();
},ToggleFilter:function(_d){
$(_d).toggleClass("filter-enabled");
return this.RefreshFilter();
},Initialise:function(){
var _e=this;
$(document).ready(function(){
$("#dw-filter").find("a").click(function(){
return _e.ApplyFilter(this);
});
_e.ApplyFilter("#dw-filter-all");
});
},ApplyExpandedState:function(_f){
var _10=$(_f);
var _11=_10.find(".ui-icon");
if(_10.hasClass("dw-expanded")){
_10.removeClass("ui-state-default");
_10.addClass("ui-state-active");
_11.removeClass("ui-icon-triangle-1-e");
_11.addClass("ui-icon-triangle-1-s");
_10.nextAll().show();
}else{
_10.addClass("ui-state-default");
_10.removeClass("ui-state-active");
_11.addClass("ui-icon-triangle-1-e");
_11.removeClass("ui-icon-triangle-1-s");
_10.nextAll().hide();
}
}};
spectra.namespaces("spectra.widgets");
spectra.widgets.projectsWidget=function(){
var _1=300;
var _2=20;
var _3;
var _4;
var _5;
var _6;
var _7;
var _8;
function _9(_a,_b){
$("#pw-content").removeClass("widget-loading");
$("#pw-project-list").children().remove();
var _c=$(document.createElement("ul"));
for(var i=0;i<_a.length;i++){
var _d=$(document.createElement("li"));
var _e=$("<span />");
_e.text(_a[i].ProjectName);
_e.attr("title",_a[i].ProjectTitle);
var _f=$(document.createElement("a"));
_f.attr("href",_a[i].TotalCountUrl);
_f.addClass("pw-project-total-count");
_f.attr("title","Find all documents for \""+_a[i].ProjectName+"\"");
_f.text(_a[i].TotalCountText);
var _10=$(document.createElement("a"));
_10.attr("href",_a[i].UnreadCountUrl);
_10.addClass("pw-project-unread-count");
_10.attr("title","Find unread documents for \""+_a[i].ProjectName+"\"");
_10.text(_a[i].UnreadCountText);
var _11;
if(_a[i].ManageProjectUrl){
_11=$(document.createElement("a"));
_11.attr("href",_a[i].ManageProjectUrl);
_11.attr("title","Manage the project \""+_a[i].ProjectName+"\"");
_11.addClass("pw-project-manage");
_11.text(_a[i].ManageProjectText);
}
_d.append(_e);
_d.append(document.createTextNode(" ("));
_d.append(_f);
_d.append(document.createTextNode(", "));
_d.append(_10);
_d.append(document.createTextNode(")"));
if(_11){
_d.append(document.createTextNode(" "));
_d.append(_11);
}
_c.append(_d);
}
$("#pw-project-list").append(_c);
if(_a.length>=_2){
$("#pw-filter-more").show();
}else{
$("#pw-filter-more").hide();
}
};
function _12(_13){
var _14=$("#pw-filter-text");
_14.removeClass("filter-enabled");
if(_13){
_14.attr("value","");
_14.siblings("span.search-placeholder").show();
}
$("#pw-filter a").removeClass("filter-enabled");
$("#pw-filter-more").removeClass("filter-enabled");
};
function _15(_16,_17,_18){
$("#pw-project-list").children().remove();
_7=jQuery.ajax({type:"POST",url:_6,data:{partialMatch:_16,recent:_17,limit:_18},dataType:"json",success:_9});
$("#pw-content").addClass("widget-loading");
return false;
};
function _19(){
if(_7){
_7.abort();
}
if(_8){
clearTimeout(_8);
}
return false;
};
function _1a(){
_19();
_8=setTimeout("spectra.widgets.projectsWidget.Search()",_1);
return false;
};
function _1b(){
_19();
_12(false);
var _1c=$("#pw-filter-text").attr("value");
if(_1c!=""){
$("#pw-filter-text").addClass("filter-enabled");
_15(_1c,false,_2);
}else{
if(!$("#pw-filter-recent").hasClass("filter-enabled")){
_1d();
$("#pw-filter-text").focus();
}
}
return false;
};
function _1d(){
_19();
_12(true);
$("#pw-filter-recent").addClass("filter-enabled");
_15("",true,_2);
return false;
};
function _1e(){
_19();
_12(true);
$("#pw-filter-all").addClass("filter-enabled");
_15("",false,_2);
return false;
};
function _1f(){
_19();
_12(true);
$("#pw-filter-more").addClass("filter-enabled");
_15("",false,0);
return false;
};
function _20(){
$(document).ready(function(){
var _21=$($("#pw-filter-text").parent("form").get(0));
_6=_21.attr("action");
_21.submit(_1b);
_21.attr("action","#");
$("#pw-filter-text").addSearchIcon();
$("#pw-filter-refresh").hide();
$("#pw-filter-text").keyup(_1a);
$("#pw-filter-all").click(_1e);
$("#pw-filter-all").attr("href","#");
$("#pw-filter-recent").click(_1d);
$("#pw-filter-recent").attr("href","#");
$("#pw-filter-more").click(_1f);
$("#pw-filter-more").attr("href","#");
$("#pw-filter-more").hide();
_1d();
});
};
return {Initialise:_20,Search:_1b};
}();
spectra.namespaces("spectra.manage");
spectra.manage.IndexInit=function(){
$(document).ready(function(){
console.dir(util.urls);
var _1=util.urls.getUrl("ProjectName");
console.log(_1);
$("#projectselectinput").autocomplete(_1,{dataType:"json",parse:function(_2){
var _3=new Array();
for(var i=0;i<_2.length;i++){
_3[i]={data:htmlEncode(_2[i]),value:_2[i],result:_2[i]};
}
return _3;
},formatItem:function(_4){
return _4;
},delay:100,matchSubset:false,multiple:false});
});
};
spectra.namespaces("spectra.reporting");
spectra.reporting.current;
spectra.reporting.ElementType={Table:0,BarChart:1,LineChart:2,ColumnChart:3,ScatterChart:4};
spectra.reporting.InitCalls=[];
spectra.reporting.AddInitCall=function(_1,_2){
var _3={};
_3.method=_1;
_3.obj=_2;
spectra.reporting.InitCalls.push(_3);
};
spectra.reporting.Initialise=function(_4){
try{
google.load("visualization","1",{packages:["corechart","table"]});
$(document).ready(function(){
spectra.reporting.current=new spectra.reporting.report(_4);
var _5;
for(var i=0;i<spectra.reporting.InitCalls.length;i++){
_5=spectra.reporting.InitCalls[i];
_5.method.apply(_5.obj);
}
});
}
catch(e){
console.log("error",e);
}
};
spectra.reporting.StringRowMerge=function(_6){
var _7="";
var _8;
if(spectra.getType(_6)=="Array"){
if(typeof _6[0]=="string"){
_7="<ul class=\"table-list\">";
for(var i=0;i<_6.length;i++){
if(_8!=_6[i]){
_7=_7+"<li>";
_7=_7+_6[i];
_7=_7+"<li/>";
_8=_6[i];
}
}
_7=_7+"</ul>";
}else{
_7=_6[0];
}
}else{
_7=_6;
}
return _7;
};
spectra.reporting.createInputField=function(_9,_a,_b){
var _c;
var _d=_9.InputField;
switch(_d.FieldType){
case spectra.ui.inputfields.FieldTypes.List:
elem=document.createElement("div");
$(elem).addClass("reportoption");
_c=new spectra.ui.events.Event(_d.Key,spectra.ui.events.EventType.DataChangeEvent);
if(_a){
_c.AddListener(_a,(_b)?_b:this);
}
field=new spectra.ui.inputfields.ListInputField(elem,_d,_c,_d.Key);
break;
case spectra.ui.inputfields.FieldTypes.Date:
elem=document.createElement("div");
$(elem).addClass("reportoption");
_c=new spectra.ui.events.Event(_d.Key,spectra.ui.events.EventType.InputChangeEvent);
if(_a){
_c.AddListener(_a,(_b)?_b:this);
}
field=new spectra.ui.inputfields.DateInputField(elem,_9.Name,_d.Key,_c,_d);
break;
case spectra.ui.inputfields.FieldTypes.Text:
elem=document.createElement("div");
$(elem).addClass("reportoption");
_c=new spectra.ui.events.Event(_d.Key,spectra.ui.events.EventType.InputChangeEvent);
if(_a){
_c.AddListener(_a,(_b)?_b:this);
}
field=new spectra.ui.inputfields.TextInputField(elem,_d.Name,_d.Key,_c);
break;
case spectra.ui.inputfields.FieldTypes.AutoComplete:
elem=document.createElement("div");
$(elem).addClass("reportoption");
_c=new spectra.ui.events.Event(_d.Key,spectra.ui.events.EventType.InputChangeEvent);
if(_a){
_c.AddListener(_a,(_b)?_b:this);
}
field=new spectra.ui.inputfields.AutoInputField(elem,_d.Name,_d.Key,_c,_d.AutoCompleteType);
break;
case spectra.ui.inputfields.FieldTypes.DataTable:
elem=document.createElement("div");
$(elem).addClass("reportoption");
_c=new spectra.ui.events.Event(_d.Key,spectra.ui.events.EventType.DataChangeEvent);
if(_a){
_c.AddListener(_a,(_b)?_b:this);
}
field=new spectra.ui.inputfields.CompanyInputField(elem,_d.Name,_d.Key,_c,_d.XmlData);
break;
}
if(field){
field.show();
}
return field;
};
spectra.reporting.report=function(_e){
this.report=_e;
this.elements=[];
this.parameters=[];
for(var i=0;i<_e.Elements.length;i++){
try{
this.elements[_e.Elements[i].Key]=new spectra.reporting.ReportElement(_e.Elements[i]);
}
catch(er){
console.log(er);
}
}
this.parameterElem=document.getElementById("ReportOptions-Parameters");
var _f=document.createElement("div");
var _10=document.createElement("div");
$(_10).addClass("reportoption-group");
var _11=document.createElement("div");
$(_11).addClass("reportoption-group");
var _12=document.createElement("div");
$(_12).addClass("reportoption-group");
var _13;
var opt;
var _14;
var _15;
for(var i=0;i<this.report.Parameters.length;i++){
var _16=this.report.Parameters[i];
console.log(_16);
opt=this.report.Parameters[i].InputField;
this.parameters[opt.Key]=spectra.reporting.createInputField(_16,this.ParameterChangeListener,this);
switch(opt.FieldType){
case spectra.ui.inputfields.FieldTypes.List:
this.parameters[opt.Key].SetSelected(_16.Value);
_10.appendChild(this.parameters[opt.Key].ParentElement());
break;
case spectra.ui.inputfields.FieldTypes.Date:
this.parameters[opt.Key].SetDate(_16.Value);
_15=$(_11).children("div[order="+(opt.Order-1)+"]");
if(_15.length==0){
$(_11).append(this.parameters[opt.Key].ParentElement());
}else{
$(_15).after(this.parameters[opt.Key].ParentElement());
}
break;
case spectra.ui.inputfields.FieldTypes.Text:
this.parameters[opt.Key].SetText(_16.Value);
_12.appendChild(this.parameters[opt.Key].ParentElement());
break;
case spectra.ui.inputfields.FieldTypes.AutoComplete:
_12.appendChild(this.parameters[opt.Key].ParentElement());
break;
case spectra.ui.inputfields.FieldTypes.DataTable:
this.parameters[opt.Key].SetSelected(_16.Value);
_10.appendChild(this.parameters[opt.Key].ParentElement());
break;
}
for(_13 in this.elements){
if(_14){
this.elements[_13].RegisterListeners(this.parameters[opt.Key].Event(),opt);
}
}
}
var _17=$(_11).children().get();
_17.sort(function(a,b){
var _18=$(a).attr("Order");
var _19=$(b).attr("Order");
return (_18<_19)?-1:(_18>_19)?1:0;
});
$.each(_17,function(idx,itm){
$(_11).append(itm);
});
_f.appendChild(_10);
_f.appendChild(_11);
_f.appendChild(_12);
this.parameterElem.appendChild(_f);
this.AjaxRefresh=function(){
var _1a={ReportViewUUID:_1b.report.ID,Parameters:[]};
var _1c,_1d=0;
for(var i=0;i<_1b.report.Parameters.length;i++){
_1c=_1b.report.Parameters[i];
if(_1c.Value){
_1a.Parameters[i-_1d]={ID:_1c.ID,Value:_1c.Value};
}else{
_1d++;
}
}
var _1e=new net.AjaxRequest(util.urls.getUrl("RefreshReport"),net.REQUEST_TYPE_POST,_1b.RefreshCallback,$.postify(_1a));
_1e.callBackThis(_1b);
this.SetAllWaiting();
_1e.xhttp();
};
var _1b=this;
$("#report-refresh-input").click(function(){
_1b.AjaxRefresh();
});
};
spectra.reporting.report.prototype={AddElement:function(_1f){
this.elements[_1f.Key]=_1f;
},ParameterChangeListener:function(_20,key){
var _21;
for(var i=0;i<this.report.Parameters.length;i++){
_21=this.report.Parameters[i];
if(_21.Key===_20.EventData()){
_21.Value=key;
}
}
},RefreshCallback:function(_22){
this.report=_22;
this.ReDrawAll();
},RefreshAll:function(){
for(var i=0;i<this.report.Elements.length;i++){
this.elements[this.report.Elements[i].Key].Refresh(this.report.Elements[i]);
}
},ReDrawAll:function(){
for(var i=0;i<this.report.Elements.length;i++){
console.log(this.report.Elements[i].Key);
this.elements[this.report.Elements[i].Key].ReDraw(this.report.Elements[i]);
}
},SetAllWaiting:function(){
for(var _23 in this.elements){
this.elements[_23].SetWaiting();
}
}};
spectra.reporting.ReportElement=function(_24){
this.elemJson=_24;
this.dataViews=[];
this.dataTables=[];
this.visuals=[];
this.fields=[];
this.chartOptions={};
this.googleElem=null;
this.headerElem=document.createElement("div");
$(this.headerElem).addClass("report-element-header");
this.trimStrings=function(i){
var _25;
for(var j=0;j<this.dataTables[i].getNumberOfColumns();j++){
if(this.dataTables[i].getColumnType(j)=="string"){
for(var k=0;k<this.dataTables[i].getNumberOfRows();k++){
_25=this.dataTables[i].getValue(k,j);
if(_25.length>20){
_25=_25.slice(0,20);
_25=_25+"...";
this.dataTables[i].setValue(k,j,_25);
}
}
}
}
};
this.Clear=function(){
this.dataTables=[];
this.dataViews=[];
$(this.googleElem).html("");
};
this.DrawHeader=function(){
this.AddTitle();
this.AddParameters();
var _26=document.getElementById(this.Key());
$(_26).prepend(this.headerElem);
};
this.AddTitle=function(){
if(this.titleElem==null){
var _27=document.createElement("h3");
$(_27).addClass("element-title").text(this.elemJson.Title);
$(this.headerElem).append(_27);
}
};
this.AddParameters=function(){
var _28;
for(var i=0;i<this.elemJson.Parameters.length;i++){
_28=spectra.reporting.createInputField(this.elemJson.Parameters[i]);
this.fields[i]=_28;
spectra.reporting.AddInitCall(_28.Init,_28);
$(this.headerElem).append(_28.ParentElement());
this.RegisterListeners(_28.Event(),this.elemJson.Parameters[i].InputField);
}
};
this.GetGoogleElem=function(id,_29){
if(this.googleElem){
$(this.googleElem).html("");
$(this.googleElem).removeClass("widget-loading");
}else{
this.googleElem=document.createElement("div");
this.googleElem.setAttribute("id",this.Key()+"-goog");
}
return this.googleElem;
};
this.AddSummary=function(){
var _2a=document.getElementById(this.Key());
var _2b=document.getElementById(this.Key()+"-summary");
if(!_2b){
_2b=document.createElement("div");
_2b.setAttribute("id",this.Key()+"-summary");
_2b.setAttribute("class","element-summary");
}else{
$(_2b).html("");
}
var _2c,_2d,sum;
var _2e=this.currentView.DataView();
for(var i=0;i<_2e.getNumberOfColumns();i++){
if(_2e.getColumnType(i)=="number"){
sum=0;
for(var j=0;j<_2e.getNumberOfRows();j++){
sum=sum+_2e.getValue(j,i);
}
_2c=document.createElement("div");
_2c.setAttribute("class","element-summary-value");
_2d=document.createElement("div");
_2d.setAttribute("class","TextLabel TextLabel-inline");
$(_2d).text("Total "+_2e.getColumnLabel(i));
$(_2c).text(sum);
_2b.appendChild(_2d);
_2b.appendChild(_2c);
}
}
_2a.appendChild(_2b);
};
this.AddTableTotals=function(_2f){
var sum,_30=[],_31,_32;
_31=_2f.DataTable();
_32=_2f.DataView();
for(var i=0;i<_31.getNumberOfColumns();i++){
if(_31.getColumnType(i)=="number"){
sum=0;
for(var j=0;j<_31.getNumberOfRows();j++){
sum=sum+_31.getValue(j,i);
}
_30[i]=sum;
}else{
_30[i]=0;
}
}
_31.addRows(1);
var num;
for(i=0;i<_31.getNumberOfColumns();i++){
if(i==_32.getViewColumns()[0]){
_31.setCell(_31.getNumberOfRows()-1,i,"<div class=\"TableSummary\">Total</div>");
}else{
if(_30[i]!=0){
_31.setCell(_31.getNumberOfRows()-1,i,Math.round(_30[i]));
}
}
}
};
this.currentIndex=0;
this.currentView=null;
this.DrawHeader();
this.RefreshChart(this.currentIndex);
};
spectra.reporting.ReportElement.prototype={Key:function(){
return this.elemJson.Key;
},ReDraw:function(_33){
if(_33){
this.elemJson=_33;
}
this.RefreshChart(this.currentIndex,_33);
},Refresh:function(_34){
this.Clear();
this.DrawHeader();
this.RefreshChart(this.currentIndex,_34);
},RefreshChart:function(i,_35){
if(_35){
this.elemJson=_35;
}
try{
id=this.elemJson.DataViews[i].ID;
this.dataTables[id]=new google.visualization.DataTable(eval("("+this.elemJson.DataViews[i].GoogleData+")"),"0.6");
this.dataViews[id]=new spectra.reporting.ElementDataView(this.dataTables[id],this.elemJson.DataViews[i]);
this.currentView=this.dataViews[id];
switch(this.elemJson.ElementType){
case spectra.reporting.ElementType.Table:
this.AddTable(this.Key(),id);
break;
case spectra.reporting.ElementType.BarChart:
this.trimStrings(id);
this.AddBarChart(this.Key(),id);
break;
case spectra.reporting.ElementType.LineChart:
this.trimStrings(id);
this.AddLineChart(this.Key(),id);
break;
case spectra.reporting.ElementType.ColumnChart:
this.trimStrings(id);
this.AddColumnChart(this.Key(),id);
break;
case spectra.reporting.ElementType.ScatterChart:
this.trimStrings(id);
break;
}
}
catch(e){
console.log(e);
}
},AddTable:function(_36,_37){
var _38=document.getElementById(_36);
_38.appendChild(this.GetGoogleElem());
var _39=new google.visualization.Table(this.GetGoogleElem());
this.visuals[_36]=_39;
var dat=this.dataViews[_37].DataView();
if(this.elemJson.ShowSummary){
this.AddTableTotals(this.dataViews[_37]);
}
if(!this.elemJson.Sortable){
this.chartOptions={legendFontSize:11,axisFontSize:10,legend:"none",allowHtml:true,cssClassNames:"google-table-header",sort:"disable"};
}else{
this.chartOptions={legendFontSize:11,axisFontSize:10,legend:"none",allowHtml:true,cssClassNames:"google-table-header"};
}
this.dataViews[_37].FormatColumns();
_39.draw(dat,this.chartOptions);
},AddBarChart:function(_3a,_3b){
var _3c=document.getElementById(_3a);
var _3d=this.GetGoogleElem();
_3c.appendChild(_3d);
$(_3d).addClass("google-iframe-element");
var _3e=new google.visualization.LineChart(_3d);
this.visuals[_3a]=_3e;
this.chartOptions={legendFontSize:11,axisFontSize:10,legend:"none",height:370,fontSize:9};
_3e.draw(this.dataViews[_3b].DataView(),this.chartOptions);
if(this.elemJson.ShowSummary){
this.AddSummary();
}
},AddColumnChart:function(_3f,_40){
var _41=document.getElementById(_3f);
var _42=this.GetGoogleElem();
_41.appendChild(_42);
$(_42).addClass("google-iframe-element");
var _43=new google.visualization.ColumnChart(_42);
this.visuals[_3f]=_43;
this.chartOptions={legendFontSize:11,axisFontSize:10,legend:"none",height:370,fontSize:9};
_43.draw(this.dataViews[_40].DataView(),this.chartOptions);
if(this.elemJson.ShowSummary){
this.AddSummary();
}
},AddLineChart:function(_44,_45){
var _46=document.getElementById(_44);
var _47=this.GetGoogleElem();
console.log(_47);
_46.appendChild(_47);
$(_47).addClass("google-iframe-element");
var _48=new google.visualization.LineChart(_47);
this.visuals[_44]=_48;
var dat=this.dataViews[_45].DataView();
console.log(dat);
var _49=(this.elemJson.ShowPoints)?6:0;
var _4a="none";
if(this.elemJson.ShowLegend){
_4a="right";
}
this.chartOptions={legend:_4a,axisFontSize:10,height:400,fontSize:9,pointSize:_49,legendFontSize:8};
this.dataViews[_45].FormatColumns();
_48.draw(dat,this.chartOptions);
if(this.elemJson.ShowSummary){
this.AddSummary();
}
},DataViewChangeListener:function(_4b,key){
var _4c;
this.SetCurrentForParameter(_4b.EventData(),key);
},ParameterChangeListener:function(_4d,key){
},RegisterListeners:function(_4e,_4f){
if(this.UsesParameter(_4f)){
switch(_4e.EventType()){
case spectra.ui.events.EventType.DataChangeEvent:
_4e.AddListener(this.DataViewChangeListener,this);
return;
case spectra.ui.events.EventType.InputChangeEvent:
_4e.AddListener(this.ParameterChangeListener,this);
return;
}
}
},UsesParameter:function(_50){
for(var i=0;i<this.elemJson.DataViews.length;i++){
for(var key in this.elemJson.DataViews[i].Parameters){
if(key===_50.Key){
return true;
}
}
}
return false;
},SetCurrentForParameter:function(_51,_52){
var _53;
for(var i=0;i<this.elemJson.DataViews.length;i++){
for(var key in this.elemJson.DataViews[i].Parameters){
console.log(key,_52);
if((key===_51)&&(this.elemJson.DataViews[i].Parameters[key]===_52)){
this.currentView=this.dataViews[this.elemJson.DataViews[i].ID];
this.currentIndex=i;
}
}
}
this.RefreshChart(this.currentIndex);
},SetWaiting:function(){
$(this.GetGoogleElem()).html("");
$(this.GetGoogleElem()).addClass("widget-loading");
}};
spectra.reporting.ElementDataView=function(_54,_55){
this.dataTable=_54;
this.viewJson=_55;
this.colFormats=[];
this.getColumnIndex=function(_56){
for(var i=0;i<this.dataTable.getNumberOfColumns();i++){
if(this.dataTable.getColumnLabel(i)==_56){
return i;
}
}
return null;
};
this.shownCols=[];
var _57,_58;
var _59;
for(var i=0;i<this.viewJson.Columns.length;i++){
_5a=this.getColumnIndex(this.viewJson.Columns[i].ColumnName);
if(_5a!=null){
this.shownCols.push(_5a);
if(this.viewJson.Columns[i].Title.length>0){
this.dataTable.setColumnLabel(_5a,this.viewJson.Columns[i].Title);
}
if(this.viewJson.Columns[i].FormatString){
_57=this.viewJson.Columns[i].FormatString;
if(_57.lastIndexOf(".")>0){
_58=_57.lastIndexOf(".")-_57.length;
_59=new google.visualization.NumberFormat({negativeColor:"red",fractionDigits:_58,groupingSymbol:null});
}else{
if(_57.charAt(0)=="0"){
_59=new google.visualization.NumberFormat({negativeColor:"red",fractionDigits:0,groupingSymbol:null});
}else{
_59=new google.visualization.NumberFormat({negativeColor:"red",fractionDigits:_58,groupingSymbol:null});
}
}
this.colFormats[_5a]=_59;
}
}
}
this.getFilteredTable=function(_5b){
var _5c=_5b;
var _5d;
var _5e=[];
var _5f=[];
var tmp;
for(var i=0;i<_55.Filters.length;i++){
_5d=_55.Filters[i];
if(!_5d.IsInputFilter){
_5f.push(this.getColumnIndex(_5d.Value));
for(var i=0;i<this.dataTable.getNumberOfColumns();i++){
tmp=new spectra.reporting.GroupByColumn();
if(i!=_5f[0]){
tmp.column=i;
tmp.aggregation=spectra.reporting.StringRowMerge;
tmp.type=this.dataTable.getColumnType(i);
tmp.label=this.dataTable.getColumnLabel(i);
_5e.push(tmp);
}
}
_5c=google.visualization.data.group(_5c,_5f,_5e);
}
}
return _5c;
};
this.dataView=new google.visualization.DataView(this.getFilteredTable(_54));
var _5a;
this.dataView.setColumns(this.shownCols);
if(this.viewJson.MaxRows&&this.viewJson.MaxRows>0){
console.log("Max Rows ",this.viewJson);
if(this.dataView.getNumberOfRows()>this.viewJson.MaxRows){
this.dataView.setRows(0,this.viewJson.MaxRows);
}
}
};
spectra.reporting.ElementDataView.prototype={DataTable:function(){
return this.dataTable;
},DataView:function(){
return this.dataView;
},ID:function(){
return this.viewJson.ID;
},IsShown:function(_60){
for(var i=0;i<this.shownCols.length;i++){
if(this.shownCols[i]==_60){
return true;
}
}
return false;
},FormatColumns:function(){
console.log("format columns ",this.colFormats);
for(var i=0;i<this.colFormats.length;i++){
console.log(i);
if(this.colFormats[i]){
this.colFormats[i].format(this.dataTable,i);
}
}
}};
spectra.reporting.DataRefreshEvent=function(_61){
this.listeners=[];
this.event=null;
this.data=_61;
};
spectra.reporting.DataRefreshEvent.prototype={AddListener:function(_62,_63){
this.listeners.push({callback:_62,parent:_63});
},RemoveListener:function(_64){
for(var i=0;i<this.listeners.length;i++){
if(this.listeners[i]==_64){
this.listeners.splice(i,1);
}
}
},OriginalEvent:function(_65){
if(_65){
this.event=_65;
}
return this.event;
},EventData:function(){
return this.data;
},FireEvent:function(_66,_67){
for(var i=0;i<this.listeners.length;i++){
var _68=[];
this.OriginalEvent(_66);
_68[0]=this;
_68[1]=_67;
this.listeners[i].callback.apply(this.listeners[i].parent,_68);
}
}};
spectra.reporting.ParameterChangeEvent=function(_69){
this.listeners=[];
this.event=null;
this.data=_69;
};
spectra.reporting.ParameterChangeEvent.prototype={AddListener:function(_6a,_6b){
this.listeners.push({callback:_6a,parent:_6b});
},RemoveListener:function(_6c){
for(var i=0;i<this.listeners.length;i++){
if(this.listeners[i]==_6c){
this.listeners.splice(i,1);
}
}
},OriginalEvent:function(_6d){
if(_6d){
this.event=_6d;
}
return this.event;
},EventData:function(){
return this.data;
},FireEvent:function(_6e,_6f){
for(var i=0;i<this.listeners.length;i++){
var _70=[];
this.OriginalEvent(_6e);
_70[0]=this;
_70[1]=_6f;
this.listeners[i].callback.apply(this.listeners[i].parent,_70);
}
}};
spectra.reporting.GroupByColumn=function(){
};
spectra.reporting.GroupByColumn.prototype={column:null,aggregatoin:null,type:new String(),label:new String()};
spectra.namespaces("spectra.advancedsearch");
spectra.advancedsearch.applySpecialisedSearch=function(){
var _1=$("#adv-search-form");
var _2=$("#spec-search-list div.spec-search-item:visible");
var _3=false;
_2.find("input:visible").each(function(_4){
var _5=$(this);
if(_5.val().length>0){
_1.find("input[name=\""+_5.attr("name")+"\"]").val(_5.val());
_3=true;
}
});
if(_3){
var _6=_1.find("input[name=\"Tags\"]");
value=_6.val();
var _7=_2.find("input[name=Tags]").val();
if(_7&&_7.length>0){
var _8=new RegExp("[^|;][ ]*"+_7+"[$|;]","i");
if(!value.match(_8)){
if(value.length>0){
value=value+"; "+_7;
}else{
value=_7;
}
}
}
_6.val(value);
}
};
spectra.advancedsearch.initialise=function(){
$("#adv-search-form").submit(spectra.advancedsearch.applySpecialisedSearch);
var _9=false;
var _a=false;
if($.browser.msie){
if(parseInt($.browser.version)<7){
_9=true;
}else{
_a=true;
}
}
var _b=false;
var _c=$("#adv-search-form");
var _d=_c.find("input[name=\"Tags\"]");
var _e=_d.val().split(/[;][ ]*/);
var _f=0;
var tag=$("#spec-search-list").find("div.spec-search-item").each(function(){
var _10=$(this).find("input[name=Tags]").val();
if(_10){
for(var i=0;i<_e.length;i++){
if(_10.toLowerCase()==_e[i].toLowerCase()){
_e.splice(i,1);
_b=_f;
return false;
}
}
}
_f++;
});
_d.val(_e.join("; "));
$("#spec-search-list").accordion({collapsible:true,header:"div.spec-search-header",active:_b,animated:false,autoHeight:_9,clearStyle:_a});
$("#Project").autocomplete($("#adv-search-ac-projects").attr("href"),{dataType:"json",parse:function(_11){
var _12=new Array();
for(var i=0;i<_11.length;i++){
_12[i]={data:htmlEncode(_11[i]),value:_11[i],result:_11[i]};
}
return _12;
},formatItem:function(row){
return row;
},delay:100,matchSubset:false,multiple:false});
$("#Tags").autocomplete($("#adv-search-ac-tags").attr("href"),{dataType:"json",parse:function(_13){
var _14=new Array();
for(var i=0;i<_13.length;i++){
_14[i]={data:htmlEncode(_13[i]),value:_13[i],result:_13[i]};
}
return _14;
},formatItem:function(row){
return row;
},delay:100,matchSubset:false,multiple:true,multipleSeparator:"; "});
$("#StatusList input[value!=\"all\"]").click(function(){
if($(this).attr("checked")){
$("#StatusList input[value=\"all\"]").attr("checked",false);
}
});
$("#StatusList input[value=\"all\"]").click(function(){
if($(this).attr("checked")){
$("#StatusList input[value!=\"all\"]").attr("checked",false);
}
});
$("#restrictlist input[value!=\"all\"]").click(function(){
if($(this).attr("checked")){
$("#restrictlist input[value=\"all\"]").attr("checked",false);
}
});
$("#restrictlist input[value=\"all\"]").click(function(){
if($(this).attr("checked")){
$("#restrictlist input[value!=\"all\"]").attr("checked",false);
}
});
};
spectra.namespaces("spectra.searchresults");
spectra.searchresults.actions=[];
spectra.searchresults.selected=[];
spectra.searchresults.documentsSelected=[];
spectra.searchresults.forwardDialog=null;
spectra.searchresults.progressDialog=null;
spectra.globals.store["results-checked"]=new Array();
$(document).ready(function(){
$(":input[name='document_uuid']").attr("checked",false);
$(":input[name='document_uuid']").bind("click",function(e){
var _1=e.target.value;
if(e.target.checked){
spectra.searchresults.selected.push(_1);
var _2=$("#"+_1+"link").text();
var _3=$("#"+_1+"type").text();
var _4=new spectra.entities.Document(_1,_2,_3);
spectra.searchresults.documentsSelected.push(_4);
}else{
var _5=spectra.searchresults.documentsSelected;
for(var i=0;i<_5.length;i++){
if(_5[i].ID().match(_1)){
_5.splice(i,1);
}
}
_5=spectra.searchresults.selected;
for(var i=0;i<_5.length;i++){
if(_5[i].match(_1)){
_5.splice(i,1);
}
}
}
});
$("#sr-toggle-details").click(spectra.searchresults.toggleDetails);
$(".ellipsis").ellipsis();
});
spectra.searchresults.ExportSelected=function(_6){
console.log("ExportSelected");
if(spectra.searchresults.selected.length==0){
alert("No documents selected nothing was exported.");
return;
}
var _7=new spectra.globals.actions.ExportAction();
_7.Documents(spectra.searchresults.documentsSelected);
_7.ExportGroup(_6);
spectra.searchresults.ExportDocuments(_7);
};
spectra.searchresults.ExportDocuments=function(_8){
var _9=new spectra.globals.Action("Export",_8);
spectra.searchresults.actions["Export"]=_9;
dialog.dialogs["exportdialog"]=new dialog.ExportDialog("Exporting documents...",_8,spectra.searchresults.ExportDialogCallback);
};
spectra.searchresults.ExportDocListCallback=function(_a,_b){
console.dir(this);
var _c=spectra.globals.store["exportall-action"];
console.log("ExportSelected");
var l=_a.Data.length;
var _d=null;
_c.Documents();
for(var i=0;i<l;i++){
_d=new spectra.entities.Document(_a.Data[i].ID,_a.Data[i].DocumentCode,_a.Data[i].DocumentType);
_c.Documents().push(_d);
}
spectra.searchresults.ExportDocuments(_c);
};
spectra.searchresults.ExportDialogCallback=function(_e){
var _f=dialog.dialogs["exportdialog"];
var _10=spectra.searchresults.actions["Export"];
_10.Status(_e);
if(_e==spectra.globals.PROCESS_STATUS_CANCELLED){
_f.cleanup();
}else{
if(_e==spectra.globals.PROCESS_STATUS_NOT_STARTED){
var _11=_10.Data().Documents()[_10.Index()].ID();
var _12={document_uuid:encodeURI(_11),ExportGroupUUID:_10.Data().ExportGroup(),revision:-1};
var _13=new net.AjaxRequest(util.urls.getUrl("Export"),net.REQUEST_TYPE_POST,spectra.searchresults.UpdateStatusExport,_12);
_10.Request(_13);
_13.xhttp();
var i=_10.Index();
_10.Index(i+1);
}else{
if(_e==spectra.globals.PROCESS_STATUS_CANCELLED){
_f.cleanup();
}
}
}
};
spectra.searchresults.GetDocumentUUIDs=function(_14,_15){
var _16=new msg.Message("ExportMessage","Retrieving documents please wait...",msg.PRIORITY_HIGH,-1);
var _17=new spectra.globals.Action("GetDocumentUUIDs",unescape(util.urls.getUrl("SearchTextWithFilter")));
if(!_15){
_15=0;
}
spectra.searchresults.actions["GetDocumentUUIDs"]=_17;
var _18=_17.Data();
if(!_18){
_18="";
}
var _19={SearchString:unescape(_18),MaxResults:_15};
var _1a=new net.AjaxRequest(util.urls.getUrl("GetDocumentUUIDs"),net.REQUEST_TYPE_POST,function(p0,p1,p2){
_16.clear();
_14.apply(this,[p0,p1,p2]);
},_19);
_17.Request(_1a);
_1a.cacheResponse("GetDocumentUUIDs");
_1a.xhttp();
x;
};
spectra.searchresults.GetExportList=function(){
var _1b=new msg.Message("ExportMessage","Retrieving documents please wait...");
var _1c=new spectra.globals.Action("GetExportList",util.urls.getUrl("SearchTextWithFilter"));
spectra.searchresults.actions["GetExportList"]=_1c;
var _1d=_1c.Data();
var _1e={SearchString:unescape(_1d)};
var _1f=new net.AjaxRequest(util.urls.getUrl("GetExportList"),net.REQUEST_TYPE_POST,spectra.searchresults.ExportDocListCallback,_1e);
_1c.Request(_1f);
_1f.xhttp();
};
spectra.searchresults.ExportAll=function(_20){
var _21=new spectra.globals.actions.ExportAction();
_21.ExportGroup(_20);
spectra.globals.store["exportall-action"]=_21;
spectra.searchresults.GetExportList();
};
spectra.searchresults.DownloadSelected=function(){
if(this.selected.length==0){
var _22=new msg.Message("DownloadMessage","No documents have been selected for download");
return;
}
if(!this.progressDialog){
this.progressDialog=new dialog.Progress("Preparing zip file for download",this.DownloadDialogCallback);
}else{
this.progressDialog.show();
}
var _23=new spectra.globals.Action("Download",spectra.searchresults.selected);
spectra.searchresults.actions["Download"]=_23;
var _24=new net.AjaxRequest(util.urls.getUrl("StartDownload"),net.REQUEST_TYPE_POST,this.UpdateStatusDownload,"DocumentUUID="+encodeURI(_23.Data()[_23.Index()]));
_23.Request(_24);
_24.xhttp();
};
spectra.searchresults.DownloadAll=function(_25){
if(!_25){
_25=100;
}
this.GetDocumentUUIDs(this.DownloadAllCallback,_25);
};
spectra.searchresults.ForwardSelected=function(){
if(this.selected.length==0){
var _26=new msg.Message("ForwardMessage","No documents have been selected for forwarding");
return;
}
var _27=new spectra.globals.actions.EmailAction();
_27.Data(this.selected);
var _28=new spectra.globals.Action("forward",_27);
this.actions["forward"]=_28;
this.forwardDialog=new dialog.Email("Forward Documents",this.ForwardDocumentsCallback);
};
spectra.searchresults.ForwardAll=function(){
this.GetDocumentUUIDs(this.UpdateStatusForward);
};
spectra.searchresults.UpdateStatusExport=function(_29){
console.log("request ok");
console.log(_29);
var dlg=dialog.dialogs["exportdialog"];
var _2a=spectra.searchresults.actions["Export"];
if(_29.Status==3){
var _2b={html:_29.Message};
dlg.ExportAction().Results()[dlg.Index()]=_2b;
}else{
dlg.ExportAction().Results()[dlg.Index()]=_29.Data;
}
dlg.Index(_2a.Index());
var _2c=null;
if(dlg.processStatus()===dialog.PROCESS_STATUS_CANCELLED){
_2a.Status(spectra.globals.PROCESS_STATUS_CANCELLED);
dlg.cleanup();
return;
}
if(dlg.ExportAction().Documents().length>_2a.Index()){
var _2d=_2a.Data().Documents()[_2a.Index()].ID();
var _2e={document_uuid:encodeURI(_2d),ExportGroupUUID:_2a.Data().ExportGroup(),revision:-1};
var _2f=new net.AjaxRequest(util.urls.getUrl("Export"),net.REQUEST_TYPE_POST,spectra.searchresults.UpdateStatusExport,_2e);
_2a.Request(_2f);
_2f.xhttp();
var i=_2a.Index();
_2a.Index(i+1);
}else{
$(":input[name='document_uuid']").attr("checked",false);
spectra.searchresults.documentsSelected=[];
}
return;
};
spectra.searchresults.UpdateListItem=function(id,_30){
document.getElementById(id).nodeValue=_30;
};
spectra.searchresults.ForwardDocumentsCallback=function(){
var _31=spectra.searchresults.actions["forward"];
_31.Data().Address(spectra.searchresults.forwardDialog.getAddress());
_31.Data().Message(spectra.searchresults.forwardDialog.getMessage());
var _32=spectra.searchresults.BuildParamsForward(_31.Data());
console.log(_32);
var _33=new net.AjaxRequest(util.urls.getUrl("ForwardAll"),net.REQUEST_TYPE_POST,spectra.searchresults.UpdateStatusForwardCompleted,_32);
_31.Request(_33);
_33.xhttp();
return true;
};
spectra.searchresults.UpdateStatusForwardCompleted=function(_34){
setStatusMessage(_34.Message);
$(":input[name='document_uuid']").attr("checked",false);
spectra.searchresults.documentsSelected=[];
spectra.searchresults.selected=[];
};
spectra.searchresults.BuildParamsForward=function(_35){
var str;
str="To="+_35.Address();
str=str+"&Message="+_35.Message();
var l=_35.Data().length;
for(var i=0;i<l;i++){
str=str+"&DocumentUUIDs="+encodeURI(_35.Data()[i]);
}
return str;
};
spectra.searchresults.UpdateStatusForward=function(_36){
spectra.searchresults.selected=_36.Data;
if(msg.messages["ExportMessage"]){
msg.messages["ExportMessage"].clear();
}
spectra.searchresults.ForwardSelected();
};
spectra.searchresults.DownloadAllCallback=function(_37){
spectra.searchresults.selected=_37.Data;
spectra.searchresults.DownloadSelected();
};
spectra.searchresults.DownloadDialogCallback=function(_38){
console.log("spectra.searchresults.DownloadDialogCallback",_38);
if(_38==spectra.globals.PROCESS_STATUS_COMPLETED||_38==spectra.globals.PROCESS_STATUS_CANCELLED){
$(":input[name='document_uuid']").attr("checked",false);
spectra.searchresults.documentsSelected=[];
spectra.searchresults.selected=[];
}
};
spectra.searchresults.UpdateStatusDownload=function(_39){
console.log("spectra.searchresults.UpdateStatusDownload",_39,spectra.searchresults.progressDialog.processStatus());
if(spectra.searchresults.progressDialog.processStatus()!=spectra.globals.PROCESS_STATUS_INPROGRESS&&spectra.searchresults.progressDialog.processStatus()!=spectra.globals.PROCESS_STATUS_COMPLETED&&spectra.searchresults.progressDialog.processStatus()!=spectra.globals.PROCESS_STATUS_ERROR){
return false;
}
var _3a=_39.DownloadID;
var _3b=_39.ErrorMessage;
if(_3b){
spectra.searchresults.progressDialog.addStatusMessage(_3b);
spectra.searchresults.progressDialog.processStatus(spectra.globals.PROCESS_STATUS_ERROR);
return false;
}
var _3c=spectra.searchresults;
var _3d=_3c.actions["Download"];
if(_3d.Index()<_3c.selected.length){
_3d.Index(_3d.Index()+1);
}
var pct=_3d.Index()/_3c.selected.length;
spectra.searchresults.progressDialog.value(pct*100);
if(pct<1){
var _3e=new net.AjaxRequest(util.urls.getUrl("AddDownload"),net.REQUEST_TYPE_POST,spectra.searchresults.UpdateStatusDownload,"DownloadID="+_3a+"&DocumentUUID="+_3d.Data()[_3d.Index()]);
_3d.Request(_3e);
_3e.xhttp();
}else{
$(":input[name='document_uuid']").attr("checked",false);
spectra.searchresults.progressDialog.hide();
document.location.href=util.urls.getUrl("FinishDownload")+"?DownloadID="+_3a;
}
};
spectra.searchresults.toggleDetails=function(){
var _3f=$("#SearchResults div.sr-doc-detail");
_3f.toggle();
if(_3f.is(":visible")){
$("#SearchResults li.sr-col-icon div.panel").addClass("hidden");
$("#sr-toggle-details").text("Hide Details");
$.cookie("showhideresults","true",{expires:100});
}else{
$("#SearchResults li.sr-col-icon div.panel").removeClass("hidden");
$("#sr-toggle-details").text("Show Details");
$.cookie("showhideresults","false",{expires:100});
}
return false;
};


