[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<org.jboss.blog.model.Post> -
- 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<org.jboss.blog.model.Post> -
+ 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