]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/web/templates/default/opac/myopac/main.tt2
Merge branch 'master' of ssh://yeti.esilibrary.com/home/evergreen/evergreen-equinox...
[working/Evergreen.git] / Open-ILS / web / templates / default / opac / myopac / main.tt2
1 [%  PROCESS "default/opac/parts/header.tt2";
2     PROCESS "default/opac/parts/marc_misc.tt2";
3     WRAPPER "default/opac/parts/base.tt2" +
4         "default/opac/parts/myopac/base.tt2";
5     myopac_page = "main"  %]
6 <div id='myopac_summary_div' style="padding:0px;">
7     <div id="acct_sum">
8         <div style="width:742px;float:left;">
9             <div class="header_middle">Account Summary</div>
10         </div>
11         <div id="myopac_sum_fines">
12             <div style="position:absolute;">
13                 <div style="position:relative;top:-15px;left:-23px;">
14                     <img src="[% ctx.media_prefix %]/images/acct_sum_fines_tl.png" />
15                 </div>
16             </div>
17             <div style="position:absolute;">
18                 <div style="position:relative;top:-15px;left:172px;">
19                     <img src="[% ctx.media_prefix %]/images/acct_sum_fines_tr.png" />
20                 </div>
21             </div>
22             <div style="position:absolute;">
23                 <div style="position:relative;top:161px;left:-23px;">
24                     <img src="[% ctx.media_prefix %]/images/acct_sum_fines_bl.png" />
25                 </div>
26             </div>
27             <div style="position:absolute;">
28                 <div style="position:relative;top:161px;left:172px;">
29                     <img src="[% ctx.media_prefix %]/images/acct_sum_fines_br.png" />
30                 </div>
31             </div>
32             [% l('Fines:') %]
33             <span id="myopac_sum_fines_bal" class='[% ctx.fines.balance_owed ? "red" : ""%]'>
34                 [% money(ctx.fines.balance_owed) %]
35             </span><br />
36             <a class="hide_me" href="#" id="pay_fines_btn1"><img
37                 alt="[% l('Pay Fines') %]"
38                 onmouseover="this.src='[% ctx.media_prefix %]/images/pay-fines-btn-hover.png';"
39                 onmouseout="this.src='[% ctx.media_prefix %]/images/pay-fines-btn.png';"
40                 src="[% ctx.media_prefix %]/images/pay-fines-btn.png"
41                 style="position:relative;top:5px;" /></a>
42         </div>
43         <div style="width:662px;">
44             <div style="float:left;">
45                 <div style="padding:10px 0px;" id="myopac_sum_name"></div>
46                 <div class="acct_sum_row">
47                     <table width="100%" cellspacing="0" cellpadding="0">
48                         <tr>
49                             <td>
50                                 [% l("Items Currently Checked out") %]
51                                 <span id="myopac_sum_checked" class="view_link">
52                                     ([% ctx.user_stats.checkouts.total_out %])
53                                 </span>
54                             </td>
55                             <td align="right" class="view_link">
56                                 <a href="[% ctx.opac_root %]/myopac/circs">[% l("View All") %]</a>
57                             </td>
58                         </tr>
59                     </table>
60                 </div>
61                 <div class="acct_sum_row">
62                     <table width="100%" cellspacing="0" cellpadding="0">
63                         <tr>
64                             <td>
65                                 Items Currently on Hold
66                                 <span id="myopac_sum_holds" class="view_link">
67                                     ([% ctx.user_stats.holds.total %])
68                                 </span>
69                             </td>
70                             <td align="right" class="view_link">
71                                 <a href="[% ctx.opac_root %]/myopac/holds">View All</a>
72                             </td>
73                         </tr>
74                     </table>
75                 </div>
76                 <div class="acct_sum_row">
77                     <table width="100%" cellspacing="0" cellpadding="0">
78                         <tr>
79                             <td>
80                                 Items ready for pickup
81                                 <span id="myopac_sum_pickup" class="view_link">
82                                     ([% ctx.user_stats.holds.ready %])
83                                 </span>
84                             </td>
85                             <td align="right" class="view_link">
86                                 <a href="[% ctx.opac_root %]/myopac/holds?available=1">View All</a>
87                             </td>
88                         </tr>
89                     </table>
90                 </div>
91                 <div class="acct_sum_row" id="myopac_sum_fines_slim">
92                     <table width="100%" cellspacing="0" cellpadding="0">
93                         <tr>
94                             <td>Fees &amp; Fines</td>
95                             <td align="right" class="view_link">
96                                 <a class="hide_me"
97                                     id="show_fines_link"
98                                     href="#">Show Overdue Materials</a>
99                             </td>
100                         </tr>
101                     </table>
102                 </div>
103             </div>
104         </div>
105         <div class="clear-both"></div>
106
107         <!-- open transaction summary;  
108         <div id='myopac_fines_div'>
109             <table width='100%' class='data_grid data_grid_center'>
110                 <thead class='color_3'>
111                     <tr>
112                         <td colspan='3' style='padding: 6px'>
113                             <b>[% l("Summary") %]</b>
114                         </td>
115                     </tr>
116                     <tr>
117                         <td width='33%'>[% l("Total Owed") %]</td>
118                         <td width='33%'>[% l("Total Paid") %]</td>
119                         <td width='33%'>[% l("Balance Owed") %]</td>
120                     </tr>
121                 </thead>
122                 <tbody id='myopac_fines_summary_tbody'>
123                     <tr id='myopac_fines_summary_row'>
124                         <td id='myopac_fines_summary_total'>[% money(ctx.fines.total_owed) %]</td>
125                         <td id='myopac_fines_summary_paid'>[% money(ctx.fines.total_paid) %]</td>
126                         <td id='myopac_fines_summary_balance' class='bold-red'>[% money(ctx.fines.balance_owed) %]</td>
127                     </tr>
128                 </tbody>
129             </table>
130         -->
131
132         <!--
133         <div id='accrue_explanation' class='hide_me'>
134             <span>Transactions whose balances are marked with a</span>
135             <span class='bold-red'>*</span>
136             <span>will continue to accrue fines until the checked out item is returned.</span>
137         </div>
138         -->
139         [% IF ctx.fines.circulation.size > 0 %]
140             <div id='myopac_circ_trans_div'>
141                 <br/><hr/><br/>
142                 <table width='100%' class='data_grid data_grid_center'
143                     id='myopac_circ_trans_table'>
144                     <thead>
145                         <tr>
146                             <td colspan='10' style='padding: 6px'>
147                                 <strong>[% l("Fines") %]</strong>
148                             </td>
149                         </tr>
150                         <tr>
151                             <td>[% l("Title") %]</td>
152                             <td>[% l("Author") %]</td>
153                             <td>[% l("Checkout Date") %]</td>
154                             <td>[% l("Due Date") %]</td>
155                             <td>[% l("Date Returned") %]</td>
156                             <td>[% l("Balance Owed") %]</td>
157                             <!-- TODO: hidden until pay-fines is implemented
158                             <td nowrap="nowrap" style="white-space:nowrap;">
159                                 <input id="pay_fines_box1" checked="checked"
160                                     type="checkbox" title="[% l('Click to (un)select all fines') %]" />
161                                 <label for="pay_fines_box1">[% l('Pay Fines') %]</label>
162                             </td>
163                             -->
164                         </tr>
165                     </thead>
166                     <tbody id='myopac_circ_trans_tbody'>
167                         [% FOR f IN ctx.fines.circulation;
168                             attrs = {marc_xml => f.marc_xml};
169                             PROCESS get_marc_attrs args=attrs %]
170                         <tr id='myopac_circ_trans_row'>
171                             <td>
172                                 <a class='classic_link'
173                                     href="[% ctx.opac_root %]/record/[% f.xact.circulation.target_copy.call_number.record.id %]">[% attrs.title %]</a>
174                             </td>
175                             <td>
176                                 <a class="classic_link"
177                                     href="[% ctx.opac_root %]/results?qtype=author&query=[% attrs.author | replace('[,\.:;]', '') | url %]">[% attrs.author %]</a>
178                             </td>
179                             <td name='myopac_circ_trans_start'>
180                                 [% date.format(
181                                     ctx.parse_datetime(
182                                         f.xact.circulation.xact_start
183                                     ), DATE_FORMAT
184                                 ) %]
185                             </td>
186                             <td name='myopac_circ_trans_due'>
187                                 [% date.format(
188                                     ctx.parse_datetime(
189                                         f.xact.circulation.due_date
190                                     ), DATE_FORMAT
191                                 ) %]
192                             </td>
193                             <td name='myopac_circ_trans_finished'>
194                                 [%  IF f.xact.circulation.checkin_time;
195                                         date.format(
196                                             ctx.parse_datetime(
197                                                 f.xact.circulation.checkin_time
198                                             ), DATE_FORMAT
199                                         );
200                                     ELSE %]
201                                     <!-- XXX TODO fines aren't really accruing
202                                         if circ has hit maxfines. more clarity
203                                         here? -->
204                                     <span class="red">[% l('(fines accruing)') %]</span>
205                                 [%  END %]
206                             </td>
207                             <td>
208                                 <strong class="red">
209                                     [% money(f.xact.balance_owed) %]
210                                 </strong>
211                             </td>
212                             <!-- TODO: hidden until pay-fines is implemented
213                             <td>
214                                 <input type="checkbox" name="selector" title="[% l('Pay this fine') %]" />
215                             </td>
216                             -->
217                         </tr>
218                         [% END %]
219                     </tbody>
220                 </table>
221             </div>
222         [% END %]
223
224         [% IF ctx.fines.grocery.size > 0 %]
225             <!-- Table for all non-circulation transactions -->
226             <div id='myopac_trans_div'>
227                 <br/>
228                 <hr class='opac-auto-013'  color="#dcdbdb" />
229                 <br/>
230                 <table width='100%' class='data_grid data_grid_center'
231                     id='myopac_trans_table'>
232                     <thead>
233                         <tr>
234                             <td colspan='8' style='padding: 6px'>
235                                 <b>[% l("Other Fees") %]</b>
236                             </td>
237                         </tr>
238                         <tr>
239                             <td width='16%'>[% l("Transaction Start Time") %]</td>
240                             <td width='16%'>[% l("Last Payment Time") %]</td>
241                             <td width='16%'>[% l("Initial Amount Owed") %]</td>
242                             <td width='16%'>[% l("Total Amount Paid") %]</td>
243                             <td width='16%'>[% l("Balance Owed") %]</td>
244                             <td width='16%'>[% l("Billing Type") %]</td>
245                             <!-- TODO: hidden until pay-fines is implemented
246                             <td width='4%' align="center" nowrap="nowrap"
247                                 style="white-space:nowrap;">
248                                 <input id="pay_fines_box2" checked="checked"
249                                     type="checkbox"
250                                     title="[% l('Click to (un)select all fines') %]" />
251                                 <label for="pay_fines_box2">[% l("Pay Fines") %]</label>
252                             </td>
253                             -->
254                         </tr>
255                     </thead>
256                     <tbody id='myopac_trans_tbody'>
257                         [% FOR f IN ctx.fines.grocery %]
258                         <tr id='myopac_trans_row'>
259                             <td>[% date.format(
260                                     ctx.parse_datetime(f.xact.xact_start),
261                                     DATE_FORMAT
262                             ) %]</td>
263                             <td>
264                                 [%  IF f.xact.last_payment_ts;
265                                         date.format(
266                                             ctx.parse_datetime(
267                                                 f.xact.last_payment_ts
268                                             ), DATE_FORMAT
269                                         );
270                                     END %]
271                             </td>
272                             <td>[% money(f.xact.total_owed) %]</td>
273                             <td>[% money(f.xact.total_paid) %]</td>
274                             <td class="red">
275                                 <strong>
276                                     [% money(f.xact.balance_owed) %]
277                                 </strong>
278                             </td>
279                             <td>[% f.xact.last_billing_type %]</td>
280                             <!-- TODO: hidden until pay-fines is implemented
281                             <td>
282                                 <input type="checkbox" name='selector' title='[% l("Pay this fine") %]'/>
283                             </td>
284                             -->
285                         </tr>
286                         [% END %]
287                     </tbody>
288                 </table>
289             </div>
290             [% END %]
291             <!-- TODO: hidden until pay-fines is implemented
292             <a href="#"><img alt="[% l('Pay Fines') %]"
293                 onmouseover="this.src='[% ctx.media_prefix %]/images/pay-fines-btn-hover.png';"
294                 src="[% ctx.media_prefix %]/images/pay-fines-btn.png"
295                 style="position:relative;top:5px;" /></a>
296             <br/>
297             -->
298         </div>
299     </div>
300     <div id="pay_fines_now" class="hide_me">
301         <table id='oils-selfck-cc-payment-table'>
302             <tbody>
303                 <tr>
304                     <td><div style="width:129px;"></div></td>
305                     <td><div style="width:195px;"></div></td>
306                     <td><div style="width:324px;"></div></td>
307                 </tr>
308                 <tr>
309                     <td colspan='2'><strong>Billing Information</strong></td>
310                     <td rowspan='13' valign='top'>
311                         Selected fines you are paying for:
312                         <table cellpadding="0" cellspacing="5" border="0">
313                             <thead>
314                                 <tr>
315                                     <td>
316                                         <strong>Name</strong>
317                                     </td>
318                                     <td>
319                                         <strong>Amount</strong>
320                                     </td>
321                                 </tr>
322                             </thead>
323                             <tbody id="selectedFines">
324                             </tbody>
325                         </table>
326                         <br />
327                         <div id='oils-selfck-cc-payment-summary'>
328                             Total amount to pay:
329                             <strong>$<span></span></strong>
330                         </div>
331                         <br />
332                         Click <strong>Cancel</strong> to go back and (un)select
333                         other fines.
334                     </td>
335                 </tr>
336                 <tr>
337                     <td>First Name</td>
338                     <td><input jsId='oilsSelfckCCFName' /></td>
339                 </tr>
340                 <tr>
341                     <td>Last Name</td>
342                     <td><input jsId='oilsSelfckCCLName' /></td>
343                 </tr>
344                 <tr>
345                     <td>Street Address</td>
346                     <td><input jsId='oilsSelfckCCStreet' /></td>
347                 </tr>
348                 <tr>
349                     <td>City</td>
350                     <td><input jsId='oilsSelfckCCCity' /></td>
351                 </tr>
352                 <tr>
353                     <td>State or Province</td>
354                     <td><input jsId='oilsSelfckCCState' /></td>
355                 </tr>
356                 <tr>
357                     <td>ZIP or Postal Code</td>
358                     <td><input jsId='oilsSelfckCCZip' /></td>
359                 </tr>
360                 <tr>
361                   <td colspan='2'><strong>Credit Card Information</strong></td>
362                 </tr>
363                 <!-- Technically not needed since card type is derived from the CC number
364                 <tr>
365                     <td>Type of Card</td>
366                     <td>
367                         <select jsId='oilsSelfckCCType' required='true'>
368                             <option value='VISA'>VISA</option>
369                             <option value='MasterCard'>MasterCard</option>
370                             <option value='American Express'>American Express</option>
371                         </select>
372                     </td>
373                 </tr>
374                 -->
375                 <tr>
376                     <td>Credit Card #</td>
377                     <td><input jsId='oilsSelfckCCNumber' /></td>
378                 </tr>
379                 <tr>
380                     <td>
381                         <div style="position:absolute;">
382                             <div style="position:relative;left:80px;">
383                                 <a href="#"><img
384                                     src="[% ctx.media_prefix %]/images/question-mark.png" /></a>
385                             </div>
386                         </div>
387                         Security Code
388                     </td>
389                     <td>
390                         <input jsId='oilsSelfckCCCVV' />
391                     </td>
392                 </tr>
393                 <tr>
394                     <td>Exipration Month</td>
395                     <td>
396                         <select jsId='oilsSelfckCCMonth'>
397                             <option value='01' selected='selected'>January</option>
398                             <option value='02'>February</option>
399                             <option value='03'>March</option>
400                             <option value='04'>April</option>
401                             <option value='05'>May</option>
402                             <option value='06'>June</option>
403                             <option value='07'>July</option>
404                             <option value='08'>August</option>
405                             <option value='09'>September</option>
406                             <option value='10'>October</option>
407                             <option value='11'>November</option>
408                             <option value='12'>December</option>
409                         </select>
410                     </td>
411                 </tr>
412                 <tr>
413                     <td>Expiration Year</td>
414                     <td>
415                       <select jsId='oilsSelfckCCYear'>
416                         <option value='2011'>2011</option>
417                         <option value='2012'>2012</option>
418                         <option value='2013'>2013</option>
419                         <option value='2014'>2014</option>
420                         <option value='2015'>2015</option>
421                         <option value='2016'>2016</option>
422                         <option value='2017'>2017</option>
423                         <option value='2018'>2018</option>
424                         <option value='2019'>2019</option>
425                       </select>
426                     </td>
427                 </tr>
428                 <tr class="hide_me">
429                     <td>Edit Billing Address</td>
430                     <td>
431                         <input jsId='oilsSelfckEditDetails'/>
432                     </td>
433                 </tr>
434                 <tr>
435                     <td colspan='2' align="center">
436                         <button jsId='oilsSelfckCCSubmit'>
437                             Submit Payment
438                         </button>
439                         <button>
440                             Cancel
441                         </button>
442                     </td>
443                 </tr>
444                 <tr>
445                     <td colspan="3">
446                         <br />
447                         Important! You must have a printed receipt to be
448                         eligible for a refund on lost items (regulations allow
449                         for no exceptions).
450                         <br />
451                         <strong>
452                             To ensure your necessary receipt information is
453                             not lost, enter your email address above and a
454                             receipt will be emailed to you. Otherwise, make
455                             certain you have a printed receipt in hand before
456                             closing the payment receipt screen.
457                         </strong>
458                         <br />
459                         Refunds are not available for parts and pieces, overdue
460                         fines, or items that do not display a specific title in
461                         My Account. For a full list of refundable and
462                         non-refundable items, visit
463                         <a href="http://www.kcls.org/usingthelibrary/borrowing/refundable.cfm">http://www.kcls.org/usingthelibrary/borrowing/refundable.cfm</a><br /><br />
464                         This site uses VeriSign SSL encryption to ensure your
465                         privacy.
466                     </td>
467                 </tr>
468             </tbody>
469         </table>
470     </div>
471 </div>
472 [% END %]