knguyen     2005/08/10 13:24:42 CEST

  Modified files:
    core/src/java/org/jahia/data/viewhelper/sitemap 
                                                    SiteMapViewHelper.java 
    core/src/java/org/jahia/hibernate/manager 
                                              JahiaObjectDelegate.java 
                                              JahiaObjectManager.java 
  Log:
  - add expired check in sitemap
  
  Revision  Changes    Path
  1.8       +23 -1     
jahia/core/src/java/org/jahia/data/viewhelper/sitemap/SiteMapViewHelper.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/data/viewhelper/sitemap/SiteMapViewHelper.java.diff?r1=1.7&r2=1.8&f=h
  1.2       +4 -1      
jahia/core/src/java/org/jahia/hibernate/manager/JahiaObjectDelegate.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/hibernate/manager/JahiaObjectDelegate.java.diff?r1=1.1&r2=1.2&f=h
  1.2       +1 -1      
jahia/core/src/java/org/jahia/hibernate/manager/JahiaObjectManager.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/hibernate/manager/JahiaObjectManager.java.diff?r1=1.1&r2=1.2&f=h
  
  
  
  Index: SiteMapViewHelper.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/core/src/java/org/jahia/data/viewhelper/sitemap/SiteMapViewHelper.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- SiteMapViewHelper.java    5 Jul 2005 15:46:03 -0000       1.7
  +++ SiteMapViewHelper.java    10 Aug 2005 11:24:41 -0000      1.8
  @@ -51,6 +51,9 @@
   
   import java.io.Serializable;
   import org.jahia.services.version.*;
  +import org.jahia.hibernate.manager.JahiaObjectManager;
  +import org.jahia.hibernate.manager.SpringContextSingleton;
  +import org.jahia.hibernate.manager.JahiaObjectDelegate;
   
   /**
    * <p>The Jahia Shared Modification is: Jahia View Helper</p>
  @@ -72,6 +75,8 @@
       public static final int TREE_VIEW = 0;
       public static final int FLAT_VIEW = 1;
   
  +    private JahiaObjectManager jahiaObjectManager = null;
  +
       /**
        * Create a view helper on a entire Jahia site map restricted to the 
actual
        * logged user.
  @@ -87,6 +92,9 @@
       public SiteMapViewHelper(JahiaUser user, ContentObject startPage,
                                int pageInfosFlag, String languageCode,
                                int defaultMaxLevel) {
  +
  +        jahiaObjectManager = (JahiaObjectManager) 
SpringContextSingleton.getInstance()
  +                .getContext().getBean(JahiaObjectManager.class.getName());
           _user = user;
           _pageInfosFlag = pageInfosFlag;
           _languageCode = languageCode;
  @@ -99,6 +107,7 @@
           _jahiaPageSiteMap.add(new PageSiteMap(pageID, _currentLevel, 
childPageEnum.hasNext(),
                   0, false, 
contentPage.getTitles(ContentPage.LAST_UPDATED_TITLES), 0, _defaultMaxLevel));
           getAllPageChilds(startPage, childPageEnum);
  +
       }
   
       /**
  @@ -117,6 +126,10 @@
       public SiteMapViewHelper(JahiaUser user, ContentObject startPage,
                                int pageInfosFlag, String languageCode,
                                int defaultMaxLevel, boolean directPageOnly) {
  +
  +        jahiaObjectManager = (JahiaObjectManager) 
SpringContextSingleton.getInstance()
  +                .getContext().getBean(JahiaObjectManager.class.getName());
  +
           _user = user;
           _pageInfosFlag = pageInfosFlag;
           _languageCode = languageCode;
  @@ -313,13 +326,14 @@
               if ( pageChildsEnum == null ){
                   pageChildsEnum = new ArrayList().iterator();
               }
  -            if (_pageInfosFlag == (ContentPage.ACTIVE_PAGE_INFOS | 
ContentPage.STAGING_PAGE_INFOS)) {
  +            if (_pageInfosFlag == (ContentPage.STAGING_PAGE_INFOS)) {
                   return pageChildsEnum; // In this case shortcut the next 
steps for optmization.
               }
   
               // Precompute what should contain the site map regarding the page
               // infos flag and the language code.
               Vector pageChildsList = new Vector();
  +            JahiaObjectDelegate delegate = null;
               while (pageChildsEnum.hasNext()) {
                   ContentPage contentPage = (ContentPage)pageChildsEnum.next();
                   if (_languageCode != null) {
  @@ -340,6 +354,14 @@
                           continue; // This page does not fill the criterions
                       }
                   }
  +
  +                // time based publishing state check
  +                if ( _pageInfosFlag == ContentPage.ACTIVE_PAGE_INFOS ) {
  +                    delegate = 
jahiaObjectManager.getJahiaObjectDelegate(contentPage.getObjectKey());
  +                    if ( delegate != null && !delegate.isValid() ){
  +                        continue;
  +                    }
  +                }
                   pageChildsList.add(contentPage);
               }
               return pageChildsList.iterator();
  
  
  
  Index: JahiaObjectDelegate.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/core/src/java/org/jahia/hibernate/manager/JahiaObjectDelegate.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JahiaObjectDelegate.java  10 Aug 2005 08:27:00 -0000      1.1
  +++ JahiaObjectDelegate.java  10 Aug 2005 11:24:41 -0000      1.2
  @@ -72,5 +72,8 @@
       public void setRule(RetentionRule rule) {
           this.rule = rule;
       }
  -    
  +
  +    public boolean isValid(){
  +        return (this.getTimeBPState().intValue() == IS_VALID_STATE);
  +    }
   }
  
  
  
  Index: JahiaObjectManager.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/core/src/java/org/jahia/hibernate/manager/JahiaObjectManager.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JahiaObjectManager.java   10 Aug 2005 08:27:00 -0000      1.1
  +++ JahiaObjectManager.java   10 Aug 2005 11:24:41 -0000      1.2
  @@ -177,7 +177,7 @@
               if ( delegate.getSiteId().intValue()>0 ){
                   
hibJahiaObject.setSite(siteDao.findById(delegate.getSiteId()));
               } else {
  -                hibJahiaObject.setSite(null);
  +                //hibJahiaObject.setSite(null);
               }
               if ( delegate.getRule()!=null ){
                   
hibJahiaObject.setRetentionRule(retentionRuleDao.findByPK(delegate.getRule().getId()));
  

Reply via email to