Compare commits
	
		
			8 Commits
		
	
	
		
			11_0_0-59_
			...
			11_0_0-66_
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 63973f2bb4 | |||
| 82ff48e641 | |||
| c5d863b3a0 | |||
| 4f00dfbdb1 | |||
| f9bf8cf064 | |||
| 4f0617f6c3 | |||
| 4c94d768e2 | |||
| 1731f75cba | 
							
								
								
									
										9
									
								
								root/usr/lib/systemd/system/bootsequence.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								root/usr/lib/systemd/system/bootsequence.service
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Koozali SME Server boot diagnostic tool
 | 
			
		||||
After=sme-server.target
 | 
			
		||||
PartOf=sme-server.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=oneshot
 | 
			
		||||
ExecStart=/bin/sh -c "/usr/bin/systemd-analyze plot > /usr/share/smanager/themes/default/public/images/boot.svg"
 | 
			
		||||
RemainAfterExit=yes
 | 
			
		||||
@@ -526,13 +526,13 @@ sub do_update {
 | 
			
		||||
 | 
			
		||||
    # common part for all functions
 | 
			
		||||
    if ($res ne 'OK') {
 | 
			
		||||
 | 
			
		||||
        if ($res eq 'NEXT') {
 | 
			
		||||
            $dest = 'back_' . $bac_datas{"function"};
 | 
			
		||||
        } else {
 | 
			
		||||
            $c->stash(error => $result);
 | 
			
		||||
            $dest = "back_$function";
 | 
			
		||||
        }
 | 
			
		||||
        $bac_datas{vfstype}        = $c->param('VFSType');
 | 
			
		||||
        $c->stash(title => $title, bac_datas => \%bac_datas);
 | 
			
		||||
        return $c->render($dest);
 | 
			
		||||
    } ## end if ($res ne 'OK')
 | 
			
		||||
 
 | 
			
		||||
@@ -17,6 +17,9 @@ use File::Basename;
 | 
			
		||||
use SrvMngr qw( gen_locale_date_string );
 | 
			
		||||
our $cdb = esmith::ConfigDB->open or die "Couldn't open ConfigDB\n";
 | 
			
		||||
 | 
			
		||||
use constant FALSE => 0;
 | 
			
		||||
use constant TRUE  => 1;
 | 
			
		||||
 | 
			
		||||
# Get some basic info on the current SME install
 | 
			
		||||
our $sysconfig          = $cdb->get('sysconfig');
 | 
			
		||||
our $systemmode         = $cdb->get('SystemMode')->value;
 | 
			
		||||
@@ -78,7 +81,7 @@ sub create_configuration_report {
 | 
			
		||||
    # create the reporting template
 | 
			
		||||
    my $configreport_template = Text::Template->new(
 | 
			
		||||
        TYPE    => 'FILE',
 | 
			
		||||
        SOURCE  => '/etc/e-smith/web/common/configuration_report.tmpl',
 | 
			
		||||
        SOURCE  => '/usr/share/smanager/themes/default/public/configuration_report.tmpl',
 | 
			
		||||
        UNTAINT => 1
 | 
			
		||||
    );
 | 
			
		||||
    my $report_creation_time = gen_locale_date_string;
 | 
			
		||||
@@ -114,13 +117,40 @@ sub create_configuration_report {
 | 
			
		||||
 | 
			
		||||
    # prcess template
 | 
			
		||||
    my $result = $configreport_template->fill_in(HASH => \%vars);
 | 
			
		||||
    
 | 
			
		||||
    #take out any multiple blank lines
 | 
			
		||||
    #$result =~ s/\n{3,}/\n/g;
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    # write processed template to file
 | 
			
		||||
    open(my $cfgrep, '>', $configreportfile) or die "Could not create temporary file for config report!";
 | 
			
		||||
    print $cfgrep $result;
 | 
			
		||||
    close $cfgrep;
 | 
			
		||||
    
 | 
			
		||||
    #check if boot phase has completed.
 | 
			
		||||
	if (wait_for_boot_completion()) {
 | 
			
		||||
		#And create boot analysis image - now run externally following boot.
 | 
			
		||||
		$result = `/usr/bin/systemctl start bootsequence.service`;
 | 
			
		||||
		if (!$? == 0) {
 | 
			
		||||
			warn "/usr/bin/systemd-analyze plot Command failed \n";
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
  
 | 
			
		||||
} ## end sub create_configuration_report
 | 
			
		||||
 | 
			
		||||
sub wait_for_boot_completion {
 | 
			
		||||
    my $timeout = 60;  # 1-minute timeout
 | 
			
		||||
    my $end_time = time() + $timeout;
 | 
			
		||||
    while (time() < $end_time) {
 | 
			
		||||
        if (`systemctl list-jobs 2>&1` =~ /No jobs running/) {
 | 
			
		||||
            return TRUE;  # Success
 | 
			
		||||
        }
 | 
			
		||||
        sleep 5;
 | 
			
		||||
    }
 | 
			
		||||
    warn "Boot did not complete within $timeout seconds.\n";
 | 
			
		||||
    return FALSE;  # Failure
 | 
			
		||||
} ## end wait_for_boot_completion
 | 
			
		||||
 | 
			
		||||
sub show_config_report {
 | 
			
		||||
    my $c   = shift;
 | 
			
		||||
    my $out = '';
 | 
			
		||||
@@ -143,4 +173,4 @@ sub download_config_report {
 | 
			
		||||
        'cleanup'             => 1,
 | 
			
		||||
    );
 | 
			
		||||
} ## end sub download_config_report
 | 
			
		||||
1;
 | 
			
		||||
1;
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
'clm_LABEL_FILESYSTEM_SCAN_PERIOD' => 'Scan filesystem',
 | 
			
		||||
'clm_DESC_FILESYSTEM_SCAN_PERIOD' => '<h2>General Settings</h2>
 | 
			
		||||
If this option is enabled then the filesystem will be 
 | 
			
		||||
scanned for viruses.A report of any found viruses will be
 | 
			
		||||
scanned for viruses. A report of any found viruses will be
 | 
			
		||||
emailed to the administrator.',
 | 
			
		||||
'clm_LABEL_QUARANTINE' => 'Quarantine infected files',
 | 
			
		||||
'clm_LABEL_CLAM_VERSIONS' => 'ClamAV and db versions',
 | 
			
		||||
 
 | 
			
		||||
@@ -14,26 +14,26 @@ web site for that domain.',
 | 
			
		||||
i-bay as the content.',
 | 
			
		||||
'dom_DOMAIN_NAME_VALIDATION_ERROR' => 'Error: unexpected or missing characters in domain name
 | 
			
		||||
[_1].The domain name should contain one or more
 | 
			
		||||
letters, numbers, periods and minus signs.Did not create new domain.',
 | 
			
		||||
letters, numbers, periods and minus signs. Did not create new domain.',
 | 
			
		||||
'dom_DOMAIN_DESCRIPTION_VALIDATION_ERROR' => 'Error: unexpected or missing characters in domain description
 | 
			
		||||
[_1]. Did not create new domain.',
 | 
			
		||||
'dom_DOMAIN_IN_USE_ERROR' => 'Error: domain [_1] is already in use.Did not create
 | 
			
		||||
'dom_DOMAIN_IN_USE_ERROR' => 'Error: domain [_1] is already in use. Did not create
 | 
			
		||||
new domain.',
 | 
			
		||||
'dom_SYSTEM_DOMAIN_ERROR' => 'Error: domain [_1] is your system domain name.You
 | 
			
		||||
cannot have a domain with the same name.Did not create new domain.',
 | 
			
		||||
'dom_SYSTEM_DOMAIN_ERROR' => 'Error: domain [_1] is your system domain name. You
 | 
			
		||||
cannot have a domain with the same name. Did not create new domain.',
 | 
			
		||||
'dom_SUCCESSFULLY_CREATED' => 'Successfully created domain [_1].Your web
 | 
			
		||||
server is now being restarted.The links on this page will be
 | 
			
		||||
server is now being restarted. The links on this page will be
 | 
			
		||||
inactive until the web server restart is complete.',
 | 
			
		||||
'dom_MODIFY_TITLE' => 'Modify domain',
 | 
			
		||||
'dom_NONEXISTENT_DOMAIN_ERROR' => 'Error: [_1] is not an existing domain.',
 | 
			
		||||
'dom_SUCCESSFULLY_MODIFIED' => 'Successfully modified domain [_1].Your web
 | 
			
		||||
server is now being restarted.The links on this page will be inactive until the web server restart is complete.',
 | 
			
		||||
server is now being restarted. The links on this page will be inactive until the web server restart is complete.',
 | 
			
		||||
'dom_REMOVE_TITLE' => 'Remove domain',
 | 
			
		||||
'dom_REMOVE_DESCRIPTION' => 'You are about to remove the domain "[_1]" ([_2]).',
 | 
			
		||||
'dom_ABOUT_TO_REMOVE' => 'Are you sure you wish to remove this domain ?',
 | 
			
		||||
'dom_ERROR_WHILE_REMOVING_DOMAIN' => 'Error: internal failure while removing domain [_1].',
 | 
			
		||||
'dom_SUCCESSFULLY_DELETED' => 'Successfully deleted domain [_1]. Your web server
 | 
			
		||||
is now being restarted.The links on this page will be inactive
 | 
			
		||||
is now being restarted. The links on this page will be inactive
 | 
			
		||||
until the web server restart is complete.',
 | 
			
		||||
'dom_DESC_CORPORATE_DNS_CURRENT' => 'Corporate DNS Settings',
 | 
			
		||||
'dom_DOMAINS_PAGE_CORPORATE_DNS' => 'Modify corporate DNS settings',
 | 
			
		||||
 
 | 
			
		||||
@@ -128,7 +128,7 @@
 | 
			
		||||
'FM_IP_NUMBER3' => '[_1] is more than 255',
 | 
			
		||||
'FM_USERNAME' => 'This field must look like a valid username (3 to 8 letters and numbers)',
 | 
			
		||||
'FM_PASSWORD1' => 'You must provide a password.',
 | 
			
		||||
'FM_PASSWORD2' => 'The password you provided was not a good password.A good password must contain all of the following: upper case letter, lower case letter, number, non-alphanumeric character, be at least 7 characters long.',
 | 
			
		||||
'FM_PASSWORD2' => 'The password you provided was not a good password. A good password must contain all of the following: upper case letter, lower case letter, number, non-alphanumeric character, be at least 7 characters long.',
 | 
			
		||||
'FM_MAC_ADDRESS1' => 'You must provide a MAC address.',
 | 
			
		||||
'FM_MAC_ADDRESS2' => 'The MAC address you provided was not valid.',
 | 
			
		||||
'FM_ERR_UNEXPECTED_DESC' => 'Error: unexpected or missing characters in description',
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
'grp_ACCOUNT_CONFLICT' => 'Error: the group "[_1]" can\'t be created because there is
 | 
			
		||||
already a [_2] account of that name.',
 | 
			
		||||
'grp_INVALID_GROUP_DESCRIPTION' => 'Error: unexpected or missing characters in group description',
 | 
			
		||||
'grp_NO_MEMBERS' => 'Error: no members in group.Did not create new group.',
 | 
			
		||||
'grp_NO_MEMBERS' => 'Error: no members in group. Did not create new group.',
 | 
			
		||||
'grp_CREATED_GROUP' => 'Successfully created user group',
 | 
			
		||||
'grp_DELETED_GROUP' => 'Successfully removed user group',
 | 
			
		||||
'grp_MODIFIED_GROUP' => 'Successfully modifed user group',
 | 
			
		||||
 
 | 
			
		||||
@@ -34,17 +34,17 @@ the local network. Please enter a valid IP address in the
 | 
			
		||||
format "aaa.bbb.ccc.ddd".',
 | 
			
		||||
'hos_ETHERNET_ADDRESS_DESCRIPTION' => 'The ethernet address is optional and causes the DHCP server to
 | 
			
		||||
statically bind the local IP address to the computer with this
 | 
			
		||||
ethernet address.If specified, it must be of the form
 | 
			
		||||
ethernet address. If specified, it must be of the form
 | 
			
		||||
"AA:BB:CC:DD:EE:FF" and must contain only the numbers 0-9 and
 | 
			
		||||
the letters A-F.',
 | 
			
		||||
'hos_CREATE_LOCAL_HOST_TITLE' => 'Create a new hostname referring to a local host.',
 | 
			
		||||
'hos_DIDNT_ENTER_LOCAL_IP' => 'Error: You did not specify a Local IP address.IP
 | 
			
		||||
'hos_DIDNT_ENTER_LOCAL_IP' => 'Error: You did not specify a Local IP address. IP
 | 
			
		||||
addresses must contain only numbers and periods and
 | 
			
		||||
be in the form "aaa.bbb.ccc.ddd".Did not create hostname.',
 | 
			
		||||
'hos_IP_VALIDATION_ERROR' => 'Error: IP Address [_1] is
 | 
			
		||||
invalid. IP Addresses must contain only numbers and periodsand be in the form "aaa.bbb.ccc.ddd". Did not create hostname.',
 | 
			
		||||
'hos_MAC_ADDRESS_VALIDATION_ERROR' => 'Error: Ethernet address [_1]
 | 
			
		||||
is invalid.Ethernet addresses must be in the
 | 
			
		||||
is invalid. Ethernet addresses must be in the
 | 
			
		||||
form "AA:BB:CC:DD:EE:FF" and only contain the
 | 
			
		||||
numbers 0-9 and the letters A-F. Did not create
 | 
			
		||||
hostname.',
 | 
			
		||||
 
 | 
			
		||||
@@ -14,7 +14,7 @@ For example, you may wish to create a pseudonym
 | 
			
		||||
"webmaster" for your "webdevelopers" group or a
 | 
			
		||||
pseudonym "joe" for the user "joseph".</p>
 | 
			
		||||
<p>The server automatically creates pseudonyms of the form
 | 
			
		||||
firstname.lastname and firstname_lastname for every user
 | 
			
		||||
firstname. lastname and firstname_lastname for every user
 | 
			
		||||
on the system and a pseudonym "everyone" which contains
 | 
			
		||||
all users on the system.</p>
 | 
			
		||||
<p>Pseudonyms also allow you to create e-mail aliases for valid
 | 
			
		||||
 
 | 
			
		||||
@@ -26,7 +26,9 @@ experienced administrators
 | 
			
		||||
for remote problem diagnosis and resolution. 
 | 
			
		||||
We recommend leaving this
 | 
			
		||||
parameter set to "No Access"
 | 
			
		||||
unless you have a specific reason to do otherwise.',
 | 
			
		||||
unless you have a specific reason to do otherwise.
 | 
			
		||||
Note that an "Autoblock" feature is enabled by default when public access is enabled; to disable or tune this feature, refer to the manual at https://wiki.koozali.org/AutoBlock
 | 
			
		||||
',
 | 
			
		||||
'rma_TITLE_FTP_ACCESS' => 'FTP Settings',
 | 
			
		||||
'rma_DESC_FTP_ACCESS' => 'You can also control <b>FTP</b> access to your server. We
 | 
			
		||||
recommend leaving this parameter set to \'no access\' unless you
 | 
			
		||||
@@ -75,11 +77,11 @@ connected to a server serial port.',
 | 
			
		||||
'rma_LABEL_PPTP_ACCESS' => 'PPTP default user access',
 | 
			
		||||
'rma_TITLE_TELNET_ACCESS' => 'Telnet Settings',
 | 
			
		||||
'rma_DESC_TELNET_ACCESS' => 'WARNING:Telnet is currently enabled, but this feature is
 | 
			
		||||
no longer supported.Telnet is inherently insecure and should only
 | 
			
		||||
no longer supported. Telnet is inherently insecure and should only
 | 
			
		||||
be used in circumstances where no practical alternative exists. You
 | 
			
		||||
should change option to [_1] and use
 | 
			
		||||
secure shell if remote access is
 | 
			
		||||
required.Once disabled, telnet will no longer appear on this 
 | 
			
		||||
required. Once disabled, telnet will no longer appear on this 
 | 
			
		||||
screen. ',
 | 
			
		||||
'rma_TITLE_IPSECRW' => 'IPSEC Client (Roadwarrior) Settings',
 | 
			
		||||
'rma_DESC_IPSECRW' => 'You can allow IPSEC client access to your server, authenticated by
 | 
			
		||||
@@ -90,4 +92,4 @@ to the number 0 unless you require IPSEC client access.',
 | 
			
		||||
can do so here.<br>Any old certificates will no longer
 | 
			
		||||
authenticate against the server, so <b><i>all IPSEC clients will
 | 
			
		||||
need to import a new certificate!</i></b>.',
 | 
			
		||||
'rma_LABEL_IPSECRW_RESET' => 'Reset digital certificates',
 | 
			
		||||
'rma_LABEL_IPSECRW_RESET' => 'Reset digital certificates',
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
'rvw_FORM_TITLE' => 'Review configuration',
 | 
			
		||||
'rvw_DESCRIPTION' => 'This report summarizes the networking, server, and domain
 | 
			
		||||
parameters on this server relevant to configuring
 | 
			
		||||
the client computers on your network.You may wish to print this
 | 
			
		||||
the client computers on your network. You may wish to print this
 | 
			
		||||
page and use it as a reference.',
 | 
			
		||||
'rvw_NETWORKING_PARAMS' => 'Networking Parameters',
 | 
			
		||||
'rvw_SERVER_MODE' => 'Server Mode',
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
by the services running on your server.',
 | 
			
		||||
'log_LOG_FILE_SELECT_DESC' => 'Choose a log file to view',
 | 
			
		||||
'log_FILTER_PATTERN_DESC' => 'You may optionally specify a filter pattern to display only the
 | 
			
		||||
lines from the log file which match this pattern.If you leave
 | 
			
		||||
lines from the log file which match this pattern. If you leave
 | 
			
		||||
this field blank, all available lines of the log file will be
 | 
			
		||||
displayed. Note that this option is not used if you download the
 | 
			
		||||
logfile.',
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,38 @@
 | 
			
		||||
Configuration report created {$report_creation_time}
 | 
			
		||||
 | 
			
		||||
==================
 | 
			
		||||
Base configuration
 | 
			
		||||
==================
 | 
			
		||||
SME server version: 	  {$releaseversion}
 | 
			
		||||
SME server mode:    	  {$systemmode}
 | 
			
		||||
SME server previous mode: {$previoussystemmode }
 | 
			
		||||
Running Kernel:     	  {$curkernel}
 | 
			
		||||
===========================
 | 
			
		||||
New RPMs not in base system
 | 
			
		||||
===========================     
 | 
			
		||||
{ foreach $i (@newrpms) {
 | 
			
		||||
            $OUT .= "$i";
 | 
			
		||||
          }    
 | 
			
		||||
} 
 | 
			
		||||
===========================
 | 
			
		||||
Custom and modified templates
 | 
			
		||||
===========================
 | 
			
		||||
{ foreach $i (@templates) {
 | 
			
		||||
            $OUT .= "$i";
 | 
			
		||||
          }
 | 
			
		||||
}
 | 
			
		||||
===========================
 | 
			
		||||
Modified events
 | 
			
		||||
===========================
 | 
			
		||||
{ foreach $i (@events) {
 | 
			
		||||
            $OUT .= "$i";
 | 
			
		||||
          }
 | 
			
		||||
}
 | 
			
		||||
=======================
 | 
			
		||||
Additional repositories
 | 
			
		||||
=======================
 | 
			
		||||
{ foreach $r (@repositories) {
 | 
			
		||||
            $OUT .= "$r";
 | 
			
		||||
          }
 | 
			
		||||
}   		
 | 
			
		||||
DONE!
 | 
			
		||||
@@ -74,10 +74,8 @@
 | 
			
		||||
	</p><br>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('bac_UPDATE_CONF'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -30,10 +30,8 @@
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('bac_RESTORE_FROM_TAPE'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -44,12 +44,10 @@
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'} . '1'
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('NEXT'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -148,9 +148,7 @@
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{function}
 | 
			
		||||
	%= hidden_field 'VFSType' => $bac_datas->{vfstype}
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('bac_UPDATE_CONF'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -38,9 +38,7 @@
 | 
			
		||||
	</span><br><br>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('bac_RESTORE_FROM_WORKSTN'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -29,9 +29,7 @@
 | 
			
		||||
	%=l 'bac_YOU_MUST_REBOOT'
 | 
			
		||||
	</p>
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('bac_REBOOT'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -39,12 +39,10 @@
 | 
			
		||||
	</span><br>
 | 
			
		||||
	<br>
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('PERFORM'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -41,9 +41,7 @@
 | 
			
		||||
	%= hidden_field 'Backupset' => $bac_datas->{'backupset'}
 | 
			
		||||
	%= hidden_field 'Filterexp' => $bac_datas->{'filterexp'}
 | 
			
		||||
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('PERFORM'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -24,9 +24,7 @@
 | 
			
		||||
 | 
			
		||||
    %= form_for '/backupd' => (method => 'POST') => begin
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('NEXT'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -44,10 +44,8 @@
 | 
			
		||||
 | 
			
		||||
	<br><br>
 | 
			
		||||
	%= hidden_field 'Function' => $bac_datas->{'function'} . '1'
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('bac_VERIFY'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -28,10 +28,8 @@
 | 
			
		||||
 | 
			
		||||
    %= hidden_field 'Function' => $bac_datas->{'function'}
 | 
			
		||||
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
    %= submit_button $c->l('NEXT'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    % end
 | 
			
		||||
</div>
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -70,12 +70,10 @@
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<br>
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button $c->l('PERFORM'), class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
 	%= submit_button $c->l('PERFORM'), class => 'action'
 | 
			
		||||
 
 | 
			
		||||
    % end
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
% end
 | 
			
		||||
% end
 | 
			
		||||
@@ -18,9 +18,16 @@
 | 
			
		||||
    <% my $btn = l('bugr_Download this report'); %>
 | 
			
		||||
 | 
			
		||||
    %= form_for 'bugreportD' => (method => 'POST') => begin
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
	%= hidden_field 'trt' => $bugr_datas->{trt}
 | 
			
		||||
    % end    
 | 
			
		||||
		%= submit_button "$btn", class => 'action'
 | 
			
		||||
		%= hidden_field 'trt' => $bugr_datas->{trt}
 | 
			
		||||
    % end   
 | 
			
		||||
    
 | 
			
		||||
    % my $out = "================== <br />";
 | 
			
		||||
    % $out .= "Boot anaysis image (right click and save image to download)<br />";
 | 
			
		||||
    % $out .= "================== <br />";
 | 
			
		||||
    % $out .= "<img src='images/boot.svg' alt='boot timing image' width=95% >";
 | 
			
		||||
    
 | 
			
		||||
   <br><%= $c->render_to_string(inline=>$out) %><br>
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
<HR class="sme-copyrightbar">
 | 
			
		||||
<a href="https://mojolicious.org" target="_blank"><img src="images/sme-mojo-logo-white.png" style="position:relative;"></a>
 | 
			
		||||
<font class="sme-copyright">
 | 
			
		||||
%	if ( $c->is_logged_in ) {
 | 
			
		||||
%	if ( $c->is_logged_in && $c->is_admin) {
 | 
			
		||||
	SME Server <%= session 'releaseVersion' %>-<%= $c->app->VERSION %> Manager II
 | 
			
		||||
	% my $mode;
 | 
			
		||||
	% if (config->{mode} eq 'development'){ $mode = '-dev';} else { $mode = '';}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@ Summary: Sme server  navigation module : manager 2
 | 
			
		||||
%define name smeserver-manager
 | 
			
		||||
Name: %{name}
 | 
			
		||||
%define version 11.0.0
 | 
			
		||||
%define release 59
 | 
			
		||||
%define release 66
 | 
			
		||||
Version: %{version}
 | 
			
		||||
Release: %{release}%{?dist}
 | 
			
		||||
License: GPL
 | 
			
		||||
@@ -143,6 +143,29 @@ true
 | 
			
		||||
%defattr(-,root,root)
 | 
			
		||||
 | 
			
		||||
%changelog
 | 
			
		||||
* Tue Mar 11 2025 Brian Read <brianr@koozali.org> 11.0.0-66.sme
 | 
			
		||||
- Move the button for each backup panel to the left to conform to all the other panels.
 | 
			
		||||
 | 
			
		||||
* Sun Mar 09 2025 Brian Read <brianr@koozali.org> 11.0.0-65.sme
 | 
			
		||||
- Sort out missing hostname on nfs and cifs workstation backup on error [SME: 12948]
 | 
			
		||||
 | 
			
		||||
* Sat Mar 08 2025 Brian Read <brianr@koozali.org> 11.0.0-64.sme
 | 
			
		||||
- Add code to check for boot phase completion [SME: 12953]
 | 
			
		||||
 | 
			
		||||
* Thu Mar 06 2025 Brian Read <brianr@koozali.org> 11.0.0-63.sme
 | 
			
		||||
- Add boot.svg image to Bug Report panel [SME: 12953]
 | 
			
		||||
- Move report template to inside smanager tree
 | 
			
		||||
- Add one-off systemd task to create boot.svg run from panel
 | 
			
		||||
 | 
			
		||||
* Tue Mar 04 2025 Brian Read <brianr@koozali.org> 11.0.0-62.sme
 | 
			
		||||
- Update *_en.lex files to conform to standard english punctuation  [SME: 11809]
 | 
			
		||||
 | 
			
		||||
* Tue Mar 04 2025 Brian Read <brianr@koozali.org> 11.0.0-61.sme
 | 
			
		||||
- Arrange for the version in the footer to be suppressed if non admin login  [SME: 12887]
 | 
			
		||||
 | 
			
		||||
* Thu Feb 27 2025 Brian Read <brianr@koozali.org> 11.0.0-60.sme
 | 
			
		||||
- Enhance ssh security wording to mention autoblock in remoteaccess panel  [SME: 8309]
 | 
			
		||||
 | 
			
		||||
* Thu Feb 27 2025 Brian Read <brianr@koozali.org> 11.0.0-59.sme
 | 
			
		||||
- Arrange for Urgent notice to be displayed if date is past Rocky 8 EOL [SME: 12918]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user