ffffng/app/scripts/directives/tokenForm.js
2014-05-12 20:08:19 +02:00

40 lines
1.2 KiB
JavaScript

'use strict';
angular.module('ffffng')
.directive('fTokenForm', function () {
var ctrl = function ($scope, Constraints, Validator) {
var isValid = Validator.forConstraint(Constraints.token);
$scope.hasError = function () {
var value = $scope.token;
if (value === undefined) {
return false;
}
return !isValid(value);
};
$scope.doSubmit = function (token) {
$scope.error = null;
$scope.onSubmit(token)
.error(function (response, code) {
switch (code) {
case 404: // not found
$scope.error = 'Zum Token wurde kein passender Eintrag gefunden.';
break;
default:
$scope.error = 'Es ist ein Fehler aufgetreten. Versuche es später noch einmal.';
}
});
};
};
return {
'controller': ctrl,
'restrict': 'E',
'templateUrl': 'views/directives/tokenForm.html',
'scope': {
'onSubmit': '=fSubmit',
'onCancel': '=fCancel'
}
};
});