Changeset 18181

Show
Ignore:
Timestamp:
10/07/08 17:02:41 (3 months ago)
Author:
uroslates
Message:

Changes to wiki module:

  • Finished basic assignment specific wiki implementation:
    ** for assignment object(task/form) without wiki created show 'Create wiki from scratch' link, and Page Index to select page from,
    ** show wiki page assingned to assignment,
  • Fixes for wiki issues (changing project name causes existing wiki not to be displayed, history list sorting, description field binding for wiki Editing Page, displayed description for image details page...)
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/core/config/spring/bussinessContext-dao.xml

    r17956 r18181  
    310310        </bean> 
    311311         
     312        <!-- PnWikiAssignment DAO --> 
     313        <bean id="pnWikiAssignmentDAO" class="net.project.hibernate.dao.impl.PnWikiAssignmentDAOImpl"> 
     314                <property name="hibernateTemplate" ref="hibernateTemplate"/> 
     315        </bean> 
     316         
    312317        <!-- PnDocument DAO --> 
    313318        <bean id="dao" class="net.project.hibernate.dao.impl.PnDocumentDAOImpl"> 
  • trunk/core/config/spring/bussinessContext-service.xml

    r18034 r18181  
    584584        </bean> 
    585585         
     586        <!-- PnWikiAssignment Service --> 
     587        <bean id="pnWikiAssignmentService" parent="transactionProxyTemplate" lazy-init="true"> 
     588                <property name="target"> 
     589                        <bean class="net.project.hibernate.service.impl.PnWikiAssignmentServiceImpl"> 
     590                                <property name="pnWikiAssignmentDAO" ref="pnWikiAssignmentDAO"/> 
     591                        </bean> 
     592                </property> 
     593        </bean> 
     594         
    586595        <!-- PnDocument Service --> 
    587596        <bean id="pnDocumentService" parent="transactionProxyTemplate" lazy-init="true"> 
  • trunk/core/config/spring/bussinessContext.xml

    r17939 r18181  
    342342                                <value>net/project/hibernate/model/PnWikiHistory.hbm.xml</value> 
    343343                                <value>net/project/hibernate/model/PnWikiAttachment.hbm.xml</value> 
     344                                <!-- value>net/project/hibernate/model/PnWikiAssignment.hbm.xml</value--> 
    344345                                <value>net/project/hibernate/model/PnTimelog.hbm.xml</value>                             
    345346                        </list> 
  • trunk/core/db/oracle/create-scripts/versions/8.5.0/prm_db_patch_8.5.0.sql

    r18159 r18181  
    5656COMMIT; 
    5757 
     58PROMPT Creating PN_WIKI_ASSIGNMENT table 
     59@versions/8.5.0/tables/cr_pn_wiki_assignment.sql 
     60COMMIT; 
     61 
    5862PROMPT Altering PN_WORKINGTIME_CALENDAR_ENTRY table 
    5963@versions/8.5.0/tables/alter_pn_workingtime_calendar_entry.sql 
     
    99103PROMPT ================================================================================ 
    100104 
     105PROMPT ================================================================================ 
     106PROMPT == Triggers 
     107PROMPT ================================================================================ 
     108 
     109PROMPT Creating PN_OBJECT_NAME_AFT_UPD_NAME trigger 
     110@versions/8.5.0/triggers/pn_object_name_aft_upd_name.tgr 
     111COMMIT; 
     112 
    101113 
    102114PROMPT ================================================================================ 
  • trunk/core/src/net/project/hibernate/dao/IPnAssignmentDAO.java

    r17957 r18181  
    109109                String assignmentNameComparator 
    110110    ); 
    111      
     111 
     112        public PnAssignment getAssigmentByAssignmentId(Integer objectId); 
    112113} 
    113114 
  • trunk/core/src/net/project/hibernate/dao/impl/PnAssignmentDAOImpl.java

    r18179 r18181  
    10731073    } 
    10741074 
     1075    /** 
     1076     * Method to return assignment record for object with given objectId 
     1077     * @param objectId 
     1078     * @return 
     1079     */ 
     1080        public PnAssignment getAssigmentByAssignmentId(Integer objectId) { 
     1081//System.out.println(" === PnAssignmentDAOImpl.getAssigmentByAssignmentId(" + objectId + ")"); 
     1082                PnAssignment assignment = new PnAssignment(); 
     1083 
     1084                try { 
     1085                        String sql = " FROM PnAssignment a " 
     1086                                        + " WHERE a.comp_id.objectId = :objectId AND a.recordStatus = 'A' "; 
     1087 
     1088                        Query query = getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(sql); 
     1089                        query.setInteger("objectId", objectId); 
     1090                        assignment = (PnAssignment) query.uniqueResult();                        
     1091                } catch (Exception e) { 
     1092                        log.error("Error occured while getting Assignment by Assignment ID: " + e.getMessage()); 
     1093                        e.printStackTrace(); 
     1094                } 
     1095//System.out.println("      PnAssignmentDAOImpl.getAssigmentByAssignmentId RETURNED parent object: " + assignment.getComp_id().getSpaceId()); 
     1096                return assignment; 
     1097        } 
     1098 
    10751099} 
  • trunk/core/src/net/project/hibernate/dao/impl/PnWikiHistoryDAOImpl.java

    r17566 r18181  
    2929                try { 
    3030                        Query query = getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery( 
    31                                         " from PnWikiHistory h where h.wikiPageId = :pageId order by h.editDate desc "); 
     31                                        " from PnWikiHistory h where h.wikiPageId = :pageId order by h.editDate asc "); 
    3232 
    3333                        query.setInteger("pageId", wikiPageID); 
  • trunk/core/src/net/project/hibernate/model/PnObject.hbm.xml

    r17480 r18181  
    280280                </many-to-one> 
    281281 
     282                <join table="PN_WIKI_ASSIGNMENT" optional="true" inverse="true"> 
     283                        <key column="OBJECT_ID" unique="true"/> 
     284                        <many-to-one name="assignedWikiPage" column="WIKI_PAGE_ID" not-null="true"/> 
     285                </join> 
    282286        </class> 
    283287</hibernate-mapping> 
  • trunk/core/src/net/project/hibernate/model/PnObject.java

    r17101 r18181  
    142142    /** persistent field */ 
    143143    private Set pnSpaceHasFeaturedMenuitemsByObjectId; 
     144     
     145    /** 
     146     * Page assigned from the project to a task or form. 
     147     */ 
     148    private PnWikiPage assignedWikiPage; 
    144149 
    145150    /** full constructor */ 
     
    583588    } 
    584589 
    585     public String toString() { 
     590    /** 
     591         * @return Returns the assignedWikiPage. 
     592         */ 
     593        public PnWikiPage getAssignedWikiPage() { 
     594                return assignedWikiPage; 
     595        } 
     596 
     597        /** 
     598         * @param assignedWikiPage The assignedWikiPage to set. 
     599         */ 
     600        public void setAssignedWikiPage(PnWikiPage assignedWikiPage) { 
     601                this.assignedWikiPage = assignedWikiPage; 
     602        } 
     603 
     604        public String toString() { 
    586605        return new ToStringBuilder(this).append("objectId", getObjectId()).toString(); 
    587606    } 
  • trunk/core/src/net/project/hibernate/model/PnWikiPage.hbm.xml

    r17951 r18181  
    6969                name="editedBy" 
    7070                class="net.project.hibernate.model.PnPerson" 
    71                 not-null="true"  
     71                not-null="true" lazy="false" 
    7272            > 
    7373                <column name="EDITED_BY" /> 
     
    7777                  name="ownerObjectId" 
    7878                  class="net.project.hibernate.model.PnObject" 
    79                   not-null="true" 
     79                  not-null="true" lazy="false" 
    8080                 > 
    8181                        <column name="OWNER_OBJECT_ID" />                  
    8282                </many-to-one> 
    8383          
     84                <set name="assignements" table="PN_WIKI_ASSIGNMENT" lazy="false"> 
     85                        <key column="WIKI_PAGE_ID"/> 
     86                         
     87                        <many-to-many column="OBJECT_ID" unique="true"  
     88                                class="net.project.hibernate.model.PnObject"/> 
     89                </set> 
    8490        </class>         
    8591</hibernate-mapping> 
  • trunk/core/src/net/project/hibernate/model/PnWikiPage.java

    r17951 r18181  
    22 
    33import java.io.Serializable; 
     4import java.util.HashSet; 
     5import java.util.Set; 
    46 
    57import org.apache.commons.lang.builder.ToStringBuilder; 
     
    3133         
    3234        private String commentText; 
     35         
     36        /** 
     37         * Links between this wiki page and other objects. 
     38         */ 
     39        private Set<PnObject> assignements; 
    3340 
    3441        // many to one 
     
    241248        public void setCommentText(String commentText) { 
    242249                this.commentText = commentText; 
     250        } 
     251 
     252        /** 
     253         * @return Returns the assignements. 
     254         */ 
     255        public Set<PnObject> getAssignements() { 
     256                return assignements; 
     257        } 
     258 
     259        /** 
     260         * @param assignements The assignements to set. 
     261         */ 
     262        public void setAssignements(Set<PnObject> assignements) { 
     263                this.assignements = assignements; 
    243264        }        
    244265 
  • trunk/core/src/net/project/hibernate/service/IPnAssignmentService.java

    r18088 r18181  
    121121                DateFormat userDateFormat 
    122122    ); 
    123      
     123 
     124        public PnAssignment getAssigmentByAssignmentId(Integer objectId); 
    124125} 
  • trunk/core/src/net/project/hibernate/service/IPnObjectService.java

    r17327 r18181  
    2727 
    2828        public Integer generateNewId(); 
    29  
     29                 
     30        /**  
     31         * @param primaryKey unique is id for PnObject bean  
     32         * @return PnObject bean 
     33         */ 
     34        public PnObject getObjectWithAssignedWikiPage(Integer primaryKey); 
    3035} 
  • trunk/core/src/net/project/hibernate/service/IPnWikiPageService.java

    r17914 r18181  
    9898         */ 
    9999        public List<PnWikiPage> getRecentChangesForWiki(Integer spaceId, int rangeNumber, String namespace); 
     100         
     101        /** 
     102         * Method for assigning selected wiki page (selectedWikiPage) to object with ID objectId. 
     103         * @param selectedWikiPage 
     104         * @param objectId 
     105         */ 
     106        public void assignWikiPageToObject(PnWikiPage selectedWikiPage, Integer objectId); 
    100107} 
  • trunk/core/src/net/project/hibernate/service/IWikiProvider.java

    r18001 r18181  
    4444         */ 
    4545        public String convertToHtmlNew(String wikiText, String parentPage, String objectId, boolean isPreview); 
     46         
     47        //APgInd 
     48        public String wikiPagesIndex(Integer spaceId, Integer objectId, boolean selectableIndex); 
    4649} 
  • trunk/core/src/net/project/hibernate/service/ServiceFactory.java

    r18036 r18181  
    246246    public abstract IPnWikiAttachmentService getPnWikiAttachmentService(); 
    247247     
     248    public abstract IPnWikiAssignmentService getPnWikiAssignmentService(); 
     249     
    248250    public abstract IPnTimelogService geTimelogService(); 
    249251     
  • trunk/core/src/net/project/hibernate/service/impl/PnAssignmentServiceImpl.java

    r18179 r18181  
    10091009        } 
    10101010         
     1011        public PnAssignment getAssigmentByAssignmentId(Integer objectId) { 
     1012                return pnAssignmentDAO.getAssigmentByAssignmentId(objectId); 
     1013        } 
     1014 
    10111015        private String getFormAbbreviationByClassId(Integer classId){ 
    10121016                String formAbbreviation = (String) formAbbreviationByClassID.get(classId);  
  • trunk/core/src/net/project/hibernate/service/impl/PnObjectServiceImpl.java

    r17327 r18181  
    55import net.project.hibernate.dao.IPnObjectDAO; 
    66import net.project.hibernate.model.PnObject; 
     7import net.project.hibernate.model.PnWikiPage; 
    78import net.project.hibernate.service.IPnObjectService; 
    89 
     
    5152        return pnObjectDAO.generateNewId(); 
    5253    } 
    53  
     54     
     55    /* method added for bypassing lazy initialization exception when retreiving object by object id */ 
     56    public PnObject getObjectWithAssignedWikiPage(Integer primaryKey) { 
     57        PnObject pnObject = this.getObject(primaryKey); 
     58         
     59        if (pnObject != null) { 
     60                PnWikiPage wikiPage = pnObject.getAssignedWikiPage(); 
     61                 
     62                if (wikiPage != null) { 
     63                        wikiPage.getEditedBy(); 
     64                        wikiPage.getOwnerObjectId(); 
     65                } 
     66        } 
     67         
     68                return pnObject; 
     69    } 
    5470} 
  • trunk/core/src/net/project/hibernate/service/impl/PnWikiAttachmentServiceImpl.java

    r17872 r18181  
    169169                IPnWikiPageService wikiPageService = ServiceFactory.getInstance().getPnWikiPageService(); 
    170170                List <PnWikiPage> wikiImageDetailPages = wikiPageService.getAllImageDetailPagesForWiki( ownerObjectId, wikiObjectName, statusRecord ); 
    171                 List <PnWikiAttachment> wikiAttachedFiles = new ArrayList<PnWikiAttachment>();; 
     171                List <PnWikiAttachment> wikiAttachedFiles = new ArrayList<PnWikiAttachment>(); 
    172172                 
    173173                Iterator it = wikiImageDetailPages.iterator(); 
  • trunk/core/src/net/project/hibernate/service/impl/PnWikiPageServiceImpl.java

    r17914 r18181  
    55 
    66import java.util.ArrayList; 
     7import java.util.HashSet; 
    78import java.util.Iterator; 
    89import java.util.List; 
     10import java.util.Set; 
    911 
    1012import org.hibernate.Query; 
    1113 
    1214import net.project.hibernate.dao.IPnWikiPageDAO; 
     15import net.project.hibernate.model.PnObject; 
     16import net.project.hibernate.model.PnObjectType; 
     17import net.project.hibernate.model.PnProjectSpace; 
     18import net.project.hibernate.model.PnWikiAssignment; 
    1319import net.project.hibernate.model.PnWikiPage; 
     20import net.project.hibernate.service.IPnAssignmentService; 
     21import net.project.hibernate.service.IPnObjectService; 
     22import net.project.hibernate.service.IPnObjectSpaceService; 
     23import net.project.hibernate.service.IPnObjectTypeService; 
     24import net.project.hibernate.service.IPnProjectSpaceService; 
     25import net.project.hibernate.service.IPnWikiAssignmentService; 
    1426import net.project.hibernate.service.IPnWikiAttachmentService; 
    1527import net.project.hibernate.service.IPnWikiPageService; 
    1628import net.project.hibernate.service.ServiceFactory; 
     29import net.project.hibernate.service.filters.IPnObjectSpaceServiceFilter; 
     30import net.project.project.ProjectSpaceBean; 
    1731 
    1832/** 
     
    3751         * @see net.project.hibernate.service.IPnWikiPageService#save(net.project.hibernate.model.PnWikiPage) 
    3852         */ 
    39         public Integer save(PnWikiPage pnWikiPage) { 
     53        public Integer save(PnWikiPage pnWikiPage) {                                                                                                    /* CUSTOMIZED for assignment wiki */ 
     54//System.out.println("=== PnWikiPageServiceImpl.save(" + pnWikiPage.getPageName() + ") ==="); 
     55                PnObject pnAssignmentObject = pnWikiPage.getOwnerObjectId();                                                            /* get PnObject for pnWikiPage */ 
     56                 
     57                if ( pnAssignmentObject.getPnObjectType().getObjectType().equals("task") ||  
     58                         pnAssignmentObject.getPnObjectType().getObjectType().equals("form_data") ) {                   /* if object type is assignment(TASK/FORM) */ 
     59                         
     60                        IPnAssignmentService assignmentServ = ServiceFactory.getInstance().getPnAssignmentService(); 
     61                        //System.out.println("     owner project has projectId: " + assignmentServ.getAssigmentByAssignmentId(pnWikiPage.getOwnerObjectId().getObjectId()).getComp_id().getSpaceId()); 
     62                        Integer ownerSpaceId = assignmentServ.getAssigmentByAssignmentId(pnWikiPage.getOwnerObjectId().getObjectId()).getComp_id().getSpaceId();                                /* get owner object(project) id as argument */ 
     63                         
     64                        IPnObjectService objectServ = ServiceFactory.getInstance().getPnObjectService(); 
     65                        pnWikiPage.setOwnerObjectId(objectServ.getObject(ownerSpaceId));                                                /* set object to be owning PROJECT (for wiki page to be stored in that objects wiki space) */ 
     66                         
     67                        /* getting 'owning' PROJECT name for populating parent page */ 
     68                        /* create PN_OBJECT_NAME Service/DAO methods for getting objectName for given objectId and repalce projectSpecific code below (2 rows) */ 
     69                        IPnProjectSpaceService projectServ = ServiceFactory.getInstance().getPnProjectSpaceService(); 
     70                        String owningProjectSpaceName = projectServ.getProjectSpace(ownerSpaceId).getProjectName().replaceAll(" ", "_"); 
     71                        pnWikiPage.setParentPageName(owningProjectSpaceName);                                                                   /* set parentPageName to be owning PROJECT name */ 
     72                         
     73//System.out.println("    ASSIGNMENT: saving wiki page: " + pnWikiPage.getPageName() + ", with COMMENT TEXT: " + pnWikiPage.getCommentText()); 
     74 
     75                        Set<PnObject> assignements = new HashSet<PnObject>(); 
     76                        assignements.add(pnAssignmentObject); 
     77                        pnWikiPage.setAssignements(assignements);                        
     78                }  
     79 
     80                // Save wiki page 
    4081                return pnWikiPageDAO.create(pnWikiPage); 
    41         }       
     82        } 
    4283 
    4384        /* (non-Javadoc) 
     
    4586         */ 
    4687        public void update(PnWikiPage pnWikiPage) { 
    47                 pnWikiPageDAO.update(pnWikiPage); 
     88//System.out.println("=== PnWikiPageServiceImpl.update(" + pnWikiPage.getPageName() + ") ==="); 
     89                PnObject pnAssignmentObject = pnWikiPage.getOwnerObjectId();                                                            /* get PnObject for pnWikiPage */ 
     90                 
     91                if ( pnAssignmentObject.getPnObjectType().getObjectType().equals("task") ||  
     92                         pnAssignmentObject.getPnObjectType().getObjectType().equals("form_data") ) {                   /* if object type is assignment(TASK/FORM) */ 
     93 
     94                        IPnAssignmentService assignmentServ = ServiceFactory.getInstance().getPnAssignmentService(); 
     95                        //System.out.println("     owner project has projectId: " + assignmentServ.getAssigmentByAssignmentId(pnWikiPage.getOwnerObjectId().getObjectId()).getComp_id().getSpaceId()); 
     96                        Integer ownerSpaceId = assignmentServ.getAssigmentByAssignmentId(pnWikiPage.getOwnerObjectId().getObjectId()).getComp_id().getSpaceId();                                /* get owner object(project) id as argument */ 
     97 
     98                        IPnObjectService objectServ = ServiceFactory.getInstance().getPnObjectService(); 
     99                        pnWikiPage.setOwnerObjectId(objectServ.getObject(ownerSpaceId));                /* set object to be owning PROJECT (for wiki page to be stored in that objects wiki space) */ 
     100                                                 
     101                        pnWikiPageDAO.update(pnWikiPage);                                                                                                               /* UPDATE wiki page in PN_WIKI_PAGE table */ 
     102                         
     103                } else {                                                                                                                                                                        /* for OTHER object types wiki works as regular wiki */ 
     104                        pnWikiPageDAO.update(pnWikiPage); 
     105                } 
     106//assingnment wiki - end 
     107                /* pnWikiPageDAO.update(pnWikiPage); OBSOLETE - FOR COMMON WIKI FEATURES FOR ALL OBJECT TYPES */ 
    48108        } 
    49109 
     
    71131        } 
    72132 
    73         public PnWikiPage getWikiPageWithName(String pageName, Integer ownerObjectId) { 
    74                 return pnWikiPageDAO.getWikiPageWithName(pageName, ownerObjectId); 
     133        public PnWikiPage getWikiPageWithName(String pageName, Integer ownerObjectId) {                                                 /* CUSTOMIZED for assignment wiki */ 
     134                //System.out.println("=== PnWikiPageServiceImpl.getWikiPageWithName(" + pageName + ", " + ownerObjectId + ") ==="); 
     135                PnWikiPage result = null; 
     136                IPnObjectTypeService objectTypeService = ServiceFactory.getInstance().getPnObjectTypeService();   
     137                PnObjectType objectType = objectTypeService.getObjectTypeByObjectId(ownerObjectId); 
     138                 
     139                if( objectType != null && ownerObjectId != null) { 
     140                        if( objectType.getObjectType().equals("task") || objectType.getObjectType().equals("form_data") ) {             /* getting TASK/FORM specific wiki content */ 
     141                                /* for this object types when calling this method pageName is not considered - so put it to be assignment object name */ 
     142                                   
     143                                PnObject ownerObject = ServiceFactory.getInstance().getPnObjectService().getObjectWithAssignedWikiPage(ownerObjectId);  /* get the owner object for this assignment */ 
     144                                 
     145                                return ownerObject.getAssignedWikiPage(); 
     146                        } else {        /* getting OTHER objects wiki content */ 
     147                                result = pnWikiPageDAO.getWikiPageWithName(pageName, ownerObjectId); 
     148                                 
     149                        } 
     150                } 
     151                return result; 
     152                 
     153                /*return pnWikiPageDAO.getWikiPageWithName(pageName, ownerObjectId); OBSOLETE - FOR COMMON WIKI FEATURES FOR ALL OBJECT TYPES */ 
    75154        } 
    76155         
     
    118197         */ 
    119198        public List<PnWikiPage> getWikiPagesByOwnerAndRecordStatus(Integer ownerObjectId, String status) { 
    120                 return pnWikiPageDAO.getWikiPagesByOwnerAndRecordStatus(ownerObjectId,status); 
     199                IPnObjectService objectService = ServiceFactory.getInstance().getPnObjectService(); 
     200                //System.out.println("OwnerObjectId is: " + ownerObjectId); 
     201                if( ownerObjectId != null ) { 
     202                        PnObject object = objectService.getObject(ownerObjectId);                                       /* get PnObject with ownerObjectId */ 
     203//System.out.println("=== PnWikiPageServiceImpl.getWikiPagesByOwnerAndRecordStatus(" + ownerObjectId + ", " + status +") ==="); 
     204                        if ( object.getPnObjectType().getObjectType().equals("task") ||  
     205                                 object.getPnObjectType().getObjectType().equals("form_data") ) {               /* if object type is assignment(TASK/FORM) */ 
     206                                IPnAssignmentService assignmentServ = ServiceFactory.getInstance().getPnAssignmentService(); 
     207//System.out.println("     owner project has projectId: " + assignmentServ.getAssigmentByAssignmentId(ownerObjectId).getComp_id().getSpaceId()); 
     208                                ownerObjectId = assignmentServ.getAssigmentByAssignmentId(ownerObjectId).getComp_id().getSpaceId();                             /* get owner object(project) id as argument */ 
     209                        } 
     210                } 
     211                return pnWikiPageDAO.getWikiPagesByOwnerAndRecordStatus(ownerObjectId, status); 
     212 
     213                /* return pnWikiPageDAO.getWikiPagesByOwnerAndRecordStatus(ownerObjectId,status); OBSOLETE - FOR COMMON WIKI FEATURES FOR ALL OBJECT TYPES */ 
    121214        } 
    122215 
     
    126219         
    127220        //added for retrieving list of images available for attaching to wiki pages of one wiki 
    128         public List<PnWikiPage> getAllImageDetailPagesForWiki(Integer ownerObjectId, String objectName, String recordStatus){ 
     221        public List<PnWikiPage> getAllImageDetailPagesForWiki(Integer ownerObjectId, String objectName, String recordStatus){  /* CUSTOMIZE */ 
    129222                return pnWikiPageDAO.getAllImageDetailPagesForWiki(ownerObjectId, objectName, recordStatus); 
    130223        } 
     
    141234                return pnWikiPageDAO.getWikiPagesByDate(spaceId, rangeNumber, namespace); 
    142235        } 
     236         
     237        public void assignWikiPageToObject(PnWikiPage selectedWikiPage, Integer objectId) {                                                                                                     /* CUSTOMIZED for assignment wiki */ 
     238//System.out.println("=== PnWikiPageServiceImpl.assignWikiPageToObject(" + selectedWikiPage.getPageName() + ") ==="); 
     239                PnObject pnAssignmentObject = ServiceFactory.getInstance().getPnObjectService().getObjectWithAssignedWikiPage(objectId);                /* get PnObject with objectId */ 
     240                 
     241                Set<PnObject> assignements = selectedWikiPage.getAssignements(); 
     242                if( assignements == null ) { 
     243                        assignements = new HashSet<PnObject>(); 
     244                } 
     245                 
     246                assignements.add(pnAssignmentObject); 
     247                selectedWikiPage.setAssignements(assignements);                  
     248                 
     249                // Update wiki page 
     250                pnWikiPageDAO.update(selectedWikiPage); 
     251//System.out.println("Updated wiki page: " + selectedWikiPage.getPageName() + ", with ID: " + selectedWikiPage.getWikiPageId() + ", added it to ASSIGNMENT: " + objectId); 
     252        }        
     253 
    143254} 
  • trunk/core/src/net/project/hibernate/service/impl/ServiceFactoryImpl.java

    r18036 r18181  
    55import net.project.hibernate.service.IPnSpaceAccessHistoryService; 
    66import net.project.hibernate.service.IPnUserService; 
     7import net.project.hibernate.service.IPnWikiAssignmentService; 
    78import net.project.hibernate.service.IPnWikiAttachmentService; 
    89import net.project.hibernate.service.IPnTimelogService; 
     
    602603         
    603604        /* (non-Javadoc) 
     605         * @see net.project.hibernate.service.ServiceFactory#getPnWikiAssignmentService() 
     606         */ 
     607        @Override 
     608        public IPnWikiAssignmentService getPnWikiAssignmentService() { 
     609                return (IPnWikiAssignmentService) beanFactory.getBean("pnWikiAssignmentService"); 
     610        } 
     611         
     612        /* (non-Javadoc) 
    604613         * @see net.project.hibernate.service.ServiceFactory#geTimelogService() 
    605614         */ 
  • trunk/core/src/net/project/hibernate/service/impl/WikiProviderImpl.java

    r18001 r18181  
    2121import net.project.document.DocumentManagerBean; 
    2222import net.project.hibernate.model.PnObject; 
     23import net.project.hibernate.model.PnObjectType; 
    2324import net.project.hibernate.model.PnPerson; 
    2425import net.project.hibernate.model.PnWikiAttachment; 
     
    3839import org.apache.tapestry.upload.services.UploadedFile; 
    3940 
     41 
    4042/** 
    4143 *  
     
    6567                                                String newToken = null; 
    6668                                                newToken = token.substring(0, token.length() - 1); 
    67                                                 result.append("[[" + newToken + "]]" + token.charAt(token.length() - 1) + " "); 
     69                                                result.append("[["); 
     70                                                result.append(newToken); 
     71                                                result.append("]]"); 
     72                                                result.append(token.charAt(token.length() - 1)); 
     73                                                result.append(" "); 
    6874                                        } else { 
    69                                                 result.append("[[" + token + "]] "); 
     75                                                result.append("[["); 
     76                                                result.append(token); 
     77                                                result.append("]] "); 
    7078                                        } 
    7179                                } else { 
    72                                         result.append(token + " "); 
     80                                        result.append(token); 
     81                                        result.append(" "); 
    7382                                } 
    7483                        } 
     
    118127                IPnObjectService pnObjectService = ServiceFactory.getInstance().getPnObjectService(); 
    119128                 
    120                 PnObject pnObject = pnObjectService.getObject(objectId);        //wi 
    121 //wi            PnObject pnObject = pnObjectService.getObjectWithProjectSpace(Integer.valueOf(user.getCurrentSpace().getID())); 
     129                PnObject pnObject = pnObjectService.getObject(objectId); 
    122130                 
    123131                IPnPersonService personService = ServiceFactory.getInstance().getPnPersonService(); 
     
    125133                 
    126134                //creating page content 
    127                pageContent.append("== " + parentPageName + ": " + imageName + " == \n"); 
    128                 pageContent.append("<br>[[" + imagePageName + "]] <br><br>\n"); 
     135/*             pageContent.append("== " + parentPageName + ": " + imageName + " == <br>\n"); 
     136                pageContent.append("[[" + imagePageName + "]] <br><br>\n"); 
    129137                pageContent.append(" '''File:''' " + imageName + "<br>\n"); 
    130138                pageContent.append(" '''Added By:''' " + user.getDisplayName() + "<br>\n"); 
    131139                pageContent.append(" '''Size:''' " + file.getSize() + " B<br>\n"); 
    132140                pageContent.append(" '''Added On:''' " + SessionManager.getUser().getDateFormatter().formatDate(new Date(), "EEE, MMM dd, yyyy. hh:mm:ss") + " <br>\n"); 
     141                pageContent.append(" '''Description:''' "); 
     142*/ 
     143                pageContent.append("== ").append(parentPageName).append(": ").append(imageName).append(" == \n<br>"); 
     144                pageContent.append("[[").append(imagePageName).append("]] <br><br>\n"); 
     145                pageContent.append(" '''File:''' ").append(imageName).append("<br>\n"); 
     146                pageContent.append(" '''Added By:''' ").append(user.getDisplayName()).append("<br>\n"); 
     147                pageContent.append(" '''Size:''' ").append(file.getSize()).append(" B<br>\n"); 
     148                pageContent.append(" '''Added On:''' ").append(SessionManager.getUser().getDateFormatter().formatDate(new Date(), "EEE, MMM dd, yyyy. hh:mm:ss")).append(" <br>\n"); 
     149                pageContent.append(" '''Description:''' "); 
     150 
     151                if ( !description.equals("") || description != null ) { 
     152                        pageContent.append(description); 
     153                } else { 
     154                        pageContent.append("Not commented"); 
     155                } 
     156                pageContent.append(". <br>\n"); 
    133157                 
    134158                IPnWikiPageService wikiPageService = ServiceFactory.getInstance().getPnWikiPageService(); 
     
    291315        } 
    292316         
     317        //////////////////////////////////////////////APgInd 
     318        public String wikiPagesIndex(Integer spaceId, Integer objectId, boolean selectableIndex) { 
     319                String resultString = null; 
     320                IPnWikiPageService wikiPageService = ServiceFactory.getInstance().getPnWikiPageService(); 
     321                 
     322                TreeMap <String, List<PnWikiPage>> tMap = new TreeMap<String, List<PnWikiPage>>(); 
     323                //get list of all wiki pages in current object space 
     324                List<PnWikiPage> pages = wikiPageService.getWikiPagesByOwnerAndRecordStatus(spaceId, "A"); 
     325                 
     326                //filling in the map with wiki pages - indexed 
     327                Iterator it = pages.iterator(); 
     328                while ( it.hasNext() ) { 
     329                        PnWikiPage currPage = (PnWikiPage) it.next(); 
     330                        String pageNameFirstLetter = currPage.getPageName().substring(0,1).toUpperCase(); 
     331            //if initial letter of