CAT-206 Cataloging Date Compare
authorKyle Huckins <khuckins@catalyte.io>
Thu, 28 Feb 2019 18:52:34 +0000 (18:52 +0000)
committerBill Erickson <berickxx@gmail.com>
Thu, 21 Mar 2019 19:51:45 +0000 (15:51 -0400)
- Compare selected and existing cataloging dates to
toggle availability of Update and Clear date buttons.

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>
 Changes to be committed:
modified:   Open-ILS/src/templates/staff/cat/share/t_marcedit.tt2
modified:   Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js

Open-ILS/src/templates/staff/cat/share/t_marcedit.tt2
Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js

index 5ec1415..7d99323 100644 (file)
       </div>
       <div class="col-md-3">
           <span class="btn-group">
-            <button class="btn btn-default" ng-click="updateDate(cataloging_date)">[% l('Update Date') %]</button>
-            <button class="btn btn-default" ng-click="cataloging_date = null">[% l('Clear Date') %]</button>
+            <button class="btn btn-default" ng-click="updateDate(cataloging_date)"
+              ng-disabled="checkDate(cataloging_date)">
+              [% l('Update Date') %]</button>
+            <button class="btn btn-default" ng-click="cataloging_date = null"
+              ng-disabled="!checkDate(cataloging_date)">
+              [% l('Clear Date') %]</button>
           </span>
       </div>
 
index 83c1e37..45ca9ed 100644 (file)
@@ -1260,6 +1260,13 @@ angular.module('egMarcMod', ['egCoreMod', 'ui.bootstrap'])
                     return true;
                 };
 
+                $scope.checkDate = function(cataloging_date) {
+                    if (!cataloging_date || !$scope.Record().cataloging_date()) return cataloging_date == $scope.Record().cataloging_date();
+                    var ogCatDate = new Date($scope.Record().cataloging_date()).toISOString().split("T")[0];
+                    var compCatalogingDate = new Date(cataloging_date).toISOString().split("T")[0];
+                    return compCatalogingDate == ogCatDate;
+                }
+
                 $scope.updateDate = function(cataloging_date) {
                     if (cataloging_date != $scope.Record().cataloging_date()) {
                         if (cataloging_date instanceof Date && !isNaN(cataloging_date)) {