summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authormorkt <>2015-01-25 11:12:54 +0100
committerYorhel <git@yorhel.nl>2015-01-25 11:12:54 +0100
commitfd29f1f5aa485651f70610b8d8882b05f5dd4406 (patch)
treeadb5eb72587b5bd53bfe6ee2a596cccb8fe8456b /lib
parent5e60b5a9f5d3f7bb2458460de211492c329406b5 (diff)
staff: Add staff edit permission + alias layouting
Diffstat (limited to 'lib')
-rw-r--r--lib/VNDB/Handler/Staff.pm19
-rw-r--r--lib/VNDB/Util/LayoutHTML.pm4
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;