1 [% PROCESS "opac/parts/header.tt2";
2 PROCESS "opac/parts/misc_util.tt2";
3 WRAPPER "opac/parts/myopac/base.tt2";
5 limit = ctx.bookbags_limit;
6 offset = ctx.bookbags_offset;
7 item_page = ctx.bookbags_item_page;
9 "Sharing a list means that the contents " _
10 "of the list will be visible to others. " _
11 "To see the public view of a shared list, " _
12 "click on the HTML View link in the Saved Lists section.");
14 <h3 class="sr-only">[% l('My Lists') %]</h3>
15 <div id='myopac_bookbag_div' style="padding:5px;">
17 <!-- new list creation -->
18 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/update') %]" method="post" id="create_form">
19 <h1>[% l('Create New List') %]</h1><a name="createnewlist"></a>
20 <table class="table_no_cell_pad" id="list_create_table">
22 <td class="list_create_table_label">
23 <label for="list_create_name">[% l('Enter the name of the new list:') %]</label>
26 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
27 <input id="list_create_name" type="text" name="name" />
28 <input type="hidden" name="action" value="create" />
30 <input type="hidden" name="add_rec" value="[% ctx.add_rec %]" />
32 [% IF ctx.where_from %]
33 <input type="hidden" name="where_from" value="[% ctx.where_from %]" />
38 <td class="list_create_table_label">
39 <label for="list_description">[% l("List description (optional):") %]</label>
42 <textarea name="description" id="list_description"></textarea>
46 <td class="list_create_table_label">
47 <label for="list_create_shared">[% l('Share this list?') %]</label>
50 <select name="shared" id="list_create_shared">
51 <option value="0">[% l('No') %]
52 <option value="1">[% l('Yes') %]
54 <a href="javascript:void(0);"
55 onclick="alert('[% bb_publish_text %]')">
56 <img alt="[% l('Sharing Help') %]"
57 [% html_text_attr('title', bb_publish_text) %]
58 src="[% ctx.media_prefix %]/images/question-mark.png" />
64 <td class="list-create-table-buttons">
66 value="[% l('Cancel') %]"
67 alt="[% l('Cancel') %]"
68 class="opac-button" />
71 value="[% l('Submit') %]"
72 alt="[% l('Submit') %]"
79 <h1>[% l("My Existing Lists") %]</h1>
80 [% INCLUDE "opac/parts/anon_list.tt2" %]
81 [% IF ctx.bookbags.size %]
82 <div class="header_middle">
83 <span class="float-left">[% l('Saved Lists') %]</span>
84 [% IF limit < ctx.bookbag_count; %]
85 <span class='float-left' style='padding-left: 10px;'>
87 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
88 offset => (offset - limit)
89 }) %]'><span class="nav_arrow_fix">◄</span>[% l('Previous') %]</a>
91 [%- IF (offset - (limit * 3)) >= 0 -%]
92 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
93 offset => (offset - (limit * 3))
94 }) %]'>[% ((offset - (limit * 3)) / limit) + 1 %]</a>
96 [%- IF (offset - (limit * 2)) >= 0 -%]
97 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
98 offset => (offset - (limit * 2))
99 }) %]'>[% ((offset - (limit * 2)) / limit) + 1 %]</a>
101 [%- IF (offset - limit) >= 0 -%]
102 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
103 offset => (offset - limit)
104 }) %]'>[% ((offset - limit) / limit) + 1 %]</a>
106 <span class="bookbag-paginator-selected" >[% (offset / limit) + 1 %]</span>
107 [%- IF (offset + limit) < ctx.bookbag_count -%]
108 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
109 offset => (offset + limit)
110 }) %]'>[% ((offset + limit) / limit) + 1 %]</a>
112 [%- IF (offset + (limit * 2)) < ctx.bookbag_count -%]
113 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
114 offset => (offset + (limit * 2))
115 }) %]'>[% ((offset + (limit * 2)) / limit) + 1 %]</a>
117 [%- IF (offset + (limit * 3)) < ctx.bookbag_count -%]
118 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
119 offset => (offset + (limit * 3))
120 }) %]'>[% ((offset + (limit * 3)) / limit) + 1 %]</a>
122 [%- IF (ctx.bookbag_count - offset) > limit; -%]
123 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
124 offset => (offset + limit)
125 }) %]'>[% l('Next') %]<span class="nav_arrow_fix">►</span></a>
130 <div class="clear-both"></div>
132 <div id='acct_lists_prime'>
133 [% FOR bbag IN ctx.bookbags %]
134 <div class="bookbag-controls-holder">
135 <div class="bookbag-controls-title-block">
136 [% baseurl = ctx.opac_root _ '/myopac/lists';
137 IF bbag.id != CGI.param("bbid");
138 url = mkurl(baseurl,{bbid => bbag.id, item_page => 1},['edit_notes','sort']);
139 ltitle = l("Show items in list");
141 url = mkurl(baseurl, {}, ['bbid', 'edit_notes', 'sort']);
142 ltitle = l("Hide items in list");
144 <h2 class="bookbag-name"><a title="[% ltitle %]" href="[% url %]">[% bbag.name | html %]</a></h2>
145 [% IF bbag.description %]<div class="bookbag-description">[% bbag.description | html %]</div>[% END %]
147 <div class="bookbag-controls-button-block">
149 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/update', {}, 1) %]" method="post">
150 <div class="bookbag-controls">
151 <input type="hidden" name="action" value="add_rec" />
152 <input type="hidden" name="list" value="[% bbag.id %]" />
153 <input type="hidden" name="add_rec" value="[% ctx.add_rec %]" />
154 [% IF ctx.where_from %]
155 <input type="hidden" name="where_from" value="[% ctx.where_from %]" />
157 <input class="fixed" type="submit" value="[% l('Add to this list') %]" />
161 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/update') %]" method="post">
162 <div class="bookbag-share">
163 <input type="hidden" name="list" value="[% bbag.id %]" />
164 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
165 [% IF bbag.pub != 't' %]
166 <input type="hidden" name="action" value="show" />
167 <input class="fixed" type="submit" value="[% l('Share') %]" />
169 <input type="hidden" name="action" value="hide" />
170 <input class="fixed" type="submit" value="[% l('Hide') %]" />
174 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/update') %]" method="post" onsubmit="return confirm('[% l('Do you really want to delete this list?') %]')">
175 <div class="bookbag-controls">
176 <input type="hidden" name="list" value="[% bbag.id %]" />
177 <input type="hidden" name="action" value="delete" />
178 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
179 <input type="submit" value="[% l('Delete List') %]" />
182 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/print') %]" method="post">
183 <div class="bookbag-controls">
184 <input type="hidden" name="list" value="[% bbag.id %]" />
185 <input type="hidden" name="sort" value="[% CGI.param('sort') | html %]" />
186 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
187 <input type="submit" value="[% l('Download CSV') %]" />
190 [% setting = 'opac.default_list'; %]
191 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/update') %]" method="post">
192 <div class="bookbag-controls">
193 <input type="hidden" name="list" value="[% bbag.id %]" />
194 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
195 [% IF ctx.user_setting_map.$setting == bbag.id %]
196 <input type="hidden" name="action" value="remove_default" />
197 <input type="submit" value="[% l('Remove Default List') %]" />
199 <input type="hidden" name="action" value="make_default" />
200 <input type="submit" value="[% l('Make Default List') %]" />
204 [% IF ctx.is_staff %]
205 <div class="bookbag-controls">
210 "oils://remote/xul/server/cat/bucketz39_dialog.xul";
212 xulG.url_prefix(path),
214 "width=800,height=500",
216 "[% ctx.authtoken %]",
217 "[% ctx.user.ws_ou %]",
221 value="[% l('Locate Z39.50 Matches') %]"
225 <div class="bookbag-controls">
226 [% IF bbag.pub == 't'; %]
227 <a target='_blank' href='/opac/extras/feed/bookbag/rss2-full/[% bbag.id %]'><img
228 alt="[% l('RSS Feed') %]" border="0"
229 src="[% ctx.media_prefix %]/images/small-rss.png"/></a>
231 [% IF bbag.pub == 't'; %]
234 ctx.opac_root _ '/results',
235 {page => '0', bookbag => bbag.id, depth => 0, locg => ctx.search_ou},
238 -%]'>[% l('HTML View') %]</a>
242 <div class="clear-both pad-bottom-five"></div>
244 [% IF CGI.param("bbid") == bbag.id %]
245 <div class="bookbag-specific">
246 [% IF bbag.items.size %]
249 <label for="opac.result.sort">[% l("Sort list items by: ") %]</label>
250 [%- INCLUDE "opac/parts/preserve_params.tt2" params=['loc', 'query', 'qtype']; %]
251 [% INCLUDE "opac/parts/filtersort.tt2"
252 value=CGI.param('sort') mode='bookbag' %]
253 <input type="hidden" name="bbid"
254 value="[% CGI.param('bbid') | html %]"/>
255 <input type="submit" class="opac-button" value="[% l('Sort') %]" />
261 <input type="hidden" name="bbid" value="[% bbag.id %]" />
262 <input type="hidden" name="action" value="editmeta" />
263 <input type="hidden" name="limit" value="[% limit %]" />
264 <input type="hidden" name="offset" value="[% offset %]" />
265 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
266 <p style="font-weight:bold;">[% l('Edit List Description') %]</p>
267 <div class="bbag-edit-desc-label">
268 <label for="bbag-edit-name">[% l('Name:') %]</label>
270 <input name="name" type="text"
271 value="[% bbag.name | html %]"
272 id="bbag-edit-name" />
273 <div style="clear:both;" />
274 <div class="bbag-edit-desc-label">
275 <label for="bbag-edit-description">[% l('Description:') %]</label>
277 <textarea name="description"
278 id="bbag-edit-description">[% bbag.description | html %]</textarea>
279 <div class="bbag-edit-desc-save">
280 [% l("Save changes to name or description?") %]
281 <input type="submit" class="opac-button" value="[% l('Save') %]" />
286 <br class="clear-both" />
287 <form action="[% mkurl(ctx.opac_root _ '/myopac/list/update') %]" method="post">
288 <input type="hidden" name="list" value="[% bbag.id %]" />
289 <input type="hidden" name="sort" value="[% CGI.param('sort') | uri %]" />
290 <div class="bbag-content">
291 [% IF bbag.items.size %]
292 <div class="bbag-action">
293 <select name="action" class="bbag-action-field">
294 <option disabled="disabled" selected="selected">[% l('-- Actions for these items --') %]</option>
295 <option value="place_hold">[% l('Place hold') %]</option>
296 <option value="del_item">[% l('Remove from list') %]</option>
298 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
299 <input class="opac-button" type="submit" value="[% l('Go') %]" />
302 <table class="bookbag-specific table_no_cell_pad table_no_border_space table_no_border">
303 <thead id="acct_list_header">
305 <td class="list_checkbox">
306 <input type="checkbox"
307 onclick="var inputs=document.getElementsByTagName('input');
308 for (i = 0; i < inputs.length; i++) {
309 if (inputs[i].name == 'selected_item' && !inputs[i].disabled && inputs[i].getAttribute('bbag') == [% bbag.id %])
310 inputs[i].checked = this.checked;}"/>
313 <td class="list_entry">
314 <a href="[% mkurl(ctx.opac_root _ '/myopac/lists', {sort=> (CGI.param('sort') == 'titlesort' ? 'titlesort.descending' : 'titlesort')}) %]">[% l('Title') %]</a>
316 <td class="list_entry">
317 <a href="[% mkurl(ctx.opac_root _ '/myopac/lists', {sort=>(CGI.param('sort') == 'authorsort' ? 'authorsort.descending' : 'authorsort')}) %]">[% l('Author(s)') %]</a>
319 <td class='list_entry'>
320 [% l('Local Call Number') %]
322 <td class="list_entry">
323 <a href="[% mkurl(ctx.opac_root _ '/myopac/lists', {sort=>(CGI.param('sort') == 'pubdate' ? 'pubdate.descending' : 'pubdate')}) %]">[% l('Publication Date') %]</a>
325 <td class="list_entry">
328 <td class="list_entry">
330 [% IF CGI.param("edit_notes") != bbag.id %]
331 | <a href="[% mkurl(ctx.opac_root _ '/myopac/lists', {edit_notes=> bbag.id}) %]">[% l('Edit') %]</a>
337 [% UNLESS bbag.items.size %]
338 <tr><td colspan="6" class="list_is_empty">
339 [% l("This list contains no items.") %]
342 [% FOR item IN bbag.items;
343 rec_id = item.target_biblio_record_entry.id;
344 attrs = {marc_xml => ctx.bookbags_marc_xml.$rec_id};
345 PROCESS get_marc_attrs args=attrs %]
346 <tr class="bookbag-item-row">
347 <td class="list_checkbox">
348 <input type="checkbox" name="selected_item" value="[% item.id %]" bbag='[% bbag.id %]'/>
350 <td class="list_entry" data-label="[% l('Title') %]">
351 <a href="[% mkurl(ctx.opac_root _ '/record/' _ rec_id, {}, ['edit_notes', 'bbid']) %]">[% attrs.title | html %]</a>
353 <td class="list_entry" data-label="[% l('Author(s)') %]">
355 authorquery = attrs.author | replace('[,\.:;]', '');
356 mkurl(ctx.opac_root _ '/results', {qtype => 'author', query => authorquery}, ['page', 'bbid', 'edit_notes'])
357 -%]">[% attrs.author | html %]</a>
359 <td class="list_entry" data-label="[% l('Local Call Number') %]">
361 copy = attrs.holdings.0;
363 # only show a relevant call number
364 copy_org = ctx.get_aou_by_shortname(copy.owner);
365 FOR ctx_org IN [ctx.pref_ou, ctx.search_ou, ctx.home_ou, ctx.physical_loc];
367 ctx_org = ctx.get_aou(ctx_org);
368 IF ctx.org_within_scope(ctx_org, copy_org, ctx_org.ou_type.depth);
369 l('[_1] ([_2])', copy.label, copy_org.name) | html;
376 <td class="list_entry" data-label="[% l('Publication Date') %]">
377 [% attrs.pubdate | html %]
379 <td class="list_entry" data-label="[% l('Format') %]">
380 [% attrs.format_label | html %]
382 [% IF CGI.param("edit_notes") == bbag.id %]
383 <td class="list_entry" data-label="[% l('Notes') %]">
384 [% FOR note IN item.notes %]
385 <input type="text" name="note-[% note.id %]" value="[% note.note | html %]" />
387 <input type="text" name="item-[% item.id %]" />
390 <td class="list_entry" data-label="[% l('Notes') %]">
391 [% FOR note IN item.notes %]
392 <div>[% note.note | html %]</div>
398 [% IF CGI.param("edit_notes") == bbag.id %]
399 <tr class="mobile_hide">
400 <td colspan="6"><!-- All space left of notes column --></td>
401 <td class="save-notes">
402 [%- INCLUDE "opac/parts/preserve_params.tt2"; %]
403 <input type="hidden" name="bbid" value="[% CGI.param('bbid') | html %]" />
404 <input type="submit" class="opac-button" name="save_notes" value="[% l('Save Notes') %]" />
411 [% IF ctx.bb_page_count > 1; %]
412 <div class="header_middle" style="padding-top:7px;">
413 <div class="bbag-navigate-list">[% l('Navigate Selected List ') %]</div>
414 <div class="bbag-navigate-list-pages">
415 [%- IF item_page > 1 -%]
416 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
417 item_page => item_page - 1
418 }) %]'><span class="nav_arrow_fix">◄</span>[% l('Previous') %]</a>
421 [%- IF (item_page - 3) >= 1 -%]
422 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
423 item_page => item_page - 3
424 }) %]'>[% item_page - 3 %]</a>
426 [%- IF (item_page - 2) >= 1 -%]
427 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
428 item_page => item_page - 2
429 }) %]'>[% item_page - 2 %]</a>
431 [%- IF (item_page - 1) >= 1 -%]
432 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
433 item_page => item_page - 1
434 }) %]'>[% item_page - 1%]</a>
436 <span class="bookbag-paginator-selected" >[% item_page %]</span>
437 [%- IF (item_page + 1) <= ctx.bb_page_count -%]
438 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
439 item_page => item_page + 1
440 }) %]'>[% item_page + 1 %]</a>
442 [%- IF (item_page + 2) <= ctx.bb_page_count -%]
443 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
444 item_page => item_page + 2
445 }) %]'>[% item_page + 2 %]</a>
447 [%- IF (item_page + 3) <= ctx.bb_page_count -%]
448 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
449 item_page => item_page + 3
450 }) %]'>[% item_page + 3 %]</a>
453 [%- IF (item_page + 1) <= ctx.bb_page_count; -%]
454 <a href='[% mkurl(ctx.opac_root _ '/myopac/lists', {
455 item_page => item_page + 1
456 }) %]'>[% l('Next') %]<span class="nav_arrow_fix">►</span></a>
460 <div class="clear-both"></div>