1
<?xml version="1.0" encoding="utf-8"?>
2
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3
<xsl:output encoding="utf-8"/>
5
<xsl:template match="streams">
6
<xsl:for-each select="type">
7
<xsl:variable name="title">
9
<xsl:when test="@name=uw">UW</xsl:when>
10
<xsl:when test="@name='ipe3_energy'">IPE3 Energy</xsl:when>
11
<xsl:when test="@name='ipe3_waveform'">IPE3 Waveform</xsl:when>
12
<xsl:when test="@name='ipe3_histogram'">IPE3 Histogram</xsl:when>
13
<xsl:when test="@name='ipe4_energy'">IPE4 Energy</xsl:when>
14
<xsl:when test="@name='ipe4_waveform'">IPE4 Waveform</xsl:when>
15
<xsl:when test="@name='ipe4_histogram'">IPE4 Histogram</xsl:when>
18
<xsl:element name="img">
19
<xsl:attribute name="src">
20
<xsl:text>setups/katrin/images/</xsl:text>
21
<xsl:value-of select="@name" />
22
<xsl:text>.png</xsl:text>
24
<xsl:attribute name="height">16</xsl:attribute>
25
<xsl:attribute name="alt">
26
<xsl:value-of select="$title" />
28
<xsl:attribute name="title">
29
<xsl:value-of select="$title" />
31
<xsl:attribute name="style">
32
<xsl:text>margin: 0 5px; vertical-align: middle</xsl:text>
38
<!-- Helper template for page links in last runs view -->
39
<xsl:template name="page_link">
40
<xsl:param name="page" />
41
<xsl:param name="current" />
43
<xsl:variable name="text">
44
<xsl:text>[</xsl:text>
45
<xsl:value-of select="$page" />
46
<xsl:text>]</xsl:text>
49
<xsl:if test="$page=$current">
50
<xsl:value-of select="$text" />
52
<xsl:if test="not($page=$current)">
53
<xsl:element name="a">
54
<xsl:attribute name="href">
55
<xsl:text>javascript:katrin.SetCustomProperties('kdb_page=</xsl:text>
56
<xsl:value-of select="$page" />
57
<xsl:text>')</xsl:text>
59
<xsl:value-of select="$text" />
64
<xsl:template name="navigation">
65
<xsl:text>Page: </xsl:text>
66
<xsl:call-template name="page_link">
67
<xsl:with-param name="page" select="1" />
68
<xsl:with-param name="current" select="@page" />
70
<xsl:if test="number(@page)>3">
71
<xsl:text> ... </xsl:text>
73
<xsl:if test="number(@page)>2">
74
<xsl:call-template name="page_link">
75
<xsl:with-param name="page" select="number(@page)-1" />
76
<xsl:with-param name="current" select="@page" />
79
<xsl:if test="number(@page)>1">
80
<xsl:call-template name="page_link">
81
<xsl:with-param name="page" select="@page" />
82
<xsl:with-param name="current" select="@page" />
85
<xsl:if test="number(@page)<number(@pages)">
86
<xsl:call-template name="page_link">
87
<xsl:with-param name="page" select="number(@page)+1" />
88
<xsl:with-param name="current" select="@page" />
91
<xsl:if test="number(@page)<number(@pages)-2">
92
<xsl:text> ... </xsl:text>
94
<xsl:if test="number(@page)<number(@pages)-1">
95
<xsl:call-template name="page_link">
96
<xsl:with-param name="page" select="@pages" />
97
<xsl:with-param name="current" select="@page" />
102
<xsl:template match="status">
103
<xsl:variable name="color">
105
<xsl:when test=". = 'Ok'">
106
<xsl:text>#008000</xsl:text>
108
<xsl:when test=". = 'Error'">
109
<xsl:text>#800000</xsl:text>
112
<xsl:text>#000000</xsl:text>
117
<xsl:element name="span">
118
<xsl:attribute name="style">
119
<xsl:text>font-weight: bold; color: </xsl:text>
120
<xsl:value-of select="$color" />
122
<xsl:value-of select="." />
126
<!-- Template for runs list in last runs view -->
127
<xsl:template match="runs">
130
<td style="text-align:left">
131
<xsl:call-template name="navigation" />
133
<td style="text-align:right">
134
<xsl:if test="string-length(@filter) > 0">
135
<a href="javascript:adei.OpenControl('filter')">
136
<xsl:text>Filter</xsl:text>
138
<xsl:text>: </xsl:text>
139
<span class="search">
140
<xsl:value-of select="@filter" />
144
<xsl:if test="string-length(@search) > 0">
145
<xsl:text>Search: "</xsl:text>
146
<span class="search">
147
<xsl:value-of select="@search" />
149
<xsl:text>" (</xsl:text>
150
<a href="javascript:katrin.SetCustomProperties('kdb_search=&kdb_parameters=&kdb_date=')">
151
<xsl:text>Clear</xsl:text>
153
<xsl:text>)</xsl:text>
156
<xsl:if test="string-length(@window) > 0">
157
<xsl:text>Selected time window (</xsl:text>
158
<a href="javascript:katrin.SetCustomProperties('kdb_window=&kdb_date=')">
159
<xsl:text>Clear</xsl:text>
161
<xsl:text>)</xsl:text>
166
<xsl:if test="count(run) > 0">
167
<table class="border" border="1" cellspacing="0" cellpadding="5" width="100%">
169
<th class="border overview">Identifier</th>
170
<th class="border overview">Start (UTC)</th>
171
<th class="border overview">Duration</th>
172
<th class="border overview">Subruns</th>
173
<th class="border overview">Data</th>
174
<th class="border overview">Status</th>
175
<th class="border" style="width:100%">Comment</th>
177
<xsl:for-each select="run">
179
<td class="border overview">
180
<xsl:element name="a">
181
<xsl:attribute name="href">
182
<xsl:text>javascript:katrin.SetCustomProperties('kdb_run=</xsl:text>
183
<xsl:value-of select="identifier" />
184
<xsl:text>&kdb_subruns=')</xsl:text>
186
<xsl:value-of select="identifier" />
189
<td class="border overview date">
190
<xsl:value-of select="start" />
192
<td class="border overview">
193
<xsl:value-of select="duration" />
195
<td class="border overview">
196
<xsl:value-of select="subruns" />
198
<td class="border overview">
199
<xsl:apply-templates select="streams" />
201
<td class="border overview">
202
<xsl:apply-templates select="status" />
204
<td class="border overview" style="text-align: left">
205
<xsl:value-of select="comment" />
211
<xsl:if test="count(run) = 0">
212
<div>No runs found</div>
216
<td style="text-align:left">
217
<xsl:call-template name="navigation" />
219
<td style="text-align:right">
225
<xsl:template match="loading">
226
<script type="text/javascript">
227
adei.OpenControl('filter');
228
filter.SetSearch('<xsl:value-of select="@search"/>', '<xsl:value-of select="@parameters"/>', '<xsl:value-of select="@window"/>');
232
<xsl:template match="error">
233
<h3>Invalid filter</h3>
234
<p><xsl:value-of select="." /></p>
237
<xsl:template match="help">
238
<script type="text/javascript">
239
filter.FocusParameters();
241
<xsl:apply-templates select="error" />
242
<h3>Filter Description</h3>
243
<p>The run list can be filtered by defining a filter with predefined
245
<p>The general filter format is:</p>
246
<p class="code">parameter OP value[, parameter OP value, ...]</p>
249
<span class="variable">OP</span> can be one of <, <=, =,
253
<span class="variable">value</span> is a numeric value, scientific
257
<span class="variable">parameter</span> is a predefined parameter
258
name. Currently the following parameters are defined:
259
<div style="padding=5px">
260
<table class="border" border="1">
262
<th class="border">Parameter</th>
263
<th class="border">Description</th>
265
<xsl:for-each select="parameter">
268
<xsl:value-of select="name" />
271
<xsl:value-of select="description" />
279
<p>If more than one filter is specified they are combined using an AND
283
<xsl:template match="/result">
284
<div style="margin: 10px">
286
<xsl:when test="Error">
288
<xsl:value-of select="Error" />
290
<xsl:when test="runs">
291
<xsl:apply-templates select="runs" />
293
<xsl:when test="loading">
294
<xsl:apply-templates select="loading" />
296
<xsl:when test="help">
297
<xsl:apply-templates select="help" />