[jboss-cvs] JBossBlog SVN: r194 - in trunk: src/action/org/jboss/blog/session/feed/mod and 10 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Feb 6 12:21:00 EST 2008


Author: adamw
Date: 2008-02-06 12:21:00 -0500 (Wed, 06 Feb 2008)
New Revision: 194

Modified:
   trunk/resources/messages_en.properties
   trunk/src/action/org/jboss/blog/session/feed/mod/RemoteFeedModBean.java
   trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
   trunk/view/home.xhtml
   trunk/view/layout/template.xhtml
   trunk/view/manage/aggregated/aggregated_mod.xhtml
   trunk/view/manage/aggregated/filter_add.xhtml
   trunk/view/manage/feed_mod.xhtml
   trunk/view/manage/group/group_list.xhtml
   trunk/view/manage/index.xhtml
   trunk/view/manage/proposition/proposition_list.xhtml
   trunk/view/manage/remote/remote_mod.xhtml
   trunk/view/manage/template/template_list.xhtml
   trunk/view/manage/template/template_mod.xhtml
   trunk/view/stylesheet/blog.css
   trunk/view/stylesheet/org_main.css
Log:


Modified: trunk/resources/messages_en.properties
===================================================================
--- trunk/resources/messages_en.properties	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/resources/messages_en.properties	2008-02-06 17:21:00 UTC (rev 194)
@@ -99,6 +99,7 @@
 blog.template.new.existingname=A template with that name already exists.
 
 blog.feed.remote.updated=Remote feed's {0} address changed.
+blog.feed.remote.invalid=Property: #0, #1.
 
 blog.feed.aggregated.updated=Aggregated feed {0} changed.
 

Modified: trunk/src/action/org/jboss/blog/session/feed/mod/RemoteFeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/feed/mod/RemoteFeedModBean.java	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/src/action/org/jboss/blog/session/feed/mod/RemoteFeedModBean.java	2008-02-06 17:21:00 UTC (rev 194)
@@ -98,7 +98,7 @@
             if (invalidValues.length != 0) {
                 for (InvalidValue invalidValue : invalidValues) {
                     facesMessages.addToControlFromResourceBundle("link", FacesMessage.SEVERITY_ERROR,
-                            "Property: #0, error: #1", invalidValue.getPropertyName(), invalidValue.getMessage());
+                            "blog.feed.remote.invalid", invalidValue.getPropertyName(), invalidValue.getMessage());
                 }
                 
                 throw new ParserException("Posts are missing some information.");

Modified: trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java	2008-02-06 17:21:00 UTC (rev 194)
@@ -80,6 +80,8 @@
                     SyndEntry entry = (SyndEntry) entryObj;
                     Post post = new Post();
 
+                    post.setFeed(feed);
+
                     post.setAuthor(StringTools.isEmpty(entry.getAuthor()) ? feed.getAuthor() : entry.getAuthor());
 
                     // Setting content

Modified: trunk/view/home.xhtml
===================================================================
--- trunk/view/home.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/home.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -25,7 +25,7 @@
 
         <table cellspacing="5" class="deftable" width="75%">
             <ui:repeat var="group" value="#{feedsService.allGroups}">
-                <s:fragment rendered="#{groupsService.acceptedFeeds(group).size() > 1}">
+                <s:fragment rendered="#{groupsService.acceptedFeeds(group).size() > 0}">
                     <tr>
                         <td class="term" width="15%">#{group.displayName}</td>
                         <td class="def">

Modified: trunk/view/layout/template.xhtml
===================================================================
--- trunk/view/layout/template.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/layout/template.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -25,7 +25,7 @@
             </div>
             <div id="orghomemaximized">
                 <div>
-                    <h:messages globalOnly="true"
+                    <h:messages globalOnly="true" 
                                 style="margin-bottom:12px; padding:15px; background-color:#fef9e6; border: 1px solid #f9ba82;"/>
                 </div>
 

Modified: trunk/view/manage/aggregated/aggregated_mod.xhtml
===================================================================
--- trunk/view/manage/aggregated/aggregated_mod.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/aggregated/aggregated_mod.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -44,16 +44,15 @@
                 Local filters, applied only to this feed:
             </f:facet>
             <h:panelGroup rendered="#{aggregatedFeedMod.selectedFeeds[feed]}">
