2 series_tags = ['440', '490', '800', '810', '811', '830', '694'];
7 IF attrs.hl_display_fields.series_title.size;
8 hl_field = attrs.hl_field;
9 FOREACH s IN attrs.hl_display_fields.series_title;
10 search_term = s.value.replace('[#"^$\+\-,\.:;&|\[\]()]', ' ').replace('\s+$', '');
12 url = mkurl(ctx.opac_root _ '/results',
13 { qtype=>'series', query=>search_term }, stop_parms.merge(expert_search_parms, general_search_parms, browse_search_parms, facet_search_parms)
15 filtered_hl_field = s.$hl_field;
16 series = '<a href="' _ url _ '">' _ filtered_hl_field _ '</a> ';
20 FOR tag IN series_tags;
21 FOR node IN ctx.marc_xml.findnodes('//*[@tag="' _ tag _ '"]');
25 FOR subfield IN node.childNodes;
26 NEXT UNLESS subfield.nodeName == "subfield";
27 code = subfield.getAttribute('code');
29 linked_fields = [subfield.textContent()];
30 target_field = node.getAttribute('tag');
33 NEXT UNLESS code.match('[a-z]');
34 # at this point, we actually have a partial term to use.
35 single_term = subfield.textContent | html;
36 all_terms.push(subfield.textContent.replace('[#"^$\+\-,\.:;&|\[\]()]', ' '));
37 total_term = all_terms.join(" ").replace('\s+$', '');
39 url = mkurl(ctx.opac_root _ '/results',
40 { qtype=>'series', query=>total_term }, stop_parms.merge(expert_search_parms, general_search_parms, browse_search_parms, facet_search_parms)
42 series = series _ '<a href="' _ url _ '">' _ single_term _ '</a> ';
44 FOREACH link880 IN graphics;
45 link = link880.value | html;
46 series = series _ '<div class="graphic880"' _ link880.dir _ '>' _ link _ '</div>';
54 <li class='rdetail_series_value'>[% entry %]</li>
59 [%- series_anchors = PROCESS render_series;
60 IF series_anchors.length > 0; %]
61 <h2 class='rdetail_related_series'>[% l('Search for related items by series') %]</h2>