[jboss-cvs] JBossBlog SVN: r139 - in trunk: resources/WEB-INF and 9 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Nov 26 12:44:46 EST 2007


Author: adamw
Date: 2007-11-26 12:44:46 -0500 (Mon, 26 Nov 2007)
New Revision: 139

Added:
   trunk/src/action/org/jboss/blog/session/category/
   trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java
   trunk/src/action/org/jboss/blog/tools/Pair.java
   trunk/src/model/org/jboss/blog/model/Category.java
Removed:
   trunk/src/model/org/jboss/blog/model/Blog.java
Modified:
   trunk/resources/META-INF/persistence-dev.xml
   trunk/resources/WEB-INF/pages.xml
   trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java
   trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java
   trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java
   trunk/src/action/org/jboss/blog/session/parser/ParserService.java
   trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
   trunk/src/model/org/jboss/blog/model/Feed.java
   trunk/src/model/org/jboss/blog/model/Post.java
   trunk/view/manage/feed_mod.xhtml
   trunk/view/manage/index.xhtml
Log:


Modified: trunk/resources/META-INF/persistence-dev.xml
===================================================================
--- trunk/resources/META-INF/persistence-dev.xml	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/resources/META-INF/persistence-dev.xml	2007-11-26 17:44:46 UTC (rev 139)
@@ -11,7 +11,7 @@
       <properties>
          <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
          <property name="hibernate.hbm2ddl.auto" value="update"/>
-         <property name="hibernate.show_sql" value="true"/>
+         <property name="hibernate.show_sql" value="false"/>
          <property name="hibernate.format_sql" value="true"/>
          <property name="jboss.entity.manager.factory.jndi.name" value="java:/blogEntityManagerFactory"/>
       </properties>

Modified: trunk/resources/WEB-INF/pages.xml
===================================================================
--- trunk/resources/WEB-INF/pages.xml	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/resources/WEB-INF/pages.xml	2007-11-26 17:44:46 UTC (rev 139)
@@ -46,6 +46,15 @@
         </navigation>
     </page>
 
+    <page view-id="/manage/feed_delete.xhtml">
+        <begin-conversation flush-mode="manual" join="true" />
+        <param name="name" converterId="feedConverter" value="#{feedMod.feed}" />
+        <navigation from-action="#{feedMod.delete}">
+            <end-conversation />
+            <redirect view-id="/manage/index.xhtml" />
+        </navigation>
+    </page>
+
     <!-- Manage remote feeds -->
 
     <page view-id="/manage/remote/remote_add.xhtml" conversation-required="true">

Added: trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java	                        (rev 0)
+++ trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -0,0 +1,32 @@
+package org.jboss.blog.session.category;
+
+import org.jboss.blog.model.Category;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+
+import javax.persistence.EntityManager;
+import javax.persistence.NonUniqueResultException;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+ at Scope(ScopeType.STATELESS)
+ at Name("categoryService")
+public class CategoryServiceBean {
+    @In
+    private EntityManager entityManager;
+
+    public Category getCategory(String name) {
+        try {
+            return (Category) entityManager.createQuery("select cat from Category cat where cat.name = ?1")
+                    .setParameter(1, name).getSingleResult();
+        } catch (NonUniqueResultException e) {
+            Category ret = new Category(name);
+            entityManager.persist(ret);
+
+            return ret;
+        }
+    }
+}