-                <h:dataTable value="#{aggregatedFeedMod.selectedFeedsFilters[feed]}" var="filter">
-                    <h:column>
-                        #{filter}
-                    </h:column>
-                    <h:column>
-                        <h:commandButton
-                                action="#{aggregatedFeedMod.removeFilter(aggregatedFeedMod.selectedFeedsFilters[feed],filter)}"
-                                value="Remove" />
-                    </h:column>
-                </h:dataTable>
+                <ul>
+                    <ui:repeat var="filter" value="#{aggregatedFeedMod.selectedFeedsFilters[feed]}">
+                        <li>
+                            #{filter}
+                            (<h:commandLink action="#{aggregatedFeedMod.removeFilter(aggregatedFeedMod.selectedFeedsFilters[feed],filter)}"
+                                            value="Remove" />)
+                        </li>
+                    </ui:repeat>
+                </ul>
 
                 <h:commandLink action="#{filterAdd.addToList(aggregatedFeedMod.selectedFeedsFilters[feed])}"
                                value="Add filter" />
@@ -84,16 +83,15 @@
                 Local filters, applied only to this group:
             </f:facet>
             <h:panelGroup rendered="#{aggregatedFeedMod.selectedGroups[group]}">
-                <h:dataTable value="#{aggregatedFeedMod.selectedGroupsFilters[group]}" var="filter">
-                    <h:column>
-                        #{filter}
-                    </h:column>
-                    <h:column>
-                        <h:commandButton
-                                action="#{aggregatedFeedMod.removeFilter(aggregatedFeedMod.selectedGroupsFilters[group],filter)}"
-                                value="Remove" />
-                    </h:column>
-                </h:dataTable>
+                <ul>
+                    <ui:repeat var="filter" value="#{aggregatedFeedMod.selectedGroupsFilters[group]}">
+                        <li>
+                            #{filter}
+                            (<h:commandLink action="#{aggregatedFeedMod.removeFilter(aggregatedFeedMod.selectedGroupsFilters[group],filter)}"
+                                            value="Remove" />)
+                        </li>
+                    </ui:repeat>
+                </ul>
 
                 <h:commandLink action="#{filterAdd.addToList(aggregatedFeedMod.selectedGroupsFilters[group])}"
                                value="Add filter" />
@@ -104,20 +102,17 @@
 
 <h4>Global filters, applied to all feeds:</h4>
 
-<h:panelGroup>
-    <h:dataTable value="#{aggregatedFeedMod.globalFilters}" var="filter">
-        <h:column>
+<ul>
+    <ui:repeat var="filter" value="#{aggregatedFeedMod.globalFilters}">
+        <li>
             #{filter}
-        </h:column>
-        <h:column>
-            <h:commandButton
-                    action="#{aggregatedFeedMod.removeFilter(aggregatedFeedMod.globalFilters,filter)}"
-                    value="Remove" />
-        </h:column>
-    </h:dataTable>
+            (<h:commandLink action="#{aggregatedFeedMod.removeFilter(aggregatedFeedMod.globalFilters,filter)}"
+                            value="Remove" />)
+        </li>
+    </ui:repeat>
+</ul>
 
-    <h:commandLink action="#{filterAdd.addToList(aggregatedFeedMod.globalFilters)}" value="Add filter" />
-</h:panelGroup>
+<h:commandLink action="#{filterAdd.addToList(aggregatedFeedMod.globalFilters)}" value="Add filter" />
 
 <div id="proceed" class="formbuttons">
     <ul>

Modified: trunk/view/manage/aggregated/filter_add.xhtml
===================================================================
--- trunk/view/manage/aggregated/filter_add.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/aggregated/filter_add.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -13,45 +13,66 @@
     </ui:define>
 
     <ui:define name="body">
