a2c6ff53ee7d34e77347ee700fa164452f497136
[working/Evergreen.git] / Open-ILS / src / templates / staff / base_js.tt2
1 [%#
2
3   ***************************************************************************
4   * !!! ATTENTION !!! !!! ATTENTION !!! !!! ATTENTION !!! !!! ATTENTION !!! *
5   ***************************************************************************
6
7 If anything is added to the bottom half of this file
8 for global use, it will probably need to be added to
9 the UpUp resource list!
10
11 %]
12
13 [% 
14 # $locale is encoded as aa_bb.  The IDL needs aa-BB.
15 SET idl_locale = '';
16 IF ctx.locale;
17   idl_locale = ctx.locale.split('_').0 _ '-' _ ctx.locale.split('_').1.upper;
18 END;
19 %]
20
21 <script src="/upup.min.js"></script>
22 <script>
23 UpUp.start({
24   'content-url': '[% ctx.base_path %]/staff/offline-interface',
25   'cache-version': '[% USE date(format = '%Y-%m-%d'); date.format; %]',
26   'service-worker-url': '/upup.sw.min.js',
27   'assets': [
28     '/IDL2js?locale=[% idl_locale %]',
29     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/bootstrap.min.css',
30     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/hotkeys.min.css',
31     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/ngToast.min.css',
32     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/ngToast-animations.min.css',
33     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/tree-control.css',
34     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/tree-control-attribute.css',
35     '[% ctx.media_prefix %]/js/ui/default/staff/build/css/tablesort.css',
36     '[% ctx.base_path %]/staff/css/print.css',
37     '[% ctx.base_path %]/staff/css/cat.css',
38     '[% ctx.base_path %]/staff/css/style.css',
39     '[% ctx.base_path %]/staff/css/circ.css',
40     '[% ctx.media_prefix %]/js/dojo/opensrf/md5.js',
41     '[% ctx.media_prefix %]/js/ui/default/staff/build/js/moment-with-locales.min.js',
42     '[% ctx.media_prefix %]/js/ui/default/staff/build/js/moment-timezone-with-data.min.js',
43     '[% ctx.media_prefix %]/js/ui/default/staff/build/js/lovefield.min.js',
44     '[% ctx.media_prefix %]/js/ui/default/common/build/js/jquery.min.js',
45     '[% ctx.media_prefix %]/js/ui/default/staff/build/js/vendor.bundle.js',
46     '[% ctx.media_prefix %]/js/ui/default/staff/build/fonts/glyphicons-halflings-regular.woff',
47     '[% ctx.media_prefix %]/js/ui/default/staff/build/fonts/glyphicons-halflings-regular.woff2',
48     '[% ctx.media_prefix %]/js/dojo/opensrf/JSON_v1.js',
49     '[% ctx.media_prefix %]/js/dojo/opensrf/opensrf.js',
50     '[% ctx.media_prefix %]/js/dojo/opensrf/opensrf_ws.js',
51     '[% ctx.media_prefix %]/js/ui/default/staff/build/js/core.bundle.js',
52     '[% ctx.media_prefix %]/js/ui/default/staff/services/file.js',
53     '[% ctx.media_prefix %]/js/ui/default/staff/offline.js',
54     '[% ctx.base_path %]/staff/share/t_alert_dialog',
55     '[% ctx.base_path %]/staff/share/t_confirm_dialog',
56     '[% ctx.base_path %]/staff/share/t_datetime',
57     '[% ctx.base_path %]/staff/share/t_progress_dialog',
58     '[% ctx.base_path %]/staff/share/print_templates/t_offline_in_house_use',
59     '[% ctx.base_path %]/staff/share/print_templates/t_offline_checkout',
60     '[% ctx.base_path %]/staff/share/print_templates/t_offline_checkin',
61     '[% ctx.base_path %]/staff/share/print_templates/t_offline_renew',
62     '/images/question-mark.png'
63   ]
64 });
65 </script>
66
67 <script src="/IDL2js?locale=[% idl_locale %]"></script>
68 <script src="[% ctx.media_prefix %]/js/dojo/opensrf/md5.js"></script>
69
70 <!-- IDL / opensrf (network) -->
71 <script src="[% ctx.media_prefix %]/js/dojo/opensrf/JSON_v1.js"></script>
72 <script src="[% ctx.media_prefix %]/js/dojo/opensrf/opensrf.js"></script>
73 <script src="[% ctx.media_prefix %]/js/dojo/opensrf/opensrf_ws.js"></script>
74
75 <!-- angular -->
76 <script src="[% ctx.media_prefix %]/js/ui/default/common/build/js/jquery.min.js"></script>
77 <script src="[% ctx.media_prefix %]/js/ui/default/staff/build/js/vendor.bundle.js"></script>
78
79 <!-- 
80   Load momentjs via script tag.
81   https://github.com/webpack/webpack/issues/3128 
82 -->
83 <script src="[% ctx.media_prefix %]/js/ui/default/staff/build/js/moment-with-locales.min.js"></script>
84 <script src="[% ctx.media_prefix %]/js/ui/default/staff/build/js/moment-timezone-with-data.min.js"></script>
85
86 <!--
87   Load the lovefield libs as a standaline file so both the main
88   application and the offline shared worker can reference (and cache)
89   the same file
90 -->
91 <script src="[% ctx.media_prefix %]/js/ui/default/staff/build/js/lovefield.min.js"></script>
92
93 <!--
94   Load iframeResize via script tag
95   https://bugs.launchpad.net/evergreen/+bug/1753008
96 -->
97 <script src="[% ctx.media_prefix %]/js/ui/default/staff/build/js/iframeResizer.min.js"></script>
98
99 <!-- evergreen core services -->
100 <script src="[% ctx.media_prefix %]/js/ui/default/staff/build/js/core.bundle.js"></script>
101
102 <script>
103   // Configure OpenSRF
104   // pending api_level thunking in C
105   // OpenSRF.api_level = 2;
106   OpenSRF.Session.transport = OSRF_TRANSPORT_TYPE_WS;
107
108   // Here lie JS strings that may be used on any/all pages.
109   angular.module('egCoreMod').run(['egStrings', function(s) {
110     s.EG_UNLOAD_CTRL_PROMPT_MSG = 
111       '[% l('This page may have unsaved data.\n\nAre you sure you want to leave this page?') %]';
112     s.EG_UNLOAD_PAGE_PROMPT_MSG = 
113       '[% l('This page may have unsaved data.') %]';
114     s.EG_DATE_INPUT_CLOSE_TEXT = '[% l('Close') %]';
115     s.EG_WORK_LOG_CHECKOUT = '[% l('Check Out') %]';
116     s.EG_WORK_LOG_RENEW = '[% l('Renew') %]';
117     s.EG_WORK_LOG_CHECKIN = '[% l('Check In') %]';
118     s.EG_WORK_LOG_EDITED_PATRON = '[% l('Edited Patron') %]';
119     s.EG_WORK_LOG_REGISTERED_PATRON = '[% l('Registered Patron') %]';
120     s.EG_WORK_LOG_CASH_PAYMENT = '[% l('Cash Payment') %]';
121     s.EG_WORK_LOG_CHECK_PAYMENT = '[% l('Check Payment') %]';
122     s.EG_WORK_LOG_CREDIT_CARD_PAYMENT = '[% l('Credit Card Payment') %]';
123     s.EG_WORK_LOG_CREDIT_PAYMENT = '[% l('Credit Payment') %]';
124     s.EG_WORK_LOG_WORK_PAYMENT = '[% l('Work Payment') %]';
125     s.EG_WORK_LOG_FORGIVE_PAYMENT = '[% l('Forgive Payment') %]';
126     s.EG_WORK_LOG_GOODS_PAYMENT = '[% l('Goods Payment') %]';
127     s.EG_WORK_LOG_REQUESTED_HOLD = '[% l('Hold Request') %]';
128     s.EG_CONFIRM_DELETE_RECORD_TITLE = '[% l('Confirm Record Deletion') %]';
129     s.EG_CONFIRM_DELETE_RECORD_BODY = "[% l('Delete record {{id}}?') %]";
130     s.OP_CHANGE_SUCCESS = "[% l('Operator Change Succeeded') %]";
131     s.OP_CHANGE_FAILURE = "[% l('Operator Change Failed') %]";
132     s.OP_CHANGE_TITLE = "[% l('Operator Change') %]";
133     s.OP_CHANGE_PERM_MESSAGE = "[% l('Another staff member with the above permission may authorize this specific action.  Please notify your library administrator if you need this permission.  If you feel you have received this exception in error, please inform your friendly Evergreen developers or helpdesk staff of the above permission.') %]";
134     s.PERM_OP_CHANGE_SUCCESS = "[% l('Permission Override Login Succeeded') %]";
135     s.PERM_OP_CHANGE_FAILURE = "[% l('Permission Override Login Failed') %]";
136     s.OPT_IN_DIALOG_TITLE = "[% l('Verify Permission to Share Personal Information') %]";
137     s.OPT_IN_DIALOG = "[% l('Does patron [_1], [_2] from [_3] ([_4]) consent to having their personal information shared with your library?', '{{family_name}}', '{{first_given_name}}', '{{org_name}}', '{{org_shortname}}') %]";
138     s.OPT_IN_RESTRICTED = "[% l("This patron's record is not viewable at your library.") %]";
139     s.OFFLINE_SESSION_DESC = "[% l('Offline session description') %]";
140     s.OFFLINE_SESSION_CREATE_FAILED = "[% l('Offline session creation failed') %]";
141     s.OFFLINE_SESSION_PROCESSING_FAILED = "[% l('Offline session processing failed') %]";
142     s.OFFLINE_SESSION_UPLOAD_FAILED = "[% l('Offline transaction upload failed') %]";
143     s.PATRON_NOT_FOUND = "[% l('Patron not found') %]";
144     s.PATRON_BLOCKED = "[% l('Patron blocked') %]";
145     s.BAD_BARCODE = "[% l('Bad item barcode') %]";
146     s.BAD_BARCODE_CD = "[% l('Item barcode does not have a correct check digit.') %]";
147     s.BAD_PATRON_BARCODE = "[% l('Bad patron barcode') %]";
148     s.BAD_PATRON_BARCODE_CD = "[% l('Patron barcode does not have a correct check digit.') %]";
149     s.ITEM_NOT_FOUND = "[% l('Item not found') %]";
150     s.CONFIRM_CLEAR_PENDING = "[% l('Clear pending transactions') %]";
151     s.CONFIRM_CLEAR_PENDING_BODY = "[% l('Are you certain you want to clear these pending offline transactions? This action is irreversible. Transactions cannot be recovered after clearing!') %]";
152     s.LOCATION_NAME_OU_QUALIFIED = "[% l('{{location_name}} ({{owning_lib_shortname}})') %]";
153     s.CONFIRM_IN_HOUSE_NUM_USES_COUNT_TITLE = "[% l('Are you sure you want to record {{num_uses}} uses for this?') %]";
154     s.PAGE_TITLE_DEFAULT = "[% l('Evergreen Staff Client') %]";
155     s.PAGE_TITLE_DYNAMIC_AND_CONTEXT = "[% l('[_1] - [_2]', '{{dynamic}}', '{{context}}') %]";
156     s.CONFIRM_LONG_RUNNING_ACTION_MSG = "[% l('This action might take a while to complete. Continue?') %]";
157     s.CONFIRM_LONG_RUNNING_ACTION_ALL_ROWS_TITLE = "[% l('Are you sure you want to load ALL items?') %]";
158     s.YES = "[% l('Yes') %]";
159     s.NO = "[% l('No') %]";
160   }]);
161 </script>
162