Skip to content

Commit ecbcbc3

Browse files
committed
suppress graph headers or labels when specified respective options
1 parent 92390f4 commit ecbcbc3

File tree

3 files changed

+101
-83
lines changed

3 files changed

+101
-83
lines changed

lib/HRForecast/Web.pm

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,18 @@ my $metrics_validator = [
192192
[['CHOICE',qw/1 0/],'invalid stack flag'],
193193
],
194194
},
195+
'graphheader' => {
196+
default => 1,
197+
rule => [
198+
[['CHOICE',qw/1 0/],'invalid graphheader flag'],
199+
],
200+
},
201+
'graphlabel' => {
202+
default => 1,
203+
rule => [
204+
[['CHOICE',qw/1 0/],'invalid graphlabel flag'],
205+
],
206+
},
195207
];
196208

197209
sub _build_metrics_params {

views/ifr.tx

Lines changed: 44 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -15,54 +15,57 @@ body {
1515
</head>
1616
<body>
1717

18-
<h3 style="margin: 0px;padding: 8px 20px 7px;border-bottom: solid 1px #999;"><a href="<: $c.req.uri_for('/view/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t => $valid.valid('t')] ) :>" target="_blank"><: $metrics.graph_name :></a> <small><: $metrics.description :></small></h3>
18+
: if $valid.valid('graphheader') != 0 {
19+
<h3 style="margin: 0px;padding: 8px 20px 7px;border-bottom: solid 1px #999;"><a href="<: $c.req.uri_for('/view/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t => $valid.valid('t')] ) :>" target="_blank"><: $metrics.graph_name :></a> <small><: $metrics.description :></small></h3>
1920

2021

21-
<div class="btn-toolbar" style="position:absolute;top:-2px;right:100px;padding-top:6px" role="toolbar">
22+
<div class="btn-toolbar" style="position:absolute;top:-2px;right:100px;padding-top:6px" role="toolbar">
2223

23-
<div class="btn-group">
24-
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'w') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'w']) :>">1週間</a>
25-
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'm') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'m']) :>">1ヶ月</a>
26-
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'y') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'y']) :>">1年</a>
27-
</div>
24+
<div class="btn-group">
25+
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'w') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'w']) :>">1週間</a>
26+
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'm') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'m']) :>">1ヶ月</a>
27+
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'y') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'y']) :>">1年</a>
28+
</div>
2829

29-
<div class="btn-group">
30-
<a class="btn btn-default btn-sm" href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[
31-
t=>$valid.valid('t'),
32-
from=>$valid.valid('from'),
33-
to=>$valid.valid('to'),
34-
period=>$valid.valid('period'),
35-
offset=>$valid.valid('offset'),
36-
d=>1,
37-
]) :>">EXPORT</a>
38-
<a class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
39-
<ul class="dropdown-menu">
40-
<li class="dropdown-header">CSV</li>
41-
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'w',d=>1]) :>">1週間</a></li>
42-
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'m',d=>1]) :>">1ヶ月</a></li>
43-
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'y',d=>1]) :>">1年</a></li>
44-
<li class="divider"></li>
45-
<li class="dropdown-header">HTML</li>
46-
<li><a href="<: $c.req.uri_for('/table/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'w',d=>1]) :>">1週間</a></li>
47-
<li><a href="<: $c.req.uri_for('/table/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'m',d=>1]) :>">1ヶ月</a></li>
48-
<li><a href="<: $c.req.uri_for('/table/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'y',d=>1]) :>">1年</a></li>
49-
</ul>
50-
</div><!-- /btn-group -->
30+
<div class="btn-group">
31+
<a class="btn btn-default btn-sm" href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[
32+
t=>$valid.valid('t'),
33+
from=>$valid.valid('from'),
34+
to=>$valid.valid('to'),
35+
period=>$valid.valid('period'),
36+
offset=>$valid.valid('offset'),
37+
d=>1,
38+
]) :>">EXPORT</a>
39+
<a class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
40+
<ul class="dropdown-menu">
41+
<li class="dropdown-header">CSV</li>
42+
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'w',d=>1]) :>">1週間</a></li>
43+
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'m',d=>1]) :>">1ヶ月</a></li>
44+
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'y',d=>1]) :>">1年</a></li>
45+
<li class="divider"></li>
46+
<li class="dropdown-header">HTML</li>
47+
<li><a href="<: $c.req.uri_for('/table/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'w',d=>1]) :>">1週間</a></li>
48+
<li><a href="<: $c.req.uri_for('/table/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'m',d=>1]) :>">1ヶ月</a></li>
49+
<li><a href="<: $c.req.uri_for('/table/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,[t=>'y',d=>1]) :>">1年</a></li>
50+
</ul>
51+
</div><!-- /btn-group -->
5152

52-
</div>
53+
</div>
54+
: }
5355