-        <h:panelGroup>
-            <h5>Only entries with enclosures filter (podcast)</h5>
-            <h:form>
-                <h:commandButton value="Add" action="#{filterAdd.add(filterAdd.podcastFilter)}"/>
-            </h:form>
-        </h:panelGroup>
+        <div class="adminforms">
+            <table class="basetablestyle" cellspacing="0" cellpadding="4">
+                <tr>
+                    <th class="header tableHeader">Filter function</th>
+                    <th class="header tableHeader">Configure/add</th>
+                </tr>
+                <tr class="oddRow">
+                    <td>Only entries with enclosures filter (podcast)</td>
+                    <td>
+                        <h:form>
+                            <h:commandButton value="Add" action="#{filterAdd.add(filterAdd.podcastFilter)}"
+                                    styleClass="submit" />
+                        </h:form>
+                    </td>
+                </tr>
+                <tr class="evenRow">
+                    <td>Only entries without enclosure filter (not-podcast)</td>
+                    <td>
+                        <h:form>
+                            <h:commandButton value="Add" action="#{filterAdd.add(filterAdd.notPodcastFilter)}"
+                                    styleClass="submit" />
+                        </h:form>
+                    </td>
+                </tr>
+                <tr class="oddRow">
+                    <td>Only entries whose author matches a regular expression</td>
+                    <td>
+                        <h:form>
+                                <h:outputLabel for="author">
+                                    <span class="required">*</span> Regular expression:
+                                </h:outputLabel>
+                                <br />
+                                <h:panelGroup>
+                                    <h:inputText id="author" value="#{filterAdd.authorRegexpFilter.regexp}" required="true" size="16">
+                                        <a:support event="onblur" reRender="authorMessage" ajaxSingle="true" bypassUpdates="true"/>
+                                        <s:validate />
+                                    </h:inputText>
 
-        <h:panelGroup>
-            <h5>Only entries without enclosure filter (not-podcast)</h5>
-            <h:form>
-                <h:commandButton value="Add" action="#{filterAdd.add(filterAdd.notPodcastFilter)}"/>
-            </h:form>
-        </h:panelGroup>
+                                    <a:outputPanel id="authorMessage">
+                                        <h:message for="author" styleClass="error" />
+                                    </a:outputPanel>
+                                </h:panelGroup>
+                                <br />
+                                <h:commandButton value="Add" action="#{filterAdd.add(filterAdd.authorRegexpFilter)}"
+                                    styleClass="submit" />
+                        </h:form>
+                    </td>
+                </tr>
+            </table>
 
-        <h:panelGroup>
-            <h5>Only entries whose author matches a regular expression</h5>
             <h:form>
-                <h:panelGrid>
-                    <h:outputLabel for="author"><span class="required">*</span> Regular expression:</h:outputLabel>
-                    <h:panelGroup>
-                        <h:inputText id="author" value="#{filterAdd.authorRegexpFilter.regexp}" required="true" size="16">
-                            <a:support event="onblur" reRender="authorMessage" ajaxSingle="true" bypassUpdates="true"/>
-                            <s:validate />
-                        </h:inputText>
+                <div id="proceed" class="formbuttons">
+                    <ul>
+                        <li>
+                            <h:commandButton value="Cancel" action="#{filterAdd.cancel}" styleClass="submit"/>
 
-                        <a:outputPanel id="authorMessage">
-                            <h:message for="author" styleClass="error" />
-                        </a:outputPanel>
-                    </h:panelGroup>
-
-                    <h:commandButton value="Add" action="#{filterAdd.add(filterAdd.authorRegexpFilter)}"/>
-                </h:panelGrid>
+                        </li>
+                    </ul>
+                </div>
             </h:form>
-        </h:panelGroup>
-
-        <h:panelGroup>
-            <h:form>
-                <h:commandButton value="Cancel" action="#{filterAdd.cancel}"/>
-            </h:form>
-        </h:panelGroup>
+        </div>
     </ui:define>
 </ui:composition>

Modified: trunk/view/manage/feed_mod.xhtml
===================================================================
--- trunk/view/manage/feed_mod.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/feed_mod.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -166,15 +166,12 @@
     </ul>
 </div>
 
-<h3>Posts preview:</h3>
-
-<h:panelGroup rendered="#{feedMod.feed.posts.size() == 0}">
-    This feed doesn't have any posts. Unable to preview.
-</h:panelGroup>
 <h:panelGroup rendered="#{feedMod.feed.posts.size() > 0}">
