r1143 - in xwiki/trunk/src/main/java/com/xpn/xwiki: . doc store web
Ludovic Dubost
ludovic at users.forge.objectweb.org
Sat Aug 12 10:35:56 CEST 2006
Author: ludovic
Date: 2006-08-12 10:35:55 +0200 (Sat, 12 Aug 2006)
New Revision: 1143
Modified:
xwiki/trunk/src/main/java/com/xpn/xwiki/XWiki.java
xwiki/trunk/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java
xwiki/trunk/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java
xwiki/trunk/src/main/java/com/xpn/xwiki/web/XWikiServletURLFactory.java
Log:
Fixes allowing to use a skin from a different hosted wiki
Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/XWiki.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/XWiki.java 2006-08-11 19:24:38 UTC (rev 1142)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/XWiki.java 2006-08-12 08:35:55 UTC (rev 1143)
@@ -1102,7 +1102,7 @@
if (object != null) {
String content = object.getStringValue(filename);
if ((content != null) && (!content.equals(""))) {
- URL url = urlf.createSkinURL(filename, doc.getWeb(), doc.getName(), context);
+ URL url = urlf.createSkinURL(filename, doc.getWeb(), doc.getName(), doc.getDatabase(), context);
return urlf.getURL(url, context);
}
@@ -1115,7 +1115,7 @@
attachment = doc.getAttachment(shortname);
if (attachment != null) {
- URL url = urlf.createSkinURL(filename, doc.getWeb(), doc.getName(), context);
+ URL url = urlf.createSkinURL(filename, doc.getWeb(), doc.getName(), doc.getDatabase(), context);
return urlf.getURL(url, context);
}
}
@@ -3830,6 +3830,6 @@
BaseClass bclass = context.getWiki().getClass(className, context);
BaseObject newobject = (BaseObject) bclass.fromMap(map, context);
return newobject;
- }
+ }
}
Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java 2006-08-11 19:24:38 UTC (rev 1142)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java 2006-08-12 08:35:55 UTC (rev 1143)
@@ -1203,6 +1203,7 @@
// This should not happen
}
+ doc.setDatabase(getDatabase());
doc.setRCSVersion(getRCSVersion());
doc.setDocumentArchive(getDocumentArchive());
doc.setAuthor(getAuthor());
Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java 2006-08-11 19:24:38 UTC (rev 1142)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/store/XWikiHibernateStore.java 2006-08-12 08:35:55 UTC (rev 1143)
@@ -341,6 +341,7 @@
try {
session.load(doc, new Long(doc.getId()));
+ doc.setDatabase(context.getDatabase());
doc.setNew(false);
} catch (ObjectNotFoundException e)
{ // No document
Modified: xwiki/trunk/src/main/java/com/xpn/xwiki/web/XWikiServletURLFactory.java
===================================================================
--- xwiki/trunk/src/main/java/com/xpn/xwiki/web/XWikiServletURLFactory.java 2006-08-11 19:24:38 UTC (rev 1142)
+++ xwiki/trunk/src/main/java/com/xpn/xwiki/web/XWikiServletURLFactory.java 2006-08-12 08:35:55 UTC (rev 1143)
@@ -115,15 +115,21 @@
if (xwikidb==null)
return serverURL;
- if (xwikidb.equals(context.getOriginalDatabase()))
+ if (xwikidb.equals(context.getOriginalDatabase())) {
return serverURL;
- else {
- URL url = context.getWiki().getServerURL(xwikidb, context);
- if (url==null)
- return serverURL;
- else
- return url;
}
+
+ if (xwikidb.equals("xwiki")) {
+ String surl = context.getWiki().Param("xwiki.home", "");
+ if (!surl.equals(""))
+ return new URL(surl);
+ }
+
+ URL url = context.getWiki().getServerURL(xwikidb, context);
+ if (url==null)
+ return serverURL;
+ else
+ return url;
}
public URL createURL(String web, String name, String action, boolean redirect, XWikiContext context) {
More information about the Xwiki-notifications
mailing list