[jboss-cvs] JBossBlog SVN: r232 - in trunk: src/model/org/jboss/blog/model and 6 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Mar 1 11:36:20 EST 2008


Author: adamw
Date: 2008-03-01 11:36:20 -0500 (Sat, 01 Mar 2008)
New Revision: 232

Modified:
   trunk/src/action/org/jboss/blog/session/group/GroupModBean.java
   trunk/src/model/org/jboss/blog/model/Group.java
   trunk/src/model/org/jboss/blog/model/feed/Feed.java
   trunk/src/tools/org/jboss/blog/tools/StringTools.java
   trunk/view/common/ajax_status.xhtml
   trunk/view/manage/feed_mod.xhtml
   trunk/view/manage/group/group_mod.xhtml
   trunk/view/view/feed.xhtml
   trunk/view/view/post.xhtml
Log:


Modified: trunk/src/action/org/jboss/blog/session/group/GroupModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/group/GroupModBean.java	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/src/action/org/jboss/blog/session/group/GroupModBean.java	2008-03-01 16:36:20 UTC (rev 232)
@@ -7,6 +7,7 @@
 import org.jboss.seam.core.Events;
 import org.jboss.blog.model.Group;
 import org.jboss.blog.service.GroupsService;
+import org.jboss.blog.tools.StringTools;
 
 import javax.persistence.EntityManager;
 import javax.faces.application.FacesMessage;
