sub action_login {
my ($self) = @_;
+ return $self->redirect_to(action => 'show') if $::auth->authenticate_root == SL::Auth::OK();
return $self->login_form if !$::form->{do_login};
return if !$self->authenticate_root;
return if !$self->check_auth_db_and_tables;
my ($self) = @_;
return if $self->apply_dbupgrade_scripts;
- $self->action_show;
+ $self->redirect_to(action => 'show');
}
sub action_create_auth_db {
sub action_delete_user {
my ($self) = @_;
+ my @clients = @{ $self->user->clients || [] };
+
if (!$self->user->delete) {
flash('error', t8('The user could not be deleted.'));
$self->edit_user_form(title => t8('Edit User'));
return;
}
+ # Flag corresponding entries in 'employee' as deleted.
+ foreach my $client (@clients) {
+ my $dbh = $client->dbconnect(AutoCommit => 1) || next;
+ $dbh->do(qq|UPDATE employee SET deleted = TRUE WHERE login = ?|, undef, $self->user->login);
+ $dbh->disconnect;
+ }
+
flash_later('info', t8('The user has been deleted.'));
$self->redirect_to(action => 'show');
}