Sha256: 3414799bfa0eb6e664b99cdea51d3cbd45871cf4be99e52b4b832dd1f1691b73
Contents?: true
Size: 1.73 KB
Versions: 1
Compression:
Stored size: 1.73 KB
Contents
angular.module('EssayApp.directives').directive "filesRequired", ['validationModifier', '$timeout', (validationModifier, $timeout) -> restrict: 'A' scope: true require: "ngModel" link: (scope, element, attrs, ngModel) -> $timeout (-> # applyValidation() $('[uploader] .template-upload').detach() ), 10, true filesCount = -> $('[uploader] a.delete')?.length validFiles = () -> return (filesCount() > 0) || !(attrs.filesRequired? && scope.$eval(attrs.filesRequired)) $timeout (-> $('[uploader]').trigger 'uploader.update' ), 100, true ngModel.$validators.required = (val)-> validFiles() applyValidation = -> ngModel.$validate() if ngModel.$valid || ngModel.$untouched validationModifier.makeValid($('[uploader] input[type="file"]')) $('[uploader] input[type="file"]').removeClass('ng-invalid') else validationModifier.makeInvalid($('[uploader] input[type="file"]'), element.data('errorRequired') || 'file required') $('[uploader] input[type="file"]').on 'fileuploadalways fileuploadstop fileuploaddestroy fileuploaddestroyed', -> $timeout (-> $('[uploader]').trigger('uploader.update') $('[uploader]').trigger('uploader.save_files') $timeout (-> $('[uploader]').trigger('uploader.update') ), 500, true ), 100, true $('[uploader]').on 'change uploader.remove_file uploader.update', -> applyValidation() $('[uploader] .icon.delete').off('click.upload_watcher').on 'click.upload_watcher', -> $timeout (-> # applyValidation() $(this).closest('.template-download').detach() $('[uploader]').trigger('uploader.update') ), 100, true ]
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
translation_cms-0.1.5 | app/assets/javascripts/app/directives/files_required.js.coffee |