X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=html%2Fcgi-bin%2Fpakfire.cgi;h=143f123b7f71853905175421fe21c55cb73ea96f;hb=046ef135e667e8727d0826891004870d980a2feb;hp=a1a14c7acf96eb8cc8a6689fefdaea93c457a1ab;hpb=74693811db6303d468fa2ea823453f804b92bb03;p=ipfire-2.x.git
diff --git a/html/cgi-bin/pakfire.cgi b/html/cgi-bin/pakfire.cgi
index a1a14c7acf..143f123b7f 100644
--- a/html/cgi-bin/pakfire.cgi
+++ b/html/cgi-bin/pakfire.cgi
@@ -1,18 +1,29 @@
#!/usr/bin/perl
-#
-# IPFire CGIs
-#
-# This file is part of the IPFire Project
-#
-# This code is distributed under the terms of the GPL
-#
-#
+###############################################################################
+# #
+# IPFire.org - A linux based firewall #
+# Copyright (C) 2007-2011 Michael Tremer & Christian Schmidt #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see
+END foreach (@output) { + $_ =~ s/\\[[0-1]\;[0-9]+m//g; print "$_\n"; } print <- + END @@ -81,15 +101,16 @@ END if ("$pakfiresettings{'FORCE'}" eq "on") { my $command = "/usr/local/bin/pakfire remove --non-interactive --no-colors $pakfiresettings{'DELPAKS'} &>/dev/null &"; system("$command"); - sleep(2); + system("/bin/sleep 1"); } else { - &Header::openbox("100%", "center", "Abfrage"); + &Header::openbox("100%", "center", $Lang::tr{'request'}); my @output = `/usr/local/bin/pakfire resolvedeps --no-colors $pakfiresettings{'DELPAKS'}`; print < $Lang::tr{'pakfire uninstall package'}.$pakfiresettings{'DELPAKS'}.$Lang::tr{'pakfire possible dependency'} - +END foreach (@output) { + $_ =~ s/\\[[0-1]\;[0-9]+m//g; print "$_\n"; } print <- + END @@ -116,17 +137,22 @@ END } } elsif ($pakfiresettings{'ACTION'} eq 'update') { - - system("/usr/local/bin/pakfire update --force --no-colors"); + system("/usr/local/bin/pakfire update --force --no-colors &>/dev/null &"); + system("/bin/sleep 1"); } elsif ($pakfiresettings{'ACTION'} eq 'upgrade') { - - system("/usr/local/bin/pakfire upgrade -y --no-colors"); - + my $command = "/usr/local/bin/pakfire upgrade -y --no-colors &>/dev/null &"; + system("$command"); + system("/bin/sleep 1"); } elsif ($pakfiresettings{'ACTION'} eq "$Lang::tr{'save'}") { - &General::writehash("${General::swroot}/pakfire/settings", \%pakfiresettings); + if ($pakfiresettings{'AUTOUPDATE'} eq 'on') { + system("/usr/local/bin/pakfire enable updates >/dev/null 2>&1"); + } else { + system("/usr/local/bin/pakfire disable updates >/dev/null 2>&1"); + } + &General::writehash("${General::swroot}/pakfire/settings", \%pakfiresettings); } &General::readhash("${General::swroot}/pakfire/settings", \%pakfiresettings); @@ -137,6 +163,9 @@ my %checked=(); $checked{'AUTOUPDATE'}{'off'} = ''; $checked{'AUTOUPDATE'}{'on'} = ''; $checked{'AUTOUPDATE'}{$pakfiresettings{'AUTOUPDATE'}} = "checked='checked'"; +$checked{'HEALTHCHECK'}{'off'} = ''; +$checked{'HEALTHCHECK'}{'on'} = ''; +$checked{'HEALTHCHECK'}{$pakfiresettings{'HEALTHCHECK'}} = "checked='checked'"; $checked{'UUID'}{'off'} = ''; $checked{'UUID'}{'on'} = ''; $checked{'UUID'}{$pakfiresettings{'UUID'}} = "checked='checked'"; @@ -151,94 +180,125 @@ if ($errormessage) { my $return = `pidof pakfire`; chomp($return); if ($return) { - &Header::openbox( 'Waiting', 1, "" ); + &Header::openbox( 'Waiting', 1, "" ); print < - + $Lang::tr{'pakfire working'} - +END - my @output = `tail -20 /var/log/pakfire.log`; + my @output = `grep pakfire /var/log/messages | tail -20`; foreach (@output) { - print "$_"; + print "$_
END &Header::closebox(); &Header::closebigbox(); &Header::closepage(); exit; + refreshpage(); } -&Header::openbox("100%", "center", "Pakfire"); +my $core_release = `cat /opt/pakfire/db/core/mine 2>/dev/null`; +chomp($core_release); +my $core_update_age = &General::age("/opt/pakfire/db/core/mine"); +my $corelist_update_age = &General::age("/opt/pakfire/db/lists/core-list.db"); +my $server_update_age = &General::age("/opt/pakfire/db/lists/server-list.db"); +my $packages_update_age = &General::age("/opt/pakfire/db/lists/packages_list.db"); -system("pakfire update &>dev/null"); +&Header::openbox("100%", "center", "Pakfire"); print <
"; } print <+ - Verfuegbare Addons:
++END +if ( -e "/var/run/need_reboot") { + print "
-"; + print " $Lang::tr{'needreboot'}! " +} +print < $Lang::tr{'pakfire system state'}: + + $Lang::tr{'pakfire core update level'}: $core_release
+ $Lang::tr{'pakfire last update'} $core_update_age $Lang::tr{'pakfire ago'}
+ $Lang::tr{'pakfire last serverlist update'} $server_update_age $Lang::tr{'pakfire ago'}
+ $Lang::tr{'pakfire last core list update'} $corelist_update_age $Lang::tr{'pakfire ago'}
+ $Lang::tr{'pakfire last package update'} $packages_update_age $Lang::tr{'pakfire ago'} + ++ + + + $Lang::tr{'pakfire available addons'} + $Lang::tr{'pakfire installed addons'} + + -$Lang::tr{'pakfire install description'}
+ -
- -
- - - -$Lang::tr{'pakfire installed addons'}
+ ++ $Lang::tr{'pakfire uninstall description'}
+
-