You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2006/06/20 23:36:54 UTC

svn commit: r415814 - in /incubator/roller/branches/roller_3.0: src/org/apache/roller/business/hibernate/ src/org/apache/roller/pojos/ src/org/apache/roller/ui/admin/struts/actions/ src/org/apache/roller/ui/core/tasks/ src/org/apache/roller/ui/renderin...

Author: snoopdave
Date: Tue Jun 20 14:36:52 2006
New Revision: 415814

URL: http://svn.apache.org/viewvc?rev=415814&view=rev
Log:
Consistent use of 'URL' in property names, introduced WeblogEntryPluginHelper and misc. tweaks needed for new feed templates

Added:
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarHelper.java
      - copied, changed from r415797, incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarPageHelper.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuHelper.java
      - copied, changed from r415797, incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuPageHelper.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesHelper.java
      - copied, changed from r415797, incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesPageHelper.java
Removed:
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarPageHelper.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuPageHelper.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesPageHelper.java
Modified:
    incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernatePlanetManagerImpl.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernateRollerPlanetManagerImpl.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetGroupData.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetSubscriptionData.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WeblogEntryData.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WebsiteData.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/admin/struts/actions/PlanetSubscriptionsAction.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/core/tasks/SyncWebsitesTask.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/ModelLoader.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/WeblogPageModel.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/CommentServlet.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/FeedServlet.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PageServlet.java
    incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PreviewServlet.java
    incubator/roller/branches/roller_3.0/tests/org/apache/roller/util/UtilitiesTest.java
    incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp
    incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp
    incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet-sidebar.jsp
    incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet.jsp

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernatePlanetManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernatePlanetManagerImpl.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernatePlanetManagerImpl.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernatePlanetManagerImpl.java Tue Jun 20 14:36:52 2006
@@ -102,7 +102,7 @@
         
     public void saveSubscription(PlanetSubscriptionData sub) 
         throws RollerException {
-        PlanetSubscriptionData existing = getSubscription(sub.getFeedUrl());
+        PlanetSubscriptionData existing = getSubscription(sub.getFeedURL());
         if (existing == null || (existing.getId().equals(sub.getId()))) {
             this.strategy.store(sub);
         } else {
@@ -459,7 +459,7 @@
             log.info("   " + count + " - "
                     + ((subEndTime-subStartTime)/1000.0)
                     + " seconds to process (" + count + ") entries of "
-                    + sub.getFeedUrl());
+                    + sub.getFeedURL());
         }
         // Clear the aggregation cache
         clearCachedAggregations();
@@ -479,8 +479,8 @@
         URL feedUrl = null;
         Date lastUpdated = new Date();
         try {
-            feedUrl = new URL(sub.getFeedUrl());
-            log.debug("Get feed from cache "+sub.getFeedUrl());
+            feedUrl = new URL(sub.getFeedURL());
+            log.debug("Get feed from cache "+sub.getFeedURL());
             feed = feedFetcher.retrieveFeed(feedUrl);
             SyndFeedInfo feedInfo = feedInfoCache.getFeedInfo(feedUrl);
             if (feedInfo.getLastModified() != null) {
@@ -492,7 +492,7 @@
             }
             Thread.sleep(100); // be nice
         } catch (Exception e) {
-            log.warn("ERROR parsing " + sub.getFeedUrl()
+            log.warn("ERROR parsing " + sub.getFeedURL()
             + " : " + e.getClass().getName() + " : " + e.getMessage());
             log.debug(e);
             return newEntries; // bail out

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernateRollerPlanetManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernateRollerPlanetManagerImpl.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernateRollerPlanetManagerImpl.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/business/hibernate/HibernateRollerPlanetManagerImpl.java Tue Jun 20 14:36:52 2006
@@ -78,9 +78,9 @@
         String localURL = RollerRuntimeConfig.getProperty("site.absoluteurl");
         
         // if this is not a local url then let parent deal with it
-        if (StringUtils.isEmpty(localURL) || !sub.getFeedUrl().startsWith(localURL)) {
+        if (StringUtils.isEmpty(localURL) || !sub.getFeedURL().startsWith(localURL)) {
             
-            log.debug("Feed is remote, letting parent handle it "+sub.getFeedUrl());
+            log.debug("Feed is remote, letting parent handle it "+sub.getFeedURL());
             
             return super.getNewEntries(sub, feedFetcher, feedInfoCache);
         }
@@ -89,9 +89,9 @@
         Set newEntries = new TreeSet();
         try {
             // for local feeds, sub.author = website.handle
-            if (sub.getAuthor()!=null && sub.getFeedUrl().endsWith(sub.getAuthor())) {
+            if (sub.getAuthor()!=null && sub.getFeedURL().endsWith(sub.getAuthor())) {
                 
-                log.debug("Getting LOCAL feed "+sub.getFeedUrl());
+                log.debug("Getting LOCAL feed "+sub.getFeedURL());
                 
                 // get corresponding website object
                 UserManager usermgr = RollerFactory.getRoller().getUserManager();
@@ -158,7 +158,7 @@
             log.warn("Problem reading local feed", e);
         }
         
-        log.debug("Failed to fetch locally, trying remote "+sub.getFeedUrl());
+        log.debug("Failed to fetch locally, trying remote "+sub.getFeedURL());
         
         // if there was an error then try normal planet method
         return super.getNewEntries(sub, feedFetcher, feedInfoCache);

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetGroupData.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetGroupData.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetGroupData.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetGroupData.java Tue Jun 20 14:36:52 2006
@@ -204,7 +204,7 @@
         {
             PlanetGroupSubscriptionAssoc assoc = 
                     (PlanetGroupSubscriptionAssoc)assocs.next();
-            if (assoc.getSubscription().getFeedUrl().equals(sub.getFeedUrl()))
+            if (assoc.getSubscription().getFeedURL().equals(sub.getFeedURL()))
             {
                 target = assoc;
                 break;

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetSubscriptionData.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetSubscriptionData.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetSubscriptionData.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/PlanetSubscriptionData.java Tue Jun 20 14:36:52 2006
@@ -105,11 +105,11 @@
      * @hibernate.property column="feed_url" non-null="true" unique="false"
      * @roller.wrapPojoMethod type="simple"
      */
-    public String getFeedUrl()
+    public String getFeedURL()
     {
         return feedUrl;
     }
-    public void setFeedUrl(String feedUrl)
+    public void setFeedURL(String feedUrl)
     {
         this.feedUrl = feedUrl;
     }
@@ -129,11 +129,11 @@
      * @hibernate.property column="site_url" non-null="false" unique="false"
      * @roller.wrapPojoMethod type="simple"
      */
-    public String getSiteUrl()
+    public String getSiteURL()
     {
         return siteUrl;
     }
-    public void setSiteUrl(String siteUrl)
+    public void setSiteURL(String siteUrl)
     {
         this.siteUrl = siteUrl;
     }
@@ -218,7 +218,7 @@
     public int compareTo(Object o)
     {
         PlanetSubscriptionData other = (PlanetSubscriptionData)o;
-        return getFeedUrl().compareTo(other.getFeedUrl());
+        return getFeedURL().compareTo(other.getFeedURL());
     }
 
     public boolean equals(Object other) {
@@ -227,7 +227,7 @@
         if(!(other instanceof PlanetSubscriptionData)) return false;
         
         final PlanetSubscriptionData that = (PlanetSubscriptionData) other;
-        return this.feedUrl.equals(that.getFeedUrl());
+        return this.feedUrl.equals(that.getFeedURL());
     }
     
     public int hashCode() {

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WeblogEntryData.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WeblogEntryData.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WeblogEntryData.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WeblogEntryData.java Tue Jun 20 14:36:52 2006
@@ -732,7 +732,9 @@
     }
     
     /**
+     * Get relative URL to comments page.
      * @roller.wrapPojoMethod type="simple"
+     * @deprecated Use commentLink() instead
      */
     public String getCommentsLink() {
         String dayString = DateUtil.format8chars(this.getPubTime());
@@ -745,8 +747,23 @@
         String clink = "/page/" + this.getWebsite().getHandle() + "?entry=" + lAnchor;
         return clink;
     }
-    /** to please XDoclet */
+    /** 
+     * to please XDoclet 
+     * @deprecated Use commentLink() instead
+     */
     public void setCommentsLink(String ignored) {}
+    
+    /**
+     * Get absolute URL of comment page.
+     * @roller.wrapPojoMethod type="simple"
+     */
+    public String getCommentLink() {
+        String absContextUrl = RollerConfig.getProperty("context.absPath");
+        return absContextUrl + getCommentsLink(); 
+    }
+    /** to please XDoclet */
+    public void setCommentLink(String ignored) {}
+    
     
     /**
      * Return the Title of this post, or the first 255 characters of the

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WebsiteData.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WebsiteData.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WebsiteData.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/pojos/WebsiteData.java Tue Jun 20 14:36:52 2006
@@ -1019,12 +1019,12 @@
     /** 
      * @roller.wrapPojoMethod type="simple"
      */
-    public String getUrl() {
+    public String getURL() {
         // TODO: ATLAS reconcile entry.getPermaLink() with new URLs
         String absContextUrl = RollerConfig.getProperty("context.absPath");
         return absContextUrl + "/page/" + getHandle();       
     }
-    public void setUrl(String url) {
+    public void setURL(String url) {
         // noop
     }
 

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/admin/struts/actions/PlanetSubscriptionsAction.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/admin/struts/actions/PlanetSubscriptionsAction.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/admin/struts/actions/PlanetSubscriptionsAction.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/admin/struts/actions/PlanetSubscriptionsAction.java Tue Jun 20 14:36:52 2006
@@ -208,8 +208,8 @@
                     if (form.getId() == null || form.getId().trim().length() == 0) {                        
                         // Adding new subscription to group                        
                         // But, does subscription to that feed already exist?
-                        if (form.getFeedUrl() != null) {
-                            sub = planet.getSubscription(form.getFeedUrl()); 
+                        if (form.getFeedURL() != null) {
+                            sub = planet.getSubscription(form.getFeedURL()); 
                         }
                         if (sub != null) {
                             // Yes, we'll use it instead
@@ -261,7 +261,7 @@
         String technoratiFeedUrl = null;
         int inboundlinks = -1;
         int inboundblogs = -1;
-        if (form.getSiteUrl()!=null && form.getSiteUrl().trim().length() > 0) {
+        if (form.getSiteURL()!=null && form.getSiteURL().trim().length() > 0) {
             try {
                 PlanetConfigData config = planet.getConfiguration();
                 Technorati technorati = null;
@@ -272,7 +272,7 @@
                     technorati = new Technorati();
                 }
                 Technorati.Result result =
-                        technorati.getBloginfo(form.getSiteUrl());
+                        technorati.getBloginfo(form.getSiteURL());
                 technoratiTitle = result.getWeblog().getName();
                 technoratiFeedUrl = result.getWeblog().getRssurl();
                 form.setInboundlinks(result.getWeblog().getInboundlinks());
@@ -291,15 +291,15 @@
                         new ActionError("planetSubscription.error.title"));
             }
         }
-        if (form.getFeedUrl()==null || form.getFeedUrl().trim().length()==0) {
+        if (form.getFeedURL()==null || form.getFeedURL().trim().length()==0) {
             if (technoratiFeedUrl!=null && technoratiFeedUrl.trim().length()>0) {
-                form.setFeedUrl(technoratiFeedUrl);
+                form.setFeedURL(technoratiFeedUrl);
             } else {
                 errors.add(null,
                         new ActionError("planetSubscription.error.feedUrl"));
             }
         }
-        if (form.getSiteUrl()==null || form.getSiteUrl().trim().length()==0) {
+        if (form.getSiteURL()==null || form.getSiteURL().trim().length()==0) {
             errors.add(null,
                     new ActionError("planetSubscription.error.siteUrl"));
         }

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/core/tasks/SyncWebsitesTask.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/core/tasks/SyncWebsitesTask.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/core/tasks/SyncWebsitesTask.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/core/tasks/SyncWebsitesTask.java Tue Jun 20 14:36:52 2006
@@ -122,8 +122,8 @@
                             logger.info("ADDING feed: "+feedUrl);
                             sub = new PlanetSubscriptionData();
                             sub.setTitle(website.getName());
-                            sub.setFeedUrl(feedUrl);
-                            sub.setSiteUrl(siteUrl);
+                            sub.setFeedURL(feedUrl);
+                            sub.setSiteURL(siteUrl);
                             sub.setAuthor(website.getHandle());
                             planet.saveSubscription(sub);
                             group.addSubscription(sub);
@@ -143,8 +143,8 @@
                     while (subs.hasNext()) {
                         PlanetSubscriptionData sub =
                                 (PlanetSubscriptionData)subs.next();
-                        if (!liveUserFeeds.contains(sub.getFeedUrl())) {
-                            logger.info("DELETING feed: "+sub.getFeedUrl());
+                        if (!liveUserFeeds.contains(sub.getFeedURL())) {
+                            logger.info("DELETING feed: "+sub.getFeedURL());
                             planet.deleteSubscription(sub);
                         }
                     }
@@ -207,20 +207,20 @@
                     if (count >= start && count < end) {
                         try {
                             Technorati.Result result =
-                                    technorati.getBloginfo(sub.getSiteUrl());
+                                    technorati.getBloginfo(sub.getSiteURL());
                             if (result != null && result.getWeblog() != null) {
                                 sub.setInboundblogs(
                                         result.getWeblog().getInboundblogs());
                                 sub.setInboundlinks(
                                         result.getWeblog().getInboundlinks());
                                 logger.debug("Adding rank for "
-                                        +sub.getFeedUrl()+" ["+count+"|"
+                                        +sub.getFeedURL()+" ["+count+"|"
                                         +sub.getInboundblogs()+"|"
                                         +sub.getInboundlinks()+"]");
                             } else {
                                 logger.debug(
                                         "No ranking available for "
-                                        +sub.getFeedUrl()+" ["+count+"]");
+                                        +sub.getFeedURL()+" ["+count+"]");
                                 sub.setInboundlinks(0);
                                 sub.setInboundblogs(0);
                             }

Copied: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarHelper.java (from r415797, incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarPageHelper.java)
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarHelper.java?p2=incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarHelper.java&p1=incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarPageHelper.java&r1=415797&r2=415814&rev=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarPageHelper.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/CalendarHelper.java Tue Jun 20 14:36:52 2006
@@ -35,19 +35,16 @@
 /**
  * Displays weblog calendar by calling hybrid JSP tag.
  */
-public class CalendarPageHelper  {
+public class CalendarHelper  {
     private PageContext pageContext;
     
     protected static Log logger = 
-            LogFactory.getFactory().getInstance(CalendarPageHelper.class);
+        LogFactory.getFactory().getInstance(CalendarHelper.class);
     
     /**
-     * Creates a new instance of CalendarPageHelper
+     * Creates a new instance of CalendarHelper
      */
-    public CalendarPageHelper() {
-    }
-        
-    public void init(PageContext pageContext) {
+    public CalendarHelper(PageContext pageContext) {
         this.pageContext = pageContext;
     }  
     

Copied: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuHelper.java (from r415797, incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuPageHelper.java)
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuHelper.java?p2=incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuHelper.java&p1=incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuPageHelper.java&r1=415797&r2=415814&rev=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuPageHelper.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/EditorMenuHelper.java Tue Jun 20 14:36:52 2006
@@ -28,19 +28,16 @@
 /**
  * Displays editor menu/navigation-bar by calling hybrid JSP tag.
  */
-public class EditorMenuPageHelper  {
+public class EditorMenuHelper  {
     private PageContext pageContext;
     
     protected static Log logger =
-            LogFactory.getFactory().getInstance(EditorMenuPageHelper.class);
+            LogFactory.getFactory().getInstance(EditorMenuHelper.class);
     
     /**
-     * Creates a new instance of EditorMenuPageHelper
-     */
-    public EditorMenuPageHelper() {
-    }
-       
-    public void init(PageContext pageContext) {
+     * Creates a new instance of EditorMenuHelper
+     */       
+    public EditorMenuHelper(PageContext pageContext) {
         this.pageContext = pageContext;
     }
     

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/ModelLoader.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/ModelLoader.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/ModelLoader.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/ModelLoader.java Tue Jun 20 14:36:52 2006
@@ -33,7 +33,8 @@
 import org.apache.roller.util.Utilities;
 
 /**
- * Model loading code, shared by rendering servlets.
+ * Loads page models (read-only data access objects which implement PageModel) 
+ * and helpers (which "help" with HTML gen.) needed by page rendering process.
  */
 public class ModelLoader {
     
@@ -45,7 +46,7 @@
     public static void loadWeblogPageModels(
         WebsiteData weblog,
         PageContext pageContext,
-        Map         map) throws RollerException { 
+        Map map) throws RollerException { 
         
         HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
         HttpServletResponse response = (HttpServletResponse)pageContext.getRequest();
@@ -55,8 +56,9 @@
         String modelsString = 
             RollerConfig.getProperty("rendering.weblogPageModels");
         loadConfiguredPageModels(modelsString, request, map);
-        loadUtilityObjects(map);
-        loadWeblogHelperObjects(pageContext, map);
+        loadUtilityHelpers(map);
+        loadWeblogHelpers(pageContext, map);
+        loadPluginHelpers(weblog, map);
         
         // Weblog pages get weblog's additional custom models too
         if (weblog != null) {
@@ -64,27 +66,42 @@
         }
     }
 
-    public static void loadWeblogHelperObjects(
+    /** 
+     * Load helpers needed in weblog pages (e.g. calendar, menu).
+     */
+    public static void loadWeblogHelpers(
         PageContext pageContext, Map map) {
         
-        CalendarPageHelper calendarTag = new CalendarPageHelper();
-        calendarTag.init(pageContext);
+        CalendarHelper calendarTag = new CalendarHelper(pageContext);
         map.put("calendarTag", calendarTag);
         
-        EditorMenuPageHelper menuTag = new EditorMenuPageHelper();
-        menuTag.init(pageContext);
+        EditorMenuHelper menuTag = new EditorMenuHelper(pageContext);
         map.put("menuTag", menuTag);
     }
 
-    public static void loadUtilityObjects(Map map) {
-        UtilitiesPageHelper utils = new UtilitiesPageHelper();
+    /**
+     * Load generic utility helpers.
+     */
+    public static void loadUtilityHelpers(Map map) {
+        UtilitiesHelper utils = new UtilitiesHelper();
         map.put("utils", utils);
     }
 
+    /**
+     * Load weblog entry plugin helpers.
+     */
+    public static void loadPluginHelpers(WebsiteData weblog, Map map) {
+        WeblogEntryPluginsHelper plugins = new WeblogEntryPluginsHelper(weblog, map);
+        map.put("plugins", plugins);
+    }
+
+    /**
+     * Load old page models, but only if velocity.pagemodel.classname defined.
+     */
     public static void loadOldModels(
         HttpServletResponse response, 
         HttpServletRequest  request,
-        Map                 map) throws RollerException {
+        Map map) throws RollerException {
 
         // Only load old model if it's specified
         String useOldModel = 
@@ -99,9 +116,9 @@
      * models fail to load, throws an exception.
      */
     public  static void loadConfiguredPageModels(
-            String modelsString, 
-            HttpServletRequest request, 
-            Map map) throws RollerException {
+        String modelsString, 
+        HttpServletRequest request, 
+        Map map) throws RollerException {
         String currentModel = null;
         try { // if we can't load a configued page models, then bail out
             String[] models = Utilities.stringToStringArray(modelsString, ",");

Copied: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesHelper.java (from r415797, incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesPageHelper.java)
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesHelper.java?p2=incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesHelper.java&p1=incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesPageHelper.java&r1=415797&r2=415814&rev=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesPageHelper.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/UtilitiesHelper.java Tue Jun 20 14:36:52 2006
@@ -20,15 +20,11 @@
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
 import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
 import java.util.Date;
-import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.jsp.PageContext;
-
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.roller.util.DateUtil;
@@ -38,7 +34,7 @@
 /**
  * Utilities object to be placed in template context.
  */
-public class UtilitiesPageHelper {
+public class UtilitiesHelper {
     
     private static Pattern mLinkPattern =
             Pattern.compile("<a href=.*?>", Pattern.CASE_INSENSITIVE);    
@@ -152,6 +148,21 @@
     public static String autoformat(String s) {
         String ret = StringUtils.replace(s, "\n", "<br />");
         return ret;
+    }
+    
+    /**
+     * Return date for current time.
+     */
+    public static Date getNow() {
+        return new Date();
+    }
+    
+    /**
+     * Format date using SimpleDateFormat format string.
+     */
+    public static String formatDate(Date d, String fmt) {
+        SimpleDateFormat format = new SimpleDateFormat(fmt);
+        return format.format(d);
     }
     
     /**

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/WeblogPageModel.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/WeblogPageModel.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/WeblogPageModel.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/model/WeblogPageModel.java Tue Jun 20 14:36:52 2006
@@ -454,6 +454,7 @@
             }
         }
     }
+
 }
 
 

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/CommentServlet.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/CommentServlet.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/CommentServlet.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/CommentServlet.java Tue Jun 20 14:36:52 2006
@@ -56,7 +56,7 @@
 import org.apache.roller.ui.authoring.struts.formbeans.CommentFormEx;
 import org.apache.roller.ui.core.RollerContext;
 import org.apache.roller.ui.core.RollerSession;
-import org.apache.roller.ui.rendering.model.UtilitiesPageHelper;
+import org.apache.roller.ui.rendering.model.UtilitiesHelper;
 import org.apache.roller.ui.rendering.util.CommentAuthenticator;
 import org.apache.roller.ui.rendering.util.DefaultCommentAuthenticator;
 import org.apache.roller.util.GenericThrottle;
@@ -452,7 +452,7 @@
             msg.append((escapeHtml) ? "\n\n" : "<br /><br />");
                         
             msg.append((escapeHtml) ? Utilities.escapeHTML(cd.getContent()) 
-                : UtilitiesPageHelper.transformToHTMLSubset(Utilities.escapeHTML(cd.getContent())));
+                : UtilitiesHelper.transformToHTMLSubset(Utilities.escapeHTML(cd.getContent())));
             
             msg.append((escapeHtml) ? "\n\n----\n"
                     : "<br /><br /><hr /><span style=\"font-size: 11px\">");

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/FeedServlet.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/FeedServlet.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/FeedServlet.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/FeedServlet.java Tue Jun 20 14:36:52 2006
@@ -281,7 +281,8 @@
                 modelsString = RollerConfig.getProperty("rendering.weblogPageModels");
             }
             ModelLoader.loadConfiguredPageModels(modelsString, request, model);
-            ModelLoader.loadUtilityObjects(model);
+            ModelLoader.loadUtilityHelpers(model);
+            ModelLoader.loadPluginHelpers(weblog, model);
 
             // Feeds get weblog's additional custom models too
             if (weblog != null) {

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PageServlet.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PageServlet.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PageServlet.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PageServlet.java Tue Jun 20 14:36:52 2006
@@ -268,8 +268,8 @@
             String modelsString = 
                 RollerConfig.getProperty("rendering.weblogPageModels");
             ModelLoader.loadConfiguredPageModels(modelsString, request, model);
-            ModelLoader.loadUtilityObjects(model);
-            ModelLoader.loadWeblogHelperObjects(rreq.getPageContext(), model);
+            ModelLoader.loadUtilityHelpers(model);
+            ModelLoader.loadWeblogHelpers(rreq.getPageContext(), model);
 
             // Weblog pages get weblog's additional custom models too
             if (rreq.getWebsite() != null) {

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PreviewServlet.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PreviewServlet.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PreviewServlet.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/servlets/PreviewServlet.java Tue Jun 20 14:36:52 2006
@@ -45,11 +45,11 @@
 import org.apache.roller.util.cache.CachedContent;
 import org.apache.roller.ui.rendering.Renderer;
 import org.apache.roller.ui.rendering.RendererManager;
-import org.apache.roller.ui.rendering.model.CalendarPageHelper;
-import org.apache.roller.ui.rendering.model.EditorMenuPageHelper;
+import org.apache.roller.ui.rendering.model.CalendarHelper;
+import org.apache.roller.ui.rendering.model.EditorMenuHelper;
 import org.apache.roller.ui.rendering.model.ModelLoader;
 import org.apache.roller.ui.rendering.model.PageModel;
-import org.apache.roller.ui.rendering.model.UtilitiesPageHelper;
+import org.apache.roller.ui.rendering.model.UtilitiesHelper;
 import org.apache.roller.util.Utilities;
  
 /**

Modified: incubator/roller/branches/roller_3.0/tests/org/apache/roller/util/UtilitiesTest.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/tests/org/apache/roller/util/UtilitiesTest.java?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/tests/org/apache/roller/util/UtilitiesTest.java (original)
+++ incubator/roller/branches/roller_3.0/tests/org/apache/roller/util/UtilitiesTest.java Tue Jun 20 14:36:52 2006
@@ -24,7 +24,7 @@
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
-import org.apache.roller.ui.rendering.model.UtilitiesPageHelper;
+import org.apache.roller.ui.rendering.model.UtilitiesHelper;
 
 /**
  * @author lance
@@ -96,12 +96,12 @@
     public void testAddNoFollow() {
         String test1 = "<p>this some text with a <a href=\"http://example.com\">link</a>";
         String expect1 = "<p>this some text with a <a href=\"http://example.com\" rel=\"nofollow\">link</a>";
-        String result1 = UtilitiesPageHelper.addNofollow(test1);
+        String result1 = UtilitiesHelper.addNofollow(test1);
         assertEquals(expect1, result1);
 
         String test2 = "<p>this some text with a <A href=\"http://example.com\">link</a>";
         String expect2 = "<p>this some text with a <A href=\"http://example.com\" rel=\"nofollow\">link</a>";
-        String result2 = UtilitiesPageHelper.addNofollow(test2);
+        String result2 = UtilitiesHelper.addNofollow(test2);
         assertEquals(expect2, result2);
 
     }

Modified: incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp (original)
+++ incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp Tue Jun 20 14:36:52 2006
@@ -53,8 +53,8 @@
     </tr>
 
     <tr>
-        <td class="label"><label for="siteUrl" /><fmt:message key="planetConfig.siteUrl" /></label></td>
-        <td class="field"><html:text property="siteUrl" size="40" maxlength="255" /></td>
+        <td class="label"><label for="siteURL" /><fmt:message key="planetConfig.siteUrl" /></label></td>
+        <td class="field"><html:text property="siteURL" size="40" maxlength="255" /></td>
         <td class="description"><fmt:message key="planetConfig.tip.siteUrl" /></td>
     </tr>
 

Modified: incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp (original)
+++ incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp Tue Jun 20 14:36:52 2006
@@ -74,17 +74,17 @@
         </div>
         
         <div class="formrow">
-            <label for="feedUrl" class="formrow" />
+            <label for="feedURL" class="formrow" />
                 <fmt:message key="planetSubscription.feedUrl" /></label>
-            <html:text property="feedUrl" size="40" maxlength="255" />
+            <html:text property="feedURL" size="40" maxlength="255" />
             <img src="../images/help.png" alt="help" 
                 title='<fmt:message key="planetSubscription.tip.feedUrl" />' />
         </div>
         
         <div class="formrow">
-            <label for="siteUrl" class="formrow" />
+            <label for="siteURL" class="formrow" />
                 <fmt:message key="planetSubscription.siteUrl" /></label>
-            <html:text property="siteUrl" size="40" maxlength="255" />
+            <html:text property="siteURL" size="40" maxlength="255" />
             <img src="../images/help.png" alt="help" 
                 title='<fmt:message key="planetSubscription.tip.siteUrl" />' />
         </div>
@@ -137,7 +137,7 @@
 
                     <td class="rollertable">
                         <str:left count="100" >
-                           <c:out value="${subscription.feedUrl}" />
+                           <c:out value="${subscription.feedURL}" />
                         </str:left>
                     </td>
 
@@ -150,7 +150,7 @@
                                 name="planetSubscriptionFormEx" 
                                 property="groupHandle" />                   
                             <roller:linkparam 
-                                id="feedUrl" name="subscription" property="feedUrl" />                   
+                                id="feedUrl" name="subscription" property="feedURL" />                   
                             <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon" 
                                 title="<fmt:message key='planetSubscription.edit.tip' />" />
                         </roller:link>

Modified: incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet-sidebar.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet-sidebar.jsp?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet-sidebar.jsp (original)
+++ incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet-sidebar.jsp Tue Jun 20 14:36:52 2006
@@ -32,7 +32,7 @@
     <ul style="list-style-type:none; padding-left:2px; margin: 0px">
         <c:forEach var="blog" items="${topBlogs}">
            <li style="list-style-type:none; padding-left:2px; margin: 0px">
-               <a href='<c:out value="${blog.siteUrl}" />'
+               <a href='<c:out value="${blog.siteURL}" />'
                   title='<c:out value="${blog.title}" />' >
                    <str:left count="120" >
                       <str:removeXml>

Modified: incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet.jsp?rev=415814&r1=415813&r2=415814&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet.jsp (original)
+++ incubator/roller/branches/roller_3.0/web/WEB-INF/jsps/admin/planet.jsp Tue Jun 20 14:36:52 2006
@@ -55,7 +55,7 @@
         </a><br />
 
         <span class="entryDetails">
-            <a href='<c:out value="${post.subscription.siteUrl}" />' 
+            <a href='<c:out value="${post.subscription.siteURL}" />' 
                 class="entryDetails">
                <str:removeXml>
                   <c:out value="${post.subscription.title}" />