+    <h3>Post data preview:</h3>
+    
     <h:dataTable value="#{feedMod.feed.posts}" var="post" rows="1">
         <h:column>
-            <h:panelGrid columns="2">
+            <h:panelGrid columns="2" columnClasses="bold,empty" rowClasses="oddRow,evenRow" styleClass="basetablestyle">
                 <h:outputText value="Title:" />
                 <h:outputText value="#{post.title}" />
 

Modified: trunk/view/manage/group/group_list.xhtml
===================================================================
--- trunk/view/manage/group/group_list.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/group/group_list.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -6,29 +6,46 @@
                 xmlns:f="http://java.sun.com/jsf/core"
                 xmlns:h="http://java.sun.com/jsf/html"
                 xmlns:rich="http://richfaces.org/rich"
+                xmlns:a="http://richfaces.org/a4j"
                 template="../../layout/template.xhtml">
     <ui:define name="header">
         Manage groups
     </ui:define>
 
     <ui:define name="body">
-        <s:link value="Add new group" action="#{groupMod.add}" />
+        <div class="adminlist">
+            <dl>
+                <dd><s:link value="Add new group" action="#{groupMod.add}" /></dd>
+                <dt>Current groups:</dt>
+                <hr />
+            </dl>
+        </div>
 
-        <h3>Current groups:</h3>
+        <table border="0" cellpadding="4" cellspacing="0" class="basetablestyle" style="margin-top:12px;">
+            <tr class="header">
+                <td class="tableheaderfirst" style="width:160px;">Group display name</td>
+                <td class="tableheader">Group name</td>
+                <td class="tableheader" />
+                <td class="tableheader" />
+            </tr>
 
-        <ui:repeat var="group" value="#{feedsService.allGroups}">
-            <p>
-                #{group.displayName} (#{group.name})
-                <br />
-                <s:link action="#{groupMod.edit}" value="Edit">
-                    <f:param name="id" value="#{group.id}" />
-                </s:link>
-                <br />
-                <s:link view="/manage/group/group_delete.xhtml" action="#{groupMod.delete}" value="Delete"
-                        onclick="if (!confirm('Are you sure you want to delete this group?')) return false">
-                    <f:param name="id" value="#{group.id}" />
-                </s:link>
-            </p>
-        </ui:repeat>
+            <a:repeat var="group" value="#{feedsService.allGroups}" rowKeyVar="rowNumber">
+                <tr class="#{(rowNumber%2 == 0) ? 'evenRow' : 'oddRow'}">
+                    <td class="rowlinefirst" style="font-weight:bold;">#{group.displayName}</td>
+                    <td class="rowline">#{group.name}</td>
+                    <td class="rowline">
+                    <s:link action="#{groupMod.edit}" value="Edit">
+                        <f:param name="id" value="#{group.id}" />
+                    </s:link>
+                    </td>
+                    <td class="rowline">
+                    <s:link view="/manage/group/group_delete.xhtml" action="#{groupMod.delete}" value="Delete"
+                            onclick="if (!confirm('Are you sure you want to delete this group?')) return false">
+                        <f:param name="id" value="#{group.id}" />
+                    </s:link>
+                    </td>
+                </tr>
+            </a:repeat>
+        </table>
     </ui:define>
 </ui:composition>

Modified: trunk/view/manage/index.xhtml
===================================================================
--- trunk/view/manage/index.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/index.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -42,7 +42,7 @@
             </tr>
 
             <ui:repeat var="group" value="#{feedsService.allGroups}">
-                <s:fragment rendered="#{groupsService.acceptedFeeds(group).size() > 1}">
+                <s:fragment rendered="#{groupsService.acceptedFeeds(group).size() > 0}">
                     <tr>
                         <td colspan="7" class="categoryRow">#{group.displayName}</td>
                     </tr>

Modified: trunk/view/manage/proposition/proposition_list.xhtml
===================================================================
--- trunk/view/manage/proposition/proposition_list.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/proposition/proposition_list.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -6,25 +6,54 @@
                 xmlns:f="http://java.sun.com/jsf/core"
                 xmlns:h="http://java.sun.com/jsf/html"
                 xmlns:rich="http://richfaces.org/rich"
