$r->get('/poll/')->to('archive#poll');
# tag page
- $r->get('/tag/:tagname/:type/')->to('tag#list_tagged_items');
+ $r->get('/tag/:tagname/:type/:page/')->to('tag#list_tagged_items');
+ $r->get('/tag/:tagname/:page/')->to('tag#list_tagged_items');
$r->get('/tag/:tagname/')->to('tag#list_tagged_items');
$r->get('/tag/')->to('tag#list_tags');
my $type = $c->stash('type');
# check parameter
- my $page_num = $c->param('page') || 0;
+ my $page_num = $c->param('page') || 1;
my $config = $c->app->config("Timeline") || {};
my $limit = $config->{item_per_page} || 10;
- my $offset = $limit * $page_num;
+ my $offset = $limit * ($page_num - 1);
my $show_future = $user->{is_admin} ? 1 : 0;
my $show_nonpublic = $user->{is_admin} ? 1 : 0;
- if ($type && !any { $_ eq $type } qw(story journal submission)) {
- $c->rendered(400);
+ if ($page_num < 1 || $type && !any { $_ eq $type } qw(story journal submission)) {
+ $c->rendered(404);
return;
}
my $page = { type => "tag",
tag_name => $topic_name,
+ tag_keyword => $topics->[0]->{keyword},
content_type => $type,
number => $page_num,
has_prev => @$items > $limit,
[%- IF page.type == "tag";
item_list = [
{ url => "/tag/", text => "タグ" },
- { url => "/tag/" _ page.tag_name, text => page.tag_name }
+ { url => "/tag/" _ page.tag_keyword _ "/", text => page.tag_name }
];
sub_title = "";
END;
IF sub_title;
- item_list.push({url => "/tag/" _ page.tag_name _ "/" _ page.content_type _ "/",
+ item_list.push({url => "/tag/" _ page.tag_keyword _ "/" _ page.content_type _ "/",
text => sub_title });
END;
-item_list.push({text => (page.number + 1) _ "ページ目"});
+item_list.push({text => page.number _ "ページ目"});
END -%]
ELSIF page.content_type == "comment";
sub_title = "コメント";
END;
- primary_title = "'" _ page.tag_name _ "'タグが付いた" _ sub_title _ "(" _ (page.number + 1)_ "ページ目)";
+ primary_title = "'" _ page.tag_name _ "'タグが付いた" _ sub_title _ "(" _ page.number _ "ページ目)";
sub_title = "";
END;
[% WRAPPER common/layout %]
-<div class="main-column">
+
+<div class="sidebar-wrapper">
<div class="index main-contents">
[%- FOREACH item IN items -%]
[%- INCLUDE common/article/article hide_bodytext=1 %]
<div class="pager">
[%- IF page.has_prev -%]
<span class="prev">
- <a href="/tag/[% page.tag_name %][% IF page.target %]/[% page.target %]/[% END %]?page=[% page.number + 1 %]">≪前</a>
+ <a href="/tag/[% page.tag_keyword %]/[% IF page.target %][% page.target %]/[% END %][% page.number + 1 %]/">≪前</a>
</span>
[%- END -%]
- [%- IF page.number > 0 -%]
+ [%- IF page.number > 1 -%]
<span class="next">
- [%- IF page.number == 1 -%]
- <a href="/tag/[% page.tag_name %][% IF page.target %]/[% page.target %]/[% END %]">次≫</a>
+ [%- IF page.number == 2 -%]
+ <a href="/tag/[% page.tag_keyword %][% IF page.target %]/[% page.target %]/[% END %]">次≫</a>
[%- ELSE -%]
- <a href="/tag/[% page.tag_name %][% IF page.target %]/[% page.target %]/[% END %]?page=[% page.number - 1 %]">次≫</a>
+ <a href="/tag/[% page.tag_keyword %]/[% IF page.target %][% page.target %]/[% END %][% page.number - 1 %]/">次≫</a>
[%- END -%]
</span>
[%- END -%]
</div>
</div><!-- .index -->
+ [%- INCLUDE common/sidebar -%]
</div>
-[%- INCLUDE common/sidebar -%]
[% END %]