1 | <html> |
---|
2 | <head> |
---|
3 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> |
---|
4 | <meta name="layout" content="main"/> |
---|
5 | <title>Visualization</title> |
---|
6 | |
---|
7 | <!--[if lt IE 9]><g:javascript src="jqplot/excanvas.js" /><![endif]--> |
---|
8 | <g:javascript src="jqplot/jquery.jqplot.min.js" /> |
---|
9 | <link rel="stylesheet" type="text/css" href="<g:resource dir='css' file='jquery.jqplot.min.css' />" /> |
---|
10 | |
---|
11 | <!-- jqPlot plugins --> |
---|
12 | <g:javascript src="jqplot/plugins/jqplot.barRenderer.min.js" /> |
---|
13 | <g:javascript src="jqplot/plugins/jqplot.categoryAxisRenderer.min.js" /> |
---|
14 | <g:javascript src="jqplot/plugins/jqplot.pointLabels.min.js" /> |
---|
15 | <g:javascript src="jqplot/plugins/jqplot.canvasTextRenderer.min.js" /> |
---|
16 | <g:javascript src="jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js" /> |
---|
17 | <g:javascript src="jqplot/plugins/jqplot.ohlcRenderer.min.js" /> |
---|
18 | <g:javascript src="jqplot/plugins/jqplot.highlighter.min.js" /> |
---|
19 | |
---|
20 | <g:javascript src="visualization.js" /> |
---|
21 | <link rel="stylesheet" type="text/css" href="<g:resource dir='css' file='visualization.css' />" /> |
---|
22 | <style type="text/css"> |
---|
23 | /** NEEDED FOR RESOURCES PLUGIN **/ |
---|
24 | .menu_seperator {background-image: url(${resource(dir: 'images/visualization', file: 'seperator.gif')}); } |
---|
25 | .message_error { background: #ffe0e0 url(${fam.icon( name: 'exclamation' )}) 10px 5px no-repeat; } |
---|
26 | .message_warning { background: #eee url(${fam.icon( name: 'information' )}) 10px 5px no-repeat; } |
---|
27 | </style> |
---|
28 | |
---|
29 | <script type="text/javascript"> |
---|
30 | // We store urls here because they depend on the grails configuration. |
---|
31 | // This way, the URLs are always correct |
---|
32 | var visualizationUrls = { |
---|
33 | "getStudies": "<g:createLink action="getStudies" />", |
---|
34 | "getFields": "<g:createLink action="getFields" />", |
---|
35 | "getVisualizationTypes": "<g:createLink action="getVisualizationTypes" />", |
---|
36 | "getData": "<g:createLink action="getData" />" |
---|
37 | }; |
---|
38 | </script> |
---|
39 | </head> |
---|
40 | <body> |
---|
41 | |
---|
42 | <div id="data"> |
---|
43 | <form id="visualizationForm"> |
---|
44 | <div id="top_container"> |
---|
45 | |
---|
46 | <span class="menu_seperator"> </span> |
---|
47 | |
---|
48 | <span class="topmenu_item" id="menu_study"> |
---|
49 | <span class="topmenu_item_label"><img src="${fam.icon( name: 'report' )}" style="vertical-align: text-bottom; display: inline-block;"/> Study<img src="${resource(dir: 'images', file: 'spinner.gif')}" class="spinner" />:</span> |
---|
50 | <span class="topmenu_item_info">no study selected</span> |
---|
51 | <img src="${fam.icon( name: 'bullet_arrow_down' )}" style="vertical-align: text-bottom; display: inline-block;"/> |
---|
52 | <div class="formulier"> |
---|
53 | <p class="info">Select a study from the list below.</p> |
---|
54 | <p> |
---|
55 | <g:select from="${studies}" size="4" optionKey="id" optionValue="title" name="study" onChange="changeStudy();"/> |
---|
56 | </p> |
---|
57 | </div> |
---|
58 | </span> |
---|
59 | |
---|
60 | |
---|
61 | |
---|
62 | <span class="menu_seperator"> </span> |
---|
63 | |
---|
64 | <span class="topmenu_item" id="menu_advanced"> |
---|
65 | <span class="topmenu_item_label"><img src="${fam.icon( name: 'cog' )}" style="vertical-align: text-bottom; display: inline-block;"/> Advanced settings</span> |
---|
66 | <img src="${fam.icon( name: 'bullet_arrow_down' )}" style="vertical-align: text-bottom; display: inline-block;"/> |
---|
67 | <div class="formulier"> |
---|
68 | <p class="info">Advanced settings.</p> |
---|
69 | <p> |
---|
70 | Visualize the data as soon as enough parameters are known. |
---|
71 | <input type="checkbox" name="autovis" id="autovis" CHECKED/> |
---|
72 | </p> |
---|
73 | </div> |
---|
74 | </span> |
---|
75 | |
---|
76 | <span class="menu_seperator"> </span> |
---|
77 | |
---|
78 | <span class="topmenu_item" id="message_counter" onClick="; return false;"> |
---|
79 | <span class="topmenu_item_label"><img src="${fam.icon( name: 'email_error' )}" style="vertical-align: text-bottom; display: inline-block;"/> Messages:</span> |
---|
80 | <span class="topmenu_item_info">0</span> |
---|
81 | <img src="${fam.icon( name: 'bullet_arrow_down' )}" style="vertical-align: text-bottom; display: inline-block;"/> |
---|
82 | <div class="formulier"> |
---|
83 | <p class="info">Messages:</p> |
---|
84 | <div id="message_container"> |
---|
85 | <g:if test="${flash.error}"> |
---|
86 | <div class="message_box message_error"> |
---|
87 | ${flash.error.toString().encodeAsHTML()} |
---|
88 | </div> |
---|
89 | </g:if> |
---|
90 | <g:if test="${flash.message}"> |
---|
91 | <div class="message_box message_warning"> |
---|
92 | ${flash.message.toString().encodeAsHTML()} |
---|
93 | </div> |
---|
94 | </g:if> |
---|
95 | </div> |
---|
96 | </div> |
---|
97 | </span> |
---|
98 | |
---|
99 | <span class="menu_seperator"> </span> |
---|
100 | |
---|
101 | </div> |
---|
102 | |
---|
103 | <div id="bottom_container"> |
---|
104 | |
---|
105 | <div id="menu_container"> |
---|
106 | <div class="menu_item" id="menu_column"> |
---|
107 | <div class="menu_item_label">X-Axis <img src="${resource(dir: 'images', file: 'spinner.gif')}" class="spinner" /></div> |
---|
108 | <p class="info">Select a field for the X-Axis from the list below. This field will be visible as columns in the table visualization.</p> |
---|
109 | <p> |
---|
110 | <select id="columns" name="columns" size="6" onChange="changeFields('menu_column');"></select> |
---|
111 | </p> |
---|
112 | </div> |
---|
113 | <div class="menu_item" id="menu_row"> |
---|
114 | <div class="menu_item_label">Y-Axis <img src="${resource(dir: 'images', file: 'spinner.gif')}" class="spinner" /></div> |
---|
115 | <p class="info">Select a field for the Y-Axis from the list below. This field will be visible as rows in the table visualization.</p> |
---|
116 | <p> |
---|
117 | <select id="rows" name="rows" size="6" onChange="changeFields('menu_row');"></select> |
---|
118 | </p> |
---|
119 | </div> |
---|
120 | <div class="menu_item" id="menu_vis"> |
---|
121 | <div class="menu_item_label">Type <img src="${resource(dir: 'images', file: 'spinner.gif')}" class="spinner" /></div> |
---|
122 | <p class="info">Select visualization type.</p> |
---|
123 | <p> |
---|
124 | <select id="types" name="types" size="3" onChange="changeVis();"></select> |
---|
125 | </p> |
---|
126 | </div> |
---|
127 | <div class="menu_item" id="menu_go"> |
---|
128 | <button id="button_visualize" onClick="visualize(); return false;" > |
---|
129 | VISUALIZE |
---|
130 | </button> |
---|
131 | </div> |
---|
132 | </div> |
---|
133 | |
---|
134 | <div id="visualization_container"> |
---|
135 | <div id="visualization"><div style="padding: 30px">Select a study to start.</div> |
---|
136 | </div> |
---|
137 | </div> |
---|
138 | |
---|
139 | <br clear="all"/> |
---|
140 | |
---|
141 | </div> |
---|
142 | </form> |
---|
143 | </div> |
---|
144 | </body> |
---|
145 | </html> |
---|
146 | |
---|
147 | |
---|
148 | |
---|