[Suiviobsmer-commits] r531 - in trunk: wao-business wao-business/src/main/java/fr/ifremer/wao wao-business/src/main/java/fr/ifremer/wao/bean wao-business/src/main/java/fr/ifremer/wao/entity wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/xmi wao-ui/src/main/java/fr/ifremer/wao/ui/pages wao-ui/src/main/webapp wao-ui/src/main/webapp/css
Author: fdesbois Date: 2010-06-15 14:32:33 +0000 (Tue, 15 Jun 2010) New Revision: 531 Log: Evo #2248 : - Add some methods in beans - Add check rights to edit news Added: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/NewsImpl.java Modified: trunk/wao-business/pom.xml trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ConnectedUserImpl.java trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java trunk/wao-business/src/main/xmi/wao.zargo trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java trunk/wao-ui/src/main/webapp/Index.tml trunk/wao-ui/src/main/webapp/css/news.css Modified: trunk/wao-business/pom.xml =================================================================== --- trunk/wao-business/pom.xml 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-business/pom.xml 2010-06-15 14:32:33 UTC (rev 531) @@ -144,20 +144,20 @@ <goal>smart-generate</goal> </goals> </execution> - <execution> - <phase>generate-sources</phase> - <id>copy-version-files</id> - <configuration> - <includes>**/wao.objectmodel</includes> - <copyVersionDir>${basedir}/src/main/resources/oldmappings/%MODELNAME% - </copyVersionDir> - <copyVersionFiles>**/*.hbm.xml</copyVersionFiles> - <overwrite>true</overwrite> - </configuration> - <goals> - <goal>copyVersionFiles</goal> - </goals> - </execution> + <!--<execution>--> + <!--<phase>generate-sources</phase>--> + <!--<id>copy-version-files</id>--> + <!--<configuration>--> + <!--<includes>**/wao.objectmodel</includes>--> + <!--<copyVersionDir>${basedir}/src/main/resources/oldmappings/%MODELNAME%--> + <!--</copyVersionDir>--> + <!--<copyVersionFiles>**/*.hbm.xml</copyVersionFiles>--> + <!--<overwrite>true</overwrite>--> + <!--</configuration>--> + <!--<goals>--> + <!--<goal>copyVersionFiles</goal>--> + <!--</goals>--> + <!--</execution>--> </executions> </plugin> <plugin> Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java 2010-06-15 14:32:33 UTC (rev 531) @@ -66,16 +66,17 @@ protected abstract void createNewsCompanyColumn_1_4a(List<String> queries); + protected static final Version[] VERSIONS = new Version[] { + VersionUtil.valueOf("1.0"), + VersionUtil.valueOf("1.1"), + VersionUtil.valueOf("1.2"), + VersionUtil.valueOf("1.3"), + VersionUtil.valueOf("1.4") + }; + @Override public Version[] getAvailableVersions() { - Version[] versions = new Version[] { - VersionUtil.valueOf("1.0"), - VersionUtil.valueOf("1.1"), - VersionUtil.valueOf("1.2"), - VersionUtil.valueOf("1.3"), - VersionUtil.valueOf("1.4") - }; - return versions; + return VERSIONS; } @Override Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ConnectedUserImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ConnectedUserImpl.java 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ConnectedUserImpl.java 2010-06-15 14:32:33 UTC (rev 531) @@ -21,6 +21,16 @@ } @Override + public boolean isCoordinator() { + return role.equals(UserRole.COORDINATOR); + } + + @Override + public boolean isObserver() { + return role.equals(UserRole.OBSERVER); + } + + @Override public boolean isReadOnly() { return user.isReadOnly(role); } Added: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/NewsImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/entity/NewsImpl.java (rev 0) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/entity/NewsImpl.java 2010-06-15 14:32:33 UTC (rev 531) @@ -0,0 +1,15 @@ +package fr.ifremer.wao.entity; + +/** + * Created: 15 juin 2010 + * + * @author fdesbois <fdesbois at codelutin.com> + * @version $Id$ + */ +public class NewsImpl extends NewsAbstract { + + @Override + public boolean isFromAdmin() { + return company == null; + } +} Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java 2010-06-15 14:32:33 UTC (rev 531) @@ -85,7 +85,9 @@ NewsDAO dao = WaoDAOHelper.getNewsDAO(transaction); - TopiaQuery query = dao.createQuery().addOrderDesc(News.TOPIA_CREATE_DATE); + TopiaQuery query = dao.createQuery(). + addFetch(News.COMPANY). + addOrderDesc(News.TOPIA_CREATE_DATE); // if (!user.isAdmin() && !user.isGuest()) { // Modified: trunk/wao-business/src/main/xmi/wao.zargo =================================================================== (Binary files differ) Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java 2010-06-15 14:32:33 UTC (rev 531) @@ -27,6 +27,7 @@ import fr.ifremer.wao.WaoException; import fr.ifremer.wao.bean.ConnectedUser; +import fr.ifremer.wao.bean.UserRole; import fr.ifremer.wao.entity.News; import fr.ifremer.wao.entity.NewsImpl; import fr.ifremer.wao.service.ServiceNews; @@ -96,16 +97,6 @@ } } -// void onActivate(EventContext ec) { -// if (ec.getCount() > 0) { -// this.editedId = ec.get(String.class, 0); -// } -// } -// -// String onPassivate() { -// return editedId; -// } - public List<News> getNewsList() throws WaoException { if (newsList == null) { newsList = serviceNews.getNews(user); @@ -114,9 +105,33 @@ } public boolean canEditNews() { - return user.isAdmin() && !user.isReadOnly(); + if (user.isReadOnly()) { + return false; + } + boolean result = false; + if (news != null) { + // ADMIN news + boolean adminEdit = news.isFromAdmin() && user.isAdmin(); + + // COMPANY news + boolean companyEdit = !news.isFromAdmin() && user.isCoordinator(); + + result = adminEdit || companyEdit; + } else { + // In case of a new news + result = user.isAdmin() || user.isCoordinator(); + } + return result; } + public String getHeaderStyle() { + String result = ""; + if (!news.isFromAdmin()) { + result = "company"; + } + return result; + } + public boolean isEditionMode() { return isCreateMode() || news.getTopiaId().equals(editedId); } Modified: trunk/wao-ui/src/main/webapp/Index.tml =================================================================== --- trunk/wao-ui/src/main/webapp/Index.tml 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-ui/src/main/webapp/Index.tml 2010-06-15 14:32:33 UTC (rev 531) @@ -42,13 +42,19 @@ <div class="item" > <p class="date"> <t:unless t:test="createMode"> - Publiée le <t:output value="news.topiaCreateDate" format="dateFormat" /> + Publiée par + <t:if t:test="news.fromAdmin"> + le programme + <p:else>par votre société</p:else> + </t:if> + le + <t:output value="news.topiaCreateDate" format="dateFormat" /> <p:else> En cours de création... </p:else> </t:unless> </p> - <h2> + <h2 class="${headerStyle}"> <t:if t:test="editionMode"> <t:label t:for="title" /> : <input t:type="textfield" t:id="title" value="news.title" class="width200" t:validate="required"/> <p:else> Modified: trunk/wao-ui/src/main/webapp/css/news.css =================================================================== --- trunk/wao-ui/src/main/webapp/css/news.css 2010-06-15 13:56:23 UTC (rev 530) +++ trunk/wao-ui/src/main/webapp/css/news.css 2010-06-15 14:32:33 UTC (rev 531) @@ -51,6 +51,10 @@ color: #007CC2; } +div#so-news div.item h2.company { + color: #19A28D !important; +} + div#so-news div.item div.content { margin: 5px; text-align: justify;
participants (1)
-
fdesbois@users.labs.libre-entreprise.org