[jboss-svn-commits] JBL Code SVN: r9461 - in labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki: src/java/org and 6 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Feb 12 18:43:47 EST 2007
Author: szimano
Date: 2007-02-12 18:43:47 -0500 (Mon, 12 Feb 2007)
New Revision: 9461
Added:
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_attach.xhtml
Removed:
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/apache/
Modified:
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/project.xml
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortletOld.java
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/helper/WikiHelper.java
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiCommonSession.java
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiEdit.java
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiView.java
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/Messages.properties
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/faces-config.xml
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/web.xml
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_template.xhtml
labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_view.xhtml
Log:
wiki attach
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/project.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/project.xml 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/project.xml 2007-02-12 23:43:47 UTC (rev 9461)
@@ -65,8 +65,11 @@
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload.jar</artifactId>
- <version>1.0</version>
- <jar>commons-fileupload-1.0.jar</jar>
+ <version>1.1</version>
+ <jar>commons-fileupload-1.1.jar</jar>
+ <properties>
+ <war.bundle>true</war.bundle>
+ </properties>
</dependency>
<dependency>
@@ -139,12 +142,20 @@
<groupId>myfaces</groupId>
<artifactId>myfaces-api</artifactId>
<version>1.1.4</version>
- </dependency>
+ </dependency>
<dependency>
<groupId>myfaces</groupId>
<artifactId>myfaces-impl</artifactId>
<version>1.1.4</version>
</dependency>
+ <dependency>
+ <groupId>myfaces</groupId>
+ <artifactId>tomahawk</artifactId>
+ <version>1.1.3</version>
+ <properties>
+ <war.bundle>true</war.bundle>
+ </properties>
+ </dependency>
<dependency>
<groupId>myfaces</groupId>
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortletOld.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortletOld.java 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortletOld.java 2007-02-12 23:43:47 UTC (rev 9461)
@@ -41,7 +41,7 @@
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
-import org.apache.commons.fileupload.PortletDiskFileUpload;
+import org.apache.commons.fileupload.portlet.PortletFileUpload;
import org.jboss.logging.Logger;
import org.jboss.wiki.exceptions.EditSessionExpired;
import org.jboss.wiki.exceptions.EditingNotAllowedException;
@@ -121,15 +121,12 @@
WikiContext wikiContext = null;
- if (PortletDiskFileUpload.isMultipartContent(rReq)) {
- PortletDiskFileUpload dfu = new PortletDiskFileUpload();
+ if (PortletFileUpload.isMultipartContent(rReq)) {
+ PortletFileUpload dfu = new PortletFileUpload();
// maximum allowed file upload size (10 MB)
dfu.setSizeMax(10 * 1000 * 1000);
- // maximum size in memory (vs disk) (100 KB)
- dfu.setSizeThreshold(100 * 1000);
-
try {
// get the FileItems
List fileItems = dfu.parseRequest(rReq);
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/helper/WikiHelper.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/helper/WikiHelper.java 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/helper/WikiHelper.java 2007-02-12 23:43:47 UTC (rev 9461)
@@ -22,6 +22,10 @@
package org.jboss.wiki.helper;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.component.UIOutput;
import javax.faces.component.html.HtmlOutputText;
@@ -54,6 +58,8 @@
private static final String WIKI_COMMON_SESSION = "#{wikiCommon}";
+ private static final String BUNDLE_NAME = "Messages";
+
public static WikiEngine getWikiEngine() {
if (wikiEngine == null) {
try {
@@ -111,4 +117,24 @@
return (WikiCommonSession) fc.getApplication().createValueBinding(
WIKI_COMMON_SESSION).getValue(fc);
}
+
+ public static void addMessage(String message) {
+ FacesContext facesContext = FacesContext.getCurrentInstance();
+ facesContext.addMessage(null, new FacesMessage(message));
+ }
+
+ public static String getMessage(String key) {
+ FacesContext facesContext = FacesContext.getCurrentInstance();
+ String resourceStr;
+
+ try {
+ ResourceBundle messages = ResourceBundle.getBundle(BUNDLE_NAME, facesContext.getViewRoot().getLocale());
+ resourceStr = messages.getString(key);
+ } catch (MissingResourceException e) {
+ log.error(e.getMessage(), e);
+ return key;
+ }
+
+ return resourceStr;
+ }
}
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiCommonSession.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiCommonSession.java 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiCommonSession.java 2007-02-12 23:43:47 UTC (rev 9461)
@@ -44,8 +44,10 @@
private int pageToDiff;
+ private AttributesExtractor attrExtractor;
+
public WikiCommonSession() {
- AttributesExtractor attrExtractor = WikiHelper.getAttributesExtractor(WikiHelper.getRequest(),
+ attrExtractor = WikiHelper.getAttributesExtractor(WikiHelper.getRequest(),
WikiHelper.getResponse());
update(attrExtractor);
@@ -83,4 +85,8 @@
public void setPageToDiff(int pageToDiff) {
this.pageToDiff = pageToDiff;
}
+
+ public boolean isUserLoggedIn() {
+ return attrExtractor.getCredentials().isLoggedIn();
+ }
}
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiEdit.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiEdit.java 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiEdit.java 2007-02-12 23:43:47 UTC (rev 9461)
@@ -22,6 +22,9 @@
package org.jboss.wiki.ui;
+import java.io.IOException;
+
+import org.apache.myfaces.custom.fileupload.UploadedFile;
import org.jboss.logging.Logger;
import org.jboss.wiki.WikiContext;
import org.jboss.wiki.WikiEngine;
@@ -47,6 +50,8 @@
private Integer editSessionId;
private String pageContent;
+
+ private UploadedFile newFile;
public WikiEdit() {
attributesExtractor = WikiHelper.getAttributesExtractor(WikiHelper
@@ -107,4 +112,26 @@
public void setEditSessionId(String editSessionId) {
this.editSessionId = Integer.valueOf(editSessionId);
}
+
+ public UploadedFile getNewFile() {
+ return newFile;
+ }
+
+ public void setNewFile(UploadedFile newFile) {
+ this.newFile = newFile;
+ }
+
+ public String addFile() {
+ WikiEngine wikiEngine = WikiHelper.getWikiEngine();
+
+ try {
+ wikiEngine.addAttachment(newFile.getInputStream(), newFile.getName(), getWikiPage(), attributesExtractor.getCredentials().getName(), WikiHelper.getWikiCommonSession()
+ .getLangCode());
+ } catch (IOException e) {
+ log.error(e);
+ WikiHelper.addMessage(WikiHelper.getMessage("upload_error"));
+ }
+
+ return "goback";
+ }
}
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiView.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiView.java 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ui/WikiView.java 2007-02-12 23:43:47 UTC (rev 9461)
@@ -25,6 +25,9 @@
import java.util.List;
import java.util.Vector;
+import javax.faces.context.FacesContext;
+
+import org.apache.myfaces.config.impl.digester.elements.FacesConfig;
import org.jboss.logging.Logger;
import org.jboss.wiki.WikiCommon;
import org.jboss.wiki.WikiContext;
@@ -43,6 +46,8 @@
public class WikiView {
private static final Logger log = Logger.getLogger(WikiView.class);
+ private static final Object TYPE_PARAM = "type";
+
private AttributesExtractor attrExtractor;
private WikiPage currentPage;
@@ -52,6 +57,8 @@
.getRequest(), WikiHelper.getResponse());
WikiHelper.getWikiCommonSession().update(attrExtractor);
+
+ getCurrentPage();
}
public String getWikiImagesURL() {
@@ -59,6 +66,21 @@
+ WikiCommon.wikiButtons + "/";
}
+ public String getRssURL() {
+ return attrExtractor.getHostURL() + attrExtractor.getAppContext() + "/"
+ + "rss" + "/" + currentPage.getName();
+ }
+
+ public String getRdfURL() {
+ return attrExtractor.getHostURL() + attrExtractor.getAppContext() + "/"
+ + "rdf" + "/" + currentPage.getName();
+ }
+
+ public String getAtomURL() {
+ return attrExtractor.getHostURL() + attrExtractor.getAppContext() + "/"
+ + "atom" + "/" + currentPage.getName();
+ }
+
public String getWikiFriendlyURL() {
return attrExtractor.getHostURL() + attrExtractor.getAppContext() + "/"
+ WikiHelper.getWikiCommonSession().getPageName();
@@ -87,13 +109,13 @@
}
private WikiPage getCurrentPage() {
-
- String type = "html";
-
+
+ String type = getType();
+
if (attrExtractor.getType() != null) {
type = attrExtractor.getType();
}
-
+
if (currentPage == null) {
WikiType wikiType = WikiHelper.getWikiEngine().getWikiType(type);
WikiContext wikiContext = new WikiContext(attrExtractor
@@ -118,6 +140,19 @@
return currentPage;
}
+ private String getType() {
+ String type = "html";
+
+ if (FacesContext.getCurrentInstance().getExternalContext()
+ .getRequestParameterMap().get(TYPE_PARAM) != null) {
+ type = (String) FacesContext.getCurrentInstance()
+ .getExternalContext().getRequestParameterMap().get(
+ TYPE_PARAM);
+ }
+
+ return type;
+ }
+
public List<HistoryElement> getHistoryTable() {
List<HistoryElement> hisList = new Vector<HistoryElement>();
@@ -137,12 +172,13 @@
public boolean isOtherVersion() {
if (WikiHelper.getWikiCommonSession().getPageVersion() != null) {
- if (getCurrentPage().getLastVersion() != WikiHelper.getWikiCommonSession().getPageVersion()) {
+ if (getCurrentPage().getLastVersion() != WikiHelper
+ .getWikiCommonSession().getPageVersion()) {
return true;
}
}
-
+
return false;
}
-
+
}
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/Messages.properties
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/Messages.properties 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/Messages.properties 2007-02-12 23:43:47 UTC (rev 9461)
@@ -2,8 +2,17 @@
edit_cancel = Cancel
edit_save = Save
permaLinkButton = permaLinkButton.png
+
editButton = editButton.png
+recentButton = recentChanges.gif
historyButton = historyButton.png
+attachButton = attachButton.png
+
+rssButton = RSSButton.gif
+rdfButton = RDFButton.gif
+atomButton = ATOMButton.gif
+
+
historytitle = History of page :
version = Version
date = Date
@@ -14,4 +23,7 @@
thisIsVer = This is version
ofPage = of page
changesBetween = Changes between versions
-andChng = and
\ No newline at end of file
+andChng = and
+
+addFile = Add file
+upload_error = File couldn't have been uploaded
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/faces-config.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/faces-config.xml 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/faces-config.xml 2007-02-12 23:43:47 UTC (rev 9461)
@@ -14,7 +14,6 @@
<locale-config>
<default-locale>en</default-locale>
</locale-config>
- <action-listener>org.jboss.wiki.autorization.AuthorizationListener</action-listener>
</application>
<managed-bean>
@@ -47,14 +46,14 @@
<from-outcome>edit</from-outcome>
<to-view-id>/views/wiki_edit.xhtml</to-view-id>
</navigation-case>
- </navigation-rule>
-
- <navigation-rule>
- <from-view-id>/views/wiki_view.xhtml</from-view-id>
<navigation-case>
<from-outcome>history</from-outcome>
<to-view-id>/views/wiki_history.xhtml</to-view-id>
</navigation-case>
+ <navigation-case>
+ <from-outcome>attach</from-outcome>
+ <to-view-id>/views/wiki_attach.html</to-view-id>
+ </navigation-case>
</navigation-rule>
<navigation-rule>
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/web.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/web.xml 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/WEB-INF/web.xml 2007-02-12 23:43:47 UTC (rev 9461)
@@ -7,6 +7,35 @@
<web-app>
+
+ <filter>
+ <filter-name>MyFacesExtensionsFilter</filter-name>
+ <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
+ <init-param>
+ <param-name>maxFileSize</param-name>
+ <param-value>20m</param-value>
+ <description>Set the size limit for uploaded files.
+ Format: 10 - 10 bytes
+ 10k - 10 KB
+ 10m - 10 MB
+ 1g - 1 GB
+ </description>
+ </init-param>
+ </filter>
+
+ <!-- extension mapping for adding <script/>, <link/>, and other resource tags to JSF-pages -->
+ <filter-mapping>
+ <filter-name>MyFacesExtensionsFilter</filter-name>
+ <!-- servlet-name must match the name of your javax.faces.webapp.FacesServlet entry -->
+ <servlet-name>Faces Servlet</servlet-name>
+ </filter-mapping>
+
+ <!-- extension mapping for serving page-independent resources (javascript, stylesheets, images, etc.) -->
+ <filter-mapping>
+ <filter-name>MyFacesExtensionsFilter</filter-name>
+ <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
+ </filter-mapping>
+
<!-- Use Documents Saved as *.xhtml -->
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
Added: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_attach.xhtml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_attach.xhtml (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_attach.xhtml 2007-02-12 23:43:47 UTC (rev 9461)
@@ -0,0 +1,30 @@
+<div xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:c="http://java.sun.com/jstl/core"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:t="http://myfaces.apache.org/tomahawk">
+<ui:composition template="wiki_template.xhtml">
+
+ <ui:define name="content">
+ <h:panelGroup styleClass="wikiDiff">
+ <h:outputText value="#{wikiDiff.diff}" escape="false"/>
+ </h:panelGroup>
+
+ <h:form>
+ <t:inputFileUpload id="file"
+ value="#{wikiEdit.newFile}"
+ storage="file"
+ required="true"/>
+ <h:commandButton value="#{msg.addFile}" action="#{wikiEdit.addFile}" />
+ </h:form>
+
+ <h:form>
+ <h:commandLink action="goback">
+ <h:outputText value="#{msg.goback}" />
+ </h:commandLink>
+ </h:form>
+ </ui:define>
+
+</ui:composition>
+</div>
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_template.xhtml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_template.xhtml 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_template.xhtml 2007-02-12 23:43:47 UTC (rev 9461)
@@ -23,7 +23,8 @@
<f:loadBundle basename="Messages" var="msg"/>
-
+ <h:messages />
+
<ui:insert name="content" />
</body>
Modified: labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_view.xhtml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_view.xhtml 2007-02-12 22:59:12 UTC (rev 9460)
+++ labs/jbosslabs/trunk/portal-extensions/jbosswiki/forge-wiki/src/web/views/wiki_view.xhtml 2007-02-12 23:43:47 UTC (rev 9461)
@@ -17,7 +17,25 @@
</h:outputLink>
</h:panelGroup>
<h:panelGroup>
+ <h:outputLink value="#{wikiView.rssURL}">
+ <h:graphicImage value="#{wikiView.wikiImagesURL}#{msg.rssButton}"/>
+ </h:outputLink>
+ <h:outputLink value="#{wikiView.rdfURL}">
+ <h:graphicImage value="#{wikiView.wikiImagesURL}#{msg.rdfButton}"/>
+ </h:outputLink>
+ <h:outputLink value="#{wikiView.atomURL}">
+ <h:graphicImage value="#{wikiView.wikiImagesURL}#{msg.atomButton}"/>
+ </h:outputLink>
<h:form>
+ <h:commandLink action="recentChanges">
+ <f:param name="type" value="recentChanges" />
+ <h:graphicImage value="#{wikiView.wikiImagesURL}#{msg.recentButton}"/>
+ </h:commandLink>
+ </h:form>
+ <h:form rendered="#{wikiCommon.userLoggedIn}">
+ <h:commandLink action="attach">
+ <h:graphicImage value="#{wikiView.wikiImagesURL}#{msg.attachButton}"/>
+ </h:commandLink>
<h:commandLink action="edit">
<h:graphicImage value="#{wikiView.wikiImagesURL}#{msg.editButton}"/>
</h:commandLink>
More information about the jboss-svn-commits
mailing list