]> SALOME platform Git repositories - tools/siman.git/blob - Workspace/Siman/WebContent/study/newStudy.jsp
Salome HOME
1d0148a26352825ef6794790bc4369ba63a9b699
[tools/siman.git] / Workspace / Siman / WebContent / study / newStudy.jsp
1 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
2         pageEncoding="ISO-8859-1"%>
3 <%@ taglib prefix="s" uri="/struts-tags"%>
4 <%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%>
5 <tiles:importAttribute name="valid_action" scope="request" />
6
7 <script language="JavaScript">
8         function initialize() {
9                 create.elements[0].focus();
10         }
11
12         function setValue() {
13                 var select = create.projectContextId.value; // contextValue select input
14                 if (select == "0") { // Creation of a new context type
15                         tds = document.getElementById("select");
16                         tde = document.getElementById("enter");
17                         tds.style.display = "none"; // Hides the select input
18                         tde.style.display = "block"; // Displays the text input
19                 }
20                 create.projectContext.focus();
21         }
22
23         $(document).ready(function() {
24         <s:if test="projectContextValues.size > 0">
25                 create.projectContextId.value = <s:property value="projectContextId"/>;
26         </s:if>
27                 setValue();
28                 
29                 //Studied product validation (based on struts-generated validation)
30             //relies on javascript included by 'validate="true"' for displaying error messages
31             document.getElementById("create").addEventListener('submit', function(event) {   //cross-browser solution
32                 form = document.getElementById("create");
33         
34                 var errors = false;
35                 var continueValidation = true;
36                         
37                 // field name: product
38                 // custom validation function
39                 if (form.elements['projectContext'] && form.elements['projectContextId']) {
40                     field = form.elements['projectContext'];
41                     id = form.elements['projectContextId'];
42                     var error = "The field \'Studied product\' must be filled";
43                     if (continueValidation
44                             && id.value != null && (
45                                 (id.value == 0
46                                    && field.value != null 
47                                    && (field.value == "" || field.value.replace(/^\s+|\s+$/g,"").length == 0)
48                                 )
49                                 || id.value == -1
50                             )
51                         ) {
52                         addError(field, error);
53                         errors = true;
54                     }
55                 }
56                 if(errors) {
57                     event.preventDefault();    //cross-browser solution
58                 }
59             });
60             
61             function setDefaultSelection()(event) {
62             tds = document.getElementById("select");
63             tde = document.getElementById("enter");
64             tds.style.display = "block"; // Hides the select input
65             tde.style.display = "none"; // Displays the text input
66             
67                 create.projectContextId.value = -1;
68                 create.projectContextId.focus();
69                 
70                 //hide back button
71             }
72         });
73     
74     
75 </script>
76
77 <!-- New study dialog
78      ===========================================================================
79   -->
80 <div id="article-box">
81         <div id="section">
82                 <s:text name="title.newstudy" />
83         </div>
84         <div id="top-spacer"></div>
85         <s:form id="create" name="create"
86                 action="%{#request.valid_action}" method="post" validate="true" cssClass="text">
87
88                         <tr class="error">
89                                 <td colspan="3"><s:text name="%{error}" /></td>
90                         </tr>
91
92                         <tr>
93                                 <td>&nbsp;<s:text name="field.studytitle" />:&nbsp;<span class="error">*</span>
94                                 </td>
95                                 <td><s:textfield theme="simple" size="60" name="title" /></td>
96                         </tr>
97
98                         <tr>
99                                 <td>&nbsp;<s:text name="field.product" />:&nbsp;<span class="error">*</span>
100                                 </td>
101                                 <s:if test="projectContextValues.size > 0">
102                                         <td id="select"><select name="projectContextId"
103                                                 style="width: 214px" onChange="setValue()">
104                                                         <option value="-1">
105                                                                 <s:text name="menu.select" />
106                                                         </option>
107                                                         <option value="0">
108                                                                 &nbsp;
109                                                                 <s:text name="menu.newproduct" />
110                                                         </option>
111                                                         <optgroup label="&nbsp;<s:text name="label.products"/>">
112                                                                 <s:iterator value="projectContextValues">
113                                                                         <option value="<s:property value="index"/>">
114                                                                                 &nbsp;
115                                                                                 <s:property value="value" />
116                                                                         </option>
117                                                                 </s:iterator>
118                                                         </optgroup>
119                                         </select></td>
120                                         <td id="enter" style="display: none"><s:textfield
121                                                         theme="simple" size="30" name="projectContext" /></td>
122                                 </s:if>
123                                 <s:else>
124                                         <td><s:hidden name="projectContextId" value="0" /> <s:textfield
125                                                         theme="simple" size="30" name="projectContext" /></td>
126                                 </s:else>
127                         </tr>
128                         <tiles:insertAttribute name="source_study" ignore="true" />
129
130                         <tr>
131                                 <td align="right" colspan="2"><s:submit
132                                                 theme="simple" type="button"
133                                                 key="button.newstudy" /></td>
134                         </tr>
135
136         </s:form>
137         <div id="top-spacer"></div>
138 </div>
139
140 <!-- Reserved
141   -->
142 <div id="right-pane"></div>
143 <div id="bottom-spacer"></div>