if(typeof (dojo)!="undefined"){ dojo.provide("Freja");}
if(typeof (Freja)=="undefined"){ Freja={};}
Freja.NAME="Freja"; Freja.VERSION="2.1.1"; Freja.__repr__=function(){ return "["+this.NAME+" "+this.VERSION+"]";}; Freja.toString=function(){ return this.__repr__();}; Freja.Class={}; Freja.Class.extend=function(_1,_2){ var _3=function(){ }; _3.prototype=_2.prototype; _1.prototype=new _3(); _1.prototype.constructor=_1; _1.prototype.superconstructor=_2; _1.prototype.supertype=_2.prototype;}; function Sarissa(){ }
Sarissa.PARSED_OK="Document contains no parsing errors"; Sarissa.PARSED_EMPTY="Document is empty"; Sarissa.PARSED_UNKNOWN_ERROR="Not well-formed or other error"; var _sarissa_iNsCounter=0; var _SARISSA_IEPREFIX4XSLPARAM=""; var _SARISSA_HAS_DOM_IMPLEMENTATION=document.implementation&&true; var _SARISSA_HAS_DOM_CREATE_DOCUMENT=_SARISSA_HAS_DOM_IMPLEMENTATION&&document.implementation.createDocument; var _SARISSA_HAS_DOM_FEATURE=_SARISSA_HAS_DOM_IMPLEMENTATION&&document.implementation.hasFeature; var _SARISSA_IS_MOZ=_SARISSA_HAS_DOM_CREATE_DOCUMENT&&_SARISSA_HAS_DOM_FEATURE; var _SARISSA_IS_SAFARI=(navigator.userAgent&&navigator.vendor&&(navigator.userAgent.toLowerCase().indexOf("applewebkit")!=-1||navigator.vendor.indexOf("Apple")!=-1)); var _SARISSA_IS_IE=document.all&&window.ActiveXObject&&navigator.userAgent.toLowerCase().indexOf("msie")>-1&&navigator.userAgent.toLowerCase().indexOf("opera")==-1; if(!window.Node||!Node.ELEMENT_NODE){ Node={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12};}
if(typeof XMLDocument=="undefined"&&typeof Document!="undefined"){ XMLDocument=Document;}
if(_SARISSA_IS_IE){ _SARISSA_IEPREFIX4XSLPARAM="xsl:"; var _SARISSA_DOM_PROGID=""; var _SARISSA_XMLHTTP_PROGID=""; var _SARISSA_DOM_XMLWRITER=""; Sarissa.pickRecentProgID=function(_4){ var _5=false; for(var i=0;i<_4.length&&!_5;i++){ try{ var _7=new ActiveXObject(_4[i]); o2Store=_4[i]; _5=true;}
catch(objException){ }
}
if(!_5){ throw "Could not retreive a valid progID of Class: "+_4[_4.length-1]+". (original exception: "+e+")";}
_4=null; return o2Store;}; _SARISSA_DOM_PROGID=null; _SARISSA_THREADEDDOM_PROGID=null; _SARISSA_XSLTEMPLATE_PROGID=null; _SARISSA_XMLHTTP_PROGID=null; if(!window.XMLHttpRequest){ XMLHttpRequest=function(){ if(!_SARISSA_XMLHTTP_PROGID){ _SARISSA_XMLHTTP_PROGID=Sarissa.pickRecentProgID(["Msxml2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]);}
return new ActiveXObject(_SARISSA_XMLHTTP_PROGID);};}
Sarissa.getDomDocument=function(_8,_9){ if(!_SARISSA_DOM_PROGID){ _SARISSA_DOM_PROGID=Sarissa.pickRecentProgID(["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.3.0","MSXML2.DOMDocument","MSXML.DOMDocument","Microsoft.XMLDOM"]);}
var _a=new ActiveXObject(_SARISSA_DOM_PROGID); if(_9){ var _b=""; if(_8){ if(_9.indexOf(":")>1){ _b=_9.substring(0,_9.indexOf(":")); _9=_9.substring(_9.indexOf(":")+1);}else{ _b="a"+(_sarissa_iNsCounter++);}
}
if(_8){ _a.loadXML("<"+_b+":"+_9+" xmlns:"+_b+"=\""+_8+"\""+" />");}else{ _a.loadXML("<"+_9+" />");}
}
return _a;}; Sarissa.getParseErrorText=function(_c){ var _d=Sarissa.PARSED_OK; if(_c.parseError.errorCode!=0){ _d="XML Parsing Error: "+_c.parseError.reason+"\nLocation: "+_c.parseError.url+"\nLine Number "+_c.parseError.line+", Column "+_c.parseError.linepos+":\n"+_c.parseError.srcText+"\n"; for(var i=0;i<_c.parseError.linepos;i++){ _d+="-";}
_d+="^\n";}else{ if(_c.documentElement==null){ _d=Sarissa.PARSED_EMPTY;}
}
return _d;}; Sarissa.setXpathNamespaces=function(_f,_10){ _f.setProperty("SelectionLanguage","XPath"); _f.setProperty("SelectionNamespaces",_10);}; XSLTProcessor=function(){ if(!_SARISSA_XSLTEMPLATE_PROGID){ _SARISSA_XSLTEMPLATE_PROGID=Sarissa.pickRecentProgID(["Msxml2.XSLTemplate.6.0","MSXML2.XSLTemplate.3.0"]);}
this.template=new ActiveXObject(_SARISSA_XSLTEMPLATE_PROGID); this.processor=null;}; XSLTProcessor.prototype.importStylesheet=function(_11){ if(!_SARISSA_THREADEDDOM_PROGID){ _SARISSA_THREADEDDOM_PROGID=Sarissa.pickRecentProgID(["MSXML2.FreeThreadedDOMDocument.6.0","MSXML2.FreeThreadedDOMDocument.3.0"]);}
_11.setProperty("SelectionLanguage","XPath"); _11.setProperty("SelectionNamespaces","xmlns:xsl='http://www.w3.org/1999/XSL/Transform'"); var _12=new ActiveXObject(_SARISSA_THREADEDDOM_PROGID); if(_11.url&&_11.selectSingleNode("//xsl:*[local-name() = 'import' or local-name() = 'include']")!=null){ _12.async=false; if(_SARISSA_THREADEDDOM_PROGID=="MSXML2.FreeThreadedDOMDocument.6.0"){ _12.setProperty("AllowDocumentFunction",true); _12.resolveExternals=true;}
_12.load(_11.url);}else{ _12.loadXML(_11.xml);}
_12.setProperty("SelectionNamespaces","xmlns:xsl='http://www.w3.org/1999/XSL/Transform'"); var _13=_12.selectSingleNode("//xsl:output"); this.outputMethod=_13?_13.getAttribute("method"):"html"; this.template.stylesheet=_12; this.processor=this.template.createProcessor(); this.paramsSet=new Array();}; XSLTProcessor.prototype.transformToDocument=function(_14){ if(_SARISSA_THREADEDDOM_PROGID){ this.processor.input=_14; var _15=new ActiveXObject(_SARISSA_DOM_PROGID); this.processor.output=_15; this.processor.transform(); return _15;}else{ if(!_SARISSA_DOM_XMLWRITER){ _SARISSA_DOM_XMLWRITER=Sarissa.pickRecentProgID(["Msxml2.MXXMLWriter.6.0","Msxml2.MXXMLWriter.3.0","MSXML2.MXXMLWriter","MSXML.MXXMLWriter","Microsoft.XMLDOM"]);}
this.processor.input=_14; var _15=new ActiveXObject(_SARISSA_DOM_XMLWRITER); this.processor.output=_15; this.processor.transform(); var _16=new ActiveXObject(_SARISSA_DOM_PROGID); _16.loadXML(_15.output+""); return _16;}
}; XSLTProcessor.prototype.transformToFragment=function(_17,_18){ this.processor.input=_17; this.processor.transform(); var s=this.processor.output; var f=_18.createDocumentFragment(); if(this.outputMethod=="text"){ f.appendChild(_18.createTextNode(s));}else{ if(_18.body&&_18.body.innerHTML){ var _1b=_18.createElement("div"); _1b.innerHTML=s; while(_1b.hasChildNodes()){ f.appendChild(_1b.firstChild);}
}else{ var _1c=new ActiveXObject(_SARISSA_DOM_PROGID); if(s.substring(0,5)=="<?xml"){ s=s.substring(s.indexOf("?>")+2);}
var xml="".concat("<my>",s,"</my>"); _1c.loadXML(xml); var _1b=_1c.documentElement; while(_1b.hasChildNodes()){ f.appendChild(_1b.firstChild);}
}
}
return f;}; XSLTProcessor.prototype.setParameter=function(_1e,_1f,_20){ if(_1e){ this.processor.addParameter(_1f,_20,_1e);}else{ this.processor.addParameter(_1f,_20);}
if(!this.paramsSet[""+_1e]){ this.paramsSet[""+_1e]=new Array();}
this.paramsSet[""+_1e][_1f]=_20;}; XSLTProcessor.prototype.getParameter=function(_21,_22){ _21=_21||""; if(this.paramsSet[_21]&&this.paramsSet[_21][_22]){ return this.paramsSet[_21][_22];}else{ return null;}
}; XSLTProcessor.prototype.clearParameters=function(){ for(var _23 in this.paramsSet){ for(var _24 in this.paramsSet[_23]){ if(_23){ this.processor.addParameter(_24,null,_23);}else{ this.processor.addParameter(_24,null);}
}
}
this.paramsSet=new Array();};}else{ if(_SARISSA_HAS_DOM_CREATE_DOCUMENT){ Sarissa.__handleLoad__=function(_25){ Sarissa.__setReadyState__(_25,4);}; _sarissa_XMLDocument_onload=function(){ Sarissa.__handleLoad__(this);}; Sarissa.__setReadyState__=function(_26,_27){ _26.readyState=_27; _26.readystate=_27; if(_26.onreadystatechange!=null&&typeof _26.onreadystatechange=="function"){ _26.onreadystatechange();}
}; Sarissa.getDomDocument=function(_28,_29){ var _2a=document.implementation.createDocument(_28?_28:null,_29?_29:null,null); if(!_2a.onreadystatechange){ _2a.onreadystatechange=null;}
if(!_2a.readyState){ _2a.readyState=0;}
_2a.addEventListener("load",_sarissa_XMLDocument_onload,false); return _2a;}; if(window.XMLDocument){ }else{ if(_SARISSA_HAS_DOM_FEATURE&&window.Document&&!Document.prototype.load&&document.implementation.hasFeature("LS","3.0")){ Sarissa.getDomDocument=function(_2b,_2c){ var _2d=document.implementation.createDocument(_2b?_2b:null,_2c?_2c:null,null); return _2d;};}else{ Sarissa.getDomDocument=function(_2e,_2f){ var _30=document.implementation.createDocument(_2e?_2e:null,_2f?_2f:null,null); if(_30&&(_2e||_2f)&&!_30.documentElement){ _30.appendChild(_30.createElementNS(_2e,_2f));}
return _30;};}
}
}
}
if(!window.DOMParser){ if(_SARISSA_IS_SAFARI){ DOMParser=function(){ }; DOMParser.prototype.parseFromString=function(_31,_32){ var _33=new XMLHttpRequest(); _33.open("GET","data:text/xml;charset=utf-8,"+encodeURIComponent(_31),false); _33.send(null); return _33.responseXML;};}else{ if(Sarissa.getDomDocument&&Sarissa.getDomDocument()&&Sarissa.getDomDocument(null,"bar").xml){ DOMParser=function(){ }; DOMParser.prototype.parseFromString=function(_34,_35){ var doc=Sarissa.getDomDocument(); doc.loadXML(_34); return doc;};}
}
}
if((typeof (document.importNode)=="undefined")&&_SARISSA_IS_IE){ try{ document.importNode=function(_37,_38){ var tmp; if(_37.nodeName=="tbody"||_37.nodeName=="tr"){ tmp=document.createElement("table");}else{ if(_37.nodeName=="td"){ tmp=document.createElement("tr");}else{ if(_37.nodeName=="option"){ tmp=document.createElement("select");}else{ tmp=document.createElement("div");}
}
}
if(_38){ tmp.innerHTML=_37.xml?_37.xml:_37.outerHTML;}else{ tmp.innerHTML=_37.xml?_37.cloneNode(false).xml:_37.cloneNode(false).outerHTML;}
return tmp.getElementsByTagName("*")[0];};}
catch(e){ }
}
if(!Sarissa.getParseErrorText){ Sarissa.getParseErrorText=function(_3a){ var _3b=Sarissa.PARSED_OK; if(!_3a.documentElement){ _3b=Sarissa.PARSED_EMPTY;}else{ if(_3a.documentElement.tagName=="parsererror"){ _3b=_3a.documentElement.firstChild.data; _3b+="\n"+_3a.documentElement.firstChild.nextSibling.firstChild.data;}else{ if(_3a.getElementsByTagName("parsererror").length>0){ var _3c=_3a.getElementsByTagName("parsererror")[0]; _3b=Sarissa.getText(_3c,true)+"\n";}else{ if(_3a.parseError&&_3a.parseError.errorCode!=0){ _3b=Sarissa.PARSED_UNKNOWN_ERROR;}
}
}
}
return _3b;};}
Sarissa.getText=function(_3d,_3e){ var s=""; var _40=_3d.childNodes; for(var i=0;i<_40.length;i++){ var _42=_40[i]; var _43=_42.nodeType; if(_43==Node.TEXT_NODE||_43==Node.CDATA_SECTION_NODE){ s+=_42.data;}else{ if(_3e==true&&(_43==Node.ELEMENT_NODE||_43==Node.DOCUMENT_NODE||_43==Node.DOCUMENT_FRAGMENT_NODE)){ s+=Sarissa.getText(_42,true);}
}
}
return s;}; if(!window.XMLSerializer&&Sarissa.getDomDocument&&Sarissa.getDomDocument("","foo",null).xml){ XMLSerializer=function(){ }; XMLSerializer.prototype.serializeToString=function(_44){ return _44.xml;};}
Sarissa.stripTags=function(s){ return s.replace(/<[^>]+>/g,"");}; Sarissa.clearChildNodes=function(_46){ while(_46.firstChild){ _46.removeChild(_46.firstChild);}
}; Sarissa.copyChildNodes=function(_47,_48,_49){ if((!_47)||(!_48)){ throw "Both source and destination nodes must be provided";}
if(!_49){ Sarissa.clearChildNodes(_48);}
var _4a=_48.nodeType==Node.DOCUMENT_NODE?_48:_48.ownerDocument; var _4b=_47.childNodes; if(typeof (_4a.importNode)!="undefined"){ for(var i=0;i<_4b.length;i++){ _48.appendChild(_4a.importNode(_4b[i],true));}
}else{ for(var i=0;i<_4b.length;i++){ _48.appendChild(_4b[i].cloneNode(true));}
}
}; Sarissa.moveChildNodes=function(_4d,_4e,_4f){ if((!_4d)||(!_4e)){ throw "Both source and destination nodes must be provided";}
if(!_4f){ Sarissa.clearChildNodes(_4e);}
var _50=_4d.childNodes; if(_4d.ownerDocument==_4e.ownerDocument){ while(_4d.firstChild){ _4e.appendChild(_4d.firstChild);}
}else{ var _51=_4e.nodeType==Node.DOCUMENT_NODE?_4e:_4e.ownerDocument; if(typeof (_51.importNode)!="undefined"){ for(var i=0;i<_50.length;i++){ _4e.appendChild(_51.importNode(_50[i],true));}
}else{ for(var i=0;i<_50.length;i++){ _4e.appendChild(_50[i].cloneNode(true));}
}
Sarissa.clearChildNodes(_4d);}
}; Sarissa.xmlize=function(_53,_54,_55){ _55=_55?_55:""; var s=_55+"<"+_54+">"; var _57=false; if(!(_53 instanceof Object)||_53 instanceof Number||_53 instanceof String||_53 instanceof Boolean||_53 instanceof Date){ s+=Sarissa.escape(""+_53); _57=true;}else{ s+="\n"; var _58=""; var _59=_53 instanceof Array; for(var _5a in _53){ s+=Sarissa.xmlize(_53[_5a],(_59?"array-item key=\""+_5a+"\"":_5a),_55+"   ");}
s+=_55;}
return s+=(_54.indexOf(" ")!=-1?"</array-item>\n":"</"+_54+">\n");}; Sarissa.escape=function(_5b){ return _5b.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");
};
Sarissa.unescape=function(_5c){
return _5c.replace(/&apos;/g,"'").replace(/&quot;/g,"\"").replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&amp;/g,"&");
};
if(_SARISSA_HAS_DOM_FEATURE&&document.implementation.hasFeature("XPath","3.0")){
function SarissaNodeList(i){
this.length=i;
}
SarissaNodeList.prototype=new Array(0);
SarissaNodeList.prototype.constructor=Array;
SarissaNodeList.prototype.item=function(i){
return (i<0||i>=this.length)?null:this[i];
};
SarissaNodeList.prototype.expr="";
if(window.XMLDocument&&(!XMLDocument.prototype.setProperty)){
XMLDocument.prototype.setProperty=function(x,y){
};
}
Sarissa.setXpathNamespaces=function(_61,_62){
_61._sarissa_useCustomResolver=true;
var _63=_62.indexOf(" ")>-1?_62.split(" "):new Array(_62);
_61._sarissa_xpathNamespaces=new Array(_63.length);
for(var i=0;i<_63.length;i++){
var ns=_63[i];
var _66=ns.indexOf(":");
var _67=ns.indexOf("=");
if(_66>0&&_67>_66+1){
var _68=ns.substring(_66+1,_67);
var uri=ns.substring(_67+2,ns.length-1);
_61._sarissa_xpathNamespaces[_68]=uri;
}else{
throw "Bad format on namespace declaration(s) given";
}
}
};
XMLDocument.prototype._sarissa_useCustomResolver=false;
XMLDocument.prototype._sarissa_xpathNamespaces=new Array();
XMLDocument.prototype.selectNodes=function(_6a,_6b,_6c){
var _6d=this;
var _6e=this._sarissa_useCustomResolver?function(_6f){
var s=_6d._sarissa_xpathNamespaces[_6f];
if(s){
return s;
}else{
throw "No namespace URI found for prefix: '"+_6f+"'";
}
}:this.createNSResolver(this.documentElement);
var _71=null;
if(!_6c){
var _72=this.evaluate(_6a,(_6b?_6b:this),_6e,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);
var _73=new SarissaNodeList(_72.snapshotLength);
_73.expr=_6a;
for(var i=0;i<_73.length;i++){
_73[i]=_72.snapshotItem(i);
}
_71=_73;
}else{
_71=_72=this.evaluate(_6a,(_6b?_6b:this),_6e,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue;
}
return _71;
};
Element.prototype.selectNodes=function(_75){
var doc=this.ownerDocument;
if(doc.selectNodes){
return doc.selectNodes(_75,this);
}else{
throw "Method selectNodes is only supported by XML Elements";
}
};
XMLDocument.prototype.selectSingleNode=function(_77,_78){
var ctx=_78?_78:null;
return this.selectNodes(_77,ctx,true);
};
Element.prototype.selectSingleNode=function(_7a){
var doc=this.ownerDocument;
if(doc.selectSingleNode){
return doc.selectSingleNode(_7a,this);
}else{
throw "Method selectNodes is only supported by XML Elements";
}
};
Sarissa.IS_ENABLED_SELECT_NODES=true;
}
if(_SARISSA_IS_IE){
Sarissa.IS_ENABLED_SELECT_NODES=true;
}
if(typeof (Freja)=="undefined"){
Freja={};
}
Freja._aux={};
Freja._aux.bind=function(_7c,_7d){
if(typeof (_7c)=="string"){
_7c=_7d[_7c];
}
var _7e=null;
if(typeof (_7c.im_func)=="function"){
_7e=_7c.im_func;
}else{
_7e=_7c;
}
_7c=function(){
return _7c.im_func.apply(_7c.im_self,arguments);
};
_7c.im_func=_7e;
_7c.im_self=_7d;
return _7c;
};
Freja._aux.formContents=function(_7f){
if(!_7f){
_7f=document;
}
var _80=[];
var _81=[];
var _82=_7f.getElementsByTagName("INPUT");
for(var i=0;i<_82.length;++i){
var _84=_82[i];
if(_84.name){
if(_84.type=="radio"||_84.type=="checkbox"){
if(_84.checked){
_80.push(_84.name);
_81.push(_84.value);
}else{
_80.push(_84.name);
_81.push("");
}
}else{
_80.push(_84.name);
_81.push(_84.value);
}
}
}
var _85=_7f.getElementsByTagName("TEXTAREA");
for(var i=0;i<_85.length;++i){
var _84=_85[i];
if(_84.name){
_80.push(_84.name);
_81.push(_84.value);
}
}
var _86=_7f.getElementsByTagName("SELECT");
for(var i=0;i<_86.length;++i){
var _84=_86[i];
if(_84.name){
if(_84.selectedIndex>=0){
var opt=_84.options[_84.selectedIndex];
_80.push(_84.name);
_81.push((opt.value)?opt.value:"");
}
}
}
return [_80,_81];
};
Freja._aux.getElement=function(id){
if(typeof (id)=="object"){
return id;
}else{
return document.getElementById(id);
}
};
Freja._aux.connect=function(src,_8a,fnc){
if(!src){
return;
}
if(src.addEventListener){
var _8c=function(e){
var evt={stop:function(){
if(e.cancelable){
e.preventDefault();
}
e.stopPropagation();
}};
fnc(evt);
};
src.addEventListener(_8a.replace(/^(on)/,""),_8c,false);
}else{
if(src.attachEvent){
var _8c=function(){
var e=window.event;
var evt={stop:function(){
e.cancelBubble=true;
e.returnValue=false;
}};
fnc(evt);
};
src.attachEvent(_8a,_8c);
}
}
if(!src._signals){
src._signals=[];
}
if(!src._signals[_8a]){
src._signals[_8a]=[];
}
for(var _91=0;_91<src._signals[_8a].length;_91++){
if(src._signals[_8a][_91].toString()==fnc.toString()){
return;
}
}
src._signals[_8a].push(fnc);
};
Freja._aux.signal=function(src,_93){
try{
if(src._signals&&src._signals[_93]){
var _94=src._signals[_93];
var _95=[];
for(var i=2;i<arguments.length;i++){
_95.push(arguments[i]);
}
for(var i=0;i<_94.length;i++){
try{
_94[i].apply(src,_95);
}
catch(e){
}
}
}
}
catch(e){
}
};
Freja._aux.createDeferred=function(){
return new Freja._aux.Deferred();
};
Freja._aux.openXMLHttpRequest=function(_97,url,_99,_9a,_9b){
var req=new XMLHttpRequest();
if(_9a&&_9b){
req.open(_97,url,_99,_9a,_9b);
}else{
req.open(_97,url,_99);
}
if(_97=="POST"||_97=="PUT"){
req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
req.setRequestHeader("X-Requested-With","XMLHttpRequest");
return req;
};
Freja._aux.sendXMLHttpRequest=function(req,_9e){
var d=Freja._aux.createDeferred();
var _a0=false;
req.onreadystatechange=function(){
if(req.readyState==4&&!_a0){
if(req.status==0||req.status==200||req.status==201||req.status==304){
d.callback(req);
}else{
d.errback(req);
}
_a0=true;
}
};
if(!_9e){
_9e="";
}
req.send(_9e);
return d;
};
Freja._aux.xmlize=Sarissa.xmlize;
Freja._aux.serializeXML=function(_a1){
if(_a1.xml){
return _a1.xml;
}
return (new XMLSerializer()).serializeToString(_a1);
};
Freja._aux.loadXML=function(_a2){
return (new DOMParser()).parseFromString(_a2,"text/xml");
};
Freja._aux.transformXSL=function(xml,xsl,_a5){
var _a6=new XSLTProcessor();
_a6.importStylesheet(xsl);
if(_a5){
for(var _a7 in _a5){
_a6.setParameter("",_a7,_a5[_a7]);
}
}
return _a6.transformToFragment(xml,window.document);
};
Freja._aux.cloneXMLDocument=function(_a8){
var _a9=null;
try{
_a9=_a8.cloneNode(true);
}
catch(e){
}
if(!_a9){
if(document.implementation&&document.implementation.createDocument){
_a9=document.implementation.createDocument("",_a8.documentElement.nodeName,null);
var _aa=_a9.importNode(_a8.documentElement.cloneNode(true),true);
try{
_a9.appendChild(_aa);
}
catch(e){
var _ab=_a9.documentElement;
for(var i=_aa.childNodes.length;i>=0;i--){
_ab.insertBefore(_aa.childNodes[i],_ab.firstChild);
}
for(var i=0;i<_a8.documentElement.attributes.length;i++){
var _ad=_a8.documentElement.attributes.item(i).name;
var _ae=_a8.documentElement.attributes.item(i).value;
_a9.documentElement.setAttribute(_ad,_ae);
}
}
}
}
return _a9;
};
Freja._aux.hasSupportForXSLT=function(){
return (typeof (XSLTProcessor)!="undefined");
};
Freja._aux.createQueryEngine=function(){
if(Sarissa.IS_ENABLED_SELECT_NODES){
return new Freja.QueryEngine.XPath();
}else{
return new Freja.QueryEngine.SimplePath();
}
};
Freja._aux.Deferred=function(){
this._good=[];
this._bad=[];
this._pending=null;
};
Freja._aux.Deferred.prototype.callback=function(){
if(this._good.length==0){
this._pending=[this.callback,arguments];
return;
}
for(var i=0;i<this._good.length;i++){
this._good[i].apply(window,arguments);
}
this._good=[];
};
Freja._aux.Deferred.prototype.errback=function(){
if(this._bad.length==0){
this._pending=[this.errback,arguments];
return;
}
for(var i=0;i<this._bad.length;i++){
this._bad[i].apply(window,arguments);
}
this._bad=[];
};
Freja._aux.Deferred.prototype.addCallbacks=function(_b1,_b2){
if(_b1){
this._good[this._good.length]=_b1;
}
if(_b2){
this._bad[this._bad.length]=_b2;
}
if(this._pending){
this._pending[0].apply(this,this._pending[1]);
}
};
Freja._aux.Deferred.prototype.addCallback=function(_b3){
this.addCallbacks(_b3);
};
Freja._aux.Deferred.prototype.addErrback=function(_b4){
this.addCallbacks(null,_b4);
};
Freja._aux.importNode=function(_b5,_b6,_b7){
if(typeof _b7=="undefined"){
_b7=true;
}
if(_b5.importNode){
return _b5.importNode(_b6,_b7);
}else{
return _b6.cloneNode(_b7);
}
};
Freja.QueryEngine=function(){
};
Freja.QueryEngine.prototype.getElementById=function(_b8,id){
var _ba=_b8.getElementsByTagName("*");
for(var i=0;i<_ba.length;i++){
if(_ba[i].getAttribute("id")==id){
return _ba[i];
}
}
};
Freja.QueryEngine.prototype.get=function(_bc,_bd){
var _be=this._find(_bc,_bd);
if(!_be){
throw new Error("Can't evaluate expression "+_bd);
}
switch(_be.nodeType){
case 1:
if(_be.firstChild&&(_be.firstChild.nodeType==3||_be.firstChild.nodeType==4)){
return _be.firstChild.nodeValue;
}
break;
case 2:
return _be.nodeValue;
break;
case 3:
case 4:
return _be.nodeValue;
break;
}
return null;
};
Freja.QueryEngine.prototype.set=function(_bf,_c0,_c1){
var _c2=this._find(_bf,_c0);
if(!_c2){
var _c3=_c0.substr(_c0.lastIndexOf("/")+1);
if(_c3.charAt(0)=="@"){
var _c4=_c0.substring(0,_c0.lastIndexOf("/"));
var _c5=this._find(_bf,_c4);
if(_c5){
_c5.setAttribute(_c3.substr(1),_c1);
return;
}
}
throw new Error("Can't evaluate expression "+_c0);
}
switch(_c2.nodeType){
case 1:
if(_c2.firstChild&&(_c2.firstChild.nodeType==3||_c2.firstChild.nodeType==4)){
_c2.firstChild.nodeValue=_c1;
}else{
if(_c1!=""){
_c2.appendChild(_bf.createTextNode(_c1));
}
}
break;
case 2:
_c2.nodeValue=_c1;
break;
case 3:
case 4:
_c2.nodeValue=_c1;
break;
}
return;
};
Freja.QueryEngine.XPath=function(){
};
Freja.Class.extend(Freja.QueryEngine.XPath,Freja.QueryEngine);
Freja.QueryEngine.XPath.prototype._find=function(_c6,_c7){
var _c8=_c6.selectSingleNode(_c7);
return _c8;
};
Freja.QueryEngine.SimplePath=function(){
};
Freja.Class.extend(Freja.QueryEngine.SimplePath,Freja.QueryEngine);
Freja.QueryEngine.SimplePath.prototype._find=function(_c9,_ca){
if(!_ca.match(/^[\d\w\/@\[\]=_\-']*$/)){ throw new Error("Can't evaluate expression "+_ca);}
var _cb=_ca.split("/"); var _cc=_c9; var _cd=new RegExp("^@([\\d\\w]*)"); var _ce=new RegExp("^([@\\d\\w]*)\\[([\\d]*)\\]$"); var _cf=new RegExp("^([\\d\\w]+)\\[@([@\\d\\w]+)=['\"]{1}(.*)['\"]{1}\\]$"); var _d0=null; var _d1=0; for(var i=0;i<_cb.length;++i){ var _d3=_cb[i]; var _d4=_cf.exec(_d3); if(_d4){ if(i>0&&_cb[i-1]==""){ var cn=_cc.getElementsByTagName(_d4[1]);}else{ var cn=_cc.childNodes;}
for(var j=0,l=cn.length;j<l;j++){ if(cn[j].nodeType==1&&cn[j].tagName==_d4[1]&&cn[j].getAttribute(_d4[2])==_d4[3]){ _cc=cn[j]; break;}
}
if(j==l){ throw new Error("Can't evaluate expression "+_d3);}
}else{ _d1=_ce.exec(_d3); if(_d1){ _d3=_d1[1]; _d1=_d1[2]-1;}else{ _d1=0;}
if(_d3!=""){ _d0=_cd.exec(_d3); if(_d0){ _cc=_cc.getAttributeNode(_d0[1]);}else{ _cc=_cc.getElementsByTagName(_d3).item(_d1);}
}
}
}
if(_cc&&_cc.firstChild&&_cc.firstChild.nodeType==3){ return _cc.firstChild;}
if(_cc&&_cc.firstChild&&_cc.firstChild.nodeType==4){ return _cc.firstChild;}
if(!_cc){ throw new Error("Can't evaluate expression "+_ca);}
return _cc;}; Freja.Model=function(url,_d8){ this.url=url; this.ready=false; this.document=null; this._query=_d8;}; Freja.Model.prototype.getElementById=function(id){ if(this.document){ return this._query.getElementById(this.document,id);}
return null;}; Freja.Model.prototype.get=function(_da){ if(this.document){ return this._query.get(this.document,_da);}
return null;}; Freja.Model.prototype.set=function(_db,_dc){ if(this.document){ return this._query.set(this.document,_db,_dc);}
return null;}; Freja.Model.prototype.updateFrom=function(_dd){ var _de=_dd.getValues(); for(var i=0;i<_de[0].length;++i){ if(_de[0][i].lastIndexOf("/")!=-1){ try{ this.set(_de[0][i],_de[1][i]);}
catch(x){ }
}
}
}; Freja.Model.prototype.save=function(){ var url=this.url; var _e1=/^(file:\/\/.*\/)([^\/]*)$/.exec(window.location.href); if(_e1){ url=_e1[1]+url;}
var d=Freja._aux.createDeferred(); var req=Freja.AssetManager.openXMLHttpRequest("POST",url); try{ Freja._aux.sendXMLHttpRequest(req,Freja._aux.serializeXML(this.document)).addCallbacks(Freja._aux.bind(d.callback,d),Freja._aux.bind(d.errback,d));}
catch(ex){ d.errback(ex);}
return d;}; Freja.Model.prototype.remove=function(){ var url=this.url; var _e5=/^(file:\/\/.*\/)([^\/]*)$/.exec(window.location.href); if(_e5){ url=_e5[1]+url;}
var req=Freja.AssetManager.openXMLHttpRequest("DELETE",url); return Freja._aux.sendXMLHttpRequest(req);}; Freja.Model.prototype.reload=function(){ this.ready=false; var _e7=Freja._aux.bind(function(_e8){ this.document=_e8; this.ready=true; Freja._aux.signal(this,"onload");},this); var d=Freja.AssetManager.loadAsset(this.url,true); d.addCallbacks(_e7,Freja.AssetManager.onerror); return d;}; Freja.Model.DataSource=function(_ea,_eb){ this.createURL=_ea; this.indexURL=_eb;}; Freja.Model.DataSource.prototype.select=function(){ return getModel(this.indexURL);}; Freja.Model.DataSource.prototype.create=function(_ec){ var url=this.createURL; var _ee=/^(file:\/\/.*\/)([^\/]*)$/.exec(window.location.href); if(_ee){ url=_ee[1]+url;}
var req=Freja.AssetManager.openXMLHttpRequest("PUT",url); var _f0={}; for(var i=0,len=_ec[0].length;i<len;++i){ _f0[_ec[0][i]]=_ec[1][i];}
return Freja._aux.sendXMLHttpRequest(req,Freja._aux.xmlize(_f0,"record"));}; Freja.View=function(url,_f3){ this.url=url; this.ready=false; this.document=null; this._renderer=_f3; this._destination=null; this.behaviors=[]; this.placeholder=null; Freja._aux.connect(this,"onrendercomplete",Freja._aux.bind(this._connectBehavior,this));}; Freja.View.prototype.render=function(_f4,_f5,_f6){ if(typeof (_f5)=="undefined"){ _f5=this.placeholder;}
if(typeof (_f6)=="undefined"){ _f6=this.xslParameters;}
var _f7=function(_f8,_f9,_fa,_fb){ this.model=_f8; this.view=_f9; this.deferred=_fa; this.xslParameters=_fb;}; _f7.prototype.trigger=function(){ try{ if(!this.view.ready){ Freja._aux.connect(this.view,"onload",Freja._aux.bind(this.trigger,this)); return;}
if(typeof (this.model)=="object"&&this.model instanceof Freja.Model&&!this.model.ready){ Freja._aux.connect(this.model,"onload",Freja._aux.bind(this.trigger,this)); return;}
var _fc; if(typeof (this.model)=="undefined"){ _fc={document:Freja._aux.loadXML("<?xml version='1.0' ?><dummy/>")};}else{ if(this.model instanceof Freja.Model){ _fc=this.model;}else{ _fc={document:Freja._aux.loadXML("<?xml version='1.0' ?>\n"+Freja._aux.xmlize(this.model,"item"))};}
}
var _fd=this.view._renderer.transform(_fc,this.view,this.xslParameters); _fd.addCallback(Freja._aux.bind(function(_fe){ if(typeof _fe=="string"){ this._destination.innerHTML=_fe;}else{ this._destination.innerHTML=""; this._destination.appendChild(_fe);}
},this.view)); _fd.addCallback(Freja._aux.bind(function(){ Freja._aux.signal(this,"onrendercomplete",this._destination);},this.view)); _fd.addCallback(Freja._aux.bind(function(){ this.deferred.callback();},this)); _fd.addErrback(Freja._aux.bind(function(ex){ this.deferred.errback(ex);},this));}
catch(ex){ this.deferred.errback(ex);}
}; var d=Freja._aux.createDeferred(); try{ if(typeof (_f5)=="object"){ this._destination=_f5;}else{ this._destination=document.getElementById(_f5);}
this._destination.innerHTML=Freja.AssetManager.THROBBER_HTML; var h=new _f7(_f4,this,d,_f6); h.trigger();}
catch(ex){ d.errback(ex);}
return d;}; Freja.View.prototype._connectBehavior=function(_102){ try{ var _103=function(node,_105,_106){ Freja._aux.connect(node,_105,Freja._aux.bind(function(e){ var _108=false; try{ _108=_106(this);}
catch(ex){ throw new Error("An error ocurred in user handler.\n"+ex.message);}
finally{ if(!_108){ e.stop();}
}
},node));}; var _109=function(node,_10b){ for(var i=0,c=node.childNodes,l=c.length;i<l;++i){ var _10d=c[i]; if(_10d.nodeType==1){ if(_10d.className){ var _10e=_10d.className.split(" "); for(var j=0;j<_10e.length;j++){ var _110=_10b[_10e[j]]; if(_110){ for(var _111 in _110){ if(_111=="init"){ _110.init(_10d);}else{ _103(_10d,_111,_110[_111]);}
}
}
}
}
_109(_10d,_10b);}
}
}; for(var ids in this.behaviors){ _109(_102,this.behaviors); break;}
}
catch(ex){ alert(ex.message);}
}; Freja.View.prototype.getValues=function(){ return Freja._aux.formContents(this._destination);}; Freja.View.Renderer=function(){ }; Freja.View.Renderer.XSLTransformer=function(){ }; Freja.Class.extend(Freja.View.Renderer.XSLTransformer,Freja.View.Renderer); Freja.View.Renderer.XSLTransformer.prototype.transform=function(_113,view,_115){ var d=Freja._aux.createDeferred(); try{ var html=Freja._aux.transformXSL(_113.document,view.document,_115); if(!html){ d.errback(new Error("XSL Transformation error."));}else{ d.callback(html);}
}
catch(ex){ d.errback(ex);}
return d;}; Freja.View.Renderer.RemoteXSLTransformer=function(url){ this.url=url;}; Freja.Class.extend(Freja.View.Renderer.RemoteXSLTransformer,Freja.View.Renderer); Freja.View.Renderer.RemoteXSLTransformer.prototype.transform=function(_119,view,_11b){ var d=Freja._aux.createDeferred(); var _11d=view.url; var _11e="WEB_CLASS=WEB_COMM_VEHICLE_DROPDOWN_CONTROL&FUNCTION=TRANSFORMXSL&XSLFile="+encodeURIComponent(_11d)+"&XMLFILE="+encodeURIComponent(_119.url); var _11f=""; for(var _120 in _11b){ _11f+="&"+encodeURIComponent(_120)+"="+encodeURIComponent(_11b[_120]);}
if(_11f.length>0){ _11e=_11e+_11f;}
var req=Freja.AssetManager.openXMLHttpRequest("POST",Freja.AssetManager.XSLT_SERVICE_URL); req.onreadystatechange=function(){ if(req.readyState==4){ if(req.status==200){ d.callback(req.responseText);}else{ d.errback(req.responseText);}
}
}; req.send(_11e); return d;}; Freja.UndoHistory=function(){ this.cache=[]; this.maxLength=5; this._position=0; this._undoSteps=0;}; Freja.UndoHistory.prototype.add=function(_122){ var _123=this._position%this.maxLength; var _124=_122.document; this.cache[_123]={}; this.cache[_123].model=_122; this.cache[_123].document=Freja._aux.cloneXMLDocument(_124); if(!this.cache[_123].document){ throw new Error("Couldn't add to history.");}else{ this._position++; var _125=_123; while(this._undoSteps>0){ _125=(_125+1)%this.maxLength; this.cache[_125]={}; this._undoSteps--;}
return _123;}
}; Freja.UndoHistory.prototype.undo=function(_126){ if(this._undoSteps<this.cache.length){ this._undoSteps++; this._position--; if(this._position<0){ this._position=this.maxLength-1;}
var _127=this.cache[this._position].model; if(this.cache[this._position].document){ _127.document=this.cache[this._position].document;}else{ throw new Error("The model's DOMDocument wasn't properly copied into the history");}
if(typeof (_126)!="undefined"&&_126>1){ this.undo(_126-1);}
}else{ throw new Error("Nothing to undo");}
}; Freja.UndoHistory.prototype.redo=function(){ if(this._undoSteps>0){ this._undoSteps--; this._position=(this._position+1)%this.maxLength; var _128=this.cache[this._position].model; _128.document=this.cache[this._position].document;}else{ throw new Error("Nothing to redo");}
}; Freja.UndoHistory.prototype.removeLast=function(){ this._position--; if(this._position<0){ this._position=this.maxLength-1;}
this.cache[this._position]={}; this._undoSteps=0;}; Freja.AssetManager={models:[],views:[],_username:null,_password:null}; Freja.AssetManager.HTTP_REQUEST_TYPE="async"; Freja.AssetManager.HTTP_METHOD_TUNNEL="Http-Method-Equivalent"; Freja.AssetManager.XSLT_SERVICE_URL="srvc-xslt.php"; Freja.AssetManager.THROBBER_HTML="<span style='color:black;background:white'>Loading ...Please be patient...<img src='../dealerweb/img/loading.gif'></span>"; Freja.AssetManager.createRenderer=function(){ if(Freja._aux.hasSupportForXSLT()){ return new Freja.View.Renderer.XSLTransformer();}else{ return new Freja.View.Renderer.RemoteXSLTransformer(this.XSLT_SERVICE_URL);}
}; Freja.AssetManager.clearCache=function(){ this.models=[]; this.views=[];}; Freja.AssetManager.getModel=function(url){ for(var i=0;i<this.models.length;i++){ if(this.models[i].url==url){ return this.models[i];}
}
var m=new Freja.Model(url,Freja._aux.createQueryEngine()); var _12c=Freja._aux.bind(function(_12d){ this.document=_12d; this.ready=true; Freja._aux.signal(this,"onload");},m); this.loadAsset(url,true).addCallbacks(_12c,Freja.AssetManager.onerror); this.models.push(m); return m;}; Freja.AssetManager.getView=function(url){ for(var i=0;i<this.views.length;i++){ if(this.views[i].url==url){ return this.views[i];}
}
var v=new Freja.View(url,this.createRenderer()); var _131=Freja._aux.bind(function(_132){ this.document=_132; this.ready=true; Freja._aux.signal(this,"onload");},v); this.loadAsset(url,false).addCallbacks(_131,Freja.AssetManager.onerror); this.views.push(v); return v;}; Freja.AssetManager.openXMLHttpRequest=function(_133,url){ var _135=null; if(Freja.AssetManager.HTTP_METHOD_TUNNEL&&_133!="GET"&&_133!="POST"){ _135=_133; _133="POST";}
var req=Freja._aux.openXMLHttpRequest(_133,url,Freja.AssetManager.HTTP_REQUEST_TYPE=="async",Freja.AssetManager._username,Freja.AssetManager._password); if(_135){ req.setRequestHeader(Freja.AssetManager.HTTP_METHOD_TUNNEL,_135);}
return req;}; Freja.AssetManager.setCredentials=function(_137,_138){ this._username=_137; this._password=_138;}; Freja.AssetManager.loadAsset=function(url,_13a){ var _13b=/^(file:\/\/.*\/)([^\/]*)$/.exec(window.location.href); if(_13b){ url=_13b[1]+url;}
var d=Freja._aux.createDeferred(); var _13d=function(_13e){ try{ if(_13e.responseText==""){ throw new Error("Empty response.");}
if(_13e.responseXML.xml==""){ var _13f=Freja._aux.loadXML(_13e.responseText);}else{ var _13f=_13e.responseXML;}
}
catch(ex){ d.errback(ex);}
if(window.document.all){ setTimeout(function(){ d.callback(_13f);},1);}else{ d.callback(_13f);}
}; try{ if(_13a&&Freja.AssetManager.HTTP_METHOD_TUNNEL){ var req=Freja._aux.openXMLHttpRequest("POST",url,Freja.AssetManager.HTTP_REQUEST_TYPE=="async",Freja.AssetManager._username,Freja.AssetManager._password); req.setRequestHeader(Freja.AssetManager.HTTP_METHOD_TUNNEL,"GET"); req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");}else{ var req=Freja._aux.openXMLHttpRequest("GET",url,Freja.AssetManager.HTTP_REQUEST_TYPE=="async",Freja.AssetManager._username,Freja.AssetManager._password);}
var comm=Freja._aux.sendXMLHttpRequest(req); if(Freja.AssetManager.HTTP_REQUEST_TYPE=="async"){ comm.addCallbacks(_13d,function(req){ d.errback(new Error("Request failed:"+req.status));});}else{ if(req.status==0||req.status==200||req.status==201||req.status==304){ _13d(req);}else{ d.errback(new Error("Request failed:"+req.status));}
}
}
catch(ex){ d.errback(ex);}
return d;}; Freja.AssetManager.onerror=function(ex){ alert("Freja.AssetManager.onerror\n"+ex.message);}; window.getModel=Freja._aux.bind("getModel",Freja.AssetManager); window.getView=Freja._aux.bind("getView",Freja.AssetManager);