webstaff: serials: add egSubSelector directive
authorGalen Charlton <gmc@equinoxinitiative.org>
Tue, 25 Apr 2017 21:28:19 +0000 (17:28 -0400)
committerGalen Charlton <gmc@equinoxinitiative.org>
Tue, 25 Apr 2017 21:28:19 +0000 (17:28 -0400)
This directive allows the operator to select the subscription
they want to work on in contexts such as the prediction
manager.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/src/templates/staff/serials/index.tt2
Open-ILS/src/templates/staff/serials/t_sub_selector.tt2 [new file with mode: 0644]
Open-ILS/web/js/ui/default/staff/serials/directives/sub_selector.js [new file with mode: 0644]

index d380a38..692e57d 100644 (file)
@@ -9,6 +9,7 @@
 <script src="[% ctx.media_prefix %]/js/ui/default/staff/serials/services/core.js"></script>
 <script src="[% ctx.media_prefix %]/js/ui/default/staff/serials/app.js"></script>
 <script src="[% ctx.media_prefix %]/js/ui/default/staff/serials/directives/subscription_manager.js"></script>
+<script src="[% ctx.media_prefix %]/js/ui/default/staff/serials/directives/sub_selector.js"></script>
 <script src="[% ctx.media_prefix %]/js/ui/default/staff/serials/directives/prediction_manager.js"></script>
 <script src="[% ctx.media_prefix %]/js/ui/default/staff/cat/services/record.js"></script>
 
diff --git a/Open-ILS/src/templates/staff/serials/t_sub_selector.tt2 b/Open-ILS/src/templates/staff/serials/t_sub_selector.tt2
new file mode 100644 (file)
index 0000000..99f3e0d
--- /dev/null
@@ -0,0 +1,10 @@
+<label for="choose-subscription">[% l('Select subscription to work on') %]</label>
+<select id="choose-subscription" ng-model="ssubId">
+  <option ng-repeat="ssub in subscriptions | orderBy: 'id' as filtered track by ssub.id"
+          value="{{ssub.id}}">
+    [% l('Subscription [_1] at [_2] ([_3] - [_4])',
+        '{{ssub.id}}', '{{ssub.owning_lib.shortname()}}',
+        '{{ssub.start_date | date:"shortDate"}}',
+        '{{ssub.end_date | date:"shortDate"}}') %]
+  </option>
+</select>
diff --git a/Open-ILS/web/js/ui/default/staff/serials/directives/sub_selector.js b/Open-ILS/web/js/ui/default/staff/serials/directives/sub_selector.js
new file mode 100644 (file)
index 0000000..7dfab83
--- /dev/null
@@ -0,0 +1,22 @@
+angular.module('egSerialsAppDep')
+
+.directive('egSubSelector', function() {
+    return {
+        transclude: true,
+        restrict:   'E',
+        scope: {
+            bibId  : '=',
+            ssubId : '='
+        },
+        templateUrl: './serials/t_sub_selector',
+        controller:
+       ['$scope','$q','egSerialsCoreSvc','egCore','egGridDataProvider',
+        '$uibModal',
+function($scope , $q , egSerialsCoreSvc , egCore , egGridDataProvider ,
+                     $uibModal) {
+    egSerialsCoreSvc.fetch($scope.bibId).then(function() {
+        $scope.subscriptions = egCore.idl.toTypedHash(egSerialsCoreSvc.subTree);
+    });
+}]
+    }
+})