@@ -41,6 +42,8 @@
 
     @Restrict("#{identity.hasPermission('group', 'add')}")
     public void saveNew() {
+        group.setHeader(StringTools.fixHtml(group.getHeader()));
+
         entityManager.persist(group);
         entityManager.flush();
 
@@ -52,6 +55,8 @@
 
     @Restrict("#{identity.hasPermission('group', 'edit', groupMod.group)}")
     public void saveExisting() {
+        group.setHeader(StringTools.fixHtml(group.getHeader()));
+        
         entityManager.flush();
 
         facesMessages.addFromResourceBundle(FacesMessage.SEVERITY_INFO, "blog.group.updated", group.getDisplayName(),

Modified: trunk/src/model/org/jboss/blog/model/Group.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Group.java	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/src/model/org/jboss/blog/model/Group.java	2008-03-01 16:36:20 UTC (rev 232)
@@ -30,6 +30,9 @@
     @Length(max = 32)
     private String displayName;
 
+    @Lob
+    private String header;
+
     public Integer getId() {
         return id;
     }
@@ -54,6 +57,14 @@
         this.displayName = displayName;
     }
 
+    public String getHeader() {
+        return header;
+    }
+
+    public void setHeader(String header) {
+        this.header = header;
+    }
+
     public boolean equals(Object o) {
         if (this == o) return true;
         if (!(o instanceof Group)) return false;

Modified: trunk/src/model/org/jboss/blog/model/feed/Feed.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/feed/Feed.java	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/src/model/org/jboss/blog/model/feed/Feed.java	2008-03-01 16:36:20 UTC (rev 232)
@@ -19,11 +19,11 @@
  * @author <a href="mailto:adam at warski.org">Adam Warski</a>
  */
 @Entity
- at Inheritance(strategy = InheritanceType.SINGLE_TABLE)
+ at Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
 @Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
 public class Feed implements RestrictedFeed {
     @Id
-    @GeneratedValue
+    @GeneratedValue(strategy = GenerationType.TABLE)
     @Column(updatable = false)
     private Integer id;
 

Modified: trunk/src/tools/org/jboss/blog/tools/StringTools.java
===================================================================
--- trunk/src/tools/org/jboss/blog/tools/StringTools.java	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/src/tools/org/jboss/blog/tools/StringTools.java	2008-03-01 16:36:20 UTC (rev 232)
@@ -66,12 +66,23 @@
     }
 
     public static String fixHtml(String html) {
+        if (isEmpty(html)) {
+            return html;
+        }
+
         HtmlCleaner cleaner = new HtmlCleaner("<div>" + html + "</div>");
         try {
             cleaner.setOmitHtmlEnvelope(true);
             cleaner.setOmitXmlDeclaration(true);
             cleaner.clean();
-            return cleaner.getXmlAsString().trim();
+
+            String ret = cleaner.getXmlAsString().trim();
+
+            // Removing the <div> and </div>
+            ret = ret.substring(5);
+            ret = ret.substring(0, ret.length()-6);
+
+            return ret;
         } catch (IOException e) {
             return html;
         }

Modified: trunk/view/common/ajax_status.xhtml
===================================================================
--- trunk/view/common/ajax_status.xhtml	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/view/common/ajax_status.xhtml	2008-03-01 16:36:20 UTC (rev 232)
@@ -9,7 +9,7 @@
                 xmlns:a="http://richfaces.org/a4j">
     <a:status stopStyleClass="ajaxStatus" startStyleClass="ajaxStatus">
         <f:facet name="start">
-            <img src="/blog/images/wait.gif" alt="" /> Please wait ...
+            <img src="/blogs/images/wait.gif" alt="" /> Please wait ...
         </f:facet>
         <f:facet name="stop">
         </f:facet>

Modified: trunk/view/manage/feed_mod.xhtml
===================================================================
--- trunk/view/manage/feed_mod.xhtml	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/view/manage/feed_mod.xhtml	2008-03-01 16:36:20 UTC (rev 232)
@@ -91,7 +91,7 @@
         <h:message for="group" styleClass="error" />
     </a:outputPanel>
 
-    <span><s:link value="Add new group" action="#{groupMod.add}" /></span>
+    <span><br /><s:link value="Add new group" action="#{groupMod.add}" /></span>
 </h:panelGroup>
 
 <h:outputLabel for="maxPostsInFeed">

Modified: trunk/view/manage/group/group_mod.xhtml
===================================================================
--- trunk/view/manage/group/group_mod.xhtml	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/view/manage/group/group_mod.xhtml	2008-03-01 16:36:20 UTC (rev 232)
@@ -8,6 +8,15 @@
                 xmlns:rich="http://richfaces.org/rich"
                 xmlns:blog="http://jboss.org/blog/tags"
                 xmlns:a="http://richfaces.org/a4j">
+    <div class="QuickstartMargin" id="QuickStart">
+        <ul>
+            <li>
+                <p>Header is an optional piece of HTML that will be displayed on the top of the page when
+                    viewing feeds/posts from that group.</p>
+            </li>
+        </ul>
+    </div>
+
     <div class="adminforms">
         <h:form>
             <h:panelGrid columns="2">
@@ -35,6 +44,18 @@
                         <h:message for="displayName" styleClass="error" />
                     </a:outputPanel>
                 </h:panelGroup>
+
+                <h:outputLabel for="header">Header:</h:outputLabel>
+                <h:panelGroup>
+                    <h:inputTextarea id="header" value="#{groupMod.group.header}" rows="25" cols="60">
+                        <a:support event="onblur" reRender="headerMessage" ajaxSingle="true" bypassUpdates="true"/>
+                        <s:validate />
+                    </h:inputTextarea>
+
+                    <a:outputPanel id="headerMessage">
+                        <h:message for="header" styleClass="error" />
+                    </a:outputPanel>
+                </h:panelGroup>
             </h:panelGrid>
 
             <div id="proceed" class="formbuttons">
@@ -50,10 +71,23 @@
                         </li>
                     </s:fragment>
                     <li>
+                        <a:commandButton value="Update preview" reRender="preview,displayNameMessage,nameMessage"
+                                         styleClass="submit" />
+                    </li>
+                    <li>
                         <s:button value="Cancel" action="#{groupMod.cancel}" styleClass="submit" />
                     </li>
+                    <li>
+                        <ui:include src="../../common/ajax_status.xhtml" />
+                    </li>
                 </ul>
             </div>
+
+            <s:div styleClass="formbuttons" id="preview">
+                Preview of the header: <br />
+
+                <h:outputText value="#{groupMod.group.header}" escape="false" />
+            </s:div>
         </h:form>
     </div>
 </ui:composition>

Modified: trunk/view/view/feed.xhtml
===================================================================
--- trunk/view/view/feed.xhtml	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/view/view/feed.xhtml	2008-03-01 16:36:20 UTC (rev 232)
@@ -19,6 +19,10 @@
     </ui:define>
 
     <ui:define name="body">
+        <s:div rendered="#{not empty feedView.feed.group.header}">
+            <h:outputText value="#{feedView.feed.group.header}" escape="false" />
+        </s:div>
+
         <div class="blogContent">
             <ui:include src="feed_toolbar.xhtml" />
 

Modified: trunk/view/view/post.xhtml
===================================================================
--- trunk/view/view/post.xhtml	2008-03-01 15:01:26 UTC (rev 231)
+++ trunk/view/view/post.xhtml	2008-03-01 16:36:20 UTC (rev 232)
@@ -13,6 +13,10 @@
     </ui:define>
 
     <ui:define name="body">
+        <s:div rendered="#{not empty postView.post.feed.group.header}">
+            <h:outputText value="#{postView.post.feed.group.header}" escape="false" />
+        </s:div>
+        
         <div class="blogContent">
             <div class="blogFeedNav">
                 <ul>




More information about the jboss-cvs-commits mailing list