+                xmlns:a="http://richfaces.org/a4j"
                 template="../../layout/template.xhtml">
     <ui:define name="header">
         Manage feed propositions
     </ui:define>
 
     <ui:define name="body">
-        <ui:repeat var="group" value="#{feedsService.allGroups}">
-            <s:fragment rendered="#{groupsService.unacceptedFeeds(group).size() > 1}">
-                <p>#{group.displayName}</p>
-            </s:fragment>
+        <table border="0" width="100%" cellpadding="0" cellspacing="0" class="basetablestyle" style="margin-top:12px;">
+            <tr class="header">
+                <td class="tableheaderfirst" style="width:160px;">Feed title</td>
+                <td class="tableheader">Feed name</td>
+                <td class="tableheader">Feed address</td>
+                <td class="tableheader">Accept the feed</td>
+                <td class="tableheader">Delete the feed</td>
+            </tr>
 
-            <ui:repeat var="feed" value="#{groupsService.unacceptedFeeds(group)}">
-                #{feed.title} (#{feed.name}) <br />
-                Feed address: <h:outputLink value="#{feed.remoteLink}">#{feed.remoteLink}</h:outputLink> <br />
+            <ui:repeat var="group" value="#{feedsService.allGroups}">
+                <s:fragment>
+                    <tr>
+                        <td colspan="7" class="categoryRow">#{group.displayName}</td>
+                    </tr>
 
-                <s:link view="/manage/proposition/proposition_accept.xhtml" value="Accept">
-                    <f:param name="name" value="#{feed.name}" />
-                </s:link>
+                    <s:fragment rendered="#{groupsService.unacceptedFeeds(group).size() == 0}">
+                        <tr>
+                            <td colspan="7">There are no pending feed propositions.</td>
+                        </tr>
+                    </s:fragment>
+
+                    <a:repeat var="feed" value="#{groupsService.unacceptedFeeds(group)}" rowKeyVar="rowNumber">
+                        <tr class="#{(rowNumber%2 == 0) ? 'evenRow' : 'oddRow'}">
+                            <td class="rowlinefirst" style="font-weight:bold;">#{feed.title}</td>
+                            <td class="rowline">#{feed.name}</td>
+                            <td class="rowline"><h:outputLink value="#{feed.remoteLink}">#{feed.remoteLink}</h:outputLink></td>
+                            <td class="rowline">
+                                <s:link view="/manage/proposition/proposition_accept.xhtml" value="Accept">
+                                    <f:param name="name" value="#{feed.name}" />
+                                </s:link>
+                            </td>
+                            <td class="rowline">
+                                <s:link view="/manage/feed_delete.xhtml" action="#{feedMod.delete}" value="Delete"
+                                        onclick="if (!confirm('Are you sure you want to delete this feed?')) return false">
+                                    <f:param name="name" value="#{feed.name}" />
+                                </s:link>
+                            </td>
+                        </tr>
+                    </a:repeat>
+                </s:fragment>
             </ui:repeat>
-        </ui:repeat>
+        </table>
     </ui:define>
 </ui:composition>

Modified: trunk/view/manage/remote/remote_mod.xhtml
===================================================================
--- trunk/view/manage/remote/remote_mod.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/remote/remote_mod.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -45,9 +45,9 @@
                 </h:panelGroup>
             </h:panelGrid>
 
-            <div id="proceed" class="formbuttons">
+            <s:div id="proceed" styleClass="formbuttons">
                 <ul>
-                    <s:fragment>
+                    <s:fragment rendered="#{!remoteFeedMod.parseOk}">
                         <li>
                             <a:commandButton action="#{remoteFeedMod.parseFeed}" value="Read and parse the feed"
                                              styleClass="submit"
@@ -69,8 +69,11 @@
                     <li>
                         <s:button value="Cancel" view="/manage/index.html" propagation="end" styleClass="submit" />
                     </li>
+                    <li>
+                        <ui:include src="../../common/ajax_status.xhtml" />
+                    </li>
                 </ul>
