]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/templates/opac/parts/record/series.tt2
TPAC: Address some search syntax leaks in links
[working/Evergreen.git] / Open-ILS / src / templates / opac / parts / record / series.tt2
1 [% 
2     series_tags = ['440', '490', '800', '810', '811', '830', '694']; 
3     loc = ctx.search_ou;
4 %]
5
6 [% BLOCK render_series;
7     results = [];
8     FOR tag IN series_tags;
9         FOR node IN ctx.marc_xml.findnodes('//*[@tag="' _ tag _ '"]/*');
10             node_uri = node.textContent.replace('[#"^$\+\-,\.:;&|\[\]()]', '') | uri;
11             node_html = node.textContent | html;
12             IF !loop.first;
13                 results.last = result.last _ '<span>&mdash;</span>';
14             END;
15             results.push('<a href="' _ ctx.opac_root 
16                 _ '/results?qtype=series&amp;query=' _ node_uri _ '&amp;loc='
17                 _ loc _ '">' _ node_html _ '</a>'
18             );
19         END;
20     END; 
21     FOR entry IN results;
22     -%]
23     <li class='rdetail_series_value'>[% entry %]</li>
24     [%- END;
25 END;
26 %]
27
28 [%- series_anchors = PROCESS render_series;
29     IF series_anchors.length > 0; %]
30 <h2 class='rdetail_related_series'>[% l('Search for related items by series') %]</h2>
31 <ul>
32     [% series_anchors %]
33 </ul>
34 [%- END %]