</div>
<div class="alert alert-success row" role="alert"
- ng-show="show_field('stat_cats')" ng-if="stat_cats.length > 0">
+ ng-show="show_field('stat_cats') || has_required_stat_cat"
+ ng-if="stat_cats.length > 0">
<div class="col-md-6">[% l('Statistical Categories') %]</div>
</div>
<div class="row reg-field-row"
- ng-show="show_field('stat_cats')" ng-repeat="cat in stat_cats">
+ ng-show="show_field('stat_cats') || has_required_stat_cat"
+ ng-repeat="cat in stat_cats">
+
+ <!-- Display this stat cat when displaying all stat cats
+ or when this stat cat is required. Wrap the body of
+ stat cat display in a div for easy show/hide. -->
+ <div ng-if="show_field('stat_cats') || cat.required() == 1">
+
<div class="col-md-3 reg-field-label">
<label>{{cat.name()}}</label>
</div>
<div class="col-md-3 reg-field-input" ng-if="cat.allow_freetext() == '1'">
<input type="text" ng-model="stat_cat_entry_maps[cat.id()]"/>
</div>
+ </div><!-- show/hide -->
</div>
<!-- surveys -->
if ($scope.patron.isnew)
set_new_patron_defaults(prs);
+ $scope.has_required_stat_cat = prs.stat_cats.filter(
+ function(cat) {return cat.required() == 1} ).length > 0;
+
$scope.page_data_loaded = true;
prs.set_field_patterns(field_patterns);