From: Garry Collum Date: Tue, 23 Mar 2021 18:55:57 +0000 (-0400) Subject: LP1920989 Adds missing course reserves files to the bootstrap opac. X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=f497d5de1c6df5bf1e633fa652779c064625ae11;p=working%2FEvergreen.git LP1920989 Adds missing course reserves files to the bootstrap opac. Copies missing course reserves files from templates/opac into templates-bootstrap/opac. The missing files were being rendered from the former directory. Signed-off-by: Garry Collum --- diff --git a/Open-ILS/src/templates-bootstrap/opac/course/results.tt2 b/Open-ILS/src/templates-bootstrap/opac/course/results.tt2 new file mode 100644 index 0000000000..41966bf91d --- /dev/null +++ b/Open-ILS/src/templates-bootstrap/opac/course/results.tt2 @@ -0,0 +1,114 @@ +[%- PROCESS "opac/parts/header.tt2"; + WRAPPER "opac/parts/base.tt2"; + INCLUDE "opac/parts/topnav.tt2"; + ctx.page_title = l("Course Search Results"); + page = CGI.param('page'); + page = page.match('^\d+$') ? page : 0; # verify page is a sane value + + page_count = (!ctx.page_size.defined || !ctx.hit_count.defined || ctx.page_size == 0) ? 1 : POSIX.ceil(ctx.hit_count / ctx.page_size); + + # We don't want search engines indexing search results + ctx.metalinks.push(''); + + PROCESS "opac/parts/misc_util.tt2"; + PROCESS get_library; + ctx.result_start = 1 + ctx.page_size * page; + ctx.result_stop = ctx.page_size * (page + 1); + IF ctx.result_stop > ctx.hit_count; ctx.result_stop = ctx.hit_count; END; + + result_count = ctx.result_start; +-%] +

[% l('Course Search Results') %]

+[% INCLUDE "opac/parts/searchbar.tt2" %] +
+ +
+
+
+
+ [% PROCESS "opac/parts/result/paginate.tt2" %] + [% ctx.results_count_header = PROCESS results_count_header; + ctx.results_count_header %] +
+
+ + + + + + + + + + [% FOR course IN ctx.courses %] + [% course_url_path = ctx.opac_root _ '/course/' _ course.id; %] + [% # Do not pass "advanced params" to result detail code. + # Instead, pass the scrubed query in one-line form + del_parms = del_parms.merge(['query', 'bool', + 'qtype', 'contains', '_adv']); + add_parms.import( + {query => ctx.naive_query_scrub(ctx.user_query)} ); + %] + + + + + + + [% END %] + +
[% l('Search result number') %][% l('Course details') %]
+ [% result_count; result_count = result_count + 1 %]. + + + + [% ctx.get_aou(course.owning_lib).name %] +
+
+
+
+
+
+
+
+[%- END %] diff --git a/Open-ILS/src/templates-bootstrap/opac/parts/course/body.tt2 b/Open-ILS/src/templates-bootstrap/opac/parts/course/body.tt2 new file mode 100644 index 0000000000..2d80caff69 --- /dev/null +++ b/Open-ILS/src/templates-bootstrap/opac/parts/course/body.tt2 @@ -0,0 +1,123 @@ +
+
+
+

+ [% l(ctx.course.name) %] ([% ctx.course.course_number %]) + [% IF ctx.course.is_archived == 't' %] + + This course is inactive. + + [% END %] +

+ [% IF ctx.instructors.size %] +
+ Course Instructors: + [%- FOR instructor IN ctx.instructors; + instructorString = ''; + IF instructor.pref_family_name; + instructorString = instructorString _ instructor.pref_family_name _ ', '; + ELSE; + instructorString = instructorString _ instructor.family_name _ ', '; + END; + IF instructor.pref_first_given_name; + instructorString = instructorString _ instructor.pref_first_given_name; + ELSE; + instructorString = instructorString _ instructor.first_given_name; + END; + instructorString = instructorString _ ' (' _ l(instructor.usr_role) _ ')'; %] + [% instructorString %]. + [% END %] +
+ [% END %] + +
+

[% l('Course Details') %]

+
+ [% l('Course Title') %]: + [% ctx.course.name %] +
+
+ [% l('Course Number') %]: + [% ctx.course.course_number %] +
+
+ [% l('Section Number') %]: + [% ctx.course.section_number %] +
+
+ [% + owning_lib = ctx.get_aou(ctx.course.owning_lib); + lib_url = ctx.get_org_setting(owning_lib.id, 'lib.info_url'); + prefer_external_url = ctx.get_org_setting(owning_lib.id, 'lib.prefer_external_url'); + UNLESS lib_url && prefer_external_url; + lib_url = mkurl(ctx.opac_root _ '/library/' _ owning_lib.shortname, {}, 1); + END; + %] + [% l('Owning Library') %]: + [% owning_lib.name %] +
+
+ + [%- UNLESS ctx.course.is_archived == 't' %] +
+

[% l('Course Materials') %]

+ + + + + + + + + + + + + + [% FOREACH material IN ctx.course_materials %] + + + + + + + + + + [% END %] + +
LocationCall NumberTitleBarcodeRelationshipStatusShelving Location
+ [% IF material.item %] + [%- fleshed_ou = material.item.circ_lib -%] + [%- INCLUDE "opac/parts/library_name_link_from_ou.tt2"; -%] + [% ELSE %] + [% l('Online') %] + [% END %] + + + + [% IF material.item %] + [% material.item.call_number.label %] + [% END %] + + + [% material.record.wide_display_entry.title %] + + + [% IF material.item %] + [% material.item.barcode %] + [% END %] + [% material.relationship %] + [% IF material.item %] + [% material.item.status.name %] + [% END %] + + [% IF material.item %] + [% material.item.location.name %] + [% END %] +
+
+ [% END %] +
+
+
diff --git a/Open-ILS/src/templates-bootstrap/opac/parts/course_search/global_row.tt2 b/Open-ILS/src/templates-bootstrap/opac/parts/course_search/global_row.tt2 new file mode 100644 index 0000000000..d68842f09b --- /dev/null +++ b/Open-ILS/src/templates-bootstrap/opac/parts/course_search/global_row.tt2 @@ -0,0 +1,55 @@ +[% + contains_options = [ + {value => 'contains', label => l('Contains')}, + {value => 'nocontains', label => l('Does not contain')} + ]; + contains = CGI.param('contains'); + queries = CGI.param('query'); + bools = CGI.param('bool'); + qtypes = CGI.param('qtype'); + rowcount = 3; + + # scalar.merge treats the scalar as a 1-item array + WHILE queries.size < rowcount; queries = queries.merge(['']); END; + WHILE bools.size < rowcount; bools = bools.merge(['and']); END; + WHILE qtypes.size < rowcount; qtypes = qtypes.merge(search.default_qtypes.${qtypes.size} ? [search.default_qtypes.${qtypes.size}] : ['keyword']); END; + + FOR qtype IN qtypes; + c = contains.shift; + b = bools.shift; + q = queries.shift; %] + + + + + + + + + + + [% INCLUDE "opac/parts/course_search/qtype_selector.tt2" + query_type=qtype %] + + + + + + [% l('Remove row') %] + + + +[% END %] diff --git a/Open-ILS/src/templates-bootstrap/opac/parts/course_search/qtype_selector.tt2 b/Open-ILS/src/templates-bootstrap/opac/parts/course_search/qtype_selector.tt2 new file mode 100644 index 0000000000..003218bfc7 --- /dev/null +++ b/Open-ILS/src/templates-bootstrap/opac/parts/course_search/qtype_selector.tt2 @@ -0,0 +1,30 @@ +[% query_types = [ + {value => "name", label => l("Course Name"), plural_label => l("Course Names"), browse => 1}, + {value => "course_number", label => l("Course Number"), plural_label => l('Course Numbers'), browse => 1} +]; + +locg = CGI.param('locg') || ctx.physical_loc || ctx.aou_tree.id || 1; + +IF ctx.get_org_setting(locg, 'circ.course_materials_browse_by_instructor'); +query_types.push({ + value => "instructor", + label => l("Instructor"), + plural_label => l('Instructors'), + browse => 1}, +); +END; +-%] +