validUrls.js 895 B

12345678910111213141516171819202122232425262728
  1. (function () {
  2. 'use strict';
  3. angular.module('ariaNg').directive('ngValidUrls', ['ariaNgCommonService', function (ariaNgCommonService) {
  4. var DIRECTIVE_ID = 'invalidUrls';
  5. return {
  6. restrict: 'A',
  7. require: '?ngModel',
  8. link: function (scope, element, attrs, ngModel) {
  9. var handleChange = function (value) {
  10. if (angular.isUndefined(value) || value === '') {
  11. return;
  12. }
  13. var urls = ariaNgCommonService.parseUrlsFromOriginInput(value);
  14. var valid = urls && urls.length > 0;
  15. ngModel.$setValidity(DIRECTIVE_ID, valid);
  16. };
  17. scope.$watch(function () {
  18. return ngModel.$viewValue;
  19. }, handleChange);
  20. }
  21. };
  22. }]);
  23. }());