<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"
%>
-<%@ page import="org.splat.som.KnowledgeElement"%>
+<%@ page import="org.splat.dal.bo.som.KnowledgeElement"%>
<%@ page import="org.splat.som.ApplicationRights"%>
+<%@ page import="org.splat.simer.ApplicationSettings"%>
+<%@ page import="java.util.ResourceBundle"%>
+<%@ page import="java.util.Calendar"%>
+<%@ page import="java.text.SimpleDateFormat"%>
<%@
taglib prefix="s" uri="/struts-tags"
%>
-->
<% String action = request.getParameter("action");
- ApplicationRights user = (ApplicationRights)session.getAttribute("user.rights");
+ ApplicationRights rights = (ApplicationRights)session.getAttribute("user.rights");
+ ResourceBundle locale = ResourceBundle.getBundle("som", ApplicationSettings.getCurrentLocale());
+ String format = locale.getString("date.format");
+ SimpleDateFormat tostring = new SimpleDateFormat(format);
String result = "uptodate";
- boolean anonymous = true;
+ boolean connected = false;
- if (user.canCreateStudy()) anonymous = false;
+ if (rights.getUser() != null) connected = true;
if (session.getAttribute("search.result") == null) result = "obsolete";
%>
<s:set var="todo"><%=action%></s:set>
+<s:set var="user"><%=connected%></s:set>
+<s:set var="format"><%=format%></s:set>
+<s:set var="today"><%=tostring.format(java.util.Calendar.getInstance().getTime())%></s:set>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title><s:text name="name.module"/></title>
<link href=<s:url value="/skin/default.css"/> rel="stylesheet" type="text/css">
- <script language="JavaScript" type="text/javascript" src="../jvs/search.js"></script>
+ <script language="JavaScript" type="text/javascript" src="../js/search.js"></script>
</head>
<body onLoad="initialize('<%=result%>')">
<!-- Menu-bar
=============================================================================================================================
-->
- <jsp:include page="/jsp/menubar.jsp">
- <jsp:param name="menu" value="open" />
- </jsp:include>
+ <jsp:include page="/jsp/menubar.jsp" />
<div id=top-spacer></div>
<!-- Search menu
<!-- Search criteria section
=============================================================================================================================
-->
- <div id="tab-bar">
- <jsp:include page="/jsp/searchtabs.jsp"/>
- </div>
<div id=article-box>
- <div id="top-spacer"></div>
+ <div id=section><s:text name="title.criteria"/></div>
<div id="article-body">
<form name="search" action="refresh-knowledge" method="post">
<input type=hidden name="contextIndex" />
- <s:set var="valid"><s:text name="button.result"/></s:set>
+ <s:set var="match1" value="criteriaMatch"/>
+ <s:set var="match2" value="contextMatch"/>
+ <s:set var="type" value="state"/>
+ <s:set var="him" value="author"/>
<table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
<tr height=20>
- <td width=40%> <s:text name="field.among"/></td>
- <td width=60%> <s:text name="field.context"/></td>
- </tr>
- <tr height=1 bgcolor=#AAAAAA><td colspan=3></td></tr>
- <tr valign=top>
- <td>
- <div id="article-item">
- <s:if test="owner == 'all'">
- <input type=radio name="owner" value="all" checked onClick="unsetReference()"><s:text name="criterion.knowledge.all"/>
+ <td width=40%>
+ <b><s:text name="field.among"/></b>
+ <s:if test="%{#match1 == 'all'}">
+ <input type=radio name="criteriaMatch" value="all" checked onClick="changeFilter()"><s:text name="field.matchall"/>
+
+ <input type=radio name="criteriaMatch" value="any" onClick="changeFilter()"><s:text name="field.matchany"/>
</s:if><s:else>
- <input type=radio name="owner" value="all" onClick="unsetReference()"><s:text name="criterion.knowledge.all"/>
+ <input type=radio name="criteriaMatch" value="all" onClick="changeFilter()"><s:text name="field.matchall"/>
+
+ <input type=radio name="criteriaMatch" value="any" checked onClick="changeFilter()"><s:text name="field.matchany"/>
</s:else>
- <s:set var="type" value="state"/>
- <select name="state" style="width: <s:text name="size.knowledge.state"/>" onChange="changeFilter()">
- <option value="0"><s:text name="menu.select" /></option>
+ </td>
+ <td width=60%>|
+ <b><s:text name="field.context"/></b>
+ <s:if test="%{#match2 == 'all'}">
+ <input type=radio name="contextMatch" value="all" checked onClick="changeFilter()"><s:text name="field.matchall"/>
+
+ <input type=radio name="contextMatch" value="any" onClick="changeFilter()"><s:text name="field.matchany"/>
+ </s:if><s:else>
+ <input type=radio name="contextMatch" value="all" onClick="changeFilter()"><s:text name="field.matchall"/>
+
+ <input type=radio name="contextMatch" value="any" checked onClick="changeFilter()"><s:text name="field.matchany"/>
+ </s:else>
+ </td>
+ </tr>
+ <tr height=1 bgcolor=#AAAAAA><td colspan=2></td></tr>
+ </table>
+
+ <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
+ <tr valign=top>
+ <td width=40%>
+ <table cellpadding=0 cellspacing=0 border=0 class=text>
+ <tr>
+ <td colspan=2><s:text name="criterion.knowledge"/> </td>
+ <td colspan=3 align=center>
+ <select name="state" style="width: <s:text name="size.search.select"/>" onChange="changeFilter()">
<s:iterator value="knowledgeTypes">
<s:if test="%{index == #type}">
- <option value="<s:property value="index"/>" selected> <s:text name="type.knowledge.%{name}" /></option>
+ <option value="<s:property value="index"/>" selected><s:text name="type.knowledge.%{name}" /></option>
</s:if><s:else>
- <option value="<s:property value="index"/>"> <s:text name="type.knowledge.%{name}" /></option>
+ <option value="<s:property value="index"/>"><s:text name="type.knowledge.%{name}" /></option>
</s:else>
</s:iterator>
</select>
- </div>
- <div id="article-item">
- <s:if test="owner == 'his'">
- <input type=radio name="owner" value="his" checked onClick="unsetReference()"><s:text name="criterion.knowledge.his"/>
- </s:if><s:else>
- <input type=radio name="owner" value="his" onClick="unsetReference()"><s:text name="criterion.knowledge.his"/>
- </s:else>
- <s:set var="him" value="author"/>
- <select name="author" style="width: <s:text name="size.knowledge.author"/>" onChange="changeFilter()">
- <option value="0"><s:text name="menu.select" /></option>
+ </td>
+ </tr>
+ <tr>
+ <td colspan=5 align=left>
+ <s:if test="visibility == 'PRIVATE'">
+ <input type=radio name="visibility" value="PRIVATE" checked onClick="changeFilter()"><s:text name="field.private"/>
+ <input type=radio name="visibility" value="PUBLIC" onClick="changeFilter()"><s:text name="field.public"/>
+ <input type=radio name="visibility" value="all" onClick="changeFilter()"><s:text name="field.either"/>
+ </s:if>
+ <s:elseif test="visibility == 'PUBLIC'">
+ <input type=radio name="visibility" value="PRIVATE" onClick="changeFilter()"><s:text name="field.private"/>
+ <input type=radio name="visibility" value="PUBLIC" checked onClick="changeFilter()"><s:text name="field.public"/>
+ <input type=radio name="visibility" value="all" onClick="changeFilter()"><s:text name="field.either"/>
+ </s:elseif>
+ <s:elseif test="visibility == 'onlypublic'">
+ <input type=radio name="visibility" value="PRIVATE" disabled onClick="changeFilter()"><s:text name="field.private"/>
+ <input type=radio name="visibility" value="onlypublic" checked onClick="changeFilter()"><s:text name="field.public"/>
+ <input type=radio name="visibility" value="all" disabled onClick="changeFilter()"><s:text name="field.either"/>
+ </s:elseif>
+ <s:else>
+ <input type=radio name="visibility" value="PRIVATE" onClick="changeFilter()"><s:text name="field.private"/>
+ <input type=radio name="visibility" value="PUBLIC" onClick="changeFilter()"><s:text name="field.public"/>
+ <input type=radio name="visibility" value="all" checked onClick="changeFilter()"><s:text name="field.either"/>
+ </s:else>
+ </td>
+ </tr>
+ <tr>
+ <td colspan=2><s:text name="criterion.author"/> </td>
+ <td colspan=3 align=center>
+ <select name="author" style="width: <s:text name="size.search.select"/>" onChange="changeFilter()">
+ <option value="0"><s:text name="criterion.anybody" /></option>
<s:iterator value="candidates">
<s:if test="%{index == #him}">
<option value="<s:property value="index"/>" selected><s:property value="toString()"/></option>
</s:else>
</s:iterator>
</select>
- </div>
- <div id="article-item">
-<% if (anonymous) {
-%> <input type=radio name="owner" value="mine" disabled><font color="#A1A192"><s:text name="criterion.knowledge.mine"/></font>
-<% } else {
-%> <s:if test="owner == 'mine'">
- <input type=radio name="owner" value="mine" checked onClick="unsetReference()"><s:text name="criterion.knowledge.mine"/>
- </s:if><s:else>
- <input type=radio name="owner" value="mine" onClick="unsetReference()"><s:text name="criterion.knowledge.mine"/>
- </s:else>
-<% } %> </div>
- <div id="article-item">
- <s:if test="owner == 'ref'">
- <input type=radio name="owner" value="ref" checked onClick="setReference()"><s:text name="criterion.knowledge.ref"/>
- </s:if><s:else>
- <input type=radio name="owner" value="ref" onClick="setReference()"><s:text name="criterion.knowledge.ref"/>
- </s:else>
- <div id=refid>
- <input type=text name="reference" value="<s:property value="%{reference}"/>" size="18" onKeydown="changeFilter()"/>
- </div>
- </div>
+ </td>
+ </tr>
+ <tr>
+ <s:set var="tipdate">
+ <s:text name="help.search.date">
+ <s:param><s:text name="%{#format}"/></s:param>
+ <s:param><s:text name="%{#today}"/></s:param>
+ </s:text>
+ </s:set>
+ <td><s:text name="field.credate"/> </td>
+ <td><s:text name="field.after"/> </td>
+ <td><input type=text name=after size=7 onKeydown="changeFilter()" title="<s:property value="%{#tipdate}"/>" /> </td>
+ <td><s:text name="field.before"/> </td>
+ <td><input type=text name=before size=7 onKeydown="changeFilter()" title="<s:property value="%{#tipdate}"/>" /></td>
+ </tr>
+ <tr height=26><td></td></tr>
+ </table>
+ <table cellpadding=0 cellspacing=0 border=0 class=text>
+ <tr>
+ <td><s:text name="field.contain"/>: </td>
+ <td><input type=text name=words style="width: <s:text name="size.search.input"/>" value="<s:property value="%{words}"/>" onKeydown="changeFilter()" title="<s:text name="help.search.title"/>" /></td>
+ </tr><tr>
+ <td><s:text name="field.reference"/>: </td>
+ <td><input type=text name="reference" style="width: <s:text name="size.search.input"/>" value="<s:property value="%{reference}"/>" onKeydown="changeFilter()" title="<s:text name="help.search.refid"/>" /></td>
+ </tr>
+ </table>
</td>
- <td rowspan=2>
- <div id=contlist>
-
+ <td width=60%>
<table cellpadding=0 cellspacing=0 border=0 class=text>
<s:iterator value="simulationContexts">
<tr>
</s:iterator>
</select>
</s:if>
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <div id=wordin>
- <br/><s:text name="field.contain"/> : <input type=text name=words value="<s:property value="%{words}"/>" onKeydown="changeFilter()" />
- </div>
</td>
</tr>
+ </table>
+
+ <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
<tr>
- <td></td>
- <td align=left>
- <input type="submit" name="refresh" value="<s:text name="button.result"/>" disabled/>
- </td>
+ <td width=40%></td>
+ <td width=60% align=left><input type="submit" name="refresh" value="<s:text name="button.result"/>" disabled/></td>
</tr>
</table>