[jboss-cvs] jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments ...
Christian Bauer
christian at hibernate.org
Wed Apr 18 11:34:29 EDT 2007
User: cbauer
Date: 07/04/18 11:34:29
Modified: examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments
Comment.java CommentHome.java
Added: examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments
CommentsPreferences.java
Log:
Disabled broken stuff (RichFaces trees, arithmetic EL) and finished comments plugin
Revision Changes Path
1.2 +0 -14 jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments/Comment.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: Comment.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments/Comment.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- Comment.java 5 Apr 2007 14:38:25 -0000 1.1
+++ Comment.java 18 Apr 2007 15:34:29 -0000 1.2
@@ -30,10 +30,6 @@
@Length(min = 3, max = 255)
private String subject;
- @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
- @JoinColumn(name = "FROM_USER_ID", nullable = true)
- private User fromUser;
-
@Column(name = "FROM_USER_NAME", nullable = false)
@Length(min = 3, max = 100)
private String fromUserName;
@@ -81,12 +77,10 @@
}
public String getFromUserName() {
- System.out.println("########## GET COMMENT FROM: " +fromUserName);
return fromUserName;
}
public void setFromUserName(String fromUserName) {
- System.out.println("########## SET COMMENT FROM: " +fromUserName);
this.fromUserName = fromUserName;
}
@@ -106,14 +100,6 @@
this.fromUserHomepage = fromUserHomepage;
}
- public User getFromUser() {
- return fromUser;
- }
-
- public void setFromUser(User fromUser) {
- this.fromUser = fromUser;
- }
-
public String getText() {
return text;
}
1.3 +10 -48 jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments/CommentHome.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: CommentHome.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments/CommentHome.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- CommentHome.java 8 Apr 2007 15:10:36 -0000 1.2
+++ CommentHome.java 18 Apr 2007 15:34:29 -0000 1.3
@@ -8,7 +8,6 @@
import org.jboss.seam.wiki.core.model.User;
import org.jboss.seam.wiki.core.model.Directory;
import org.jboss.seam.wiki.core.action.prefs.WikiPreferences;
-import org.jboss.seam.wiki.core.engine.WikiLinkResolver;
import org.jboss.seam.wiki.util.WikiUtil;
import javax.persistence.EntityManager;
@@ -39,29 +38,28 @@
@In
User guestUser;
+ @In("#{commentsPreferences.properties['listAscending']}")
+ boolean listCommentsAscending;
+
private Comment comment;
private List<Comment> comments;
- private String formContent;
- private boolean enabledPreview = false;
-
@Create
public void initialize() {
- System.out.println("########################### CREATE COMMENT HOME ##################################");
-
refreshComments();
}
- //@Observer("Preferences.blogDirectoryPreferences")
+ @Observer("Preferences.commentsPreferences")
@Transactional
public void refreshComments() {
- System.out.println("########################### REFRESH COMMENTS ##################################");
entityManager.joinTransaction();
comments = new ArrayList<Comment>();
+
//noinspection unchecked
comments = entityManager
- .createQuery("select c from Comment c where c.document is :doc order by c.createdOn asc")
+ .createQuery("select c from Comment c where c.document is :doc" +
+ " order by c.createdOn " + (listCommentsAscending ? "asc" : "desc") )
.setParameter("doc", currentDocument)
.getResultList();
@@ -74,19 +72,16 @@
? ((WikiPreferences)Component.getInstance("wikiPreferences")).getBaseUrl()+WikiUtil.renderHomeURL(currentUser)
: null);
}
- formContent = null;
+
+ // Default to title of document as subject
+ comment.setSubject(currentDocument.getName());
}
@Transactional
public void persist() {
- System.out.println("###################################### PERSIST #####################################");
-
- syncFormToInstance(currentDirectory);
entityManager.joinTransaction();
comment.setDocument(entityManager.merge(currentDocument));
- if (!currentUser.getId().equals(guestUser.getId()))
- comment.setFromUser(entityManager.merge(currentUser));
// Null out the property so that the @Email validator doesn't fall over it...
// I hate JSF and it's "let's set an empty string" behavior
@@ -136,37 +131,4 @@
return comments;
}
- /* Wiki text editing */
-
- public String getFormContent() {
- // Load the text content and resolve links
- if (formContent == null) syncInstanceToForm(currentDirectory);
- return formContent;
- }
-
- public void setFormContent(String formContent) {
- this.formContent = formContent;
- }
-
- private void syncFormToInstance(Directory dir) {
- WikiLinkResolver wikiLinkResolver = (WikiLinkResolver)Component.getInstance("wikiLinkResolver");
- comment.setText(
- wikiLinkResolver.convertToWikiProtocol(dir.getAreaNumber(), formContent)
- );
- }
-
- private void syncInstanceToForm(Directory dir) {
- WikiLinkResolver wikiLinkResolver = (WikiLinkResolver)Component.getInstance("wikiLinkResolver");
- formContent = wikiLinkResolver.convertFromWikiProtocol(dir.getAreaNumber(), comment.getText());
- }
-
- public boolean isEnabledPreview() {
- return enabledPreview;
- }
-
- public void setEnabledPreview(boolean enabledPreview) {
- this.enabledPreview = enabledPreview;
- syncFormToInstance(currentDirectory);
- }
-
}
1.1 date: 2007/04/18 15:34:29; author: cbauer; state: Exp;jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/plugin/comments/CommentsPreferences.java
Index: CommentsPreferences.java
===================================================================
package org.jboss.seam.wiki.plugin.comments;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Observer;
import org.jboss.seam.ScopeType;
import org.jboss.seam.wiki.preferences.Preference;
import org.jboss.seam.wiki.preferences.PreferenceVisibility;
import org.jboss.seam.wiki.preferences.PreferenceSupport;
import org.hibernate.validator.Range;
import java.io.Serializable;
@Name("commentsPreferences")
@Scope(ScopeType.CONVERSATION)
@Preference(description = "E. Plugin: Visitor Comments", visibility = PreferenceVisibility.INSTANCE)
public class CommentsPreferences extends PreferenceSupport implements Serializable {
public String getCurrentUserVariable() { return "currentUser"; }
public String getCurrentInstanceVariable() { return "currentDocument"; }
@Observer("PreferenceEditor.refresh.commentsPreferences")
public void refreshProperties() { super.refreshProperties(); }
@Preference(description = "01. List comments ascending by date (or descending)", visibility = PreferenceVisibility.INSTANCE)
private boolean listAscending;
}
More information about the jboss-cvs-commits
mailing list