-            </div>
+            </s:div>
         </h:form>
     </div>
 </ui:composition>

Modified: trunk/view/manage/template/template_list.xhtml
===================================================================
--- trunk/view/manage/template/template_list.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/template/template_list.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -6,29 +6,46 @@
                 xmlns:f="http://java.sun.com/jsf/core"
                 xmlns:h="http://java.sun.com/jsf/html"
                 xmlns:rich="http://richfaces.org/rich"
+                xmlns:a="http://richfaces.org/a4j"
                 template="../../layout/template.xhtml">
     <ui:define name="header">
         Manage templates
     </ui:define>
 
     <ui:define name="body">
-        <s:link value="Add new template" view="/manage/template/template_add.xhtml" />
+        <div class="adminlist">
+            <dl>
+                <dd><s:link value="Add new template" view="/manage/template/template_add.xhtml" /></dd>
+                <dt>Current templates:</dt>
+                <hr />
+            </dl>
+        </div>
 
-        <h3>Current templates:</h3>
+        <table border="0" cellpadding="4" cellspacing="0" class="basetablestyle" style="margin-top:12px;">
+            <tr class="header">
+                <td class="tableheaderfirst" style="width:160px;">Group display name</td>
+                <td class="tableheader">Group name</td>
+                <td class="tableheader" />
+                <td class="tableheader" />
+            </tr>
 
-        <ui:repeat var="template" value="#{templateService.allTemplates}">
-            <p>
-                #{template.name} (#{template.type})
-                <br />
-                <s:link view="/manage/template/template_edit.xhtml" value="Edit">
-                    <f:param name="id" value="#{template.id}" />
-                </s:link>
-                <br />
-                <s:link view="/manage/template/template_delete.xhtml" action="#{templateMod.delete}" value="Delete"
-                        onclick="if (!confirm('Are you sure you want to delete this template?')) return false">
-                    <f:param name="id" value="#{template.id}" />
-                </s:link>
-            </p>
-        </ui:repeat>
+            <a:repeat var="template" value="#{templateService.allTemplates}" rowKeyVar="rowNumber">
+                <tr class="#{(rowNumber%2 == 0) ? 'evenRow' : 'oddRow'}">
+                    <td class="rowlinefirst" style="font-weight:bold;">#{template.name}</td>
+                    <td class="rowline">#{template.type}</td>
+                    <td class="rowline">
+                        <s:link view="/manage/template/template_edit.xhtml" value="Edit">
+                            <f:param name="id" value="#{template.id}" />
+                        </s:link>
+                    </td>
+                    <td class="rowline">
+                        <s:link view="/manage/template/template_delete.xhtml" action="#{templateMod.delete}" value="Delete"
+                                onclick="if (!confirm('Are you sure you want to delete this template?')) return false">
+                            <f:param name="id" value="#{template.id}" />
+                        </s:link>
+                    </td>
+                </tr>
+            </a:repeat>
+        </table>
     </ui:define>
 </ui:composition>

Modified: trunk/view/manage/template/template_mod.xhtml
===================================================================
--- trunk/view/manage/template/template_mod.xhtml	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/manage/template/template_mod.xhtml	2008-02-06 17:21:00 UTC (rev 194)
@@ -8,79 +8,95 @@
                 xmlns:rich="http://richfaces.org/rich"
                 xmlns:blog="http://jboss.org/blog/tags"
                 xmlns:a="http://richfaces.org/a4j">
-    <h:form>
-        <h:panelGrid columns="2">
-            <h:outputLabel for="name"><span class="required">*</span> Name:</h:outputLabel>
-            <h:panelGroup>
-                <h:inputText id="name" value="#{templateMod.template.name}" required="true" size="32">
-                    <blog:uniqueTemplateNameValidator entityId="#{templateMod.template.id}" />
-                    <a:support event="onblur" reRender="nameMessage" ajaxSingle="true" bypassUpdates="true"/>
-                    <s:validate />
-                </h:inputText>
+    <div class="adminforms">
+        <h:form>
+            <h:panelGrid columns="2">
+                <h:outputLabel for="name"><span class="required">*</span> Name:</h:outputLabel>
+                <h:panelGroup>
+                    <h:inputText id="name" value="#{templateMod.template.name}" required="true" size="32">
+                        <blog:uniqueTemplateNameValidator entityId="#{templateMod.template.id}" />
+                        <a:support event="onblur" reRender="nameMessage" ajaxSingle="true" bypassUpdates="true"/>
+                        <s:validate />
+                    </h:inputText>
 
