Pollen-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- 3260 discussions
r2789 - in trunk/pollen-ui/src/main: java/org/chorem/pollen/ui/base java/org/chorem/pollen/ui/components java/org/chorem/pollen/ui/pages/poll java/org/chorem/pollen/ui/services java/org/chorem/pollen/ui/utils resources resources/org/chorem/pollen/ui/components webapp/poll
by fdesbois@users.chorem.org 04 Nov '09
by fdesbois@users.chorem.org 04 Nov '09
04 Nov '09
Author: fdesbois
Date: 2009-11-04 16:26:08 +0100 (Wed, 04 Nov 2009)
New Revision: 2789
Added:
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/base/ContextLink.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FeedContextLink.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/ImageContextLink.java
Modified:
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FileLink.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/HeadLink.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Image.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/ImageDisplay.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/Results.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/services/Configuration.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/utils/ImageUtil.java
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml
trunk/pollen-ui/src/main/resources/pollen.properties
trunk/pollen-ui/src/main/webapp/poll/ImageDisplay.tml
trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml
trunk/pollen-ui/src/main/webapp/poll/Results.tml
trunk/pollen-ui/src/main/webapp/poll/VoteForPoll.tml
Log:
Ano #64 :
- Add ContextLink to manage path from configuration
- Change absolutepath in url by filename (image or feed) + context component
- Change default config for upImgDir and feedDir
Added: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/base/ContextLink.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/base/ContextLink.java (rev 0)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/base/ContextLink.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -0,0 +1,33 @@
+
+package org.chorem.pollen.ui.base;
+
+import java.io.File;
+
+/**
+ * ContextLink
+ *
+ * Created: 4 nov. 2009
+ *
+ * ContextLink for Link components : HeaderLink, FileLink and Image
+ *
+ * @author fdesbois
+ * @version $Revision$
+ *
+ * Mise a jour: $Date$
+ * par : $Author$
+ */
+public interface ContextLink {
+
+ /**
+ * ContextPath for the link
+ * @return a String contextPath
+ */
+ public String getContextPath();
+
+ /**
+ * Get a file from context with name defined by filename.
+ * @param filename name of the file to get
+ * @return a File with absolutePath corresponding to contextPath + filename
+ */
+ public File getFile(String filename);
+}
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -35,6 +35,7 @@
import org.chorem.pollen.business.dto.UserDTO;
import org.chorem.pollen.business.services.ServiceAuth;
import org.chorem.pollen.business.utils.MD5;
+import org.chorem.pollen.ui.base.ContextLink;
import org.chorem.pollen.ui.data.Lien;
import org.chorem.pollen.ui.services.Configuration;
@@ -67,7 +68,7 @@
@SuppressWarnings("unused")
@Parameter(required = false, defaultPrefix = BindingConstants.LITERAL)
@Property
- private String feedUrl;
+ private String feedFilename;
/**
* Hierarchie de l'adresse
@@ -161,6 +162,13 @@
@Inject
private ServiceAuth serviceAuth;
+ @InjectComponent
+ private ContextLink feedContext;
+
+ public ContextLink getFeedContext() {
+ return feedContext;
+ }
+
/**
* Methode appelée lorsque l'utilisateur s'identifie. L'utilisateur est
* retrouvé grâce au service d'authentification.
@@ -230,10 +238,10 @@
* @return vrai si le fichier existe
*/
public boolean isFeedFileExisting() {
- if (feedUrl == null) {
+ if (feedFilename == null) {
return false;
}
- File feedFile = new File(feedUrl);
+ File feedFile = feedContext.getFile(feedFilename);
return feedFile.exists() ? true : false;
}
Added: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FeedContextLink.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FeedContextLink.java (rev 0)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FeedContextLink.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -0,0 +1,36 @@
+
+package org.chorem.pollen.ui.components;
+
+import org.chorem.pollen.ui.base.ContextLink;
+import java.io.File;
+import org.chorem.pollen.ui.base.*;
+import org.apache.tapestry5.MarkupWriter;
+import org.apache.tapestry5.ioc.annotations.Inject;
+import org.chorem.pollen.ui.services.Configuration;
+
+/**
+ * FeedLink
+ *
+ * Created: 4 nov. 2009
+ *
+ * @author fdesbois
+ * @version $Revision$
+ *
+ * Mise a jour: $Date$
+ * par : $Author$
+ */
+public class FeedContextLink implements ContextLink {
+
+ @Inject
+ private Configuration conf;
+
+ @Override
+ public String getContextPath() {
+ return conf.getProperty(Configuration.FEED_DIR);
+ }
+
+ @Override
+ public File getFile(String filename) {
+ return new File(getContextPath(), filename + ".xml");
+ }
+}
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FileLink.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FileLink.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/FileLink.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -16,6 +16,7 @@
package org.chorem.pollen.ui.components;
+import org.chorem.pollen.ui.base.ContextLink;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
@@ -28,6 +29,7 @@
import org.apache.tapestry5.Link;
import org.apache.tapestry5.MarkupWriter;
import org.apache.tapestry5.StreamResponse;
+import org.apache.tapestry5.annotations.Log;
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.corelib.base.AbstractLink;
import org.apache.tapestry5.ioc.annotations.Inject;
@@ -52,7 +54,7 @@
/** Chemin du fichier */
@Parameter(required = true)
- private String _src;
+ private String _filename;
/** Type MIME du fichier */
@Parameter
@@ -64,8 +66,15 @@
@Inject
private ComponentResources _resources;
+ /**
+ * Context to get the file
+ */
+ @Parameter(required=true)
+ private ContextLink _context;
+
+ @Log
void beginRender(MarkupWriter writer) {
- Link link = _resources.createEventLink("createLink", _src, _type);
+ Link link = _resources.createEventLink("createLink", _filename, _type);
writeLink(writer, link);
}
@@ -74,12 +83,13 @@
}
/** Affichage du fichier */
- public StreamResponse onCreateLink(final String src, String type) {
- if (src == null || "".equals(src)) {
+ public StreamResponse onCreateLink(final String filename, String type) {
+ if (filename == null || "".equals(filename)) {
return null;
}
- File file = new File(src);
+ //File file = new File(/*_context.getContextPath() + */filename/* + _context.getExtension()*/);
+ File file = _context.getFile(filename);
FileInputStream stream = null;
try {
stream = new FileInputStream(file);
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/HeadLink.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/HeadLink.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/HeadLink.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -30,6 +30,7 @@
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.services.Response;
+import org.chorem.pollen.ui.base.ContextLink;
import org.slf4j.Logger;
/**
@@ -37,7 +38,7 @@
*
* <pre>
* Utilisation :
- * <t:headlink rel="alternate" href="${feedUrl}" type="application/atom+xml" title="Pollen ATOM Feed" />
+ * <t:headlink rel="alternate" href="${feedFilename}" type="application/atom+xml" title="Pollen ATOM Feed" />
* </pre>
*
* @author rannou
@@ -46,6 +47,9 @@
public class HeadLink {
/** Chemin du fichier */
+ @Parameter(required = true)
+ private ContextLink _context;
+
@Parameter(required = true, defaultPrefix = BindingConstants.LITERAL)
private String _href;
@@ -82,7 +86,7 @@
return null;
}
- File file = new File(href);
+ File file = _context.getFile(href);
FileInputStream stream = null;
try {
stream = new FileInputStream(file);
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Image.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Image.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Image.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -32,6 +32,7 @@
import org.apache.tapestry5.dom.Element;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.services.Response;
+import org.chorem.pollen.ui.base.ContextLink;
import org.slf4j.Logger;
/**
@@ -56,6 +57,9 @@
@Parameter(required = true)
private String _src;
+ @Parameter(required = true)
+ private ContextLink _context;
+
/** Texte alternatif */
@Parameter
private String _alt;
@@ -93,7 +97,7 @@
return null;
}
- File file = new File(src);
+ File file = _context.getFile(src);
FileInputStream stream = null;
try {
stream = new FileInputStream(file);
Added: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/ImageContextLink.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/ImageContextLink.java (rev 0)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/ImageContextLink.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -0,0 +1,68 @@
+
+package org.chorem.pollen.ui.components;
+
+import java.io.File;
+import org.apache.tapestry5.annotations.Parameter;
+import org.apache.tapestry5.ioc.annotations.Inject;
+import org.chorem.pollen.ui.base.ContextLink;
+import org.chorem.pollen.ui.services.Configuration;
+
+/**
+ * ImageContextLink
+ *
+ * Created: 4 nov. 2009
+ *
+ * @author fdesbois
+ * @version $Revision$
+ *
+ * Mise a jour: $Date$
+ * par : $Author$
+ */
+public class ImageContextLink implements ContextLink {
+
+ public static final String THUMB_PREFIX = "thumb_";
+
+ @Inject
+ private Configuration config;
+
+ /**
+ * Directory for files getting or saving from this context
+ * (ie. subdirectory where images are uploaded, main directory is defined by contextPath)
+ */
+ @Parameter
+ private String dir;
+
+ /**
+ * true for thumbnails images prefixed by {@link Configuration.IMG_DIR}
+ */
+ @Parameter
+ private boolean thumb;
+
+ @Override
+ public String getContextPath() {
+ return config.getProperty(Configuration.IMG_DIR);
+ }
+
+ @Override
+ public File getFile(String filename) {
+ if (thumb) {
+ filename = THUMB_PREFIX + filename;
+ }
+ return new File(getImageDir(), filename);
+ }
+
+ /**
+ * Get the directory where are uploaded the images from the context.
+ * @return a File corresponding to the image directory
+ */
+ public File getImageDir() {
+ File result = null;
+ if (dir != null && !dir.isEmpty()) {
+ result = new File(getContextPath(), dir);
+ } else {
+ result = new File(getContextPath());
+ }
+ return result;
+ }
+
+}
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/ImageDisplay.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/ImageDisplay.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/ImageDisplay.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -19,6 +19,7 @@
import java.io.File;
import org.apache.tapestry5.BindingConstants;
+import org.apache.tapestry5.annotations.InjectComponent;
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.annotations.Persist;
import org.apache.tapestry5.annotations.Property;
@@ -26,6 +27,7 @@
import org.apache.tapestry5.ioc.annotations.Inject;
import org.chorem.pollen.business.dto.ChoiceDTO;
import org.chorem.pollen.business.dto.PollDTO;
+import org.chorem.pollen.ui.components.ImageContextLink;
import org.chorem.pollen.ui.data.Lien;
import org.chorem.pollen.ui.services.Configuration;
@@ -70,6 +72,13 @@
@Property
private ChoiceDTO choice;
+ @InjectComponent
+ private ImageContextLink imgContext;
+
+ public ImageContextLink getImgContext() {
+ return imgContext;
+ }
+
public PollDTO getPoll() {
return poll;
}
@@ -97,13 +106,6 @@
this.pageStyle = pageStyle;
}
- /** Retourne le chemin de l'image correspondant au choix courant */
- public String getChoiceImageSrc() {
- File dir = new File(conf.getProperty("upImgDir"), poll.getPollId());
- File file = new File(dir, choice.getName());
- return file.getAbsolutePath();
- }
-
/**
* Initialisation de la page
*/
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -63,7 +63,10 @@
import org.chorem.pollen.common.ChoiceType;
import org.chorem.pollen.common.PollType;
import org.chorem.pollen.common.VoteCountingType;
+import org.chorem.pollen.ui.base.ContextLink;
import org.chorem.pollen.ui.components.FeedBack;
+import org.chorem.pollen.ui.components.FeedContextLink;
+import org.chorem.pollen.ui.components.ImageContextLink;
import org.chorem.pollen.ui.data.GenericSelectModel;
import org.chorem.pollen.ui.data.Lien;
import org.chorem.pollen.ui.data.PollHelper;
@@ -307,6 +310,18 @@
private List<ImageChoiceUIO> imgTypeChoices;
/**
+ * Contexte pour l'upload des images (parametres definis dans .tml)
+ */
+ @InjectComponent
+ private ImageContextLink imgContext;
+
+ /**
+ * Contexte pour la gestion du flux RSS
+ */
+ @InjectComponent
+ private ContextLink feedContext;
+
+ /**
* Formulaire de création de sondage
*/
@Component(id = "pollCreationForm")
@@ -812,8 +827,8 @@
// Création des images
if (poll.getChoiceType() == ChoiceType.IMAGE) {
- ImageUtil.saveImages(imgTypeChoices, new File(conf
- .getProperty("upImgDir"), poll.getPollId()));
+ File dir = imgContext.getImageDir();
+ ImageUtil.saveImages(imgTypeChoices, dir);
}
// Mise à jour du sondage
@@ -830,8 +845,7 @@
PollAccountDTO creator = servicePollAccount.findPollAccountById(poll
.getCreatorId());
String voteURL = siteURL + "poll/VoteFor/" + poll.getPollId();
- File feedFile = new File(conf.getProperty("feedDir"), poll.getPollId()
- + ".xml");
+ File feedFile = feedContext.getFile(poll.getPollId());
FeedUtil.createFeed(feedFile, "atom_1.0", messages.format(
"pollFeed_title", poll.getTitle()), siteURL, messages.format(
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/Results.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/Results.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/Results.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -16,7 +16,6 @@
package org.chorem.pollen.ui.pages.poll;
-import java.io.File;
import java.text.DateFormat;
import java.util.ArrayList;
import java.util.Collections;
@@ -47,6 +46,7 @@
import org.chorem.pollen.common.PollType;
import org.chorem.pollen.ui.components.Chart;
import org.chorem.pollen.ui.components.FeedBack;
+import org.chorem.pollen.ui.components.ImageContextLink;
import org.chorem.pollen.ui.data.Lien;
import org.chorem.pollen.ui.services.Configuration;
import org.slf4j.Logger;
@@ -153,6 +153,13 @@
@Inject
private ServiceResults serviceResults;
+ @InjectComponent
+ private ImageContextLink imgContext;
+
+ public ImageContextLink getImgContext() {
+ return imgContext;
+ }
+
/** Récupération de la liste des résultats pour le diagramme. */
public ArrayList<ArrayList<String>> getChoices() {
ArrayList<ArrayList<String>> choices = new ArrayList<ArrayList<String>>();
@@ -310,13 +317,6 @@
return new Date(Long.valueOf(result.getName()));
}
- /** Retourne le chemin de la miniature correspondant au résultat courant */
- public String getResultThumbSrc() {
- File dir = new File(conf.getProperty("upImgDir"), poll.getPollId());
- File file = new File(dir, "thumb_" + result.getName());
- return file.getAbsolutePath();
- }
-
/** Action réalisée lorsqu'on clique sur l'image */
Object onDisplayImage(String resultName) {
String choiceId = "";
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -66,7 +66,9 @@
import org.chorem.pollen.common.ChoiceType;
import org.chorem.pollen.common.PollType;
import org.chorem.pollen.common.VoteCountingType;
+import org.chorem.pollen.ui.base.ContextLink;
import org.chorem.pollen.ui.components.FeedBack;
+import org.chorem.pollen.ui.components.ImageContextLink;
import org.chorem.pollen.ui.data.EvenOdd;
import org.chorem.pollen.ui.data.Lien;
import org.chorem.pollen.ui.data.PollAction;
@@ -259,6 +261,34 @@
@Inject
private ServiceResults serviceResults;
+ /**
+ * Composant pour la gestion des flux RSS
+ */
+ @InjectComponent
+ private ContextLink feedContext;
+
+ /**
+ * Context to get feed of the current poll
+ * @return a FeedContext defined in .tml file
+ */
+ public ContextLink getFeedContext() {
+ return feedContext;
+ }
+
+ /**
+ * Composant pour la gestion des upload d'images
+ */
+ @InjectComponent
+ private ImageContextLink imgContext;
+
+ /**
+ * Context to get images for choices.
+ * @return an ImageContextLink defined in .tml file
+ */
+ public ImageContextLink getImgContext() {
+ return imgContext;
+ }
+
/** Méthode appelée après la soumission du vote. */
@Log
Object onSuccessFromVoteForm() {
@@ -484,7 +514,7 @@
private void addFeedEntry(PollAction pollAction, String titleStr,
String contentStr) {
String voteURL = siteURL + "poll/VoteFor/" + poll.getPollId();
- File feedFile = new File(getFeedFileName());
+ File feedFile = getFeedContext().getFile(poll.getPollId());
String title = null;
String content = null;
@@ -601,23 +631,17 @@
*
* @return vrai si le fichier existe
*/
+ @Log
public boolean isFeedFileExisting() {
- File feedFile = new File(getFeedFileName());
+ File feedFile = getFeedContext().getFile(poll.getPollId());
+ if (log.isDebugEnabled()) {
+ log.debug("feed context path : " + getFeedContext().getContextPath());
+ log.debug("feed absolute path : " + feedFile.getAbsolutePath());
+ }
return feedFile.exists() ? true : false;
}
-
+
/**
- * Retourne le nom complet du fichier de flux de syndication.
- *
- * @return le nom du fichier
- */
- public String getFeedFileName() {
- File feedFile = new File(conf.getProperty("feedDir"), poll.getPollId()
- + ".xml");
- return feedFile.getAbsolutePath();
- }
-
- /**
* Supprime le 0 final d'un nombre à virgule. Le résultat peut-être un
* double : 1,0 -> 1 et 1,2 -> 1,2.
*
@@ -743,8 +767,8 @@
newImageChoice.setName(newImageChoice.getImg().getFileName()
.replace(' ', '_'));
poll.getChoiceDTOs().add(newImageChoice);
- ImageUtil.saveImage(newImageChoice, new File(conf
- .getProperty("upImgDir"), poll.getPollId()));
+ File imgFile = getImgContext().getImageDir(); // dir set in getImgContext()
+ ImageUtil.saveImage(newImageChoice, imgFile);
choiceName = newImageChoice.getName();
choiceDesc = newImageChoice.getDescription();
}
@@ -912,20 +936,6 @@
return new Date(Long.valueOf(choiceOfPoll.getName()));
}
- /** Retourne le chemin de l'image correspondant au choix courant */
- public String getChoiceImageSrc() {
- File dir = new File(conf.getProperty("upImgDir"), poll.getPollId());
- File file = new File(dir, choiceOfPoll.getName());
- return file.getAbsolutePath();
- }
-
- /** Retourne le chemin de la miniature correspondant au choix courant */
- public String getChoiceThumbSrc() {
- File dir = new File(conf.getProperty("upImgDir"), poll.getPollId());
- File file = new File(dir, "thumb_" + choiceOfPoll.getName());
- return file.getAbsolutePath();
- }
-
/** Action réalisée lorsqu'on clique sur l'image */
Object onDisplayImage(String choiceId) {
imageDisplay.setPoll(poll);
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/services/Configuration.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/services/Configuration.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/services/Configuration.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -27,6 +27,9 @@
*/
public interface Configuration {
+ public static final String FEED_DIR = "feedDir";
+ public static final String IMG_DIR = "upImgDir";
+
/**
* Retourne les propriétés.
*
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/utils/ImageUtil.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/utils/ImageUtil.java 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/utils/ImageUtil.java 2009-11-04 15:26:08 UTC (rev 2789)
@@ -30,6 +30,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.chorem.pollen.ui.components.ImageContextLink;
import org.chorem.pollen.ui.data.uio.ImageChoiceUIO;
/**
@@ -112,7 +113,7 @@
graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
graphics2D.drawImage(image, 0, 0, width, height, null);
- File thumbCopied = new File(dir, "thumb_" + img.getName());
+ File thumbCopied = new File(dir, ImageContextLink.THUMB_PREFIX + img.getName());
try {
ImageIO.write(thumbImage, "jpg", thumbCopied);
} catch (IOException e) {
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml 2009-11-04 15:26:08 UTC (rev 2789)
@@ -4,8 +4,9 @@
<head>
<title>${message:pollen}</title>
<link rel="shortcut icon" type="image/x-icon" href="${asset:context:favicon.ico}" />
+ <t:FeedContextLink t:id="feedContext" />
<t:if test="${feedFileExisting}">
- <t:headlink rel="alternate" type="application/atom+xml" href="${feedUrl}" />
+ <t:headlink rel="alternate" type="application/atom+xml" href="${feedFilename}" t:context="feedContext" />
</t:if>
<script type="text/javascript" src="${asset:context:js/pollen.js}" />
</head>
Modified: trunk/pollen-ui/src/main/resources/pollen.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/pollen.properties 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/resources/pollen.properties 2009-11-04 15:26:08 UTC (rev 2789)
@@ -31,7 +31,7 @@
adminEmail=admin(a)domain.com
## R\u00C3\u00A9pertoire des images transf\u00C3\u00A9r\u00C3\u00A9es
-upImgDir=~/.pollen/uploadedImages
+upImgDir=.pollen/uploadedImages
## Taille maximal des images transf\u00C3\u00A9r\u00C3\u00A9es (en octets)
upload.filesize-max=1048576
@@ -43,7 +43,7 @@
email_from=bot(a)pollen.org
## R\u00C3\u00A9pertoire des flux de syndication (Atom)
-feedDir=~/.pollen/feeds
+feedDir=.pollen/feeds
## Adresse du site (utilis\u00C3\u00A9e pour les emails de rappel)
siteUrl=
Modified: trunk/pollen-ui/src/main/webapp/poll/ImageDisplay.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/ImageDisplay.tml 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/webapp/poll/ImageDisplay.tml 2009-11-04 15:26:08 UTC (rev 2789)
@@ -16,9 +16,9 @@
</div>
<h3>${choice.name}</h3>
-
+ <t:ImageContextLink t:id="imgContext" t:dir="poll.pollId"/>
<div class="center">
- <t:image src="${choiceImageSrc}" alt="${choiceImageSrc}"/>
+ <t:image src="${choice.name}" alt="${choice.name}" t:context="imgContext"/>
</div>
<div class="center" style="margin-top: 10px;">
Modified: trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml 2009-11-04 15:26:08 UTC (rev 2789)
@@ -221,6 +221,7 @@
<!-- Étape CHOICES - Formulaire différent car t:upload ne fonctionne pas en ajax -->
<t:if test="inChoices">
+ <t:FeedContextLink t:id="feedContext" />
<t:form t:id="choicesCreationForm">
<div id="choicesCreationFormDiv">
<div>
@@ -259,6 +260,7 @@
</div>
</t:formfragment>
<t:formfragment t:id="imgChoiceFragment" visible="isImgChoices()">
+ <t:ImageContextLink t:id="imgContext" t:dir="poll.pollId" />
<div t:type="loop" t:source="imgTypeChoices" t:value="imgTypeChoice" t:volatile="true">
<div class="fleft choiceName">
<t:label for="imgFile" />
Modified: trunk/pollen-ui/src/main/webapp/poll/Results.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/Results.tml 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/webapp/poll/Results.tml 2009-11-04 15:26:08 UTC (rev 2789)
@@ -44,9 +44,10 @@
<t:output value="resultNameAsDate" format="dateFormat"/>
</t:if>
<t:if test="imageType">
+ <t:ImageContextLink t:id="imgContext" t:thumb="true" t:dir="poll.pollId" />
<span t:type="ck/Tooltip" value="${result.name}" effect="appear">
<t:eventlink event="displayImage" context="${result.name}">
- <t:image src="${resultThumbSrc}" alt="${result.name}" />
+ <t:image src="${result.name}" alt="${result.name}" t:context="imgContext" />
</t:eventlink>
</span>
</t:if>
Modified: trunk/pollen-ui/src/main/webapp/poll/VoteForPoll.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/VoteForPoll.tml 2009-11-02 04:28:18 UTC (rev 2788)
+++ trunk/pollen-ui/src/main/webapp/poll/VoteForPoll.tml 2009-11-04 15:26:08 UTC (rev 2789)
@@ -1,5 +1,5 @@
-<t:border t:address="address" t:pageLogo="literal:Vote" t:feedUrl="${feedFileName}"
+<t:border t:address="address" t:pageLogo="literal:Vote" t:feedFilename="${poll.pollId}"
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns:p="tapestry:parameter">
<t:feedback t:id="feedback"/>
@@ -19,8 +19,9 @@
<img src="${asset:context:img/count.png}" title="${message:results-help}" alt="${message:results}"/>
</t:PageLink>
</t:if>
+ <t:FeedContextLink t:id="feedContext" />
<t:if test="feedFileExisting">
- <t:FileLink src="${feedFileName}" type="literal:application/atom+xml">
+ <t:FileLink filename="${poll.pollId}" type="literal:application/atom+xml" t:context="feedContext">
<img src="${asset:context:img/feed.png}" title="Atom" alt="Atom"/>
</t:FileLink>
</t:if>
@@ -93,19 +94,20 @@
</t:loop>
</t:if>
<t:if test="imageType">
+ <t:ImageContextLink t:id="imgContext" t:thumb="true" t:dir="poll.pollId"/>
<t:loop t:source="poll.choiceDTOs" t:value="choiceOfPoll" volatile="true">
<t:unless test="isDescNull()">
<th class="desc">
<span t:type="ck/Tooltip" title="${message:description}" value="${choiceOfPoll.description}" effect="blind">
<t:eventlink event="displayImage" context="${choiceOfPoll.id}">
- <t:image src="${choiceThumbSrc}" alt="${choiceOfPoll.name}" />
+ <t:image src="${choiceOfPoll.name}" alt="${choiceOfPoll.name}" t:context="imgContext"/>
</t:eventlink>
</span>
</th>
<p:else>
<th>
<t:eventlink event="displayImage" context="${choiceOfPoll.id}">
- <t:image src="${choiceThumbSrc}" alt="${choiceOfPoll.name}" />
+ <t:image src="${choiceOfPoll.name}" alt="${choiceOfPoll.name}" t:context="imgContext"/>
</t:eventlink>
</th>
</p:else>
1
0
Author: tchemit
Date: 2009-11-02 05:28:18 +0100 (Mon, 02 Nov 2009)
New Revision: 2788
Modified:
trunk/pom.xml
Log:
- use mavenpom 1.1.0
- reformat poms
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2009-11-02 04:25:47 UTC (rev 2787)
+++ trunk/pom.xml 2009-11-02 04:28:18 UTC (rev 2788)
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -10,7 +11,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>mavenpom</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.0</version>
</parent>
<groupId>org.chorem</groupId>
@@ -279,7 +280,7 @@
<!-- redmine configuration -->
<platform>chorem.org</platform>
<projectId>pollen</projectId>
-
+
<!-- customized versions -->
<!--javadoc.version>2.4</javadoc.version-->
<topia.version>2.2.2-SNAPSHOT</topia.version>
@@ -291,14 +292,14 @@
<!-- license to use -->
<license.licenseName>gpl_v3</license.licenseName>
-
+
</properties>
-
+
<build>
-
+
<pluginManagement>
<plugins>
-
+
<plugin>
<artifactId>maven-site-plugin</artifactId>
<dependencies>
@@ -309,10 +310,10 @@
</dependency>
</dependencies>
</plugin>
-
+
</plugins>
</pluginManagement>
-
+
<resources>
<resource>
<directory>src/main/resources</directory>
@@ -330,7 +331,7 @@
<developerConnection>scm:svn:http://svn.chorem.org/svn/pollen/trunk</developerConnection>
<url>http://www.chorem.org/repositories/browse/pollen/trunk</url>
</scm>
-
+
<repositories>
<!-- chenillekit Repository -->
@@ -341,7 +342,7 @@
<enabled>false</enabled>
</snapshots>
</repository>
-
+
<!-- Maven Java.net Repository -->
<repository>
<id>maven2-repository.dev.java.net</id>
@@ -379,7 +380,7 @@
<enabled>false</enabled>
</releases>
</repository>
-
+
</repositories>
<pluginRepositories>
@@ -416,5 +417,5 @@
</pluginRepository>
</pluginRepositories>
-
+
</project>
1
0
r2787 - in trunk: . pollen-business pollen-ui pollen-votecounting
by tchemit@users.chorem.org 02 Nov '09
by tchemit@users.chorem.org 02 Nov '09
02 Nov '09
Author: tchemit
Date: 2009-11-02 05:25:47 +0100 (Mon, 02 Nov 2009)
New Revision: 2787
Modified:
trunk/
trunk/pollen-business/
trunk/pollen-ui/
trunk/pollen-votecounting/
Log:
svn ignore idea files
Property changes on: trunk
___________________________________________________________________
Modified: svn:ignore
- target
nbactions.xml
.settings
.classpath
.project
+ target
nbactions.xml
.settings
.classpath
.project
*.ipr
*.iws
*.iml
Property changes on: trunk/pollen-business
___________________________________________________________________
Modified: svn:ignore
- target
.classpath
.project
.settings
+ target
.classpath
.project
.settings
*.ipr
*.iws
*.iml
Property changes on: trunk/pollen-ui
___________________________________________________________________
Modified: svn:ignore
- target
.classpath
.project
.settings
+ target
.classpath
.project
.settings
*.ipr
*.iws
*.iml
Property changes on: trunk/pollen-votecounting
___________________________________________________________________
Modified: svn:ignore
- target
.classpath
.project
.settings
+ target
.classpath
.project
.settings
*.ipr
*.iws
*.iml
1
0
19 Oct '09
Author: fdesbois
Date: 2009-10-19 18:12:41 +0200 (Mon, 19 Oct 2009)
New Revision: 2786
Modified:
trunk/pollen-ui/src/main/webapp/css/main.css
trunk/pollen-ui/src/main/webapp/css/pollCreation.css
trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml
trunk/pollen-ui/src/main/webapp/poll/PollModification.tml
Log:
Evol #55 : the description field of choices becomes a textarea (more place to explain the choice)
Modified: trunk/pollen-ui/src/main/webapp/css/main.css
===================================================================
--- trunk/pollen-ui/src/main/webapp/css/main.css 2009-10-19 15:10:05 UTC (rev 2785)
+++ trunk/pollen-ui/src/main/webapp/css/main.css 2009-10-19 16:12:41 UTC (rev 2786)
@@ -10,6 +10,18 @@
margin: auto;
}
+.fleft {
+ float: left;
+}
+
+.fright {
+ float: right;
+}
+
+.clr {
+ clear: both;
+}
+
#CreationBody {
background-image: url("../img/bigCreation.png");
}
Modified: trunk/pollen-ui/src/main/webapp/css/pollCreation.css
===================================================================
--- trunk/pollen-ui/src/main/webapp/css/pollCreation.css 2009-10-19 15:10:05 UTC (rev 2785)
+++ trunk/pollen-ui/src/main/webapp/css/pollCreation.css 2009-10-19 16:12:41 UTC (rev 2786)
@@ -36,15 +36,27 @@
text-align: left;
}
+#choicesCreationFormDiv div {
+ margin-bottom: 5px;
+}
+
#choicesCreationFormDiv fieldset {
border: 1px solid #aab;
padding: 15px;
- width: 600px;
+ width: 670px;
margin: auto;
vertical-align: top;
text-align: left;
}
+#choicesCreationFormDiv div.choiceName {
+ padding-top: 12px;
+}
+
+#choicesCreationFormDiv div.choiceName input.nameField {
+ width: 280px;
+}
+
#pollCreationFormDiv label {
display: block;
width: 150px;
@@ -89,8 +101,7 @@
#pollCreationFormDiv div,
#optionsCreationFormDiv div,
-#listsCreationFormDiv div,
-#choicesCreationFormDiv div {
+#listsCreationFormDiv div {
margin-bottom: 10px;
}
Modified: trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml 2009-10-19 15:10:05 UTC (rev 2785)
+++ trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml 2009-10-19 16:12:41 UTC (rev 2786)
@@ -232,29 +232,44 @@
<legend>${stepLegend}</legend>
<t:formfragment t:id="textChoiceFragment" visible="isTextChoices()">
<div t:type="loop" t:source="choices" t:value="choice" t:volatile="true">
- <t:label for="textName" />
- <t:textfield t:id="textName" t:value="choice.name" />
- -
- <t:label for="textDesc" />
- <t:textfield t:id="textDesc" t:value="choice.description" />
+ <div class="fleft choiceName">
+ <t:label for="textName" />
+ <t:textfield class="nameField" t:id="textName" t:value="choice.name" />
+ -
+ <t:label for="textDesc" />
+ </div>
+ <div class="fleft">
+ <t:textarea cols="30" t:id="textDesc" t:value="choice.description" />
+ </div>
+ <div class="clr" />
</div>
</t:formfragment>
<t:formfragment t:id="dateChoiceFragment" visible="isDateChoices()">
<div t:type="loop" t:source="dateTypeChoices" t:value="dateTypeChoice" t:volatile="true">
- <t:label for="dateDTF" />
- <input t:id="dateDTF" t:value="dateTypeChoice.date" t:validate="regexp" t:datePattern="${message:DTF-pattern}"/>
- -
- <t:label for="dateDesc" />
- <t:textfield t:id="dateDesc" t:value="dateTypeChoice.description" />
+ <div class="fleft choiceName">
+ <t:label for="dateDTF" />
+ <input t:id="dateDTF" t:value="dateTypeChoice.date" t:validate="regexp" t:datePattern="${message:DTF-pattern}"/>
+ -
+ <t:label for="dateDesc" />
+ </div>
+ <div class="fleft">
+ <t:textarea cols="35" t:id="dateDesc" t:value="dateTypeChoice.description" />
+ </div>
+ <div class="clr" />
</div>
</t:formfragment>
<t:formfragment t:id="imgChoiceFragment" visible="isImgChoices()">
<div t:type="loop" t:source="imgTypeChoices" t:value="imgTypeChoice" t:volatile="true">
- <t:label for="imgFile" />
- <input t:type="upload" t:id="imgFile" t:value="imgTypeChoice.img" t:validate="regexp" />
- -
- <t:label for="imgDesc" />
- <t:textfield t:id="imgDesc" t:value="imgTypeChoice.description" />
+ <div class="fleft choiceName">
+ <t:label for="imgFile" />
+ <input class="nameField" t:type="upload" t:id="imgFile" t:value="imgTypeChoice.img" t:validate="regexp" />
+ -
+ <t:label for="imgDesc" />
+ </div>
+ <div class="fleft">
+ <t:textarea cols="30" t:id="imgDesc" t:value="imgTypeChoice.description" />
+ </div>
+ <div class="clr" />
</div>
</t:formfragment>
</fieldset>
Modified: trunk/pollen-ui/src/main/webapp/poll/PollModification.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/PollModification.tml 2009-10-19 15:10:05 UTC (rev 2785)
+++ trunk/pollen-ui/src/main/webapp/poll/PollModification.tml 2009-10-19 16:12:41 UTC (rev 2786)
@@ -156,18 +156,23 @@
<fieldset>
<legend>${stepLegend}</legend>
<div t:type="loop" t:source="poll.choiceDTOs" t:value="choice" t:volatile="true">
- <t:if test="isTextChoices()">
- ${choice.name}
- </t:if>
- <t:if test="isDateChoices()">
- <t:output value="choiceNameAsDate" format="dateFormat"/>
- </t:if>
- <t:if test="isImgChoices()">
- ${choice.name}
- </t:if>
- -
- <t:label for="desc" />
- <t:textfield t:id="desc" t:value="choice.description" />
+ <div class="fleft choiceName">
+ <t:if test="isTextChoices()">
+ ${choice.name}
+ </t:if>
+ <t:if test="isDateChoices()">
+ <t:output value="choiceNameAsDate" format="dateFormat"/>
+ </t:if>
+ <t:if test="isImgChoices()">
+ ${choice.name}
+ </t:if>
+ -
+ <t:label for="desc" />
+ </div>
+ <div class="fleft">
+ <t:textarea cols="35" t:id="desc" t:value="choice.description" />
+ </div>
+ <div class="clr" />
</div>
</fieldset>
<div class="buttons">
1
0
r2785 - trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll
by fdesbois@users.chorem.org 19 Oct '09
by fdesbois@users.chorem.org 19 Oct '09
19 Oct '09
Author: fdesbois
Date: 2009-10-19 17:10:05 +0200 (Mon, 19 Oct 2009)
New Revision: 2785
Modified:
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
Log:
Resolve regression from r2782 : change return form depends on step
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-10-19 14:47:20 UTC (rev 2784)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-10-19 15:10:05 UTC (rev 2785)
@@ -86,6 +86,9 @@
@IncludeStylesheet("context:css/pollCreation.css")
public class PollCreation {
+ @Inject
+ private Logger log;
+
/** Étape courante du formulaire */
@Persist
private PollStep step;
@@ -364,7 +367,11 @@
* Méthode appelée lorsqu'on souhaite accéder à l'étape suivante de la
* création de sondage.
*/
+ @Log
Object onSuccessFromPollCreationForm() {
+ if (log.isDebugEnabled()) {
+ log.debug("Step : " + step);
+ }
switch (step) {
case POLL:
adaptStepPoll();
@@ -392,6 +399,10 @@
step = PollStep.POLL;
break;
}
+ // Cas particulier, autre formulaire pour les choix
+ if (step.equals(PollStep.CHOICES)) {
+ return choicesCreationForm;
+ }
return pollCreationForm;
}
@@ -400,6 +411,7 @@
* de la redéfinir pour qu'en cas d'erreur de validation, la zone soit tout
* de même mise à jour pour afficher l'erreur.
*/
+ @Log
Object onSubmitFromPollCreationForm() {
return pollCreationForm;
}
@@ -446,7 +458,7 @@
step = PollStep.POLL;
break;
}
- return pollCreationForm;
+ return pollCreationForm; // Pas de gestion du formulaire des choix car derniere etape
}
/**
1
0
r2784 - trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll
by fdesbois@users.chorem.org 19 Oct '09
by fdesbois@users.chorem.org 19 Oct '09
19 Oct '09
Author: fdesbois
Date: 2009-10-19 16:47:20 +0200 (Mon, 19 Oct 2009)
New Revision: 2784
Modified:
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java
Log:
Resolve Ano #53 : Add trim() on votingId attribute
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2009-10-19 14:20:46 UTC (rev 2783)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2009-10-19 14:47:20 UTC (rev 2784)
@@ -260,6 +260,7 @@
private ServiceResults serviceResults;
/** Méthode appelée après la soumission du vote. */
+ @Log
Object onSuccessFromVoteForm() {
if (initPollAccount()) {
List<ChoiceDTO> choiceDTOs = new ArrayList<ChoiceDTO>();
@@ -353,6 +354,10 @@
boolean modifAllowed = false;
boolean restrictedListsForbidden = false;
+ // Suppression des espaces pouvant provoquer un double vote
+ String votingId = pollAccount.getVotingId().trim();
+ pollAccount.setVotingId(votingId);
+
// Contrôle de la présence du votant dans les listes de votants
// du sondage (si le sondage n'est pas libre)
if (!isFreePoll()) {
1
0
r2783 - in trunk: . pollen-business/src/main/java/org/chorem/pollen/business/utils pollen-ui/src/main/resources
by fdesbois@users.chorem.org 19 Oct '09
by fdesbois@users.chorem.org 19 Oct '09
19 Oct '09
Author: fdesbois
Date: 2009-10-19 16:20:46 +0200 (Mon, 19 Oct 2009)
New Revision: 2783
Modified:
trunk/changelog.txt
trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java
trunk/pollen-ui/src/main/resources/pollen.properties
trunk/pom.xml
Log:
Remove model version from properties file to use version given by PollenModelDAOHelper
Modified: trunk/changelog.txt
===================================================================
--- trunk/changelog.txt 2009-10-19 13:30:28 UTC (rev 2782)
+++ trunk/changelog.txt 2009-10-19 14:20:46 UTC (rev 2783)
@@ -1,5 +1,9 @@
ChangeLog
+1.2.0
+- Evol #54
+- Ano #49
+
1.1.0
- liste de votants à partir d'un serveur ldap
- export de sondage
Modified: trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java
===================================================================
--- trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java 2009-10-19 13:30:28 UTC (rev 2782)
+++ trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java 2009-10-19 14:20:46 UTC (rev 2783)
@@ -172,8 +172,8 @@
conf = PropertiesLoader.loadPropertiesFile(propertiesFilename);
conf.setProperty("topia.persistence.classes", PollenModelDAOHelper
.getImplementationClassesAsString());
- /*conf.setProperty("topia.service.migration.version", PollenModelDAOHelper
- .getVersion());*/
+ conf.setProperty("topia.service.migration.version", PollenModelDAOHelper
+ .getModelVersion());
// Construction du contexte global
buildContext();
Modified: trunk/pollen-ui/src/main/resources/pollen.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/pollen.properties 2009-10-19 13:30:28 UTC (rev 2782)
+++ trunk/pollen-ui/src/main/resources/pollen.properties 2009-10-19 14:20:46 UTC (rev 2783)
@@ -19,7 +19,6 @@
topia.service.migration.callbackhandlers=org.chorem.pollen.business.migration.PollenMigrationCallbackHandler
topia.service.migration.mappingsdir=oldmappings
topia.service.migration.modelnames=pollen
-topia.service.migration.version=1.2
## Initialisation de la base de donn\u00C3\u00A9es
choiceType=DATE,IMAGE,TEXT
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2009-10-19 13:30:28 UTC (rev 2782)
+++ trunk/pom.xml 2009-10-19 14:20:46 UTC (rev 2783)
@@ -283,7 +283,7 @@
<!-- customized versions -->
<!--javadoc.version>2.4</javadoc.version-->
<topia.version>2.2.2-SNAPSHOT</topia.version>
- <eugene.version>1.0.0</eugene.version>
+ <eugene.version>1.0.1-SNAPSHOT</eugene.version>
<tapestry.version>5.1.0.5</tapestry.version>
<!--Multilanguage maven-site -->
1
0
r2782 - in trunk/pollen-ui/src/main: java/org/chorem/pollen/ui/components java/org/chorem/pollen/ui/pages/poll resources/org/chorem/pollen/ui/components
by fdesbois@users.chorem.org 19 Oct '09
by fdesbois@users.chorem.org 19 Oct '09
19 Oct '09
Author: fdesbois
Date: 2009-10-19 15:30:28 +0200 (Mon, 19 Oct 2009)
New Revision: 2782
Modified:
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_en.properties
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_fr.properties
Log:
Resolve Ano #49 : Add message when javascript is disabled + avoid exception when pollCreation
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java 2009-10-16 16:43:02 UTC (rev 2781)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/components/Border.java 2009-10-19 13:30:28 UTC (rev 2782)
@@ -24,6 +24,7 @@
import org.apache.tapestry5.BindingConstants;
import org.apache.tapestry5.annotations.Component;
import org.apache.tapestry5.annotations.IncludeStylesheet;
+import org.apache.tapestry5.annotations.InjectComponent;
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.annotations.SessionState;
@@ -51,6 +52,8 @@
@Component(id = "borderFeedback")
private FeedBack feedback;
+ @InjectComponent
+ private FeedBack errorJs;
/**
* Objet de session (SSO) représentant l'adresse du site.
*/
@@ -245,6 +248,8 @@
siteURL = "http://" + request.getHeader("host")
+ request.getContextPath() + "/";
+ errorJs.addError(messages.get("errorJs"));
+
// Logo
if (Locale.FRENCH.equals(currentLocale)) {
logo = "pollen" + pageLogo + "_fr.png";
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-10-16 16:43:02 UTC (rev 2781)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-10-19 13:30:28 UTC (rev 2782)
@@ -392,7 +392,7 @@
step = PollStep.POLL;
break;
}
- return pollCreationZone.getBody();
+ return pollCreationForm;
}
/**
@@ -401,7 +401,7 @@
* de même mise à jour pour afficher l'erreur.
*/
Object onSubmitFromPollCreationForm() {
- return pollCreationZone.getBody();
+ return pollCreationForm;
}
/**
@@ -446,7 +446,7 @@
step = PollStep.POLL;
break;
}
- return pollCreationZone.getBody();
+ return pollCreationForm;
}
/**
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml 2009-10-16 16:43:02 UTC (rev 2781)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border.tml 2009-10-19 13:30:28 UTC (rev 2782)
@@ -153,7 +153,10 @@
<!-- Contenu -->
<div id="content">
- <t:feedback t:id="borderFeedback" />
+ <noscript>
+ <t:feedback t:id="errorJs" />
+ </noscript>
+ <t:feedback t:id="borderFeedback" />
<t:body />
</div>
</div>
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_en.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_en.properties 2009-10-16 16:43:02 UTC (rev 2781)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_en.properties 2009-10-19 13:30:28 UTC (rev 2782)
@@ -14,6 +14,8 @@
logout=Log out
or=or
+errorJs=You have to activate JavaScript to use Pollen whitout any problem !
+
#login
login-label=User Name
login-required-message=You must enter your login.
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_fr.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_fr.properties 2009-10-16 16:43:02 UTC (rev 2781)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/components/Border_fr.properties 2009-10-19 13:30:28 UTC (rev 2782)
@@ -4,23 +4,25 @@
home=Accueil
menu1=Sondages
menu2=Administration
-pollCreation=Créer un sondage
-createdPolls=Sondages créés
-participatedPolls=Sondages participés
+pollCreation=Cr\u00E9er un sondage
+createdPolls=Sondages cr\u00E9\u00E9s
+participatedPolls=Sondages particip\u00E9s
votingLists=Listes de votants
-pollsAdmin=Gérer les sondages
-usersAdmin=Gérer les utilisateurs
+pollsAdmin=G\u00E9rer les sondages
+usersAdmin=G\u00E9rer les utilisateurs
account=Mon compte
-logout=Déconnexion
+logout=D\u00E9connexion
or=ou
+errorJs=Vous devez activer le JavaScript pour pouvoir utiliser sereinement Pollen !
+
#login
login-label=Identifiant
login-required-message=Vous devez entrer votre identifiant.
password-label=Mot de passe
password-required-message=Vous devez entrer votre mot de passe.
loginSubmit=M'identifier
-loginOk=Vous êtes connecté.
+loginOk=Vous \u00EAtes connect\u00E9.
loginFailed=Mauvais identifiant ou mot de passe.
#foot
1
0
Author: fdesbois
Date: 2009-10-16 18:43:02 +0200 (Fri, 16 Oct 2009)
New Revision: 2781
Modified:
trunk/pollen-business/src/main/xmi/pollen.zargo
Log:
Evol #54 : Add end date for choices. Change model version to 1.2
Modified: trunk/pollen-business/src/main/xmi/pollen.zargo
===================================================================
--- trunk/pollen-business/src/main/xmi/pollen.zargo 2009-10-16 16:42:52 UTC (rev 2780)
+++ trunk/pollen-business/src/main/xmi/pollen.zargo 2009-10-16 16:43:02 UTC (rev 2781)
@@ -1,7 +1,7 @@
-PK$�P;pollen.argo}Tˎ�0��W >�LFU�a�tѪUG�v9pW�1�4�����v2$�����uMe/��B1n��e�Tu'Z�a�T[�!�FB��CSW����)�����C�晼|!���ڞ�@���(<Q�0�M�V�5��
+PKZ�P;pollen.argo}Tˎ�0��W >�LFU�a�tѪUG�v9pW�1�4�����v2$�����uMe/��B1n��e�Tu'Z�a�T[�!�FB��CSW����)�����C�晼|!���ڞ�@���(<Q�0�M�V�5��
�F�9F����??��@
�|�sը�D����A/4
-z��z�`�H�-.�-M�{G�S3*<"C}II�(�i��7��rQ#e3eRy�G�$�Rcޑ�R}���y�A��h�+����aT&U`����z�N��j��8���C�qw���;8b�Z7j�J!D{���y�^v`o;(��Z��+����s����vaF87�1ۜ[f3��C�Kʛ���*����eIJ(�Z���&��b�pږ�o����>쿽�E�h8����[�K`[ڹ��Av��PK-��\��筟�� �}���s�A��^z�2�u�RȞ��pF�X������|��b��wc�N���]�>�5������u/tB�L��O�������̎ۖ�<�PKptB�PK$�P;pollen_DC_Pollen.pgml�]mo�F���_�k\�(�pH����,
+z��z�`�H�-.�-M�{G�S3*<"C}II�(�i��7��rQ#e3eRy�G�$�Rcޑ�R}���y�A��h�+����aT&U`����z�N��j��8���C�qw���;8b�Z7j�J!D{���y�^v`o;(��Z��+����s����vaF87�1ۜ[f3��C�Kʛ���*����eIJ(�Z���&��b�pږ�o����>쿽�E�h8����[�K`[ڹ��Av��PK-��\��筟�� �}���s�A��^z�2�u�RȞ��pF�X������|��b��wc�N���]�>�5������u/tB�L��O�������̎ۖ�<�PKptB�PKZ�P;pollen_DC_Pollen.pgml�]mo�F���_�k\�(�pH����,
�ݠM,��,ю�ʒ!�Isq�R29�9�!9!�E��Dʞg�9|漾�����x�[n�o.�K�b���r}��������䯗߽��������&���������w?O.�^.��~E��"�ͷ��}�m������~��/J�Y,g������~�_����o����m��i�����Y�v���k�o��t�S�O�����s�f���H����W���W������w����=�o.�����f����]�^�o7O����/��O������?�ً ���y!����8��c�[ޮ�7w��.�a����f��1�cy���y������/���0���ۧ}\|;�{?m�7��tsM�o�[�V|�?�7����ŗO�}�}����O,^zx�x��j6�O��e�������l�����m<�����Xؐ�ٖ�����ǯo.8��?}Y.���^��Χxy�i�ܓ}�����=��+�!/k2���Y�^�
�An~�da���+U
�%|��-W7]���Ɨcty�����E�LP.� Ȣ � A�����5K.[q&|1���}qH^G �����u�g��3Y�d����'w�5�+�}^m��w���j9s�ڶ����j���|�n�� �8��v���r>;(�M��J����_V���������?��O��ٰ��x�A�?�E�1����g_`ۖ�c
@@ -41,10 +41,10 @@
�V/ٍ�D�[�k��j���Xժj�8:߂�
�V/ٍ��V�E_�U����X��@�^���;�(�^�ɷ�v4�_��]E��%�Q\����R�iy0H[�GŻޟ\�Gz8���mU^�łH?�ڛ���\{����6��M6��gʓ~N�7F�]�ڤ���m�o9D��lEU����;�3�z�֬���Y&t,�Q�f,��E@��vKC�p��=�v^���P���)�����s��t���^���;�� ��������W��
����;�� �m�\�qG1c��ȁ��'r���N�N�pES�O���,�9�^!�Pt��AB������ΕP�қ�T�/T-l��j���h����w��Mz:H��=�N�z4L�d�;��&=����&z��PU敔������x��P��h^'��i���3f�O�N��@�H�:-2Ҽ�{`�摑�Et\ d�y5��6�#�&�K��j�<�r3�WsN^S4調ج���G��@��i�U'!Z:Ҽ�.�t�y5��:ͣ#ͻ�"bKG�Wsl�<�mҼ�,��`E����h���G'KD��l��ir�*x^i^]�ח�G�Wy5G�z4�d��u@�z:��=�N�z4�Tد�����^O�!5�����3�0ST�3�((!z��Iw-
-��o�?�.��PK1f��^��PK$�P;pollen.todo�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��q�(��;�D�*���+G���*(�8z)%)J
-@% ���,.2���E���9e�)�E�%��� Y,B3PK4�[-m�PK$�P;pollen_profile.profile�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��qq��e��q��ÙPK7Rp:BPK$�P;
+��o�?�.��PK1f��^��PKZ�P;pollen.todo�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��q�(��;�D�*���+G���*(�8z)%)J
+@% ���,.2���E���9e�)�E�%��� Y,B3PK4�[-m�PKZ�P;pollen_profile.profile�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��qq��e��q��ÙPK7Rp:BPKZ�P;
pollen.xmi�]듣6����ڪN�^{x?��ٲ�����ܩ�$w�
-���3��_�������dD��[�GG��<t��/�����=�(��`���A\38����?�l��������~�}{����C��>����{�I���n�5������ˇY�M��!k�����8�L�f��(���9[o>�I�`>��a6�~o�F�g�����s|�A��������FI�v����q6��0�!�YF��F~��<�t�?����ʿN���X�?i?�"���Н���������u.J3�x������~:��3H�{�~�|ϛ�<�Ǭ����?~�
+���3��_�������dD��[�GG��<t��/�����=�(��`���A\38����?�l��������~�}{����C��>����{�I���n�5������ˇY�M��!k�����8�L�f��H��4[o>�I�`>��a6�~o�F�g�����s|�A��������FI�v����q6��0�!�YF��F~��<�t�?����ʿN���X�?i?�"���Н���������u.J3�x������~:��3H�{�~�|ϛ�<�Ǭ����?~�
1М�'�r0t�~Vp�����x93��(.�߽?�酅G�0H����2�����:�ͦf�)�a�Eu>i�K���xE�ɺ <�x�� <
��J�^ؗѕ��S��� ����>@��|'T���1̾�#���C�~��Z?^�q��y��C��aƹEv;���GX4zi���ĸM3�bK�)y�(��f;PbԒ%��������5$�Dh��~yW�u�K��R��&�����9
7������û%�ˤT�?�ٻ6�����K¿�4���O���]Ω(��2�G�COl�H��ڦ�x"'
@@ -93,5 +93,5 @@
���%������@���W�.
�hs�d���K%�p���Ϻ��(�((�W�%D;�z�q����P\�������0L�{ �ƥ�M��Ԕ ��Mkb+�qăK%1��d�}m��@��6.�}Ĥ�Ҁ��L=�(*�bB�@Lh�� �r��V�'��6�J�8TP��'��X*���!���]8T�7�X�S��T�^���ۋO%Z�M4�� �PA�G
�p���3*�
-��!��82*��#�!��H*F��~=��]״��${�a��/����$�?��%!�K-���G֏IH������G>� Y��H~�D�� k���ć�&Y�Rk#���+\��<�Δ�ۙ���H~�=-�S_�ﳧet�#���=o$4w�� �������e�����3���e���@@�6�nVs�z�5�X6�*�\e#��6r����s�][bF��i�b���Q��741 ��*�_����o'$�������PKк��+�-PK$�P;ptB�pollen.argoPK$�P;1f��^��Gpollen_DC_Pollen.pgmlPK$�P;4�[-m��pollen.todoPK$�P;7Rp:B� pollen_profile.profilePK$�P;к��+�-
+��!��82*��#�!��H*F��~=��]״��${�a��/����$�?��%!�K-���G֏IH������G>� Y��H~�D�� k���ć�&Y�Rk#���+\��<�Δ�ۙ���H~�=-�S_�ﳧet�#���=o$4w�� �������e�����3���e���@@�6�nVs�z�5�X6�*�\e#��6r����s�][bF��i�b���Q��741 ��*�_����o'$�������PK$�M+�-PKZ�P;ptB�pollen.argoPKZ�P;1f��^��Gpollen_DC_Pollen.pgmlPKZ�P;4�[-m��pollen.todoPKZ�P;7Rp:B� pollen_profile.profilePKZ�P;$�M+�-
!pollen.xmiPK1o9
\ No newline at end of file
2
1
Author: fdesbois
Date: 2009-10-16 18:42:52 +0200 (Fri, 16 Oct 2009)
New Revision: 2780
Added:
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceTypeImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/CommentImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonListImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonToListImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollAccountImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollTypeImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PreventRuleImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ResultImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/UserAccountImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteCountingImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteToChoiceImpl.hbm.xml
trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VotingListImpl.hbm.xml
trunk/pollen-ui/nbactions.xml
Modified:
trunk/pollen-business/pom.xml
trunk/pollen-business/src/main/java/org/chorem/pollen/business/converters/DataPollConverter.java
trunk/pollen-business/src/main/java/org/chorem/pollen/business/dto/PollDTO.java
trunk/pollen-business/src/main/java/org/chorem/pollen/business/migration/PollenMigrationCallbackHandler.java
trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java
trunk/pollen-business/src/main/xmi/pollen.zargo
trunk/pollen-ui/pom.xml
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollModification.java
trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java
trunk/pollen-ui/src/main/resources/log4j.properties
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_en.properties
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_fr.properties
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_en.properties
trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_fr.properties
trunk/pollen-ui/src/main/resources/pollen.properties
trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml
trunk/pollen-ui/src/main/webapp/poll/PollModification.tml
trunk/pollen-votecounting/pom.xml
trunk/pom.xml
Log:
Evol #54 : Add end date for choices. Change model version to 1.2
Modified: trunk/pollen-business/pom.xml
===================================================================
--- trunk/pollen-business/pom.xml 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-business/pom.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -10,7 +10,7 @@
<parent>
<groupId>org.chorem</groupId>
<artifactId>pollen</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.2.0-SNAPSHOT</version>
</parent>
<groupId>org.chorem.pollen</groupId>
Modified: trunk/pollen-business/src/main/java/org/chorem/pollen/business/converters/DataPollConverter.java
===================================================================
--- trunk/pollen-business/src/main/java/org/chorem/pollen/business/converters/DataPollConverter.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-business/src/main/java/org/chorem/pollen/business/converters/DataPollConverter.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -62,6 +62,7 @@
ePoll.setTitle(pollDTO.getTitle());
ePoll.setDescription(pollDTO.getDescription());
ePoll.setBeginChoiceDate(pollDTO.getBeginChoiceDate());
+ ePoll.setEndChoiceDate(pollDTO.getEndChoiceDate());
ePoll.setBeginDate(pollDTO.getBeginDate());
ePoll.setEndDate(pollDTO.getEndDate());
ePoll.setClosed(pollDTO.isClosed());
@@ -97,6 +98,7 @@
pollDTO.setTitle(ePoll.getTitle());
pollDTO.setDescription(ePoll.getDescription());
pollDTO.setBeginChoiceDate(ePoll.getBeginChoiceDate());
+ pollDTO.setEndChoiceDate(ePoll.getEndChoiceDate());
pollDTO.setBeginDate(ePoll.getBeginDate());
pollDTO.setEndDate(ePoll.getEndDate());
pollDTO.setAnonymous(ePoll.getAnonymous());
Modified: trunk/pollen-business/src/main/java/org/chorem/pollen/business/dto/PollDTO.java
===================================================================
--- trunk/pollen-business/src/main/java/org/chorem/pollen/business/dto/PollDTO.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-business/src/main/java/org/chorem/pollen/business/dto/PollDTO.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -48,6 +48,8 @@
private Date beginChoiceDate = null;
+ private Date endChoiceDate = null;
+
private int maxChoiceNb = 0;
private boolean closed = false;
@@ -144,6 +146,24 @@
this.beginDate = beginDate;
}
+ /**
+ * Get the value of endChoiceDate
+ *
+ * @return the value of endChoiceDate
+ */
+ public Date getEndChoiceDate() {
+ return endChoiceDate;
+ }
+
+ /**
+ * Set the value of endChoiceDate
+ *
+ * @param endChoiceDate new value of endChoiceDate
+ */
+ public void setEndChoiceDate(Date endChoiceDate) {
+ this.endChoiceDate = endChoiceDate;
+ }
+
public Date getEndDate() {
return endDate;
}
Modified: trunk/pollen-business/src/main/java/org/chorem/pollen/business/migration/PollenMigrationCallbackHandler.java
===================================================================
--- trunk/pollen-business/src/main/java/org/chorem/pollen/business/migration/PollenMigrationCallbackHandler.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-business/src/main/java/org/chorem/pollen/business/migration/PollenMigrationCallbackHandler.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -64,6 +64,10 @@
VersionUtil.valueOf("1.1"))) {
migrateTo1_1(conn, dialect);
}
+ if (VersionUtil.valueOf(dbVersion).before(
+ VersionUtil.valueOf("1.2"))) {
+ migrate1_1To1_2(conn, dialect);
+ }
conn.commit();
result = MigrationChoice.CUSTOM_MIGRATION;
} catch (Exception eee) {
@@ -121,4 +125,34 @@
log.info("done " + sql);
}
}
+
+ /** Migration de la version 1.1 à 1.2 */
+ private void migrate1_1To1_2(Connection conn, Dialect dialect)
+ throws SQLException {
+ log.info("Migrate version 1_1 to version 1_2");
+ String[] sqls = null;
+
+ // Script de migration
+ if (dialect instanceof PostgreSQLDialect) {
+ sqls = new String[] {
+ "alter table poll add endchoicedate timestamp without time zone;" };
+ } else if (dialect instanceof H2Dialect) {
+ sqls = new String[] {
+ "alter table poll add endchoicedate timestamp before begindate;" };
+ } else {
+ if (log.isErrorEnabled()) {
+ log
+ .error("Migration non prise en charge pour ce type de dialect : "
+ + dialect);
+ }
+ }
+
+ // Exécution de la migration
+ for (String sql : sqls) {
+ log.info("try " + sql);
+ PreparedStatement sta = conn.prepareStatement(sql);
+ sta.executeUpdate();
+ log.info("done " + sql);
+ }
+ }
}
Modified: trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java
===================================================================
--- trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-business/src/main/java/org/chorem/pollen/business/utils/ContextUtil.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -141,12 +141,14 @@
String filename = null;
try {
- Context context = new InitialContext();
+ Context jndiContext = new InitialContext();
- filename = (String) context.lookup("configurationfilename");
+ filename = (String) jndiContext.lookup("configurationfilename");
} catch (NamingException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't get jndi", e);
+ if (log.isDebugEnabled()) {
+ log.debug("Can't get jndi", e);
+ } else if (log.isInfoEnabled()) {
+ log.info("Can't get jndi");
}
}
@@ -170,6 +172,8 @@
conf = PropertiesLoader.loadPropertiesFile(propertiesFilename);
conf.setProperty("topia.persistence.classes", PollenModelDAOHelper
.getImplementationClassesAsString());
+ /*conf.setProperty("topia.service.migration.version", PollenModelDAOHelper
+ .getVersion());*/
// Construction du contexte global
buildContext();
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.ChoiceImpl" table="choice" node="org.chorem.pollen.business.persistence.ChoiceImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.Choice" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ <property name="description" type="text" access="field" column="description" node="description"/>
+ <property name="validate" type="java.lang.Boolean" access="field" column="validate" node="validate"/>
+ <bag name="voteVoteToChoice" inverse="true" lazy="true" cascade="all,delete-orphan" node="voteVoteToChoice" embed-xml="false">
+ <key column="choice"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.VoteToChoiceImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <many-to-one name="poll" class="org.chorem.pollen.business.persistence.PollImpl" column="poll" node="poll/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceTypeImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceTypeImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ChoiceTypeImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.ChoiceTypeImpl" table="choiceType" node="org.chorem.pollen.business.persistence.ChoiceTypeImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.ChoiceType" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/CommentImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/CommentImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/CommentImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.CommentImpl" table="comment" node="org.chorem.pollen.business.persistence.CommentImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.Comment" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="text" type="text" access="field" column="text" node="text"/>
+ <property name="postDate" type="java.util.Date" access="field" column="postDate" node="postDate"/>
+ <many-to-one name="poll" class="org.chorem.pollen.business.persistence.PollImpl" column="poll" node="poll/@topiaId" embed-xml="false"/>
+ <many-to-one name="pollAccount" class="org.chorem.pollen.business.persistence.PollAccountImpl" column="pollAccount" node="pollAccount/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonListImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonListImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonListImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.PersonListImpl" table="personList" node="org.chorem.pollen.business.persistence.PersonListImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.PersonList" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ <many-to-one name="owner" class="org.chorem.pollen.business.persistence.UserAccountImpl" column="owner" node="owner/@topiaId" embed-xml="false"/>
+ <bag name="pollAccount" inverse="true" lazy="true" node="pollAccount" embed-xml="false">
+ <key column="personList"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PollAccountImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonToListImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonToListImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PersonToListImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.PersonToListImpl" table="personToList" node="org.chorem.pollen.business.persistence.PersonToListImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.PersonToList" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="weight" type="java.lang.Double" access="field" column="weight" node="weight"/>
+ <property name="hasVoted" type="java.lang.Boolean" access="field" column="hasVoted" node="hasVoted"/>
+ <many-to-one name="votingList" class="org.chorem.pollen.business.persistence.VotingListImpl" column="votingList" node="votingList/@topiaId" embed-xml="false" />
+ <many-to-one name="pollAccount" class="org.chorem.pollen.business.persistence.PollAccountImpl" column="pollAccount" node="pollAccount/@topiaId" embed-xml="false" />
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollAccountImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollAccountImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollAccountImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.PollAccountImpl" table="pollAccount" node="org.chorem.pollen.business.persistence.PollAccountImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.PollAccount" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="accountId" type="text" access="field" column="accountId" node="accountId"/>
+ <property name="votingId" type="text" access="field" column="votingId" node="votingId"/>
+ <property name="email" type="text" access="field" column="email" node="email"/>
+ <bag name="votingListPersonToList" inverse="true" lazy="true" cascade="all,delete-orphan" node="votingListPersonToList" embed-xml="false">
+ <key column="pollAccount"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PersonToListImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="pollsCreated" inverse="true" lazy="true" node="pollsCreated" embed-xml="false">
+ <key column="creator"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PollImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="comment" inverse="true" lazy="true" node="comment" embed-xml="false">
+ <key column="pollAccount"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.CommentImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="vote" inverse="true" lazy="true" node="vote" embed-xml="false">
+ <key column="pollAccount"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.VoteImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <many-to-one name="personList" class="org.chorem.pollen.business.persistence.PersonListImpl" column="personList" node="personList/@topiaId" embed-xml="false"/>
+ <many-to-one name="userAccount" class="org.chorem.pollen.business.persistence.UserAccountImpl" column="userAccount" node="userAccount/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.PollImpl" table="poll" node="org.chorem.pollen.business.persistence.PollImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.Poll" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="pollId" type="text" access="field" column="pollId" node="pollId"/>
+ <property name="title" type="text" access="field" column="title" node="title"/>
+ <property name="description" type="text" access="field" column="description" node="description"/>
+ <property name="beginChoiceDate" type="java.util.Date" access="field" column="beginChoiceDate" node="beginChoiceDate"/>
+ <property name="beginDate" type="java.util.Date" access="field" column="beginDate" node="beginDate"/>
+ <property name="endDate" type="java.util.Date" access="field" column="endDate" node="endDate"/>
+ <property name="maxChoiceNb" type="java.lang.Integer" access="field" column="maxChoiceNb" node="maxChoiceNb"/>
+ <property name="closed" type="java.lang.Boolean" access="field" column="closed" node="closed"/>
+ <property name="choiceAddAllowed" type="java.lang.Boolean" access="field" column="choiceAddAllowed" node="choiceAddAllowed"/>
+ <property name="anonymousVoteAllowed" type="java.lang.Boolean" access="field" column="anonymousVoteAllowed" node="anonymousVoteAllowed"/>
+ <property name="anonymous" type="java.lang.Boolean" access="field" column="anonymous" node="anonymous"/>
+ <property name="publicResults" type="java.lang.Boolean" access="field" column="publicResults" node="publicResults"/>
+ <property name="continuousResults" type="java.lang.Boolean" access="field" column="continuousResults" node="continuousResults"/>
+ <property name="endChoiceDate" type="java.util.Date" access="field" column="endChoiceDate" node="endChoiceDate"/>
+ <bag name="vote" inverse="true" lazy="true" cascade="all,delete-orphan" node="vote" embed-xml="false">
+ <key column="poll"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.VoteImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="choice" inverse="true" lazy="true" cascade="all,delete-orphan" node="choice" embed-xml="false">
+ <key column="poll"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.ChoiceImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="result" inverse="true" lazy="true" cascade="all,delete-orphan" node="result" embed-xml="false">
+ <key column="poll"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.ResultImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <many-to-one name="creator" class="org.chorem.pollen.business.persistence.PollAccountImpl" column="creator" node="creator/@topiaId" embed-xml="false"/>
+ <bag name="comment" inverse="true" lazy="true" cascade="all,delete-orphan" node="comment" embed-xml="false">
+ <key column="poll"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.CommentImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="preventRule" inverse="true" lazy="true" cascade="all,delete-orphan" node="preventRule" embed-xml="false">
+ <key column="poll"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PreventRuleImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="votingList" inverse="true" lazy="true" cascade="all,delete-orphan" node="votingList" embed-xml="false">
+ <key column="poll"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.VotingListImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <many-to-one name="pollType" class="org.chorem.pollen.business.persistence.PollTypeImpl" column="pollType" node="pollType/@topiaId" embed-xml="false"/>
+ <many-to-one name="choiceType" class="org.chorem.pollen.business.persistence.ChoiceTypeImpl" column="choiceType" node="choiceType/@topiaId" embed-xml="false"/>
+ <many-to-one name="voteCounting" class="org.chorem.pollen.business.persistence.VoteCountingImpl" column="voteCounting" node="voteCounting/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollTypeImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollTypeImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PollTypeImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.PollTypeImpl" table="pollType" node="org.chorem.pollen.business.persistence.PollTypeImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.PollType" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PreventRuleImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PreventRuleImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/PreventRuleImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.PreventRuleImpl" table="preventRule" node="org.chorem.pollen.business.persistence.PreventRuleImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.PreventRule" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="scope" type="text" access="field" column="scope" node="scope"/>
+ <property name="sensibility" type="java.lang.Integer" access="field" column="sensibility" node="sensibility"/>
+ <property name="repeated" type="java.lang.Boolean" access="field" column="repeated" node="repeated"/>
+ <property name="active" type="java.lang.Boolean" access="field" column="active" node="active"/>
+ <property name="oneTime" type="java.lang.Boolean" access="field" column="oneTime" node="oneTime"/>
+ <property name="method" type="text" access="field" column="method" node="method"/>
+ <many-to-one name="poll" class="org.chorem.pollen.business.persistence.PollImpl" column="poll" node="poll/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ResultImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ResultImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/ResultImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.ResultImpl" table="result" node="org.chorem.pollen.business.persistence.ResultImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.Result" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ <property name="ResultValue" type="text" access="field" column="resultValue" node="ResultValue"/>
+ <property name="byGroup" type="java.lang.Boolean" access="field" column="byGroup" node="byGroup"/>
+ <many-to-one name="poll" class="org.chorem.pollen.business.persistence.PollImpl" column="poll" node="poll/@topiaId" embed-xml="false"/>
+ <many-to-one name="voteCounting" class="org.chorem.pollen.business.persistence.VoteCountingImpl" column="voteCounting" node="voteCounting/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/UserAccountImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/UserAccountImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/UserAccountImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.UserAccountImpl" table="userAccount" node="org.chorem.pollen.business.persistence.UserAccountImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.UserAccount" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="login" type="text" access="field" column="login" node="login"/>
+ <property name="password" type="text" access="field" column="password" node="password"/>
+ <property name="firstName" type="text" access="field" column="firstName" node="firstName"/>
+ <property name="lastName" type="text" access="field" column="lastName" node="lastName"/>
+ <property name="administrator" type="java.lang.Boolean" access="field" column="administrator" node="administrator"/>
+ <property name="language" type="text" access="field" column="language" node="language"/>
+ <property name="email" type="text" access="field" column="email" node="email"/>
+ <bag name="favoriteList" inverse="true" lazy="true" node="favoriteList" embed-xml="false">
+ <key column="owner"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PersonListImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <bag name="pollAccount" inverse="true" lazy="true" node="pollAccount" embed-xml="false">
+ <key column="userAccount"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PollAccountImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteCountingImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteCountingImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteCountingImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.VoteCountingImpl" table="voteCounting" node="org.chorem.pollen.business.persistence.VoteCountingImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.VoteCounting" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.VoteImpl" table="vote" node="org.chorem.pollen.business.persistence.VoteImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.Vote" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="weight" type="java.lang.Double" access="field" column="weight" node="weight"/>
+ <property name="comment" type="text" access="field" column="comment" node="comment"/>
+ <property name="anonymous" type="java.lang.Boolean" access="field" column="anonymous" node="anonymous"/>
+ <bag name="choiceVoteToChoice" inverse="true" lazy="true" cascade="all,delete-orphan" node="choiceVoteToChoice" embed-xml="false">
+ <key column="vote"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.VoteToChoiceImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <many-to-one name="poll" class="org.chorem.pollen.business.persistence.PollImpl" column="poll" node="poll/@topiaId" embed-xml="false"/>
+ <many-to-one name="pollAccount" class="org.chorem.pollen.business.persistence.PollAccountImpl" column="pollAccount" node="pollAccount/@topiaId" embed-xml="false"/>
+ <many-to-one name="votingList" class="org.chorem.pollen.business.persistence.VotingListImpl" column="votingList" node="votingList/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteToChoiceImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteToChoiceImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VoteToChoiceImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.VoteToChoiceImpl" table="voteToChoice" node="org.chorem.pollen.business.persistence.VoteToChoiceImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.VoteToChoice" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="voteValue" type="java.lang.Integer" access="field" column="voteValue" node="voteValue"/>
+ <many-to-one name="vote" class="org.chorem.pollen.business.persistence.VoteImpl" column="vote" node="vote/@topiaId" embed-xml="false" />
+ <many-to-one name="choice" class="org.chorem.pollen.business.persistence.ChoiceImpl" column="choice" node="choice/@topiaId" embed-xml="false" />
+ </class>
+</hibernate-mapping>
Added: trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VotingListImpl.hbm.xml
===================================================================
--- trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VotingListImpl.hbm.xml (rev 0)
+++ trunk/pollen-business/src/main/resources/oldmappings/pollen/1.2/org/chorem/pollen/business/persistence/VotingListImpl.hbm.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping default-access="field" auto-import="true" package="org.chorem.pollen.business.persistence">
+ <class name="org.chorem.pollen.business.persistence.VotingListImpl" table="votingList" node="org.chorem.pollen.business.persistence.VotingListImpl" abstract="false" proxy="org.chorem.pollen.business.persistence.VotingList" >
+ <id name="topiaId" type="string" length="255" node="@topiaId"/>
+ <version name="topiaVersion" type="long" node="@topiaVersion"/>
+ <property name="topiaCreateDate" type="date" node="@topiaCreateDate"/>
+ <property name="name" type="text" access="field" column="name" node="name"/>
+ <property name="weight" type="java.lang.Double" access="field" column="weight" node="weight"/>
+ <bag name="pollAccountPersonToList" inverse="true" lazy="true" cascade="all,delete-orphan" node="pollAccountPersonToList" embed-xml="false">
+ <key column="votingList"/>
+ <one-to-many class="org.chorem.pollen.business.persistence.PersonToListImpl" node="topiaId" embed-xml="false"/>
+ </bag>
+ <many-to-one name="poll" class="org.chorem.pollen.business.persistence.PollImpl" column="poll" node="poll/@topiaId" embed-xml="false"/>
+ <many-to-one name="vote" class="org.chorem.pollen.business.persistence.VoteImpl" column="vote" node="vote/@topiaId" embed-xml="false"/>
+ </class>
+</hibernate-mapping>
Modified: trunk/pollen-business/src/main/xmi/pollen.zargo
===================================================================
--- trunk/pollen-business/src/main/xmi/pollen.zargo 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-business/src/main/xmi/pollen.zargo 2009-10-16 16:42:52 UTC (rev 2780)
@@ -1,91 +1,97 @@
-PK�x;pollen.argo}TM��0��@�ج���%�U��V�9r`#���4��c�d�H�����b���J����~ʲ���0fua̚^�� ��21RC����|�P?/_��jy��(c�,�Dy�p�X��:|
-�s�
-�e�~��6ŧ��c����Q��բ���r
-z���Y��4�p
-F�Lk����0��wT<5��#r4�4��Ra���cs#^�Q�d|b�B*_�Q>*9�2��H�F�����ym@��h�+�1M�r��*p����z�N�pݳV��ؚ�;t�zy�-�E�#��"�h��x;Or0�쩃������Po^<7�T�.L��9f�&Q&��:�D��^%ݼ��mE̋���SM?2�g���6}������a��-��Y#@i+C(oe.�mNs?!�<��\�D����*��[?>�Q8��sc'���F��Г���ms��½wV����-�{����7�*(,�n�ܩ��֧���������C(�)���F��kh81�h�TB��PK<�`�PK�x;pollen_DC_Pollen.pgml�]m��6���_�;��Oq*����d�Yh�A�X,������؞���?�R�-Q�Eٴ�H��-y��9:|��ۿ���}�כ�j����.F�r��͗��.~�x7/F���������?>�=?�~��o��<�H~x=��.���x3]ϟ�鷭֏�'����(�g6�<�'O�7��v>��f�~�n_��������f1�lnw��ߘ��8������M� ?� �<<�oơ�yo<�u����F�k9y��]�����j����]��>�W/����������t�-��O�}�jD1}5B^����=O����o������d���l�u��~}����_�y?����$���Å���&��z~����og�u����X�n�i�M�ł�}���j�Z����i�����W���Kw��/�_L��I>�L?~����l��O�~ܽ������q�:ے?�o�~���c{���|���/���;����mrO�
-���vX�W|C^�h��~-���1��������o�W�"�K�f{[�n�fۡ�/��rIq�؋@��\A�EA��=e��k�\��L.�b����:���@Z�����OZ�g���(���OVK�Wp��X=��η��|��"�m�����Ly3����Pq����l���t�S��xɕ����_������<��?o�O��`XRm�� ��"����rc��/�mKʱ��qP�0� |�<�����r[U�p�8����v�zz���O���͜�½�þSf�S�;��#Uf�cdf�p�!7s�[S\���j���l������s1N�f�>iMF��2�����s�]�� mG�g1_�!����c�.E��q*w�9���QF�*��U�h�g!�N��VU��D����r�{D�\�W �j��@�.�g] p�~���^Nv�Ï�ћ�o��,E?��T�D
-�рv���Ֆ#\lZv��v�T�1����d��.>���L&��X���*�Q�bK�=�|�mpb�1�}�'�G���r�p�C'F� M[Y�|�HSt�sl '�,rb�Y��D��iN�,YQ ap�C'F���X�T8����8��1�w�ܘt��}�
-81d�K�\�AN������$3�123sDqZ�;���qb�6H�Qz@��=Ɯ�͉����<�W�SI1ٵ��0�Z�'�&��s�X��%�QW��hY1�b�D�V8��!M��|i�� �����{f!��C�<�l��ֆ�1��.�wh?�כ�/Ms�}=܁ 7�N�^L��*І�h��C{2{�/���M����jO����H�� �T�/��V�MU ;�Oh )�a��n.���sz@�zޫMr)0
-������|�N�3p!��d���,�
->�G�(Kgg`k�I��F3��â���D31�7�X fPџM���202Jgb)�X.�2$Cȡ��t=�����b�n#�m!"�FB��[S|*Vb�q�7�Ě�Sq�b�m����M-��Ko1�``���3�{�#��
-'0o"R�����hR�:�(S�d;j*\�m�+�U�`�d���3�L3L�������~�G��˻0d���P����"=EZ���x�z�)@�����x�Ǐ��ͧ�|��G8�<�O%�L�8��"�:Xz���s4@�B/gu��@C�fձ��ɟ;#��=G���6~�ו�GZ�p�<��@���&��>�ӊ��f�C�yv*�W���b��Rv�t�`B���z�d�Z~}Z�l�Xm�#�ן,Fd0/E���?_2���)��/����7/�m-��GM%�CV]���̧�wΗ/\ȵ�Wf\�Bƅ� ys �ʞ�p���i����"g.n�����p�e���, �i��DQQ�ΞpA�%\�d1��}3�DI��@��<�.��p����}�#ǐpQ;�.$C�2@�
-I�.�Ht�4�hKG�ݴ������-�NY����Dɺ�-���9�MǀIג.
-� �FI8mz�-�I�n��Ρ���Q����MιP�h��=͡8Q�:�rQ�n�n�T��-ڔ��\�Ҡ��C�E��\�x%�By�yjja�/���K��$p�z�[��!>���9>&�Y�cXR�������1BҟS|��1L����L���c�]>F ���6C+������"C+����|L�����>�)0�!�:�!^oV�*>�����6ko��1�[�������6�pm�1�/|L�e��b���3�1,)�鷺U�1��qP�z�ǰ��2uc�%0���a�%0}� J��J��jX��Nvͱ�u�c�7��t����~�ͽξ��8�v����V�-�C�N�|�[�#�z��������Ŗ��]��f�p�ԛD7�&=�m{�~
-(��5M�ݥ�?�������8�q�_���w��#��x^�u�/�xmok�W�I����S����M��w$��
-ԁ�N����b;憌���M%��&��������z��]-��mт�����@�E����`����ޒ�W�������t:�~�Q�3���?�;>��(���2������傘���������˽~��^��n�qr�f��;����Ļg�O�/"�l6�!�{��^�AL�&�������i�yE�={�Yl�VM���v<Ā.h�C:���\uk1��&hR4H��P9��bR4ф`%#W5!]��
-�u�f� ګ���ޮQ͜���ZS\4�,�����5��Uֵ����f�͒`��Q��8��lw?K
-{�����4��Y��K�+�iA��ֱ�O��%�QSӊ�hc>h{&��{z
-.z�a����v8���ŀ�gE��n���j����g�fE��3�]<\�O4��{V��u=���{l�2qy,��b�X�K� c�������2��X�u�HfнHf]��W�n=�t;�ilG1��E1k�~����aݎa��Dj�>����{�
-�1�DL�'�r��e���ץ�K;��mn
-m;w^�sGt�]�.��f�����]c�:c���:�bq�w���:��5%��5�}�(3:א����!�{P�ը�W�������xVSS}�1<�{��]�s����aI�Kв�4�.7���D��]���.�?�$Ͱ��4�Lk1���i��9����@���n�P����IC j��5E�쥨��)j���&��,�(���)Ij|DZ�Jzչ���4����&�� ��rS��D�]�����f��t����$�[9L�rM��DJb�(�̐�S���%�D]KY+n��e�4��^�㬵�n��ޭ�����
-'筩nEd��#;�6�c�k�
-�lG]�+ޣM^���5�{�� u6�cZ���!5���B�v����$T24�2�**�TY9T7�U%���e��o.'P�r.{�8�.�쮽���A�9O*�2����/|}�,[�!F��^��B��(`�l�F3S4&!�� ����1����;��_�HB�
-,!�T�g[ٞy�#��n�Yc e�lgzܖ;N&�J� �(@��M��I�@�:�3F��M�B�� 9�"O(�P�0���ӄ����u!�*E�������ÚB�L\S�E�j���័��-ۥ��gQ�i;J(��hn1�9�V9�y�^�ta�5Nf ��ƵI����y������8�
-yP�L���3G��iTs�M�@c`�D��}��j���]&���r�Ez��i�Av0�-d�<�r+`�����,֥��ĕLf��Q��������t�=nw���j/9�f��K����8 y�UxW��-6Ӵ� �#����ߠ�W��^�Ɂw51�%���u���Nc��^���D���,�[喝��P�Ig�;���n2��{gϠ}�}g���]���l�����`��#��wh��l�����`��#�;{A�e����C��G_�c��z�6���7�&mΨfI��$�t
-'s����gy����#�Y!I�#+��XMReMW~"{3�e�V�)n��)]�j&�����#)]�j&U~��a��!�눔��jɔDʐjՔt=���:����e��S�,��N�\�����+��`�K1Q�T�F.[7�\����sc�YIZ�e)&Q�d��-�I]��T��Ɛ��Z�緥oJJ��o�=��-j3��ss���-َ��V�E�ҥ�V�T=t�O^��)?��tQ5�KF�@
-P�wP�K~��/�����o��q�GJGPML�?���"NJ�la�}=�@�(i��hO����90�L�5�
-�Ƥ�`�����S-�=� ��}L�}���V3�)Y��K��x��qskxr7E�'�_,!v'�����`&!�?2�E�6���!}�y�Ay�U:�/��BoM.F8���]�21��$����5:]�N?m�]��}�J/�W-
-AE��6�t_�ұH�:��~w�J��*]2#y�z��:��4������ˑ�ʥ��P��p�s��5���
-�.[8������K�(��w�G�xg�Q��(�L�ŜG����;]���k2����m�Z�8�R]���W�k�W s�<@���$����g�c�x�a^��#����]�A.(v��f��rh�����qh������D�X�\O,%H|���%����$�[ETsN�6�R��'�SN���
-�}bƸ$����O�ȟ2�o�Un{�"��QE#�q^g��y�ٲ��o��
-�U�U�}�ᮓU�BVQi�:UQp��
-��R$�xc���Y�B�#��Y%��H�����>�UZ�*�KR�֍doݪ>�n������ ��3d�ZM��FT�Aڎ�óϔJv�s�*�KT��
-E{}�{�o2Y���B�淫o#�J�
-��(�7d<�#������0�#}՚�BM�P Z�Ek���t�i�0�6P�=�}�SS��L���ק���ȩ*���A\4H��Bp\+� XV�HG�T������Yt�H}s���N:��Z��W��|�f.��]tN�gq���q �m�ӈ��V"n��K�l����ڭ[�w�N0M�yg���'�a��B�]@3t=���"
-i@��4 �X��r���N�k�?��E1��1<���M"��(�ˇ�m��ܾr��7���E�:}��'�����|�#g}����_��gG�zz����[w�#g��fD�}����iGκz͋|5�c�
-�����\��hTϝ/��� ��ʃ7 )���,�ea�M���@�"�AwN��ԟ��
-{�r��V�u6w�#�1w�&��4�uw�c�aw�>�F�ST���s�07h9nݟ�w؟������sݛ�g�D���Dylq=
-�u��7ssw����y�FѮiq�sFXC-:��u��S�{txbA�zɘ�,� g�*}��^�IzJ{t�ێ�=$X�e���sQ
- 9p��!]�Ԥ�C�:�~�P#���v�ǿФ�hG�~�z�ï����������q�U��n��bݚ��N��n >f���t"v��N%b�Aޏ��n�+�c\��Q�ۣc�p�Vq\�XN�ҡ(��P8֮�u��\��{]�+�y��I\%@�k�JD� Ͳ�S�I�`�k#'��P�\�CWS�i�`�k�ڤ��_�s����B�Es��y����u+9p"�T#j�ӆeԓ��a��6��8��^���1¦������:jz�B�|����o;j�]��R�����~I�`��d�=�j�f�BP��W�0�M����M�=?B��`�R�{`��3h�?���֭�&)�4� w2:�C��l�����^n��h$�"�y�V��$j<S�r(� ��3��$DZ0���������,�$wqSMH׃�I���W-�Z6�!�Լ1�3oP/�v�[c��4e���Fn�yk��[��nEW�T�l7J�+��Q��<�I,3SU#Q�UM eʪF�n�Z��e�FJ[���1n����@U��b�q�@i�:�C�A���s
-�xr��� �d�\�f�P7I�<��)@5�S�UD�,E(&�+@�����b� �۬�d0�0nq����&�P�����
-P
-+��A��
-�:+��@���-'@�� ��7�]1n�Th%'o!�&���A���Hv����(��s��@�!쭪Uq0��AU� 'hf�����G='3N }�� P
-'p�i�AR ���$����4m���lR��Ra��O��u�n9����v9~��>��X�u��O��y��kRϖ��w>��&���>�N�}�C�đ ����w>��&���>}��>}�+�S�ʺ�ƃ}=�5g��fO����Zi���Qu?��v33�z��]��.�����2i�����:���XwY���6�%�����m�����YY�k@�����������]�C��9ʝ˞Zf:�؛�68e���~{s�@� t�l^08s5���=w���;s�����߶3|�Μ�KzS�!D����9s��$�������dpV�͕gk�s��#>�;wcpf��ι;���gۍF���ι;���g����9w7#���p�S���j�m�sΏ%. �R
-�s��xVw9��QZw�]ͱ���z>��\E��%1UW{���O���Ϩ�$��j�Lr*����j���j=Aܭ*��|:T띭Z/�T��l������V/:C�Chg�p�ik��(������6�Cj��(�K�^�5������Eg���C�cU�����|�֓Z�d7j�Z�}�^TY��C��j�"M��1G��J�H�U��A�,�(J
-. ���b��zw��Kզ�� m��;�P�tp��1۪��"ݜkozs�I�����L6�b�)O�9����-�j��O�����pq~�}U�^k�π�}Z��N~g١c1�B4a�4�2���X�[��9��%uΟ;fW����9�Ew���^��9�uo�&��{�'g���T��ȡ�;r6���!��8�#�1c�ԑ����Y�:ft<�q��?32���{�0B���G`8 т&�F:w�|�j��d��]�jas�����
-Q=�r�IG��q��w�z4�-�n��T=��v��ѡ��+)�#�����x��Pճ�y��W����ʧΘi?黛�F�B7/j��!��Ws��ydp�:.2�y5����G�M7/�ƫ�扗��y5���ͻ:_lV���G��@h�ݼ�VB�tp�ڈ���ͫ���<:�yWmDl������n�6ݼ�,��`E�����<˓����<
-ٺ�������J���:z]�da{�����@:��-8z��t�=���uhұ�_WG��;z��t�=���9? 3E5��%�|y�]K�������?PK��<gTW�PK�x;pollen.todo�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��q�(��;�D�*���+G���*(�8z)%)J
-@% ���,.2���E���9e�)�E�%��� Y,B3PK4�[-m�PK�x;pollen_profile.profile�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��qq��e��q��ÙPK7Rp:BPK�x;
-pollen.xmi�]��6���(��ڣ�#h��-{Q� �&�ݯ�D9��I�&��J��cY�,r� -��mb���!�;�s��?�=�g�0��0��:{��N���.���/۹�0���~����fߞ�E����~��w~�=�$�v��i��� ���E���,�ӿ&�鐵���`y��D}&����(�֛�_f� ���Ͳ�[|���������n��`��$� ku�~;�Q��]F�0#�c���#Ll�x�����698�Ͽ<�z�^�ש�{a!?i?�"���Н�o���.#Z��\�f��.�w�?B���� ��Y���=o�����o����b�9EO0�_������?�c��r^~�Q\(?>�?�酁?�0H����2�����u��M�\S�sØ��|.
-�\�tۑ5�N�d��g��� �.���=�0/�+{էp��A�3?�|����N>��{�c�}�G&�~��{���~���$�E��|����Ìs��v��쏰h�����7�q�f6tŖlS��w�$��@�QK� ?��>����F�D,\����B���릗$���M,�����sn=������%�ˤT�?��c�I�G��$��t_�_��'���.�T��]��#Ρ' �k���SmSq<�eu9��B�@��F�iq���������m�8�SlX�%rc�7���97\�A#�y�i>��p��w�)��먨ݽY�J�~e��k�g�O1ѷ���|�>=����l��bK�����ͩ3J�,�����rn��ܠ�a^��ܴU5]S�z��qd�fU(o��u_O���<�� 9Fu�/�$��c��sM����6����&�4���rƳ���w�N��Nx����*�m��8_A��������5 �v0���ʑ�lFG'��oO�[<��H�M_��V,��fo姉��S�(l]sD�?��o%p����ه�ZS����p(�\Y�gqUm���G�ɬY���p��Hq9W�H���E���@Tu����F3�n@5��X��}��U��wa�D�!���غ�,�����uMhN�d�0�E��lB�g��S�d�K��#}H�/o��p����pѪ7�q�VУl1���������e���Бmm�� Fq| ���ܣ1}1��;4�Υ/���&p;��-
-_�g�#x�w��>M�#�����}�g�~�vܝ��A�(m��([fZwz�j���1_(��)���(țq�������Q�,�T����$�p���R�A�{�^)M��<T���b#q���U����('���Z.p� �KԆċJ�-�+�?�
-(Mf����}%�P'l��"�F��5�Í���[�~hݴ��_A�W��
-�o��ч�J���=y��}Zxn/�ť��3 ���F\^$s�+�F�m#�gtWv3�ɢ�Dӓ\�TP�1�Dr��U�I��G�Ӌ+���cEX1���H���t+$MKY���BULSu4$V,u�S���^ϩ��G�s������t��*u���56KӀ(3y��j��TO?&@WSL�"UL�Hޔu3+5�N�=��#Ev��1h��9��!���>9E`A�cĹH��강��0@��=���-$�B��W�t�f_�ek��WVq51����~Ľ_5
-��[��,��x��vGJ�
-A
-f��u�53(���\;+wb��[��.;�$t�F3ˊ -'<<=��Z#e�OR$Gu]9����]C����8��o�9$��eGHi�GJ���)�2S�sq���S�Z�$C���(a�Ym���t����N���κ�H@)�Y|�$��ƒ�+�"x�
-ɹ�κ6�
-S�\//`&��9��
-�K�W���c�c)s�qف5��Ό���8��/[t�1�a�YA���9�o�>�ٞ@��x8���b�tN�L���SU��1�N���0uaA�T"w8�:�&2:V�����)��K�O�$�灕:ܑ�xE�(ۢ-:JJ�,���Ƞ#���A|
-��t����#& �'�;�J�R߇�U�!ğ1�x8��$I)5�IQ��>����3���GD��;R�����G�Հf,v�!e��a4��5<��(d�b�p`�nPS}ɞ���IG!1uH_2�ܑ\�0uh�gIy�1���_���D�R��Ā����ً�>����d�0�@��3d�+"ە��@@��h0� "в���kK6@��o�{����.����8О>�w� �_
-Ȫ�<����CV/'�����)��} �ؓ�JdR��8�)~lL��1�l��a'<q���
-��5�x���]Lt����s���[(��J�ɑ�O�J�4`�@���=۵5 U]�td-�������#G�,�K@��H�]�?��Ƙ�lR�E��"��=�<y�Z��j�+*Pm�h�� �f��Zs�Jc��8C��Jb�Y퀘H^���tGB�T
-d�`P�G\Ϊ���+HIP<ހ��i�^9(��q3���6$ �c�e)�p� �|�N\"Mn[�:�f[�ƃ���c@n�q0�e�xש���%�:p(@�W@A�/��ϜI�:�^КFV�z�X�V3A7]�I��m`B�IRK�<��kȍ|��y�nk"y��R֜�Tջ���,f�'ZϞH"W��s�C:���&L��Tb�=����ԁ5Y�54�KM��$�`�0R����j��S�Ƥ�N����a����.<w���`���(�,�Y,�`@�)����j�e�9r��`�5�h�4���ဘ���ͭ�DF����X��Hj����܍z@��!����+�:p4P�����X@��!��ȋ�:��L֑��|���,���t����݅�ѹ���1�
-0vt:���.���)ǥ�pt�� �u�J�(���N�1���u���.����ǂ����ۺ�<���Ꮀ��n HB�?#s;��AA�Ign'8�]�=yL ���D�(�R�;�"Q�t$��X���%�
-2U�x80e�e]Sd�g3���Pq�R�Z�({����n?�I�0�vH0 $��A���Aɕ���j�4���F�,J�GN$~pL�R@�C���ß$`ȏJX�r�,��z�Y�Q��1���B�Zk��j��������HW3�'�_�X��Z�z��B�ˆ�@�ry�$���G�Ĵȱ�2��VaQ��\K�\K�ܔ$���C4M :�}�XV3����^1O�(��M$��Y����h��
-���M��T�T5��y��A�� f��Wo�=�<d�ԁ� �.��e��ڼ]�*^��ܨ}��Y�(�U��IVG��u1΅t�?���k�M�vF�n��$Z�G���2��ն���F.��`��9�߲H��Epw~g
-p�ҵ;���1�VR'#"��S̙D��DI�������w��&�!�c8�h,��s� $��bC�B<�1r��ld&\@ɜc ơʀXRiS��TZ���p���z�R7�G4td�Fx[��!~�
-q��)����
-�-긺��Q�eP�'����Ն��!%RE�����ۛ���D��Fȸ��A�=d0��a�Ř��[�._p�*�>)h�δ���?��b��3�{#��˒��:"�1l��3.����acٮ�ӴQy�J�ޘƙCkȽ���d���0�l��!p+�ċ�ܛnG�W9�g��F>~����t�����|S�9߸�FL��F>d��ۿ��:X�ġ�,�g��[c���iilhۙkl=�����g�klS��t�%L�jl��cܻ�M$�ҍ����d�k�)��}�][b���4M1\T%��j3�����U^��XZS`/Ott���Ԕl(*�n�:�1���K���v�Bݭ d��g1Ӎ�z D¢6��t�Ǘtp\T0 *dY�$jَm��ꡌQj���E6?G��=��Vs��E�͐����U_��_��#S[��{'�6����D"�z��]�%d=�F(iZ�:�t�����
-y��>�^����>�^����"
-��h�h1)�ow�ٲ6]��u�%2/�E���s��F�$`s�̓i
-+�S�P�F�
-h��!��
-:�A��zy��
-Z
-8����^A[!Ksr��Wא�B ���ʝ��V�aJTq-5�Y@^��S��A��Ҫ��+6�dT�52��Y���BN��_�k�p;���0�-���B<:˩x8ZLV9k�Sn�6�I-����G)���z���Q���������Kx�2*��5t�4�|5ɆꙊ�<n��.���鋄�[�\c�k��1W<� +�z�����S�P�FB�4��9~���S�Ѡb"�]]vm�F���TW�ڏ�mY9D_�P<\7{�Ru[& \ o2�Y,,T���|x�W�ʪ�:3�#�x�}��G�jiS�O%^.<b01m��i�������i��G���H%��n4}��߯� � 5�D@���:_a��8� ~�\@߫�^��l��#��,D,-y�R�SW�[��
-���NK@#5`.�[l�֗���B6�xN�`�yłw{�<�(.�'%�O_~LEg|\dV�KJ�k�S�O����Yt���0��.�*�yJF:�o�o�%ܯ��AO�.���6��[�d�`��ͫ��\1��Y���Q�Rl�6%��`��l�H�K����g���&�2�]
-۶=��%Tk2��]L�mOR����v����o�L��բ{��z1�>��D����`��~��y�M{�]�����p�������|@��X������_���[�4�LN�>�}��!��"Z�1��C��}��-H�Fts����ڲ�v���!$�z�����$#�J���w[k�
-���u;^>h��j�l^���T~[+��4��n�6k�u�m��_X���=|*ԑ�w2���_j�P=�t� ]M1u$�r��#"͵�t��V�n���w�� y'�λ�vt�m��n�0j������mK)��T�o��골`��f��B?ߍ��W��o��Cr`S�fTv�Sء�}K6e����ߘ�[3��,4�u��`�}T�>k�(�6
-�ۈT9Yp(W���̨���T��`u�R!;6�ʎ�H������>�}�Th�����
-|*�.+�G�նe�j�R�7o�V.�^���T�������?�漃��������X~"��O����Ħ��D7Kd�p�D�Kd��gI�۲�>|��Ī�Ԓ�Láb��4rʩ��XZ�GC��%����O�BwVк��C����Rn���3�`�Ȉ~�C��o��v��
-~T�
-�~�����v���>�
-ѫ2zbiiTh��n�
-��Xu�4��[���A��5XM�0�p����V�����U�פb��XK*6��ͻ�!��Z�%�eb�D'��p�,oG�R�>*\.KF#լ�m+t�=�ط���X�ju���֯Y�֯���kF<,���r�v
-J�G��b�%/��P�����I���]�## ͝�e��J��<P#*UE�an��>�
-\(�)pK����å�7<n��>�9\(��p��#j�J*�Vu�u[�Q�QP��&K�v����K%��d�h�K%a�d�܍K�Xש)AH���V���JbB1�V�8�ƥ���m\���I��]m�z�Q &T6ńJ���(���;�,ON%.l�bp���o�Ox�8TP�Cx�p�@oޱr�0(W�ؽ*�����
-J���h�Aơ��6�z�g8TP�Cxqd8TPG�Cx�<8T����z>/��i�II�d�0�E_F-t)sI~diKBr�Z2�������|XA@��%�����Q�$$� �����kM�ԥ�F��cW�$�y�)��3;�ˑ�>{ZF��8��gO����F��c{�Hh���A��c� $��˼�߿�gP�3����9���dmdݬ��rk
-��l�U�1��F3m�2�'�3��)��Čf��4�pQ�� wohb��U��<���o'$�������PK]����)PK�x;<�`�pollen.argoPK�x;��<gTW�Epollen_DC_Pollen.pgmlPK�x;4�[-m��pollen.todoPK�x;7Rp:B� pollen_profile.profilePK�x;]����)
-!pollen.xmiPK1$9
\ No newline at end of file
+PK$�P;pollen.argo}Tˎ�0��W >�LFU�a�tѪUG�v9pW�1�4�����v2$�����uMe/��B1n��e�Tu'Z�a�T[�!�FB��CSW����)�����C�晼|!���ڞ�@���(<Q�0�M�V�5��
+�F�9F����??��@
+�|�sը�D����A/4
+z��z�`�H�-.�-M�{G�S3*<"C}II�(�i��7��rQ#e3eRy�G�$�Rcޑ�R}���y�A��h�+����aT&U`����z�N��j��8���C�qw���;8b�Z7j�J!D{���y�^v`o;(��Z��+����s����vaF87�1ۜ[f3��C�Kʛ���*����eIJ(�Z���&��b�pږ�o����>쿽�E�h8����[�K`[ڹ��Av��PK-��\��筟�� �}���s�A��^z�2�u�RȞ��pF�X������|��b��wc�N���]�>�5������u/tB�L��O�������̎ۖ�<�PKptB�PK$�P;pollen_DC_Pollen.pgml�]mo�F���_�k\�(�pH����,
+�ݠM,��,ю�ʒ!�Isq�R29�9�!9!�E��Dʞg�9|漾�����x�[n�o.�K�b���r}��������䯗߽��������&���������w?O.�^.��~E��"�ͷ��}�m������~��/J�Y,g������~�_����o����m��i�����Y�v���k�o��t�S�O�����s�f���H����W���W������w����=�o.�����f����]�^�o7O����/��O������?�ً ���y!����8��c�[ޮ�7w��.�a����f��1�cy���y������/���0���ۧ}\|;�{?m�7��tsM�o�[�V|�?�7����ŗO�}�}����O,^zx�x��j6�O��e�������l�����m<�����Xؐ�ٖ�����ǯo.8��?}Y.���^��Χxy�i�ܓ}�����=��+�!/k2���Y�^�
+�An~�da���+U
+�%|��-W7]���Ɨcty�����E�LP.� Ȣ � A�����5K.[q&|1���}qH^G �����u�g��3Y�d����'w�5�+�}^m��w���j9s�ڶ����j���|�n�� �8��v���r>;(�M��J����_V���������?��O��ٰ��x�A�?�E�1����g_`ۖ�c
+!
+��a�A�2y6^�盧���b��i�����f��8���o?�9�G3�}�̜��ה�#Uf�cdf�p�!7s �)�C�m5��݂6�6�p�w�\�S��l�Z���̮y����7�6Hۑ���Y-���F������L��r�4��ʈ��r�����CU9Z�,�}ԩ�ߩ�с�\�uU�x��rE�/q�@@T�WB�h�u�p���������Ï�ɫ�o���E�M*�"�hD;E��f��6�;Re;D*�
+��a�\�H��c&N[^���*�Q��� 3�|�m��~1a�s�'�#���r�p�'�$���4qlei�"MQc������DȪOL$N���#�%+�$n���#DZG�x*�>��>1$�Ċ�$߉rc�w���xk�C�}b���g3G�Sf��:|b�����9�����>1q��(=����c���K���?3<T�S�b2���0H-ԓb�J�;�X��%�QW��h�b��)�Z� b�n���k3
+b2�Ru�,D��g�ݗ���#����v����w��n�G�n_w�A�MG��W��h�
+�!�F��g���z�����!��lV�l]�yP�9�$��OR _�?��kHxX�6U%|h�>#�����t{�����^Lh�K�Q��+b��3��w*����� Kԗe ���gY�e��p�ΐ�j4�xXt:���h� � @��F0+�*��tj,#�t�1��"��e�B,C2$��I�CIz�.����0R�b�ٶY�a�o���b%�!�?k�[�1ܷFa��(�bꥷG0��ƁLD�Q��D�oI����&"5~*�2��-~Q�p�v�T��-��V��8^��%��.9g0�0�J�BF�G��+�1CD�Sޕ��+�h�v��HO�,�9o
+�u�hCR�o������f9���G8�<��Jęq�#0��D��`�b��u
+u�^�:�
+�� T�>@�f��/�����>�Vig`�y����W�]�0�}�����Hg�t�NE�j��Z�6_��.;�%ء�s��'��֛�ׇ����>>z�ɒ�g�G�/B_o���1@��(�)ޏO����wO�}-��GM%ೱD7�|��r�ą���GNA�9��HC���r큳2�R\ld%������3\�0|1�4�̓��P�l��[�h�.)d�pDEY��$KB6`f9QT���3\��Y�,f��E�L�.Q2\1��"1���d��a$-C��ax�3\R�5.���"��r���g���vD�i�����y.��� =Z8���pmE݉��"[8���Il�Awҷ,��.H�Qt�D�^z�q����r apT7��hO��$�P�@�H��y��Lu�Y�K��%�QS݊�hs\���J�J/���u�6.�#J�����~�P/:Ċ�/��o��kn-)�cl������?K��� /e��]��e�?�j�1L�� I%�,�o�䏡v�1�٤ObZ���Z鏁:Z��E�ch�?�G��ƣ?&E\㏡S*�C�ẇx�۬��1��YGg�s��k�H+�1|�f�K�?&ٍ���-���C�ǰ��h��V�a@ё��6+�9*S7f^sD+�1̰�h�~�RL���j�������֡�I��6�e
+bv��6�:��s�����v�l���[��5�ŏ�y�����f{�'w�d����G�^%��7�o�}��K@��_�Ľr�T���?�����'6���o6�N��}�"��˿n�eo�m��J5�ۛ��c�_qw���SX�:д� �~Z헏ܐ�_���TO�o|܁q8N�.�w���z��-XW{@�o�{Չ-hQ��W�lw�Q�;��=@42���ҒNG�A�/<�a:s�����+�#���f���m����b&�
+�.�O���~��^L�a�tr�f�
+���O�Ļ
+�M�/"�b1�!�{w��^�ALj='�����^ �i�yE�m<�,v�+�&t�f;b@۹�!�z@N.�J[:�1���t�Rr1ԭ�1��hB�������G�U8����u�����hר�V�v�-_4:�,�����5�a�+ַ���q3ʆw0����b�a���%�=�Qӂaj��j���@�Ҵ�SM�YЧDӒͨ�i�[�1���daL�=?�M�0C���g�k�>c@��"�T���b$�3��š���g2�]<\��h/��?��F3�2����؎e��X&��2�x��A�|VD��;�Y,��U^�E2��E2����v�q̠�qL�;`;��/�Y��[�T3�w�� Rs����&�M=�����e�%x�Q�2'���4ri�ܽ�M�mr畓;�#w����G���Β��,nuƂu�:K�:���;`�h��2�����F��OeF�RwW ^�o���F��J��-��'c����Lcx���]�:�C�Wߤ�%hYvH�ˍ�]�(R�ݥ�N�x�D^�4�b^�42��$��� ��TzZTHOK�$��fA� )ʻ����YKPS�^�Z��8��))j�Ȃ��Ij�����A�u���٨Ǐ�LS�
+ij�) 2�(7%}OT;�*���jV�MW;X9J£���!+�VM�$�)V� �Y9��y{�4Q�R֊� mGY*
+*k�W��8k-���v�QtT8
+R��5�VD@�88#5�R�z��V�p�v�U��=��HI^S-���L���Ӫ4�
+A�I�h>��S�i��j*��T�Sr����˪�ղu��7�\�r.{�8�.�쮣�����s�AX������¿��I�l-�0k��Vz/&Kg��.���) ��NE=���f���g��u�I�P�K�!�Y��θ�#��n�Y��"T����-w�M�*zAdQ���
+7a�$�I�����n�r����/� %c�fc�w7!?/&gE����h�E�������ÚB�L\[.��
+B�V!�;,�K��+�Ea��(qY�Ds����cj�Gx�8/8j��E�o������yPa@�t����y������8�
+yPI�����0Ө�2������hX��~�������Ћ�A����9@
+����˭�����X���;�d�`�ڳ6jS5v69��.�����j�����jv���4� ����^��w5+�b3M��`�0��-
+u�^�E�xW�;��M�\����8�4�2��T}&:����q�U���bm�=�4���d��d�dϠ}�}�GF��>�`��##٫� �����@#���=2����`����^Bu�!+!{��B���}�\O�ƕ��fl��j�d��A�N�p2W+?���,�VRWqD5+$�rde74V�TYە��ތjY��U~��zJ�:��Ii� @��HJ�:��I��~`�$yL�:!��8�Z2%�2�Z5%}O����?�}Zi� �c�S# z4r�
+?-��RL�)ղ����:#�e�'�ݘjVR��lGY�IT2ٺp�yR��9թ�1��-�V��m雒�%��j� }��L��ݜ�2}K����oѧt���UyU������n���9]T�钑&P������+9�?r�vo��zġ�q4�4��o�E�����p�z��?c���|��\2'ƚ鱆|�h�_��ެ�ˇZhz�#@��=�z��x�i����鸴��k��b:n�YgwS�~R��g�����_fr��#�Et;cs~�#aһ����\u��w��[���#(jL��4I�yw�o͝.�N?o�]w���+��^�(��t���+����s�8���Ṯt��J��H^�^nF��JO�|�T���HZ����Pr�p�s�µ���?�l�8:f�J��U���7?:��;ێ���Δ[���]?�A!��CWt��6t�g>�R]���W�k+�}�<@�r�$��Ϝ3�1[=Ű_��G�|6w-�rA����<l��C��/���C��/��('��R�zb)A�%J���%����$�[ETsN�6�R��'�SN���-�}bƸ$����O�ȟ3�o�Un{�rTG-�|�y�Y���"��-CaQh�wT�U�U�}���;��YE���X,8TE�gU�8�(E�:��76
+�Ϊr��*(8�$S)?TS2g��I�uR�֍�hݪ>[�n���Q%[7�gȺu����QU�i;J�>S*ف[�U�]G�A�Pt�7��&;�}C@C]H��n��gΪR}C��>J�
+��Hq�zy�*����W�9)�D5��ޘ��b=?tZ6L�
+�dOl���4D'�l�Y}�<�N������6-:as!8����XV�HG�9�X&�Vp�fϢg��7W���S���)[{U�͍5s ���sV?�f���%t��N+��q�
+\Bg;�.����n�b���s��i��k�Ꞡ�]�
+}[t����&b�4�MV�$Pc��ˁ�s:�2���7�J�\v�,�̿Ro��F\>�?�l�>��}��7�C�"gI_���gn��j�sb�,�;�u����9��,���['ڑ����Wmg�3��Y��W�?5��M�_�:��Q=:^^�� ��t�K�����Farರ�fA�Y o��"�Ӷ�.�s��ac�Wt��mU^��9�x��\MЫ���Ǽ�t�>�F�ST���z�����8�=�s����{��9xfI�0��%�c��iX��x�]�������^L�C��$猰�Zt���i�J0*�����h��yn��܃�R�F�ztH�Sڣ���v��!�R.�����RɁu�:�&������v�u��8��&E;��V�H��~�w���*8�v�s$ƍ3��h�qź���� Za�|��6��D�t!�J�.샼em0�zW�Ǹ�j�G�A���±!*�ҥCQ8��5�p�[��Y�C���.W8�f�)��J$�n�X��!&�'@�e�H�
+��n�F$��P(�sWS�i�`�k��d��_�s����B����NwA��Nr�D�S��i��ʨw���M��Ȃ�:lz�A�|���o;��?��uYp�1jj����)v=jJՃnB��((�Jɑ=�j�f�BP���0�M��7tdϏ��6��T��������칹u+�I�!�<ȝ��΅��B�qχ���^n��h$�"�y�V��$j<S�r(� ��3��$DZ0���������,�$wqSMH߃�I���W-�Z6�!�Լ1r0oP/�n�[k��4e���Fn�y벏[��~EW�T�l7J�+��Q��<�I,3SU#рUM eʪF�n�Z��e�FJ[���1n����@Ub E1��)�bVyH1�s�q��O.u�|,'�Y&�M�@xp�)@5N����<Y�P>L�-����eǖW@2����^�"��[��
+�J�&�P���+P�+@5^�"TmH߽� �����h>����F�+ƭ��
+�� @�[ȸ���~P�C� $�QzPrV�[�}��@�!��U�`���6�@��AX�j�3S�>��A8���9>�� �t�k�)�?�m�}�����y�6r�t1)dq�0��vާ�V���`uf��y��l��j.���eާ9����>���}���zާ�˼Osȁ�8���>���}���vާ�zާϔb�tJSY���x���_|��i��望f���T��Ol73l��望v�l���ʤ]bh:��>@�
+�Nٰ �u��Hk�o�2� �.��5�f��P�܌�忴3>w��
+-�9r�˞Zf:��]�����`�l�hy#�nߛ�d����\0p2W]8o��#����m2|�d��%���r������sg[ s7�>��ղ���lM:��<���܍���>�swq+϶��5F��B�����t�݁��|u<�>�sw
+q�"_��m:��X��,�0��Ƴ��a�Gi�9v5�W����Xs�:��\T]��#LZT<9��?�&xF�%��V�e�SQ�w�V�^�UV� "�n�^TY��ӱZ��j�HS�糱Z�3�Ue�^�@�C�`�p�ik��(������6�!�^@
+�V/ٍ�D�[�k��j���Xժj�8:߂�
+�V/ٍ��V�E_�U����X��@�^���;�(�^�ɷ�v4�_��]E��%�Q\����R�iy0H[�GŻޟ\�Gz8���mU^�łH?�ڛ���\{����6��M6��gʓ~N�7F�]�ڤ���m�o9D��lEU����;�3�z�֬���Y&t,�Q�f,��E@��vKC�p��=�v^���P���)�����s��t���^���;�� ��������W��
+����;�� �m�\�qG1c��ȁ��'r���N�N�pES�O���,�9�^!�Pt��AB������ΕP�қ�T�/T-l��j���h����w��Mz:H��=�N�z4L�d�;��&=����&z��PU敔������x��P��h^'��i���3f�O�N��@�H�:-2Ҽ�{`�摑�Et\ d�y5��6�#�&�K��j�<�r3�WsN^S4調ج���G��@��i�U'!Z:Ҽ�.�t�y5��:ͣ#ͻ�"bKG�Wsl�<�mҼ�,��`E����h���G'KD��l��ir�*x^i^]�ח�G�Wy5G�z4�d��u@�z:��=�N�z4�Tد�����^O�!5�����3�0ST�3�((!z��Iw-
+��o�?�.��PK1f��^��PK$�P;pollen.todo�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��q�(��;�D�*���+G���*(�8z)%)J
+@% ���,.2���E���9e�)�E�%��� Y,B3PK4�[-m�PK$�P;pollen_profile.profile�����Q(K-*���S�UP2�3PRH�K�O��K ����Z()��qq��e��q��ÙPK7Rp:BPK$�P;
+pollen.xmi�]듣6����ڪN�^{x?��ٲ�����ܩ�$w�
+���3��_�������dD��[�GG��<t��/�����=�(��`���A\38����?�l��������~�}{����C��>����{�I���n�5������ˇY�M��!k�����8�L�f��(���9[o>�I�`>��a6�~o�F�g�����s|�A��������FI�v����q6��0�!�YF��F~��<�t�?����ʿN���X�?i?�"���Н���������u.J3�x������~:��3H�{�~�|ϛ�<�Ǭ����?~�
+1М�'�r0t�~Vp�����x93��(.�߽?�酅G�0H����2�����:�ͦf�)�a�Eu>i�K���xE�ɺ <�x�� <
+��J�^ؗѕ��S��� ����>@��|'T���1̾�#���C�~��Z?^�q��y��C��aƹEv;���GX4zi���ĸM3�bK�)y�(��f;PbԒ%��������5$�Dh��~yW�u�K��R��&�����9
+7������û%�ˤT�?�ٻ6�����K¿�4���O���]Ω(��2�G�COl�H��ڦ�x"'
+��r:������5���酝����!�tq��ذ�KK��jo\�9rn�ރ8F��+�|.��
+���nS6]�QQ�{�^?���ʜ�����b�o�{?��}z8�{����W�oŖ�C'�!�Sg&�Y:[������Ayü.��i�j����� �����"
+�P�,5뾞��9Ly��Ar��(_&I���� �E1�m�)�+M�i\O��g�ş�l�F����Re �4��q��`��ˋ��k�`R}O�#�ٌ�N�3�ߞx�x:������խX4���OI�Q6غ�d��J�5ų�N�������P�����$��T�5r.ߑMf�@o�s�K�D�˹�@G�T/�$����(�HT�5�Qu��w�����_5��N����a��k�a��0p���`@L��]״��d�A6C�\�j��&x{?5M&� �t98�ч����X
+��o��z��j=�c��(<���!8�����s:2��MS>�(�/��~�PÔ{4�/&5s�й�&�7�n�E�+�l��.�٧)tdR5ra����]�o��.����0h���e�L�N�VMѵu ���4�pQ\y3��ݞ@|={>��ŜJ��@����=Y�� hqO"�+�I�␇�1Rl$�5�j����C�4�S��xa�ڐxQiӠ�t��Dze�������ꄍ~Y��藑��x����˜�����+��
+�Ta������<��Vi�p�'�ߵO��E���Z?`$_B?ˋd�a܈�mľ����n�4YT�hz�k�
+���"��H����� i��(rz�`rqp��+��xa�]^W�nb��i)��V��i���Ċ�r�^z���9�R�tn���r���}^���&�fie&/r]�5C������j��#�^���Sɛr�nf���҉��1t���\�;�u8'|:���ܧ"�,(r�8i��C��VhT"ⲇ�}=���Z("7�ʝ��쫴l�����*�&&u4���������{K���t�W��HI#]!H����n�f�^3�kg�N��u���eG����hfY1���ǀ�GQ[k�l�I�䨮+gc:��k(_7��Y�m�1��|��)���H��ݕ��0�Rf*{.�bS5q�@@�Rk�d���!����a � �M ����.��T�� ���Y� (E�>���$u�X��Z����!9��Y��aJ����DC�"g}�Az)y��7�t�scl"e.;.;�&;ڙ�2�Gu��`���:2�@1+�=<��
+��1#��t"G�� �Y����� ���y�*�Z#��)6��.,H�ʀ�A��R�DF�Jcs�>e6] b��i`��<�R�;���e[�EGI�%C�4 �t��9!��O�1�.3v���DrGR��=�B��b��=��3�g�ܞ$)��4)�Y߇;�w����hyGJ�pq���H������?���;�&�������X,��
+jj�/��8�8�("��K&"�;�K���,)o8���+tU��R�p���`�@�=:{��'?�3�LF��|�,zED`�6(� �
+�2AZ�\]vm�����@�;��pX�������.5���Y�g��s���$��_r�w?E���d{rU�L*0��3ŏ��>6ƛ�52�'��S��]�F�������xntB|~>[i?9���Q��]L�R��g��&���K����S����_Qx<p����w �3)����g=�3�M��h�S�S���'�Rk5^-sE�
+-�1A�SPk�Wi,ugh=]�A��!��+�:ܑ�H(�J��9c
+����Y��tv) �����`�;
+�+�e:n&"�ա؆$�q�Ѡ��!�N8!���c��K��m�R�l��xо�zc,�M4�L�:��4�R�[�
+(�ş�3)W��Z���]o�j&��c;)��mL(#=Ijcɛ'�|
+�����1/�mM$�wS�����z7�ژ���6~�D��I��x�tH�_Ԅ�ёJl�'�8�:�&+�F��z�����LF��ڞ@^-��a�И���؉�C��9`������.�:�\�5œ%7�E=E���/U-��9G.Ý����-@p���5A9�W�5������X���I��psT �QH�:dU\Rye�R�Jcu\�H�:d�\Ry��R�;����:r5�O������ў.�pբ�P6:��x8�ƎN'�!5��s�a<�t��U�=��.^�����I]68��t��>[�Xp7>C"��~[����:�\�-IH�gd�c�U=(5�̍��{�+�'� �<2�HeP�pG�@$*��d~�ۘ��]A@�*�A�L��k��lfU�]*.R*T�e�9�8���:��B� �$r8(u�#8(��4UP͖������H�E��� ����R@
+wc(1w��L�QB��݁Av�4�j����4+�ƨغg���^��}C���hD������U�kq4%�Zf%����
+�8~�c~�)��}V�=���
+l~�tGk{����%��//ĹlȎd)��@苾�Jp{���)�;.,hŜϵtʵt�MIr�?DC��3\6��F����b��QY�Hnh�:�&8Z�F��_�EE�g��u��I�L��@���
+��.�:L�밌���O���C�x�5Ir�x��8�cEU�h�U��f]�s�A��u���x����'�J-�#x�wP�j[tD�D.��`��9�߲�3��Epw~g
+p�ҵ;���ysx�/&����c�$j� J�$d�]�o�5�0y��aGc�����O �WB�� X�Q���vѦ���9�`��%�6�:K�ek��.��߹��7)uC�qDCGnu��5
+�� �R��Oݢ��+����
+gz�k���ym�4@R"U�l.���I�J4�oD����4�C3J6Z�Y��5��������A��V�L�8��Q~?��;þ7"� ������#«�h:��>^B��
+�M�'�����9���{?� Aƻ���vI]�I��ʽ�v�z�{&�o��GJjnNw�*�7���+n�a�)n��@F^p��k����O�����~{�L>�5�����Ɔ����փ��1�z����6e�MG��6��v��1�,�D"o�)��Mֽv�{��WMѵu ��}O��E]�Sm�BV�u�L;�Kk
+�剎�9�����
+EE�M�AgA6FT�z ��U��5����,f��Z/�HX��?�Js}I�E�B�eIҡ���ضj����b�\T`�s����ȋ��:LQT��l��Y�e0��%:2���~�w�h
+N
+��+��-!��ZRI�R֩�kIU�4UU�C�,���H���,�i�'E�E�I�|��͖��2w��-�y1<(�Wǘ��Ʈ0r7 ��KmLk�X�X����5ZlX@�)n�!:Y�
+WO�)������dr-����w�����9���ګk�e!J�P�N\A+��0%�����,��kpթ˂���EiU���p2*�SƏ,z Sg!�Pǯ�5Y����z�h��Fd!��T<-&��5�)�G�ڤ�O�~ϣ�Y�Rn=ߍ�(el~�ts|{���<J����g�f��dC�LEB7Yw �~��E�ܭ^���5Eט+z��I�|�[T���
+��[(]�!s~�?c�q�)�hP1
+� ��.��d���l* ��+g�G�
+��,���s(���
+l��-�.�7�sլ��CWKo^><���feՌt���C<�>�`�#z���ǧ/1��6UĴ��ڊ���o�����#��x�}�q}���{��W@oYЌ��P"�qj�r����}�p��c.��U@/�qsS�Z��K"��<b�ܩ+�-�b�U�]�%��0�-6[�K�Ww!�W<'x0ټb���Bw�͓�ͧ/?��3>.�+�%��ݩ�'��\�,:��int�<%#��7����WZ� ��T�Mp|�Q��E�
+�U�W����%�m���,���ߨQ)�d���f�`h�U$���v���3����
+Pt���m��ێ��5Z�.&� )��l;xm��ӷm���jѽ`@�j��f�����g0�n�}}���Ʀ=Ȯ��f�m8�Ņs��lpb> �u
+^��pA�yR��/d����-Gs�?'Q�>R͐�[���sO�!�ȾK��$p#�9�N�|mYQ;�L��k�I���O��n��~ 廭�����v�/�P��
+5o6�eco*���^\J�M7s���:��
+��/��z�>���;�b�/5t ��~:˄���:�h�K���Z]:E�s�X��;�R���h��v;:ﶂps�v������
+�涥�}k*طbt�YT��B�ox����F��+���^�!9��X3*;�)����%��c}Q�oL��]}
+�˺Fv0�>*V��a�}��mD��,8�+T�OfTvlt*�g��{��Ve�V��}[V��m�>|*4V����>h���j۲j�m�Л�h���U/�z|*�v��˂ ��Us���h�?K`��b�T,?���'�T�ObS�Z"
+��%2j�Y"
+ʋ%2���$�
+�mYe
+>SKb�gjI���P1v`9�T�v����!���n_J��P�;+hݏ~��pdd)��R��T�}dD��P�7Pn�Mi?*L�U��B���Rn�M�d�J��U=��4*4g�U��F�i��]��-���rˠb���x�T8���^+J�GŁ�ɪ�kR�yMF�]�%�w���]�fj-ђ�21U��}T�\���t)e.�%��j֊��:Ğ~�[Qau�X�:�Tx�z��TH�5� �E�Q�u���Bq�В��m�`��i�$�{�.a�������N�2�`p�I]�����0�JTV.
+���%������@���W�.
+�hs�d���K%�p���Ϻ��(�((�W�%D;�z�q����P\�������0L�{ �ƥ�M��Ԕ ��Mkb+�qăK%1��d�}m��@��6.�}Ĥ�Ҁ��L=�(*�bB�@Lh�� �r��V�'��6�J�8TP��'��X*���!���]8T�7�X�S��T�^���ۋO%Z�M4�� �PA�G
+�p���3*�
+��!��82*��#�!��H*F��~=��]״��${�a��/����$�?��%!�K-���G֏IH������G>� Y��H~�D�� k���ć�&Y�Rk#���+\��<�Δ�ۙ���H~�=-�S_�ﳧet�#���=o$4w�� �������e�����3���e���@@�6�nVs�z�5�X6�*�\e#��6r����s�][bF��i�b���Q��741 ��*�_����o'$�������PKк��+�-PK$�P;ptB�pollen.argoPK$�P;1f��^��Gpollen_DC_Pollen.pgmlPK$�P;4�[-m��pollen.todoPK$�P;7Rp:B� pollen_profile.profilePK$�P;к��+�-
+!pollen.xmiPK1o9
\ No newline at end of file
Added: trunk/pollen-ui/nbactions.xml
===================================================================
--- trunk/pollen-ui/nbactions.xml (rev 0)
+++ trunk/pollen-ui/nbactions.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<actions>
+ <action>
+ <actionName>CUSTOM-tomcat embedded</actionName>
+ <displayName>tomcat embedded</displayName>
+ <goals>
+ <goal>tomcat:run</goal>
+ </goals>
+ </action>
+ <action>
+ <actionName>CUSTOM-clean & run tomcat embedded</actionName>
+ <displayName>clean & run tomcat embedded</displayName>
+ <goals>
+ <goal>clean</goal>
+ <goal>install</goal>
+ <goal>tomcat:run</goal>
+ </goals>
+ </action>
+ </actions>
Modified: trunk/pollen-ui/pom.xml
===================================================================
--- trunk/pollen-ui/pom.xml 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/pom.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -11,7 +11,7 @@
<parent>
<groupId>org.chorem</groupId>
<artifactId>pollen</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.2.0-SNAPSHOT</version>
</parent>
<groupId>org.chorem.pollen</groupId>
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollCreation.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -33,6 +33,7 @@
import org.apache.tapestry5.annotations.IncludeStylesheet;
import org.apache.tapestry5.annotations.InjectComponent;
import org.apache.tapestry5.annotations.InjectPage;
+import org.apache.tapestry5.annotations.Log;
import org.apache.tapestry5.annotations.Mixins;
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.annotations.Persist;
@@ -108,6 +109,9 @@
@SuppressWarnings("unused")
@Component(parameters = { "timePicker=true", "timePickerAdjacent=true" })
private DateTimeField beginChoiceDate;
+ @SuppressWarnings("unused")
+ @Component(parameters = { "timePicker=true", "timePickerAdjacent=true" })
+ private DateTimeField endChoiceDate;
/** Composants DateTimeField pour le début et la fin du sondage */
@SuppressWarnings("unused")
@@ -125,6 +129,9 @@
/** Date de début du sondage (utilisée pour la validation). */
private Date beginDateValidation;
+ /** Date de début d'ajout des choix (utilisée pour la validation). */
+ private Date beginChoiceDateValidation;
+
/** Mixin de selection de liste de favoris */
@SuppressWarnings("unused")
@Component(parameters = { "event=change",
@@ -481,13 +488,28 @@
if (beginDateValidation == null) {
beginDateValidation = new Date();
}
-
+ beginChoiceDateValidation = value;
if (value != null && value.after(beginDateValidation)) {
throw new ValidationException(messages
.get("beginChoiceDate-validate"));
}
}
+ /**
+ * Méthode appelée lors de la validation du formulaire. Validation du champs
+ * endChoiceDate.
+ *
+ * @throws ValidationException
+ */
+ void onValidateFromEndChoiceDate(Date value) throws ValidationException {
+ if (beginChoiceDateValidation == null) {
+ beginChoiceDateValidation = new Date();
+ }
+ if (value != null && value.before(beginChoiceDateValidation)) {
+ throw new ValidationException(messages.get("endChoiceDate-validate"));
+ }
+ }
+
/**
* Méthode appelée lors de la validation du formulaire. Validation des
* listes de votants.
@@ -650,6 +672,7 @@
/**
* Réinitialisation des listes de votants en fonction du type de sondage.
*/
+ @Log
private void adaptStepPoll() {
// Sondage libre : suppression de toutes les listes
@@ -674,11 +697,16 @@
votingLists.add(votingList);
currentList = getVotingListIndex();
}
+
+ if (poll.getBeginDate() != null) {
+ poll.setEndChoiceDate(poll.getBeginDate());
+ }
}
/**
* Préparation du sondage.
*/
+ @Log
private boolean preparePoll() {
// Ajout de l'identifiant du créateur
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollModification.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollModification.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/PollModification.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -106,7 +106,10 @@
@SuppressWarnings("unused")
@Component(parameters = { "timePicker=true", "timePickerAdjacent=true" })
private DateTimeField beginChoiceDate;
-
+ @SuppressWarnings("unused")
+ @Component(parameters = { "timePicker=true", "timePickerAdjacent=true" })
+ private DateTimeField endChoiceDate;
+
/** Composants DateTimeField pour le début et la fin du sondage */
@SuppressWarnings("unused")
@Component(parameters = { "timePicker=true", "timePickerAdjacent=true" })
@@ -145,6 +148,9 @@
/** Date de début du sondage (utilisée pour la validation). */
private Date beginDateValidation;
+
+ /** Date de début d'ajout des choix (utilisée pour la validation). */
+ private Date beginChoiceDateValidation;
@InjectComponent
private Zone pollCreationZone;
@@ -339,7 +345,7 @@
if (beginDateValidation == null) {
beginDateValidation = new Date();
}
-
+ beginChoiceDateValidation = value;
if (value != null && value.after(beginDateValidation)) {
throw new ValidationException(messages
.get("beginChoiceDate-validate"));
@@ -347,6 +353,22 @@
}
/**
+ * Méthode appelée lors de la validation du formulaire. Validation du champs
+ * endChoiceDate.
+ *
+ * @throws ValidationException
+ */
+ void onValidateFromEndChoiceDate(Date value) throws ValidationException {
+ if (beginChoiceDateValidation == null) {
+ beginChoiceDateValidation = new Date();
+ }
+
+ if (value != null && value.before(beginChoiceDateValidation)) {
+ throw new ValidationException(messages.get("endChoiceDate-validate"));
+ }
+ }
+
+ /**
* Méthode appelée lors de la validation du formulaire. Validation des
* listes de votants.
*
Modified: trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java
===================================================================
--- trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2009-10-16 16:42:52 UTC (rev 2780)
@@ -33,6 +33,7 @@
import org.apache.tapestry5.annotations.IncludeStylesheet;
import org.apache.tapestry5.annotations.InjectComponent;
import org.apache.tapestry5.annotations.InjectPage;
+import org.apache.tapestry5.annotations.Log;
import org.apache.tapestry5.annotations.Parameter;
import org.apache.tapestry5.annotations.Persist;
import org.apache.tapestry5.annotations.Property;
@@ -86,6 +87,9 @@
@IncludeStylesheet("context:css/vote.css")
public class VoteForPoll {
+ @Inject
+ private Logger log;
+
@Parameter(defaultPrefix = BindingConstants.MESSAGE, value = "title")
@Property
private String title;
@@ -788,9 +792,10 @@
}
public boolean isPollChoiceStarted() {
- Date now = new Date();
- return poll.getBeginChoiceDate() == null
- || poll.getBeginChoiceDate().before(now);
+ Date now = new Date();
+ boolean started = poll.getBeginChoiceDate() == null || poll.getBeginChoiceDate().before(now);
+ boolean ended = poll.getEndChoiceDate() != null && poll.getEndChoiceDate().before(now);
+ return started && !ended;
}
public boolean isPollStarted() {
@@ -808,8 +813,8 @@
}
public boolean isPollChoiceRunning() {
- return poll.isChoiceAddAllowed() && isPollChoiceStarted()
- && !isPollStarted();
+ return poll.isChoiceAddAllowed() && isPollChoiceStarted();
+ //&& !isPollStarted();
}
public boolean isPollRunning() {
Modified: trunk/pollen-ui/src/main/resources/log4j.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/log4j.properties 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/resources/log4j.properties 2009-10-16 16:42:52 UTC (rev 2780)
@@ -1,5 +1,5 @@
# Default to info level output; this is very handy if you eventually use Hibernate as well.
-log4j.rootCategory=info, A1
+log4j.rootCategory=warn, A1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_en.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_en.properties 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_en.properties 2009-10-16 16:42:52 UTC (rev 2780)
@@ -45,6 +45,10 @@
beginChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
beginChoiceDate-regexp-message=Begin date does not match pattern 12/31/2000 12:59 AM.
beginChoiceDate-validate=The choice add date must be prior to the poll's begin date.
+endChoiceDate-label=End date
+endChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
+endChoiceDate-regexp-message=End date does not match pattern 12/31/2000 12:59 AM.
+endChoiceDate-validate=The choice end date must be later than the begin date.
choiceNb-label=Limit the number of choices for each vote
choiceNb-help=The user can select a limited number of choices
maxChoiceNb-label=Limit
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_fr.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_fr.properties 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollCreation_fr.properties 2009-10-16 16:42:52 UTC (rev 2780)
@@ -1,13 +1,13 @@
-title=Création d'un sondage
+title=Cr\u00E9ation d'un sondage
title-new=Nouveau sondage
-prev-button=<< Précédent
+prev-button=<< Pr\u00E9c\u00E9dent
next-button=Suivant >>
submit=Valider
change=Valider
-created=Sondage créé
+created=Sondage cr\u00E9\u00E9
#poll
-pollLegend=Étape %d : les informations de votre sondage
+pollLegend=\u00C9tape %d : les informations de votre sondage
votingId-label=Votre nom *
votingId-required-message=Vous devez fournir un nom.
email-label=Votre em@il
@@ -16,51 +16,55 @@
title-label=Titre *
title-required-message=Vous devez fournir un titre pour le sondage.
description-label=Description
-beginDate-label=Date de début
+beginDate-label=Date de d\u00E9but
beginDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-beginDate-regexp-message=La date de début doit-être au format 31/12/2000 23:59.
-beginDate-validate=La date de début doit-être postérieure à la date actuelle.
+beginDate-regexp-message=La date de d\u00E9but doit-\u00EAtre au format 31/12/2000 23:59.
+beginDate-validate=La date de d\u00E9but doit-\u00EAtre post\u00E9rieure \u00E0 la date actuelle.
endDate-label=Date de fin
endDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-endDate-regexp-message=La date de fin doit-être au format 31/12/2000 23:59.
-endDate-validate=La date de fin doit-être postérieure à la date de début.
+endDate-regexp-message=La date de fin doit-\u00EAtre au format 31/12/2000 23:59.
+endDate-validate=La date de fin doit-\u00EAtre post\u00E9rieure \u00E0 la date de d\u00E9but.
pollType-label=Type de sondage
-pollType-help=Free : accessible à tout le monde<br/>Restricted : accessible uniquement à une liste de votants<br/>Group : accessible à plusieurs listes de votants
-voteCounting-label=Type de dépouillement
-voteCounting-help=Normal : sélection de 1 ou n choix parmis les choix possibles<br/>Percentage : attribution d'un pourcentage à chaque choix<br/>Condorcet : classement des choix par ordre de préférence
+pollType-help=Free : accessible \u00E0 tout le monde<br/>Restricted : accessible uniquement \u00E0 une liste de votants<br/>Group : accessible \u00E0 plusieurs listes de votants
+voteCounting-label=Type de d\u00E9pouillement
+voteCounting-help=Normal : s\u00E9lection de 1 ou n choix parmis les choix possibles<br/>Percentage : attribution d\'un pourcentage \u00E0 chaque choix<br/>Condorcet : classement des choix par ordre de pr\u00E9f\u00E9rence
#options
-optionsLegend=Étape %d : les options de votre sondage
+optionsLegend=\u00C9tape %d : les options de votre sondage
anonymous-label=Sondage anonyme
anonymous-help=Les votants ainsi que leurs votes sont anonymes
anonymousVoteAllowed-label=Autoriser le vote anonyme
-anonymousVoteAllowed-help=Les votants peuvent être anonymes
-continuousResults-label=Résultats continus
-continuousResults-help=Les résultats du sondage sont affichés en continu au moment du vote
-publicResults-label=Résultats publics
-publicResults-help=Les résultats du sondage sont consultables par tout le monde
+anonymousVoteAllowed-help=Les votants peuvent \u00EAtre anonymes
+continuousResults-label=R\u00E9sultats continus
+continuousResults-help=Les r\u00E9sultats du sondage sont affich\u00E9s en continu au moment du vote
+publicResults-label=R\u00E9sultats publics
+publicResults-help=Les r\u00E9sultats du sondage sont consultables par tout le monde
addChoiceAllowed-label=Autoriser l'ajout de choix
-addChoiceAllowed-help=Il est possible d'ajouter des choix au sondage
-beginChoiceDate-label=Date de début
+addChoiceAllowed-help=Il est possible d\'ajouter des choix au sondage.
+beginChoiceDate-label=Date de d\u00E9but
beginChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-beginChoiceDate-regexp-message=La date de début doit-être au format 31/12/2000 23:59.
-beginChoiceDate-validate=La date d'ajout de choix doit-être antérieure à la date de début du sondage.
+beginChoiceDate-regexp-message=La date de d\u00E9but doit-\u00EAtre au format 31/12/2000 23:59.
+beginChoiceDate-validate=La date d'ajout de choix doit-\u00EAtre ant\u00E9rieure \u00E0 la date de d\u00E9but du sondage.
+endChoiceDate-label=Date de fin
+endChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
+endChoiceDate-regexp-message=La date de fin doit-\u00EAtre au format 31/12/2000 23:59.
+endChoiceDate-validate=La date de fin d'ajout de choix doit-\u00EAtre post\u00E9rieure \u00E0 la date de d\u00E9but.
choiceNb-label=Limiter le nombre de choix par vote
-choiceNb-help=Le nombre de choix que l'utilisateur peut sélectionner est limité
+choiceNb-help=Le nombre de choix que l\'utilisateur peut s\u00E9lectionner est limit\u00E9
maxChoiceNb-label=Limite
-maxChoiceNb-min-message=La valeur doit-être supérieure à 0.
+maxChoiceNb-min-message=La valeur doit-\u00EAtre sup\u00E9rieure \u00E0 0.
sendNotification-label=Recevoir des emails de notification
-sendNotification-help=Un email est envoyé tous les N votes pour prevenir le créateur
+sendNotification-help=Un email est envoy\u00E9 tous les N votes pour prevenir le cr\u00E9ateur
notification-label=Tous les
notification-label2=votes
-notification-min-message=La valeur doit-être supérieure à 0.
+notification-min-message=La valeur doit-\u00EAtre sup\u00E9rieure \u00E0 0.
sendReminder-label=Envoyer des emails de rappel
-sendReminder-help=Un email de rappel est envoyé aux votants qui n'ont pas encore voté N heures avant la fin du sondage
+sendReminder-help=Un email de rappel est envoy\u00E9 aux votants qui n\'ont pas encore vot\u00E9 N heures avant la fin du sondage
reminder-label=heures avant la fin
-reminder-min-message=La valeur doit-être supérieure à 0.
+reminder-min-message=La valeur doit-\u00EAtre sup\u00E9rieure \u00E0 0.
#lists
-listsLegend=Étape %d : les listes de votants de votre sondage
+listsLegend=\u00C9tape %d : les listes de votants de votre sondage
personName-label=Nom
personName-required-message=Vous devez fournir un nom.
personEmail-label=Em@il
@@ -68,33 +72,33 @@
personEmail-regexp-message=Email invalide.
personEmail-required-message=Vous devez fournir une adresse email.
personWeight-label=Poids
-personWeight-min-message=Le poids doit-être supérieur à 0.
-listSelect-label=Sélectionnez une liste de votants
-listSelect-help=Les votants seront ajoutés au groupe selectionné. Pour sélectionner un autre groupe cliquez sur l'icône de modification
+personWeight-min-message=Le poids doit-\u00EAtre sup\u00E9rieur \u00E0 0.
+listSelect-label=S\u00E9lectionnez une liste de votants
+listSelect-help=Les votants seront ajout\u00E9s au groupe selectionn\u00E9. Pour s\u00E9lectionner un autre groupe cliquez sur l\'ic\u00C3\u00B4ne de modification
group-label=Groupe
groupName-label=Nom
groupWeight-label=Poids
addPerson=Ajouter un votant
addGroup=Ajouter un groupe
noList-validate=Une liste doit contenir au moins un votant.
-list-validate=Les noms des votants doivent être uniques.
-lists-validate=Les noms des listes doivent être uniques.
+list-validate=Les noms des votants doivent \u00EAtre uniques.
+lists-validate=Les noms des listes doivent \u00EAtre uniques.
#choices
-choicesLegend=Étape %d : les choix de votre sondage
+choicesLegend=\u00C9tape %d : les choix de votre sondage
choiceType-label=Choisissez le type de choix
textName-label=Choix
textDesc-label=Description
imgFile-label=Image
imgFile-regexp=\\.(jpe?g|gif|png|JPE?G|GIF|PNG)$
-imgFile-regexp-message=L'image doit-être au format JPG, GIF ou PNG.
+imgFile-regexp-message=L'image doit-\u00EAtre au format JPG, GIF ou PNG.
imgDesc-label=Description
dateDTF-label=Date et heure
dateDTF-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-dateDTF-regexp-message=La date doit-être au format 31/12/2000 23:59.
+dateDTF-regexp-message=La date doit-\u00EAtre au format 31/12/2000 23:59.
DTF-pattern=dd/MM/yyyy HH:mm
dateDesc-label=Description
addChoice=Ajouter un choix
noChoice-validate=Vous devez saisir au moins un choix.
-choice-validate=Les choix doivent être uniques.
-uploadError=Une erreur s'est produite lors du transfert des fichiers. La taille maximale autorisée est de %s par fichier et %s au total.
\ No newline at end of file
+choice-validate=Les choix doivent \u00EAtre uniques.
+uploadError=Une erreur s'est produite lors du transfert des fichiers. La taille maximale autoris\u00E9e est de %s par fichier et %s au total.
\ No newline at end of file
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_en.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_en.properties 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_en.properties 2009-10-16 16:42:52 UTC (rev 2780)
@@ -37,6 +37,11 @@
beginChoiceDate-label=Begin date
beginChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
beginChoiceDate-regexp-message=Begin date does not match pattern 12/31/2000 12:59 AM
+beginChoiceDate-validate=The choice add date must be prior to the poll's begin date.
+endChoiceDate-label=End date
+endChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
+endChoiceDate-regexp-message=End date does not match pattern 12/31/2000 12:59 AM
+endChoiceDate-validate=The choice end date must be later than the begin date.
sendNotification-label=Receive notification emails
sendNotification-help=An email is send each n votes to prevent the creator
notification-label=Each
Modified: trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_fr.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_fr.properties 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/resources/org/chorem/pollen/ui/pages/poll/PollModification_fr.properties 2009-10-16 16:42:52 UTC (rev 2780)
@@ -1,14 +1,14 @@
title=Modification d'un sondage
-prev-button=<< Précédent
+prev-button=<< Pr\u00E9c\u00E9dent
next-button=Suivant >>
submit=Valider
close=Clore le sondage
pollClosed=Ce sondage est clos. Vous ne pouvez plus le modifier.
pollNotFound=Le sondage que vous voulez modifier n'existe pas.
-userNotAllowed=Vous n'êtes pas autorisé à modifier ce sondage.
+userNotAllowed=Vous n'\u00EAtes pas autoris\u00E9 \u00E0 modifier ce sondage.
#poll
-pollLegend=Étape %d : les informations de votre sondage
+pollLegend=\u00C9tape %d : les informations de votre sondage
votingId-label=Votre nom *
votingId-required-message=Vous devez fournir un nom.
email-label=Votre em@il
@@ -17,34 +17,39 @@
title-label=Titre *
title-required-message=Vous devez fournir un titre pour le sondage.
description-label=Description
-beginDate-label=Date de début
+beginDate-label=Date de d\u00E9but
beginDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-beginDate-regexp-message=La date de début doit-être au format 31/12/2000 23:59
+beginDate-regexp-message=La date de d\u00E9but doit-\u00EAtre au format 31/12/2000 23:59
endDate-label=Date de fin
endDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-endDate-regexp-message=La date de fin doit-être au format 31/12/2000 23:59
+endDate-regexp-message=La date de fin doit-\u00EAtre au format 31/12/2000 23:59
#options
-optionsLegend=Étape %d : les options de votre sondage
+optionsLegend=\u00C9tape %d : les options de votre sondage
anonymousVoteAllowed-label=Autoriser le vote anonyme
-anonymousVoteAllowed-help=Les votants peuvent être anonymes
-continuousResults-label=Résultats continus
-continuousResults-help=Les résultats du sondage sont affichés en continu au moment du vote
-publicResults-label=Résultats publics
-publicResults-help=Les résultats du sondage sont consultables par tout le monde
+anonymousVoteAllowed-help=Les votants peuvent \u00EAtre anonymes
+continuousResults-label=R\u00E9sultats continus
+continuousResults-help=Les r\u00E9sultats du sondage sont affich\u00E9s en continu au moment du vote
+publicResults-label=R\u00E9sultats publics
+publicResults-help=Les r\u00E9sultats du sondage sont consultables par tout le monde
addChoiceAllowed-label=Autoriser l'ajout de choix
addChoiceAllowed-help=Il est possible d'ajouter des choix au sondage
-beginChoiceDate-label=Date de début
+beginChoiceDate-label=Date de d\u00E9but
beginChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
-beginChoiceDate-regexp-message=La date de début doit-être au format 31/12/2000 23:59
+beginChoiceDate-regexp-message=La date de d\u00E9but doit-\u00EAtre au format 31/12/2000 23:59
+beginChoiceDate-validate=La date d'ajout de choix doit-\u00EAtre ant\u00E9rieure \u00E0 la date de d\u00E9but du sondage.
+endChoiceDate-label=Date de fin
+endChoiceDate-regexp=\\d{2}\/\\d{2}\/\\d{4}( \\d{2}\\:\\d{2})?
+endChoiceDate-regexp-message=La date de fin doit-\u00EAtre au format 31/12/2000 23:59
+endChoiceDate-validate=La date de fin d'ajout de choix doit-\u00EAtre post\u00E9rieure \u00E0 la date de d\u00E9but.
sendNotification-label=Recevoir des emails de notification
-sendNotification-help=Un email est envoyé tous les n votes pour prevenir le créateur
+sendNotification-help=Un email est envoy\u00E9 tous les n votes pour prevenir le cr\u00E9ateur
notification-label=Tous les
notification-label2=votes
-notification-min-message=La valeur doit-être supérieure à 0.
+notification-min-message=La valeur doit-\u00EAtre sup\u00E9rieure \u00E0 0.
#lists
-listsLegend=Étape %d : les listes de votants de votre sondage
+listsLegend=\u00C9tape %d : les listes de votants de votre sondage
personName-label=Nom
personName-required-message=Vous devez fournir un nom.
personEmail-label=Em@il
@@ -52,14 +57,14 @@
personEmail-regexp-message=Email invalide.
personEmail-required-message=Vous devez fournir une adresse email.
personWeight-label=Poids
-personWeight-min-message=Le poids doit-être supérieure à 0.
+personWeight-min-message=Le poids doit-\u00EAtre sup\u00E9rieure \u00E0 0.
group-label=Groupe
groupName-label=Nom
groupWeight-label=Poids
-list-validate=Les noms des votants doivent être uniques.
-lists-validate=Les noms des listes doivent être uniques.
+list-validate=Les noms des votants doivent \u00EAtre uniques.
+lists-validate=Les noms des listes doivent \u00EAtre uniques.
#choices
-choicesLegend=Étape %d : les choix de votre sondage
+choicesLegend=\u00C9tape %d : les choix de votre sondage
DTF-pattern=dd/MM/yyyy HH:mm
desc-label=Description
\ No newline at end of file
Modified: trunk/pollen-ui/src/main/resources/pollen.properties
===================================================================
--- trunk/pollen-ui/src/main/resources/pollen.properties 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/resources/pollen.properties 2009-10-16 16:42:52 UTC (rev 2780)
@@ -1,11 +1,11 @@
-## Configuration de la base de données
+## Configuration de la base de donn\u00C3\u00A9es
#hibernate.hbm2ddl.auto=update
hibernate.show_sql=false
hibernate.dialect=org.hibernate.dialect.H2Dialect
hibernate.connection.username=sa
hibernate.connection.password=
hibernate.connection.driver_class=org.h2.Driver
-hibernate.connection.url=jdbc:h2:file://tmp/pollen/pollen
+hibernate.connection.url=jdbc:h2:file:~/.pollen/pollendb
#hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
#hibernate.connection.username=pollen
@@ -19,22 +19,22 @@
topia.service.migration.callbackhandlers=org.chorem.pollen.business.migration.PollenMigrationCallbackHandler
topia.service.migration.mappingsdir=oldmappings
topia.service.migration.modelnames=pollen
-topia.service.migration.version=1.1
+topia.service.migration.version=1.2
-## Initialisation de la base de données
+## Initialisation de la base de donn\u00C3\u00A9es
choiceType=DATE,IMAGE,TEXT
pollType=RESTRICTED,FREE,GROUP
voteCounting=NORMAL,PERCENTAGE,CONDORCET
-## Utilisateur par défaut
+## Utilisateur par d\u00C3\u00A9faut
adminLogin=admin
adminPassword=pollen
adminEmail=admin(a)domain.com
-## Répertoire des images transférées
-upImgDir=/tmp/pollen/uploadedImages
+## R\u00C3\u00A9pertoire des images transf\u00C3\u00A9r\u00C3\u00A9es
+upImgDir=~/.pollen/uploadedImages
-## Taille maximal des images transférées (en octets)
+## Taille maximal des images transf\u00C3\u00A9r\u00C3\u00A9es (en octets)
upload.filesize-max=1048576
upload.requestsize-max=10485760
@@ -43,10 +43,10 @@
email_port=25
email_from=bot(a)pollen.org
-## Répertoire des flux de syndication (Atom)
-feedDir=/tmp/pollen/feeds
+## R\u00C3\u00A9pertoire des flux de syndication (Atom)
+feedDir=~/.pollen/feeds
-## Adresse du site (utilisée pour les emails de rappel)
+## Adresse du site (utilis\u00C3\u00A9e pour les emails de rappel)
siteUrl=
## Version de l'application
Modified: trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/webapp/poll/PollCreation.tml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -103,6 +103,9 @@
<span id="choiceDateDiv" style="${choiceDateDisplay}">
<t:label for="beginChoiceDate" />
<input t:id="beginChoiceDate" t:value="poll.beginChoiceDate" datePattern="${message:DTF-pattern}" t:validate="regexp"/>
+ <br />
+ <t:label for="endChoiceDate" />
+ <input t:id="endChoiceDate" t:value="poll.endChoiceDate" datePattern="${message:DTF-pattern}" t:validate="regexp"/>
</span>
</div>
<t:if test="normalVoteCounting">
Modified: trunk/pollen-ui/src/main/webapp/poll/PollModification.tml
===================================================================
--- trunk/pollen-ui/src/main/webapp/poll/PollModification.tml 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-ui/src/main/webapp/poll/PollModification.tml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -86,6 +86,9 @@
<span id="choiceDateDiv" style="${choiceDateDisplay}">
<t:label for="beginChoiceDate" />
<input t:id="beginChoiceDate" t:value="poll.beginChoiceDate" datePattern="${message:DTF-pattern}" t:validate="regexp"/>
+ <br />
+ <t:label for="endChoiceDate" />
+ <input t:id="endChoiceDate" t:value="poll.endChoiceDate" datePattern="${message:DTF-pattern}" t:validate="regexp"/>
</span>
</div>
<t:if test="poll.creatorEmail">
Modified: trunk/pollen-votecounting/pom.xml
===================================================================
--- trunk/pollen-votecounting/pom.xml 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pollen-votecounting/pom.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -10,7 +10,7 @@
<parent>
<groupId>org.chorem</groupId>
<artifactId>pollen</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.2.0-SNAPSHOT</version>
</parent>
<groupId>org.chorem.pollen</groupId>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2009-10-12 12:29:43 UTC (rev 2779)
+++ trunk/pom.xml 2009-10-16 16:42:52 UTC (rev 2780)
@@ -15,7 +15,7 @@
<groupId>org.chorem</groupId>
<artifactId>pollen</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.2.0-SNAPSHOT</version>
<modules>
<module>pollen-ui</module>
@@ -112,7 +112,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.1.117</version>
+ <version>1.2.121</version>
</dependency>
<dependency>
<groupId>postgresql</groupId>
@@ -282,7 +282,7 @@
<!-- customized versions -->
<!--javadoc.version>2.4</javadoc.version-->
- <topia.version>2.2.0</topia.version>
+ <topia.version>2.2.2-SNAPSHOT</topia.version>
<eugene.version>1.0.0</eugene.version>
<tapestry.version>5.1.0.5</tapestry.version>
1
0