<% my $op = param('op') || ''; my $api = gitprep_api; my $errors; if ($op eq 'delete' && lc $self->req->method eq 'post') { # Validation my $params = $api->params; my $vc = $self->app->vc; my $rule = [ user => [ ['not_blank' => 'User name is empty.'], ] ]; my $vresult = $vc->validate($params, $rule); if ($vresult->is_ok) { # Valid parameters my $params = $vresult->data; my $user = $params->{user}; # Delete user my $count; eval { $count = app->manager->delete_user($user) }; if ($@) { app->log->error("/_admin/users?op=delete: $@"); $errors = ['Internal Error']; } elsif ($count == 0) { app->log->error("/_admin/users?op=delete: User $user not exists"); $errors = ['Internal Error']; } else { $self->flash(message => "User $user is deleted."); $self->redirect_to('current'); return; } } else { $errors = $vresult->messages } } my $users = app->manager->users; %> % layout 'common', title => 'Admin Users'; %= javascript begin $(document).ready(function () { // Confirm delete $('.delete-btn').on('click', function () { var user = $(this).attr('user'); var input = window.prompt( 'Are you really delete user "' + user + '". User and user\'s all repositories are deleted. Please input user name.' ); if (user === input) { return true; } else { return false; } }); }); % end %= include '/include/header';
% if (my $message = flash('message')) {
%= $message;
% } % if ($errors) {
% for my $error (@$errors) {

<%= $error %>

% }
% }

Admin Users

Create User
% for my $user (@$users) { % my $uid = $user->{id}; % }
<%= $uid %> Reset Password
%= hidden_field user => $uid;
Admin page
%= include '/include/footer';