-                <a:outputPanel id="nameMessage">
-                    <h:message for="name" styleClass="error" />
-                </a:outputPanel>
-            </h:panelGroup>
+                    <a:outputPanel id="nameMessage">
+                        <h:message for="name" styleClass="error" />
+                    </a:outputPanel>
+                </h:panelGroup>
 
-            <h:outputLabel for="type"><span class="required">*</span> Template type:</h:outputLabel>
-            <h:panelGroup>
-                <h:selectOneMenu id="type" value="#{templateMod.template.type}" required="true">
-                    <s:enumItem enumValue="ATOM" />
-                    <s:enumItem enumValue="RSS2" />
-                    <s:convertEnum />
-                    <a:support event="onchange" reRender="typeMessage" ajaxSingle="true" />
-                    <s:validate />
-                </h:selectOneMenu>
+                <h:outputLabel for="type"><span class="required">*</span> Template type:</h:outputLabel>
+                <h:panelGroup>
+                    <h:selectOneMenu id="type" value="#{templateMod.template.type}" required="true"
+                            styleClass="selectnarrow">
+                        <s:enumItem enumValue="ATOM" />
+                        <s:enumItem enumValue="RSS2" />
+                        <s:convertEnum />
+                        <a:support event="onchange" reRender="typeMessage" ajaxSingle="true" />
+                        <s:validate />
+                    </h:selectOneMenu>
 
-                <a:outputPanel id="typeMessage">
-                    <h:message for="type" styleClass="error" />
-                </a:outputPanel>
-            </h:panelGroup>
+                    <a:outputPanel id="typeMessage">
+                        <h:message for="type" styleClass="error" />
+                    </a:outputPanel>
+                </h:panelGroup>
 
-            <h:outputLabel for="text"><span class="required">*</span> Text:</h:outputLabel>
-            <h:panelGroup>
-                <h:inputTextarea id="text" value="#{templateMod.template.text}" rows="32" cols="128" required="true">
-                    <a:support event="onblur" reRender="textMessage" ajaxSingle="true" bypassUpdates="true"/>
-                    <s:validate />
-                </h:inputTextarea>
+                <h:outputLabel for="text"><span class="required">*</span> Text:</h:outputLabel>
+                <h:panelGroup>
+                    <h:inputTextarea id="text" value="#{templateMod.template.text}" rows="32" cols="80" required="true">
+                        <a:support event="onblur" reRender="textMessage" ajaxSingle="true" bypassUpdates="true"/>
+                        <s:validate />
+                    </h:inputTextarea>
 
-                <a:outputPanel id="textMessage">
-                    <h:message for="text" styleClass="error" />
-                </a:outputPanel>
-            </h:panelGroup>
+                    <a:outputPanel id="textMessage">
+                        <h:message for="text" styleClass="error" />
+                    </a:outputPanel>
+                </h:panelGroup>
+            </h:panelGrid>
 
-            <h:outputLabel />
-            <h:panelGroup>
-                <h:commandButton value="Add" action="#{templateMod.saveNew}" rendered="#{new}" />
-                <h:commandButton value="Save" action="#{templateMod.saveExisting}" rendered="#{!new}" />
-                <s:button value="Cancel" view="/manage/template/template_list.xhtml" propagation="end" />
-            </h:panelGroup>
-        </h:panelGrid>
-    </h:form>
 
