Vradi-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
- 198 discussions
r88 - in trunk: vradi-services/src/main/java/org/chorem/vradi/services/managers vradi-web/src/main/java/org/chorem/vradi/actions vradi-web/src/main/resources vradi-web/src/main/webapp/WEB-INF/jsp vradi-web/src/main/webapp/css
by sletellier@users.chorem.org 21 Jun '11
by sletellier@users.chorem.org 21 Jun '11
21 Jun '11
Author: sletellier
Date: 2011-06-21 17:07:33 +0200 (Tue, 21 Jun 2011)
New Revision: 88
Url: http://chorem.org/repositories/revision/vradi/88
Log:
Use Jquery for build fully dinamical search page
Added:
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SavedQueriesAction.java
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/searchPanel.jsp
Removed:
trunk/vradi-web/src/main/webapp/css/global.css
Modified:
trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/ClientManager.java
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java
trunk/vradi-web/src/main/resources/struts.xml
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
trunk/vradi-web/src/main/webapp/css/search.css
Modified: trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/ClientManager.java
===================================================================
--- trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/ClientManager.java 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/ClientManager.java 2011-06-21 15:07:33 UTC (rev 88)
@@ -530,7 +530,7 @@
if (queriesIds != null) {
Set<Query> queries = wikittyProxy.restore(Query.class, queriesIds);
for (Query query : queries) {
- if (query.getName().equalsIgnoreCase(queryName)) {
+ if (queryName.equalsIgnoreCase(query.getName())) {
return query;
}
}
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java 2011-06-21 15:07:33 UTC (rev 88)
@@ -143,7 +143,8 @@
public String execute() {
// Build search
- QueryParameters queryParameters = new QueryParameters(getQuery());
+ String query = getQuery();
+ QueryParameters queryParameters = new QueryParameters(query);
// Do search
FormPagedResult result = new FormPagedResult();
Added: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SavedQueriesAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SavedQueriesAction.java (rev 0)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SavedQueriesAction.java 2011-06-21 15:07:33 UTC (rev 88)
@@ -0,0 +1,61 @@
+package org.chorem.vradi.actions;
+
+import com.opensymphony.xwork2.ActionContext;
+import org.apache.struts2.interceptor.ServletRequestAware;
+import org.chorem.vradi.entities.Query;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * Action to display struts2-jquery grid
+ *
+ * @author sletellier
+ */
+public class SavedQueriesAction extends VradiBaseAction implements ServletRequestAware {
+
+ static public SavedQueriesAction getAction() {
+ return (SavedQueriesAction) ActionContext.getContext().get(CONTEXT_ACTION_KEY);
+ }
+
+ protected HttpServletRequest request;
+
+ protected List<Query> lastQueries;
+
+ @Override
+ public void setServletRequest(HttpServletRequest request) {
+ this.request = request;
+ }
+
+ public List<Query> getLastQueries() {
+ if (lastQueries == null || lastQueries.isEmpty()) {
+ lastQueries = Collections.EMPTY_LIST;
+ }
+ return lastQueries;
+ }
+
+ public void setLastQueries(List<Query> lastQueries) {
+ this.lastQueries = lastQueries;
+ }
+
+ public String getJSON() {
+ return execute();
+ }
+
+ /**
+ * Initializes everything before displaying the home page
+ */
+ public String execute() {
+
+ // Retrieve last requests
+ Set<String> queriesId = getUser().getQueries();
+ if (queriesId != null) {
+ this.lastQueries = getProxy().restore(Query.class, new ArrayList<String>(queriesId));
+ }
+
+ return SUCCESS;
+ }
+}
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java 2011-06-21 15:07:33 UTC (rev 88)
@@ -1,15 +1,12 @@
package org.chorem.vradi.actions;
import com.opensymphony.xwork2.ActionContext;
+import org.apache.commons.lang.StringUtils;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.chorem.vradi.entities.Query;
import org.chorem.vradi.entities.VradiUser;
import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
/**
* Search action
@@ -30,9 +27,26 @@
protected String query;
protected String queryName;
protected HttpServletRequest request;
- protected List<Query> lastQueries;
+ protected String selectedQuery;
protected boolean queryActive;
+ protected boolean saveQuery;
+ public boolean isSaveQuery() {
+ return saveQuery;
+ }
+
+ public void setSaveQuery(boolean saveQuery) {
+ this.saveQuery = saveQuery;
+ }
+
+ public String getSelectedQuery() {
+ return selectedQuery;
+ }
+
+ public void setSelectedQuery(String selectedQuery) {
+ this.selectedQuery = selectedQuery;
+ }
+
public int getNbForms() {
return nbForms;
}
@@ -61,13 +75,6 @@
return queryActive;
}
- public List<Query> getLastQueries() {
- if (lastQueries == null || lastQueries.isEmpty()) {
- lastQueries = Collections.EMPTY_LIST;
- }
- return lastQueries;
- }
-
@Override
public void setServletRequest(HttpServletRequest request) {
this.request = request;
@@ -77,29 +84,37 @@
* Initializes everything before displaying the home page
*/
public String execute() {
+ return SUCCESS;
+ }
- VradiUser user = getUser();
+ public String refreshForm() {
+ if (!StringUtils.isEmpty(selectedQuery)) {
- // Check if request is active / inactive
- this.queryActive = getVradiSession().getDataService().checkRequestIsActive(user, queryName);
+ Query query = getProxy().restore(Query.class, selectedQuery);
+ setQueryName(query.getName());
+ setQuery(query.getContent());
- // Retrieve last requests
- Set<String> queriesId = user.getQueries();
- if (queriesId != null) {
- this.lastQueries = getProxy().restore(Query.class, new ArrayList<String>(queriesId));
+ VradiUser user = getUser();
+
+ // Check if request is active / inactive
+ this.queryActive = getVradiSession().getDataService().checkRequestIsActive(user, queryName);
+ } else {
+ setQuery(StringUtils.EMPTY);
+ setQueryName(StringUtils.EMPTY);
+ this.queryActive = false;
}
-
return SUCCESS;
}
public String saveQuery() {
- VradiUser user = getUser();
+ if (!StringUtils.isEmpty(queryName) && !StringUtils.isEmpty(query)) {
+ VradiUser user = getUser();
- user = getVradiSession().getDataService().saveQuery(user, queryName, query);
+ user = getVradiSession().getDataService().saveQuery(user, queryName, query);
- setUser(user);
-
+ setUser(user);
+ }
return SUCCESS;
}
Modified: trunk/vradi-web/src/main/resources/struts.xml
===================================================================
--- trunk/vradi-web/src/main/resources/struts.xml 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/resources/struts.xml 2011-06-21 15:07:33 UTC (rev 88)
@@ -108,15 +108,6 @@
</action>
<!--
- | Search
- +-->
- <action name="saveQuery" method="saveQuery" class="org.chorem.vradi.actions.SearchAction">
- <param name="query"/>
- <param name="queryName"/>
- <result type="redirect">/fragment/savedQuery.action</result>
- </action>
-
- <!--
| Thesaurus
+-->
<action name="thesaurus" class="org.chorem.vradi.actions.ThesaurusAction">
@@ -135,6 +126,13 @@
</action>
<!--
+ | Form grid
+ +-->
+ <action name="savedQueries" class="org.chorem.vradi.actions.SavedQueriesAction">
+ <result name="success" type="json"/>
+ </action>
+
+ <!--
| Affiche le détail du formulaire
+-->
<action name="formView/*" class="org.chorem.vradi.actions.FormViewAction">
@@ -197,10 +195,33 @@
<result>/WEB-INF/jsp/thesaurusFilter.jsp</result>
</action>
<!--
+ | genere le formulaire de recherche
+ +-->
+ <action name="refreshForm" method="refreshForm" class="org.chorem.vradi.actions.SearchAction">
+ <result>/WEB-INF/jsp/empty.jsp</result>
+ </action>
+ <!--
+ | genere le formulaire de recherche
+ +-->
+ <action name="searchPanel" method="refreshForm" class="org.chorem.vradi.actions.SearchAction">
+ <result>/WEB-INF/jsp/searchPanel.jsp</result>
+ </action>
+ <!--
+ | Search
+ +-->
+ <action name="saveQuery" method="saveQuery" class="org.chorem.vradi.actions.SearchAction">
+ <!--<param name="query"/>-->
+ <!--<param name="queryName"/>-->
+ <result>/WEB-INF/jsp/empty.jsp</result>
+ </action>
+ <!--
| genere la grille des resultats
+-->
+ <!--
+ | genere la grille des resultats
+ +-->
<action name="search" class="org.chorem.vradi.actions.SearchAction">
- <result>/WEB-INF/jsp/resultGrid.jsp</result>
+ <result>/WEB-INF/jsp/resultGrid.jsp</result>
</action>
<!--
| genere le bouton d'activation des queries
@@ -221,7 +242,7 @@
<!--
| Save query
+-->
- <action name="savedQuery" class="org.chorem.vradi.actions.SearchAction">
+ <action name="savedQuery" class="org.chorem.vradi.actions.SavedQueriesAction">
<result>/WEB-INF/jsp/savedQueries.jsp</result>
</action>
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp 2011-06-21 15:07:33 UTC (rev 88)
@@ -5,7 +5,6 @@
--%>
<%@page import="com.opensymphony.xwork2.ActionContext"%>
-<%@page import="org.chorem.vradi.entities.Attachment"%>
<%@page import="org.chorem.vradi.entities.FormNote"%>
<%@page import="org.chorem.vradi.actions.FormNoteAction"%>
@@ -80,10 +79,12 @@
collapsible="true" useSelectedTabCookie="true">
<sj:tab id="tabHtmlSummary" target="htmlSummary" label="Summary"/>
<sj:tab id="tabHtmlSummaryEdit" target="htmlSummaryEdit" label="Edit"/>
- <div id="htmlSummary">
+ <sj:div id="htmlSummary"
+ href="/ajax/rst.action?id=%{localNoteId}&field=%{localFieldSummary}"
+ listenTopics="topicHtmlSummary">
<img id="indicator-htmlSummary" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
<%=action.getSummary()%>
- </div>
+ </sj:div>
<div id="htmlSummaryEdit">
<form id="htmlSummaryEditForm" action="/ajax/rst.action">
<s:hidden name="id" value="%{localNoteId}"/>
@@ -91,7 +92,8 @@
<s:textarea name="rst" value="%{localSummary}"/>
<sj:submit id="htmlSummaryEditSubmit"
value="Save"
- targets="htmlSummary" indicator="indicator-htmlSummary"
+ targets="result"
+ onClickTopics="topicHtmlSummary" indicator="indicator-htmlSummary"
button="true" buttonIcon="ui-icon-gear"/>
</form>
</div>
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp 2011-06-21 15:07:33 UTC (rev 88)
@@ -1,20 +1,33 @@
-<%@ page import="org.chorem.vradi.actions.SearchAction" %>
<%@ page import="com.opensymphony.xwork2.ActionContext" %>
<%@ page import="org.chorem.vradi.entities.Query" %>
<%@ page import="java.util.List" %>
+<%@ page import="org.chorem.vradi.actions.SavedQueriesAction" %>
<%@taglib prefix="s" uri="/struts-tags"%>
<%@taglib prefix="sj" uri="/struts-jquery-tags" %>
<%
-SearchAction action = SearchAction.getAction();
+SavedQueriesAction action = SavedQueriesAction.getAction();
List<Query> lastQueries = action.getLastQueries();
ActionContext.getContext().put("lastQueries", lastQueries);
%>
-<s:select id="lastQueries"
- name="lastQueries"
- listKey="content"
- listValue="name"
- list="lastQueries"
- emptyOption="true"
- onchange="form.elements['query'].innerHTML = this.options[this.selectedIndex].value"/>
\ No newline at end of file
+<form id="queryForm" action="/fragment/searchPanel.action">
+
+ <s:url id="savedQueries" action="savedQueries"/>
+
+ <sj:select id="lastQueriesSelect"
+ href="%{savedQueries}"
+ name="selectedQuery"
+ listKey="wikittyId"
+ listValue="name"
+ list="lastQueries"
+ emptyOption="true"
+ onChangeTopics="doUpdateForm"/>
+
+ <%--onSuccessTopics="updateForm"--%>
+ <sj:submit id="doUpdateFormSubmit"
+ cssClass="hidden"
+ listenTopics="doUpdateForm"
+ targets="searchPanel"
+ button="true"/>
+</form>
\ No newline at end of file
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-21 15:07:33 UTC (rev 88)
@@ -1,7 +1,3 @@
-<%@page import="org.chorem.vradi.entities.Infogene"%>
-<%@page import="org.chorem.vradi.entities.Form" %>
-<%@ page import="org.chorem.vradi.actions.SearchAction" %>
-<%@ page import="com.opensymphony.xwork2.ActionContext" %>
<%@page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<%@taglib prefix="sj" uri="/struts-jquery-tags" %>
@@ -44,6 +40,7 @@
}
$('#searchArea')[0].value += finalName.trim();
});
+
</script>
</head>
<body>
@@ -72,60 +69,22 @@
</sj:div>
</div>
- <div id="contentPanel">
- <div id="searchPanel">
- <form id="searchForm" action="/fragment/search.action">
- <div id="queriesPanel">
- <sj:div id="savedQueriesPanel"
- cssClass="left"
- href="/fragment/savedQuery.action"
- indicator="indicator-savedQuery">
- <img id="indicator-savedQuery" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
- </sj:div>
+ <div id="contentPanel"
+ class="queriesPanel">
+ <sj:div id="savedQueriesPanel"
+ href="/fragment/savedQuery.action"
+ listenTopics="updateQueries"
+ indicator="indicator-savedQuery">
+ <img id="indicator-savedQuery" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
- <s:text name="vradi.search.queryName"/>
- <s:textfield id="queryName"
- cssClass="right"
- theme="simple"
- name="queryName"
- size="40"/>
- </div>
- <div id="queryPanel">
- <s:textarea id="searchArea"
- name="query"
- cols="160"
- rows="6"/>
- </div>
- <div id="searchActionPanel">
-
- <s:url id="saveQueryUrl" action="saveQuery"/>
-
- <s:set id="searchText">
- <s:text name="vradi.search.saveQuery"/>
- </s:set>
- <sj:submit id="saveQuery"
- href="%{saveQueryUrl}"
- value="%{#searchText}"
- indicator="indicator-savedQuery"
- targets="savedQueriesPanel"
- button="true"/>
-
- <sj:div id="activeQueryPanel" href="/fragment/activeQuery.action" indicator="indicator-activeQuery">
- <img id="indicator-activeQuery" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
- </sj:div>
- <s:set id="searchText">
- <s:text name="vradi.search.submit"/>
- </s:set>
-
- <sj:submit id="search"
- value="%{#searchText}"
- indicator="indicator-grid"
- targets="resultPanel"
- button="true"/>
- </div>
- </form>
- </div>
+ <sj:div id="searchPanel"
+ href="/fragment/searchPanel.action"
+ listenTopics="updateForm"
+ indicator="indicator-searchPanel">
+ <img id="indicator-searchPanel" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
<sj:div id="resultPanel" href="/fragment/search.action" indicator="indicator-grid">
<img id="indicator-grid" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
</sj:div>
Added: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/searchPanel.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/searchPanel.jsp (rev 0)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/searchPanel.jsp 2011-06-21 15:07:33 UTC (rev 88)
@@ -0,0 +1,62 @@
+<%@ page import="org.chorem.vradi.actions.SearchAction" %>
+<%@ page import="com.opensymphony.xwork2.ActionContext" %>
+<%@page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
+<%@taglib prefix="s" uri="/struts-tags"%>
+<%@taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<%
+SearchAction action = SearchAction.getAction();
+String query = action.getQuery();
+String queryName = action.getQueryName();
+ActionContext.getContext().put("query", query);
+ActionContext.getContext().put("queryName", queryName);
+%>
+
+<s:form id="searchForm" action="search">
+ <div id="empty">
+ </div>
+
+ <div id="queryNamePanel" class="queryPanel">
+ <s:text name="vradi.search.queryName"/>
+ <s:textfield id="queryName"
+ cssClass="right"
+ theme="simple"
+ name="queryName"
+ size="40"/>
+ </div>
+ <div id="queryPanel" class="queryPanel">
+ <s:textarea id="searchArea"
+ name="query"
+ cols="160"
+ rows="6"/>
+ </div>
+ <div id="searchActionPanel">
+
+ <s:url id="saveQueryUrl" value="/fragment/saveQuery.action"/>
+
+ <s:set id="saveQueryText">
+ <s:text name="vradi.search.saveQuery"/>
+ </s:set>
+ <sj:submit id="saveQuery"
+ href="%{saveQueryUrl}"
+ value="%{saveQueryText}"
+ targets="empty"
+ onCompleteTopics="updateQueries"
+ button="true"/>
+
+ <sj:div id="activeQueryPanel" href="/fragment/activeQuery.action" indicator="indicator-activeQuery">
+ <img id="indicator-activeQuery" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
+
+ <s:set id="searchText">
+ <s:text name="vradi.search.submit"/>
+ </s:set>
+
+ <sj:submit id="search"
+ value="%{searchText}"
+ indicator="indicator-grid"
+ targets="resultPanel"
+ button="true"/>
+
+ </div>
+</s:form>
\ No newline at end of file
Modified: trunk/vradi-web/src/main/webapp/css/search.css
===================================================================
--- trunk/vradi-web/src/main/webapp/css/search.css 2011-06-15 12:46:25 UTC (rev 87)
+++ trunk/vradi-web/src/main/webapp/css/search.css 2011-06-21 15:07:33 UTC (rev 88)
@@ -1,19 +1,26 @@
/* Layout */
div.left{
- /*width: 20%;*/
float:left;
}
+#doUpdateFormSubmit {
+ display: none;
+}
+
+.ui-pg-table {
+ font-size: 11px;
+}
+
.right{
float:right;
}
-.left{
+.left {
float:left;
}
-.button{
+.button {
margin-top:20px;
height:31px;
line-height:31px;
@@ -23,10 +30,34 @@
padding:2px;
}
-#queriesPanel {
- width: 70%;
+#thesaurusPanel {
+ width: 20%;
}
+#wrap {
+ height: 100%;
+}
+
+#savedQueriesPanel {
+ float:left;
+ height: 10px;
+}
+
+.queriesPanel {
+ width: 80%;
+ float:right;
+}
+
+#queryNamePanel {
+ text-align: right;
+ width: 62%;
+}
+
+.queryPanel {
+ width: 77%;
+ float:left;
+}
+
#thesaurusForm {
height: 5%;
}
@@ -35,20 +66,10 @@
float:right;
}
-#searchPanel {
+#searchForm {
height: 150px;
}
-#contentPanel {
- padding-right: 20%;
- padding-left: 20%;
-}
-
-#queryPanel {
- float:left;
- width: 70%;
-}
-
textarea {
width: 100%;
}
1
0
r87 - in trunk: . vradi-services/src/main/java/org/chorem/vradi/services/managers vradi-web vradi-web/src/main/i18n vradi-web/src/main/java/org/chorem/vradi vradi-web/src/main/java/org/chorem/vradi/actions vradi-web/src/main/resources vradi-web/src/main/webapp vradi-web/src/main/webapp/WEB-INF/jsp vradi-web/src/main/webapp/css
by sletellier@users.chorem.org 15 Jun '11
by sletellier@users.chorem.org 15 Jun '11
15 Jun '11
Author: sletellier
Date: 2011-06-15 14:46:25 +0200 (Wed, 15 Jun 2011)
New Revision: 87
Url: http://chorem.org/repositories/revision/vradi/87
Log:
Use struts2-jquery grids'plugins
Added:
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/activeQuery.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/resultGrid.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/thesaurusFilter.jsp
Removed:
trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java
trunk/vradi-web/src/main/java/org/chorem/vradi/decorators/
Modified:
trunk/pom.xml
trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java
trunk/vradi-web/pom.xml
trunk/vradi-web/src/main/i18n/jsp.rules
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java
trunk/vradi-web/src/main/resources/struts.xml
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
trunk/vradi-web/src/main/webapp/css/search.css
trunk/vradi-web/src/main/webapp/index.jsp
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/pom.xml 2011-06-15 12:46:25 UTC (rev 87)
@@ -472,20 +472,7 @@
<version>${struts2Version}</version>
</dependency>
- <!-- Displaytag -->
<dependency>
- <groupId>displaytag</groupId>
- <artifactId>displaytag</artifactId>
- <version>1.2</version>
- <exclusions>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>jcl104-over-slf4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
<groupId>javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.12.1.GA</version>
Modified: trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java
===================================================================
--- trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java 2011-06-15 12:46:25 UTC (rev 87)
@@ -165,7 +165,7 @@
criteria.addSortAscending(formPagedResult.getFieldToSort());
}
}
- criteria.addSortAscending(Form.FQ_FIELD_INFOGENE_ID);
+// criteria.addSortAscending(Form.FQ_FIELD_INFOGENE_ID);
log.info(criteria);
Modified: trunk/vradi-web/pom.xml
===================================================================
--- trunk/vradi-web/pom.xml 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/pom.xml 2011-06-15 12:46:25 UTC (rev 87)
@@ -129,14 +129,7 @@
<scope>runtime</scope>
</dependency>
- <!-- Displaytag -->
<dependency>
- <groupId>displaytag</groupId>
- <artifactId>displaytag</artifactId>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
<groupId>javassist</groupId>
<artifactId>javassist</artifactId>
<scope>runtime</scope>
@@ -264,7 +257,6 @@
<s>http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd</s>
<sx>http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd</sx>
<sj>http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd</sj>
- <displaytag>http://displaytag.sourceforge.net/1.2/#displaytag.tld</displaytag>
<jsp>http://java.sun.com/JSP/Page</jsp>
<decorator>
http://www.opensymphony.com/sitemesh/decorator
Modified: trunk/vradi-web/src/main/i18n/jsp.rules
===================================================================
--- trunk/vradi-web/src/main/i18n/jsp.rules 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/i18n/jsp.rules 2011-06-15 12:46:25 UTC (rev 87)
@@ -11,6 +11,3 @@
//s:select/@key
//sx:datetimepicker/@key
-
-//displaytag:column/@title
-//displaytag:column/@titleKey
Deleted: trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,132 +0,0 @@
-package org.chorem.vradi;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.chorem.vradi.beans.FormPagedResult;
-import org.chorem.vradi.entities.Form;
-import org.chorem.vradi.entities.Infogene;
-import org.displaytag.pagination.PaginatedList;
-import org.displaytag.properties.SortOrderEnum;
-import org.nuiton.wikitty.WikittyProxy;
-
-import javax.servlet.http.HttpServletRequest;
-import java.util.List;
-
-/**
- * @author sletellier
- */
-public class FormPaginatedList implements PaginatedList {
-
- protected static final Log log = LogFactory.getLog(FormPaginatedList.class);
-
- public static final String DISPLAY_URL_PAGE = "page";
- public static final String DISPLAY_URL_SORT = "sort";
- public static final String DISPLAY_URL_DIR = "dir";
-
- protected FormPagedResult result;
- protected WikittyProxy proxy;
-
- public FormPaginatedList(WikittyProxy proxy, int nbForms) {
- this.proxy = proxy;
- result = new FormPagedResult();
- result.setNbFormsToShow(nbForms);
- result.setPageToShow(1);
-
- // Sort by default by fate descending
- result.setAscending(false);
- result.setFieldToSort(Infogene.FIELD_INFOGENE_CREATIONDATE);
- }
-
- public FormPagedResult getResult() {
- return result;
- }
-
- public void setResult(FormPagedResult result) {
- this.result = result;
- }
-
- @Override
- public List<Form> getList() {
- List<String> formsIdsToShow = result.getFormsIdsToShow();
-
- return proxy.restore(Form.class, formsIdsToShow);
- }
-
- @Override
- public int getPageNumber() {
- return result.getPageToShow();
- }
-
- @Override
- public int getObjectsPerPage() {
- return result.getNbFormsToShow();
- }
-
- @Override
- public int getFullListSize() {
- return result.getTotalFoundFormNb();
- }
-
- @Override
- public String getSortCriterion() {
- return result.getFieldToSort();
- }
-
- @Override
- public SortOrderEnum getSortDirection() {
- if (result.isAscending()) {
- return SortOrderEnum.ASCENDING;
- } else {
- return SortOrderEnum.DESCENDING;
- }
- }
-
- @Override
- public String getSearchId() {
-
- // Not used
- return null;
- }
-
- /**
- * Recupere les parametres depuis une requete de servlet.
- *
- * @param request la requete utilisee pour recuperee les valeur du POJO
- * @return l'instance
- */
- public FormPaginatedList fromRequest(HttpServletRequest request) {
-
- // Number of forms by pages
- String page = request.getParameter(DISPLAY_URL_PAGE);
- if (page != null && !page.trim().isEmpty()) {
- Integer pageNumber = Integer.valueOf(page);
- if (log.isDebugEnabled()) {
- log.debug("change pageNumber : " + pageNumber);
- }
- result.setPageToShow(pageNumber);
- }
-
- // Search field criteria
- String criterion = request.getParameter(DISPLAY_URL_SORT);
- if (criterion != null && !criterion.trim().isEmpty()) {
- if (log.isDebugEnabled()) {
- log.debug("change sortCriterion : " + criterion);
- }
- result.setFieldToSort(criterion);
- }
-
- // attention, on supose ici qu'on a defini les variables suivantes dans displaytag.properties :
- // pagination.sort.asc.value=ascending
- // pagination.sort.desc.value=descending
- String direction = request.getParameter(DISPLAY_URL_DIR);
- if (direction != null && !direction.trim().isEmpty()) {
- SortOrderEnum orderEnum = SortOrderEnum.fromName(direction);
- if (log.isDebugEnabled()) {
- log.debug("change sortDirection : " + orderEnum);
- }
- boolean ascending = orderEnum.equals(SortOrderEnum.ASCENDING);
- result.setAscending(ascending);
- }
- return this;
- }
-}
Added: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java (rev 0)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormGridAction.java 2011-06-15 12:46:25 UTC (rev 87)
@@ -0,0 +1,173 @@
+package org.chorem.vradi.actions;
+
+import org.apache.struts2.interceptor.ServletRequestAware;
+import org.chorem.vradi.beans.FormPagedResult;
+import org.chorem.vradi.beans.QueryParameters;
+import org.chorem.vradi.entities.Form;
+import org.chorem.vradi.services.VradiException;
+import org.chorem.vradi.services.search.UnsupportedQueryException;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+
+/**
+ * Action to display struts2-jquery grid
+ *
+ * @author sletellier
+ */
+public class FormGridAction extends VradiBaseAction implements ServletRequestAware {
+
+ protected HttpServletRequest request;
+ //Your result List
+ protected List<Form> gridModel;
+ //get how many rows we want to have into the grid - rowNum attribute in the grid
+ protected Integer rows = 0;
+ //Get the requested page. By default grid sets this to 1.
+ protected Integer page = 0;
+ // sorting order - asc or desc
+ protected String sord;
+ // get index row - i.e. user click to sort.
+ protected String sidx;
+ // Search Field
+ protected String searchField;
+ // The Search String
+ protected String searchString;
+ // he Search Operation ['eq','ne','lt','le','gt','ge','bw','bn','in','ni','ew','en','cn','nc']
+ protected String searchOper;
+ // Your Total Pages
+ protected Integer total = 0;
+ // All Record
+ protected Integer records = 0;
+ protected String query;
+
+ @Override
+ public void setServletRequest(HttpServletRequest request) {
+ this.request = request;
+ }
+
+ public List<Form> getGridModel() {
+ return gridModel;
+ }
+
+ public void setGridModel(List<Form> gridModel) {
+ this.gridModel = gridModel;
+ }
+
+ public Integer getRows() {
+ return rows;
+ }
+
+ public void setRows(Integer rows) {
+ this.rows = rows;
+ }
+
+ public Integer getPage() {
+ return page;
+ }
+
+ public void setPage(Integer page) {
+ this.page = page;
+ }
+
+ public String getSord() {
+ return sord;
+ }
+
+ public void setSord(String sord) {
+ this.sord = sord;
+ }
+
+ public String getSidx() {
+ return sidx;
+ }
+
+ public void setSidx(String sidx) {
+ this.sidx = sidx;
+ }
+
+ public String getSearchField() {
+ return searchField;
+ }
+
+ public void setSearchField(String searchField) {
+ this.searchField = searchField;
+ }
+
+ public String getSearchString() {
+ return searchString;
+ }
+
+ public void setSearchString(String searchString) {
+ this.searchString = searchString;
+ }
+
+ public String getSearchOper() {
+ return searchOper;
+ }
+
+ public void setSearchOper(String searchOper) {
+ this.searchOper = searchOper;
+ }
+
+ public Integer getTotal() {
+ return total;
+ }
+
+ public void setTotal(Integer total) {
+ this.total = total;
+ }
+
+ public Integer getRecords() {
+ return records;
+ }
+
+ public void setRecords(Integer records) {
+ this.records = records;
+ }
+
+ public String getQuery() {
+ return query;
+ }
+
+ public void setQuery(String query) {
+ this.query = query;
+ }
+
+ public String getJSON() {
+ return execute();
+ }
+
+ /**
+ * Initializes everything before displaying the home page
+ */
+ public String execute() {
+
+ // Build search
+ QueryParameters queryParameters = new QueryParameters(getQuery());
+
+ // Do search
+ FormPagedResult result = new FormPagedResult();
+ result.setNbFormsToShow(getRows());
+ result.setPageToShow(getPage());
+ result.setAscending(getSord().equalsIgnoreCase("asc"));
+ result.setFieldToSort(getSidx());
+ try {
+
+ result = getDataService().findForms(queryParameters, result);
+ } catch (VradiException eee) {
+ log.error("Failed to execute query", eee);
+ } catch (UnsupportedQueryException eee) {
+ log.error("Unsuported query", eee);
+ }
+
+ List<String> formsIdsToShow = result.getFormsIdsToShow();
+ List<Form> forms = getProxy().restore(Form.class, formsIdsToShow);
+ setGridModel(forms);
+ setRecords(result.getTotalFoundFormNb());
+
+ //calculate the total pages for the query
+ setTotal((int) Math.ceil((double)getRecords() / (double)getRows()));
+
+ return SUCCESS;
+ }
+}
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,14 +1,9 @@
package org.chorem.vradi.actions;
-import org.apache.commons.lang.StringUtils;
+import com.opensymphony.xwork2.ActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
-import org.chorem.vradi.FormPaginatedList;
-import org.chorem.vradi.beans.FormPagedResult;
-import org.chorem.vradi.beans.QueryParameters;
import org.chorem.vradi.entities.Query;
import org.chorem.vradi.entities.VradiUser;
-import org.chorem.vradi.services.VradiException;
-import org.chorem.vradi.services.search.UnsupportedQueryException;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
@@ -24,10 +19,13 @@
public class SearchAction extends VradiBaseAction implements ServletRequestAware {
private static final long serialVersionUID = -3735250067223062719L;
- public static final String REQUEST_ATTRIBUTE_FORMS = "forms";
private static final int DEFAULT_NB_FORMS = 10;
+ static public SearchAction getAction() {
+ return (SearchAction) ActionContext.getContext().get(CONTEXT_ACTION_KEY);
+ }
+
protected int nbForms = DEFAULT_NB_FORMS;
protected String query;
protected String queryName;
@@ -35,10 +33,6 @@
protected List<Query> lastQueries;
protected boolean queryActive;
- // Name of submit
- protected String switchUserQueryActivation;
- protected String saveRequest;
-
public int getNbForms() {
return nbForms;
}
@@ -47,22 +41,6 @@
this.nbForms = nbForms;
}
- public String getSaveRequest() {
- return saveRequest;
- }
-
- public void setSaveRequest(String saveRequest) {
- this.saveRequest = saveRequest;
- }
-
- public String getSwitchUserQueryActivation() {
- return switchUserQueryActivation;
- }
-
- public void setSwitchUserQueryActivation(String switchUserQueryActivation) {
- this.switchUserQueryActivation = switchUserQueryActivation;
- }
-
public String getQueryName() {
return queryName;
}
@@ -100,53 +78,38 @@
*/
public String execute() {
- // Activate or not query for user, if it's the first one, user and client will
- // be created to add request. It will be automaticly added to email binding.
VradiUser user = getUser();
- boolean doSwithUserQueryActivation = !StringUtils.isEmpty(switchUserQueryActivation);
- if (doSwithUserQueryActivation) {
- queryActive = getVradiSession().getDataService().switchUserQueryActivation(user, queryName, query);
- }
- FormPaginatedList paginatedList = new FormPaginatedList(getProxy(), getNbForms());
- // Retrive paginatedList and fill by request params
- paginatedList.fromRequest(request);
+ // Check if request is active / inactive
+ this.queryActive = getVradiSession().getDataService().checkRequestIsActive(user, queryName);
- // Build search
- QueryParameters queryParameters = new QueryParameters(query);
-
- // Do search
- try {
- FormPagedResult result = paginatedList.getResult();
- FormPagedResult forms = getDataService().findForms(queryParameters, result);
- paginatedList.setResult(forms);
- } catch (VradiException eee) {
- log.error("Failed to execute query", eee);
- } catch (UnsupportedQueryException eee) {
- log.error("Unsuported query", eee);
+ // Retrieve last requests
+ Set<String> queriesId = user.getQueries();
+ if (queriesId != null) {
+ this.lastQueries = getProxy().restore(Query.class, new ArrayList<String>(queriesId));
}
- // Save request played
- if ((!StringUtils.isEmpty(saveRequest) ||
- doSwithUserQueryActivation) &&
- !StringUtils.isEmpty(queryName)) {
+ return SUCCESS;
+ }
- user = getVradiSession().getDataService().saveQuery(user, queryName, query);
+ public String saveQuery() {
- setUser(user);
+ VradiUser user = getUser();
- // Check if request is active / inactive
- this.queryActive = getVradiSession().getDataService().checkRequestIsActive(user, queryName);
- }
+ user = getVradiSession().getDataService().saveQuery(user, queryName, query);
- // Retrieve last requests
- Set<String> queriesId = user.getQueries();
- if (queriesId != null) {
- this.lastQueries = getProxy().restore(Query.class, new ArrayList<String>(queriesId));
- }
+ setUser(user);
- request.setAttribute(REQUEST_ATTRIBUTE_FORMS, paginatedList);
+ return SUCCESS;
+ }
+ public String switchQueryActivation() {
+ // Activate or not query for user, if it's the first one, user and client will
+ // be created to add request. It will be automaticly added to email binding.
+ VradiUser user = getUser();
+ queryActive = getVradiSession().getDataService().switchUserQueryActivation(user, queryName, query);
+
return SUCCESS;
}
+
}
\ No newline at end of file
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,6 +1,7 @@
package org.chorem.vradi.actions;
import com.jgeppert.struts2.jquery.tree.result.TreeNode;
+import com.opensymphony.xwork2.ActionContext;
import org.apache.commons.lang.StringUtils;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.chorem.vradi.entities.RootThesaurus;
@@ -23,6 +24,10 @@
private static final long serialVersionUID = -2886756982077980790L;
+ static public ThesaurusAction getAction() {
+ return (ThesaurusAction) ActionContext.getContext().get(CONTEXT_ACTION_KEY);
+ }
+
public static final String THESAURUS_NAME_REQUEST = "thesaurusNameRequest";
protected List<TreeNode> nodes = new ArrayList<TreeNode>();
@@ -33,16 +38,6 @@
public String execute() {
- if (id == null) {
- // Store in session to keep it
- request.getSession().setAttribute(THESAURUS_NAME_REQUEST, thesaurusNameRequest);
- return SUCCESS;
- }
- else {
- // Retrieve from session
- this.thesaurusNameRequest = (String)request.getSession().getAttribute(THESAURUS_NAME_REQUEST);
- }
-
if ("0".equals(id)) {
List<RootThesaurus> rootThesaurus;
try {
@@ -86,6 +81,11 @@
return SUCCESS;
}
+ public String filter() throws Exception {
+ log.info("Filter thesaurus with : " + getThesaurusNameRequest());
+ return "success";
+ }
+
@Override
public void setServletRequest(HttpServletRequest request) {
this.request = request;
Modified: trunk/vradi-web/src/main/resources/struts.xml
===================================================================
--- trunk/vradi-web/src/main/resources/struts.xml 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/resources/struts.xml 2011-06-15 12:46:25 UTC (rev 87)
@@ -73,7 +73,7 @@
<package name="login" extends="loginArea">
<action name="register_*" method="{1}" class="org.chorem.vradi.actions.RegisterAction">
<result name="input">/WEB-INF/jsp/register.jsp</result>
- <result type="redirectAction">search</result>
+ <result type="redirectAction">searchView</result>
</action>
<action name="forgotPassword_*" method="{1}" class="org.chorem.vradi.actions.ForgotPasswordAction">
<result name="input">/WEB-INF/jsp/forgotPassword.jsp</result>
@@ -97,21 +97,28 @@
| Change local
+-->
<action name="locale" class="org.chorem.vradi.actions.LocaleAction">
- <result type="redirect">search.action</result>
+ <result type="redirect">searchView.action</result>
</action>
<!--
| Search
+-->
- <action name="search" class="org.chorem.vradi.actions.SearchAction">
+ <action name="searchView" class="org.chorem.vradi.actions.SearchAction">
<result>/WEB-INF/jsp/search.jsp</result>
- <result name="input" type="redirectAction">search</result>
</action>
<!--
+ | Search
+ +-->
+ <action name="saveQuery" method="saveQuery" class="org.chorem.vradi.actions.SearchAction">
+ <param name="query"/>
+ <param name="queryName"/>
+ <result type="redirect">/fragment/savedQuery.action</result>
+ </action>
+
+ <!--
| Thesaurus
+-->
-
<action name="thesaurus" class="org.chorem.vradi.actions.ThesaurusAction">
<param name="thesaurusNameRequest"/>
<result name="success" type="json">
@@ -120,6 +127,14 @@
</action>
<!--
+ | Form grid
+ +-->
+ <action name="formGrid" class="org.chorem.vradi.actions.FormGridAction">
+ <param name="query"/>
+ <result name="success" type="json"/>
+ </action>
+
+ <!--
| Affiche le détail du formulaire
+-->
<action name="formView/*" class="org.chorem.vradi.actions.FormViewAction">
@@ -175,6 +190,41 @@
<action name="userInfo" class="org.chorem.vradi.actions.RestoreUserAction">
<result>/WEB-INF/jsp/userInfo.jsp</result>
</action>
+ <!--
+ | genere un thesaurus filtre
+ +-->
+ <action name="thesaurusFilter" class="org.chorem.vradi.actions.ThesaurusAction" method="filter">
+ <result>/WEB-INF/jsp/thesaurusFilter.jsp</result>
+ </action>
+ <!--
+ | genere la grille des resultats
+ +-->
+ <action name="search" class="org.chorem.vradi.actions.SearchAction">
+ <result>/WEB-INF/jsp/resultGrid.jsp</result>
+ </action>
+ <!--
+ | genere le bouton d'activation des queries
+ +-->
+ <action name="activeQuery" class="org.chorem.vradi.actions.SearchAction">
+ <result>/WEB-INF/jsp/activeQuery.jsp</result>
+ </action>
+
+ <!--
+ | Switch query activation
+ +-->
+ <action name="switchQueryActivation" method="switchQueryActivation" class="org.chorem.vradi.actions.SearchAction">
+ <param name="query"/>
+ <param name="queryName"/>
+ <result>/WEB-INF/jsp/activeQuery.jsp</result>
+ </action>
+
+ <!--
+ | Save query
+ +-->
+ <action name="savedQuery" class="org.chorem.vradi.actions.SearchAction">
+ <result>/WEB-INF/jsp/savedQueries.jsp</result>
+ </action>
+
</package>
<package name="ajax" namespace="/ajax" extends="restrictedArea">
Added: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/activeQuery.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/activeQuery.jsp (rev 0)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/activeQuery.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -0,0 +1,39 @@
+<%@ page import="org.chorem.vradi.actions.SearchAction" %>
+<%@ page import="com.opensymphony.xwork2.ActionContext" %>
+<%@taglib prefix="s" uri="/struts-tags"%>
+<%@taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<%
+SearchAction action = SearchAction.getAction();
+String query = action.getQuery();
+String queryName = action.getQueryName();
+boolean queryActive = action.isQueryActive();
+ActionContext.getContext().put("queryActive", queryActive);
+ActionContext.getContext().put("query", query);
+ActionContext.getContext().put("queryName", queryName);
+%>
+
+<s:url id="switchQueryUrl" action="switchQueryActivation">
+ <s:param name="query">
+ <s:property value="query"/>
+ </s:param>
+ <s:param name="queryName">
+ <s:property value="queryName"/>
+ </s:param>
+</s:url>
+
+<s:set id="queryActiveText">
+ <s:if test="queryActive">
+ <s:text name="vradi.search.unActivateQuery"/>
+ </s:if>
+ <s:else>
+ <s:text name="vradi.search.activateQuery"/>
+ </s:else>
+</s:set>
+
+<sj:submit id="swithActivateQuery"
+ href="%{switchQueryUrl}"
+ value="%{queryActiveText}"
+ indicator="indicator-activeQuery"
+ targets="activeQueryPanel"
+ button="true"/>
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,7 +1,4 @@
<%@ page import="org.chorem.vradi.entities.Form" %>
-<%@ page import="org.chorem.vradi.entities.FormImpl" %>
-<%@ page import="com.opensymphony.xwork2.ActionContext" %>
-<%@ page import="org.omg.DynamicAny.FieldNameHelper" %>
<%@ page import="org.nuiton.wikitty.entities.Wikitty" %>
<%@ page import="org.nuiton.wikitty.entities.WikittyExtension" %>
<%@ page import="org.chorem.vradi.VradiSession" %>
Added: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/resultGrid.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/resultGrid.jsp (rev 0)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/resultGrid.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -0,0 +1,57 @@
+<%@ page import="org.chorem.vradi.entities.Infogene" %>
+<%@ page import="org.chorem.vradi.actions.SearchAction" %>
+<%@ page import="com.opensymphony.xwork2.ActionContext" %>
+
+<%@taglib prefix="s" uri="/struts-tags"%>
+<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags"%>
+
+<%
+SearchAction action = SearchAction.getAction();
+String query = action.getQuery();
+ActionContext.getContext().put("query", query);
+%>
+
+<s:set id="creationDateText">
+ <s:text name="vradi.form.creationDate"/>
+</s:set>
+<s:set id="objetText">
+ <s:text name="vradi.form.object"/>
+</s:set>
+<s:set id="fqCreationDate">
+ <%=Infogene.FQ_FIELD_INFOGENE_CREATIONDATE%>
+</s:set>
+<s:set id="fqObjet">
+ <%=Infogene.FQ_FIELD_INFOGENE_OBJET%>
+</s:set>
+
+<s:url id="formResultUrl" action="formGrid">
+ <s:param name="query">
+ <s:property value="query"/>
+ </s:param>
+</s:url>
+
+<sjg:grid id="formResult"
+ dataType="json"
+ href="%{formResultUrl}"
+ pager="true"
+ gridModel="gridModel"
+ rowList="10,100,1000"
+ rowNum="10"
+ rownumbers="true"
+ autowidth="true"
+ onSelectRowTopics="rowselect">
+
+ <sjg:gridColumn name="creationDate"
+ index="%{#fqCreationDate}"
+ title="%{#creationDateText}"
+ formatter="date"
+ formatoptions="{newformat : 'd/m/Y H:i', srcformat : 'Y-m-d H:i:s'}"
+ sortable="true"
+ width="30"/>
+
+ <sjg:gridColumn name="objet"
+ index="%{#fqObjet}"
+ title="%{#objetText}"
+ sortable="true"/>
+
+</sjg:grid>
\ No newline at end of file
Added: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp (rev 0)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/savedQueries.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -0,0 +1,20 @@
+<%@ page import="org.chorem.vradi.actions.SearchAction" %>
+<%@ page import="com.opensymphony.xwork2.ActionContext" %>
+<%@ page import="org.chorem.vradi.entities.Query" %>
+<%@ page import="java.util.List" %>
+<%@taglib prefix="s" uri="/struts-tags"%>
+<%@taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<%
+SearchAction action = SearchAction.getAction();
+List<Query> lastQueries = action.getLastQueries();
+ActionContext.getContext().put("lastQueries", lastQueries);
+%>
+
+<s:select id="lastQueries"
+ name="lastQueries"
+ listKey="content"
+ listValue="name"
+ list="lastQueries"
+ emptyOption="true"
+ onchange="form.elements['query'].innerHTML = this.options[this.selectedIndex].value"/>
\ No newline at end of file
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,21 +1,31 @@
<%@page import="org.chorem.vradi.entities.Infogene"%>
-<%@page import="org.chorem.vradi.decorators.EscapeScriptColomnDecorator" %>
<%@page import="org.chorem.vradi.entities.Form" %>
-<%@page import="org.chorem.vradi.decorators.DateFormatColumnDecorator" %>
+<%@ page import="org.chorem.vradi.actions.SearchAction" %>
+<%@ page import="com.opensymphony.xwork2.ActionContext" %>
<%@page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
-<%@taglib prefix="displaytag" uri="http://displaytag.sf.net"%>
<%@taglib prefix="sj" uri="/struts-jquery-tags" %>
<%@taglib prefix="sjt" uri="/struts-jquery-tree-tags" %>
+<%@ taglib prefix="sjg" uri="/struts-jquery-grid-tags"%>
<html>
<head>
<s:url var="css" value="/css/search.css" />
<link href="${css}" rel="stylesheet" type="text/css" />
<title><s:text name="vradi.search.title" /></title>
- <s:head />
- <sj:head/>
+ <sj:head compressed="false"
+ jquerytheme="redmond"
+ debug="true"
+ jqueryui="true"/>
<script type="text/javascript">
+ <%-- Table --%>
+ $.subscribe('rowselect', function(event, data) {
+ var id = event.originalEvent.id;
+ var wikittyId = id.substring(10, id.length);
+ window.open("/formView/" + wikittyId + ".action");
+ });
+
+ <%-- Thesaurus --%>
$.subscribe('treeClicked', function(event, data) {
var item = event.originalEvent.data.rslt.obj;
var parent = item.parentsUntil(".jstree", "li");
@@ -32,109 +42,93 @@
}
finalName = rootName + ":\"" + item.text().trim() + "\"";
}
- $('#searchArea')[0].innerHTML += finalName.trim();
+ $('#searchArea')[0].value += finalName.trim();
});
-
- function updateThesaurus() {
-
- // Send thesaurus filter
- var xhr = new XMLHttpRequest();
- var thesaurusUrl = getThesaurusUrl();
- xhr.open('GET', thesaurusUrl, true);
- xhr.send(null);
-
- // Refresh tree
- $('#thesaurus').jstree("refresh");
- alert(url);
- }
-
- function getThesaurusUrl() {
- var thesaurusNameRequest = $("#thesaurusNameRequestArea")[0].value;
- return "/thesaurus.action?thesaurusNameRequest=" + thesaurusNameRequest;
- }
</script>
</head>
<body>
<div>
<div id="thesaurusPanel" class="left">
- <input type="text" id="thesaurusNameRequestArea"/>
- <s:set id="thesaurusFilterButtonText">
- <s:text name="vradi.search.thesaurusFilterButton"/>
- </s:set>
- <input type="submit"
- value="${thesaurusFilterButtonText}"
- onclick="updateThesaurus()"/>
- <s:url id="thesaurusDataUrl" action="thesaurus"/>
- <sjt:tree
- id="thesaurus"
- href="%{thesaurusDataUrl}"
- onClickTopics="treeClicked"/>
+ <form id="thesaurusForm"
+ action="/fragment/thesaurusFilter.action">
+ <s:textfield id="thesaurusNameRequestField"
+ cssClass="left"
+ theme="simple"
+ name="thesaurusNameRequest"/>
+ <s:set id="thesaurusFilterButtonText">
+ <s:text name="vradi.search.thesaurusFilterButton"/>
+ </s:set>
+ <div class="right">
+ <sj:submit id="thesaurusSubmit"
+ value="%{#thesaurusFilterButtonText}"
+ indicator="indicator-thesaurus"
+ targets="thesaurusDiv"
+ button="true"/>
+ </div>
+ </form>
+ <sj:div id="thesaurusDiv" href="/fragment/thesaurusFilter.action" indicator="indicator-thesaurus">
+ <img id="indicator-thesaurus" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
+
</div>
<div id="contentPanel">
<div id="searchPanel">
- <s:form id="searchForm" action="search" method="post" theme="simple">
- <s:select id="lastQueries"
- name="lastQueries"
- listKey="content"
- listValue="name"
- list="lastQueries"
- emptyOption="true"
- onchange="form.elements['query'].innerHTML = this.options[this.selectedIndex].value"/>
- <s:text name="vradi.search.queryName"/>
- <s:textfield id="queryName" name="queryName"/></br>
+ <form id="searchForm" action="/fragment/search.action">
+
+ <div id="queriesPanel">
+ <sj:div id="savedQueriesPanel"
+ cssClass="left"
+ href="/fragment/savedQuery.action"
+ indicator="indicator-savedQuery">
+ <img id="indicator-savedQuery" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
+
+ <s:text name="vradi.search.queryName"/>
+ <s:textfield id="queryName"
+ cssClass="right"
+ theme="simple"
+ name="queryName"
+ size="40"/>
+ </div>
<div id="queryPanel">
<s:textarea id="searchArea"
name="query"
cols="160"
- rows="4"/>
+ rows="6"/>
</div>
<div id="searchActionPanel">
- <s:submit key="vradi.search.saveQuery" name="saveRequest"/></br>
- <s:if test="queryActive">
- <s:submit key="vradi.search.unActivateQuery" name="switchUserQueryActivation"/>
- </s:if>
- <s:else>
- <s:submit key="vradi.search.activateQuery" name="switchUserQueryActivation"/>
- </s:else>
- </br>
- <s:submit key="vradi.search.submit" name="search"/>
- <s:select label="nbForms"
- name="nbForms"
- headerKey="10"
- headerValue="10"
- list="#{100:'100',1000:'1000'}"
- value="nbForms"
- required="true"/>
- </div>
- </s:form>
- </div>
- <div id="resultPanel">
- <displaytag:table name="forms"
- sort="list"
- id="f"
- requestURI="search.action">
- <displaytag:column titleKey="vradi.form.creationDate"
- property="<%=Infogene.FIELD_INFOGENE_CREATIONDATE%>"
- sortable="true"
- href='<%=f == null ? null : "formView/" + ((Form)f).getWikittyId() + ".action"%>'
- sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_CREATIONDATE%>"
- decorator="<%=DateFormatColumnDecorator.class.getName()%>"/>
+ <s:url id="saveQueryUrl" action="saveQuery"/>
- <displaytag:column titleKey="vradi.form.object"
- property="<%=Infogene.FIELD_INFOGENE_OBJET%>"
- sortable="true"
- href='<%=f == null ? null : "formView/" + ((Form)f).getWikittyId() + ".action"%>'
- sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_OBJET%>"
- decorator="<%=EscapeScriptColomnDecorator.class.getName()%>"/>
+ <s:set id="searchText">
+ <s:text name="vradi.search.saveQuery"/>
+ </s:set>
+ <sj:submit id="saveQuery"
+ href="%{saveQueryUrl}"
+ value="%{#searchText}"
+ indicator="indicator-savedQuery"
+ targets="savedQueriesPanel"
+ button="true"/>
- <displaytag:column titleKey="common.action" class="action">
- <s:set name="formNoteListUrl"><%="formNoteList/" + ((Form)f).getWikittyId()%></s:set>
- <s:a action="%{formNoteListUrl}"><s:text name="vradi.search.formNoteEdit"/></s:a>
- </displaytag:column>
- </displaytag:table>
+ <sj:div id="activeQueryPanel" href="/fragment/activeQuery.action" indicator="indicator-activeQuery">
+ <img id="indicator-activeQuery" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
+ <s:set id="searchText">
+ <s:text name="vradi.search.submit"/>
+ </s:set>
+
+ <sj:submit id="search"
+ value="%{#searchText}"
+ indicator="indicator-grid"
+ targets="resultPanel"
+ button="true"/>
+ </div>
+ </form>
</div>
+ <sj:div id="resultPanel" href="/fragment/search.action" indicator="indicator-grid">
+ <img id="indicator-grid" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
+ </sj:div>
</div>
</div>
</body>
Added: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/thesaurusFilter.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/thesaurusFilter.jsp (rev 0)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/thesaurusFilter.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -0,0 +1,21 @@
+<%@page import="com.opensymphony.xwork2.ActionContext"%>
+<%@ page import="org.chorem.vradi.actions.ThesaurusAction" %>
+<%@page contentType="text/html" pageEncoding="UTF-8"%>
+
+<%@taglib prefix="s" uri="/struts-tags"%>
+<%@ taglib prefix="sjt" uri="/struts-jquery-tree-tags" %>
+
+<%
+ThesaurusAction action = ThesaurusAction.getAction();
+String thesaurusNameRequest = action.getThesaurusNameRequest();
+ActionContext.getContext().put("thesaurusNameRequest", thesaurusNameRequest);
+%>
+
+<s:url id="thesaurusDataUrl" action="thesaurus">
+ <s:param name="thesaurusNameRequest">
+ <s:property value="thesaurusNameRequest"/>
+ </s:param>
+</s:url>
+<sjt:tree id="thesaurus"
+ href="%{thesaurusDataUrl}"
+ onClickTopics="treeClicked"/>
\ No newline at end of file
Modified: trunk/vradi-web/src/main/webapp/css/search.css
===================================================================
--- trunk/vradi-web/src/main/webapp/css/search.css 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/webapp/css/search.css 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,6 +1,7 @@
/* Layout */
+
div.left{
- width: 20%;
+ /*width: 20%;*/
float:left;
}
@@ -8,6 +9,10 @@
float:right;
}
+.left{
+ float:left;
+}
+
.button{
margin-top:20px;
height:31px;
@@ -18,12 +23,20 @@
padding:2px;
}
+#queriesPanel {
+ width: 70%;
+}
+
+#thesaurusForm {
+ height: 5%;
+}
+
#searchActionPanel {
float:right;
}
#searchPanel {
- height: 20%;
+ height: 150px;
}
#contentPanel {
@@ -33,51 +46,9 @@
#queryPanel {
float:left;
- width: 80%;
+ width: 70%;
}
textarea {
width: 100%;
}
-
-/* Tableau */
-table {border-collapse:collapse; width: 100%;}
-.subTable th {font-weight: normal;}
-
-td {
- border: 1px solid black;
- padding:5px;}
-td.action {text-align: right; white-space:nowrap;}
-th {
- background-color: #eee;
- border: 1px solid black;
- padding: 4px;
-}
-
-th a:hover {color: black;}
-th a,th a:visited {
- text-decoration: none;
- font-weight:bold;
- color: black;
- background-repeat: no-repeat;
-}
-
-/* Tri sur une table */
-th.sorted a,th.sortable a {background-position: right; display: block;}
-th.sortable a {background-image: url(../img/arrow_off.png);}
-th.order1 a {background-image: url(../img/arrow_down.png);}
-th.order2 a {background-image: url(../img/arrow_up.png);}
-tr.odd:hover, tr.even:hover { background-color:#deecf1; cursor: pointer;}
-
-/* Pagination sur une table */
-span.pagebanner, span.pagelinks {
- background-color: #eee;
- border: 1px solid black;
- padding: 2px;
- display: block;
- text-align: center;
-}
-
-span.pagebanner{margin-top: 10px; border-bottom: none;}
-span.pagelinks {border-top: none; margin-bottom: 10px;}
-span.pagelinks a, span.pagelinks a:visited{color:black;}
Modified: trunk/vradi-web/src/main/webapp/index.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/index.jsp 2011-06-08 16:45:16 UTC (rev 86)
+++ trunk/vradi-web/src/main/webapp/index.jsp 2011-06-15 12:46:25 UTC (rev 87)
@@ -1,3 +1,3 @@
<%
-response.sendRedirect("search.action");
+response.sendRedirect("searchView.action");
%>
\ No newline at end of file
1
0
r86 - in trunk/vradi-web/src/main: java/org/chorem/vradi java/org/chorem/vradi/actions webapp/WEB-INF/jsp
by sletellier@users.chorem.org 08 Jun '11
by sletellier@users.chorem.org 08 Jun '11
08 Jun '11
Author: sletellier
Date: 2011-06-08 18:45:16 +0200 (Wed, 08 Jun 2011)
New Revision: 86
Url: http://chorem.org/repositories/revision/vradi/86
Log:
- Add * after thesaurus filter
- Display tree as list on filter
- Add nb forms to display selection
- Add thesaurus:descrition in search on thesaurus selection
Modified:
trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java 2011-06-07 20:10:36 UTC (rev 85)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/FormPaginatedList.java 2011-06-08 16:45:16 UTC (rev 86)
@@ -19,7 +19,6 @@
protected static final Log log = LogFactory.getLog(FormPaginatedList.class);
- public static final int NB_FORMS_TO_SHOW = 100;
public static final String DISPLAY_URL_PAGE = "page";
public static final String DISPLAY_URL_SORT = "sort";
public static final String DISPLAY_URL_DIR = "dir";
@@ -27,10 +26,10 @@
protected FormPagedResult result;
protected WikittyProxy proxy;
- public FormPaginatedList(WikittyProxy proxy) {
+ public FormPaginatedList(WikittyProxy proxy, int nbForms) {
this.proxy = proxy;
result = new FormPagedResult();
- result.setNbFormsToShow(NB_FORMS_TO_SHOW);
+ result.setNbFormsToShow(nbForms);
result.setPageToShow(1);
// Sort by default by fate descending
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java 2011-06-07 20:10:36 UTC (rev 85)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/SearchAction.java 2011-06-08 16:45:16 UTC (rev 86)
@@ -26,6 +26,9 @@
private static final long serialVersionUID = -3735250067223062719L;
public static final String REQUEST_ATTRIBUTE_FORMS = "forms";
+ private static final int DEFAULT_NB_FORMS = 10;
+
+ protected int nbForms = DEFAULT_NB_FORMS;
protected String query;
protected String queryName;
protected HttpServletRequest request;
@@ -36,6 +39,14 @@
protected String switchUserQueryActivation;
protected String saveRequest;
+ public int getNbForms() {
+ return nbForms;
+ }
+
+ public void setNbForms(int nbForms) {
+ this.nbForms = nbForms;
+ }
+
public String getSaveRequest() {
return saveRequest;
}
@@ -96,7 +107,7 @@
if (doSwithUserQueryActivation) {
queryActive = getVradiSession().getDataService().switchUserQueryActivation(user, queryName, query);
}
- FormPaginatedList paginatedList = new FormPaginatedList(getProxy());
+ FormPaginatedList paginatedList = new FormPaginatedList(getProxy(), getNbForms());
// Retrive paginatedList and fill by request params
paginatedList.fromRequest(request);
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java 2011-06-07 20:10:36 UTC (rev 85)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java 2011-06-08 16:45:16 UTC (rev 86)
@@ -60,10 +60,13 @@
} else {
// Build search with thesaurus name restriction
- Search search = Search.query().eq(Thesaurus.FQ_FIELD_WIKITTYTREENODE_PARENT, id);
+ Search search = Search.query();
if (!StringUtils.isEmpty(thesaurusNameRequest)) {
- search.like(Thesaurus.FQ_FIELD_WIKITTYTREENODE_NAME,
- thesaurusNameRequest, Like.SearchAs.ToLowerCase);
+ search.eq(Thesaurus.FQ_FIELD_THESAURUS_ROOTTHESAURUS, id)
+ .like(Thesaurus.FQ_FIELD_WIKITTYTREENODE_NAME,
+ thesaurusNameRequest + "*", Like.SearchAs.ToLowerCase);
+ } else {
+ search.eq(Thesaurus.FQ_FIELD_WIKITTYTREENODE_PARENT, id);
}
PagedResult<Thesaurus> children = getProxy().findAllByCriteria(Thesaurus.class, search.criteria());
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-07 20:10:36 UTC (rev 85)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-08 16:45:16 UTC (rev 86)
@@ -18,7 +18,21 @@
<script type="text/javascript">
$.subscribe('treeClicked', function(event, data) {
var item = event.originalEvent.data.rslt.obj;
- $('#searchArea')[0].innerHTML += item.text().trim();
+ var parent = item.parentsUntil(".jstree", "li");
+ var finalName;
+ var parentName = parent.text();
+ if (parentName.length == 0) {
+ finalName = item.children("a").text() + ":*";
+ } else {
+ var rootName;
+ while (parentName.length > 0) {
+ rootName = parent.children("a").text();
+ parent = parent.parentsUntil(".jstree", "li");
+ parentName = parent.text();
+ }
+ finalName = rootName + ":\"" + item.text().trim() + "\"";
+ }
+ $('#searchArea')[0].innerHTML += finalName.trim();
});
function updateThesaurus() {
@@ -43,7 +57,7 @@
<body>
<div>
<div id="thesaurusPanel" class="left">
- <textfield id="thesaurusNameRequestArea"/>
+ <input type="text" id="thesaurusNameRequestArea"/>
<s:set id="thesaurusFilterButtonText">
<s:text name="vradi.search.thesaurusFilterButton"/>
</s:set>
@@ -85,6 +99,13 @@
</s:else>
</br>
<s:submit key="vradi.search.submit" name="search"/>
+ <s:select label="nbForms"
+ name="nbForms"
+ headerKey="10"
+ headerValue="10"
+ list="#{100:'100',1000:'1000'}"
+ value="nbForms"
+ required="true"/>
</div>
</s:form>
</div>
@@ -97,14 +118,14 @@
<displaytag:column titleKey="vradi.form.creationDate"
property="<%=Infogene.FIELD_INFOGENE_CREATIONDATE%>"
sortable="true"
- href="<%="formView/" + ((Form)f).getWikittyId() + ".action"%>"
+ href='<%=f == null ? null : "formView/" + ((Form)f).getWikittyId() + ".action"%>'
sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_CREATIONDATE%>"
decorator="<%=DateFormatColumnDecorator.class.getName()%>"/>
<displaytag:column titleKey="vradi.form.object"
property="<%=Infogene.FIELD_INFOGENE_OBJET%>"
sortable="true"
- href="<%="formView/" + ((Form)f).getWikittyId() + ".action"%>"
+ href='<%=f == null ? null : "formView/" + ((Form)f).getWikittyId() + ".action"%>'
sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_OBJET%>"
decorator="<%=EscapeScriptColomnDecorator.class.getName()%>"/>
1
0
Author: tchemit
Date: 2011-06-07 22:10:36 +0200 (Tue, 07 Jun 2011)
New Revision: 85
Url: http://chorem.org/repositories/revision/vradi/85
Log:
Update mavenpom4redmine to 2.5.5.
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-06-07 13:02:31 UTC (rev 84)
+++ trunk/pom.xml 2011-06-07 20:10:36 UTC (rev 85)
@@ -6,7 +6,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>mavenpom4redmine</artifactId>
- <version>2.5.4</version>
+ <version>2.5.5</version>
</parent>
<groupId>org.chorem</groupId>
1
0
07 Jun '11
Author: sletellier
Date: 2011-06-07 15:02:31 +0200 (Tue, 07 Jun 2011)
New Revision: 84
Url: http://chorem.org/repositories/revision/vradi/84
Log:
Revert
Modified:
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp 2011-06-07 13:01:22 UTC (rev 83)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp 2011-06-07 13:02:31 UTC (rev 84)
@@ -42,7 +42,7 @@
<img id="indicator-result" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
</div>
<div>
- <sj:a id="clCyril LakechoseButton" href="/ajax/edit/%{localNoteId}.action?state=close"
+ <sj:a id="closeButton" href="/ajax/edit/%{localNoteId}.action?state=close"
targets="" indicator="indicator-result"
button="true" buttonIcon="ui-icon-gear">
<s:text name="vradi.formNote.close"/>
1
0
r83 - in trunk/vradi-web/src/main: java/org/chorem/vradi/actions resources resources/i18n webapp/WEB-INF/jsp webapp/css
by sletellier@users.chorem.org 07 Jun '11
by sletellier@users.chorem.org 07 Jun '11
07 Jun '11
Author: sletellier
Date: 2011-06-07 15:01:22 +0200 (Tue, 07 Jun 2011)
New Revision: 83
Url: http://chorem.org/repositories/revision/vradi/83
Log:
- Fix css
- #383 Filter thesaurus
Modified:
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java
trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties
trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties
trunk/vradi-web/src/main/resources/struts.xml
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
trunk/vradi-web/src/main/webapp/css/search.css
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/ThesaurusAction.java 2011-06-07 13:01:22 UTC (rev 83)
@@ -1,11 +1,16 @@
package org.chorem.vradi.actions;
import com.jgeppert.struts2.jquery.tree.result.TreeNode;
-import com.opensymphony.xwork2.ActionSupport;
+import org.apache.commons.lang.StringUtils;
+import org.apache.struts2.interceptor.ServletRequestAware;
import org.chorem.vradi.entities.RootThesaurus;
import org.chorem.vradi.entities.Thesaurus;
import org.chorem.vradi.services.VradiException;
+import org.nuiton.wikitty.search.PagedResult;
+import org.nuiton.wikitty.search.Search;
+import org.nuiton.wikitty.search.operators.Like;
+import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
@@ -14,15 +19,31 @@
*
* @author sletellier
*/
-public class ThesaurusAction extends VradiBaseAction {
+public class ThesaurusAction extends VradiBaseAction implements ServletRequestAware {
private static final long serialVersionUID = -2886756982077980790L;
- private List<TreeNode> nodes = new ArrayList<TreeNode>();
- private String id = null;
- public String execute() {
+ public static final String THESAURUS_NAME_REQUEST = "thesaurusNameRequest";
- if (id.equals("0")) {
+ protected List<TreeNode> nodes = new ArrayList<TreeNode>();
+ protected String id = null;
+ protected HttpServletRequest request;
+
+ protected String thesaurusNameRequest;
+
+ public String execute() {
+
+ if (id == null) {
+ // Store in session to keep it
+ request.getSession().setAttribute(THESAURUS_NAME_REQUEST, thesaurusNameRequest);
+ return SUCCESS;
+ }
+ else {
+ // Retrieve from session
+ this.thesaurusNameRequest = (String)request.getSession().getAttribute(THESAURUS_NAME_REQUEST);
+ }
+
+ if ("0".equals(id)) {
List<RootThesaurus> rootThesaurus;
try {
rootThesaurus = getVradiSession().getDataService().getRootThesaurus();
@@ -37,23 +58,44 @@
nodes.add(node);
}
} else {
- List<Thesaurus> thesaurus;
- try {
- thesaurus = getVradiSession().getDataService().getChildrenThesaurus(id);
- } catch (VradiException eee) {
- log.error("Failed to load children of thesaurus : " + id, eee);
- return ERROR;
+
+ // Build search with thesaurus name restriction
+ Search search = Search.query().eq(Thesaurus.FQ_FIELD_WIKITTYTREENODE_PARENT, id);
+ if (!StringUtils.isEmpty(thesaurusNameRequest)) {
+ search.like(Thesaurus.FQ_FIELD_WIKITTYTREENODE_NAME,
+ thesaurusNameRequest, Like.SearchAs.ToLowerCase);
}
- for (Thesaurus child : thesaurus) {
+ PagedResult<Thesaurus> children = getProxy().findAllByCriteria(Thesaurus.class, search.criteria());
+
+ // FIXME sletellier 07/06/11 : dont work, filter is apply only on count
+// TreeNodeResult<Thesaurus> thesaurus = getProxy().findTreeNode(Thesaurus.class, id, 1, true, criteria);
+
+// for (TreeNodeResult<Thesaurus> childNode : thesaurus.getChildren()) {
+ for (Thesaurus child : children) {
TreeNode node = new TreeNode();
+// Thesaurus child = childNode.getObject();
node.setId(child.getWikittyId());
node.setTitle(child.getName());
+
nodes.add(node);
}
}
- return SUCCESS;
- }
+ return SUCCESS;
+ }
+ @Override
+ public void setServletRequest(HttpServletRequest request) {
+ this.request = request;
+ }
+
+ public String getThesaurusNameRequest() {
+ return thesaurusNameRequest;
+ }
+
+ public void setThesaurusNameRequest(String thesaurusNameRequest) {
+ this.thesaurusNameRequest = thesaurusNameRequest;
+ }
+
public String getJSON() {
return execute();
}
Modified: trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties
===================================================================
--- trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties 2011-06-07 13:01:22 UTC (rev 83)
@@ -37,4 +37,5 @@
vradi.search.activateQuery=activate
vradi.search.queryName=Request name
vradi.search.saveQuery=Save request
-vradi.formView.title=Form view
\ No newline at end of file
+vradi.formView.title=Form view
+vradi.search.thesaurusFilterButton=Filter
\ No newline at end of file
Modified: trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties
===================================================================
--- trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties 2011-06-07 13:01:22 UTC (rev 83)
@@ -35,6 +35,7 @@
vradi.search.queryName=Nom de la requête
vradi.search.saveQuery=Sauvegarder la requête
vradi.search.submit=Rechercher
+vradi.search.thesaurusFilterButton=Filtrer
vradi.search.title=Recherche
vradi.search.unActivateQuery=Desactiver
vradi.title=Vradi Web
Modified: trunk/vradi-web/src/main/resources/struts.xml
===================================================================
--- trunk/vradi-web/src/main/resources/struts.xml 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/resources/struts.xml 2011-06-07 13:01:22 UTC (rev 83)
@@ -113,6 +113,7 @@
+-->
<action name="thesaurus" class="org.chorem.vradi.actions.ThesaurusAction">
+ <param name="thesaurusNameRequest"/>
<result name="success" type="json">
<param name="root">nodes</param>
</result>
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formNote.jsp 2011-06-07 13:01:22 UTC (rev 83)
@@ -42,7 +42,7 @@
<img id="indicator-result" src="/img/indicator.gif" alt="Loading..." style="display:none"/>
</div>
<div>
- <sj:a id="closeButton" href="/ajax/edit/%{localNoteId}.action?state=close"
+ <sj:a id="clCyril LakechoseButton" href="/ajax/edit/%{localNoteId}.action?state=close"
targets="" indicator="indicator-result"
button="true" buttonIcon="ui-icon-gear">
<s:text name="vradi.formNote.close"/>
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-06-07 13:01:22 UTC (rev 83)
@@ -20,11 +20,36 @@
var item = event.originalEvent.data.rslt.obj;
$('#searchArea')[0].innerHTML += item.text().trim();
});
+
+ function updateThesaurus() {
+
+ // Send thesaurus filter
+ var xhr = new XMLHttpRequest();
+ var thesaurusUrl = getThesaurusUrl();
+ xhr.open('GET', thesaurusUrl, true);
+ xhr.send(null);
+
+ // Refresh tree
+ $('#thesaurus').jstree("refresh");
+ alert(url);
+ }
+
+ function getThesaurusUrl() {
+ var thesaurusNameRequest = $("#thesaurusNameRequestArea")[0].value;
+ return "/thesaurus.action?thesaurusNameRequest=" + thesaurusNameRequest;
+ }
</script>
</head>
<body>
<div>
<div id="thesaurusPanel" class="left">
+ <textfield id="thesaurusNameRequestArea"/>
+ <s:set id="thesaurusFilterButtonText">
+ <s:text name="vradi.search.thesaurusFilterButton"/>
+ </s:set>
+ <input type="submit"
+ value="${thesaurusFilterButtonText}"
+ onclick="updateThesaurus()"/>
<s:url id="thesaurusDataUrl" action="thesaurus"/>
<sjt:tree
id="thesaurus"
Modified: trunk/vradi-web/src/main/webapp/css/search.css
===================================================================
--- trunk/vradi-web/src/main/webapp/css/search.css 2011-05-31 16:18:16 UTC (rev 82)
+++ trunk/vradi-web/src/main/webapp/css/search.css 2011-06-07 13:01:22 UTC (rev 83)
@@ -1,19 +1,39 @@
/* Layout */
div.left{
+ width: 20%;
float:left;
}
+.right{
+ float:right;
+}
+
+.button{
+ margin-top:20px;
+ height:31px;
+ line-height:31px;
+ font-weight:bold;
+ border:none;
+ width:auto;
+ padding:2px;
+}
+
#searchActionPanel {
float:right;
}
+#searchPanel {
+ height: 20%;
+}
+
#contentPanel {
- padding-left: 10%;
+ padding-right: 20%;
+ padding-left: 20%;
}
#queryPanel {
float:left;
- width: 85%;
+ width: 80%;
}
textarea {
1
0
r82 - in trunk/vradi-web/src/main: java/org/chorem/vradi/actions resources resources/i18n webapp/WEB-INF/jsp
by sletellier@users.chorem.org 31 May '11
by sletellier@users.chorem.org 31 May '11
31 May '11
Author: sletellier
Date: 2011-05-31 18:18:16 +0200 (Tue, 31 May 2011)
New Revision: 82
Url: http://chorem.org/repositories/revision/vradi/82
Log:
Creation of page to view forms
Added:
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormViewAction.java
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp
Modified:
trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties
trunk/vradi-web/src/main/resources/struts.xml
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
Added: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormViewAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormViewAction.java (rev 0)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/FormViewAction.java 2011-05-31 16:18:16 UTC (rev 82)
@@ -0,0 +1,53 @@
+package org.chorem.vradi.actions;
+
+import org.apache.struts2.interceptor.ServletRequestAware;
+import org.chorem.vradi.entities.Form;
+import org.nuiton.wikitty.WikittyProxy;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * Action to display form details
+ *
+ * @author sletellier
+ */
+public class FormViewAction extends VradiBaseAction implements ServletRequestAware {
+
+ protected HttpServletRequest request;
+ protected String formId;
+ protected Form form;
+
+ public String getFormId() {
+ return formId;
+ }
+
+ public void setFormId(String formId) {
+ this.formId = formId;
+ }
+
+ public Form getForm() {
+ return form;
+ }
+
+ public void setForm(Form form) {
+ this.form = form;
+ }
+
+ @Override
+ public void setServletRequest(HttpServletRequest request) {
+ this.request = request;
+ }
+
+ @Override
+ public String execute() throws Exception {
+ WikittyProxy proxy = getProxy();
+ Form form = proxy.restore(Form.class, getFormId());
+ setForm(form);
+
+ if (log.isDebugEnabled()) {
+ log.debug("Displaying form : " + form.getObjet());
+ }
+ request.setAttribute("form", form);
+ return SUCCESS;
+ }
+}
Modified: trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties
===================================================================
--- trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties 2011-05-31 15:21:39 UTC (rev 81)
+++ trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties 2011-05-31 16:18:16 UTC (rev 82)
@@ -36,4 +36,5 @@
vradi.search.unActivateQuery=Unactivate
vradi.search.activateQuery=activate
vradi.search.queryName=Request name
-vradi.search.saveQuery=Sauvegarder la requ\u00eate
\ No newline at end of file
+vradi.search.saveQuery=Save request
+vradi.formView.title=Form view
\ No newline at end of file
Modified: trunk/vradi-web/src/main/resources/struts.xml
===================================================================
--- trunk/vradi-web/src/main/resources/struts.xml 2011-05-31 15:21:39 UTC (rev 81)
+++ trunk/vradi-web/src/main/resources/struts.xml 2011-05-31 16:18:16 UTC (rev 82)
@@ -119,6 +119,14 @@
</action>
<!--
+ | Affiche le détail du formulaire
+ +-->
+ <action name="formView/*" class="org.chorem.vradi.actions.FormViewAction">
+ <param name="formId">{1}</param>
+ <result>/WEB-INF/jsp/formView.jsp</result>
+ </action>
+
+ <!--
| Affiche la liste des notes attachees a un formulaire
| Permet de creer une nouvelle note
+-->
Added: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp (rev 0)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/formView.jsp 2011-05-31 16:18:16 UTC (rev 82)
@@ -0,0 +1,39 @@
+<%@ page import="org.chorem.vradi.entities.Form" %>
+<%@ page import="org.chorem.vradi.entities.FormImpl" %>
+<%@ page import="com.opensymphony.xwork2.ActionContext" %>
+<%@ page import="org.omg.DynamicAny.FieldNameHelper" %>
+<%@ page import="org.nuiton.wikitty.entities.Wikitty" %>
+<%@ page import="org.nuiton.wikitty.entities.WikittyExtension" %>
+<%@ page import="org.chorem.vradi.VradiSession" %>
+<%@page contentType="text/html" pageEncoding="UTF-8"%>
+<%@taglib prefix="s" uri="/struts-tags"%>
+
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title><s:text name="vradi.formView.title" /></title>
+ </head>
+ <body>
+ <h1><s:text name="vradi.formView.title" /></h1>
+ <div id="content">
+ <table>
+ <% Form form = (Form)request.getAttribute("form");
+
+ for (String extName : form.getExtensionNames()) {
+ Wikitty wikitty = VradiSession.getVradiSession(session).getProxy().getWikitty(form);
+ WikittyExtension extension = wikitty.getExtension(extName);
+ for (String fieldName : extension.getFieldNames()) {
+ %>
+ <tr>
+ <th><%=fieldName%></th>
+ <td><%=form.getField(extName, fieldName)%></td>
+ </tr>
+ <%
+ }
+ }
+ %>
+ </table>
+ </div>
+ </body>
+</html>
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-05-31 15:21:39 UTC (rev 81)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-05-31 16:18:16 UTC (rev 82)
@@ -72,18 +72,20 @@
<displaytag:column titleKey="vradi.form.creationDate"
property="<%=Infogene.FIELD_INFOGENE_CREATIONDATE%>"
sortable="true"
+ href="<%="formView/" + ((Form)f).getWikittyId() + ".action"%>"
sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_CREATIONDATE%>"
decorator="<%=DateFormatColumnDecorator.class.getName()%>"/>
<displaytag:column titleKey="vradi.form.object"
property="<%=Infogene.FIELD_INFOGENE_OBJET%>"
sortable="true"
+ href="<%="formView/" + ((Form)f).getWikittyId() + ".action"%>"
sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_OBJET%>"
decorator="<%=EscapeScriptColomnDecorator.class.getName()%>"/>
<displaytag:column titleKey="common.action" class="action">
- <s:set name="formNoteListURl"><%="formNoteList/" + ((Form)f).getWikittyId()%></s:set>
- <s:a action="%{formNoteListURl}"><s:text name="vradi.search.formNoteEdit"/></s:a>
+ <s:set name="formNoteListUrl"><%="formNoteList/" + ((Form)f).getWikittyId()%></s:set>
+ <s:a action="%{formNoteListUrl}"><s:text name="vradi.search.formNoteEdit"/></s:a>
</displaytag:column>
</displaytag:table>
</div>
1
0
r81 - in trunk: . vradi-web/src/main/java/org/chorem/vradi/actions vradi-web/src/main/resources/i18n
by sletellier@users.chorem.org 31 May '11
by sletellier@users.chorem.org 31 May '11
31 May '11
Author: sletellier
Date: 2011-05-31 17:21:39 +0200 (Tue, 31 May 2011)
New Revision: 81
Url: http://chorem.org/repositories/revision/vradi/81
Log:
Fix i18n
Modified:
trunk/pom.xml
trunk/vradi-web/src/main/java/org/chorem/vradi/actions/RegisterAction.java
trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties
trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-05-31 14:37:54 UTC (rev 80)
+++ trunk/pom.xml 2011-05-31 15:21:39 UTC (rev 81)
@@ -133,9 +133,10 @@
<!-- i18n configuration -->
<i18n.bundles>fr_FR,en_GB</i18n.bundles>
<i18n.silent>true</i18n.silent>
- <i18n.bundleOutputEncoding>UTF-8</i18n.bundleOutputEncoding>
- <i18n.bundleFormatConverter>toMessageFormat</i18n.bundleFormatConverter>
+ <!-- strust allow only iso :( -->
+ <i18n.bundleOutputEncoding>ISO-8859-1</i18n.bundleOutputEncoding>
+
</properties>
<dependencyManagement>
Modified: trunk/vradi-web/src/main/java/org/chorem/vradi/actions/RegisterAction.java
===================================================================
--- trunk/vradi-web/src/main/java/org/chorem/vradi/actions/RegisterAction.java 2011-05-31 14:37:54 UTC (rev 80)
+++ trunk/vradi-web/src/main/java/org/chorem/vradi/actions/RegisterAction.java 2011-05-31 15:21:39 UTC (rev 81)
@@ -93,7 +93,7 @@
if (user == null) {
result = false;
} else { //The email address is already used by someone
- addFieldError("email", getText(n_("vradi.register.emailAldyUsed")));
+ addFieldError("email", getText(n_("vradi.register.emailAlreadyUsed")));
}
return result;
}
Modified: trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties
===================================================================
--- trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties 2011-05-31 14:37:54 UTC (rev 80)
+++ trunk/vradi-web/src/main/resources/i18n/vradi-web_en_GB.properties 2011-05-31 15:21:39 UTC (rev 81)
@@ -4,7 +4,7 @@
vradi.config.remote.endpoint.description=Url of vradi service
vradi.config.ui.locale=Vradi web locale
vradi.config.version.description=Vradi web version
-vradi.register.emailAldyUsed=This address mail is already used
+vradi.register.emailAlreadyUsed=This address mail is already used
vradi.register.invalidLogin=An error occured during login
vradi.register.pwdDontMatch=Both passwords doesn't matches
vradi.error.internal=Error occured, thaks contact an admin
Modified: trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties
===================================================================
--- trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties 2011-05-31 14:37:54 UTC (rev 80)
+++ trunk/vradi-web/src/main/resources/i18n/vradi-web_fr_FR.properties 2011-05-31 15:21:39 UTC (rev 81)
@@ -21,7 +21,7 @@
vradi.login.repeatPassword=Confiramtion
vradi.login.submit=Connection
vradi.login.title=Connection
-vradi.register.emailAldyUsed=Cette adresse email est déjà utilisée
+vradi.register.emailAlreadyUsed=Cette adresse email est déjà utilisée
vradi.register.invalidLogin=Une erreur s'est produite pendant l'enregistrement de vos informations, merci d'essayer à nouveau
vradi.register.mailEmail=Votre email
vradi.register.mailHi=Bonjour
1
0
31 May '11
Author: sletellier
Date: 2011-05-31 16:37:54 +0200 (Tue, 31 May 2011)
New Revision: 80
Url: http://chorem.org/repositories/revision/vradi/80
Log:
Fix search.jsp layout
Modified:
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
trunk/vradi-web/src/main/webapp/css/search.css
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-05-31 12:46:45 UTC (rev 79)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/search.jsp 2011-05-31 14:37:54 UTC (rev 80)
@@ -18,59 +18,76 @@
<script type="text/javascript">
$.subscribe('treeClicked', function(event, data) {
var item = event.originalEvent.data.rslt.obj;
- $('#searchArea')[0].innerHTML += item.text().trim()
+ $('#searchArea')[0].innerHTML += item.text().trim();
});
</script>
</head>
<body>
- <s:url id="thesaurusDataUrl" action="thesaurus"/>
- <sjt:tree
- id="thesaurus"
- href="%{thesaurusDataUrl}"
- onClickTopics="treeClicked"
- />
+ <div>
+ <div id="thesaurusPanel" class="left">
+ <s:url id="thesaurusDataUrl" action="thesaurus"/>
+ <sjt:tree
+ id="thesaurus"
+ href="%{thesaurusDataUrl}"
+ onClickTopics="treeClicked"/>
- <s:form id="searchForm" action="search" method="post" theme="simple">
- <s:select id="lastQueries"
- name="lastQueries"
- listKey="content"
- listValue="name"
- list="lastQueries"
- emptyOption="true"
- onchange="form.elements['query'].innerHTML = this.options[this.selectedIndex].value"/>
- <s:text name="vradi.search.queryName"/>
- <s:textfield id="queryName" name="queryName"/></br>
- <s:textarea id="searchArea" name="query"/>
- <s:submit key="vradi.search.saveQuery" name="saveRequest"/>
- <s:if test="queryActive">
- <s:submit key="vradi.search.unActivateQuery" name="switchUserQueryActivation"/>
- </s:if>
- <s:else>
- <s:submit key="vradi.search.activateQuery" name="switchUserQueryActivation"/>
- </s:else>
- <s:submit key="vradi.search.submit" name="search"/>
- </s:form>
- <displaytag:table name="forms"
- sort="list"
- id="f"
- requestURI="search.action">
+ </div>
+ <div id="contentPanel">
+ <div id="searchPanel">
+ <s:form id="searchForm" action="search" method="post" theme="simple">
+ <s:select id="lastQueries"
+ name="lastQueries"
+ listKey="content"
+ listValue="name"
+ list="lastQueries"
+ emptyOption="true"
+ onchange="form.elements['query'].innerHTML = this.options[this.selectedIndex].value"/>
+ <s:text name="vradi.search.queryName"/>
+ <s:textfield id="queryName" name="queryName"/></br>
+ <div id="queryPanel">
+ <s:textarea id="searchArea"
+ name="query"
+ cols="160"
+ rows="4"/>
+ </div>
+ <div id="searchActionPanel">
+ <s:submit key="vradi.search.saveQuery" name="saveRequest"/></br>
+ <s:if test="queryActive">
+ <s:submit key="vradi.search.unActivateQuery" name="switchUserQueryActivation"/>
+ </s:if>
+ <s:else>
+ <s:submit key="vradi.search.activateQuery" name="switchUserQueryActivation"/>
+ </s:else>
+ </br>
+ <s:submit key="vradi.search.submit" name="search"/>
+ </div>
+ </s:form>
+ </div>
+ <div id="resultPanel">
+ <displaytag:table name="forms"
+ sort="list"
+ id="f"
+ requestURI="search.action">
- <displaytag:column titleKey="vradi.form.creationDate"
- property="<%=Infogene.FIELD_INFOGENE_CREATIONDATE%>"
- sortable="true"
- sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_CREATIONDATE%>"
- decorator="<%=DateFormatColumnDecorator.class.getName()%>"/>
+ <displaytag:column titleKey="vradi.form.creationDate"
+ property="<%=Infogene.FIELD_INFOGENE_CREATIONDATE%>"
+ sortable="true"
+ sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_CREATIONDATE%>"
+ decorator="<%=DateFormatColumnDecorator.class.getName()%>"/>
- <displaytag:column titleKey="vradi.form.object"
- property="<%=Infogene.FIELD_INFOGENE_OBJET%>"
- sortable="true"
- sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_OBJET%>"
- decorator="<%=EscapeScriptColomnDecorator.class.getName()%>"/>
+ <displaytag:column titleKey="vradi.form.object"
+ property="<%=Infogene.FIELD_INFOGENE_OBJET%>"
+ sortable="true"
+ sortProperty="<%=Infogene.FQ_FIELD_INFOGENE_OBJET%>"
+ decorator="<%=EscapeScriptColomnDecorator.class.getName()%>"/>
- <displaytag:column titleKey="common.action" class="action">
- <s:set name="formNoteListURl"><%="formNoteList/" + ((Form)f).getWikittyId()%></s:set>
- <s:a action="%{formNoteListURl}"><s:text name="vradi.search.formNoteEdit"/></s:a>
- </displaytag:column>
- </displaytag:table>
+ <displaytag:column titleKey="common.action" class="action">
+ <s:set name="formNoteListURl"><%="formNoteList/" + ((Form)f).getWikittyId()%></s:set>
+ <s:a action="%{formNoteListURl}"><s:text name="vradi.search.formNoteEdit"/></s:a>
+ </displaytag:column>
+ </displaytag:table>
+ </div>
+ </div>
+ </div>
</body>
</html>
\ No newline at end of file
Modified: trunk/vradi-web/src/main/webapp/css/search.css
===================================================================
--- trunk/vradi-web/src/main/webapp/css/search.css 2011-05-31 12:46:45 UTC (rev 79)
+++ trunk/vradi-web/src/main/webapp/css/search.css 2011-05-31 14:37:54 UTC (rev 80)
@@ -1,4 +1,25 @@
+/* Layout */
+div.left{
+ float:left;
+}
+#searchActionPanel {
+ float:right;
+}
+
+#contentPanel {
+ padding-left: 10%;
+}
+
+#queryPanel {
+ float:left;
+ width: 85%;
+}
+
+textarea {
+ width: 100%;
+}
+
/* Tableau */
table {border-collapse:collapse; width: 100%;}
.subTable th {font-weight: normal;}
1
0
r79 - in trunk/vradi-web/src/main/webapp: . WEB-INF/jsp/decorators
by sletellier@users.chorem.org 31 May '11
by sletellier@users.chorem.org 31 May '11
31 May '11
Author: sletellier
Date: 2011-05-31 14:46:45 +0200 (Tue, 31 May 2011)
New Revision: 79
Url: http://chorem.org/repositories/revision/vradi/79
Log:
Remove JQuery js file, using struts-jquery plugins one
Removed:
trunk/vradi-web/src/main/webapp/js/
Modified:
trunk/vradi-web/src/main/webapp/WEB-INF/jsp/decorators/main.jsp
Modified: trunk/vradi-web/src/main/webapp/WEB-INF/jsp/decorators/main.jsp
===================================================================
--- trunk/vradi-web/src/main/webapp/WEB-INF/jsp/decorators/main.jsp 2011-05-31 12:45:09 UTC (rev 78)
+++ trunk/vradi-web/src/main/webapp/WEB-INF/jsp/decorators/main.jsp 2011-05-31 12:46:45 UTC (rev 79)
@@ -21,12 +21,6 @@
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<s:url var="globalCSS" value="/css/global.css" />
<link href="${globalCSS}" rel="stylesheet" type="text/css" media="all" />
-<%--
- XXX poussin 20110530 qu'elle est l'interet de ce script ??? Surtout qu'il fait planter le plugin jquery :(
-
- <s:url var="jqueryJS" value="/js/jquery-1.6.1.js" />
- <script type="text/javascript" src="${jqueryJS}"></script>
---%>
</head>
<body id="page-home">
<div id="wrap">
1
0