package Newslash::Plugin::ResponseFilter;
use Mojo::Base 'Mojolicious::Plugin';
+use Data::Dumper;
sub register {
my ($self, $app, $conf) = @_;
my $json = $args->{json};
my $result = $json;
- if (defined $json->{result} && ref($json->{result} eq "HASH")) {
+ if (defined $json->{result} && ref($json->{result}) eq "HASH") {
$result = $json->{result};
}
if ($result->{item}) {
- if ($result->{item}->{content_type}) {
- apply_seclev_filter($c, $result->{item}->{content_type}, $result->{item});
+ my $type = $result->{item}->{content_type};
+ if ($type) {
+ apply_seclev_filter($c, $type, $result->{item});
}
}
if ($result->{items} && ref($result->{items}) eq "ARRAY") {
for my $item (@{$result->{items}}) {
- if ($item->{content_type}) {
- apply_seclev_filter($c, $item->{content_type}, $item);
+ my $type = $item->{content_type};
+ if ($type) {
+ apply_seclev_filter($c, $type, $item);
}
}
}
my $cnf = $c->config->{ResponseFilter} || {};
my $faculties = $cnf->{faculities} || {};
- #warn Dumper $faculties;
-
my $faculty_all = $faculties->{all} || {};
for my $lv (keys %$faculty_all) {
if ($security_level < $lv) {
for my $k (@{$faculty_all->{$lv}}) {
if (defined $item->{$k}) {
delete $item->{$k};
- #$c->app->log->debug("remove $k");
+ $c->app->log->debug("remove $k");
}
}
}
for my $k (@{$faculty->{$lv}}) {
if (defined $item->{$k}) {
delete $item->{$k};
- #$c->app->log->debug("remove $k");
+ $c->app->log->debug("remove $k");
}
}
}