ng-show="tab_pending && orientation_lender">[% l('Capture Item') %]</a></li>
<li><a href="javascript:;" ng-click="retarget()"
ng-show="tab_pending">[% l('Retarget Request') %]</a></li>
+ <li><a href="javascript:;" ng-click="activate_hold()"
+ ng-show="tab_pending">[% l('Activate Request') %]</a></li>
+ <li><a href="javascript:;" ng-click="suspend_hold()"
+ ng-show="tab_pending">[% l('Suspend Request') %]</a></li>
<li><a href="javascript:;" ng-click="cancel()"
ng-show="(tab_pending || tab_inbound) && orientation_borrower">[% l('Cancel Request') %]</a></li>
<li><a href="javascript:;" ng-click="abort_transit()"
[% IF col.name == 'copy_barcode' %]
<a href="./fulfillment/status/{{item.copy_barcode_enc}}">{{item.copy_barcode}}</a>
[% ELSIF col.name == 'frozen' %]
- {{!item.frozen}}
+ {{item.frozen == 'f'}}
[% ELSE %]
{{item.[% col.name %][% col.extra IF col.extra %]}}
[% END %]
id : 'id',
hold_id : 'id',
request_time : 'request_time',
+ frozen : 'frozen',
expire_time : 'expire_time',
patron_id : 'usr.id',
patron_barcode : 'usr.card.barcode',
return deferred.promise;
}
+ function toggleHoldActive(item, frozen) {
+ if (item.frozen == frozen) return $q.when();
+ var deferred = $q.defer();
+ $scope.action_pending = true;
+ egNet.request(
+ 'open-ils.circ',
+ 'open-ils.circ.hold.update.batch',
+ egAuth.token(), null,
+ [{id : item.hold_id, frozen : frozen}]
+ ).then(function() {
+ $scope.action_pending = false;
+ deferred.resolve();
+ });
+ return deferred.promise;
+ }
+
+ $scope.actions.activate_hold = function(item) {
+ return toggleHoldActive(item, 'f');
+ }
+
+ $scope.actions.suspend_hold = function(item) {
+ return toggleHoldActive(item, 't');
+ }
+
$scope.actions.abort_transit = function(item) {
var deferred = $q.defer();
$scope.action_pending = true;
var query = {
capture_time : null,
- cancel_time : null,
- frozen : 'f'
+ cancel_time : null
};
if ($scope.orientation_borrower) {