r211 - in trunk/src/main: java/org/chorem/bow java/org/chorem/bow/action resources resources/i18n webapp/css webapp/jsp/inc
Author: vbriand Date: 2011-02-18 19:12:04 +0100 (Fri, 18 Feb 2011) New Revision: 211 Url: http://chorem.org/repositories/revision/bow/211 Log: Added confirmation and error messages which are displayed on the header. Modified: trunk/src/main/java/org/chorem/bow/BowSearch.java trunk/src/main/java/org/chorem/bow/action/AddUrlAction.java trunk/src/main/java/org/chorem/bow/action/DeleteImportAction.java trunk/src/main/java/org/chorem/bow/action/DeleteSearchResultsAction.java trunk/src/main/java/org/chorem/bow/action/EditBookmarkAction.java trunk/src/main/java/org/chorem/bow/action/ForgotPasswordAction.java trunk/src/main/java/org/chorem/bow/action/FullTextSearchAction.java trunk/src/main/java/org/chorem/bow/action/GenerateTokenAction.java trunk/src/main/java/org/chorem/bow/action/ImportBookmarksAction.java trunk/src/main/java/org/chorem/bow/action/ModifyBookmarkAction.java trunk/src/main/java/org/chorem/bow/action/PreferencesAction.java trunk/src/main/java/org/chorem/bow/action/RegisterAction.java trunk/src/main/java/org/chorem/bow/action/RemoveBookmarkAction.java trunk/src/main/java/org/chorem/bow/action/SearchAction.java trunk/src/main/resources/i18n/bow_en_GB.properties trunk/src/main/resources/i18n/bow_fr_FR.properties trunk/src/main/resources/struts.xml trunk/src/main/webapp/css/bookmark.css trunk/src/main/webapp/css/connexion.css trunk/src/main/webapp/css/global.css trunk/src/main/webapp/jsp/inc/header.jsp trunk/src/main/webapp/jsp/inc/rightMenu.jsp Modified: trunk/src/main/java/org/chorem/bow/BowSearch.java =================================================================== --- trunk/src/main/java/org/chorem/bow/BowSearch.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/BowSearch.java 2011-02-18 18:12:04 UTC (rev 211) @@ -23,9 +23,6 @@ */ package org.chorem.bow; -import java.io.IOException; - -import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import org.nuiton.wikitty.search.Criteria; @@ -35,8 +32,7 @@ public class BowSearch { - static public void search(HttpServletRequest request, BowPreference user) - throws IOException, ServletException { + static public void search(HttpServletRequest request, BowPreference user) { String searchLine = request.getParameter("searchLine"); if (searchLine == null) { @@ -59,18 +55,21 @@ BowSession session = BowSession.getBowSession(request); WikittyProxy proxy = session.getProxy(); Criteria criteria = BookmarkUtils.getBookmarkListCriteriaByUser(user, searchLine); - criteria = criteria.addSortDescending(BowBookmark.FQ_FIELD_BOWBOOKMARK_CLICK); + + if (criteria != null ) { + criteria = criteria.addSortDescending(BowBookmark.FQ_FIELD_BOWBOOKMARK_CLICK); - if (criteria != null) { - PagedResult<BowBookmark> result = + if (criteria != null) { + PagedResult<BowBookmark> result = proxy.findAllByCriteria(BowBookmark.class, criteria); //Selects all bookmarks by user - BookmarkActions bookmarkActions = BookmarkUtils.createBookmarkActions(request, result, searchLine); - request.setAttribute("bookmarkActions", bookmarkActions); + BookmarkActions bookmarkActions = BookmarkUtils.createBookmarkActions(request, result, searchLine); + request.setAttribute("bookmarkActions", bookmarkActions); + } } } } - static public void fullText(HttpServletRequest request, BowPreference user) throws IOException, ServletException { + static public void fullText(HttpServletRequest request, BowPreference user) { String fullText = request.getParameter("fullTextLine"); if (fullText == null || fullText.isEmpty()) { Modified: trunk/src/main/java/org/chorem/bow/action/AddUrlAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/AddUrlAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/AddUrlAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -31,6 +31,8 @@ import org.nuiton.wikitty.WikittyProxy; import org.nuiton.wikitty.search.Search; +import static org.nuiton.i18n.I18n.n_; + /** * Ajoute un bookmark, soit par le formulaire, soit par un appel javascript * @@ -175,6 +177,7 @@ } if (bookmark != null && !bookmark.getDescription().isEmpty() && !bookmark.getBowUser().isEmpty()) { proxy.store(bookmark); //Stores the bookmark if everything is ok + addActionMessage(getText(n_("bow.bookmark.add.successful"))); if (log.isDebugEnabled()) { log.debug("Adding URL"); } Modified: trunk/src/main/java/org/chorem/bow/action/DeleteImportAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/DeleteImportAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/DeleteImportAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -32,6 +32,8 @@ import org.nuiton.wikitty.WikittyProxy; import org.nuiton.wikitty.search.Search; +import static org.nuiton.i18n.I18n.n_; + /** * Supprime un import de bookmark * @@ -70,6 +72,7 @@ .eq(BowImport.FQ_FIELD_BOWIMPORT_IMPORTDATE, date).criteria(); List<BowImport> bookmarks = proxy.findAllByCriteria(BowImport.class, criteria).getAll(); proxy.delete(bookmarks); + addActionMessage(getText(n_("bow.bookmark.import.delete.successful"))); } return SUCCESS; } Modified: trunk/src/main/java/org/chorem/bow/action/DeleteSearchResultsAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/DeleteSearchResultsAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/DeleteSearchResultsAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -95,9 +95,11 @@ // TODO poussin 20110216 a revoir, incomprehensible :( for (BowBookmark bookmark : bookmarks) { - if (searchLine.isEmpty() && bookmark.getLabels() == null || !searchLine.isEmpty() - || fullTextLine.isEmpty() && bookmark.getLabels() == null || !fullTextLine.isEmpty()) { - ids.add(bookmark.getWikittyId()); + if (bookmark != null) { + if (searchLine.isEmpty() && bookmark.getLabels() == null || !searchLine.isEmpty() + || fullTextLine.isEmpty() && bookmark.getLabels() == null || !fullTextLine.isEmpty()) { + ids.add(bookmark.getWikittyId()); + } } } proxy.delete(ids); Modified: trunk/src/main/java/org/chorem/bow/action/EditBookmarkAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/EditBookmarkAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/EditBookmarkAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -23,9 +23,6 @@ */ package org.chorem.bow.action; -import java.io.IOException; - -import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.interceptor.ServletRequestAware; @@ -122,15 +119,7 @@ BowInit.initHomePage(request, user); result = "home"; } else { - try { - BowSearch.search(request, user); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (ServletException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + BowSearch.search(request, user); result = "search"; } return result; Modified: trunk/src/main/java/org/chorem/bow/action/ForgotPasswordAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/ForgotPasswordAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/ForgotPasswordAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -84,39 +84,46 @@ email = email.trim(); if (!email.isEmpty()) { WikittyProxy proxy = getBowProxy(); - Criteria criteria = Search.query().eq(BowUser.FQ_FIELD_WIKITTYUSER_LOGIN, email).criteria(); + Criteria criteria = Search.query() + .eq(BowUser.FQ_FIELD_WIKITTYUSER_LOGIN, email).criteria(); BowUser user = proxy.findByCriteria(BowUser.class, criteria); - if (user != null) { -// boolean bool = true; + if (user != null) { //If the email address exists String password = ""; String md5 = ""; -// while (bool) { - password = RandomStringUtils.randomAlphanumeric(20); - md5 = StringUtil.encodeMD5(password); -// bool = passwordExists(md5); -// } + password = RandomStringUtils.randomAlphanumeric(20); + md5 = StringUtil.encodeMD5(password); try { String mailContent; - mailContent = getText(n_("bow.register.mailHi")) + ",\n\n" + getText(n_("bow.register.mailPwd")) + ": " + password + "\n\n" + getText(n_("bow.register.mailEmail")) + ": " + email + "\n\n"; - BowMail.sendMail(email, getText(n_("bow.register.mailSubject")), mailContent); + mailContent = getText(n_("bow.register.mailHi")) + + ",\n\n" + getText(n_("bow.register.mailPwd")) + ": " + + password + "\n\n" + getText(n_("bow.register.mailEmail")) + + ": " + email + "\n\n"; + BowMail.sendMail(email, + getText(n_("bow.register.mailSubject")), + mailContent); - // on ne change le mot de passe que si on a reussi a - // envoyer le mail + //The password is changed only if the mail has been sent user.setPassword(md5); proxy.store(user); } catch (AddressException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + //If the email address is invalid + String message = getText("bow.mail.badFormat"); + + addActionError(n_(message)); + log.error(message + " (email:" + email + ")"); } catch (MessagingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + String message = getText("bow.mail.sendError"); + + addActionError(n_(message)); + log.error(message + "(" + e.getMessage() + ")"); } result = SUCCESS; - } else { - addFieldError("email", getText(n_("bow.forgotPassword.emailDoesntExist"))); + } else { //If the email is not associated with an account + addFieldError("email", + getText(n_("bow.forgotPassword.emailDoesntExist"))); } } } Modified: trunk/src/main/java/org/chorem/bow/action/FullTextSearchAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/FullTextSearchAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/FullTextSearchAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -23,9 +23,6 @@ */ package org.chorem.bow.action; -import java.io.IOException; - -import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.interceptor.ServletRequestAware; @@ -84,15 +81,7 @@ BowSession session = getBowSession(); BowPreference user = session.getPreference(); - try { - BowSearch.fullText(request, user); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (ServletException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + BowSearch.fullText(request, user); return SUCCESS; } } Modified: trunk/src/main/java/org/chorem/bow/action/GenerateTokenAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/GenerateTokenAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/GenerateTokenAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -27,6 +27,8 @@ import org.chorem.bow.BowUtils; import org.nuiton.wikitty.WikittyProxy; +import static org.nuiton.i18n.I18n.n_; + /** * Force la regeneration de token permanent et temporaire * @@ -49,7 +51,7 @@ String temporaryToken = BowUtils.generateToken(); getBowSession().setTemporaryToken(temporaryToken); - + addActionMessage(getText(n_("bow.token.generate.successful"))); return SUCCESS; } } \ No newline at end of file Modified: trunk/src/main/java/org/chorem/bow/action/ImportBookmarksAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/ImportBookmarksAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/ImportBookmarksAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -30,7 +30,6 @@ import java.util.Date; import java.util.List; -import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.interceptor.ServletRequestAware; @@ -228,7 +227,6 @@ public String execute() { BowPreference user = getBowSession().getPreference(); - String result = SUCCESS; if (upfile != null) { // try { @@ -253,41 +251,22 @@ if (searchLine == null || searchLine.isEmpty()) { BowInit.initHomePage(request, user); } else { - try { - BowSearch.search(request, user); - } catch (IOException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (ServletException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } + BowSearch.search(request, user); } + addActionMessage(getText(n_("bow.bookmark.import.successful"))); } catch (ParserException e) { - request.setAttribute("errorMsgUser", - getText(n_("bow.bookmark.badFileFormat"))); - request.setAttribute("errorMsgTech", e.getMessage()); - redirectTo = BowUtils.redirectTo(searchLine, fullTextLine); + addActionError(getText(n_("bow.bookmark.badFileFormat"))); if (searchLine == null || searchLine.isEmpty()) { BowInit.initHomePage(request, user); } else { - try { - BowSearch.search(request, user); - } catch (IOException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } catch (ServletException e1) { - // TODO Auto-generated catch block - e1.printStackTrace(); - } + BowSearch.search(request, user); } } catch (IOException e2) { - // TODO Auto-generated catch block - e2.printStackTrace(); - result = ERROR; + addActionError(getText(n_("bow.error.internal"))); + log.error(e2.getMessage()); } } - return result; + return SUCCESS; } } Modified: trunk/src/main/java/org/chorem/bow/action/ModifyBookmarkAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/ModifyBookmarkAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/ModifyBookmarkAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -29,6 +29,8 @@ import org.nuiton.wikitty.WikittyProxy; import org.nuiton.wikitty.search.Search; +import static org.nuiton.i18n.I18n.n_; + /** * Modifie une entree du bookmark * @@ -160,6 +162,7 @@ } BookmarkUtils.updateBookmark(bookmark, name, link, tags, alias); proxy.store(bookmark); + addActionMessage(getText(n_("bow.bookmark.update.successful"))); } return SUCCESS; } Modified: trunk/src/main/java/org/chorem/bow/action/PreferencesAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/PreferencesAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/PreferencesAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -281,6 +281,7 @@ newUser = proxy.store(newUser); getBowSession().setUser(newUser); result = "update"; + addActionMessage(getText(n_("bow.preferences.update.successful"))); } } else { // this email address is already used by someone else Modified: trunk/src/main/java/org/chorem/bow/action/RegisterAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/RegisterAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/RegisterAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -162,11 +162,16 @@ mailContent = getText(n_("bow.register.mailHi")) + ",\n\n" + getText(n_("bow.register.mailPwd")) + ": " + password + "\n\n" + getText(n_("bow.register.mailEmail")) + ": " + email + "\n\n"; BowMail.sendMail(email, getText(n_("bow.register.mailSubject")), mailContent); } catch (AddressException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + //If the email address is invalid + String message = getText("bow.mail.badFormat"); + + addActionError(n_(message)); + log.error(message + " (email:" + email + ")"); } catch (MessagingException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + String message = getText("bow.mail.sendError"); + + addActionError(n_(message)); + log.error(message + "(" + e.getMessage() + ")"); } result = SUCCESS; } Modified: trunk/src/main/java/org/chorem/bow/action/RemoveBookmarkAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/RemoveBookmarkAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/RemoveBookmarkAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -27,6 +27,8 @@ import org.chorem.bow.BowUtils; import org.nuiton.wikitty.WikittyProxy; +import static org.nuiton.i18n.I18n.n_; + /** * Supprime un bookmark * @@ -99,6 +101,7 @@ if (bookmark != null) { proxy.delete(bookmarkId); + addActionMessage(getText(n_("bow.bookmark.remove.successful"))); } } catch (Exception e) { log.error("Can't do action", e); Modified: trunk/src/main/java/org/chorem/bow/action/SearchAction.java =================================================================== --- trunk/src/main/java/org/chorem/bow/action/SearchAction.java 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/java/org/chorem/bow/action/SearchAction.java 2011-02-18 18:12:04 UTC (rev 211) @@ -23,9 +23,6 @@ */ package org.chorem.bow.action; -import java.io.IOException; - -import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.interceptor.ServletRequestAware; @@ -95,16 +92,8 @@ * Searches a bookmark */ public String execute() { - try { - BowPreference user = getBowSession().getPreference(); - BowSearch.search(request, user); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (ServletException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + BowPreference user = getBowSession().getPreference(); + BowSearch.search(request, user); return SUCCESS; } } \ No newline at end of file Modified: trunk/src/main/resources/i18n/bow_en_GB.properties =================================================================== --- trunk/src/main/resources/i18n/bow_en_GB.properties 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/resources/i18n/bow_en_GB.properties 2011-02-18 18:12:04 UTC (rev 211) @@ -1,8 +1,13 @@ bow.action.locale.english=English bow.action.locale.french=Fran\u00E7ais -bow.bookmark.badFileFormat= +bow.bookmark.add.successful=Bookmark successfully added +bow.bookmark.badFileFormat=Bad bookmarks file format \: unsuccessful import (expected Netscape-like bookmarks file) bow.bookmark.description=Description +bow.bookmark.import.delete.successful=The imported bookmarks were deleted successfully +bow.bookmark.import.successful=The bookmarks were imported successfully +bow.bookmark.remove.successful=The bookmark was removed successfully bow.bookmark.tags=Tags +bow.bookmark.update.successful=The bookmark was updated successfully bow.bookmarks.noBookmarks=No bookmarks bow.config.alias.url.description= bow.config.application.version.description= @@ -14,6 +19,7 @@ bow.config.data.dir.description= bow.config.search.engine.description= bow.config.servlet.bow.description= +bow.error.internal=An internal error occurred, please contact an administrator if the problem persists bow.footer.bugreport=Bug report bow.footer.license=AGPL License bow.footer.userSupport=User support @@ -36,6 +42,8 @@ bow.login.repeatPassword.required=Please repeat your password bow.login.submit=Login bow.login.title=Login +bow.mail.badFormat=Your email format is incorrect and therefore the email hasn't been sent +bow.mail.sendError=An error occurred while sending email bow.preferences.badCurrentPassword=Your current password is incorrect bow.preferences.bookmarksHomePage=Number of bookmarks displayed on the home page bow.preferences.colors=Site color @@ -52,6 +60,7 @@ bow.preferences.submit=Change bow.preferences.tagsNb=Number of tags displayed in the tag cloud bow.preferences.title=Preferences +bow.preferences.update.successful=The preferences have been updated successfully bow.preferences.userInfo=User information bow.register.emailAldyUsed=This email address is already used bow.register.invalidLogin=Something went wrong during your registration, please try again @@ -95,3 +104,4 @@ bow.search.orderby=Order by bow.search.submit=Search bow.search.title=Search +bow.token.generate.successful=The token has been regenerated successfully Modified: trunk/src/main/resources/i18n/bow_fr_FR.properties =================================================================== --- trunk/src/main/resources/i18n/bow_fr_FR.properties 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/resources/i18n/bow_fr_FR.properties 2011-02-18 18:12:04 UTC (rev 211) @@ -1,8 +1,13 @@ bow.action.locale.english=English bow.action.locale.french=Fran\u00E7ais -bow.bookmark.badFileFormat= +bow.bookmark.add.successful=Marque-page ajout\u00E9 avec succ\u00E8s +bow.bookmark.badFileFormat=Mauvais format de fichier de favoris \: import impossible (le fichier doit avoir un format de type Netscape) bow.bookmark.description=Description +bow.bookmark.import.delete.successful=Les marque-pages import\u00E9s ont \u00E9t\u00E9 supprim\u00E9s avec succ\u00E8s +bow.bookmark.import.successful=Les marque-pages ont \u00E9t\u00E9 import\u00E9s avec succ\u00E8s +bow.bookmark.remove.successful=Le marque-page a \u00E9t\u00E9 supprim\u00E9 avec succ\u00E8s bow.bookmark.tags=Tags +bow.bookmark.update.successful=Le marque-page a \u00E9t\u00E9 mis \u00E0 jour avec succ\u00E8s bow.bookmarks.noBookmarks=Pas de marque-page bow.config.alias.url.description= bow.config.application.version.description= @@ -14,6 +19,7 @@ bow.config.data.dir.description= bow.config.search.engine.description= bow.config.servlet.bow.description= +bow.error.internal=Une erreur interne est survenue, merci de contacter un administrateur si cette erreur persiste bow.footer.bugreport=Rapport de bug bow.footer.license=Licence AGPL bow.footer.userSupport=Support utilisateur @@ -36,6 +42,8 @@ bow.login.repeatPassword.required=Veuillez retaper votre mot de passe bow.login.submit=Connexion bow.login.title=Connexion +bow.mail.badFormat=Votre adresse email est mal form\u00E9e \: aucun mail n''a pu \u00EAtre envoy\u00E9 +bow.mail.sendError=Une erreur s''est produite lors de l''envoi du mail bow.preferences.badCurrentPassword=Votre mot de passe actuel est incorrect bow.preferences.bookmarksHomePage=Nombre de marque-pages affich\u00E9s bow.preferences.colors=Couleur du site @@ -52,6 +60,7 @@ bow.preferences.submit=Changer bow.preferences.tagsNb=Nombre de tags affich\u00E9s sur le nuage de tags bow.preferences.title=Pr\u00E9f\u00E9rences +bow.preferences.update.successful=Vos pr\u00E9f\u00E9rences ont \u00E9t\u00E9 mises \u00E0 jour avec succ\u00E8s bow.preferences.userInfo=Informations utilisateur bow.register.emailAldyUsed=Cette adresse email est d\u00E9j\u00E0 utilis\u00E9e bow.register.invalidLogin=Une erreur s''est produite pendant l''enregistrement de vos informations, merci d''essayer \u00E0 nouveau @@ -95,3 +104,4 @@ bow.search.orderby=Trier par bow.search.submit=Rechercher bow.search.title=Recherche +bow.token.generate.successful=Le token a y00E9t\u00E9 reg\u00E9n\u00E9r\u00E9 avec succ\u00E8s Modified: trunk/src/main/resources/struts.xml =================================================================== --- trunk/src/main/resources/struts.xml 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/resources/struts.xml 2011-02-18 18:12:04 UTC (rev 211) @@ -73,33 +73,47 @@ </interceptor-stack> </interceptors> <action name="importBookmarks" class="org.chorem.bow.action.ImportBookmarksAction"> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> <interceptor-ref name="loginStack" /> - <result name="error" type="redirectAction">error</result> - <result type="redirect">${redirectTo}</result> + <result type="redirect">${redirectTo}</result> </action> <action name="exportBookmarks" class="org.chorem.bow.action.ExportBookmarksAction"> <interceptor-ref name="loginStack" /> </action> <action name="modifyBookmark" class="org.chorem.bow.action.ModifyBookmarkAction"> - <interceptor-ref name="loginStack" /> - <result type="redirectAction">home</result> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result type="redirectAction">home</result> </action> <action name="removeBookmark" class="org.chorem.bow.action.RemoveBookmarkAction"> - <interceptor-ref name="loginStack" /> - <result type="redirect">${redirectTo}</result> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result type="redirect">${redirectTo}</result> </action> <action name="editBookmark" class="org.chorem.bow.action.EditBookmarkAction"> - <interceptor-ref name="loginStack" /> - <result name="home" type="redirectAction">home</result> - <result name="search">/jsp/search.jsp</result> + <interceptor-ref name="loginStack" /> + <result name="home" type="redirectAction">home</result> + <result name="search">/jsp/search.jsp</result> </action> <action name="deleteImport" class="org.chorem.bow.action.DeleteImportAction"> - <interceptor-ref name="loginStack" /> - <result type="redirectAction">preferences</result> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result type="redirectAction">preferences</result> </action> <action name="addUrl" class="org.chorem.bow.action.AddUrlAction"> - <interceptor-ref name="loginStack" /> - <result type="redirect">${redirectTo}</result> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result type="redirect">${redirectTo}</result> </action> </package> @@ -114,6 +128,9 @@ </interceptor-stack> </interceptors> <action name="search" class="org.chorem.bow.action.SearchAction"> + <interceptor-ref name="store"> + <param name="operationMode">RETRIEVE</param> + </interceptor-ref> <interceptor-ref name="loginStack" /> <result>/jsp/search.jsp</result> </action> @@ -150,15 +167,22 @@ </interceptor-stack> </interceptors> <action name="home" class="org.chorem.bow.action.HomeAction"> - <interceptor-ref name="loginStack" /> - <result>/jsp/home.jsp</result> + <interceptor-ref name="store"> + <param name="operationMode">RETRIEVE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result>/jsp/home.jsp</result> + <result name="input" type="redirectAction">home</result> </action> <action name="locale" class="org.chorem.bow.action.LocaleAction"> <result type="redirect">/jsp/login.jsp</result> </action> <action name="regenPermToken" class="org.chorem.bow.action.GenerateTokenAction"> - <interceptor-ref name="loginStack" /> - <result type="redirectAction">preferences</result> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result type="redirectAction">preferences</result> </action> <action name="deleteTag" class="org.chorem.bow.action.DeleteTagAction"> <interceptor-ref name="loginStack" /> @@ -173,23 +197,29 @@ <result>/jsp/{1}Xml.jsp</result> </action> <action name="preferences" class="org.chorem.bow.action.PreferencesAction"> - <interceptor-ref name="loginStack" /> - <result name="update" type="redirectAction">preferences</result> - <result name="error">/jsp/preferences.jsp</result> - <result>/jsp/preferences.jsp</result> + <interceptor-ref name="store"> + <param name="operationMode">STORE</param> + </interceptor-ref> + <interceptor-ref name="store"> + <param name="operationMode">RETRIEVE</param> + </interceptor-ref> + <interceptor-ref name="loginStack" /> + <result name="update" type="redirectAction">preferences</result> + <result name="error">/jsp/preferences.jsp</result> + <result>/jsp/preferences.jsp</result> </action> <action name="admin"> - <interceptor-ref name="loginStack" /> - <result name="error">/jsp/login.jsp</result> - <result>/jsp/admin.jsp</result> + <interceptor-ref name="loginStack" /> + <result name="error">/jsp/login.jsp</result> + <result>/jsp/admin.jsp</result> </action> <action name="reIndexation" class="org.chorem.bow.action.ReIndexationAction"> - <interceptor-ref name="loginStack" /> - <result>/jsp/admin.jsp</result> + <interceptor-ref name="loginStack" /> + <result>/jsp/admin.jsp</result> </action> <action name="migrate04To05" class="org.chorem.bow.action.Migrate04To05Action"> - <interceptor-ref name="loginStack" /> - <result>/jsp/admin.jsp</result> + <interceptor-ref name="loginStack" /> + <result>/jsp/admin.jsp</result> </action> </package> </struts> Modified: trunk/src/main/webapp/css/bookmark.css =================================================================== --- trunk/src/main/webapp/css/bookmark.css 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/webapp/css/bookmark.css 2011-02-18 18:12:04 UTC (rev 211) @@ -36,7 +36,7 @@ background:#fff url('/bow/img/fondhead.jpg') repeat-x 0 0; float:left; position:absolute; - right:77%; + right:85%; top:0; height:100px; width:100%; @@ -488,4 +488,8 @@ #bookmarkForm label{ margin-top:12px; font-style:normal; +} + +#add h2{ + margin-bottom:20px; } \ No newline at end of file Modified: trunk/src/main/webapp/css/connexion.css =================================================================== --- trunk/src/main/webapp/css/connexion.css 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/webapp/css/connexion.css 2011-02-18 18:12:04 UTC (rev 211) @@ -30,15 +30,17 @@ height:100px; clear:both; margin:0 auto; - position: relative; + position:absolute; } #header a.logo{ - background:url(/bow/img/logobow.jpg); - width:290px; - height:100px; - text-indent:-99999px; - display:block; + background:transparent url('/bow/img/logobow.jpg') repeat scroll 0 0; + display:block; + height:100px; + text-indent:-99999px; + width:290px; + float:left; + position:relative; } #main{ @@ -62,7 +64,7 @@ width:1004px; position:relative; margin:0 auto; - padding-top:20px; + padding-top:120px; } #formFrame{ Modified: trunk/src/main/webapp/css/global.css =================================================================== --- trunk/src/main/webapp/css/global.css 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/webapp/css/global.css 2011-02-18 18:12:04 UTC (rev 211) @@ -113,4 +113,22 @@ font-weight:normal; font-size:12px; color:red; +} + +#actionmessageHeader{ + color:blue; + position:relative; + left:25%; + top:12px; +} + +#actionerrorHeader{ + color:red; + position:relative; + left:25%; + top:12px; +} + +#actionmessageHeader ul, #actionerrorHeader ul{ + list-style-type:none; } \ No newline at end of file Modified: trunk/src/main/webapp/jsp/inc/header.jsp =================================================================== --- trunk/src/main/webapp/jsp/inc/header.jsp 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/webapp/jsp/inc/header.jsp 2011-02-18 18:12:04 UTC (rev 211) @@ -27,10 +27,15 @@ xmlns:s="http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" xmlns:jsp="http://java.sun.com/JSP/Page"> <s:if test="%{#session.BowSession.user != null}"> - <a class="logo" - href="<s:property value='%{#session.bowUrl}' />home.action?token=<s:property value='%{#session.BowSession.getPermanentToken()}' />">bow</a> + <a class="logo" href="home.action?token=<s:property value='%{#session.BowSession.getPermanentToken()}' />">bow</a> </s:if> <s:else> - <a class="logo" href="">bow</a> + <a class="logo" href="home.action">bow</a> </s:else> + <span id="actionmessageHeader"> + <s:actionmessage /> + </span> + <span id="actionerrorHeader"> + <s:actionerror /> + </span> </div> \ No newline at end of file Modified: trunk/src/main/webapp/jsp/inc/rightMenu.jsp =================================================================== --- trunk/src/main/webapp/jsp/inc/rightMenu.jsp 2011-02-18 10:40:36 UTC (rev 210) +++ trunk/src/main/webapp/jsp/inc/rightMenu.jsp 2011-02-18 18:12:04 UTC (rev 211) @@ -71,7 +71,7 @@ </div> <div id="add" class="clearfix"> <h2><s:text name="bow.rightMenu.bookmark.addModify" /></h2> - <s:form var="bookmarkForm" action="%{#request.formAction}"> + <s:form id="bookmarkForm" action="%{#request.formAction}"> <p> <s:textfield key="bow.rightMenu.bookmark.link" name="link" value="%{#request.link}" labelSeparator="" /><br /> <s:textfield key="bow.rightMenu.bookmark.alias" name="alias" value="%{#request.alias}" labelSeparator="" /><br />
participants (1)
-
vbriand@users.chorem.org