1 <%@page language="java" contentType="text/html; charset=ISO-8859-1"
2 pageEncoding="ISO-8859-1"
4 <%@page import="org.splat.dal.bo.som.KnowledgeElement"%>
5 <%@page import="org.splat.som.ApplicationRights"%>
6 <%@page import="org.splat.simer.ApplicationSettings"%>
7 <%@page import="java.util.ResourceBundle"%>
8 <%@page import="java.util.Calendar"%>
9 <%@page import="java.text.SimpleDateFormat"%>
10 <%@page import="org.splat.simer.Action"%>
11 <%@page import="com.opensymphony.xwork2.ActionContext"%>
12 <%@taglib prefix="s" uri="/struts-tags"%>
13 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
15 <!-- Initialization of the context
16 =============================================================================================================================
19 ApplicationRights rights = (ApplicationRights)session.getAttribute("user.rights");
20 Action anAction = (Action)ActionContext.getContext().getActionInvocation().getAction();
21 ResourceBundle locale = ResourceBundle.getBundle("som",
22 anAction.getApplicationSettings().getCurrentLocale());
23 String format = locale.getString("date.format");
24 SimpleDateFormat tostring = new SimpleDateFormat(format);
25 String result = "uptodate";
26 boolean connected = false;
28 if (rights.getUser() != null) connected = true;
29 if (session.getAttribute("search.result") == null) result = "obsolete";
32 <s:set var="user"><%=connected%></s:set>
33 <s:set var="format"><%=format%></s:set>
34 <s:set var="today"><%=tostring.format(java.util.Calendar.getInstance().getTime())%></s:set>
37 <link href=<s:url value="/skin/default.css"/> rel="stylesheet" type="text/css">
39 <script language="JavaScript" type="text/javascript" src="../js/search.js"></script>
41 <body onLoad="initialize('<%=result%>')">
43 <!-- Search criteria section
44 =============================================================================================================================
47 <div id=section><s:text name="title.criteria"/></div>
48 <div id="article-body">
49 <form name="search" action="refresh-knowledge" method="post">
50 <input type=hidden name="contextIndex" />
51 <s:set var="match1" value="criteriaMatch"/>
52 <s:set var="match2" value="contextMatch"/>
53 <s:set var="type" value="state"/>
54 <s:set var="him" value="author"/>
56 <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
59 <b><s:text name="field.among"/></b>
60 <s:if test="%{#match1 == 'all'}">
61 <input type=radio name="criteriaMatch" value="all" checked onClick="changeFilter()"><s:text name="field.matchall"/>
63 <input type=radio name="criteriaMatch" value="any" onClick="changeFilter()"><s:text name="field.matchany"/>
65 <input type=radio name="criteriaMatch" value="all" onClick="changeFilter()"><s:text name="field.matchall"/>
67 <input type=radio name="criteriaMatch" value="any" checked onClick="changeFilter()"><s:text name="field.matchany"/>
70 <td width=60%>|
71 <b><s:text name="field.context"/></b>
72 <s:if test="%{#match2 == 'all'}">
73 <input type=radio name="contextMatch" value="all" checked onClick="changeFilter()"><s:text name="field.matchall"/>
75 <input type=radio name="contextMatch" value="any" onClick="changeFilter()"><s:text name="field.matchany"/>
77 <input type=radio name="contextMatch" value="all" onClick="changeFilter()"><s:text name="field.matchall"/>
79 <input type=radio name="contextMatch" value="any" checked onClick="changeFilter()"><s:text name="field.matchany"/>
83 <tr height=1 bgcolor=#AAAAAA><td colspan=2></td></tr>
86 <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
89 <table cellpadding=0 cellspacing=0 border=0 class=text>
91 <td colspan=2><s:text name="criterion.knowledge"/> </td>
92 <td colspan=3 align=center>
93 <select name="state" style="width: <s:text name="size.search.select"/>" onChange="changeFilter()">
94 <s:iterator value="knowledgeTypes">
95 <s:if test="%{index == #type}">
96 <option value="<s:property value="index"/>" selected><s:text name="type.knowledge.%{name}" /></option>
98 <option value="<s:property value="index"/>"><s:text name="type.knowledge.%{name}" /></option>
105 <td colspan=5 align=left>
106 <s:if test="visibility == 'PRIVATE'">
107 <input type=radio name="visibility" value="PRIVATE" checked onClick="changeFilter()"><s:text name="field.private"/>
108 <input type=radio name="visibility" value="PUBLIC" onClick="changeFilter()"><s:text name="field.public"/>
109 <input type=radio name="visibility" value="all" onClick="changeFilter()"><s:text name="field.either"/>
111 <s:elseif test="visibility == 'PUBLIC'">
112 <input type=radio name="visibility" value="PRIVATE" onClick="changeFilter()"><s:text name="field.private"/>
113 <input type=radio name="visibility" value="PUBLIC" checked onClick="changeFilter()"><s:text name="field.public"/>
114 <input type=radio name="visibility" value="all" onClick="changeFilter()"><s:text name="field.either"/>
116 <s:elseif test="visibility == 'onlypublic'">
117 <input type=radio name="visibility" value="PRIVATE" disabled onClick="changeFilter()"><s:text name="field.private"/>
118 <input type=radio name="visibility" value="onlypublic" checked onClick="changeFilter()"><s:text name="field.public"/>
119 <input type=radio name="visibility" value="all" disabled onClick="changeFilter()"><s:text name="field.either"/>
122 <input type=radio name="visibility" value="PRIVATE" onClick="changeFilter()"><s:text name="field.private"/>
123 <input type=radio name="visibility" value="PUBLIC" onClick="changeFilter()"><s:text name="field.public"/>
124 <input type=radio name="visibility" value="all" checked onClick="changeFilter()"><s:text name="field.either"/>
129 <td colspan=2><s:text name="criterion.author"/> </td>
130 <td colspan=3 align=center>
131 <select name="author" style="width: <s:text name="size.search.select"/>" onChange="changeFilter()">
132 <option value="0"><s:text name="criterion.anybody" /></option>
133 <s:iterator value="candidates">
134 <s:if test="%{index == #him}">
135 <option value="<s:property value="index"/>" selected><s:property value="toString()"/></option>
137 <option value="<s:property value="index"/>"><s:property value="toString()"/></option>
144 <s:set var="tipdate">
145 <s:text name="help.search.date">
146 <s:param><s:text name="%{#format}"/></s:param>
147 <s:param><s:text name="%{#today}"/></s:param>
150 <td><s:text name="field.credate"/> </td>
151 <td><s:text name="field.after"/> </td>
152 <td><input type=text name=after size=7 onKeydown="changeFilter()" title="<s:property value="%{#tipdate}"/>" /> </td>
153 <td><s:text name="field.before"/> </td>
154 <td><input type=text name=before size=7 onKeydown="changeFilter()" title="<s:property value="%{#tipdate}"/>" /></td>
156 <tr height=26><td></td></tr>
158 <table cellpadding=0 cellspacing=0 border=0 class=text>
160 <td><s:text name="field.contain"/>: </td>
161 <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>
163 <td><s:text name="field.reference"/>: </td>
164 <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>
169 <table cellpadding=0 cellspacing=0 border=0 class=text>
170 <s:iterator value="simulationContexts">
172 <td><input type=checkbox checked onClick="removeContext('<s:property value="index"/>')"> </td>
174 <s:if test="%{type.isApproved()}"><s:text name="type.context.%{type.name}"/>: </s:if>
175 <s:else><s:property value="%{type.name}"/>: </s:else>
177 <td><s:property value="value"/></td>
181 <s:if test="%{actionType == 'setContext'}">
184 <img src="<s:url value="/skin/icon.undo.png"/>" border="none" title="<s:text name="tooltip.cancel"/>" onClick="cancel()" />
187 <s:if test="%{selectedContextType.isApproved()}"><s:text name="type.context.%{selectedContextType.name}"/>: </s:if>
188 <s:else><s:property value="%{selectedContextType.name}"/>: </s:else>
191 <select name="contextValue" onChange="submit()">
192 <option value="-1"><s:text name="menu.select"/></option>
193 <s:iterator value="contextValueOptions">
194 <option value="<s:property value="index"/>"> <s:property value="value" /></option>
202 <s:if test="%{actionType != 'setContext'}">
203 <select name="contextType" onChange="submit()">
204 <option value="-1"><s:text name="menu.addcontext"/></option>
205 <s:set var="snum" value="null"/>
206 <s:iterator value="contextTypeOptions">
207 <s:if test="%{#snum != attachedStep.number}">
208 <s:set var="snum" value="%{attachedStep.number}"/>
209 <optgroup label=" <s:text name="folder.step.%{#snum}"/>">
211 <option value="<s:property value="index"/>">
212 <s:if test="%{isApproved()}"> <s:text name="type.context.%{name}" /></s:if>
213 <s:else> <s:property value="%{name}" /></s:else>
222 <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
225 <td width=60% align=left><input type="submit" name="refresh" value="<s:text name="button.result"/>" disabled/></td>
234 =============================================================================================================================
238 <div id=section><s:text name="title.result"/></div>
239 <div id=article-body class=text>
241 <s:if test="result.size > 0">
242 <table width=100% cellpadding=0 cellspacing=0 border=0 class=text>
243 <tr height=20 valign=bottom>
245 <td width=80><s:text name="label.reference"/></td>
246 <td><s:text name="label.title"/><img src="<s:url value="/skin/icon.sortup.png"/>" border="none"/></td>
247 <td width=150><s:text name="label.author"/></td>
249 <tr height=1 bgcolor=#AAAAAA><td colspan=4></td></tr>
250 <s:iterator value="result">
252 <td><img src="<s:url value="/skin/icon.%{progressState}.png"/>" width=12 height=12 border="none" title=""/></td>
253 <td><s:property value="reference"/></td>
255 <s:url id="open" namespace="/study" action="open-knowledge?selection=0">
256 <s:param name="index" value="%{index}"/>
258 <s:a href="%{open}" cssClass="link"><s:property value="title"/></s:a>
260 <td><s:property value="authorName"/></td>
267 <s:text name="message.noknowledge" />