Modified: trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -37,11 +37,11 @@
     }
 
     public void saveNew() {
-        entityManager.persist(feed.getBlog());
+        entityManager.persist(feed);
         
         entityManager.persist(feed);
 
-        for (Post p : feed.getBlog().getPosts()) {   
+        for (Post p : feed.getPosts()) {   
             entityManager.persist(p);
         }
 
@@ -51,4 +51,8 @@
     public void saveExisting() {
         entityManager.flush();
     }
+
+    public void delete() {
+        entityManager.remove(getFeed());
+    }
 }

Modified: trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -1,7 +1,6 @@
 package org.jboss.blog.session.manage.aggregated;
 
 import org.jboss.blog.model.AggregatedFeed;
-import org.jboss.blog.model.Blog;
 import org.jboss.blog.model.Feed;
 import org.jboss.blog.model.Post;
 import org.jboss.blog.service.FeedsService;

Modified: trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -1,6 +1,5 @@
 package org.jboss.blog.session.manage.remote;
 
-import org.jboss.blog.model.Blog;
 import org.jboss.blog.model.RemoteFeed;
 import org.jboss.blog.session.manage.FeedModBean;
 import org.jboss.blog.session.manage.InvalidFeedTypeException;

Modified: trunk/src/action/org/jboss/blog/session/parser/ParserService.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/parser/ParserService.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/parser/ParserService.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -1,15 +1,19 @@
 package org.jboss.blog.session.parser;
 
-import org.jboss.blog.model.Blog;
+import org.jboss.blog.model.Feed;
+import org.jboss.blog.model.Post;
+import org.jboss.blog.tools.Pair;
 
 import javax.ejb.Local;
+import java.util.List;
 
 /**
  * @author <a href="mailto:adam at warski.org">Adam Warski</a>
  */
 @Local
 public interface ParserService {
-    Blog parse(String link) throws ParserException;
 
     void remove();
+
+    List<Post> parse(String link, Feed toFill) throws ParserException;
 }

Modified: trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -7,10 +7,14 @@
 import com.sun.syndication.io.FeedException;
 import com.sun.syndication.io.SyndFeedInput;
 import com.sun.syndication.io.XmlReader;
-import org.jboss.blog.model.Blog;
+import org.jboss.blog.model.Category;
+import org.jboss.blog.model.Feed;
 import org.jboss.blog.model.Post;
+import org.jboss.blog.session.category.CategoryServiceBean;
+import org.jboss.blog.tools.Pair;
 import org.jboss.blog.tools.StringTools;
 import org.jboss.seam.annotations.AutoCreate;
+import org.jboss.seam.annotations.In;
 import org.jboss.seam.annotations.Name;
 
 import javax.ejb.Remove;
@@ -19,6 +23,7 @@
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author <a href="mailto:adam at warski.org">Adam Warski</a>
@@ -27,25 +32,26 @@
 @Name("parserService")
 @AutoCreate
 public class ParserServiceImpl implements ParserService {
-    public Blog parse(String link) throws ParserException {
+    @In
+    private CategoryServiceBean categoryService;
+
+    public List<Post> parse(String link, Feed toFill) throws ParserException {
         try {
             SyndFeedInput input = new SyndFeedInput();
-            SyndFeed feed = input.build(new XmlReader(new URL(link)));
+            SyndFeed syndFeed = input.build(new XmlReader(new URL(link)));
 
-            Blog blog = new Blog();
-            blog.setAuthor(feed.getAuthor());
-            blog.setDescription(feed.getDescription());
-            blog.setLink(feed.getLink());
-            blog.setTitle(feed.getTitle());
-            blog.setPosts(new ArrayList<Post>());
+            toFill.setAuthor(syndFeed.getAuthor());
+            toFill.setDescription(syndFeed.getDescription());
+            toFill.setLink(syndFeed.getLink());
+            toFill.setTitle(syndFeed.getTitle());
 
-            if (feed.getEntries() != null) {
-                for (Object entryObj : feed.getEntries()) {
+            List<Post> posts = new ArrayList<Post>();
+            if (syndFeed.getEntries() != null) {
+                for (Object entryObj : syndFeed.getEntries()) {
                     SyndEntry entry = (SyndEntry) entryObj;
                     Post post = new Post();
-                    post.setBlog(blog);
 
-                    post.setAuthor(StringTools.isEmpty(entry.getAuthor()) ? blog.getAuthor() : entry.getAuthor());
+                    post.setAuthor(StringTools.isEmpty(entry.getAuthor()) ? toFill.getAuthor() : entry.getAuthor());
 
                     for (Object contentObj : entry.getContents()) {
                         SyndContent content = (SyndContent) contentObj;
@@ -55,10 +61,10 @@
                         }
                     }
 
-                    post.setCategories(new ArrayList<String>());
+                    post.setCategories(new ArrayList<Category>());
                     for (Object categoryObj : entry.getCategories()) {
                         SyndCategory category = (SyndCategory) categoryObj;
-                        post.getCategories().add(category.getName());
+                        post.getCategories().add(categoryService.getCategory(category.getName()));
                     }
 
                     post.setTitle(entry.getTitle());
@@ -66,13 +72,12 @@
                     post.setModified(
                             entry.getUpdatedDate() == null ? entry.getPublishedDate() : entry.getUpdatedDate());
                     post.setLink(entry.getLink());
-                    post.setGuid(entry.getUri() == null ? entry.getLink() : entry.getUri());
 
-                    blog.getPosts().add(post);
+                    posts.add(post);
                 }
             }
 
-            return blog;
+            return posts;
         } catch (FeedException e) {
             throw new ParserException(e);
         } catch (MalformedURLException e) {

Added: trunk/src/action/org/jboss/blog/tools/Pair.java
===================================================================
--- trunk/src/action/org/jboss/blog/tools/Pair.java	                        (rev 0)
+++ trunk/src/action/org/jboss/blog/tools/Pair.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -0,0 +1,34 @@
+package org.jboss.blog.tools;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+public class Pair<T1, T2> {
+    private T1 first;
+    private T2 second;
+
+    public Pair(T1 first, T2 second) {
+        this.first = first;
+        this.second = second;
+    }
+
+    public T1 getFirst() {
+        return first;
+    }
+
+    public void setFirst(T1 first) {
+        this.first = first;
+    }
+
+    public T2 getSecond() {
+        return second;
+    }
+
+    public void setSecond(T2 second) {
+        this.second = second;
+    }
+
+    public static <T1, T2> Pair<T1,T2> createPair(T1 first, T2 second) {
+        return new Pair<T1, T2>(first, second);
+    }
+}

Deleted: trunk/src/model/org/jboss/blog/model/Blog.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Blog.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/model/org/jboss/blog/model/Blog.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -1,113 +0,0 @@
-package org.jboss.blog.model;
-
-import org.hibernate.validator.Length;
-import org.hibernate.validator.NotEmpty;
-
-import javax.persistence.*;
-import java.util.List;
-
-/**
- * @author <a href="mailto:adam at warski.org">Adam Warski</a>
- */
- at Entity
-public class Blog {
-    @Id
-    @GeneratedValue
-    private Integer id;
-
-    @NotEmpty
-    @Length(max = 512)
-    private String title;
-
-    @Length(max = 256)
-    private String author;
-
-    @Length(max = 512)
-    @NotEmpty
-    private String link;
-
-    @OneToMany(cascade = {CascadeType.REMOVE}, mappedBy = "blog")
-    private List<Post> posts;
-
-    @OneToOne(mappedBy = "blog")
-    private Feed feed;
-
-    @Lob
-    private String description;
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public String getTitle() {
-        return title;
-    }
-
-    public void setTitle(String title) {
-        this.title = title;
-    }
-
-    public String getAuthor() {
-        return author;
-    }
-
-    public void setAuthor(String author) {
-        this.author = author;
-    }
-
-    public String getLink() {
-        return link;
-    }
-
-    public void setLink(String link) {
-        this.link = link;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(String description) {
-        this.description = description;
-    }
-
-    public List<Post> getPosts() {
-        return posts;
-    }
-
-    public void setPosts(List<Post> posts) {
-        this.posts = posts;
-    }
-
-    public Feed getFeed() {
-        return feed;
-    }
-
-    public void setFeed(Feed feed) {
-        this.feed = feed;
-    }
-
-    public boolean equals(Object o) {
-        if (this == o) return true;
-        if (!(o instanceof Blog)) return false;
-
-        Blog blog = (Blog) o;
-
-        if (id != null ? !id.equals(blog.id) : blog.id != null) return false;
-        if (link != null ? !link.equals(blog.link) : blog.link != null) return false;
-
-        return true;
-    }
-
-    public int hashCode() {
-        int result;
-        result = (id != null ? id.hashCode() : 0);
-        result = 31 * result + (link != null ? link.hashCode() : 0);
-        return result;
-    }
-}
-

Added: trunk/src/model/org/jboss/blog/model/Category.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Category.java	                        (rev 0)
+++ trunk/src/model/org/jboss/blog/model/Category.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -0,0 +1,65 @@
+package org.jboss.blog.model;
+
+import org.hibernate.validator.NotEmpty;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+ at Entity
+public class Category {
+    @Id
+    @GeneratedValue
+    @Column(updatable = false)
+    private Integer id;
+
+    @NotEmpty
+    @Column(unique = true)
+    private String name;
+
+    public Category(String name) {
+        this.name = name;
+    }
+
+    public Category() {
+    }
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (!(o instanceof Category)) return false;
+
+        Category category = (Category) o;
+
+        if (id != null ? !id.equals(category.id) : category.id != null) return false;
+        if (name != null ? !name.equals(category.name) : category.name != null) return false;
+
+        return true;
+    }
+
+    public int hashCode() {
+        int result;
+        result = (id != null ? id.hashCode() : 0);
+        result = 31 * result + (name != null ? name.hashCode() : 0);
+        return result;
+    }
+}

Modified: trunk/src/model/org/jboss/blog/model/Feed.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Feed.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/model/org/jboss/blog/model/Feed.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -3,11 +3,11 @@
 import org.hibernate.annotations.CollectionOfElements;
 import org.hibernate.validator.Length;
 import org.hibernate.validator.NotEmpty;
-import org.hibernate.validator.NotNull;
 import org.hibernate.validator.Pattern;
 
 import javax.persistence.*;
 import java.util.Map;
+import java.util.List;
 
 /**
  * @author <a href="mailto:adam at warski.org">Adam Warski</a>
@@ -27,13 +27,22 @@
     private String name;
 
     @NotEmpty
-    @Length(max = 64)
-    private String displayName;
+    @Length(max = 512)
+    private String title;
 
-    @OneToOne(cascade = CascadeType.REMOVE)
-    @NotNull
-    private Blog blog;
+    @Length(max = 256)
+    private String author;
 
+    @Length(max = 512)
+    @NotEmpty
+    private String link;
+
+    @ManyToMany(cascade = {CascadeType.REMOVE}, mappedBy = "feeds")
+    private List<Post> posts;
+
+    @Lob
+    private String description;
+
     @CollectionOfElements
     private Map<RemoteFeedType, String> templates;
 
@@ -65,22 +74,46 @@
         this.name = name;
     }
 
-    public String getDisplayName() {
-        return displayName;
+    public String getTitle() {
+        return title;
     }
 
-    public void setDisplayName(String displayName) {
-        this.displayName = displayName;
+    public void setTitle(String title) {
+        this.title = title;
     }
 
-    public Blog getBlog() {
-        return blog;
+    public String getAuthor() {
+        return author;
     }
 
-    public void setBlog(Blog blog) {
-        this.blog = blog;
+    public void setAuthor(String author) {
+        this.author = author;
     }
 
+    public String getLink() {
+        return link;
+    }
+
+    public void setLink(String link) {
+        this.link = link;
+    }
+
+    public List<Post> getPosts() {
+        return posts;
+    }
+
+    public void setPosts(List<Post> posts) {
+        this.posts = posts;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
     public Map<RemoteFeedType, String> getTemplates() {
         return templates;
     }

Modified: trunk/src/model/org/jboss/blog/model/Post.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Post.java	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/model/org/jboss/blog/model/Post.java	2007-11-26 17:44:46 UTC (rev 139)
@@ -38,16 +38,12 @@
     @NotEmpty
     private String link;
 
-    @Length(max = 512)
-    @NotEmpty
-    private String guid;
-
     @Length(max = 256)
     // TODO: @NotEmpty
     private String author;
 
-    @CollectionOfElements
-    private List<String> categories;
+    @ManyToMany
+    private List<Category> categories;
 
     @Temporal(value = TemporalType.TIMESTAMP)
     @NotNull
@@ -57,9 +53,9 @@
     @NotNull
     private Date modified;
 
-    @ManyToOne(fetch = FetchType.LAZY)
+    @ManyToMany
     @NotNull
-    private Blog blog;
+    private List<Feed> feeds;
 
     public Integer getId() {
         return id;
@@ -102,14 +98,6 @@
         this.link = link;
     }
 
-    public String getGuid() {
-        return guid;
-    }
-
-    public void setGuid(String guid) {
-        this.guid = guid;
-    }
-
     public String getAuthor() {
         return author;
     }
@@ -118,11 +106,11 @@
         this.author = author;
     }
 
-    public List<String> getCategories() {
+    public List<Category> getCategories() {
         return categories;
     }
 
-    public void setCategories(List<String> categories) {
+    public void setCategories(List<Category> categories) {
         this.categories = categories;
     }
 
@@ -142,12 +130,12 @@
         this.modified = modified;
     }
 
-    public Blog getBlog() {
-        return blog;
+    public List<Feed> getFeeds() {
+        return feeds;
     }
 
-    public void setBlog(Blog blog) {
-        this.blog = blog;
+    public void setFeeds(List<Feed> feeds) {
+        this.feeds = feeds;
     }
 
     public boolean equals(Object o) {

Modified: trunk/view/manage/feed_mod.xhtml
===================================================================
--- trunk/view/manage/feed_mod.xhtml	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/view/manage/feed_mod.xhtml	2007-11-26 17:44:46 UTC (rev 139)
@@ -23,21 +23,9 @@
                 </a:outputPanel>
             </h:panelGroup>
 
-            <h:outputLabel for="displayName"><span class="required">*</span> Display name:</h:outputLabel>
-            <h:panelGroup>
-                <h:inputText id="displayName" value="#{feedMod.feed.displayName}" required="true" size="32">
-                    <a:support event="onblur" reRender="displayNameMessage" ajaxSingle="true" bypassUpdates="true"/>
-                    <s:validate />
-                </h:inputText>
-
-                <a:outputPanel id="displayNameMessage">
-                    <h:message for="displayName" styleClass="error" />
-                </a:outputPanel>
-            </h:panelGroup>
-
             <h:outputLabel for="title"><span class="required">*</span> Title:</h:outputLabel>
             <h:panelGroup>
-                <h:inputText id="title" value="#{feedMod.feed.blog.title}" required="true" size="32">
+                <h:inputText id="title" value="#{feedMod.feed.title}" required="true" size="32">
                     <a:support event="onblur" reRender="titleMessage" ajaxSingle="true" bypassUpdates="true"/>
                     <s:validate />
                 </h:inputText>
@@ -49,7 +37,7 @@
 
             <h:outputLabel for="author"><span class="required">*</span> Author:</h:outputLabel>
             <h:panelGroup>
-                <h:inputText id="author" value="#{feedMod.feed.blog.author}" required="true" size="32">
+                <h:inputText id="author" value="#{feedMod.feed.author}" required="true" size="32">
                     <a:support event="onblur" reRender="authorMessage" ajaxSingle="true" bypassUpdates="true"/>
                     <s:validate />
                 </h:inputText>
@@ -61,7 +49,7 @@
 
             <h:outputLabel for="description">Description:</h:outputLabel>
             <h:panelGroup>
-                <h:inputTextarea id="description" value="#{feedMod.feed.blog.description}" rows="4" cols="32">
+                <h:inputTextarea id="description" value="#{feedMod.feed.description}" rows="4" cols="32">
                     <a:support event="onblur" reRender="descriptionMessage" ajaxSingle="true" bypassUpdates="true"/>
                     <s:validate />
                 </h:inputTextarea>
@@ -73,7 +61,7 @@
 
             <h:outputLabel for="link"><span class="required">*</span> Link to blog:</h:outputLabel>
             <h:panelGroup>
-                <h:inputText id="link" value="#{feedMod.feed.blog.link}" required="true" size="64">
+                <h:inputText id="link" value="#{feedMod.feed.link}" required="true" size="64">
                     <a:support event="onblur" reRender="linkMessage" ajaxSingle="true" bypassUpdates="true"/>
                     <s:validate />
                 </h:inputText>
@@ -135,11 +123,11 @@
 
         <h3>Posts preview:</h3>
 
-        <h:panelGroup rendered="#{feedMod.feed.blog.posts.size() == 0}">
+        <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.blog.posts.size() > 0}">
-            <h:dataTable value="#{feedMod.feed.blog.posts}" var="post" rows="1">
+        <h:panelGroup rendered="#{feedMod.feed.posts.size() > 0}">
+            <h:dataTable value="#{feedMod.feed.posts}" var="post" rows="1">
                 <h:column>
                     <h:panelGrid columns="2">
                         <h:outputText value="Title:" />

Modified: trunk/view/manage/index.xhtml
===================================================================
--- trunk/view/manage/index.xhtml	2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/view/manage/index.xhtml	2007-11-26 17:44:46 UTC (rev 139)
@@ -24,6 +24,11 @@
                 <s:link view="#{feedTypes.getFeedType(feed.type).editPage}" value="Edit specific">
                     <f:param name="name" value="#{feed.name}" />
                 </s:link>
+                <br />
+                <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>
             </p>
         </ui:repeat>
     </ui:define>




More information about the jboss-cvs-commits mailing list