api/v0: inline Random controller
This commit is contained in:
parent
fdb969de16
commit
c5eef1be0b
4 changed files with 27 additions and 31 deletions
|
@ -66,8 +66,8 @@ sub startup ($self)
|
||||||
$r->get("/tags")->to("tags#list")->name("list_tags");
|
$r->get("/tags")->to("tags#list")->name("list_tags");
|
||||||
$r->get("/search")->to("tags#search")->name("search_tags");
|
$r->get("/search")->to("tags#search")->name("search_tags");
|
||||||
|
|
||||||
$r->get("/random/media")->to("random#media")->name("random_media");
|
$r->get("/random/media")->to("media#random")->name("random_media");
|
||||||
$r->get("/random/tag")->to("random#tag")->name("random_tag");
|
$r->get("/random/tag")->to("tags#random")->name("random_tag");
|
||||||
}
|
}
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
|
|
@ -85,6 +85,18 @@ sub show ($self)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub random ($self)
|
||||||
|
{
|
||||||
|
my $id = $self->media_model->random_id;
|
||||||
|
|
||||||
|
return $self->render(
|
||||||
|
json => {error => "Media not found."},
|
||||||
|
status => 404,
|
||||||
|
) if !defined($id);
|
||||||
|
|
||||||
|
return $self->redirect_to("show_media", media_id => $id);
|
||||||
|
}
|
||||||
|
|
||||||
sub similar ($self)
|
sub similar ($self)
|
||||||
{
|
{
|
||||||
my $media = $self->media_model->get($self->stash("media_id"))->single;
|
my $media = $self->media_model->get($self->stash("media_id"))->single;
|
||||||
|
|
|
@ -1,29 +0,0 @@
|
||||||
package Pooru::API::V0::Controller::Random;
|
|
||||||
use Mojo::Base "Mojolicious::Controller", -signatures;
|
|
||||||
|
|
||||||
sub media ($self)
|
|
||||||
{
|
|
||||||
my $media_id = $self->media_model->random_id;
|
|
||||||
|
|
||||||
return $self->render(
|
|
||||||
json => {error => "Media not found."},
|
|
||||||
status => 404,
|
|
||||||
) if !defined($media_id);
|
|
||||||
|
|
||||||
return $self->redirect_to("show_media", media_id => $media_id);
|
|
||||||
}
|
|
||||||
|
|
||||||
sub tag ($self)
|
|
||||||
{
|
|
||||||
my $tag_id = $self->tags_model->random_id;
|
|
||||||
|
|
||||||
return $self->render(
|
|
||||||
json => {error => "Tag not found."},
|
|
||||||
status => 404,
|
|
||||||
) if !defined($tag_id);
|
|
||||||
|
|
||||||
return $self->redirect_to(
|
|
||||||
$self->url_for("show_tag")->query(id => $tag_id));
|
|
||||||
}
|
|
||||||
|
|
||||||
1;
|
|
|
@ -53,6 +53,19 @@ sub show ($self)
|
||||||
return $self->render(json => {tags => [@tags]});
|
return $self->render(json => {tags => [@tags]});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub random ($self)
|
||||||
|
{
|
||||||
|
my $id = $self->tags_model->random_id;
|
||||||
|
|
||||||
|
return $self->render(
|
||||||
|
json => {error => "Tag not found."},
|
||||||
|
status => 404,
|
||||||
|
) if !defined($id);
|
||||||
|
|
||||||
|
return $self->redirect_to(
|
||||||
|
$self->url_for("show_tag")->query(id => $id));
|
||||||
|
}
|
||||||
|
|
||||||
sub search ($self)
|
sub search ($self)
|
||||||
{
|
{
|
||||||
my $v = $self->validation;
|
my $v = $self->validation;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue