Use backend service to verify nodeID (fixes #418)

This commit is contained in:
Jakob Borg
2014-07-18 10:00:02 +02:00
parent 4fe2992924
commit 3388d5b49c
4 changed files with 27 additions and 10 deletions

View File

@@ -865,7 +865,7 @@ syncthing.directive('uniqueRepo', function() {
};
});
syncthing.directive('validNodeid', function() {
syncthing.directive('validNodeid', function($http) {
return {
require: 'ngModel',
link: function(scope, elm, attrs, ctrl) {
@@ -874,12 +874,13 @@ syncthing.directive('validNodeid', function() {
// we shouldn't validate
ctrl.$setValidity('validNodeid', true);
} else {
var cleaned = viewValue.replace(/ /g, '').replace(/-/g, '').toLowerCase().trim();
if (cleaned.match(/^[a-z2-7]{52}$/)) {
ctrl.$setValidity('validNodeid', true);
} else {
ctrl.$setValidity('validNodeid', false);
}
$http.get(urlbase + '/nodeid?id='+viewValue).success(function (resp) {
if (resp.error) {
ctrl.$setValidity('validNodeid', false);
} else {
ctrl.$setValidity('validNodeid', true);
}
});
}
return viewValue;
});