]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/templates/opac/myopac/prefs.tt2
LP 1884657 Improve Access to Library Info in OPAC
[Evergreen.git] / Open-ILS / src / templates / opac / myopac / prefs.tt2
1 [%  PROCESS "opac/parts/header.tt2";
2     WRAPPER "opac/parts/myopac/prefs_base.tt2";
3     myopac_page = "prefs";
4     prefs_page = 'prefs' %]
5
6 <h3 class="sr-only">[% l('Account Preferences') %]</h3>
7 <div id="acct_info_main">
8
9     <table width='70%' title="[% l('Account preference') %]"
10         class='light_border data_grid'>
11         <tbody id='myopac_summary_tbody'>
12             <tr>
13                 <td width='30%'
14                     class='color_4 light_border'>[% l("Name") %]</td>
15
16                 <td class='light_border'>[% l(
17                     HUMAN_NAME_FORMAT,
18                     ctx.user.prefix, 
19                     ctx.user.first_given_name,
20                     ctx.user.second_given_name, 
21                     ctx.user.family_name,
22                     ctx.user.suffix
23                 ) | html %]</td>
24
25                 <td></td>
26             </tr>
27             [% IF ctx.user.pref_first_given_name || ctx.user.pref_second_given_name || ctx.user.pref_family_name %]
28             <tr>
29                 <td width='30%'
30                     class='color_4 light_border'>[% l("Preferred Name") %]</td>
31
32                 <td class='light_border'>[% l(
33                     HUMAN_NAME_FORMAT,
34                     ctx.user.pref_prefix, 
35                     (ctx.user.pref_first_given_name || ctx.user.first_given_name),
36                     ctx.user.pref_second_given_name, 
37                     (ctx.user.pref_family_name || ctx.user.family_name),
38                     ctx.user.pref_suffix
39                 ) | html %]</td>
40
41                 <td></td>
42             </tr>
43             [%  END %]
44
45             <tr>
46                 <td class='color_4 light_border'>[% l("Day Phone") %]</td>
47                 <td class='light_border'>[% ctx.user.day_phone | html %]</td>
48                 <td></td>
49             </tr>
50
51             <tr>
52                 <td class='color_4 light_border'>[% l("Evening Phone") %]</td>
53                 <td class='light_border'>[% ctx.user.evening_phone | html %]</td>
54                 <td></td>
55             </tr>
56
57             <tr>
58                 <td class='color_4 light_border'>[% l("Other Phone") %]</td>
59                 <td class='light_border'>[% ctx.user.other_phone | html %]</td>
60                 <td></td>
61             </tr>
62
63             <tr>
64                 <td class='color_4 light_border'>
65                     <div style="position:absolute">
66                    </div>[% l("Username") %]
67                 </td>
68                 <td class='light_border'>[% ctx.user.usrname | html %]</td>
69                 [%- IF ctx.username_change_disallowed %]
70                 <td></td>
71                 [%- ELSE %]
72                 <td class='light_border'><a href='update_username'
73                     title="[% l('Change Username') %]">[% l("Change") %]</a></td>
74                 [%- END %]
75             </tr>
76             <tr>
77                 <td class='color_4 light_border'>[% l("Password") %]</td>
78                 <td class='light_border'>[% l("(not shown)") %]</td>
79                 [%- IF disable_password_change == 'true' %]
80                 <td></td>
81                 [%- ELSE %]
82                 <td class='light_border'><a href='update_password'
83                     title="[% l('Change Password') %]">[% l("Change") %]</a></td>
84                 [%- END %]
85             </tr>
86             <tr>
87                 <td class='color_4 light_border'>[% l("Email Address") %]</td>
88                 <td class='light_border'>[% ctx.user.email | html %]</td>
89                 [%- IF disable_email_change == 'true' %]
90                 <td></td>
91                 [%- ELSE %]
92                 <td class='light_border'><a href='update_email'
93                     title="[% l('Update Email Address') %]">[% l('Change') %]</a></td>
94                 [%- END %]
95             </tr>
96
97             [% IF ctx.user.ident_value %]<tr class="hide_me">
98                 <td class='color_4 light_border'>
99                 [% l("Primary Identification") %]</td>
100
101                 <td class='light_border'>
102                     [%
103                     # l('[_1] ([_2])', ctx.user.ident_value, ctx.user.ident_type.name) | html
104                     # XXX uncomment the above line to show primary
105                     # identification. With a minor tweak it could
106                     # alternatively be shown but partially obscured. 
107                     %]
108                 </td>
109                 <td></td>
110             </tr>[% END %]
111
112             <tr>
113                 <td class='color_4 light_border'>[% l("Active Barcode") %]</td>
114                 <td class='light_border'>[% ctx.user.card.barcode %]</td>
115                 <td></td>
116             </tr>
117
118             <tr>
119                 <td class='color_4 light_border'>[% l("Home Library") %]</td>
120                 <td class='light_border'>
121                     [% ctx.get_aou(ctx.user.home_ou.parent_ou).name | html %]<br/>
122                     [% ctx.user.home_ou.name | html %]<br/>
123                     [% ctx.user.home_ou.billing_address.street1 | html %]<br/>
124                     [% IF ctx.user.home_ou.billing_address.street2; ctx.user.home_ou.billing_address.street2 | html; "<br/>"; END %]
125                     [% ctx.user.home_ou.billing_address.city | html %], [% ctx.user.home_ou.billing_address.state | html %]
126                     [% ctx.user.home_ou.billing_address.post_code | html %]<br/>
127                     <br/>
128
129                     [% IF ctx.user.home_ou.phone; ctx.user.home_ou.phone | html; "<br/>"; END %]
130
131                     [% IF ctx.user.home_ou.email; '<a href="mailto:'; ctx.user.home_ou.email | html; '">'; ctx.user.home_ou.email | html; "</a><br/>"; END %]
132                     [% lib_url = ctx.get_org_setting(ctx.user.home_ou.id, 'lib.info_url');
133                         IF lib_url;
134                             '<a href="'; lib_url | html; '" property="url">'; lib_url | html;  '</a>';
135                         END;
136                     %]
137                 </td>
138                 <td></td>
139             </tr>
140             <tr>
141                 <td class='color_4 light_border'>[% l("Account Creation Date") %]</td>
142                 <td class='light_border'>[% date.format(ctx.parse_datetime(ctx.user.create_date), DATE_FORMAT) %]</td>
143                 <td></td>
144             </tr>
145             <tr>
146                 <td class='color_4 light_border'>[% l("Account Expiration Date") %]</td>
147                 <td class='light_border'>
148                     [%- IF date.format(ctx.parse_datetime(ctx.user.expire_date), '%s') < date.format(date.now , '%s'); -%]
149                         <span class="alert" style="font-weight:bold;">[% date.format(ctx.parse_datetime(ctx.user.expire_date), DATE_FORMAT) %]</span>
150                         </td>
151                     [% ELSE %]
152                         [% date.format(ctx.parse_datetime(ctx.user.expire_date), DATE_FORMAT) %]
153                     [% END %]
154                 </td>
155                 <td></td>
156             </tr>
157         </tbody>
158     </table><br />
159     <hr class='opac-auto-013' color="#DCDBDB" />
160     <br />
161
162     <table width='100%' class='light_border data_grid' title="[% l('Addresses') %]">
163         <thead>
164             <tr>
165                 <td><strong>[% l("Addresses") %]</strong></td>
166                 <td><strong>[% l("Pending Addresses") %]</strong></td>
167             </tr>
168         </thead>
169         <tbody>
170             [% 
171                 # cycle through the non-pending address.  For each non-pending addr
172                 # that has a corresponding pending addr, render the pending addr 
173                 # along the right inside it's own edit form
174                 pending = {};
175                 regular = [];
176                 edit_addr_id = CGI.param('edit_address');
177                 FOR addr IN ctx.user.addresses;
178                     IF addr.pending == 't';
179                         replaces = addr.replaces;
180                         pending.$replaces = addr;
181                     ELSE;
182                         regular.push(addr);
183                     END;
184                 END;
185             FOR addr IN regular;
186                 cur_id = addr.id; 
187                 pending_addr = pending.$cur_id;
188             %]
189             <tr>
190                 <td>
191                     <!-- read-only address display -->
192                     <table class='light_border' title="[% l('Active Addresses') %]">
193                         <tr><td>[% l("Address Type") %]</td><td>[% addr.address_type | html %]</td></tr>
194                         <tr><td>[% l("Street") %]</td><td>[% addr.street1 | html %]</td></tr>
195                         <tr><td>[% l("Street") %]</td><td>[% addr.street2 | html %]</td></tr>
196                         <tr><td>[% l("City") %]</td><td>[% addr.city | html %]</td></tr>
197                         <tr><td>[% l("County") %]</td><td>[% addr.county| html  %]</td></tr>
198                         <tr><td>[% l("State") %]</td><td>[% addr.state | html %]</td></tr>
199                         <tr><td>[% l("Country") %]</td><td>[% addr.country | html %]</td></tr>
200                         <tr><td>[% l("Zip") %]</td><td>[% addr.post_code | html %]</td></tr>
201                         [% IF ctx.get_org_setting(ctx.user.home_ou.id, 'opac.allow_pending_address') 
202                                 AND !pending_addr AND edit_addr_id != cur_id %]
203                         <tr>
204                             <td colspan='2'>
205                                 <a href='?edit_address=[% addr.id %]'>[% l('Edit Address') %]</a>
206                             </td>
207                         </tr>
208                         [% END %]
209                     </table>
210                 </td>
211
212                 <!-- pending address form -->
213                 [% IF pending_addr OR edit_addr_id == cur_id;
214                     update_addr = pending_addr || addr %]
215                 <td>
216                     <form method='post'>
217                         [% IF pending_addr %]
218                             <input type='hidden' name='pending_addr' value='[% pending_addr.id %]'/>
219                         [% ELSE %]
220                             <input type='hidden' name='replace_addr' value='[% edit_addr_id | html %]'/>
221                         [% END %]
222                         <table class='pending-addr' title="[% l('Pending Addresses') %]">
223                         [% addr_fields = [
224                             {label => l("Address Type"), name => 'address_type', value => update_addr.address_type},
225                             {label => l("Street"), name => 'street1', value => update_addr.street1},
226                             {label => l("Street"), name => 'street2', value => update_addr.street2},
227                             {label => l("City"), name => 'city', value => update_addr.city},
228                             {label => l("County"), name => 'county', value => update_addr.county},
229                             {label => l("State"), name => 'state', value => update_addr.state},
230                             {label => l("Country"), name => 'country', value => update_addr.country},
231                             {label => l("ZIP"), name => 'post_code', value => update_addr.post_code},
232                         ];
233                         FOR field IN addr_fields %]
234                             <tr>
235                                 <td><label for="addr-form-[% field.name %]">[% field.label %]</label></td>
236                                 <td><input name="[% field.name %]" 
237                                     id="addr-form-[% field.name %]"
238                                     value="[% field.value | html %]">
239                                 </td>
240                             </tr>
241                         [% END %]
242                             <tr>
243                                 <td><input type='submit' value="[% l('Save Changes') %]"/></td>
244                                 <td>
245                                     [% params = (pending_addr) ? {delete_pending => pending_addr.id} : {} %]
246                                     <a href="[% mkurl('', params, 1) %]">[% l('Discard Pending Address') %]</a>
247                                 </td>
248                             </tr>
249                             <tr><td colspan='2'><i>[% l('Address changes will be verified by staff') %]</i></td></tr>
250                         </table>
251                     </form>
252                 </td>
253                 [% END %] <!-- if pending_addr -->
254             </tr>
255             [% END %]
256         </tbody>
257     </table>
258 </div>
259
260 [% END %]