LP1727464: Adding record ID to the title link in the checkout interface
[working/Evergreen.git] / Open-ILS / src / templates / staff / circ / patron / t_checkout.tt2
1 <!-- item checkout form / list -->
2
3 <div class="row pad-vert">
4   <div class="col-md-6">
5     <form ng-submit="checkout(checkoutArgs)" role="form" class="form-inline">
6       <div class="input-group">
7
8         <div class="input-group-btn" uib-dropdown>
9           <button type="button" class="btn btn-default" uib-dropdown-toggle
10             ng-class="{disabled : disable_checkout()}">
11             {{selectedNcType() || "[% l('Barcode') %]"}}
12             <span class="caret"></span>
13           </button>
14           <ul uib-dropdown-menu>
15             <li><a href
16               ng-click="checkoutArgs.noncat_type='barcode';focusMe=true">
17               [% l('Barcode') %]</a>
18             </li>
19             <li class="divider"></li>
20             <li>
21               <a href ng-repeat="type in nonCatTypes | orderBy:'name()'"
22                ng-click="checkoutArgs.noncat_type=type.id()">{{type.name()}}</a>
23             </li>
24           </ul>
25         </div>
26
27         <input focus-me="focusMe" class="form-control"
28           ng-model="checkoutArgs.copy_barcode" 
29           ng-disabled="checkoutArgs.noncat_type != 'barcode' || disable_checkout()"
30           id="patron-checkout-barcode" type="text"/> 
31
32         <input class="btn btn-default" type="submit" 
33           ng-class="{disabled : disable_checkout()}" value="[% l('Submit') %]"/>
34
35       </div>
36     </form>
37   </div>
38   <div class="col-md-6">
39     <div class="flex-row">
40       <div class="flex-cell"></div>
41
42 <div class="input-group">
43 <div class="input-group-btn" uib-dropdown>
44       <button type="button" ng-class="{'btn-success' : date_options.has_sticky_date}" class="btn btn-default" uib-dropdown-toggle>
45         [% l('Date Options') %]
46         <span class="caret"></span>
47       </button>
48       <ul class="pull-right" uib-dropdown-menu>
49         <li>
50           <a href
51             ng-click="toggle_opt('has_sticky_date')">
52             <span ng-if="date_options.has_sticky_date"
53               class="label label-success">&#x2713;</span>
54             <span ng-if="!date_options.has_sticky_date"
55               class="label label-warning">&#x2717;</span>
56             <span>[% l('Specific Due Date') %]</span>
57           </a>
58         </li>
59         <li>
60           <a href
61             ng-click="toggle_opt('is_until_logout')">
62             <span ng-if="date_options.is_until_logout"
63               class="label label-success">&#x2713;</span>
64             <span ng-if="!date_options.is_until_logout"
65               class="label label-warning">&#x2717;</span>
66             <span>[% l('Use Specific Due Date Until Logout') %]</span>
67           </a>
68         </li>
69       </ul>
70 </div>
71
72       <!-- <div class="checkbox pad-horiz">
73         <label>
74           <input type="checkbox" ng-model="checkoutArgs.sticky_date"/>
75           [% l('Specific Due Date') %]
76         </label>
77       </div> -->
78       <!-- FIXME: This needs a time component as well, but type="datetime" 
79             is not yet supported by any browsers -->
80       <div>
81         <eg-date-input ng-model="checkoutArgs.due_date" ng-disabled="!date_options.has_sticky_date"></eg-date-input>
82       </div>
83 </div>
84     </div>
85   </div>
86 </div>
87 <hr/>
88
89 <eg-grid
90   id-field="index"
91   features="clientsort"
92   items-provider="gridDataProvider"
93   grid-controls="gridControls"
94   persist-key="circ.patron.checkout"
95   dateformat="{{$root.egDateAndTimeFormat}}">
96
97   <eg-grid-action
98     handler="addCopyAlerts"
99     label="[% l('Add Copy Alerts') %]">
100   </eg-grid-action>
101   <eg-grid-action
102     handler="manageCopyAlerts"
103     label="[% l('Manage Copy Alerts') %]">
104   </eg-grid-action>
105
106   <eg-grid-field label="[% l('Balance Owed') %]"     
107     path='mbts.balance_owed'></eg-grid-field>
108
109   <eg-grid-field label="[% l('Barcode') %]" path="acp_barcode">
110     <!-- FIXME: ng-if / ng-disabled not working since the contents 
111         are $interpolate'd and not $compile'd.
112         I want to hide / disable the href when there is no acp ID 
113     -->
114     <a href="./cat/item/{{item.acp.id()}}/summary" target="_self">
115       {{item.copy_barcode}}
116     </a>
117   </eg-grid-field>
118
119   <eg-grid-field label="[% l('Circ ID') %]"
120     path='circ.id'></eg-grid-field>
121
122   <eg-grid-field label="[% l('Call Number') %]" 
123     path="acn.label"></eg-grid-field>
124
125   <eg-grid-field label="[% l('Due Date') %]"    
126     path='circ.due_date' datecontext="circ_lib" dateonlyinterval="duration" datatype="timestamp"></eg-grid-field>
127
128   <eg-grid-field label="[% l('Family Name') %]"    
129     path='au.family_name'></eg-grid-field>
130
131   <eg-grid-field label="[% l('Location') %]" 
132     path='acp.location.name'> </eg-grid-field>
133
134   <eg-grid-field label="[% l('Remaining Renewals') %]" 
135     path='circ.renewal_remaining'></eg-grid-field>
136
137   <eg-grid-field label="[% l('Title') %]" path="title">
138     <a target="_self" href="[% ctx.base_path %]/staff/cat/catalog/record/{{item.acn.record()}}">
139       {{item.title}}
140     </a>
141   </eg-grid-field>
142
143   <eg-grid-field label="[% l('Author') %]"      
144     path="author" hidden></eg-grid-field>
145   <eg-grid-field path="acp.circ_modifier.name" label="[% l('Circulation Modifier') %]"></eg-grid-field>
146   <eg-grid-field path="acp.circ_lib.shortname" label="[% l('Circulation Library') %]"></eg-grid-field>
147   <eg-grid-field path="acn.owning_lib.shortname" label="[% l('Owning Library') %]"></eg-grid-field>
148
149   <eg-grid-field label="[% l('Alerts') %]" path="copy_alert_count" handlers="gridCellHandlers" visible compiled>
150     {{item['copy_alert_count']}}
151     <button ng-disabled="item['copy_alert_count'] <= 0" class="btn btn-sm btn-default" ng-click="col.handlers.copyAlertsEdit(item['acp'].id())">[% l('Manage') %]</button>
152   </eg-grid-field>
153
154   <eg-grid-field path="circ.*" parent-idl-class="circ" hidden></eg-grid-field>
155   <eg-grid-field path="acp.*" parent-idl-class="acp" hidden></eg-grid-field>
156   <eg-grid-field path="acn.*" parent-idl-class="acn" hidden></eg-grid-field>
157   <eg-grid-field path="acn.prefix.label" label="[% l('CN Prefix') %]" parent-idl-class="acn" hidden></eg-grid-field>
158   <eg-grid-field path="acn.suffix.label" label="[% l('CN Suffix') %]" parent-idl-class="acn" hidden></eg-grid-field>
159   <eg-grid-field path="record.*" parent-idl-class="mvr" hidden></eg-grid-field>
160   <eg-grid-field path="mbts.*" parent-idl-class="mbts" hidden></eg-grid-field>
161   <eg-grid-field path="au.*" parent-idl-class="au" hidden></eg-grid-field>
162 </eg-grid>
163
164 <div class="flex-row pad-vert">
165   <div class="flex-cell"></div>
166   <div class="checkbox">
167     <label>
168       <input ng-model="strict_barcode" type="checkbox"/>
169       [% l('Strict Barcode') %]
170     </label>
171   </div>
172   <div class="pad-horiz" ng-if="using_hatch_printer"></div>
173   <div class="checkbox" ng-if="using_hatch_printer">
174     <label>
175       <input ng-model="show_print_dialog" type="checkbox"/>
176       [% l('Show Print Dialog') %]
177     </label>
178   </div>
179   <div class="pad-horiz">
180     <span ng-show="may_email_receipt()" class="glyphicon glyphicon-envelope" aria-label="[% l('Send Email Receipt') %]"></span>
181     <span ng-show="!may_email_receipt()" class="glyphicon glyphicon-print" aria-label="[% l('Print Receipt') %]"></span>
182     <div class="btn-group" uib-dropdown>
183       <button ng-click="print_or_email_receipt()" id="quick-button" type="button" ng-disabled="checkouts.length == 0" class="btn btn-default">[% l('Quick Receipt') %]</button>
184       <button type="button" ng-disabled="checkouts.length == 0" class="btn btn-default" uib-dropdown-toggle>
185         <span class="caret"></span>
186         <span class="sr-only">[% l('receipt option') %]</span>
187       </button>
188       <ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="quick-button">
189         <li role="menuitem" ng-class="{disabled : !has_email_address()}"><a ng-click="email_receipt()" a-disabled="!has_email_address()" href="#">[% l('Email Receipt') %]</a></li>
190         <li role="menuitem"><a ng-click="print_receipt()" href="#">[% l('Print Receipt') %]</a></li>
191       </ul>
192     </div>
193   </div>
194   <div class="btn-group" uib-dropdown>
195     <button class="btn btn-default" 
196       id="done-button" type="button"
197       ng-click="done_auto_receipt()">[% l('Done') %]</button>
198       <button type="button" class="btn btn-default" uib-dropdown-toggle>
199         <span class="caret"></span>
200         <span class="sr-only">[% l('receipt option') %]</span>
201       </button>
202       <ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="done-button">
203         <li role="menuitem"><a ng-click="done_no_receipt()" href="#">[% l('No Receipt') %]</a></li>
204         <li role="menuitem" ng-class="{disabled : !has_email_address()}"><a ng-click="done_email_receipt()" a-disabled="!has_email_address()" href="#">[% l('Email Receipt') %]</a></li>
205         <li role="menuitem"><a ng-click="done_print_receipt()" href="#">[% l('Print Receipt') %]</a></li>
206       </ul>
207   </div>
208 </div>
209