54-
<div id="graphdiv-0" data-index="0" class="metrics-graph" data-csv="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,$metrics_params) :>" data-datewindow="<: $date_window :>" data-colors="<: $metrics.colors :>" style="position:absolute;top:45px;bottom:5px;left:5px;right:200px;"></div>
55-
56-
<div style="position:absolute;width:198px;right:0px;top:45px;word-wrap:break-word;">
57-
<span id="label-0">
58-
<a href="<: $c.req.uri_for('/view/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,$metrics_params) :>" style="color:<: $metrics.color :>">
59-
<span style="font-weight:bold"><: '/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name :></span>
60-
</a>
61-
</span>
62-
<span id="onmouse-0" style="display:none;"></span>
63-
<span id="total-0"></span>
64-
</div>
56+
<div id="graphdiv-0" data-index="0" class="metrics-graph" data-csv="<: $c.req.uri_for('/csv/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,$metrics_params) :>" data-datewindow="<: $date_window :>" data-colors="<: $metrics.colors :>" style="position:absolute;top:<: ($valid.valid('graphheader') == 0) ? '0px' : '45px' :>;bottom:5px;left:5px;right:<: ($valid.valid('graphlabel') == 0) ? '50px' : '200px' :>;"></div>
6557

58+
: if $valid.valid('graphlabel') != 0 {
59+
<div style="position:absolute;width:198px;right:0px;top:<: ($valid.valid('graphheader') == 0) ? '0px' : '45px' :>;word-wrap:break-word;">
60+
<span id="label-0">
61+
<a href="<: $c.req.uri_for('/view/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name,$metrics_params) :>" style="color:<: $metrics.color :>">
62+
<span style="font-weight:bold"><: '/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name :></span>
63+
</a>
64+
</span>
65+
<span id="onmouse-0" style="display:none;"></span>
66+
<span id="total-0"></span>
67+
</div>
68+
: }
6669
<script type="text/javascript" src="<: $c.req.uri_for('/js/jquery-1.10.2.min.js') :>"></script>
6770
<script type="text/javascript" src="<: $c.req.uri_for('/js/bootstrap.min.js') :>"></script>
6871
<script type="text/javascript" src="<: $c.req.uri_for('/js/dygraph-combined.js') :>"></script>

views/ifr_complex.tx

Lines changed: 45 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -15,56 +15,59 @@ body {
1515
</head>
1616
<body>
1717

18-
<h3 style="margin: 0px;padding: 8px 20px 7px;border-bottom: solid 1px #999;"><a href="<: $c.req.uri_for('/view_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t => $valid.valid('t')] ) :>" target="_blank"><: $metrics.graph_name :></a> <small><: $metrics.description :></small></h3>
18+
: if $valid.valid('graphheader') != 0 {
19+
<h3 style="margin: 0px;padding: 8px 20px 7px;border-bottom: solid 1px #999;"><a href="<: $c.req.uri_for('/view_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t => $valid.valid('t')] ) :>" target="_blank"><: $metrics.graph_name :></a> <small><: $metrics.description :></small></h3>
1920

2021

21-
<div class="btn-toolbar" style="position:absolute;top:-1px;right:100px;padding-top:6px" role="toolbar">
22+
<div class="btn-toolbar" style="position:absolute;top:-1px;right:100px;padding-top:6px" role="toolbar">
2223

23-
<div class="btn-group">
24-
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'w') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'w']) :>">1週間</a>
25-
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'm') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'m']) :>">1ヶ月</a>
26-
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'y') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'y']) :>">1年</a>
27-
</div>
24+
<div class="btn-group">
25+
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'w') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'w']) :>">1週間</a>
26+
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'm') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'m']) :>">1ヶ月</a>
27+
<a class="btn btn-default btn-sm <: ($valid.valid('t') == 'y') ? 'active' : '' :>" href="<: $c.req.uri_for('/ifr_complex/'~$metrics.service_name~'/'~$metrics.section_name~'/'~$metrics.graph_name, [t=>'y']) :>">1年</a>
28+
</div>
2829

