1 <% include('elements/svc_Common.html',
5 'html_foot' => $html_foot,
10 use Date::Parse 'str2time';
12 my $conf = new FS::Conf;
13 my $date_format = $conf->config('date_format') || '%m/%d/%Y';
15 my $fields = FS::svc_port->table_info->{'fields'};
16 my %labels = map { $_ => ( ref($fields->{$_})
17 ? $fields->{$_}{'label'}
21 my @fields = keys %$fields;
24 if ( $cgi->param('svcnum') ) {
25 $cgi->param('svcnum') =~ /^(\d+)$/ or die "unparsable svcnum";
28 my($query) = $cgi->keywords;
29 $query =~ /^(\d+)$/ or die "no svcnum";
35 if ( $cgi->param('start') && $cgi->param('end') ) {
36 $start = $cgi->param('start');
37 $end = $cgi->param('end');
41 my($start,$end,$label,$date_format) = (shift,shift,shift,shift);
42 $start = time2str($date_format,$start);
43 $end = time2str($date_format,$end);
44 return '<A HREF="javascript:void(0);" onclick="preset_range(\''
45 .$start.'\',\''.$end.'\')">'.$label.'</A>';
49 my $default_end = time;
50 my $default_start = $default_end-86400;
54 $graph = "<BR><BR><IMG SRC=${p}/view/port_graph.html?svcnum=$svcnum;".
55 "start=".str2time($start).";end=".str2time($end).">";
59 <script type="text/javascript">
60 function preset_range(start,end){
61 document.getElementById(\'start_text\').value = start;
62 document.getElementById(\'end_text\').value = end;
65 <FORM ACTION=? METHOD="GET">
66 <INPUT TYPE="HIDDEN" NAME="svcnum" VALUE="'.$svcnum.'">
67 <B>Bandwidth Graph</B><BR>
68 '.preset_range($default_start,$default_end,'Last Day',$date_format)
69 .' | '.preset_range($default_end-86400*7,$default_end,'Last Week',$date_format)
70 .' | '.preset_range($default_end-86400*30,$default_end,'Last Month',$date_format)
71 .' | '.preset_range($default_end-86400*365,$default_end,'Last Year',$date_format)
74 . include('/elements/tr-input-date-field.html', {
76 'label' => 'Start Date',
79 . include('/elements/tr-input-date-field.html', {
81 'label' => 'End Date',
85 . '<TR><TD colspan="2"><input type="submit" value="Display"></TR>