Skip to content

Commit

Permalink
Support pages in snippet views
Browse files Browse the repository at this point in the history
Change-Id: Idd538e06ab55358c102b9caa4dbb902323cd4b22
  • Loading branch information
Akron committed Jul 11, 2024
1 parent 8369181 commit 22b008a
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 7 deletions.
3 changes: 2 additions & 1 deletion Changes
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
0.55 2024-06-9
0.55 2024-06-26
- Removed deprecated doc_link_to helper. (diewald)
- Removed deprecated doc_ext_link_to helper. (diewald)
- Removed deprecated doc_uc helper. (diewald)
Expand All @@ -8,6 +8,7 @@
- Remove corpusQuery from statistics
(as per Kudstvakt #758). (diewald)
- Improve test suite for slim images. (diewald)
- Add pages to references in snippet view. (diewald)

0.54 2024-06-10
- Remove deprecated 'matchInfo' API path. (diewald, margaretha)
Expand Down
8 changes: 8 additions & 0 deletions kalamar.dict
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,10 @@ my $THOUSAND_SEP_RE = qr/(
news => 'Neuigkeiten',
in => 'in',
by => 'von',
page => {
-sg => 'S.',
pl => 'S.'
},
pwd => 'Passwort',
email => 'Email',
username => 'Benutzername',
Expand Down Expand Up @@ -158,6 +162,10 @@ my $THOUSAND_SEP_RE = qr/(
searchplaceholder => 'Find ...',
in => 'in',
by => 'by',
page => {
-sg => 'p.',
pl => 'pp.',
},
pwd => 'Password',
email => 'Email',
username => 'Username',
Expand Down
5 changes: 3 additions & 2 deletions t/fixtures/response_query_baum_o0_c25.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@
"snippet" : "<span class=\"context-left\"><span class=\"more\"></span>sie etwas bedeuten zu wollen und machte mit der Oberlippe eine fatale Miene. ich sprach sehr viel mit ihr durch, sie war überall zu Hause und merkte gut auf die Gegenstände. so fragte sie mich einmal, was das für ein </span><span class=\"match\"><mark>Baum</mark></span><span class=\"context-right\"> sei. es war ein schöner großer Ahorn, der erste, der mir auf der ganzen Reise zu Gesichte kam. den hatte sie doch gleich bemerkt und freute sich, da mehrere nach und nach erschienen, daß sie auch diesen Baum unterscheiden könne<span class=\"more\"></span></span>",
"matchID" : "match-GOE/AGI/00000-p2030-2031",
"UID" : 0,
"pubDate" : "1982"
"pubDate" : "1982",
"pages":[109]
},
{
"field" : "tokens",
Expand All @@ -69,7 +70,7 @@
"snippet" : "<span class=\"context-left\"><span class=\"more\"></span>für ein Baum sei. es war ein schöner großer Ahorn, der erste, der mir auf der ganzen Reise zu Gesichte kam. den hatte sie doch gleich bemerkt und freute sich, da mehrere nach und nach erschienen, daß sie auch diesen </span><span class=\"match\"><mark>Baum</mark></span><span class=\"context-right\"> unterscheiden könne. sie gehe, sagte sie, nach Bozen auf die Messe, wo ich doch wahrscheinlich auch hinzöge. wenn sie mich dort anträfe, müsse ich ihr einen Jahrmarkt kaufen, welches ich ihr denn auch versprach. dort wollte sie auch ihre neue<span class=\"more\"></span></span>",
"matchID" : "match-GOE/AGI/00000-p2068-2069",
"UID" : 0,
"pubDate" : "1982"
"pages":[109,204]
}
]
}
Expand Down
9 changes: 8 additions & 1 deletion t/query.t
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,15 @@ my $err = $t->get_ok('/?q=baum')
->text_like('li:nth-of-type(1) div.snippet span.context-right',qr!es war!)
->text_is('li:nth-of-type(1) p.ref strong', 'Italienische Reise')
->text_like('li:nth-of-type(1) p.ref', qr!by Goethe, Johann Wolfgang!)
->text_is('li:nth-of-type(1) p.ref time[datetime=1982]', 1982)
->text_is('li:nth-of-type(1) p.ref span.sigle', '[GOE/AGI/00000]')
->text_is('li:nth-of-type(1) p.ref time[datetime=1982]', 1982)
->text_like('li:nth-of-type(1) p.ref ', qr!von \(, \)!)
->text_is('li:nth-of-type(1) p.ref span.pages', 'p. 109')

->element_exists_not('li:nth-of-type(2) p.ref time')
->text_like('li:nth-of-type(2) p.ref ', qr!von \(\)!)
->text_is('li:nth-of-type(2) p.ref span.pages', 'pp. 109–204')

->header_isnt('X-Kalamar-Cache', 'true')
->attr_is('#pagination','data-page','1')
->attr_is('#pagination','data-total','3')
Expand Down
20 changes: 17 additions & 3 deletions templates/match.html.ep
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,23 @@
<p class="ref">\
<% if ($match->{title}) { %><strong><%= $match->{title} %></strong><% }; %>\
<%= $match->{author} ? ' ' . loc('by') . ' ' . $match->{author} : '' %>\
% if ($match->{pubDate}) {
(<time datetime="<%= $match->{pubDate} %>"><%= $match->{pubDate} %></time>)\
% if ($match->{pubDate} || ($match->{pages} && ref $match->{pages} eq 'ARRAY')) {
(\
% if ($match->{pubDate}) {
<time datetime="<%= $match->{pubDate} %>"><%= $match->{pubDate} %></time>\
% };
% if ($match->{pages}) {
% if ($match->{pubDate}) {
, \
% };
% if (@{$match->{pages}} == 1) {
<span class="pages"><%=loc 'page_sg' %> <%= $match->{pages}->[0] %></span>\
% } else {
<span class="pages"><%=loc 'page_pl' %> <%= $match->{pages}->[0] %>&ndash;<%= $match->{pages}->[-1] %></span>\
% };
% };
) \
% };
<span class="sigle">[<%= $text_sigle %>]</span> \
<span class="sigle">[<%= $text_sigle %>]</span> \
</p>
</li>

0 comments on commit 22b008a

Please sign in to comment.