You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2007/02/19 14:57:47 UTC
svn commit: r509203 - in
/lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation:
UrlToUuidTransformer.java UuidToUrlTransformer.java
Author: andreas
Date: Mon Feb 19 05:57:47 2007
New Revision: 509203
URL: http://svn.apache.org/viewvc?view=rev&rev=509203
Log:
Add context path to references to static images, see bug 41499
Modified:
lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UrlToUuidTransformer.java
lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java
Modified: lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UrlToUuidTransformer.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UrlToUuidTransformer.java?view=diff&rev=509203&r1=509202&r2=509203
==============================================================================
--- lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UrlToUuidTransformer.java (original)
+++ lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UrlToUuidTransformer.java Mon Feb 19 05:57:47 2007
@@ -163,6 +163,17 @@
rewriteLink(newAttrs, UuidToUrlTransformer.attributeNames[i],
targetDocument, anchor, queryString);
}
+ else {
+ /*
+ * This is legacy code. It rewrites links to
+ * non-document images (in resources/shared). These
+ * images shouldn't be referenced in documents since
+ * this violates the separation between content and
+ * layout.
+ */
+ String newUrl = completeUrl.substring(this.contextPath.length());
+ setAttribute(newAttrs, UuidToUrlTransformer.attributeNames[i], newUrl);
+ }
}
} catch (final Exception e) {
Modified: lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java?view=diff&rev=509203&r1=509202&r2=509203
==============================================================================
--- lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java (original)
+++ lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java Mon Feb 19 05:57:47 2007
@@ -91,6 +91,7 @@
private DocumentFactory factory;
private LinkResolver linkResolver;
+ private String contextPath;
/**
* @see org.apache.cocoon.sitemap.SitemapModelComponent#setup(org.apache.cocoon.environment.SourceResolver,
@@ -102,6 +103,7 @@
super.setup(_resolver, _objectModel, _source, _parameters);
Request _request = ObjectModelHelper.getRequest(_objectModel);
+ this.contextPath = _request.getContextPath();
try {
Session session = RepositoryUtil.getSession(this.manager, _request);
@@ -222,6 +224,24 @@
markBrokenLink(newAttrs, attributeNames[i], linkUrl);
} else {
this.ignoreLinkElement = true;
+ }
+ } else {
+ /*
+ * This is legacy code. It rewrites links to
+ * non-document images (in resources/shared). These
+ * images shouldn't be referenced in documents since
+ * this violates the separation between content and
+ * layout.
+ */
+ String prefix = "/" + this.currentDocument.getPublication().getId()
+ + "/";
+ if (linkUrl.startsWith(prefix)) {
+ String pubUrl = linkUrl.substring(prefix.length());
+ String area = pubUrl.split("/")[0];
+ String areaUrl = pubUrl.substring(area.length());
+ String newUrl = this.contextPath + prefix
+ + this.currentDocument.getArea() + areaUrl;
+ setAttribute(newAttrs, attributeNames[i], newUrl);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org