29-
<div class="btn-group">
30-
<a class="btn btn-default btn-sm" href="<: $c.req.uri_for('/csv/'~$metrics.uri,[
31-
t=>$valid.valid('t'),
32-
from=>$valid.valid('from'),
33-
to=>$valid.valid('to'),
34-
period=>$valid.valid('period'),
35-
offset=>$valid.valid('offset'),
36-
d=>1,
37-
]) :>">EXPORT</a>
38-
<a class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
39-
<ul class="dropdown-menu">
40-
<li class="dropdown-header">CSV</li>
41-
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.uri,[t=>'w',d=>1]) :>">1週間</a></li>
42-
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.uri,[t=>'m',d=>1]) :>">1ヶ月</a></li>
43-
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.uri,[t=>'y',d=>1]) :>">1年</a></li>
44-
<li class="divider"></li>
45-
<li class="dropdown-header">HTML</li>
46-
<li><a href="<: $c.req.uri_for('/table/'~$metrics.uri,[t=>'w',d=>1]) :>" target="_blank">1週間</a></li>
47-
<li><a href="<: $c.req.uri_for('/table/'~$metrics.uri,[t=>'m',d=>1]) :>" target="_blank">1ヶ月</a></li>
48-
<li><a href="<: $c.req.uri_for('/table/'~$metrics.uri,[t=>'y',d=>1]) :>" target="_blank">1年</a></li>
49-
</ul>
50-
</div><!-- /btn-group -->
30+
<div class="btn-group">
31+
<a class="btn btn-default btn-sm" href="<: $c.req.uri_for('/csv/'~$metrics.uri,[
32+
t=>$valid.valid('t'),
33+
from=>$valid.valid('from'),
34+
to=>$valid.valid('to'),
35+
period=>$valid.valid('period'),
36+
offset=>$valid.valid('offset'),
37+
d=>1,
38+
]) :>">EXPORT</a>
39+
<a class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
40+
<ul class="dropdown-menu">
41+
<li class="dropdown-header">CSV</li>
42+
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.uri,[t=>'w',d=>1]) :>">1週間</a></li>
43+
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.uri,[t=>'m',d=>1]) :>">1ヶ月</a></li>
44+
<li><a href="<: $c.req.uri_for('/csv/'~$metrics.uri,[t=>'y',d=>1]) :>">1年</a></li>
45+
<li class="divider"></li>
46+
<li class="dropdown-header">HTML</li>
47+
<li><a href="<: $c.req.uri_for('/table/'~$metrics.uri,[t=>'w',d=>1]) :>" target="_blank">1週間</a></li>
48+
<li><a href="<: $c.req.uri_for('/table/'~$metrics.uri,[t=>'m',d=>1]) :>" target="_blank">1ヶ月</a></li>
49+
<li><a href="<: $c.req.uri_for('/table/'~$metrics.uri,[t=>'y',d=>1]) :>" target="_blank">1年</a></li>
50+
</ul>
51+
</div><!-- /btn-group -->
5152

52-
</div>
53+
</div>
54+
: }
5355

54-
<div id="graphdiv-0" data-index="0" class="metrics-graph" data-csv="<: $c.req.uri_for('/csv/'~$metrics.uri,$metrics_params) :>" data-datewindow="<: $date_window :>" data-colors="<: $metrics.colors :>" data-stack="<: $metrics.stack :>" style="position:absolute;top:45px;bottom:5px;left:5px;right:200px;"></div>
56+
<div id="graphdiv-0" data-index="0" class="metrics-graph" data-csv="<: $c.req.uri_for('/csv/'~$metrics.uri,$metrics_params) :>" data-datewindow="<: $date_window :>" data-colors="<: $metrics.colors :>" data-stack="<: $metrics.stack :>" style="position:absolute;top:<: ($valid.valid('graphheader') == 0) ? '0px' : '45px' :>;bottom:5px;left:5px;right:<: ($valid.valid('graphlabel') == 0) ? '50px' : '200px' :>;"></div>
5557

56-
<div style="position:absolute;width:198px;right:0px;top:45px;word-wrap:break-word;">
57-
<span id="label-0">
58-
: for $metrics.metricses -> $i_metrics {
59-
<a href="<: $c.req.uri_for('/view/'~$i_metrics.service_name~'/'~$i_metrics.section_name~'/'~$i_metrics.graph_name,$metrics_params) :>" style="color:<: $i_metrics.color :>">
60-
<span style="font-weight:bold"><: '/'~$i_metrics.service_name~'/'~$i_metrics.section_name~'/'~$i_metrics.graph_name :></span>
61-
</a><br />
58+
: if $valid.valid('graphlabel') != 0 {
59+
<div style="position:absolute;width:198px;right:0px;top:<: ($valid.valid('graphheader') == 0) ? '0px' : '45px' :>;word-wrap:break-word;">
60+
<span id="label-0">
61+
: for $metrics.metricses -> $i_metrics {
62+
<a href="<: $c.req.uri_for('/view/'~$i_metrics.service_name~'/'~$i_metrics.section_name~'/'~$i_metrics.graph_name,$metrics_params) :>" style="color:<: $i_metrics.color :>">
63+
<span style="font-weight:bold"><: '/'~$i_metrics.service_name~'/'~$i_metrics.section_name~'/'~$i_metrics.graph_name :></span>
64+
</a><br />
65+
: }
66+
</span>
67+
<span id="onmouse-0" style="display:none;"></span>
68+
<span id="total-0"></span>
69+
</div>
6270
: }
63-
</span>
64-
<span id="onmouse-0" style="display:none;"></span>
65-
<span id="total-0"></span>
66-
</div>
67-
6871
<script type="text/javascript" src="<: $c.req.uri_for('/js/jquery-1.10.2.min.js') :>"></script>
6972
<script type="text/javascript" src="<: $c.req.uri_for('/js/bootstrap.min.js') :>"></script>
7073
<script type="text/javascript" src="<: $c.req.uri_for('/js/dygraph-combined.js') :>"></script>

0 commit comments

Comments
 (0)