-<form ng-submit="ok(record)" role="form">
+<form ng-submit="ok(record)" role="form" class="form-validated">
<div class="modal-header">
<button type="button" class="close" ng-click="cancel()"
aria-hidden="true">×</button>
onchange="record[field.name + '_ou'].update_org">
</eg-org-selector>
<input ng-if="field.datatype == 'text'"
+ ng-required="field.is_required(record)"
ng-model="record[field.name]"></input>
<input ng-if="field.datatype == 'int'" type="number"
+ ng-required="field.is_required(record)"
ng-model="record[field.name]"></input>
<input ng-if="field.datatype == 'float'" type="number" step="0.1"
+ ng-required="field.is_required(record)"
ng-model="record[field.name]"></input>
<span ng-if="field.datatype == 'link'" class="nullable">
<select ng-if="field.datatype == 'link'"
return results;
}
+ horizon_required = {};
+ percentile_required = {};
+ function get_popularity_with_required() {
+ egCore.pcrud.retrieveAll(
+ 'rp', {}, {atomic : true}
+ ).then(function(list) {
+ angular.forEach(list, function(item) {
+ horizon_required[item.id()] = item.require_horizon();
+ percentile_required[item.id()] = item.require_percentile();
+ });
+ });
+ }
+
function get_field_list(rec) {
var fields = egCore.idl.classes['rb'].fields;
if (fld.name == 'last_calc') {
fld['readonly'] = true;
}
+ fld.is_required = function(record) {
+ return false;
+ };
+ if (fld.name == 'name') {
+ fld.is_required = function(record) {
+ return true;
+ };
+ }
+ if (fld.name == 'horizon_age') {
+ fld.is_required = function(record) {
+ return horizon_required[record['popularity_parameter']] == 't';
+ };
+ }
+ if (fld.name == 'percentile') {
+ fld.is_required = function(record) {
+ return percentile_required[record['popularity_parameter']] == 't';
+ };
+ }
});
return fields;
}
$scope.record.percentile = parseFloat($scope.record.percentile);
$scope.record_label = get_record_label();
$scope.fields = get_field_list($scope.record);
+ get_popularity_with_required();
$scope.ok = function(args) { $modalInstance.close(args) }
$scope.cancel = function () { $modalInstance.dismiss() }
}]