mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-09 18:45:54 +02:00
Ein Paar Ideen vom Benne umgesetzt.
git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@377 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
This commit is contained in:
@@ -144,7 +144,7 @@ elsif ($cgigraphs[1] =~ /(hdd)/)
|
||||
{
|
||||
my $output = `/bin/cat /var/log/hddgraph_smartctl_out`;
|
||||
$output = &Header::cleanhtml($output);
|
||||
print "<hr><pre>$output</pre>\n";
|
||||
print "<hr><table border=0><tr><td align=left><pre>$output</pre></table>\n";
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -223,7 +223,7 @@ else
|
||||
my $ftime = localtime((stat("$graphdir/hddtemp-day.png"))[9]);
|
||||
print "<center>";
|
||||
print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br /><hr />\n";
|
||||
print "<a href='/cgi-bin/hddgraph.cgi?graph=hdd'>";
|
||||
print "<a href='/cgi-bin/hardwaregraphs.cgi?graph=hdd'>";
|
||||
print "<img src='/graphs/hddtemp-day.png' border='0' /><hr />";
|
||||
print "</a>";
|
||||
}
|
||||
|
||||
@@ -20,7 +20,6 @@ require "${General::swroot}/header.pl";
|
||||
my %cgiparams=();
|
||||
my $death = 0;
|
||||
my $rebirth = 0;
|
||||
my $default_time = '03:15';
|
||||
|
||||
&Header::showhttpheaders();
|
||||
|
||||
@@ -30,34 +29,11 @@ $cgiparams{'ACTION'} = '';
|
||||
if ($cgiparams{'ACTION'} eq $Lang::tr{'shutdown'}) {
|
||||
$death = 1;
|
||||
&General::log($Lang::tr{'shutting down ipfire'});
|
||||
#system '/usr/local/bin/ipfiredeath';
|
||||
system '/usr/local/bin/ipfirereboot down';
|
||||
} elsif ($cgiparams{'ACTION'} eq $Lang::tr{'reboot'}) {
|
||||
$rebirth = 1;
|
||||
&General::log($Lang::tr{'rebooting ipfire'});
|
||||
#system '/usr/local/bin/ipfirerebirth';
|
||||
system '/usr/local/bin/ipfirereboot boot';
|
||||
} elsif ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) {
|
||||
my $days='';
|
||||
my $n = 1;
|
||||
# build list of days
|
||||
map ($cgiparams{$_} eq 'on' ? $days .= ",".$n++ : $n++ ,
|
||||
('MONDAY','TUESDAY','WEDNESDAY','THURSDAY','FRIDAY','SATURDAY','SUNDAY') );
|
||||
|
||||
# if days is empty, it is a remove else it is a change
|
||||
if (length ($days)){
|
||||
substr($days,0,1) = ''; #kill front comma
|
||||
&General::log("Scheduling reboot on $days at $cgiparams{'TIME'}");
|
||||
my $min;
|
||||
my $hour;
|
||||
($hour,$min) = split (':', $cgiparams{'TIME'});
|
||||
$days = "'*'" if ($days eq '1,2,3,4,5,6,7');
|
||||
my $mode = ($cgiparams{'MODE'} eq 'halt') ? '-h' : '-r';
|
||||
system "/usr/local/bin/ipfirereboot cron+ $min $hour $days $mode"; #reboot checks values of $hour & $min
|
||||
} else {
|
||||
&General::log("Remove scheduled reboot");
|
||||
system '/usr/local/bin/ipfirereboot cron-';
|
||||
}
|
||||
}
|
||||
if ($death == 0 && $rebirth == 0) {
|
||||
|
||||
@@ -79,121 +55,6 @@ END
|
||||
;
|
||||
&Header::closebox();
|
||||
|
||||
&Header::openbox('100%', 'left', $Lang::tr{'reboot schedule'});
|
||||
my %checked=();
|
||||
my $reboot_at = $default_time;
|
||||
my $days = '';
|
||||
|
||||
#decode the shutdown line stored in crontab
|
||||
#get the line
|
||||
open(FILE, "/usr/local/bin/ipfirereboot cron?|");
|
||||
my $schedule = <FILE>;
|
||||
close (FILE);
|
||||
|
||||
if ($schedule) { # something exist
|
||||
$schedule =~ /(\d+) (\d+) \* \* ([1234567*,]+) .* (-[h|r])/;
|
||||
$reboot_at = sprintf("%.02d",$2) . ':' . sprintf("%.02d",$1); # hour (03:45)
|
||||
$days = $3; # 1,2,3... or *
|
||||
if ($4 eq '-h') {
|
||||
$checked{'MODE'}{'halt'} = "checked='checked'";
|
||||
} else {
|
||||
$checked{'MODE'}{'reboot'} = "checked='checked'";
|
||||
}
|
||||
}
|
||||
#decode $days
|
||||
if ($days eq '*') {
|
||||
$checked{'MONDAY'} = "checked='checked'";
|
||||
$checked{'TUESDAY'} = "checked='checked'";
|
||||
$checked{'WEDNESDAY'} = "checked='checked'";
|
||||
$checked{'THURSDAY'} = "checked='checked'";
|
||||
$checked{'FRIDAY'} = "checked='checked'";
|
||||
$checked{'SATURDAY'} = "checked='checked'";
|
||||
$checked{'SUNDAY'} = "checked='checked'";
|
||||
} else {
|
||||
$checked{'MONDAY'} = "checked='checked'" if ($days =~ /1/);
|
||||
$checked{'TUESDAY'} = "checked='checked'" if ($days =~ /2/);
|
||||
$checked{'WEDNESDAY'} = "checked='checked'" if ($days =~ /3/);
|
||||
$checked{'THURSDAY'} = "checked='checked'" if ($days =~ /4/);
|
||||
$checked{'FRIDAY'} = "checked='checked'" if ($days =~ /5/);
|
||||
$checked{'SATURDAY'} = "checked='checked'" if ($days =~ /6/);
|
||||
$checked{'SUNDAY'} = "checked='checked'" if ($days =~ /7/);
|
||||
}
|
||||
|
||||
print <<END
|
||||
<table width='100%'>
|
||||
<tr>
|
||||
<td class='boldbase' colspan='2'><b>$Lang::tr{'time'}</b></td>
|
||||
<td class='boldbase' colspan='2'><b>$Lang::tr{'day'}</b></td>
|
||||
<td class='boldbase'><b>$Lang::tr{'action'}</b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
END
|
||||
;
|
||||
print "<td align='left' width='15%' class='base' valign='top' rowspan='2'>", &select_hour_var("TIME", $reboot_at);
|
||||
print <<END
|
||||
</td>
|
||||
<td>
|
||||
<input type='checkbox' name='MONDAY' $checked{'MONDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'monday'}</td>
|
||||
<td>
|
||||
<input type='radio' name='MODE' value='reboot' $checked{'MODE'}{'reboot'} /></td>
|
||||
<td width='70%' class='base'>$Lang::tr{'reboot'}</td></tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type='checkbox' name='TUESDAY' $checked{'TUESDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'tuesday'}</td>
|
||||
<td>
|
||||
<input type='radio' name='MODE' value='halt' $checked{'MODE'}{'halt'} /></td>
|
||||
<td class='base'>$Lang::tr{'shutdown'}</td></tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<input type='checkbox' name='WEDNESDAY' $checked{'WEDNESDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'wednesday'}</td></tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<input type='checkbox' name='THURSDAY' $checked{'THURSDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'thursday'}</td></tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<input type='checkbox' name='FRIDAY' $checked{'FRIDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'friday'}</td></tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<input type='checkbox' name='SATURDAY' $checked{'SATURDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'saturday'}</td></tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<input type='checkbox' name='SUNDAY' $checked{'SUNDAY'}></td>
|
||||
<td width='15%' class='base'>
|
||||
$Lang::tr{'sunday'}</td></tr>
|
||||
</table>
|
||||
|
||||
<table width='100%'>
|
||||
<hr />
|
||||
<tr>
|
||||
<td width='60%'> </td>
|
||||
<td width='30%' align='center'>
|
||||
<input type='submit' name='ACTION' value='$Lang::tr{'save'}' />
|
||||
</td>
|
||||
<td width='10%' align='right'>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
END
|
||||
;
|
||||
&Header::closebox();
|
||||
print "</form>\n";
|
||||
} else {
|
||||
my $message='';
|
||||
my $title='';
|
||||
@@ -224,26 +85,3 @@ END
|
||||
|
||||
&Header::closebigbox();
|
||||
&Header::closepage();
|
||||
|
||||
|
||||
|
||||
# Create a named select box containing valid times from quarter to quarter.
|
||||
sub select_hour_var {
|
||||
# Create a variable containing the SELECT with selected value variable name and current value selected
|
||||
my $select_hour_var = shift;
|
||||
my $selected_hour = shift;
|
||||
|
||||
my $select_hour = "<select name='$select_hour_var'>";
|
||||
my $hh = 0;
|
||||
my $mm = 15;
|
||||
my $str = '00:00';
|
||||
for (my $x=0; $x<(24*4); $x++) {
|
||||
my $check = $selected_hour eq $str ? "selected='selected'" : '';
|
||||
$select_hour .= "<Option $check value='$str'>$str";
|
||||
$str = sprintf("%.02d", $hh) . ":" . sprintf("%.02d", $mm);
|
||||
$mm += 15;
|
||||
if ($mm==60) {$mm=0; $hh++; }
|
||||
}
|
||||
$select_hour .= "</select>\n";
|
||||
return ($select_hour);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user