-    <p>
-        When creating a template, the context contains the following variables:
-    </p>
-    <ul>
-        <li>$feed - the <code>org.jboss.blog.model.Feed</code> object, for which the feed is being generated</li>
-        <li>$posts - a list of <code>org.jboss.blog.model.Post</code> objects, which is the list of posts
-        for the feed</li>
-        <li>$templateType - the type of the template being generated (one of the enum values
-        <code>org.jboss.blog.model.TemplateType</code>)</li>
-        <li>$tools - a utility object containing the following functions:
-            <ul>
-                <li>$tools.formatDate(java.util.Date) - formats the date using a format appropriate for this
-                template type</li>
-                <li>$tools.feedPubDate(org.jboss.blog.model.Feed, java.util.List&lt;org.jboss.blog.model.Post&gt; -
-                generates the feed publish date, which is the published date of the newest post</li>
-                <li>$tools.feedPageLink(org.jboss.blog.model.Feed) - generates a link to the html version of the
-                given feed</li>
-                <li>$tools.feedLink(org.jboss.blog.model.Feed, org.jboss.blog.model.TemplateType) - generates
-                a link to a feed of the given type</li>
-                <li>$tools.postLink(org.jboss.blog.model.Post) - generates a link to the html version of the
-                given post</li>
-            </ul>
-        </li>
-    </ul>
+            <div id="proceed" class="formbuttons">
+                <ul>
+                    <s:fragment rendered="#{new}">
+                        <li>
+                            <h:commandButton value="Add" action="#{templateMod.saveNew}" styleClass="submit" />
+                        </li>
+                    </s:fragment>
+                    <s:fragment rendered="#{!new}">
+                        <li>
+                            <h:commandButton value="Save" action="#{templateMod.saveExisting}" styleClass="submit" />
+                        </li>
+                    </s:fragment>
+                    <li>
+                        <s:button value="Cancel" view="/manage/template/template_list.xhtml" propagation="end"
+                                styleClass="submit" />
+                    </li>
+                </ul>
+            </div>
+        </h:form>
+
+        <p>
+            When creating a template, the context contains the following variables:
+        </p>
+        <ul>
+            <li>$feed - the <code>org.jboss.blog.model.Feed</code> object, for which the feed is being generated</li>
+            <li>$posts - a list of <code>org.jboss.blog.model.Post</code> objects, which is the list of posts
+                for the feed</li>
+            <li>$templateType - the type of the template being generated (one of the enum values
+                <code>org.jboss.blog.model.TemplateType</code>)</li>
+            <li>$tools - a utility object containing the following functions:
+                <ul>
+                    <li>$tools.formatDate(java.util.Date) - formats the date using a format appropriate for this
+                        template type</li>
+                    <li>$tools.feedPubDate(org.jboss.blog.model.Feed, java.util.List&lt;org.jboss.blog.model.Post&gt; -
+                        generates the feed publish date, which is the published date of the newest post</li>
+                    <li>$tools.feedPageLink(org.jboss.blog.model.Feed) - generates a link to the html version of the
+                        given feed</li>
+                    <li>$tools.feedLink(org.jboss.blog.model.Feed, org.jboss.blog.model.TemplateType) - generates
+                        a link to a feed of the given type</li>
+                    <li>$tools.postLink(org.jboss.blog.model.Post) - generates a link to the html version of the
+                        given post</li>
+                </ul>
+            </li>
+        </ul>
+    </div>
 </ui:composition>

Modified: trunk/view/stylesheet/blog.css
===================================================================
--- trunk/view/stylesheet/blog.css	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/stylesheet/blog.css	2008-02-06 17:21:00 UTC (rev 194)
@@ -96,7 +96,8 @@
 /* ---------------------  Admin list ------------------------ */
 
 .adminlist {
-    width: 200px
+    width: 200px;
+    margin-bottom: 0;
 }
 
 .adminlist h3 {
@@ -160,3 +161,11 @@
 span.required {
     color: red;
 }
+
+.bold {
+    font-weight: bold;
+}
+
+.empty {
+    
+}

Modified: trunk/view/stylesheet/org_main.css
===================================================================
--- trunk/view/stylesheet/org_main.css	2008-02-06 13:05:55 UTC (rev 193)
+++ trunk/view/stylesheet/org_main.css	2008-02-06 17:21:00 UTC (rev 194)
@@ -606,7 +606,7 @@
 	width: 170px;
 }
 
-.singlecolumn input, textarea, select {
+.singlecolumn input, select {
 	width: 300px;
 }
 .adminforms .contentarrows ul {




More information about the jboss-cvs-commits mailing list