-sub isautorun{
- my $cmd = $_[0];
- my $col = $_[1];
- my $status = "<td align='center' $col></td>";
- my @init = &General::system_output("find", "/etc/rc.d/rc3.d/S??${cmd}");
- my $init = chomp(@init[0]);
- if ($init ne ''){
- $status = "<td align='center' $col><a href='services.cgi?$_!disable'><img alt='$Lang::tr{'deactivate'}' title='$Lang::tr{'deactivate'}' src='/images/on.gif' border='0' width='16' height='16' /></a></td>";
- }
- @init = &General::system_output("find", "/etc/rc.d/rc3.d/off/S??${cmd}");
- my $init = chomp (@init[0]);
- if ($init ne ''){
- $status = "<td align='center' $col><a href='services.cgi?$_!enable'><img alt='$Lang::tr{'activate'}' title='$Lang::tr{'activate'}' src='/images/off.gif' border='0' width='16' height='16' /></a></td>";
+sub isautorun (@) {
+ my ($pak, $service, $col) = @_;
+ my @testcmd = &General::system_output("/usr/local/bin/addonctrl", "$pak", "boot-status", "$service");
+ my $testcmd = @testcmd[0];
+ my $status = "<td align='center' $col><img alt='$Lang::tr{'service boot setting unavailable'}' title='$Lang::tr{'service boot setting unavailable'}' src='/images/dialog-warning.png' border='0' width='16' height='16' /></td>";
+
+ # Check if autorun for the given service is enabled.
+ if ( $testcmd =~ /enabled\ on\ boot/ ) {
+ # Adjust status.
+ $status = "<td align='center' $col><a href='services.cgi?$pak!disable!$service'><img alt='$Lang::tr{'deactivate'}' title='$Lang::tr{'deactivate'}' src='/images/on.gif' border='0' width='16' height='16' /></a></td>";
+ } elsif ( $testcmd =~ /disabled\ on\ boot/ ) {
+ # Adjust status.
+ $status = "<td align='center' $col><a href='services.cgi?$pak!enable!$service'><img alt='$Lang::tr{'activate'}' title='$Lang::tr{'activate'}' src='/images/off.gif' border='0' width='16' height='16' /></a></td>";