diff options
author | Yorhel <git@yorhel.nl> | 2011-05-01 11:07:39 +0200 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2011-05-01 11:07:39 +0200 |
commit | 2bf4818105a11abeca313b36d820c3cc397dc5b3 (patch) | |
tree | 016496ecbf101ee0b96e0ee5ee506efe0973fcc5 | |
parent | 196e3bd79e08a4f84f9df90e4a88685449b9bee5 (diff) |
Don't show some contribute links when you can't contribute
-rw-r--r-- | lib/VNDB/Handler/VNPage.pm | 14 | ||||
-rw-r--r-- | lib/VNDB/Util/LayoutHTML.pm | 10 |
2 files changed, 16 insertions, 8 deletions
diff --git a/lib/VNDB/Handler/VNPage.pm b/lib/VNDB/Handler/VNPage.pm index 44a63db8..e10b4414 100644 --- a/lib/VNDB/Handler/VNPage.pm +++ b/lib/VNDB/Handler/VNPage.pm @@ -446,11 +446,15 @@ sub _releases { my($self, $v, $r) = @_; div class => 'mainbox releases'; - p class => 'addnew'; - a href => "/c/new?vid=$v->{id}", mt '_vnpage_char_add'; - txt ' | '; - a href => "/v$v->{id}/add", mt '_vnpage_rel_add'; - end; + if($self->authCan('edit')) { + p class => 'addnew'; + if($self->authCan('charedit')) { + a href => "/c/new?vid=$v->{id}", mt '_vnpage_char_add'; + txt ' | '; + } + a href => "/v$v->{id}/add", mt '_vnpage_rel_add'; + end; + } h1 mt '_vnpage_rel'; if(!@$r) { p mt '_vnpage_rel_none'; diff --git a/lib/VNDB/Util/LayoutHTML.pm b/lib/VNDB/Util/LayoutHTML.pm index e1e21924..752f6728 100644 --- a/lib/VNDB/Util/LayoutHTML.pm +++ b/lib/VNDB/Util/LayoutHTML.pm @@ -99,9 +99,13 @@ sub _menu { a href => "$uid/hist", mt '_menu_mychanges'; br; a href => '/g/links?u='.$self->authInfo->{id}, mt '_menu_mytags'; br; br; - a href => '/v/new', mt '_menu_addvn'; br; - a href => '/p/new', mt '_menu_addproducer'; br; - a href => '/c/new', mt '_menu_addcharacter'; br; + if($self->authCan('edit')) { + a href => '/v/new', mt '_menu_addvn'; br; + a href => '/p/new', mt '_menu_addproducer'; br; + } + if($self->authCan('charedit')) { + a href => '/c/new', mt '_menu_addcharacter'; br; + } br; a href => "$uid/logout", mt '_menu_logout'; end; |