4 note the use of target="_self" for navigation links.
5 this tells angular to treat the href as a new page
6 and not an intra-app route. This is necessary when
7 moving between applications.
9 For icons, see http://getbootstrap.com/components/#glyphicons
12 <div id="top-navbar" role="navigation"
13 class="navbar navbar-default navbar-fixed-top" role="navigation">
15 <!-- navbar-header here needed for supporting angular-ui-bootstrap -->
16 <div class="navbar-header">
17 <button type="button" class="navbar-toggle"
18 ng-init="navCollapsed = true" ng-click="navCollapsed = !navCollapsed">
19 <span class="sr-only">[% l('Toggle navigation') %]</span>
20 <span class="icon-bar" aria-hidden="true"></span>
21 <span class="icon-bar" aria-hidden="true"></span>
22 <span class="icon-bar" aria-hidden="true"></span>
26 <div class="navbar-collapse collapse" ng-class="!navCollapsed && 'in'">
27 <ul class="nav navbar-nav">
28 <li><a href='./' title="[% l('Home') %]" target="_self"
29 class="glyphicon glyphicon-home"></a><li>
32 <li class="dropdown" uib-dropdown>
33 <a href uib-dropdown-toggle>[% l('Search') %]
34 <b class="caret" aria-hidden="true"></b>
36 <ul uib-dropdown-menu>
38 <a href="./circ/patron/search" target="_self"
39 eg-accesskey="[% l('alt+s') %] [% l('f4') %]"
40 eg-accesskey-desc="[% l('Patron search by name, address, etc.') %]">
41 <span class="glyphicon glyphicon-user" aria-hidden="true"></span>
42 <span eg-accesskey-label>[% l('Search for Patrons') %]</span>
46 <a href="./cat/item/search" target="_self"
47 eg-accesskey="[% l('f5') %]"
48 eg-accesskey-desc="[% l('Item Status') %]">
49 <span class="glyphicon glyphicon-barcode" aria-hidden="true"></span>
50 <span>[% l('Search for Items by Barcode') %]</span>
54 <a href="/eg2/staff/catalog/search"
55 eg-accesskey="[% l('f3') %]"
56 eg-accesskey-desc="[% l('Catalog') %]">
57 <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
58 <span>[% l('Search the Catalog') %]</span>
66 <li class="dropdown" uib-dropdown>
67 <a href uib-dropdown-toggle>[% l('Circulation') %]<b class="caret"
68 aria-hidden="true"></b>
71 <ul uib-dropdown-menu>
73 <a href="./circ/patron/bcsearch" target="_self"
74 eg-accesskey="[% l('f1') %]"
75 eg-accesskey-desc="[% l('Check Out') %]">
76 <span class="glyphicon glyphicon-export" aria-hidden="true"></span>
80 <li ng-if="!username">
81 <a href="" ng-click="rs.active_tab('checkout')" target="_self"
82 eg-accesskey="[% l('f1') %]"
83 eg-accesskey-desc="[% l('Check Out') %]">
84 <span class="glyphicon glyphicon-export" aria-hidden="true"></span>
89 <a href="./circ/checkin/checkin" target="_self"
90 eg-accesskey="[% l('f2') %]"
91 eg-accesskey-desc="[% l('Check In') %]">
92 <span class="glyphicon glyphicon-import" aria-hidden="true"></span>
96 <li ng-if="!username">
97 <a href="" ng-click="rs.active_tab('checkin')" target="_self"
98 eg-accesskey="[% l('f2') %]"
99 eg-accesskey-desc="[% l('Check In') %]">
100 <span class="glyphicon glyphicon-import" aria-hidden="true"></span>
105 <a href="./circ/checkin/capture" target="_self"
106 eg-accesskey="[% l('shift+f2') %]"
107 eg-accesskey-desc="[% l('Capture Holds') %]">
108 <span class="glyphicon glyphicon-pushpin" aria-hidden="true"></span>
109 [% l('Capture Holds') %]
113 <a href="./circ/holds/pull" target="_self">
114 <span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
115 [% l('Pull List for Hold Requests') %]
118 <li ng-if="username">
119 <a href="./circ/renew/renew" target="_self"
120 eg-accesskey="[% l('ctrl+f2') %]"
121 eg-accesskey-desc="[% l('Renew items') %]">
122 <span class="glyphicon glyphicon-refresh" aria-hidden="true"></span>
123 [% l('Renew Items') %]
126 <li ng-if="!username">
127 <a href="" ng-click="rs.active_tab('renew')" target="_self"
128 eg-accesskey="[% l('ctrl+f2') %]"
129 eg-accesskey-desc="[% l('Renew items') %]">
130 <span class="glyphicon glyphicon-refresh" aria-hidden="true"></span>
131 [% l('Renew Items') %]
134 <li ng-if="username">
135 <a href="./circ/patron/register" target="_self"
136 eg-accesskey="[% l('shift+f1') %]"
137 eg-accesskey-desc="[% l('Register Patron') %]">
138 <span class="glyphicon glyphicon-user" aria-hidden="true"></span>
139 [% l('Register Patron') %]
142 <li ng-if="!username">
143 <a href="" ng-click="rs.active_tab('register')" target="_self"
144 eg-accesskey="[% l('shift+f1') %]"
145 eg-accesskey-desc="[% l('Register Patron') %]">
146 <span class="glyphicon glyphicon-user" aria-hidden="true"></span>
147 [% l('Register Patron') %]
150 <li ng-if="showRecentPatron">
151 <a href="./circ/patron/last" target="_self"
152 eg-accesskey="[% l('f8') %]"
153 eg-accesskey-desc="[% l('Retrieve Last Patron') %]">
154 <span class="glyphicon glyphicon-share-alt" aria-hidden="true"></span>
155 [% l('Retrieve Last Patron') %]
158 <li ng-if="showRecentPatrons">
159 <a href="./circ/patron/search?show_recent=1" target="_self"
160 eg-accesskey-desc="[% l('Retrieve Recent Patrons') %]">
161 <span class="glyphicon glyphicon-share-alt" aria-hidden="true"></span>
162 [% l('Retrieve Recent Patrons') %]
166 <a href="./circ/patron/pending/list" target="_self">
167 <span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"></span>
168 [% l('Pending Patrons') %]
172 <a href="./circ/patron/bucket/view" target="_self">
173 <span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span>
174 [% l('User Buckets') %]
177 <li class="divider"></li>
179 <a href="./circ/patron/credentials" target="_self">
180 <span class="glyphicon glyphicon-ok" aria-hidden="true"></span>
181 <span>[% l('Verify Credentials') %]</span>
184 <li ng-if="username">
185 <a href="./circ/in_house_use/index" target="_self"
186 eg-accesskey="[% l('f6') %]"
187 eg-accesskey-desc="[% l('Record In-House Use') %]">
188 <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
189 <span>[% l('Record In-House Use') %]</span>
192 <li ng-if="!username">
193 <a href="" ng-click="rs.active_tab('in_house_use')" target="_self"
194 eg-accesskey="[% l('f6') %]"
195 eg-accesskey-desc="[% l('Record In-House Use') %]">
196 <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
197 <span>[% l('Record In-House Use') %]</span>
201 <a href="./circ/holds/shelf" target="_self">
202 <span class="glyphicon glyphicon-tasks" aria-hidden="true"></span>
203 <span>[% l('Holds Shelf') %]</span>
206 <li class="divider"></li>
208 <a href="./cat/item/replace_barcode/index" target="_self">
209 <span class="glyphicon glyphicon-barcode" aria-hidden="true"></span>
210 <span>[% l('Replace Barcode') %]</span>
214 <a href="./cat/item/search" target="_self">
215 <span class="glyphicon glyphicon-saved" aria-hidden="true"></span>
216 <span>[% l('Item Status') %]</span>
220 <a href="./cat/item/missing_pieces" target="_self">
221 <span class="glyphicon glyphicon-th" aria-hidden="true"></span>
222 <span>[% l('Scan Item as Missing Pieces') %]</span>
225 <li class="divider"></li>
227 <a href="" ng-click="reprintLast($event)"
228 eg-accesskey="[% l('f9') %]"
229 eg-accesskey-desc="[% l('Reprint Last Receipt') %]">
230 <span class="glyphicon glyphicon-print" aria-hidden="true"></span>
231 <span>[% l('Reprint Last Receipt') %]</span>
234 <li class="divider"></li>
235 <li ng-class="{disabled : offlineDisabled()}">
236 <a href="./offline-interface" target="_self" ng-class="{disabled : offlineDisabled()}">
237 <span class="glyphicon glyphicon-alert" aria-hidden="true"></span>
238 <span>[% l('Offline Circulation') %]</span>
241 <li ng-if="enableCurbside" class="divider"></li>
242 <li ng-if="enableCurbside">
243 <a href="./circ/curbside/index" target="_self" ng-class="{disabled : curbsideDisabled()}">
244 <span class="glyphicon glyphicon-road"></span>
245 <span>[% l('Curbside Pickup') %]</span>
252 <li class="dropdown" uib-dropdown>
253 <a href uib-dropdown-toggle>[% l('Cataloging') %]<b class="caret"
254 aria-hidden="true"></b>
256 <ul uib-dropdown-menu>
258 <a href="/eg2/staff/catalog/search">
259 <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
260 <span>[% l('Search the Catalog') %]</span>
264 <a href="./cat/catalog/index" target="_self">
265 <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
266 [% l('Search the Catalog (Traditional)') %]
270 <a href="./cat/item/search" target="_self">
271 <span class="glyphicon glyphicon-saved" aria-hidden="true"></span>
272 <span>[% l('Item Status') %]</span>
275 <li class="divider"></li>
277 <a href="./cat/bucket/record/view" target="_self">
278 <span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span>
279 [% l('Record Buckets') %]
283 <a href="./cat/bucket/copy/view" target="_self">
284 <span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span>
285 [% l('Item Buckets') %]
288 <li class="divider"></li>
290 <a href="/eg2/staff/cat/bib-from/id">
291 <span class="glyphicon glyphicon-file" aria-hidden="true"></span>
292 [% l('Retrieve Bib Record by ID') %]
297 <a href="/eg2/staff/cat/bib-from/tcn"
298 eg-accesskey="[% l('shift+f3') %]"
299 eg-accesskey-desc="[% l('Retrieve Last Bib Record') %]">
300 <span class="glyphicon glyphicon-tag" aria-hidden="true"></span>
301 [% l('Retrieve Bib Record by TCN') %]
305 <a href="" ng-click="retrieveLastRecord()" target="_self"
306 eg-accesskey="[% l('shift+f8') %]"
307 eg-accesskey-desc="[% l('Retrieve Last Bib Record') %]">
308 <span class="glyphicon glyphicon-share-alt" aria-hidden="true"></span>
309 [% l('Retrieve Last Bib Record') %]
312 <li class="divider"></li>
314 <a href="./cat/catalog/new_bib" target="_self">
315 <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
316 [% l('Create New MARC Record') %]
320 <a href="./cat/z3950/index" target="_self">
321 <span class="glyphicon glyphicon-cloud-download" aria-hidden="true"></span>
322 [% l('Import Record from Z39.50') %]
326 <a href="/eg2/staff/cat/vandelay/import">
327 <span class="glyphicon glyphicon-transfer" aria-hidden="true"></span>
328 [% l('MARC Batch Import/Export') %]
332 <a href="/eg2/staff/cat/marcbatch">
333 <span class="glyphicon glyphicon-edit" aria-hidden="true"></span>
334 [% l('MARC Batch Edit') %]
337 <li class="divider"></li>
339 <a href="./cat/catalog/verifyURLs" target="_self">
340 <span class="glyphicon glyphicon-link" aria-hidden="true"></span>
341 [% l('Link Checker') %]
344 <li class="divider"></li>
346 <a href="/eg2/staff/cat/authority/browse">
347 <span class="glyphicon glyphicon-lock" aria-hidden="true"></span>
348 [% l('Manage Authorities') %]
352 <a href="/eg2/staff/cat/authority/edit" target="_self">
353 <span class="glyphicon glyphicon-file" aria-hidden="true"></span>
354 [% l('Retrieve Authority Record by ID') %]
360 <!-- acquisitions -->
361 <li class="dropdown" uib-dropdown>
362 <a href uib-dropdown-toggle>[% l('Acquisitions') %]<b class="caret"
363 aria-hidden="true"></b>
365 <ul uib-dropdown-menu>
367 <a href="/eg2/staff/acq/search" target="_self">
368 <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
369 [% l('General Search') %]
371 <li class="divider"></li>
373 <a href="/eg2/staff/acq/provider" target="_self">
374 <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
375 [% l('Provider Search') %]
378 <li class="divider"></li>
380 <a href="/eg2/staff/acq/search/selectionlists" target="_self">
381 <span class="glyphicon glyphicon-list" aria-hidden="true"></span>
382 [% l('Selection Lists') %]
386 <a href="./acq/legacy/picklist/brief_record" target="_self">
387 <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
388 [% l('New Brief Record') %]
392 <a href="./acq/requests/list" target="_self">
393 <span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"></span>
394 [% l('Patron Requests') %]
398 <a href="./acq/legacy/picklist/bib_search" target="_self">
399 <span class="glyphicon glyphicon-cloud-download" aria-hidden="true"></span>
400 [% l('MARC Federated Search') %]
404 <a href="./acq/legacy/picklist/from_bib" target="_self">
405 <span class="glyphicon glyphicon-import" aria-hidden="true"></span>
406 [% l('Load Catalog Record IDs') %]
409 <li class="divider"></li>
411 <a href="./acq/legacy/picklist/upload" target="_self">
412 <span class="glyphicon glyphicon-cloud-upload" aria-hidden="true"></span>
413 [% l('Load MARC Order Records') %]
417 <a href="/eg2/staff/acq/search/purchaseorders" target="_self">
418 <span class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span>
419 [% l('Purchase Orders') %]
423 <a href="./acq/legacy/po/create" target="_self">
424 <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
425 [% l('Create Purchase Order') %]
428 <li class="divider"></li>
430 <a href="./acq/legacy/financial/claim_eligible" target="_self">
431 <span class="glyphicon glyphicon-question-sign" aria-hidden="true"></span>
432 [% l('Claim-Ready Items') %]
436 <a href="/eg2/staff/acq/search/invoices" target="_self">
437 <span class="glyphicon glyphicon-usd" aria-hidden="true"></span>
442 <a href="./acq/legacy/invoice/view?create=1" target="_self">
443 <span class="glyphicon glyphicon-credit-card" aria-hidden="true"></span>
444 [% l('Create Invoice') %]
451 <li class="dropdown" uib-dropdown>
452 <a href uib-dropdown-toggle>[% l('Booking') %]<b class="caret"
453 aria-hidden="true"></b>
455 <ul uib-dropdown-menu>
457 <a href="/eg2/staff/booking/create_reservation" target="_self">
458 <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
459 [% l('Create Reservations') %]
463 <a href="/eg2/staff/booking/pull_list" target="_self">
464 <span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
469 <a href="/eg2/staff/booking/capture" target="_self">
470 <span class="glyphicon glyphicon-pushpin" aria-hidden="true"></span>
471 [% l('Capture Resources') %]
475 <a href="/eg2/staff/booking/pickup" target="_self">
476 <span class="glyphicon glyphicon-export" aria-hidden="true"></span>
477 [% l('Pick Up Reservations') %]
481 <a href="/eg2/staff/booking/return" target="_self">
482 <span class="glyphicon glyphicon-import" aria-hidden="true"></span>
483 [% l('Return Reservations') %]
487 <a href="/eg2/staff/booking/manage_reservations" target="_self">
488 <span class="glyphicon glyphicon-wrench" aria-hidden="true"></span>
489 [% l('Manage Reservations') %]
496 <li class="dropdown" uib-dropdown>
497 <a href uib-dropdown-toggle>[% l('Administration') %]<b class="caret"
498 aria-hidden="true"></b>
500 <ul uib-dropdown-menu>
502 <a href="./admin/workstation/index" target="_self">
503 <span class="glyphicon glyphicon-hdd" aria-hidden="true"></span>
504 [% l('Workstation') %]
508 <a href="./admin/user_perms" target="_self">
509 <span class="glyphicon glyphicon-user" aria-hidden="true"></span>
510 [% l('User Permission Editor') %]
514 <a href="/eg2/staff/admin/server/splash">
515 <span class="glyphicon glyphicon-briefcase" aria-hidden="true"></span>
516 [% l('Server Administration') %]
520 <a href="/eg2/staff/admin/local/splash">
521 <span class="glyphicon glyphicon-picture" aria-hidden="true"></span>
522 [% l('Local Administration') %]
526 <a href="/eg2/staff/admin/acq/splash">
527 <span class="glyphicon glyphicon-usd" aria-hidden="true"></span>
528 [% l('Acquisitions Administration') %]
532 <a href="./admin/serials/index" target="_self">
533 <span class="glyphicon glyphicon-paperclip" aria-hidden="true"></span>
534 [% l('Serials Administration') %]
538 <a href="/eg2/staff/admin/booking/splash" target="_self">
539 <span class="glyphicon glyphicon-calendar" aria-hidden="true"></span>
540 [% l('Booking Administration') %]
544 <a href="./reporter/legacy/main" target="_self">
545 <span class="glyphicon glyphicon-object-align-bottom"
546 aria-hidden="true"></span>
550 </ul> <!-- admin dropdown -->
552 </ul> <!-- end left side entries -->
554 <!-- entries along the right side of the navbar -->
555 <ul class="nav navbar-nav navbar-right" style='margin-right: 6px;'>
557 <a ng-cloak ng-show="username" title="{{currentToken()}}"
558 ng-init="workstation = '[% l('<no workstation>') %]'">
559 {{username}} @ {{workstation}}
563 <!-- locale selector.
564 only shown if multiple locales are registered -->
565 [% IF ctx.locales.keys.size > 1 %]
566 <li class="dropdown" uib-dropdown>
567 <a href uib-dropdown-toggle>
568 [% lcl = ctx.locale; ctx.locales.$lcl %]
569 <span class="glyphicon glyphicon-flag" aria-hidden="true"></span>
571 <ul uib-dropdown-menu>
572 [% FOR locale IN ctx.locales.keys.sort %]
573 <!-- disable the selected locale -->
574 <li ng-class="{disabled : '[% ctx.locale %]'=='[% locale %]'}">
575 <a href="" ng-click="applyLocale('[% locale %]')">
576 [% ctx.locales.$locale %]
584 <li class="dropdown" ng-show="username" uib-dropdown title="Logout and more...">
585 <a href class="glyphicon glyphicon-list"
586 uib-dropdown-toggle></a>
587 <ul uib-dropdown-menu>
588 <li ng-if="!op_changed">
589 <a href="" ng-click="changeOperator()">
590 <span class="glyphicon glyphicon-random" aria-hidden="true"></span>
591 [% l('Change Operator') %]
594 <li ng-if="op_changed">
595 <a href="" ng-click="changeOperatorUndo()">
596 <span class="glyphicon glyphicon-random" aria-hidden="true"></span>
597 [% l('Restore Operator') %]
601 <a href="./login" ng-click="logout()" target="_self">
602 <span class="glyphicon glyphicon-log-out" aria-hidden="true"></span>
607 <a href="./about" target="_self">
608 <span class="glyphicon glyphicon-question-sign" aria-hidden="true"></span>
612 <li class="divider"></li>
613 <li class="disabled">
614 <a href disabled="disabled">
616 title="[% l('Hatch Connection Status') %]"
617 class="glyphicon glyphicon-transfer"
618 ng-class="{'connect-status-ok' : hatchConnected()}"