diff options
author | Yorhel <git@yorhel.nl> | 2008-11-13 11:46:14 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2008-11-13 11:46:14 +0100 |
commit | f83a65ae51cbb8cefc200227807ff6b22d5a7ee4 (patch) | |
tree | 07de95575abc2db2d1c24607c44d16d8ed1f95df /lib/VNDB/Handler/Producers.pm | |
parent | 4a40309762165f68565fcbd5fad3a0cf69e452f6 (diff) |
Locking and hiding producers works
Diffstat (limited to 'lib/VNDB/Handler/Producers.pm')
-rw-r--r-- | lib/VNDB/Handler/Producers.pm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/VNDB/Handler/Producers.pm b/lib/VNDB/Handler/Producers.pm index 63751a20..17336a32 100644 --- a/lib/VNDB/Handler/Producers.pm +++ b/lib/VNDB/Handler/Producers.pm @@ -8,7 +8,8 @@ use VNDB::Func; YAWF::register( - qr{p([1-9]\d*)} => \&page, + qr{p([1-9]\d*)} => \&page, + qr{p([1-9]\d*)/(lock|hide)} => \&mod, ); @@ -59,4 +60,16 @@ sub page { } +# /hide and /lock +sub mod { + my($self, $pid, $act) = @_; + return $self->htmlDenied if !$self->authCan($act eq 'hide' ? 'del' : 'lock'); + my $p = $self->dbProducerGet(id => $pid)->[0]; + return 404 if !$p->{id}; + $self->dbProducerMod($pid, $act eq 'hide' ? (hidden => !$p->{hidden}) : (locked => !$p->{locked})); + $self->resRedirect("/p$pid", 'temp'); +} + + 1; + |