X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Fpakfire.cgi;h=464d8d8c18e4485d6c38ee8ebe00a6f3ab5647b2;hp=41845e4fbda10d9c5f886991608b58392848bfbd;hb=bac7231b69d9847a51673bda2dde9956609b8ccd;hpb=78331e301975a38f952ad9311a7ff3201e5a5e2e diff --git a/html/cgi-bin/pakfire.cgi b/html/cgi-bin/pakfire.cgi index 41845e4fbd..464d8d8c18 100644 --- a/html/cgi-bin/pakfire.cgi +++ b/html/cgi-bin/pakfire.cgi @@ -6,20 +6,18 @@ # # This code is distributed under the terms of the GPL # -# (c) Eric Oberlander June 2002 -# -# (c) Darren Critchley June 2003 - added real time clock setting, etc # use strict; # enable only the following on debugging purpose -#use warnings; -#use CGI::Carp 'fatalsToBrowser'; +use warnings; +use CGI::Carp 'fatalsToBrowser'; -require 'CONFIG_ROOT/general-functions.pl'; +require '/var/ipfire/general-functions.pl'; require "${General::swroot}/lang.pl"; require "${General::swroot}/header.pl"; +require "/opt/pakfire/lib/functions.pl"; my %pakfiresettings=(); my $errormessage = ''; @@ -29,75 +27,186 @@ my $errormessage = ''; $pakfiresettings{'ACTION'} = ''; $pakfiresettings{'VALID'} = ''; -$pakfiresettings{'INSTALLED'} = ''; -$pakfiresettings{'AVAIL'} = ''; -$pakfiresettings{'AUTOUPD'} = ''; +$pakfiresettings{'INSPAKS'} = ''; +$pakfiresettings{'DELPAKS'} = ''; +$pakfiresettings{'AUTOUPDATE'} = 'off'; +$pakfiresettings{'UUID'} = 'on'; &Header::getcgihash(\%pakfiresettings); -if ($pakfiresettings{'ACTION'} eq $Lang::tr{'save'}) -{ +&Header::openpage($Lang::tr{'pakfire configuration'}, 1); +&Header::openbigbox('100%', 'left', '', $errormessage); + +if ($pakfiresettings{'ACTION'} eq 'install'){ + $pakfiresettings{'INSPAKS'} =~ s/\|/\ /g; + if ("$pakfiresettings{'FORCE'}" eq "on") { + my $command = "/usr/local/bin/pakfire install --non-interactive $pakfiresettings{'INSPAKS'} &>/dev/null &"; + system("$command"); + sleep(2); + } else { + &Header::openbox("100%", "center", "Abfrage"); + my @output = `/usr/local/bin/pakfire resolvedeps $pakfiresettings{'INSPAKS'}`; + print <$Lang::tr{'pakfire install package'}.$pakfiresettings{'INSPAKS'}.$Lang::tr{'pakfire possible dependency'} +
		
+END
+		foreach (@output) {
+			print "$_\n";
+		}
+		print <
+		$Lang::tr{'pakfire accept all'}
+		 
+		
+ + + + +
+ +
+ + +
+ +END + &Header::closebox(); + &Header::closebigbox(); + &Header::closepage(); + exit; + } +} elsif ($pakfiresettings{'ACTION'} eq 'remove') { + +} elsif ($pakfiresettings{'ACTION'} eq 'update') { + + system("/usr/local/bin/pakfire update --force"); + +} elsif ($pakfiresettings{'ACTION'} eq 'upgrade') { + + system("/usr/local/bin/pakfire upgrade -y"); + +} elsif ($pakfiresettings{'ACTION'} eq "$Lang::tr{'save'}") { + + &General::writehash("${General::swroot}/pakfire/settings", \%pakfiresettings); } &General::readhash("${General::swroot}/pakfire/settings", \%pakfiresettings); - my %selected=(); my %checked=(); -$checked{'AUTOUPD'}{'off'} = ''; -$checked{'AUTOUPD'}{'on'} = ''; -$checked{'AUTOUPD'}{$pakfiresettings{'AUTOUPD'}} = "checked='checked'"; - -&Header::openpage($Lang::tr{'pakfire configuration'}, 1, $refresh); - -&Header::openbigbox('100%', 'left', '', $errormessage); +$checked{'AUTOUPDATE'}{'off'} = ''; +$checked{'AUTOUPDATE'}{'on'} = ''; +$checked{'AUTOUPDATE'}{$pakfiresettings{'AUTOUPDATE'}} = "checked='checked'"; +$checked{'UUID'}{'off'} = ''; +$checked{'UUID'}{'on'} = ''; +$checked{'UUID'}{$pakfiresettings{'UUID'}} = "checked='checked'"; # DPC move error message to top so it is seen! if ($errormessage) { &Header::openbox('100%', 'left', $Lang::tr{'error messages'}); print "$errormessage \n"; &Header::closebox(); - } +} -print "
\n"; - -&Header::openbox('100%', 'left', $Lang::tr{'network pakfire'}); -print < - - - $Lang::tr{'network pakfire from'} - - -   - +my $return = `pidof pakfire`; +chomp($return); +if ($return) { + &Header::openbox("100%", "center", "Aktiv"); + print < + + $Lang::tr{  + + $Lang::tr{'pakfire working'} + + + + + ### TO BE CONTINUED.... WE HAVE TO BEAUTIFY THIS A LITTLE BIT :D +
 END
-;
-
-
-print <
-
-
- - - - - - -
* $Lang::tr{'this field may be blank'} - -
+my @output = `tail /var/log/messages | grep pakfire`; +foreach (@output) { + print "$_"; +} +print < + END -; + ### TO BE CONTINUED.... WE HAVE TO BEAUTIFY THIS A LITTLE BIT :D + &Header::closebox(); + &Header::closebigbox(); + &Header::closepage(); + exit; +} -&Header::closebox(); +&Header::openbox("100%", "center", "Pakfire"); -print "\n"; +system("pakfire update &>dev/null"); -&Header::closebigbox(); +print < + Verfuegbare Addons:
+
+ + +

+ +
+ +
+
+ +
+ + + + $Lang::tr{'pakfire installed addons'}
+ +END + + &Pakfire::dblist("upgrade", "forweb"); + +print < + + + +


+
+ +
$Lang::tr{'pakfire update daily'} + + $Lang::tr{'pakfire register'} + +
+
+
+END +&Header::closebox(); +&Header::closebigbox(); +&Header::closepage();