if ($address) {
$ctx->{mailing_address} = $address;
} elsif (!$address && $aou->mailing_address) {
- # We didn't get cached hours, so hit the database
+ # We didn't get cached address, so hit the database
my $session = OpenSRF::AppSession->create("open-ils.actor");
$ctx->{mailing_address} =
$session->request('open-ils.actor.org_unit.address.retrieve',
$library_cache->put_cache($address_cache_key, OpenSRF::Utils::JSON->perl2JSON($ctx->{mailing_address}), 360);
}
+ # PINES: Get physical address too
+ if ($aou->billing_address) {
+ my $session = OpenSRF::AppSession->create("open-ils.actor");
+ $ctx->{billing_address} =
+ $session->request('open-ils.actor.org_unit.address.retrieve',
+ $aou->billing_address)->gather(1);
+ }
+
# Get current hours of operation
my $hours_cache_key = "TPAC_aouhoo_cache_$lib_id";
my $hours = OpenSRF::Utils::JSON->JSON2perl($library_cache->get_cache($hours_cache_key));
.holdingsTable td:nth-of-type(3):before { content: "Call number"; display: flex;}
.holdingsTable td:nth-of-type(4):before { content: "Status"; display: flex;}
- .chargesTable td:nth-of-type(1):before { content: "Select"; display: flex; }
+ .chargesTable td:nth-of-type(1):before { content: ""; display: flex; }
.chargesTable td:nth-of-type(2):before { content: "Owed"; display: flex; }
.chargesTable td:nth-of-type(3):before { content: "Billing Type"; display: flex;}
.chargesTable td:nth-of-type(4):before { content: "Note"; display: flex;}
.chargesTable td:nth-of-type(5):before { content: "Date"; display: flex;}
- .chargesMainTable td:nth-of-type(1):before { content: "Select"; display: flex; }
+ .chargesMainTable td:nth-of-type(1):before { content: ""; display: flex; }
.chargesMainTable td:nth-of-type(2):before { content: "Owed"; display: flex; }
.chargesMainTable td:nth-of-type(3):before { content: "Billing Type"; display: flex;}
.chargesMainTable td:nth-of-type(4):before { content: "Title"; display: flex;}
.chargesMainTable td:nth-of-type(5):before { content: "Checkout"; display: flex;}
.chargesMainTable td:nth-of-type(6):before { content: "Due"; display: flex;}
- .chargesMainTable td:nth-of-type(7):before { content: "Returned/Renewed"; display: flex;}
+ .chargesMainTable td:nth-of-type(7):before { content: "Status"; display: flex;}
.activeHoldstable td:nth-of-type(1):before { content: "Select"; display: flex; }
.activeHoldstable td:nth-of-type(2):before { content: "Cover"; display: flex; }
background-color: #ddd;
}
+pre {
+ overflow-x: auto;
+ white-space: pre-wrap;
+ white-space: -moz-pre-wrap;
+ white-space: -pre-wrap;
+ white-space: -o-pre-wrap;
+ word-wrap: break-word;
+}
+
@media only screen and (max-width: 1200px) {
.carousel {
margin-left: 430px;
<form action="[% ctx.opac_root %]/myopac/main_payment_form#payment" method="get" id="selected_fines">
[% END %]
+ <h3>
+ [% l("Charges On Your Account") %]
+ </h3>
+ <div style="padding-bottom:10px;">[% l("PINES Account Tips") %]</div>
+
[% IF ctx.fines.circulation.size > 0 %]
<div id='myopac_circ_trans_div'>
<div class="header_middle">
[% l("Circulation Charges") %]
[% END %]
</span>
-
</div>
-
- <div class="table-responsive">
<table id="acct_fines_main_header" class="table table-hover table-bordered miniTable chargesMainTable" title="[% l('Items Checked Out') %]">
<thead>
<tr>
-
- [% IF myopac_cc_allowed %]
- <th style="white-space:nowrap;">
- <input id="pay_fines_box1" checked="checked"
+ <th style="white-space:nowrap;text-align:">
+ [% IF myopac_cc_allowed %]
+ <input id="pay_fines_box1" checked="checked"
type="checkbox" onclick="select_all_checkboxes('xact', this.checked)"
title="[% l('Click to (un)select all charges') %]" />
+ [% END %]
</th>
- [% END %]
<th>[% l("Owed") %]</th>
<th>[% l("Billing Type") %]</th>
<th>[% l("Title") %]</th>
<th>[% l("Checkout") %]</th>
<th>[% l("Due ") %]</th>
<th>[% l("Returned/Renewed") %]</th>
-
</tr>
</thead>
<tbody id='myopac_circ_trans_tbody'>
attrs.title = f.xact.reservation.target_resource_type.name;
END %]
<tr id='myopac_circ_trans_row'>
- [% IF myopac_cc_allowed %]
+
<td class="checkCell">
- <input type="checkbox" checked="checked"
+ [% IF myopac_cc_allowed %]
+ <input type="checkbox" checked="checked"
title="[% l('Pay this fine') %]" name="xact"
value="[% f.xact.id %]" class="fineCheck"/>
+ [% END %]
</td>
- [% END %]
- <td>
+ <td class="danger">
<strong>
[% money(f.xact.balance_owed) %]
</strong>
<span class="danger">[% l('(fines accruing)') %]</span>
[% END %]
</td>
-
</tr>
[% END %]
</tbody>
[% IF ctx.fines.grocery.size > 0 %]
<!-- Table for all non-circulation transactions -->
- <div id='myopac_trans_div' class="mt-3">
- <h3>
- [% l("Charges On Your Account") %]
- </h3>
- <div style="padding-bottom:10px;">[% l("PINES Account Tips") %]</div>
+ <div id='myopac_trans_div'>
+ <div class="header_middle">
+ <span class="acct_fines_header">
+ <!-- Different heading when not able to pay -->
+ [% IF myopac_cc_allowed %]
+ [% l("Pay Other Selected Charges") %]
+ [% ELSE %]
+ [% l("Other Charges") %]
+ [% END %]
+ </span>
+ </div>
[% IF myopac_cc_allowed %]
<div class="d-block d-md-none">
<table id="acct_fees_main_header" class="table table-hover table-bordered mini-table" title="[% l('Other Fines and Fees') %]">
<thead>
<tr>
-
- [% IF myopac_cc_allowed %]
<th style="white-space:nowrap;">
+ [% IF myopac_cc_allowed %]
<input id="pay_fines_box2" checked="checked"
type="checkbox" onclick="select_all_checkboxes('xact_misc', this.checked)"
aria-label="[% l('Check/Uncheck All') %]" />
+ [% END %]
</th>
- [% END %]
<th >[% l("Owed") %]</th>
<th >[% l("Billing Type") %]</th>
<th >[% l("Note") %]</th>
[% FOR f IN ctx.fines.grocery %]
<tr class ='myopac_trans_row'>
[% c = c + 1; %]
- [% IF myopac_cc_allowed %]
<td class="checkCell">
+ [% IF myopac_cc_allowed %]
<label class="sr-only">Billing Number [% c %]</label>
<input aria-label="Pay This Bill" class="fineCheck" type="checkbox" name="xact_misc" value="[% f.xact.id %]" checked="checked" />
+ [% END %]
</td>
- [% END %]
<td class="danger">
<span class="sr-only">Amount Owed</span>
parent="circs";
%]
<h3>[% l('Current Items Checked Out') %]</h3>
+<p style="font-style:italic;">[% l("Do you want to save a list of items you check out? Enable that feature by going to Preferences > Search & History.") %]</p>
<div style="padding-bottom:10px;">[% l("PINES Account Tips") %]</div>
<div id='myopac_checked_div'>
</tr>
[%- setting = 'opac.default_search_location'; -%]
<tr >
- <td><label for='[% setting %]'>[% l("Preferred search location") %]</label></td>
+ <td><label for='[% setting %]'>[% l("Preferred search location") %]</label><br/>
+ <p style="font-style:italic;max-width:400px;">Hint: The list of libraries is organized by regional library system, then the names of the branches within that system. If you are not sure which library is closest to you, use the <a href="http://pines.georgialibraries.org/pinesLocator/locator.html" target="_blank">Library Locations Map</a> to find the name of your local library system and branch.</p></td>
<td>
[%- thang = ctx.user.home_ou.id;
IF ctx.user_setting_map.$setting;
<h2>[% ctx.library.name | html %]</h2>
- [%- IF ctx.library.mailing_address; %]
+ [%- IF ctx.billing_address; %]
+ <div class="my-3" id="addresses">
+ <div id="billing" property="location address" typeof="PostalAddress">
+ <h3 property="contactType">[% l('Address') %]</h3>
+ [% IF ctx.mailing_address.street1 != ctx.billing_address.street1; %]
+ <h4 style="font-weight:bold;font-size:1em;" property="contactType">[% l('Building Location') %]</h4>
+ [% END %]
+
+ <span property="streetAddress">[% ctx.billing_address.street1 | html %]
+ [%- IF ctx.billing_address.street2; "<br />"; ctx.billing_address.street2 | html; END; %]
+ </span><br />
+ <span property="addressLocality">[% ctx.billing_address.city | html %]</span>,
+ <span property="addressRegion">[% ctx.billing_address.state | html %]</span>
+ <span property="postalCode">[% ctx.billing_address.post_code | html %]</span><br/>
+ <a href="http://www.google.com/maps/place/[% ctx.billing_address.street1 | html %]+[% ctx.billing_address.street2 | html %]+[% ctx.billing_address.city | html %]+[% ctx.billing_address.state | html %]+[% ctx.billing_address.post_code | html %]"><i class="fas fa-map-marker-alt" style="color:#28A745;" aria-hidden="true"></i> Map / Directions</a>
+ </div>
+ </div>
+ [%- END; %]
+
+
+ [%- IF ctx.mailing_address AND (ctx.mailing_address.street1 != ctx.billing_address.street1); %]
<div class="my-3" id="addresses">
<div id="mailing" property="location address" typeof="PostalAddress">
- <h3 property="contactType">[% l('Location') %]</h3>
+ <h4 style="font-weight:bold;font-size:1em;" property="contactType">[% l('Mailing Address') %]</h4>
<span property="streetAddress">[% ctx.mailing_address.street1 | html %]
[%- IF ctx.mailing_address.street2; "<br />"; ctx.mailing_address.street2 | html; END; %]
</span><br />
<span property="addressLocality">[% ctx.mailing_address.city | html %]</span>,
<span property="addressRegion">[% ctx.mailing_address.state | html %]</span>
<span property="postalCode">[% ctx.mailing_address.post_code | html %]</span><br/>
- <br />
- <a href="http://www.google.com/maps/place/[% ctx.mailing_address.street1 | html %]+[% ctx.mailing_address.street2 | html %]+[% ctx.mailing_address.city | html %]+[% ctx.mailing_address.state | html %]+[% ctx.mailing_address.post_code | html %]"><i class="fas fa-map-marker-alt" style="color:#28A745;" aria-hidden="true"></i> Map / Directions</a>
</div>
</div>
[%- END; %]
[% IF hdata.parts.size > 0 %]
<div class='hold-div'>
[% IF enable.radio.parts == 'true' %]
- <span class='hold-span'><label for='select_hold_part'>[%
+ <span class='hold-span'><b><label for='select_hold_part'>[%
l('Select a Part:')
- %]</label></span>
+ %]</b></label></span>
<div class='radio-parts-selection'>
[% IF !hdata.part_required %]
<span class='parts-radio-option'>
<p class="w-50">
[%- org_select_id = 'pickup_lib'; -%]
<label for="[% org_select_id %]" class="font-weight-bold">[%l('Pickup location:') %]</label>
+ <a title="" data-toggle="tooltip" data-original-title="You can set and save your preferred hold pickup location at My Account > Preferences > Search & History."><i class="fas fa-question-circle" aria-hidden="true"></i></a>
[% PROCESS "opac/parts/org_selector.tt2";
INCLUDE build_org_selector name='pickup_lib'
value=ctx.default_pickup_lib id=org_select_id
</p>
<span class="font-weight-bold">[% l('Notify when hold is ready for pickup?') %]</span>
+ <a title="" data-toggle="tooltip" data-original-title="You can set and save your preferred hold notification settings at My Account > Preferences > Notification Preferences."><i class="fas fa-question-circle" aria-hidden="true"></i></a>
<p>
<div class="form-check m-2">
<input class="form-check-input" type="checkbox" value="t" id="email_notify" name="email_notify" [% IF !ctx.user.email %]disabled="true"[% ELSIF ctx.default_email_notify %]checked="checked"[% END %]>
</div>
</div>
<!--Cover Image-->
- <div class='col-sm-2 text-center' id="result[% rec.bre_id %]">
- <a href="[% mkurl(record_url_path, add_parms, del_parms); %]"><img alt="[% attrs.title | html;%]"
- id='item_jacket[% rec.bre_id %]' class='my-2 img-fluid'
- src='[% ctx.media_prefix %]/opac/extras/ac/jacket/large/r/[% rec.bre_id | uri %]' style="max-height:150px;" /></a><br />
+ <div class='col-sm-auto text-center' id="result[% rec.bre_id %]">
+ <a href="[% mkurl(record_url_path, add_parms, del_parms); %]"><img alt="" id='item_jacket[% rec.bre_id %]' class='my-2'
+src='[% ctx.media_prefix %]/opac/extras/ac/jacket/large/r/[% rec.bre_id | uri %]' style="width:120px;" /></a><br />
</div>
<!--Info-->
<div class='result_table_title_cell col'>
[%- END; END; -%]
</div>
- [%- IF !show_detail_view AND args.holdings.size > 0 %]
- <div class="result_call_number">
- [% l('Call number:') %] [% args.holdings.0.label | html %]
- </div>
- [% END %]
+
[% IF rec.popularity > 0.0 AND ctx.hide_badge_scores != 'true' %]
<div><span><strong>[% l('Popularity:') %]</strong> [% rec.popularity %] / 5.0</span></div>
<!--Place Hold Button -->
-
+
<a role="button" href="[% mkurl(ctx.opac_root _ '/place_hold', add_parms, del_parms) %]"
[% html_text_attr('title', l('Place Hold on [_1]', attrs.title)) %]
class="btn btn-action" rel="nofollow" vocab="">
[%- END -%]
+
+
<!-- eBook Buttons -->
[%- IF ebook_api.enabled == 'true' && args.ebook %]
['query','tag','subfield','term','_special','sort','page']) %]"
[% html_text_attr('title', l('Check Out [_1]', attrs.title)) %]
class="btn btn-action" role="button" rel="nofollow" vocab=""><i class="fas fa-atlas" aria-hidden="true"></i> <span class="result_place_hold">[% l('Check Out E-Item') %]</span></a>
-
-
+
<a href="[% mkurl(ctx.opac_root _ '/myopac/ebook_place_hold',
{title => args.ebook.ebook_id, vendor => args.ebook.vendor, action => 'place_hold'},
['query','tag','subfield','term','_special','sort','page']) %]"
%]
[% END %]
[% END %]
+
+ <!-- More info button -->
+ <a href="[% mkurl(record_url_path, add_parms, del_parms); %]" role="button" class="btn btn-action" title="[% l("More Info") %]" rel="nofollow" vocab="">
+ <i class="fas fa-angle-double-right" aria-hidden="true"></i>
+ [% l("More Info") %]
+ </a>
<!--Added Content - Content Cafe -->
[% IF ENV.OILS_CONTENT_CAFE_USER %]
<div class="col-sm-12 col-md">
<label id="search_qtype_label" for="qtype" class="w-100">
[%-
- l('Search by:');
+ l('Search by:');"<a title=\"\" data-toggle=\"tooltip\" data-original-title=\"Keyword will search the title, author, description, and other catalog fields.\"><i class=\"fas fa-question-circle\" aria-hidden=\"true\"></i></a>";
INCLUDE "opac/parts/qtype_selector.tt2" id="qtype";
-%]
</label>
<div class="col-sm-12 col-md">
<label id="search_locg_label" for="search_org_selector" class="w-100">
[%-
- l('Search within:');
+ l('Search within:');"<a title=\"\" data-toggle=\"tooltip\" data-original-title=\"Select "PINES" to search all libraries. Set and save your search preferences at My Account > Preferences > Search & History.\"><i class=\"fas fa-question-circle\" aria-hidden=\"true\"></i></a>";
select_lib_label = l("Search within:");
INCLUDE build_org_selector arialabel=select_lib_label
id='search_org_selector' show_loc_groups=1 show_lassos=1
-%]
+
</label>
</div>
[% END %]
</form>
[% END %]
- [% IF fcount > 0 %]
- <div class="refine_search result_block_visible">
- <span id="filter_hits">[ <a href="#" onclick="getAdvLimits();return false;">[% l('[quant,_1,filter,filters] applied', fcount) %]</a> ]</span>
- </div>
- [% END %]
- [% IF ctx.query_struct.filters.size > 0 %]
+ [% IF fcount > 2 %]
[% stuff = INCLUDE 'opac/parts/result/adv_filter.tt2' %]
[% IF stuff %]
<h3 class="sr-only">[% l('Search Results filters') %]</h3>
- <div id="adv_filter_results_block" class="adv_filter_results_hide">
+ <div id="adv_filter_results_block">
<div class="adv_filter_results_block_label" style="text-align:left;">[% l('Filtered by:') %]</div>
[% stuff %]
</div>
name="modifier" value="metabib"
onchange="search_modifier_onchange('metabib', this, true)"
[% CGI.param('modifier').grep('metabib').size ? ' checked="checked"' : '' %] />
- [% l('Group By Formats and Editions') %]
+ [% l('Combine Same Title') %]
+ <a title="" data-toggle="tooltip" data-original-title="When there are multiple editions or formats of a title, each one will appear as a separate result. Check this box to group them together.">
+ <i class="fas fa-question-circle" aria-hidden="true"></i>
+ </a>
</label>
</div>
[% END %]