diff --git a/Web/lib/MJB/Web.pm b/Web/lib/MJB/Web.pm index 8ad8204..50a7b78 100644 --- a/Web/lib/MJB/Web.pm +++ b/Web/lib/MJB/Web.pm @@ -207,21 +207,22 @@ sub startup ($self) { $auth->post( '/blog/:id/settings' )->to('Blog#do_settings' )->name('do_blog_settings' ); # Admin Dashboard - $admin->get ( '/admin' )->to('Admin#index' )->name('show_admin' ); - $admin->post( '/admin' )->to('Admin#do_admin_become' )->name('do_admin_become' ); - $admin->get ( '/admin/people' )->to('Admin#people' )->name('show_admin_people' ); - $admin->get ( '/admin/person/:id' )->to('Admin#person' )->name('show_admin_person' ); - $admin->get ( '/admin/blogs' )->to('Admin#blogs' )->name('show_admin_blogs' ); - $admin->get ( '/admin/domains' )->to('Admin#domains' )->name('show_admin_domains' ); - $admin->post( '/admin/domain' )->to('Admin#do_domain' )->name('do_admin_domain' ); - $admin->post( '/admin/domain/remove' )->to('Admin#do_domain_remove' )->name('do_admin_domain_remove' ); - $admin->get ( '/admin/servers' )->to('Admin#servers' )->name('show_admin_servers' ); - $admin->post( '/admin/server' )->to('Admin#do_server' )->name('do_admin_server' ); - $admin->post( '/admin/server/remove' )->to('Admin#do_server_remove' )->name('do_admin_server_remove' ); - $admin->get ( '/admin/settings' )->to('Admin#settings' )->name('show_admin_settings' ); - $admin->get ( '/admin/invites' )->to('Admin#invites' )->name('show_admin_invites' ); - $admin->post( '/admin/invite' )->to('Admin#do_invite' )->name('do_admin_invite' ); - $admin->post( '/admin/invite/remove' )->to('Admin#do_invite_remove' )->name('do_admin_invite_remove' ); + $admin->get ( '/admin' )->to('Admin#index' )->name('show_admin' ); + $admin->post( '/admin' )->to('Admin#do_admin_become' )->name('do_admin_become' ); + $admin->get ( '/admin/people' )->to('Admin#people' )->name('show_admin_people' ); + $admin->get ( '/admin/person/:id' )->to('Admin#person' )->name('show_admin_person' ); + $admin->post( '/admin/person/:id/note' )->to('Admin#do_person_note' )->name('do_admin_person_note' ); + $admin->get ( '/admin/blogs' )->to('Admin#blogs' )->name('show_admin_blogs' ); + $admin->get ( '/admin/domains' )->to('Admin#domains' )->name('show_admin_domains' ); + $admin->post( '/admin/domain' )->to('Admin#do_domain' )->name('do_admin_domain' ); + $admin->post( '/admin/domain/remove' )->to('Admin#do_domain_remove' )->name('do_admin_domain_remove' ); + $admin->get ( '/admin/servers' )->to('Admin#servers' )->name('show_admin_servers' ); + $admin->post( '/admin/server' )->to('Admin#do_server' )->name('do_admin_server' ); + $admin->post( '/admin/server/remove' )->to('Admin#do_server_remove' )->name('do_admin_server_remove' ); + $admin->get ( '/admin/settings' )->to('Admin#settings' )->name('show_admin_settings' ); + $admin->get ( '/admin/invites' )->to('Admin#invites' )->name('show_admin_invites' ); + $admin->post( '/admin/invite' )->to('Admin#do_invite' )->name('do_admin_invite' ); + $admin->post( '/admin/invite/remove' )->to('Admin#do_invite_remove' )->name('do_admin_invite_remove' ); } diff --git a/Web/lib/MJB/Web/Controller/Admin.pm b/Web/lib/MJB/Web/Controller/Admin.pm index 0b1ca77..7960c1b 100644 --- a/Web/lib/MJB/Web/Controller/Admin.pm +++ b/Web/lib/MJB/Web/Controller/Admin.pm @@ -43,6 +43,21 @@ sub people ( $c ) { } sub person ( $c ) { + my $profile = $c->stash->{profile} = $c->db->person( $c->param('id') ); + my $notes = $c->stash->{notes} = [ $profile->person_note_people->all ]; +} + +sub do_person_note ( $c ) { + my $profile = $c->db->person( $c->param('id') ); + my $content = $c->param('content'); + + $profile->create_related( 'person_note_people', { + source_id => $c->stash->{person}->id, + content => $content, + }); + + $c->flash( confirmation => "Added note to this account." ); + $c->redirect_to( $c->url_for( 'show_admin_person', { id => $profile->id } ) ); } diff --git a/Web/templates/admin/person.html.ep b/Web/templates/admin/person.html.ep new file mode 100644 index 0000000..312cb89 --- /dev/null +++ b/Web/templates/admin/person.html.ep @@ -0,0 +1,81 @@ +% layout 'standard', title => 'Admin Panel', sb_active => 'admin'; + +%= include 'admin/_nav', page => 'person' + +%= include '_base/status_window'; + +% if ( @{$c->stash->{notes}} ) { + +% } + +
+
+ +
+ +
+ +
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + +
NameEmail AddressCreatedBecome User
<%= $profile->name %><%= $profile->email %><%= $profile->created_at->strftime( "%F" ) %> +
+ + + +
+
+ + + + + + + + + + + % for my $blog ( $profile->blogs->all ) { + + + + + + % } + +
Blog DomainCreatedManage Blog
<%= $blog->domain->name %><%= $blog->created_at->strftime( "%F" ) %> +
+ + + + +
+