webstaff serials: teach the pattern wizard a view-only mode
authorGalen Charlton <gmc@equinoxinitiative.org>
Fri, 7 Jul 2017 22:07:28 +0000 (18:07 -0400)
committerGalen Charlton <gmc@equinoxinitiative.org>
Fri, 7 Jul 2017 22:07:28 +0000 (18:07 -0400)
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/src/templates/staff/serials/t_prediction_wizard.tt2
Open-ILS/web/js/ui/default/staff/serials/directives/prediction_wizard.js

index 1ee6b68..2596a46 100644 (file)
@@ -6,12 +6,12 @@
             [% l('Back') %]
         </button>
         <button class="btn btn-success" ng-click="tab.active = tab.active + 1"
-                ng-disabled="(tab.active == 0 && tab.enum_form.$invalid) || (tab.active == 1 && tab.chron_form.$invalid) || (tab.active == 3 && tab.freq_form.$invalid)"
+                ng-disabled="!viewOnly && ((tab.active == 0 && tab.enum_form.$invalid) || (tab.active == 1 && tab.chron_form.$invalid) || (tab.active == 3 && tab.freq_form.$invalid))"
                 ng-if="tab.active != 4">
             [% l('Next') %]
         </button>
         <button class="btn btn-primary" ng-click="handle_save()"
-                ng-if="tab.active == 4">
+                ng-if="!viewOnly && tab.active == 4">
             [% l('Save') %]
         </button>
       </div>
@@ -19,6 +19,7 @@
   <uib-tabset active="tab.active">
     <uib-tab index="0" disable="tab.active != 0" heading="[% l('Enumeration Labels') %]">
       <form name="tab.enum_form">
+      <fieldset ng-disabled="viewOnly">
       <div class="row">
          <div class="radio">
            <label>
          </div>
          </div>
       </div>
+      </fieldset>
       </form>
     </uib-tab>
     <uib-tab index="1" disable="tab.active != 1" heading="[% l('Chronology Display') %]">
       <form name="tab.chron_form">
+      <fieldset ng-disabled="viewOnly">
       <div>
         <div class="checkbox">
           <label>
           </div>
         </div>
       </div>
+      </fieldset>
       </form>
     </uib-tab>
     <uib-tab index="2" disable="tab.active != 2" heading="[% l('MFHD Indicators') %]">
+      <form name="tab.ind_form">
+      <fieldset ng-disabled="viewOnly">
       <div class="row">
         <div class="col-md-6">
           <label for="selectCompressExpand">[% l('Compression Display Options') %]
           </select>
         </div>
       </div>
+      </fieldset>
+      </form>
     </uib-tab>
     <uib-tab index="3" disable="tab.active != 3" heading="[% l('Frequency and Regularity') %]">
       <form name="tab.freq_form">
+      <fieldset ng-disabled="viewOnly">
       <div class="row">
         <div class="col-md-2">
           <div class="radio">
             </div>
          </div>
       </div>
+      </fieldset>
       </form>
     </uib-tab>
     <uib-tab index="4" disable="tab.active != 4" heading="[% l('Review') %]">
         </div>
       </div>
       <hr/>
-      <div class="row" ng-if="showShare">
+      <div class="row" ng-if="showShare && !viewOnly">
         <div class="col-md-6">
           <label for="pattern_name">[% l('Share this pattern using name') %]</label>
           <input id="pattern_name" type="text" ng-model="share.pattern_name">
index 535f41a..b575d48 100644 (file)
@@ -7,7 +7,8 @@ angular.module('egSerialsAppDep')
         scope: {
             patternCode : '=',
             onSave      : '=',
-            showShare   : '='
+            showShare   : '=',
+            viewOnly    : '='
         },
         templateUrl: './serials/t_prediction_wizard',
         controller:
@@ -18,6 +19,9 @@ function($scope , $q , egSerialsCoreSvc , egCore , egGridDataProvider) {
     if (angular.isUndefined($scope.showShare)) {
         $scope.showShare = true;
     }
+    if (angular.isUndefined($scope.viewOnly)) {
+        $scope.viewOnly = false;
+    }
 
     // for use by ng-value
     $scope.True = true;