<eg-prediction-manager ng-if="active_tab == 'prediction'"
bib-id="bib_id" ssub-id="ssub.id">
</eg-prediction-manager>
-<eg-prediction-wizard></eg-prediction-wizard>
</uib-tab>
<uib-tab index="'view-issues'" heading="[% l('View Issues') %]">
<p>View Issues TODO</p>
--- /dev/null
+<!-- use <form> so we get submit-on-enter for free -->
+<div>
+ <div class="modal-header">
+ <button type="button" class="close"
+ ng-click="cancel()" aria-hidden="true">×</button>
+ <h4 class="modal-title">[% l('Edit Prediction Pattern') %]</h4>
+ </div>
+ <div class="modal-body">
+ <div class="container-fluid">
+ <eg-prediction-wizard pattern-code="patternCode" on-save="ok"></eg-prediction-wizard pattern-code>
+ </div>
+ </div>
+</div> <!-- modal-content -->
<option value="supplement">[% l('Supplement') %]</option>
<option value="index">[% l('Index') %]</option>
</select>
- <button class="btn btn-default">[% l('Edit Pattern') %]</button>
+ <button class="btn btn-default" ng-click="openPatternEditorDialog(pred)">[% l('Edit Pattern') %]</button>
</div>
<div>
<button class="btn btn-primary" ng-disabled="!predform.$dirty">[% l('Save') %]</button>
<button class="btn btn-warning pull-left" ng-click="tab.active = tab.active - 1">
[% l('Back') %]
</button>
- <button class="btn btn-primary pull-right">
+ <button class="btn btn-primary pull-right" ng-click="handle_save()">
[% l('Save') %]
</button>
</div>
if (newVal && newVal != oldVal) reload(newVal);
});
+ $scope.openPatternEditorDialog = function(pred) {
+ $uibModal.open({
+ templateUrl: './serials/t_pattern_editor_dialog',
+ size: 'lg',
+ windowClass: 'eg-wide-modal',
+ controller:
+ ['$scope', '$uibModalInstance', function($scope, $uibModalInstance) {
+ $scope.focusMe = true;
+ $scope.patternCode = pred.pattern_code;
+ $scope.ok = function(patternCode) { $uibModalInstance.close(patternCode) }
+ $scope.cancel = function () { $uibModalInstance.dismiss() }
+ }]
+ }).result.then(function (patternCode) {
+ if (pred.patternCode !== patternCode) {
+ pred.patternCode = patternCode;
+
+ }
+ });
+ }
+
}]
}
})
transclude: true,
restrict: 'E',
scope: {
- patternCode : '='
+ patternCode : '=',
+ onSave : '='
},
templateUrl: './serials/t_prediction_wizard',
controller:
}
// TODO chron only
- // dummy pattern
- $scope.pattern = new PredictionPattern(["3","0","8","1","a","v.","b","no.","u","6","v","r","g","sequence","i","(year)","j","month","m","(day)","w","m","x","06,12","y","pw02we","y","ow0402th,0501"]);
- console.debug($scope.pattern);
+ $scope.pattern = new PredictionPattern(JSON.parse($scope.patternCode));
+ $scope.handle_save = function() {
+ $scope.patternCode = JSON.stringify($scope.pattern.compile());
+ if (angular.isFunction($scope.onSave)) {
+ $scope.onSave($scope.patternCode);
+ }
+ }
+
}]
}
})