This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository bow. See http://git.chorem.org/bow.git commit 05c45bda690e5f59593dfba0d18fde5885046779 Author: Benjamin POUSSIN <poussin@codelutin.com> Date: Mon Jul 20 12:43:40 2015 +0200 add support for speudo bookmarks title (first work of descriotion) --- .../src/main/java/org/chorem/bow/BookmarkUtils.java | 19 ++++++++++++++++++- .../main/java/org/chorem/bow/action/AtomAction.java | 4 ---- .../java/org/chorem/bow/action/BowBaseAction.java | 10 ++++++++++ bow-ui/src/main/webapp/WEB-INF/jsp/atom.jsp | 2 +- 4 files changed, 29 insertions(+), 6 deletions(-) diff --git a/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java b/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java index c5ad503..963a53c 100644 --- a/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java +++ b/bow-ui/src/main/java/org/chorem/bow/BookmarkUtils.java @@ -45,7 +45,6 @@ import org.jsoup.nodes.Document; import org.nuiton.wikitty.entities.Element; import org.nuiton.wikitty.query.WikittyQuery; import org.nuiton.wikitty.query.WikittyQueryMaker; -import org.nuiton.wikitty.query.WikittyQueryResult; import org.nuiton.wikitty.services.WikittyServiceAuthorisation; public class BookmarkUtils { @@ -54,6 +53,24 @@ public class BookmarkUtils { public static Log log = LogFactory.getLog(BookmarkUtils.class); /** + * Title is first sentence of description, or link if no description + * @param b + * @param max maximum length of title, 0 == no limit + * @return + */ + public static String getTitle(BowBookmark b, int max) { + String result = StringUtils.substringBefore(b.getDescription(), "."); + if (StringUtils.isBlank(result)) { + result = b.getLink(); + } + if (max > 0) { + result = StringUtils.substring(result, 0, max); + result = StringUtils.substringBeforeLast(result, " ") + "..."; + } + return result; + } + + /** * Ajoute a la recherche tout ce qui est necessaire pour connaitre * toutes les informations que l'utilisateur peut voir, meme s'il n'est * pas le createur de ce bookmark diff --git a/bow-ui/src/main/java/org/chorem/bow/action/AtomAction.java b/bow-ui/src/main/java/org/chorem/bow/action/AtomAction.java index fcfd311..adadeb5 100644 --- a/bow-ui/src/main/java/org/chorem/bow/action/AtomAction.java +++ b/bow-ui/src/main/java/org/chorem/bow/action/AtomAction.java @@ -22,18 +22,14 @@ package org.chorem.bow.action; import java.util.Date; import java.util.List; -import org.apache.commons.lang3.StringUtils; -import org.apache.commons.lang3.time.DateFormatUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.bow.BookmarkUtils; import org.chorem.bow.BowBookmark; import org.chorem.bow.BowProxy; -import org.chorem.bow.BowSearchResult; import org.chorem.bow.BowSession; import org.chorem.bow.BowUser; import org.nuiton.wikitty.query.WikittyQuery; -import org.nuiton.wikitty.query.WikittyQueryMaker; import org.nuiton.wikitty.query.WikittyQueryResult; /** diff --git a/bow-ui/src/main/java/org/chorem/bow/action/BowBaseAction.java b/bow-ui/src/main/java/org/chorem/bow/action/BowBaseAction.java index f15856c..daae7b9 100644 --- a/bow-ui/src/main/java/org/chorem/bow/action/BowBaseAction.java +++ b/bow-ui/src/main/java/org/chorem/bow/action/BowBaseAction.java @@ -31,6 +31,7 @@ import org.nuiton.web.struts2.BaseAction; import java.util.Arrays; import java.util.List; import java.util.Map; +import org.chorem.bow.BookmarkUtils; /** * Base class which must be extended by every action @@ -62,6 +63,8 @@ public class BowBaseAction extends BaseAction implements SessionAware { /** Configuration, default null for lazy loading */ protected transient BowConfig config; + protected transient BookmarkUtils bookmarkUtils; + /** des identifiants de bookmark a recherche explicitemnet */ protected List<String> listId; @@ -98,6 +101,13 @@ public class BowBaseAction extends BaseAction implements SessionAware { return result; } + public BookmarkUtils getBookmarkUtils() { + if (bookmarkUtils == null) { + bookmarkUtils = new BookmarkUtils(); + } + return bookmarkUtils; + } + @Override public void setSession(Map<String, Object> session) { this.session = session; diff --git a/bow-ui/src/main/webapp/WEB-INF/jsp/atom.jsp b/bow-ui/src/main/webapp/WEB-INF/jsp/atom.jsp index b3e6f4b..1af7aed 100644 --- a/bow-ui/src/main/webapp/WEB-INF/jsp/atom.jsp +++ b/bow-ui/src/main/webapp/WEB-INF/jsp/atom.jsp @@ -56,7 +56,7 @@ <s:iterator value="bookmarks" var="bookmark"> <s:set name="bookmark" value="bookmark"/> <entry> - <title>${bookmark.link}</title> + <title>${bookmarkUtils.getTitle(bookmark, 100)}</title> <s:url var="bookmarkUrl" action="home" escapeAmp="true"> <s:param name="token" value="%{bowSession.permanentToken}" /> <s:param name="listId" value="%{#bookmark.wikittyId}" /> -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.