You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by sm...@apache.org on 2007/12/18 20:42:26 UTC
svn commit: r605312 - in
/portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed:
common.js common.src.js
Author: smilek
Date: Tue Dec 18 11:42:25 2007
New Revision: 605312
URL: http://svn.apache.org/viewvc?rev=605312&view=rev
Log:
change ajax requests to set encoding to "utf-8" - fixes JS2-820 http://issues.apache.org/jira/browse/JS2-820
added jetspeed.widget.openDialog to common.js so that it can be used by dojo admin portlets (openDialog fixes the mozilla problem where text fields in dialog boxes would not show insertion point)
The following revision comments are from branches/JETSPEED-2.1.3 revisions which were not individually checked-in to trunk
=== ---------------------------------------------------------------- ===
[ from branches/JETSPEED-2.1.3 r598982 ] | ate | 2007-11-28 05:32:42 -0700 (Wed, 28 Nov 2007) | 2 lines
Fix for JS2-816: Jetspeed common javascript doesn't support running the portal under ROOT context
See: https://issues.apache.org/jira/browse/JS2-816
=== ---------------------------------------------------------------- ===
[ from branches/JETSPEED-2.1.3 r595411 ] | smilek | 2007-11-15 13:06:54 -0700 (Thu, 15 Nov 2007) | 1 line
major improvements to page editor (UI, config options, flow, no action layouts); support for create-new-page-on-edit
=== ---------------------------------------------------------------- ===
[ from branches/JETSPEED-2.1.3 r588399 ] | smilek | 2007-10-25 18:00:25 -0600 (Thu, 25 Oct 2007) | 1 line
added a second approach to loading indicator (jetspeed.url.loadingIndicatorStep) which uses separate images - this allows for the loading indicator to show progress when the browser is too bogged down to render the animated gif used in the normal loading indicator
=== ---------------------------------------------------------------- ===
[ from branches/JETSPEED-2.1.3 r584888 ] | smilek | 2007-10-15 14:15:45 -0600 (Mon, 15 Oct 2007) | 1 line
added try/catch block in stopEvent function for IE
=== ---------------------------------------------------------------- ===
[ from branches/JETSPEED-2.1.3 r583999 ] | smilek | 2007-10-11 18:36:47 -0600 (Thu, 11 Oct 2007) | 1 line
continuation of desktop overhaul
=== ---------------------------------------------------------------- ===
[ from branches/JETSPEED-2.1.3 r578915 ] | smilek | 2007-09-24 13:13:21 -0600 (Mon, 24 Sep 2007) | 1 line
desktop overhaul; moved debug code to debug.js
=== ---------------------------------------------------------------- ===
Modified:
portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.js
portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.src.js
Modified: portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.js
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.js?rev=605312&r1=605311&r2=605312&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.js (original)
+++ portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.js Tue Dec 18 11:42:25 2007
@@ -9,234 +9,203 @@
if(!jetspeed.url){
jetspeed.url={};
}
+if(!jetspeed.om){
+jetspeed.om={};
+}
+if(!jetspeed.widget){
+jetspeed.widget={};
+}
jetspeed.version={major:2,minor:1,patch:0,flag:"dev",revision:"",toString:function(){
with(jetspeed.version){
return major+"."+minor+"."+patch+flag+" ("+revision+")";
}
}};
+jetspeed.initcommon=function(){
+var _1=jetspeed;
if(!window.dojo){
-jetspeed.no_dojo_load_notifying=false;
-jetspeed.no_dojo_post_load=false;
-jetspeed.pageLoadedListeners=[];
+var _1=jetspeed;
+_1.no_dojo_load_notifying=false;
+_1.no_dojo_post_load=false;
+_1.pageLoadedListeners=[];
window.onload=function(){
if(!window.dojo){
-jetspeed.no_dojo_load_notifying=true;
-jetspeed.no_dojo_post_load=true;
-var _1=jetspeed.pageLoadedListeners;
-for(var x=0;x<_1.length;x++){
-_1[x]();
+var _2=jetspeed;
+_2.no_dojo_load_notifying=true;
+_2.no_dojo_post_load=true;
+var _3=_2.pageLoadedListeners;
+for(var x=0;x<_3.length;x++){
+_3[x]();
}
-jetspeed.pageLoadedListeners=[];
+_2.pageLoadedListeners=[];
}
};
-}
-jetspeed.addOnLoad=function(_3,_4){
-if(window.dojo){
-if(arguments.length==1){
-dojo.addOnLoad(_3);
-}else{
-dojo.addOnLoad(_3,_4);
-}
}else{
-if(arguments.length==1){
-jetspeed.pageLoadedListeners.push(_3);
-}else{
-if(arguments.length>1){
-jetspeed.pageLoadedListeners.push(function(){
-_3[_4]();
-});
-}
+var _5=dojo.render.html;
+if(_5.ie){
+_1.UAie=true;
+if(_5.ie60||_5.ie50||_5.ie55){
+_1.UAie6=true;
}
-if(jetspeed.no_dojo_post_load&&!jetspeed.no_dojo_load_notifying){
-jetspeed.callPageLoaded();
-}
-}
-};
-jetspeed.callPageLoaded=function(){
-if(typeof setTimeout=="object"){
-setTimeout("jetspeed.pageLoaded();",0);
-}else{
-jetspeed.pageLoaded();
-}
-};
-jetspeed.printobj=function(_5,_6,_7,_8){
-var _9=[];
-for(var _a in _5){
+_1.stopEvent=function(_6,_7){
try{
-var _b=_5[_a];
-if(_8){
-if(dojo.lang.isArray(_b)){
-_b="["+_b.length+"]";
-}
-}
-_b=_b+"";
-if(!_7||_b.length>0){
-_9.push(_a+": "+_b);
+_6=_6||window.event;
+if(_6){
+_6.cancelBubble=true;
+_6.returnValue=false;
}
}
-catch(E){
-_9.push(_a+": ERROR - "+E.message);
+catch(ex){
+if(!_7&&djConfig.isDebug){
+dojo.debug("stopEvent ("+(typeof _6)+") failure: "+jetspeed.formatError(ex));
}
}
-_9.sort();
-var _c="";
-for(var i=0;i<_9.length;i++){
-if(_c.length>0){
-_c+=(_6?", ":"\r\n");
-}
-_c+=_9[i];
-}
-return _c;
};
-jetspeed.println=function(_e){
-try{
-var _f=jetspeed.getDebugElement();
-if(!_f){
-_f=document.getElementsByTagName("body")[0]||document.body;
-}
-var div=document.createElement("div");
-div.appendChild(document.createTextNode(_e));
-_f.appendChild(div);
-}
-catch(e){
-try{
-document.write("<div>"+_e+"</div>");
-}
-catch(e2){
-window.status=_e;
-}
-}
+_1._stopEvent=function(_8){
+jetspeed.stopEvent(_8);
};
-jetspeed.debugNodeTree=function(_11,_12){
-if(!_11){
-return;
-}
-if(_12){
-if(_12.length>0){
-jetspeed.println(_12);
-}
}else{
-jetspeed.println("node: ");
-}
-if(_11.nodeType!=1&&_11.nodeType!=3){
-if(_11.length&&_11.length>0&&(_11[0].nodeType==1||_11[0].nodeType==3)){
-for(var i=0;i<_11.length;i++){
-jetspeed.debugNodeTree(_11[i]," ["+i+"]");
-}
+if(_5.mozilla){
+_1.UAmoz=true;
}else{
-jetspeed.println(" node is not a node! "+_11.length);
+if(_5.safari){
+_1.UAsaf=true;
+}else{
+if(_5.opera){
+_1.UAope=true;
}
-return;
}
-if(_11.innerXML){
-jetspeed.println(_11.innerXML);
-}else{
-if(_11.xml){
-jetspeed.println(_11.xml);
-}else{
-if(typeof XMLSerializer!="undefined"){
-jetspeed.println((new XMLSerializer()).serializeToString(_11));
-}else{
-jetspeed.println(" node != null (IE no XMLSerializer)");
}
+_1.stopEvent=function(_9){
+_9.preventDefault();
+_9.stopPropagation();
+};
+_1._stopEvent=function(_a){
+jetspeed.stopEvent(_a);
+};
}
}
};
-jetspeed.debugShallow=function(obj,_15){
-if(_15){
-jetspeed.println(_15);
+jetspeed.addOnLoad=function(_b,_c){
+if(window.dojo){
+if(arguments.length==1){
+dojo.addOnLoad(_b);
}else{
-jetspeed.println("Object: "+obj);
+dojo.addOnLoad(_b,_c);
}
-var _16=[];
-for(var _17 in obj){
-try{
-_16.push(_17+": "+obj[_17]);
+}else{
+if(arguments.length==1){
+jetspeed.pageLoadedListeners.push(_b);
+}else{
+if(arguments.length>1){
+jetspeed.pageLoadedListeners.push(function(){
+_b[_c]();
+});
}
-catch(E){
-_16.push(_17+": ERROR - "+E.message);
}
+if(jetspeed.no_dojo_post_load&&!jetspeed.no_dojo_load_notifying){
+jetspeed.callPageLoaded();
}
-_16.sort();
-for(var i=0;i<_16.length;i++){
-jetspeed.println(_16[i]);
}
};
-jetspeed.getDebugElement=function(_19){
-var _1a=null;
-try{
-var _1a=document.getElementById("debug_container");
-if(!_1a){
-var _1b=document.getElementsByTagName("body")[0]||document.body;
-var _1a=document.createElement("div");
-_1a.setAttribute("id","debug_container");
-_1b.appendChild(_1a);
+jetspeed.callPageLoaded=function(){
+if(typeof setTimeout=="object"){
+setTimeout("jetspeed.pageLoaded();",0);
}else{
-if(_19){
-_1a.innerHTML="";
-}
-}
+jetspeed.pageLoaded();
}
-catch(e){
-try{
+};
+jetspeed.getBody=function(){
+var _d=jetspeed;
+if(_d.docBody==null){
+_d.docBody=document.body||document.getElementsByTagName("body")[0];
}
-catch(e2){
+return _d.docBody;
+};
+jetspeed.formatError=function(ex){
+if(ex==null){
+return "";
}
+var _f=" error:";
+if(ex.message!=null){
+_f+=" "+ex.message;
+}
+var _10=ex.number||ex.lineNumber||ex.lineNo;
+if(_10==null||_10=="0"||_10.length==0){
+_10=null;
+}
+var _11=ex.fileName;
+if(_11!=null){
+var _12=_11.lastIndexOf("/");
+if(_12!=-1&&_12<(_11.length-1)){
+_11=_11.substring(_12+1);
+}
+}
+if(_11==null||_11.length==0){
+_11=null;
+}
+var _13=ex.type;
+if(_13==null||_13.length==0||_13=="unknown"){
+_13=null;
+}
+if(_10!=null||_11!=null||_13!=null){
+_f+=" ("+(_11!=null?(" "+_11):"");
+_f+=(_10!=null?(" line "+_10):"");
+_f+=(_13!=null?(" type "+_13):"");
+_f+=" )";
}
-return _1a;
+return _f;
};
-if(window.djConfig!=null&&window.djConfig.isDebug){
-var ch=String.fromCharCode(160);
-jetspeed.debugindentch=ch;
-jetspeed.debugindentH=ch+ch;
-jetspeed.debugindent=ch+ch+ch+ch;
-jetspeed.debugindent2=jetspeed.debugindent+jetspeed.debugindent;
-jetspeed.debugindent3=jetspeed.debugindent+jetspeed.debugindent+jetspeed.debugindent;
-}
jetspeed.url.LOADING_INDICATOR_ID="js-showloading";
+jetspeed.url.LOADING_INDICATOR_IMG_ID="js-showloading-img";
jetspeed.url.path={SERVER:null,JETSPEED:null,AJAX_API:null,DESKTOP:null,PORTAL:null,PORTLET:null,ACTION:null,RENDER:null,initialized:false};
-jetspeed.url.pathInitialize=function(_1c){
-if(!_1c&&jetspeed.url.path.initialized){
+jetspeed.url.pathInitialize=function(_14){
+var jsU=jetspeed.url;
+var _16=jsU.path;
+if(!_14&&_16.initialized){
return;
}
-var _1d=document.getElementsByTagName("base");
-var _1e=null;
-if(_1d&&_1d.length==1){
-_1e=_1d[0].href;
-}else{
-_1e=window.location.href;
-}
-var _1f=jetspeed.url.parse(_1e);
-var _20=_1f.path;
-var _21=-1;
-for(var _22=1;_21<=_22;_22++){
-_21=_20.indexOf("/",_22);
-if(_21==-1){
+var _17=document.getElementsByTagName("base");
+var _18=null;
+if(_17&&_17.length==1){
+_18=_17[0].href;
+}else{
+_18=window.location.href;
+}
+var _19=jsU.parse(_18);
+var _1a=_19.path;
+var _1b="";
+if(_19.scheme!=null){
+_1b+=_19.scheme+":";
+}
+if(_19.authority!=null){
+_1b+="//"+_19.authority;
+}
+var _1c=null;
+if(djConfig.jetspeed.rootContext){
+_1c="";
+}else{
+var _1d=-1;
+for(var _1e=1;_1d<=_1e;_1e++){
+_1d=_1a.indexOf("/",_1e);
+if(_1d==-1){
break;
}
}
-var _23="";
-if(_1f.scheme!=null){
-_23+=_1f.scheme+":";
-}
-if(_1f.authority!=null){
-_23+="//"+_1f.authority;
-}
-var _24=null;
-if(_21==-1){
-_24=_20;
-}else{
-_24=_20.substring(0,_21);
-}
-jetspeed.url.path.JETSPEED=_24;
-jetspeed.url.path.SERVER=_23;
-jetspeed.url.path.AJAX_API=jetspeed.url.path.JETSPEED+"/ajaxapi";
-jetspeed.url.path.DESKTOP=jetspeed.url.path.JETSPEED+"/desktop";
-jetspeed.url.path.PORTAL=jetspeed.url.path.JETSPEED+"/portal";
-jetspeed.url.path.PORTLET=jetspeed.url.path.JETSPEED+"/portlet";
-jetspeed.url.path.ACTION=jetspeed.url.path.JETSPEED+"/action";
-jetspeed.url.path.RENDER=jetspeed.url.path.JETSPEED+"/render";
-jetspeed.url.path.initialized=true;
+if(_1d==-1){
+_1c=_1a;
+}else{
+_1c=_1a.substring(0,_1d);
+}
+}
+_16.JETSPEED=_1c;
+_16.SERVER=_1b;
+_16.AJAX_API=_16.JETSPEED+"/ajaxapi";
+_16.DESKTOP=_16.JETSPEED+"/desktop";
+_16.PORTAL=_16.JETSPEED+"/portal";
+_16.PORTLET=_16.JETSPEED+"/portlet";
+_16.ACTION=_16.JETSPEED+"/action";
+_16.RENDER=_16.JETSPEED+"/render";
+_16.initialized=true;
};
jetspeed.url.parse=function(url){
if(url==null){
@@ -250,9 +219,9 @@
jetspeed.url.JSUri=function(url){
if(url!=null){
if(!url.path){
-var _27="^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$";
-var r=url.toString().match(new RegExp(_27));
-var _29={};
+var _21="^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$";
+var r=url.toString().match(new RegExp(_21));
+var _23={};
this.scheme=r[2]||(r[1]?"":null);
this.authority=r[4]||(r[3]?"":null);
this.path=r[5];
@@ -279,8 +248,8 @@
jetspeed.url.scheme={HTTP_PREFIX:"http://",HTTP_PREFIX_LEN:"http://".length,HTTPS_PREFIX:"https://",HTTPS_PREFIX_LEN:"https://".length};
jetspeed.url.isPortal=function(){
if(window.djConfig&&window.djConfig.jetspeed){
-var _2b=window.djConfig.jetspeed.servletPath;
-if(_2b!=null&&_2b.toLowerCase().indexOf("/desktop")==0){
+var _25=window.djConfig.jetspeed.servletPath;
+if(_25!=null&&_25.toLowerCase().indexOf("/desktop")==0){
return false;
}
}
@@ -308,247 +277,276 @@
}
return jetspeed.url.basePortalUrl()+jetspeed.url.path.JETSPEED;
};
-jetspeed.url.addPath=function(url,_2d){
-if(_2d==null||_2d.length==0){
+jetspeed.url.addPath=function(url,_27){
+if(_27==null||_27.length==0){
return url;
}
-var _2e=new jetspeed.url.JSUri(url);
-var _2f=_2e.path;
-if(_2f!=null&&_2f.length>0){
-if(_2e.path.charCodeAt(_2f.length-1)==47){
-if(_2d.charCodeAt(0)==47){
-if(_2d.length>1){
-_2e.path+=_2d.substring(1);
+var _28=new jetspeed.url.JSUri(url);
+var _29=_28.path;
+if(_29!=null&&_29.length>0){
+if(_28.path.charCodeAt(_29.length-1)==47){
+if(_27.charCodeAt(0)==47){
+if(_27.length>1){
+_28.path+=_27.substring(1);
}
}else{
-_2e.path+=_2d;
+_28.path+=_27;
}
}else{
-if(_2d.charCodeAt(0)==47){
-_2e.path+=_2d;
+if(_27.charCodeAt(0)==47){
+_28.path+=_27;
}else{
-if(_2d.length>1){
-_2e.path+="/"+_2d;
+if(_27.length>1){
+_28.path+="/"+_27;
}
}
}
}
-var _30=jetspeed.url.parse(_2e);
-return _30.toString();
+var _2a=jetspeed.url.parse(_28);
+return _2a.toString();
};
-jetspeed.url.validateUrlStartsWithHttp=function(url){
+jetspeed.url.urlStartsWithHttp=function(url){
if(url){
var len=url.length;
-var _33=jetspeed.url.scheme.HTTPS_PREFIX_LEN;
-if(len>_33){
-var _34=jetspeed.url.scheme.HTTP_PREFIX_LEN;
-if(url.substring(0,_34)==jetspeed.url.scheme.HTTP_PREFIX){
+var _2d=jetspeed.url.scheme.HTTPS_PREFIX_LEN;
+if(len>_2d){
+var _2e=jetspeed.url.scheme.HTTP_PREFIX_LEN;
+if(url.substring(0,_2e)==jetspeed.url.scheme.HTTP_PREFIX){
return true;
}
-if(url.substring(0,_33)==jetspeed.url.scheme.HTTPS_PREFIX){
+if(url.substring(0,_2d)==jetspeed.url.scheme.HTTPS_PREFIX){
return true;
}
}
}
return false;
};
-jetspeed.url.addQueryParameter=function(_35,_36,_37,_38){
-if(_35==null){
-return _35;
+jetspeed.url.addQueryParameter=function(_2f,_30,_31,_32){
+if(_2f==null){
+return _2f;
}
-if(!_35.path){
-_35=jetspeed.url.parse(_35);
+if(!_2f.path){
+_2f=jetspeed.url.parse(_2f);
}
-if(_35==null){
+if(_2f==null){
return null;
}
-if(_36==null){
-return _35;
+if(_30==null){
+return _2f;
}
-_35.jsQParamN=null;
-if(_38){
-_35=jetspeed.url.removeQueryParameter(_35,_36,false);
-}
-var _39=_35.query;
-if(_39==null){
-_39="";
-}
-var _3a=_39.length;
-if(_3a>0){
-_39+="&";
-}
-_39+=_36+"="+(_37!=null?_37:"");
-_35.query=_39;
-var _3b=new jetspeed.url.JSUri(_35);
-_35=jetspeed.url.parse(_3b);
-return _35;
-};
-jetspeed.url.removeAllQueryParameters=function(_3c){
-return jetspeed.url.removeQueryParameter(_3c,null,true);
-};
-jetspeed.url.removeQueryParameter=function(_3d,_3e,_3f){
-if(_3d==null){
-return _3d;
+_2f.jsQParamN=null;
+if(_32){
+_2f=jetspeed.url.removeQueryParameter(_2f,_30,false);
+}
+var _33=_2f.query;
+if(_33==null){
+_33="";
+}
+var _34=_33.length;
+if(_34>0){
+_33+="&";
+}
+_33+=_30+"="+(_31!=null?_31:"");
+_2f.query=_33;
+var _35=new jetspeed.url.JSUri(_2f);
+_2f=jetspeed.url.parse(_35);
+return _2f;
+};
+jetspeed.url.removeAllQueryParameters=function(_36){
+return jetspeed.url.removeQueryParameter(_36,null,true);
+};
+jetspeed.url.removeQueryParameter=function(_37,_38,_39){
+if(_37==null){
+return _37;
}
-if(!_3d.path){
-_3d=jetspeed.url.parse(_3d);
+if(!_37.path){
+_37=jetspeed.url.parse(_37);
}
-if(_3d==null){
+if(_37==null){
return null;
}
-_3d.jsQParamN=null;
-var _40=_3d.query;
-var _41=((_40!=null)?_40.length:0);
-if(_41>0){
-if(_3f){
-_40=null;
-}else{
-if(_3e==null){
-return _3d;
-}else{
-var _42=_3e;
-var _43=_40.indexOf(_42);
-if(_43==0){
-_40=jetspeed.url._removeQP(_40,_41,_42,_43);
+_37.jsQParamN=null;
+var _3a=_37.query;
+var _3b=((_3a!=null)?_3a.length:0);
+if(_3b>0){
+if(_39){
+_3a=null;
+}else{
+if(_38==null){
+return _37;
+}else{
+var _3c=_38;
+var _3d=_3a.indexOf(_3c);
+if(_3d==0){
+_3a=jetspeed.url._removeQP(_3a,_3b,_3c,_3d);
}
-_42="&"+_3e;
+_3c="&"+_38;
while(true){
-_41=((_40!=null)?_40.length:0);
-_43=_40.indexOf(_42,0);
-if(_43==-1){
+_3b=((_3a!=null)?_3a.length:0);
+_3d=_3a.indexOf(_3c,0);
+if(_3d==-1){
break;
}
-var _44=jetspeed.url._removeQP(_40,_41,_42,_43);
-if(_44==_40){
+var _3e=jetspeed.url._removeQP(_3a,_3b,_3c,_3d);
+if(_3e==_3a){
break;
}
-_40=_44;
+_3a=_3e;
}
-if(_40.length>0){
-if(_40.charCodeAt(0)==38){
-_40=((_40.length>1)?_40.substring(1):"");
+if(_3a.length>0){
+if(_3a.charCodeAt(0)==38){
+_3a=((_3a.length>1)?_3a.substring(1):"");
}
-if(_40.length>0&&_40.charCodeAt(0)==63){
-_40=((_40.length>1)?_40.substring(1):"");
+if(_3a.length>0&&_3a.charCodeAt(0)==63){
+_3a=((_3a.length>1)?_3a.substring(1):"");
}
}
}
}
-_3d.query=_40;
-var _45=new jetspeed.url.JSUri(_3d);
-_3d=jetspeed.url.parse(_45);
+_37.query=_3a;
+var _3f=new jetspeed.url.JSUri(_37);
+_37=jetspeed.url.parse(_3f);
}
-return _3d;
+return _37;
};
-jetspeed.url._removeQP=function(_46,_47,_48,_49){
-if(_49==-1){
-return _46;
+jetspeed.url._removeQP=function(_40,_41,_42,_43){
+if(_43==-1){
+return _40;
}
-if(_47>(_49+_48.length)){
-var _4a=_46.charCodeAt(_49+_48.length);
-if(_4a==61){
-var _4b=_46.indexOf("&",_49+_48.length+1);
-if(_4b!=-1){
-if(_49>0){
-_46=_46.substring(0,_49)+_46.substring(_4b);
+if(_41>(_43+_42.length)){
+var _44=_40.charCodeAt(_43+_42.length);
+if(_44==61){
+var _45=_40.indexOf("&",_43+_42.length+1);
+if(_45!=-1){
+if(_43>0){
+_40=_40.substring(0,_43)+_40.substring(_45);
}else{
-_46=((_4b<(_47-1))?_46.substring(_4b):"");
+_40=((_45<(_41-1))?_40.substring(_45):"");
}
}else{
-if(_49>0){
-_46=_46.substring(0,_49);
+if(_43>0){
+_40=_40.substring(0,_43);
}else{
-_46="";
+_40="";
}
}
}else{
-if(_4a==38){
-if(_49>0){
-_46=_46.substring(0,_49)+_46.substring(_49+_48.length);
+if(_44==38){
+if(_43>0){
+_40=_40.substring(0,_43)+_40.substring(_43+_42.length);
}else{
-_46=_46.substring(_49+_48.length);
+_40=_40.substring(_43+_42.length);
}
}
}
}else{
-if(_47==(_49+_48.length)){
-_46="";
+if(_41==(_43+_42.length)){
+_40="";
}
}
-return _46;
+return _40;
};
-jetspeed.url.getQueryParameter=function(_4c,_4d){
-if(_4c==null){
+jetspeed.url.getQueryParameter=function(_46,_47){
+if(_46==null){
return null;
}
-if(!_4c.authority||!_4c.scheme){
-_4c=jetspeed.url.parse(_4c);
+if(!_46.authority||!_46.scheme){
+_46=jetspeed.url.parse(_46);
}
-if(_4c==null){
+if(_46==null){
return null;
}
-if(_4c.jsQParamN==null&&_4c.query){
-var _4e=new Array();
-var _4f=_4c.query.split("&");
-for(var i=0;i<_4f.length;i++){
-if(_4f[i]==null){
-_4f[i]="";
-}
-var _51=_4f[i].indexOf("=");
-if(_51>0&&_51<(_4f[i].length-1)){
-_4e[i]=unescape(_4f[i].substring(_51+1));
-_4f[i]=unescape(_4f[i].substring(0,_51));
-}else{
-_4e[i]="";
-}
-}
-_4c.jsQParamN=_4f;
-_4c.jsQParamV=_4e;
-}
-if(_4c.jsQParamN!=null){
-for(var i=0;i<_4c.jsQParamN.length;i++){
-if(_4c.jsQParamN[i]==_4d){
-return _4c.jsQParamV[i];
+if(_46.jsQParamN==null&&_46.query){
+var _48=new Array();
+var _49=_46.query.split("&");
+for(var i=0;i<_49.length;i++){
+if(_49[i]==null){
+_49[i]="";
+}
+var _4b=_49[i].indexOf("=");
+if(_4b>0&&_4b<(_49[i].length-1)){
+_48[i]=unescape(_49[i].substring(_4b+1));
+_49[i]=unescape(_49[i].substring(0,_4b));
+}else{
+_48[i]="";
+}
+}
+_46.jsQParamN=_49;
+_46.jsQParamV=_48;
+}
+if(_46.jsQParamN!=null){
+for(var i=0;i<_46.jsQParamN.length;i++){
+if(_46.jsQParamN[i]==_47){
+return _46.jsQParamV[i];
}
}
}
return null;
};
+jetspeed.om.Id=function(){
+var _4c="";
+for(var i=0;i<arguments.length;i++){
+if(dojo.lang.isString(arguments[i])){
+if(_4c.length>0){
+_4c+="-";
+}
+_4c+=arguments[i];
+}else{
+if(dojo.lang.isObject(arguments[i])){
+for(var _4e in arguments[i]){
+this[_4e]=arguments[i][_4e];
+}
+}
+}
+}
+this.id=_4c;
+};
+jetspeed.om.Id.prototype={getId:function(){
+return this.id;
+}};
if(window.dojo){
-jetspeed.url.BindArgs=function(_52){
-dojo.lang.mixin(this,_52);
+jetspeed.url.BindArgs=function(_4f){
+dojo.lang.mixin(this,_4f);
if(!this.mimetype){
this.mimetype="text/html";
}
+if(!this.encoding){
+this.encoding="utf-8";
+}
};
dojo.lang.extend(jetspeed.url.BindArgs,{createIORequest:function(){
-var _53=new dojo.io.Request(this.url,this.mimetype);
-_53.fromKwArgs(this);
-return _53;
-},load:function(_54,_55,_56){
+var _50=new dojo.io.Request(this.url,this.mimetype);
+_50.fromKwArgs(this);
+return _50;
+},load:function(_51,_52,_53){
try{
-var _57=null;
+var _54=null;
if(this.debugContentDumpIds){
-_57=((this.domainModelObject&&dojo.lang.isFunction(this.domainModelObject.getId))?this.domainModelObject.getId():"");
-for(var _58=0;_58<this.debugContentDumpIds.length;_58++){
-if(_57.match(new RegExp(this.debugContentDumpIds[_58]))){
-if(dojo.lang.isString(_55)){
-dojo.debug("retrieveContent ["+(_57?_57:this.url)+"] content: "+_55);
-}else{
-var _59=dojo.dom.innerXML(_55);
-if(!_59){
-_59=(_55!=null?"!= null (IE no XMLSerializer)":"null");
+_54=((this.domainModelObject&&dojo.lang.isFunction(this.domainModelObject.getId))?this.domainModelObject.getId():((this.domainModelObject&&this.domainModelObject.id)?String(this.domainModelObject.id):""));
+var _55=false;
+for(var _56=0;_56<this.debugContentDumpIds.length;_56++){
+if(_54.match(new RegExp(this.debugContentDumpIds[_56]))){
+_55=true;
+break;
+}
}
-dojo.debug("retrieveContent ["+(_57?_57:this.url)+"] xml-content: "+_59);
+if(_55){
+if(dojo.lang.isString(_52)){
+dojo.debug("retrieveContent ["+(_54?_54:this.url)+"] content: "+_52);
+}else{
+var _57=dojo.dom.innerXML(_52);
+if(!_57){
+_57=(_52!=null?"!= null (IE no XMLSerializer)":"null");
}
+dojo.debug("retrieveContent ["+(_54?_54:this.url)+"] xml-content: "+_57);
}
}
}
if(this.contentListener&&dojo.lang.isFunction(this.contentListener.notifySuccess)){
-this.contentListener.notifySuccess(_55,this.url,this.domainModelObject,_56);
+this.contentListener.notifySuccess(_52,this.url,this.domainModelObject,_53);
}else{
-_57=((this.domainModelObject&&dojo.lang.isFunction(this.domainModelObject.getId))?this.domainModelObject.getId():"");
-dojo.debug("retrieveContent ["+(_57?_57:this.url)+"] no valid contentListener");
+_54=((this.domainModelObject&&dojo.lang.isFunction(this.domainModelObject.getId))?this.domainModelObject.getId():"");
+dojo.debug("retrieveContent ["+(_54?_54:this.url)+"] no valid contentListener");
}
if(this.hideLoadingIndicator){
jetspeed.url.loadingIndicatorHide();
@@ -558,12 +556,12 @@
if(this.hideLoadingIndicator){
jetspeed.url.loadingIndicatorHide();
}
-throw e;
+dojo.raise("dojo.io.bind "+jetspeed.formatError(e));
}
-},error:function(_5a,_5b){
+},error:function(_58,_59){
try{
if(this.contentListener&&dojo.lang.isFunction(this.contentListener.notifyFailure)){
-this.contentListener.notifyFailure(_5a,_5b,this.url,this.domainModelObject);
+this.contentListener.notifyFailure(_58,_59,this.url,this.domainModelObject);
}
if(this.hideLoadingIndicator){
jetspeed.url.loadingIndicatorHide();
@@ -576,84 +574,140 @@
throw e;
}
}});
-jetspeed.url.retrieveContent=function(_5c,_5d,_5e,_5f){
-if(!_5c){
-_5c={};
-}
-_5c.contentListener=_5d;
-_5c.domainModelObject=_5e;
-_5c.debugContentDumpIds=_5f;
-var _60=new jetspeed.url.BindArgs(_5c);
-if(_5c.showLoadingIndicator||(_5d&&!_5d.suppressLoadingIndicator&&_5c.showLoadingIndicator!=false)){
+jetspeed.url.retrieveContent=function(_5a,_5b,_5c,_5d){
+if(!_5a){
+_5a={};
+}
+_5a.contentListener=_5b;
+_5a.domainModelObject=_5c;
+_5a.debugContentDumpIds=_5d;
+var _5e=new jetspeed.url.BindArgs(_5a);
+if(_5a.showLoadingIndicator||(_5b&&!_5b.suppressLoadingIndicator&&_5a.showLoadingIndicator!=false)){
if(jetspeed.url.loadingIndicatorShow()){
-_60.hideLoadingIndicator=true;
+_5e.hideLoadingIndicator=true;
}
}
-dojo.io.bind(_60.createIORequest());
+dojo.io.bind(_5e.createIORequest());
};
-jetspeed.url.checkAjaxApiResponse=function(_61,_62,_63,_64,_65){
-var _66=false;
-var _67=_62.getElementsByTagName("status");
-if(_67!=null){
-var _68=_67[0].firstChild.nodeValue;
-if(_68=="success"){
-_66=true;
+jetspeed.url.checkAjaxApiResponse=function(_5f,_60,_61,_62,_63,_64){
+var _65=false;
+var _66=_60.getElementsByTagName("status");
+if(_66!=null){
+var _67=_66[0].firstChild.nodeValue;
+if(_67=="success"){
+_65=_67;
+}else{
+if(_61&&_61.length>0){
+for(var i=0;i<_61.length;i++){
+if(_67==_61[i]){
+_65=_67;
+break;
+}
}
}
-if((!_66&&_63)||_65){
-var _69=dojo.dom.innerXML(_62);
+}
+}
+if((!_65&&_62)||_64){
+var _69=dojo.dom.innerXML(_60);
if(!_69){
-_69=(_62!=null?"!= null (IE no XMLSerializer)":"null");
+_69=(_60!=null?"!= null (IE no XMLSerializer)":"null");
}
-if(_64==null){
-_64="ajax-api";
+if(_63==null){
+_63="ajax-api";
}
-if(_66){
-dojo.debug(_64+" success url="+_61+" xml-content="+_69);
+if(_65){
+dojo.debug(_63+" success url="+_5f+" xml-content="+_69);
}else{
-dojo.raise(_64+" failure url="+_61+" xml-content="+_69);
+dojo.raise(_63+" failure url="+_5f+" xml-content="+_69);
}
}
-return _66;
+return _65;
};
-jetspeed.url.formatBindError=function(_6a){
-if(_6a==null){
-return "";
+jetspeed.url._loadingImgUpdate=function(_6a,_6b,_6c,doc,_6e,_6f){
+var _70=_6e.loadingImgProps;
+if(_70){
+var _71=doc.getElementById(_6f.LOADING_INDICATOR_ID);
+if(_71==null||!_71.style||_71.style.display=="none"){
+return;
+}
+var _72=_70.imganimated;
+var _73=doc.getElementById(_6f.LOADING_INDICATOR_IMG_ID);
+if(_72&&_73){
+var _74=_70._imgBaseUrl;
+if(_74==null){
+var _75=_70.imgdir;
+if(_75==null||_75.length==0){
+_74=false;
+}else{
+_74=_6e.getLayoutRootUrl()+_75;
+}
+_70._imgBaseUrl=_74;
+}
+if(_74){
+var _76=false;
+if((_6a||_6c)&&!_70._stepDisabled){
+var _77=_70.imgstepprefix;
+var _78=_70.imgstepextension;
+var _79=_70.imgsteps;
+if(_77&&_78&&_79){
+var _7a=_70._stepNext;
+if(_6b||_7a==null||_7a>=_79.length){
+_7a=0;
+}
+var _7b=_74+"/"+_77;
+if(!_6c){
+_73.src=_7b+_79[_7a]+_78;
+_76=true;
+_70._stepNext=_7a+1;
+}else{
+var _7c,_7d=Math.ceil(_79.length/1.8);
+for(var i=0;i<=_7d;i++){
+_7c=new Image();
+_7c.src=_7b+_79[i]+_78;
+}
+}
+}else{
+_70._stepDisabled=true;
+}
+}
+if(!_76&&!_6c){
+_73.src=_74+"/"+_72;
}
-var msg=" error:";
-if(_6a.message!=null){
-msg+=" "+_6a.message;
-}
-if(_6a.number!=null&&_6a.number!="0"){
-msg+=" ("+_6a.number;
-if(_6a.type!=null&&_6a.type!="unknown"){
-msg+="/"+_6a.type;
-}
-msg+=")";
-}else{
-if(_6a.type!=null&&_6a.type!="unknown"){
-msg+=" ("+_6a.type+")";
-}
-}
-return msg;
-};
-jetspeed.url.loadingIndicatorShow=function(_6c){
-if(typeof _6c=="undefined"){
-_6c="loadpage";
-}
-var _6d=document.getElementById(jetspeed.url.LOADING_INDICATOR_ID);
-if(_6d!=null&&_6d.style){
-var _6e=null;
-if(jetspeed.prefs!=null&&jetspeed.prefs.desktopActionLabels!=null){
-_6e=jetspeed.prefs.desktopActionLabels[_6c];
-}
-if(_6e!=null&&_6e.length>0&&_6d.style["display"]=="none"){
-_6d.style["display"]="";
-if(_6c!=null){
-if(_6e!=null&&_6e.length>0){
-var _6f=document.getElementById(jetspeed.url.LOADING_INDICATOR_ID+"-content");
-if(_6f!=null){
-_6f.innerHTML=_6e;
+}
+}
+}
+};
+jetspeed.url.loadingIndicatorStep=function(_7f){
+var _80=_7f.url;
+_80._loadingImgUpdate(true,false,false,document,_7f.prefs,_80);
+};
+jetspeed.url.loadingIndicatorStepPreload=function(){
+var _81=jetspeed;
+var _82=_81.url;
+_82._loadingImgUpdate(true,false,true,document,_81.prefs,_82);
+};
+jetspeed.url.loadingIndicatorShow=function(_83,_84){
+var _85=jetspeed;
+var _86=_85.prefs;
+var _87=_85.url;
+var doc=document;
+if(typeof _83=="undefined"){
+_83="loadpage";
+}
+var _89=doc.getElementById(_87.LOADING_INDICATOR_ID);
+if(_89!=null&&_89.style){
+var _8a=null;
+if(_86!=null&&_86.desktopActionLabels!=null){
+_8a=_86.desktopActionLabels[_83];
+}
+if(_8a!=null&&_8a.length>0&&_89.style["display"]=="none"){
+_87._loadingImgUpdate(_84,true,false,doc,_86,_87);
+_89.style["display"]="";
+if(_83!=null){
+if(_8a!=null&&_8a.length>0){
+var _8b=doc.getElementById(_87.LOADING_INDICATOR_ID+"-content");
+if(_8b!=null){
+_8b.innerHTML=_8a;
}
}
}
@@ -663,10 +717,42 @@
return false;
};
jetspeed.url.loadingIndicatorHide=function(){
-var _70=document.getElementById(jetspeed.url.LOADING_INDICATOR_ID);
-if(_70!=null&&_70.style){
-_70.style["display"]="none";
+var _8c=document.getElementById(jetspeed.url.LOADING_INDICATOR_ID);
+if(_8c!=null&&_8c.style){
+_8c.style["display"]="none";
}
};
}
+jetspeed.widget.openDialog=function(_8d){
+var _8e=jetspeed.UAmoz;
+if(_8e){
+_8d.domNode.style.position="fixed";
+if(!_8d._fixedIPtBug){
+var _8f=_8d;
+_8f.placeModalDialog=function(){
+var _90=dojo.html.getScroll().offset;
+var _91=dojo.html.getViewport();
+var mb;
+if(_8f.isShowing()){
+mb=dojo.html.getMarginBox(_8f.domNode);
+}else{
+dojo.html.setVisibility(_8f.domNode,false);
+dojo.html.show(_8f.domNode);
+mb=dojo.html.getMarginBox(_8f.domNode);
+dojo.html.hide(_8f.domNode);
+dojo.html.setVisibility(_8f.domNode,true);
+}
+var x=(_91.width-mb.width)/2;
+var y=(_91.height-mb.height)/2;
+with(_8f.domNode.style){
+left=x+"px";
+top=y+"px";
+}
+};
+_8f._fixedIPtBug=true;
+}
+}
+_8d.show();
+};
+jetspeed.initcommon();
Modified: portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.src.js
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.src.js?rev=605312&r1=605311&r2=605312&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.src.js (original)
+++ portals/jetspeed-2/trunk/jetspeed-portal-resources/src/main/resources/webapp/javascript/jetspeed/common.src.js Tue Dec 18 11:42:25 2007
@@ -26,13 +26,20 @@
dojo.require( "dojo.uri.Uri" );
}
-// ... jetspeed base objects
+
+// jetspeed base objects
+
if ( ! window.jetspeed )
jetspeed = {};
if ( ! jetspeed.url )
jetspeed.url = {};
+if ( ! jetspeed.om )
+ jetspeed.om = {};
+if ( ! jetspeed.widget )
+ jetspeed.widget = {};
+
+// jetspeed version
-// ... jetspeed version
jetspeed.version =
{
major: 2, minor: 1, patch: 0, flag: "dev",
@@ -46,33 +53,91 @@
}
};
-if ( ! window.dojo )
+jetspeed.initcommon = function()
{
- jetspeed.no_dojo_load_notifying = false;
- jetspeed.no_dojo_post_load = false;
- jetspeed.pageLoadedListeners = [];
-
- window.onload = function()
+ var jsObj = jetspeed;
+ if ( ! window.dojo )
{
- if ( ! window.dojo )
+ var jsObj = jetspeed;
+ jsObj.no_dojo_load_notifying = false;
+ jsObj.no_dojo_post_load = false;
+ jsObj.pageLoadedListeners = [];
+
+ window.onload = function()
{
- jetspeed.no_dojo_load_notifying = true;
- jetspeed.no_dojo_post_load = true;
- var pll = jetspeed.pageLoadedListeners;
- for( var x=0; x < pll.length; x++ )
+ if ( ! window.dojo )
{
- pll[x]();
- }
- jetspeed.pageLoadedListeners = [];
+ var _jsObj = jetspeed;
+ _jsObj.no_dojo_load_notifying = true;
+ _jsObj.no_dojo_post_load = true;
+ var pll = _jsObj.pageLoadedListeners;
+ for( var x=0; x < pll.length; x++ )
+ {
+ pll[x]();
+ }
+ _jsObj.pageLoadedListeners = [];
+ }
+ };
+ }
+ else
+ {
+ var djRH = dojo.render.html;
+ if ( djRH.ie )
+ {
+ jsObj.UAie = true;
+ if ( djRH.ie60 || djRH.ie50 || djRH.ie55 )
+ jsObj.UAie6 = true;
+
+ jsObj.stopEvent = function(/*Event*/evt, suppressErrors)
+ { // do no use in event connect
+ try
+ {
+ evt = evt || window.event;
+ if ( evt )
+ {
+ evt.cancelBubble = true;
+ evt.returnValue = false;
+ }
+ }
+ catch(ex)
+ {
+ if ( ! suppressErrors && djConfig.isDebug )
+ dojo.debug( "stopEvent (" + ( typeof evt ) + ") failure: " + jetspeed.formatError( ex ) );
+ }
+ };
+ jsObj._stopEvent = function(/*Event*/evt)
+ { // use in event connect
+ jetspeed.stopEvent( evt );
+ };
}
- };
-};
+ else
+ {
+ if ( djRH.mozilla )
+ jsObj.UAmoz = true;
+ else if ( djRH.safari )
+ jsObj.UAsaf = true ;
+ else if ( djRH.opera )
+ jsObj.UAope = true ;
+
+ jsObj.stopEvent = function(/*Event*/evt)
+ { // do no use in event connect
+ evt.preventDefault();
+ evt.stopPropagation();
+ };
+ jsObj._stopEvent = function(/*Event*/evt)
+ { // use in event connect
+ jetspeed.stopEvent( evt );
+ };
+ }
+ }
+}
+
-/*
-Call styles:
- jetspeed.addOnLoad( functionPointer )
- jetspeed.addOnLoad( object, "functionName" )
-*/
+
+
+// Call styles:
+// jetspeed.addOnLoad( functionPointer )
+// jetspeed.addOnLoad( object, "functionName" )
jetspeed.addOnLoad = function( obj, fcnName )
{
if ( window.dojo )
@@ -114,166 +179,51 @@
}
};
-jetspeed.printobj = function( obj, omitLineBreaks, omitEmptyValsProperties, arrayLengthsOnly )
+jetspeed.getBody = function()
{
- var props = [];
- for( var prop in obj )
- {
- try
- {
- var propVal = obj[prop];
- if ( arrayLengthsOnly )
- {
- if ( dojo.lang.isArray( propVal ) )
- {
- propVal = "[" + propVal.length + "]";
- }
- }
- propVal = propVal + "";
- if ( ! omitEmptyValsProperties || propVal.length > 0 )
- props.push( prop + ': ' + propVal );
- }
- catch(E)
- {
- props.push( prop + ': ERROR - ' + E.message );
- }
- }
- props.sort();
- var buff = "";
- for( var i = 0; i < props.length; i++ )
- {
- if ( buff.length > 0 )
- buff += ( omitLineBreaks ? ", " : "\r\n" );
- buff += props[i];
- }
- return buff;
+ var jsObj = jetspeed;
+ if ( jsObj.docBody == null )
+ jsObj.docBody = document.body || document.getElementsByTagName( "body" )[0];
+ return jsObj.docBody;
};
-jetspeed.println = function( line )
+jetspeed.formatError = function( ex )
{
- try
+ if ( ex == null ) return "";
+ var msg = " error:";
+ if ( ex.message != null )
+ msg += " " + ex.message;
+ var lineNo = ex.number||ex.lineNumber||ex.lineNo;
+ if ( lineNo == null || lineNo == "0" || lineNo.length == 0 )
+ lineNo = null;
+ var fileNm = ex.fileName;
+ if ( fileNm != null )
{
- var console = jetspeed.getDebugElement();
- if( !console )
- {
- console = document.getElementsByTagName( "body" )[0] || document.body;
- }
- var div = document.createElement( "div" );
- div.appendChild( document.createTextNode( line ) );
- console.appendChild( div );
- }
- catch (e)
- {
- try
- { // safari needs the output wrapped in an element for some reason
- document.write("<div>" + line + "</div>");
- }
- catch(e2)
- {
- window.status = line;
- }
+ var lastDirSep = fileNm.lastIndexOf( "/" );
+ if ( lastDirSep != -1 && lastDirSep < (fileNm.length -1) )
+ fileNm = fileNm.substring( lastDirSep + 1 );
}
-};
+ if ( fileNm == null || fileNm.length == 0 )
+ fileNm = null;
+ var errType = ex.type;
+ if ( errType == null || errType.length == 0 || errType == "unknown" )
+ errType = null;
-jetspeed.debugNodeTree = function( node, string )
-{
- if ( ! node ) return ;
-
- if ( string )
- {
- if ( string.length > 0 )
- jetspeed.println( string );
- }
- else
- {
- jetspeed.println( 'node: ' );
- }
- if ( node.nodeType != 1 && node.nodeType != 3 )
- {
- if ( node.length && node.length > 0 && ( node[0].nodeType == 1 || node[0].nodeType == 3 ) )
- {
- for ( var i = 0 ; i < node.length ; i++ )
- {
- jetspeed.debugNodeTree( node[i], " [" + i + "]" )
- }
- }
- else
- {
- jetspeed.println( " node is not a node! " + node.length );
- }
- return ;
- }
- if ( node.innerXML )
- {
- jetspeed.println( node.innerXML );
- }
- else if ( node.xml )
- {
- jetspeed.println( node.xml );
- }
- else if ( typeof XMLSerializer != "undefined" )
+ if ( lineNo != null || fileNm != null || errType != null )
{
- jetspeed.println( (new XMLSerializer()).serializeToString( node ) );
- }
- else
- {
- jetspeed.println( " node != null (IE no XMLSerializer)" );
+ msg += " (" + ( fileNm != null ? ( " " + fileNm ) : "" );
+ msg += ( lineNo != null ? (" line " + lineNo) : "" );
+ msg += ( errType != null ? (" type " + errType) : "" );
+ msg += " )";
}
+ return msg;
};
-jetspeed.debugShallow = function( obj, string )
-{
- if ( string )
- jetspeed.println( string );
- else
- jetspeed.println( 'Object: ' + obj );
- var props = [];
- for(var prop in obj){
- try {
- props.push(prop + ': ' + obj[prop]);
- } catch(E) {
- props.push(prop + ': ERROR - ' + E.message);
- }
- }
- props.sort();
- for(var i = 0; i < props.length; i++) {
- jetspeed.println( props[i] );
- }
-};
-jetspeed.getDebugElement = function( clear )
-{
- var console = null ;
- try {
- var console = document.getElementById("debug_container");
- if(!console)
- {
- var consoleContainer = document.getElementsByTagName("body")[0] || document.body;
- var console = document.createElement("div");
- console.setAttribute( "id", "debug_container" );
- consoleContainer.appendChild(console);
- }
- else if ( clear )
- {
- console.innerHTML = "";
- }
- } catch (e) {
- try {
- } catch(e2){}
- }
- return console ;
-};
-if ( window.djConfig != null && window.djConfig.isDebug )
-{
- var ch = String.fromCharCode(0x00a0);
- jetspeed.debugindentch = ch;
- jetspeed.debugindentH = ch + ch;
- jetspeed.debugindent = ch + ch + ch + ch;
- jetspeed.debugindent2 = jetspeed.debugindent + jetspeed.debugindent;
- jetspeed.debugindent3 = jetspeed.debugindent + jetspeed.debugindent + jetspeed.debugindent;
-}
-// ... jetspeed.url
+// jetspeed.url
+
jetspeed.url.LOADING_INDICATOR_ID = "js-showloading";
+jetspeed.url.LOADING_INDICATOR_IMG_ID = "js-showloading-img";
jetspeed.url.path =
{
SERVER: null, // http://localhost:8080
@@ -289,7 +239,9 @@
jetspeed.url.pathInitialize = function( force )
{
- if ( ! force && jetspeed.url.path.initialized ) return;
+ var jsU = jetspeed.url;
+ var jsUP = jsU.path;
+ if ( ! force && jsUP.initialized ) return;
var baseTags = document.getElementsByTagName( "base" );
var baseTagHref = null;
@@ -298,40 +250,47 @@
else
baseTagHref = window.location.href;
- var baseTag = jetspeed.url.parse( baseTagHref );
+ var baseTag = jsU.parse( baseTagHref );
var basePath = baseTag.path;
- var sepPos = -1;
- for( var startPos =1 ; sepPos <= startPos ; startPos++ )
- {
- sepPos = basePath.indexOf( "/", startPos );
- if ( sepPos == -1 )
- break;
- }
-
var serverUri = "";
if ( baseTag.scheme != null) { serverUri += baseTag.scheme + ":"; }
if ( baseTag.authority != null) { serverUri += "//" + baseTag.authority; }
var jetspeedPath = null;
- if ( sepPos == -1 )
- jetspeedPath = basePath;
+ if ( djConfig.jetspeed.rootContext )
+ {
+ jetspeedPath = "";
+ }
else
+ {
+ var sepPos = -1;
+ for( var startPos =1 ; sepPos <= startPos ; startPos++ )
+ {
+ sepPos = basePath.indexOf( "/", startPos );
+ if ( sepPos == -1 )
+ break;
+ }
+
+ if ( sepPos == -1 )
+ jetspeedPath = basePath;
+ else
jetspeedPath = basePath.substring( 0, sepPos );
+ }
- //dojo.debug( "pathInitialize new-JETSPEED=" + jetspeedPath + " orig-JETSPEED=" + jetspeed.url.path.JETSPEED + " new-SERVER=" + serverUri + " orig-SERVER=" + document.location.protocol + "//" + document.location.host );
+ //dojo.debug( "pathInitialize new-JETSPEED=" + jetspeedPath + " orig-JETSPEED=" + jsUP.JETSPEED + " new-SERVER=" + serverUri + " orig-SERVER=" + document.location.protocol + "//" + document.location.host );
- jetspeed.url.path.JETSPEED = jetspeedPath;
- jetspeed.url.path.SERVER = serverUri;
- jetspeed.url.path.AJAX_API = jetspeed.url.path.JETSPEED + "/ajaxapi";
- jetspeed.url.path.DESKTOP = jetspeed.url.path.JETSPEED + "/desktop";
- jetspeed.url.path.PORTAL = jetspeed.url.path.JETSPEED + "/portal";
- jetspeed.url.path.PORTLET = jetspeed.url.path.JETSPEED + "/portlet";
- jetspeed.url.path.ACTION = jetspeed.url.path.JETSPEED + "/action";
- jetspeed.url.path.RENDER = jetspeed.url.path.JETSPEED + "/render";
+ jsUP.JETSPEED = jetspeedPath;
+ jsUP.SERVER = serverUri;
+ jsUP.AJAX_API = jsUP.JETSPEED + "/ajaxapi";
+ jsUP.DESKTOP = jsUP.JETSPEED + "/desktop";
+ jsUP.PORTAL = jsUP.JETSPEED + "/portal";
+ jsUP.PORTLET = jsUP.JETSPEED + "/portlet";
+ jsUP.ACTION = jsUP.JETSPEED + "/action";
+ jsUP.RENDER = jsUP.JETSPEED + "/render";
- jetspeed.url.path.initialized = true;
+ jsUP.initialized = true;
};
jetspeed.url.parse = function( url )
{ // taken from dojo.uri.Uri
@@ -385,7 +344,7 @@
}
};
jetspeed.url.scheme =
-{ // used to make jetspeed.url.validateUrlStartsWithHttp cleaner
+{ // used to make jetspeed.url.urlStartsWithHttp cleaner
HTTP_PREFIX: "http://",
HTTP_PREFIX_LEN: "http://".length,
HTTPS_PREFIX: "https://",
@@ -460,7 +419,7 @@
var urlObj = jetspeed.url.parse( modUri );
return urlObj.toString();
};
-jetspeed.url.validateUrlStartsWithHttp = function( url )
+jetspeed.url.urlStartsWithHttp = function( url )
{
if ( url )
{
@@ -640,6 +599,38 @@
return null;
};
+
+// jetspeed.om.Id
+
+jetspeed.om.Id = function( /* ... */ ) // intended as a simple, general object with an id and a getId() function
+{
+ var idBuff = "";
+ for ( var i = 0; i < arguments.length; i++ )
+ {
+ if( dojo.lang.isString( arguments[i] ) )
+ {
+ if ( idBuff.length > 0 )
+ idBuff += "-";
+ idBuff += arguments[i];
+ }
+ else if ( dojo.lang.isObject( arguments[i] ) )
+ {
+ for ( var slotKey in arguments[i] )
+ {
+ this[ slotKey ] = arguments[i][slotKey];
+ }
+ }
+ }
+ this.id = idBuff;
+};
+jetspeed.om.Id.prototype =
+{
+ getId: function()
+ {
+ return this.id;
+ }
+};
+
if ( window.dojo )
{
jetspeed.url.BindArgs = function( bindArgs )
@@ -648,6 +639,9 @@
if ( ! this.mimetype )
this.mimetype = "text/html";
+
+ if ( ! this.encoding )
+ this.encoding = "utf-8";
};
dojo.lang.extend( jetspeed.url.BindArgs,
@@ -672,20 +666,26 @@
var dmId = null;
if ( this.debugContentDumpIds )
{
- dmId = ( ( this.domainModelObject && dojo.lang.isFunction( this.domainModelObject.getId ) ) ? this.domainModelObject.getId() : "" );
+ dmId = ( ( this.domainModelObject && dojo.lang.isFunction( this.domainModelObject.getId ) ) ? this.domainModelObject.getId() : ( ( this.domainModelObject && this.domainModelObject.id ) ? String( this.domainModelObject.id ) : "" ) );
+ var outputResponse = false;
for ( var debugContentIndex = 0 ; debugContentIndex < this.debugContentDumpIds.length; debugContentIndex++ )
{
if ( dmId.match( new RegExp( this.debugContentDumpIds[ debugContentIndex ] ) ) )
{
- if ( dojo.lang.isString( data ) )
- dojo.debug( "retrieveContent [" + ( dmId ? dmId : this.url ) + "] content: " + data );
- else
- {
- var textContent = dojo.dom.innerXML( data );
- if ( ! textContent )
- textContent = ( data != null ? "!= null (IE no XMLSerializer)" : "null" );
- dojo.debug( "retrieveContent [" + ( dmId ? dmId : this.url ) + "] xml-content: " + textContent );
- }
+ outputResponse = true;
+ break;
+ }
+ }
+ if ( outputResponse )
+ {
+ if ( dojo.lang.isString( data ) )
+ dojo.debug( "retrieveContent [" + ( dmId ? dmId : this.url ) + "] content: " + data );
+ else
+ {
+ var textContent = dojo.dom.innerXML( data );
+ if ( ! textContent )
+ textContent = ( data != null ? "!= null (IE no XMLSerializer)" : "null" );
+ dojo.debug( "retrieveContent [" + ( dmId ? dmId : this.url ) + "] xml-content: " + textContent );
}
}
}
@@ -705,10 +705,10 @@
{
if ( this.hideLoadingIndicator )
jetspeed.url.loadingIndicatorHide();
- throw e;
+ dojo.raise( "dojo.io.bind " + jetspeed.formatError( e ) );
}
},
-
+
error: function( type, error )
{
//dojo.debug( "r e t r i e v e C o n t e n t . e r r o r" ) ;
@@ -751,7 +751,7 @@
dojo.io.bind( jetspeedBindArgs.createIORequest() ) ;
};
- jetspeed.url.checkAjaxApiResponse = function( requestUrl, data, reportError, apiRequestDescription, dumpOutput )
+ jetspeed.url.checkAjaxApiResponse = function( requestUrl, data, otherSuccessValues, reportError, apiRequestDescription, dumpOutput )
{
var success = false;
var statusElmt = data.getElementsByTagName( "status" );
@@ -760,7 +760,18 @@
var successVal = statusElmt[0].firstChild.nodeValue;
if ( successVal == "success" )
{
- success = true;
+ success = successVal;
+ }
+ else if ( otherSuccessValues && otherSuccessValues.length > 0 )
+ {
+ for ( var i = 0 ; i < otherSuccessValues.length ; i++ )
+ {
+ if ( successVal == otherSuccessValues[i] )
+ {
+ success = successVal;
+ break;
+ }
+ }
}
}
if ( ( ! success && reportError ) || dumpOutput )
@@ -778,45 +789,111 @@
return success;
};
- jetspeed.url.formatBindError = function( /* Object */ bindError )
+ jetspeed.url._loadingImgUpdate = function( useStepImgs, resetNextStep, stepPreloadOnly, doc, jsPrefs, jsUrl )
{
- if ( bindError == null ) return "";
- var msg = " error:";
- if ( bindError.message != null )
- msg += " " + bindError.message;
- if ( bindError.number != null && bindError.number != "0" )
+ var loadingProps = jsPrefs.loadingImgProps;
+ if ( loadingProps )
{
- msg += " (" + bindError.number;
- if ( bindError.type != null && bindError.type != "unknown" )
- msg += "/" + bindError.type;
- msg += ")";
- }
- else if ( bindError.type != null && bindError.type != "unknown" )
- {
- msg += " (" + bindError.type + ")";
+ var loading = doc.getElementById( jsUrl.LOADING_INDICATOR_ID );
+ if ( loading == null || ! loading.style || loading.style.display == "none" )
+ return;
+ var imgAnimated = loadingProps.imganimated;
+ var loadingImgElmt = doc.getElementById( jsUrl.LOADING_INDICATOR_IMG_ID );
+ if ( imgAnimated && loadingImgElmt )
+ {
+ var imgBaseUrl = loadingProps._imgBaseUrl;
+ if ( imgBaseUrl == null )
+ {
+ var imgDir = loadingProps.imgdir;
+ if ( imgDir == null || imgDir.length == 0 )
+ imgBaseUrl = false;
+ else
+ imgBaseUrl = jsPrefs.getLayoutRootUrl() + imgDir;
+ loadingProps._imgBaseUrl = imgBaseUrl;
+ }
+ if ( imgBaseUrl )
+ {
+ var srcSet = false;
+ if ( ( useStepImgs || stepPreloadOnly ) && ! loadingProps._stepDisabled )
+ {
+ var stepPrefix = loadingProps.imgstepprefix;
+ var stepExtn = loadingProps.imgstepextension;
+ var steps = loadingProps.imgsteps;
+ if ( stepPrefix && stepExtn && steps )
+ {
+ var nextStep = loadingProps._stepNext;
+ if ( resetNextStep || nextStep == null || nextStep >= steps.length )
+ nextStep = 0;
+ var imgStepBaseUrl = imgBaseUrl + "/" + stepPrefix;
+ if ( ! stepPreloadOnly )
+ {
+ loadingImgElmt.src = imgStepBaseUrl + steps[nextStep] + stepExtn;
+ srcSet = true;
+ loadingProps._stepNext = nextStep + 1;
+ }
+ else
+ {
+ var preloadImg, limit = Math.ceil( steps.length / 1.8 );
+ for ( var i = 0 ; i <= limit ; i++ )
+ {
+ preloadImg = new Image();
+ preloadImg.src = imgStepBaseUrl + steps[i] + stepExtn;
+ }
+ }
+ }
+ else
+ {
+ loadingProps._stepDisabled = true;
+ }
+ }
+ if ( ! srcSet && ! stepPreloadOnly )
+ {
+ loadingImgElmt.src = imgBaseUrl + "/" + imgAnimated;
+ }
+ }
+ }
}
- return msg;
};
- jetspeed.url.loadingIndicatorShow = function( actionName )
+
+ jetspeed.url.loadingIndicatorStep = function( jsObj )
+ {
+ var jsUrl = jsObj.url;
+ jsUrl._loadingImgUpdate( true, false, false, document, jsObj.prefs, jsUrl );
+ };
+
+ jetspeed.url.loadingIndicatorStepPreload = function()
{
+ var jsObj = jetspeed;
+ var jsUrl = jsObj.url;
+ jsUrl._loadingImgUpdate( true, false, true, document, jsObj.prefs, jsUrl );
+ };
+
+ jetspeed.url.loadingIndicatorShow = function( actionName, useStepImgs )
+ {
+ var jsObj = jetspeed;
+ var jsPrefs = jsObj.prefs;
+ var jsUrl = jsObj.url;
+ var doc = document;
if ( typeof actionName == "undefined" )
actionName = "loadpage";
- var loading = document.getElementById( jetspeed.url.LOADING_INDICATOR_ID );
+ var loading = doc.getElementById( jsUrl.LOADING_INDICATOR_ID );
if ( loading != null && loading.style )
{
var actionlabel = null;
- if ( jetspeed.prefs != null && jetspeed.prefs.desktopActionLabels != null )
- actionlabel = jetspeed.prefs.desktopActionLabels[ actionName ];
+ if ( jsPrefs != null && jsPrefs.desktopActionLabels != null )
+ actionlabel = jsPrefs.desktopActionLabels[ actionName ];
if ( actionlabel != null && actionlabel.length > 0 && loading.style[ "display" ] == "none" )
{
+ jsUrl._loadingImgUpdate( useStepImgs, true, false, doc, jsPrefs, jsUrl );
+
loading.style[ "display" ] = "";
if ( actionName != null )
{
if ( actionlabel != null && actionlabel.length > 0 )
{
- var loadingContent = document.getElementById( jetspeed.url.LOADING_INDICATOR_ID + "-content" );
+ var loadingContent = doc.getElementById( jsUrl.LOADING_INDICATOR_ID + "-content" );
if ( loadingContent != null )
{
loadingContent.innerHTML = actionlabel;
@@ -835,3 +912,46 @@
loading.style[ "display" ] = "none";
};
}
+
+jetspeed.widget.openDialog = function( dialogWidget )
+{
+ var isMoz = jetspeed.UAmoz;
+ if ( isMoz )
+ {
+ dialogWidget.domNode.style.position = "fixed"; // this fix involves setting position to fixed instead of absolute,
+ if ( ! dialogWidget._fixedIPtBug ) // and the change to var x and var y initialization in placeModalDialog
+ {
+ var _dialog = dialogWidget;
+ _dialog.placeModalDialog = function() {
+ // summary: position modal dialog in center of screen
+
+ var scroll_offset = dojo.html.getScroll().offset;
+ var viewport_size = dojo.html.getViewport();
+
+ // find the size of the dialog (dialog needs to be showing to get the size)
+ var mb;
+ if(_dialog.isShowing()){
+ mb = dojo.html.getMarginBox(_dialog.domNode);
+ }else{
+ dojo.html.setVisibility(_dialog.domNode, false);
+ dojo.html.show(_dialog.domNode);
+ mb = dojo.html.getMarginBox(_dialog.domNode);
+ dojo.html.hide(_dialog.domNode);
+ dojo.html.setVisibility(_dialog.domNode, true);
+ }
+ //var x = scroll_offset.x + (viewport_size.width - mb.width)/2;
+ //var y = scroll_offset.y + (viewport_size.height - mb.height)/2;
+ var x = (viewport_size.width - mb.width)/2;
+ var y = (viewport_size.height - mb.height)/2;
+ with(_dialog.domNode.style){
+ left = x + "px";
+ top = y + "px";
+ }
+ };
+ _dialog._fixedIPtBug = true;
+ }
+ }
+ dialogWidget.show();
+};
+
+jetspeed.initcommon();
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org