]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/templates/opac/parts/record/summary.tt2
2accfff91b18637a173378cb31d57d799a482c4f
[working/Evergreen.git] / Open-ILS / src / templates / opac / parts / record / summary.tt2
1 [%  PROCESS "opac/parts/misc_util.tt2";
2     USE ResolverResolver;
3     ctx.page_title = attrs.title | html
4     ctx.metalinks.push('<meta property="og:image" content="' _ ctx.media_prefix _ '/opac/extras/ac/jacket/large/r/' _ ctx.bre_id _ '" />');
5 %]
6 <!-- ****************** rdetail_summary.xml ***************************** -->
7 <abbr class="unapi-id" title='tag:[% ctx.hostname %],[% date.format(date.now, '%Y') %]:biblio-record_entry/[% ctx.bre_id %]'></abbr>
8
9 <hr />
10
11 [%-# This holds the record summary information %]
12 <div id="rdetail_summary_header">
13     <div id='rdetail_title_div'>
14         <h1 id='rdetail_title' property="name">[% attrs.title_extended | html %]</h1>
15         [%-
16             FOR link880 IN attrs.graphic_titles;
17                 FOR alt IN link880.graphic;
18                     '<h2 class="graphic880"';
19                     IF alt.dir;
20                         ' dir="' _ alt.dir _ '"';
21                     END;
22                     '>'; alt.value | html; '</h2>';
23                 END;
24             END;
25         -%]
26         [%- INCLUDE "opac/parts/record/authors.tt2" %]
27     </div>
28     <div id="rdetail_image_div">
29         <a href='[% ctx.media_prefix %]/opac/extras/ac/jacket/large/r/[% ctx.bre_id | uri %]'><img
30             alt="[% l('Image of item') %]" id='rdetail_image'
31             src='[% ctx.media_prefix %]/opac/extras/ac/jacket/[% record.summary.jacket_size %]/r/[% ctx.bre_id | uri %]' /></a>
32         <br />
33     </div>
34     <div id="format_actions">
35         [%- IF attrs.format_label %]
36           [% FOR format IN attrs.all_formats %]
37               <img title="[% format.label | html %]" 
38                   alt="[% format.label | html %]" 
39                   src="[% format.icon %]" /> 
40               [% format.label | html %]
41           [% END %]
42         [%- END %]
43         <div id="rdetail_actions_div">
44             [%- search_ou = ctx.search_ou;
45                 IF ctx.place_unfillable ||
46                     ( attrs.marc_xml.findnodes('//*[local-name()="holdings" and @has_holdable="true"]').size
47                         && (ctx.holds_block.enabled != 'true' || !attrs.org_copy_counts.$search_ou.available)
48                     )
49              %]
50             <div class="rdetail_aux_utils place_hold">
51                 <a href="[% mkurl(ctx.opac_root _ '/place_hold', 
52                     {hold_target => ctx.bre_id, hold_type => 'T', hold_source_page => mkurl()}, stop_parms) %]" 
53                 class="no-dec" rel="nofollow" vocab=""><img src="[% ctx.media_prefix %]/images/green_check.png"
54                     [% img_alt(l('Place Hold on [_1]', attrs.title)) %]/>
55                 <span class="place_hold">[% l('Place Hold') %]</span></a>
56             </div>
57             [%- END -%]
58             <div class="rdetail_aux_utils toggle_list">
59             [%  IF ctx.user;
60                 INCLUDE "opac/parts/bookbag_actions.tt2";
61             %]
62             [%  ELSE;
63                 operation = ctx.mylist.grep(ctx.bre_id).size ? "delete" : "add";
64                 label = (operation == "add") ? l("Add to my list") : l("Remove from my list"); 
65             %]
66                 <a href="[% mkurl(ctx.opac_root _ '/mylist/' _ operation, {record => ctx.bre_id}, stop_parms) %]" class="no-dec" rel="nofollow" vocab="">
67                     <img src="[% ctx.media_prefix %]/images/clipboard.png" alt="" />
68                     [% label %]
69                 </a>
70             [% END %]
71             </div>
72             <div class="rdetail_aux_utils">
73                 <img src="[% ctx.media_prefix %]/images/clipboard.png" alt="[% l('Print / Email Actions Image') %]" />
74                 <a href="[% mkurl(ctx.opac_root _ '/record/print/' _ ctx.bre_id) %]" class="no-dec" rel="nofollow" vocab="">[% l('Print') %]</a> /
75                 <a href="[% mkurl(ctx.opac_root _ '/record/email/' _ ctx.bre_id) %]" class="no-dec" rel="nofollow" vocab="">[% l('Email') %]</a>
76             </div>
77             [%- IF ctx.refworks.enabled == 'true' %]
78                 [%- INCLUDE 'opac/parts/record/refworks.tt2' %]
79             [%- END %]
80             <div class="rdetail_aux_utils share_record">
81                 <a href="[% mkurl('', {locg =>CGI.param('locg'), copy_depth =>CGI.param('copy_depth')}, 1) %]" class="no-dec">
82                      <img src="[% ctx.media_prefix %]/images/link.png" alt="[% l('Permalink') %]" />
83                      [% l('Permalink') %]
84                 </a>
85             </div>
86         </div>
87     </div>
88 </div>
89
90 [%- IF openurl.enabled == 'true';
91     openurls = [];
92     FOREACH issn IN args.issns;
93         NEXT IF issn == '';
94         openurls = openurls.import(ResolverResolver.resolve_issn(issn, openurl.baseurl));
95     END;
96     IF openurls.size && openurls.0 != '';
97 %]
98     <div id='rdetail_openurl'>
99         <strong class='rdetail_openurl_title'>[% l("Electronic resources") %]</strong>
100         <table><tbody>
101 [%-
102         FOREACH res IN openurls;
103 %]
104         <tr>
105             <td class='rdetail_openurl_entry'><a href="[% res.target_url %]">[% res.public_name | html %]</a></td>
106             <td>[% res.target_coverage | html %]
107             [%- IF res.target_embargo != '';
108                     ' - ';
109                     res.target_embargo | html;
110                 END;
111             -%]
112             </td>
113         </tr>
114     [%- END %]
115     </tbody></table>
116     </div>    
117 [%- END %]
118 [%- END %]
119 [%- merged_uris = args.uris.merge(args.online_res);
120 num_uris = merged_uris.size;
121 IF num_uris > 0;
122 -%]
123 <h2 class="rdetail_uris">[% l("Electronic resources") %]</h2>
124 <div class="rdetail_uris">
125     [%- IF num_uris > 1 %]<ul>[% END %]
126     [%- FOR uri IN merged_uris %]
127         [%- IF num_uris == 1 -%]
128             <p class="rdetail_uri" property="offers" vocab="http://schema.org/" typeof="Offer">
129         [%- ELSE -%]
130             <li class="rdetail_uri" property="offers" vocab="http://schema.org/" typeof="Offer">
131         [%- END -%]
132         <a href="[% uri.href %]" property="url">
133         [%- IF uri.href != uri.link;
134                 '<span property="description">' _ uri.link _ '</span>';
135             ELSE;
136                 uri.link;
137             END;
138         -%]
139         </a>
140         [%- ' - <span property="description">' _ uri.note _ '</span>' IF uri.note %]
141         <link property="availability" href="http://schema.org/OnlineOnly" />
142         [%- IF attrs.gtin13; '<meta property="gtin13" content="' _ attrs.gtin13 _ '" />'; END; %]
143         [%- IF num_uris == 1 %]</p>[% ELSE %]</li>[% END %]
144     [%- END %]
145     [%- IF num_uris > 1 %]</ul>[% END %]
146 </div>
147 [%- END %]
148 [%- # Hold/copy summary
149     IF ctx.copy_summary.0.count
150 %]
151 <div id="copy_hold_counts">
152 [%- INCLUDE "opac/parts/record/copy_counts.tt2" %]
153     <span id="rdetail_hold_counts">
154         <h2>[% l('Current holds') %]</h2>
155         <p>
156             [% 
157                 # If org hiding is enabled/relevant, only show 
158                 # counts for copies within the hiding scope.
159                 count_entry = 0;
160                 FOR count_chunk IN ctx.copy_summary;
161                     IF ctx.org_within_hiding_scope(count_chunk.org_unit);
162                         # always true when hiding is disabled
163                         LAST;
164                     END;
165                     count_entry = count_entry + 1;
166                 END;
167                 l("[quant,_1,current hold,current holds] with [quant,_2,total copy,total copies].", 
168                     ctx.record_hold_count, ctx.copy_summary.$count_entry.count) 
169             %]
170         </p>
171     </span>
172 [%- INCLUDE "opac/parts/record/copy_table.tt2" copies=ctx.copies %]
173 </div>
174 [%- END %]
175
176 <h2 id='rdetail_record_details'>[% l("Record details") %]</h2>
177 <ul>
178     [%- IF attrs.isbns.0;
179           FOR isbn IN attrs.isbns;
180             isbn_extra = '';
181             IF (matches = isbn.match('^(.+?)(\s.+)$'));
182               isbn = matches.0;
183               isbn_extra = matches.1;
184             END;
185     %]
186     <li class='rdetail_isbns'>
187         <strong class='rdetail_label'>[% l('ISBN:'); %]</strong>
188         <span class='rdetail_value' property='isbn'>[% isbn | html  %]</span>[% isbn_extra | html %]
189     </li>
190         [%- END %]
191     [%- END %]
192     [%- IF attrs.issns.0; FOR issn IN attrs.issns %]
193     <li class='rdetail_issns'>
194         <strong class='rdetail_label'>[% l('ISSN:'); %]</strong>
195         <span class='rdetail_value'>[% issn | html  %]</span>
196     </li>
197         [%- END %]
198     [%- END %]
199     [%- IF attrs.phys_desc %]
200     <li id='rdetail_phys_desc'>
201         <strong class='rdetail_label'>[% l("Physical Description:") %]</strong>
202         <span class='rdetail_value'>[% attrs.phys_desc | html %]</span>
203     </li>
204     [%- END %]
205     [%- IF attrs.edition %]
206     <li id='rdetail_edition'>
207         <strong class='rdetail_label'>[% l("Edition:") %]</strong>
208         <span class='rdetail_value'>[% attrs.edition | html %]</span>
209         [%-
210         FOR entry IN attrs.graphic_editions;
211             FOR alt IN entry.graphic;
212                 diratt = "";
213                 IF alt.dir;
214                     diratt = ' dir="' _ alt.dir _ '"';
215                 END;
216         -%]
217         <div class="graphic880 rdetail_value"[% diratt %]>
218             [% alt.value | html %]
219         </div>
220         [%-
221             END;
222         END;
223         -%]
224     </li>
225     [%- END %]
226     [%- IF attrs.publisher %]
227     <li id='rdetail_publisher'>
228         <strong class='rdetail_label'>[% l("Publisher:") %]</strong>
229         <span class='rdetail_value' property="publisher" typeof="Organization">
230         [%- IF attrs.pubplace; %]
231             <span property="location">[% attrs.pubplace | html; %]</span>
232         [%- END; %]
233             <span property="name">[% attrs.publisher | html; %]</span>
234         </span>
235         [%- IF attrs.pubdate; %]
236             <span property="datePublished">[% attrs.pubdate | html; %]</span>
237         [%- END; %]
238         [%-
239         IF attrs.graphic_pubinfos.size > 0;
240             FOR entry IN attrs.graphic_pubinfos;
241                 FOR alt IN entry.graphic;
242                     diratt = "";
243                     IF alt.dir;
244                         diratt = ' dir="' _ alt.dir _ '"';
245                     END;
246         -%]
247         <div class="graphic880"[% diratt %]>
248             [% alt.value | html %]
249         </div>
250         [%-
251                 END;
252             END;
253         END
254         -%]
255     </li>
256     [%- END %]
257     [%- IF attrs.producer %]
258         <li id='rdetail_producer'>
259             <strong class='rdetail_label'>[% l("Producer:") %]</strong>
260             <span class='rdetail_value'>
261             [%- IF attrs.prodplace; %]
262                 <span>[% attrs.prodplace | html; %]</span>
263             [%- END; %]
264                 <span>[% attrs.producer | html; %]</span>
265             [%- IF attrs.proddate; %]
266                 <span>[% attrs.proddate | html; %]</span>
267             [%- END; %]
268             </span>
269         </li>
270     [%- END %]
271     [%- IF attrs.distributor %]
272         <li id='rdetail_distributor'>
273             <strong class='rdetail_label'>[% l("Distributor:") %]</strong>
274             <span class='rdetail_value'>
275             [%- IF attrs.distplace; %]
276                 <span>[% attrs.distplace | html; %]</span>
277             [%- END; %]
278                 <span>[% attrs.distributor | html; %]</span>
279             [%- IF attrs.distdate; %]
280                 <span>[% attrs.distdate | html; %]</span>
281             [%- END; %]
282             </span>
283         </li>
284     [%- END %]
285     [%- IF attrs.manufacturer %]
286         <li id='rdetail_manufacturer'>
287             <strong class='rdetail_label'>[% l("Manufacturer:") %]</strong>
288             <span class='rdetail_value' property="manufacturer" typeof="Organization">
289             [%- IF attrs.manplace; %]
290                 <span property="location">[% attrs.manplace | html; %]</span>
291             [%- END; %]
292                 <span property="name">[% attrs.manufacturer | html; %]</span>
293             [%- IF attrs.mandate; %]
294                 <span>[% attrs.mandate | html; %]</span>
295             [%- END; %]
296             </span>
297         </li>
298     [%- END %]
299     [%- IF attrs.copyright %]
300     <li id='rdetail_copyright'>
301         <strong class='rdetail_label'>[% l("Copyright:") %]</strong>
302         <span class='rdetail_value'>[% attrs.copyright | html_entity; %]
303         [%-# Provide the 4-digit year, cleansed of '@' and other junk %]
304         [%- IF attrs.copyrightYear -%]
305             <meta property='copyrightYear' content='[% attrs.copyrightYear | html; %]'>
306         [%- END -%]
307         </span>
308     </li>
309     [%- END %]
310 </ul>
311
312 [%- INCLUDE "opac/parts/record/contents.tt2" %]
313 [%- INCLUDE "opac/parts/record/subjects.tt2" %]
314 [%- INCLUDE "opac/parts/record/series.tt2" %]
315 [%- INCLUDE "opac/parts/record/extras.tt2" %]