Salome HOME
SIMAN Eclipse workspace first version
[tools/siman.git] / Workspace / Siman / WebContent / study / searchKnowledge.jsp
1 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
2     pageEncoding="ISO-8859-1"
3 %>
4 <%@ page import="org.splat.som.KnowledgeElement"%>
5 <%@ page import="org.splat.som.ApplicationRights"%>
6 <%@
7     taglib prefix="s" uri="/struts-tags"
8 %>
9 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
10
11 <!-- Initialization of the context
12      =============================================================================================================================
13   -->
14 <%  String  action = request.getParameter("action");
15
16     ApplicationRights user      = (ApplicationRights)session.getAttribute("user.rights");
17     String            result    = "uptodate";
18     boolean           anonymous = true;
19
20     if (user.canCreateStudy())                         anonymous = false;
21     if (session.getAttribute("search.result") == null) result    = "obsolete";
22 %>
23 <s:set var="todo"><%=action%></s:set>
24 <html>
25   <head>
26     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
27     <title><s:text name="name.module"/></title>
28     <link href=<s:url value="/skin/default.css"/> rel="stylesheet" type="text/css">
29     <script language="JavaScript" type="text/javascript" src="../jvs/search.js"></script>
30   </head>
31
32   <body onLoad="initialize('<%=result%>')">
33 <!-- Menu-bar
34      =============================================================================================================================
35   -->
36     <jsp:include page="/jsp/menubar.jsp">
37         <jsp:param name="menu" value="open" />
38     </jsp:include>
39     <div id=top-spacer></div>
40
41 <!-- Search menu
42      =============================================================================================================================
43   -->
44     <div id=left-pane>
45       <jsp:include page="/jsp/toolbar.jsp">
46         <jsp:param name="tools" value="none" />
47       </jsp:include>
48       <div id=top-spacer></div>
49       <jsp:include page="/jsp/menuitem.jsp">
50         <jsp:param name="menu" value="open" />
51       </jsp:include>
52     </div>
53
54     <div id=main-pane>
55
56 <!-- Search criteria section
57      =============================================================================================================================
58   -->
59       <div id="tab-bar">
60         <jsp:include page="/jsp/searchtabs.jsp"/>
61       </div>
62       <div id=article-box>
63         <div id="top-spacer"></div>
64         <div id="article-body">
65           <form name="search" action="refresh-knowledge" method="post">
66           <input type=hidden name="contextIndex" />
67           <s:set var="valid"><s:text name="button.result"/></s:set>
68
69           <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
70             <tr height=20>
71               <td width=40%>&nbsp;&nbsp;<s:text name="field.among"/></td>
72               <td width=60%>&nbsp;&nbsp;<s:text name="field.context"/></td>
73             </tr>
74             <tr height=1 bgcolor=#AAAAAA><td colspan=3></td></tr>
75             <tr valign=top>
76               <td>
77               <div id="article-item">
78                 <s:if test="owner == 'all'">
79                   <input type=radio name="owner" value="all" checked onClick="unsetReference()"><s:text name="criterion.knowledge.all"/>
80                 </s:if><s:else>
81                   <input type=radio name="owner" value="all" onClick="unsetReference()"><s:text name="criterion.knowledge.all"/>
82                 </s:else>
83                 <s:set var="type" value="state"/>
84                 <select name="state" style="width: <s:text name="size.knowledge.state"/>" onChange="changeFilter()">
85                   <option value="0"><s:text name="menu.select" /></option>
86                   <s:iterator value="knowledgeTypes">
87                     <s:if test="%{index == #type}">
88                       <option value="<s:property value="index"/>" selected>&nbsp;<s:text name="type.knowledge.%{name}" /></option>
89                     </s:if><s:else>
90                       <option value="<s:property value="index"/>">&nbsp;<s:text name="type.knowledge.%{name}" /></option>
91                     </s:else>
92                   </s:iterator>
93                 </select>
94               </div>
95               <div id="article-item">
96                 <s:if test="owner == 'his'">
97                   <input type=radio name="owner" value="his" checked onClick="unsetReference()"><s:text name="criterion.knowledge.his"/>
98                 </s:if><s:else>
99                   <input type=radio name="owner" value="his"         onClick="unsetReference()"><s:text name="criterion.knowledge.his"/>
100                 </s:else>
101                 <s:set var="him" value="author"/>
102                 <select name="author" style="width: <s:text name="size.knowledge.author"/>" onChange="changeFilter()">
103                   <option value="0"><s:text name="menu.select" /></option>
104                   <s:iterator value="candidates">
105                     <s:if test="%{index == #him}">
106                       <option value="<s:property value="index"/>" selected><s:property value="toString()"/></option>
107                     </s:if><s:else>
108                       <option value="<s:property value="index"/>"><s:property value="toString()"/></option>
109                     </s:else>
110                   </s:iterator>
111                 </select>
112               </div>
113               <div id="article-item">
114 <%  if (anonymous) {
115 %>                <input type=radio name="owner" value="mine" disabled><font color="#A1A192"><s:text name="criterion.knowledge.mine"/></font>
116 <%  } else {
117 %>              <s:if test="owner == 'mine'">
118                   <input type=radio name="owner" value="mine" checked onClick="unsetReference()"><s:text name="criterion.knowledge.mine"/>
119                 </s:if><s:else>
120                   <input type=radio name="owner" value="mine"         onClick="unsetReference()"><s:text name="criterion.knowledge.mine"/>
121                 </s:else>
122 <%  }  %>     </div>
123               <div id="article-item">
124                 <s:if test="owner == 'ref'">
125                   <input type=radio name="owner" value="ref" checked onClick="setReference()"><s:text name="criterion.knowledge.ref"/>
126                 </s:if><s:else>
127                   <input type=radio name="owner" value="ref" onClick="setReference()"><s:text name="criterion.knowledge.ref"/>
128                 </s:else>
129                 <div id=refid>
130                   <input type=text name="reference" value="<s:property value="%{reference}"/>" size="18" onKeydown="changeFilter()"/>
131                 </div>
132               </div>
133               </td>
134               <td rowspan=2>
135                 <div id=contlist>
136
137                 <table cellpadding=0 cellspacing=0 border=0 class=text>
138                   <s:iterator value="simulationContexts">
139                     <tr>
140                       <td><input type=checkbox checked onClick="removeContext('<s:property value="index"/>')">&nbsp;</td>
141                       <td>
142                         <s:if test="%{type.isApproved()}"><s:text name="type.context.%{type.name}"/>:&nbsp;</s:if>
143                         <s:else><s:property value="%{type.name}"/>:&nbsp;</s:else>
144                       </td>
145                       <td><s:property value="value"/></td>
146                     </tr>
147                   </s:iterator>
148
149                   <s:if test="%{#todo == 'setContext'}">
150                     <tr>
151                       <td>
152                         <img src="<s:url value="/skin/icon.undo.png"/>" border="none" title="<s:text name="tooltip.cancel"/>" onClick="cancel()" />&nbsp;
153                       </td>
154                       <td>
155                         <s:if test="%{selectedContextType.isApproved()}"><s:text name="type.context.%{selectedContextType.name}"/>:&nbsp;</s:if>
156                         <s:else><s:property value="%{selectedContextType.name}"/>:&nbsp;</s:else>
157                       </td>
158                       <td>
159                         <select name="contextValue" onChange="submit()">
160                           <option value="-1"><s:text name="menu.select"/></option>
161                           <s:iterator value="contextValueOptions">
162                             <option value="<s:property value="index"/>">&nbsp;<s:property value="value" /></option>
163                           </s:iterator>
164                         </select>
165                       </td>
166                     </tr>
167                   </s:if>
168                 </table>
169
170                 <s:if test="%{#todo != 'setContext'}">
171                         <select name="contextType" onChange="submit()">
172                           <option value="-1"><s:text name="menu.addcontext"/></option>
173                           <s:set var="snum" value="null"/>
174                           <s:iterator value="contextTypeOptions">
175                             <s:if test="%{#snum != attachedStep.number}">
176                               <s:set var="snum" value="%{attachedStep.number}"/>
177                               <optgroup label="&nbsp;<s:text name="folder.step.%{#snum}"/>">
178                             </s:if>
179                               <option value="<s:property value="index"/>">
180                                 <s:if test="%{isApproved()}">&nbsp;<s:text name="type.context.%{name}" /></s:if>
181                                 <s:else>&nbsp;<s:property value="%{name}" /></s:else>
182                               </option>
183                           </s:iterator>
184                         </select>
185                 </s:if>
186                 </div>
187               </td>
188             </tr>
189             <tr>
190               <td>
191                 <div id=wordin>
192                   <br/><s:text name="field.contain"/>&nbsp;:&nbsp;<input type=text name=words value="<s:property value="%{words}"/>" onKeydown="changeFilter()" />
193                 </div>
194               </td>
195             </tr>
196             <tr>
197               <td></td>
198               <td align=left>
199                 <input type="submit" name="refresh" value="<s:text name="button.result"/>" disabled/>
200               </td>
201             </tr>
202           </table>
203
204           </form>
205         </div>
206       </div>
207
208 <!-- Result list
209      =============================================================================================================================
210   -->
211       <div id=resulist>
212       <div id=article-box>
213         <div id=section><s:text name="title.result"/></div>
214         <div id=article-body class=text>
215
216           <s:if test="result.size > 0">
217             <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
218             <tr height=20 valign=bottom>
219               <td width=20></td>
220               <td width=80><s:text name="label.reference"/></td>
221               <td><s:text name="label.title"/><img src="<s:url value="/skin/icon.sortup.png"/>" border="none"/></td>
222               <td width=150><s:text name="label.author"/></td>
223             </tr>
224             <tr height=1 bgcolor=#AAAAAA><td colspan=4></td></tr>
225               <s:iterator value="result">
226                 <tr>
227                   <td><img src="<s:url value="/skin/icon.%{progressState}.png"/>" width=12 height=12 border="none" title=""/></td>
228                   <td><s:property value="reference"/></td>
229                   <td>
230                       <s:url id="open" namespace="/study" action="open-knowledge?selection=0">
231                         <s:param name="index" value="%{index}"/>
232                       </s:url>
233                       <s:a href="%{open}" cssClass="link"><s:property value="title"/></s:a>
234                   </td>
235                   <td><s:property value="authorName"/></td>
236                 </tr>
237               </s:iterator>
238             </table>
239           </s:if>
240
241           <s:else>
242             <s:text name="message.noknowledge" />
243           </s:else>
244         </div>
245       </div>
246       </div>
247     </div>
248
249   </body>
250 </html>