diff options
author | morkt <> | 2015-01-25 11:12:54 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2015-01-25 11:12:54 +0100 |
commit | fd29f1f5aa485651f70610b8d8882b05f5dd4406 (patch) | |
tree | adb5eb72587b5bd53bfe6ee2a596cccb8fe8456b /lib | |
parent | 5e60b5a9f5d3f7bb2458460de211492c329406b5 (diff) |
staff: Add staff edit permission + alias layouting
Diffstat (limited to 'lib')
-rw-r--r-- | lib/VNDB/Handler/Staff.pm | 19 | ||||
-rw-r--r-- | lib/VNDB/Util/LayoutHTML.pm | 4 |
2 files changed, 14 insertions, 9 deletions
diff --git a/lib/VNDB/Handler/Staff.pm b/lib/VNDB/Handler/Staff.pm index 4daf5d89..008dbf96 100644 --- a/lib/VNDB/Handler/Staff.pm +++ b/lib/VNDB/Handler/Staff.pm @@ -67,13 +67,16 @@ sub page { end; if (@{$s->{aliases}}) { Tr; - td class => 'key', mt '_staff_aliases'; + td class => 'key', mt('_staff_aliases', scalar @{$s->{aliases}}); td; - p; + table class => 'aliases'; foreach my $alias (@{$s->{aliases}}) { - txt $alias->{name}; - txt ' ('.$alias->{original}.')' if $alias->{original}; - br; + Tr class => 'nostripe'; + td $alias->{original} ? () : (colspan => 2), class => 'key'; + txt $alias->{name}; + end; + td $alias->{original} if $alias->{original}; + end; } end; end; @@ -101,13 +104,13 @@ sub page { # description div class => 'staffdesc'; - if($s->{desc}) { + if($s->{desc}) { h2 mt '_staff_bio'; p; lit bb2html $s->{desc}, 0, 1; end; br; - } + } if (@{$s->{roles}}) { h2 mt '_staff_credits'; @@ -201,7 +204,7 @@ sub edit { return $self->resNotFound if $sid && !$s->{id}; $rev = undef if !$s || $s->{cid} == $s->{latest}; - return $self->htmlDenied if !$self->authCan('edit') + return $self->htmlDenied if !$self->authCan('staffedit') || $sid && (($s->{locked} || $s->{hidden}) && !$self->authCan('dbmod')); my %b4 = !$sid ? () : ( diff --git a/lib/VNDB/Util/LayoutHTML.pm b/lib/VNDB/Util/LayoutHTML.pm index 128a18c7..e51ec998 100644 --- a/lib/VNDB/Util/LayoutHTML.pm +++ b/lib/VNDB/Util/LayoutHTML.pm @@ -103,7 +103,9 @@ sub _menu { if($self->authCan('edit')) { a href => '/v/add', mt '_menu_addvn'; br; a href => '/p/new', mt '_menu_addproducer'; br; - a href => '/s/new', mt '_menu_addstaff'; br; + if($self->authCan('staffedit')) { + a href => '/s/new', mt '_menu_addstaff'; br; + } a href => '/c/new', mt '_menu_addcharacter'; br; } br; |