source: trunk/grails-app/views/importer/index_simple.gsp @ 682

Last change on this file since 682 was 682, checked in by tabma, 12 years ago
  • Property svn:keywords set to Date Author Rev
File size: 2.7 KB
Line 
1<!--
2  To change this template, choose Tools | Templates
3  and open the template in the editor.
4-->
5
6<%@ page contentType="text/html;charset=UTF-8" %>
7
8<html>
9  <head>
10    <meta name="layout" content="main"/>
11    <title>Importer wizard (simple)</title>
12
13<g:javascript library="jquery" plugin="jquery"/>
14
15<g:javascript>
16/**
17 * Update one select based on another select
18 *
19 * @author
20 * @see     http://www.grails.org/Tag+-+remoteFunction
21 * @param   string  select (form) name
22 * @param   string  JSON data
23 * @param   boolean keep the first option
24 * @param   int     selected option
25 * @param   string  if null, show this as option instead
26 * @void
27 */
28function updateSelect(name,data,keepFirstOption,selected,presentNullAsThis) {   
29    var rselect = $('#'+name).get(0)
30    var items = data
31
32    if (items) {
33
34        // remove old options
35        var start = (keepFirstOption) ? 0 : -1;
36        var i = rselect.length
37
38        while (i > start) {
39            rselect.remove(i)
40            i--
41        }
42
43        // add new options
44        $.each(items,function() {
45            var i = rselect.options.length
46
47            rselect.options[i] = new Option(
48                (presentNullAsThis && this.name == null) ? presentNullAsThis : this.name,
49                this.id
50            );
51            if (this.id == selected) rselect.options[i].selected = true
52        });
53    }
54}
55</g:javascript>
56</head>
57  <body>
58    <h1>Importer wizard (simple)</h1>
59    <p>You can import your Excel data to the server by choosing a file from your local harddisk in the form below.</p>
60        <g:form controller="importer" method="post" action="upload_simple" enctype="multipart/form-data">
61        <table border="0">
62        <tr>
63            <td width="100px">
64                Choose your Excel file to import:
65            </td>
66            <td width="100px">
67                <input type="file" name="importfile"/>
68            </td>
69        </tr>
70        <tr>
71            <td>
72                Choose your study:
73            </td>
74            <td>
75                <g:select name="study.id" from="${studies}" optionKey="id"/>
76            </td>
77        </tr>
78        <tr>
79            <td>
80                Choose type of data:
81            </td>
82            <td>
83                <g:select
84                name="entity"
85                from="${entities}"             
86                optionValue="${{it.value.name}}"
87                optionKey="key"
88                noSelection="['':'-Choose type of data-']"
89                onChange="${remoteFunction( controller: 'importer',
90                                            action:'ajaxGetTemplatesByEntity',
91                                            params: '\'entity=\'+escape(this.value)',
92                                            onSuccess:'updateSelect(\'template_id\',data,false,false,\'default\')')}" />
93            </td>
94        </tr>
95        <tr>
96            <td>
97                Choose type of data template:
98            </td>
99            <td>
100                <g:select name="template_id" optionKey="id" optionValue="name" from="[]" />
101            </td>
102        </tr>
103
104
105        <tr>
106            <td colspan="2">
107                <input type="submit" value="Next"/>
108            </td>
109        </tr>
110        </table>
111        </g:form>
112
113  </body>
114</html>
Note: See TracBrowser for help on using the repository browser.