landers.angular
Version:
landers.angular
24 lines (23 loc) • 948 B
JavaScript
;angular.module('Landers.angular')
.directive('disabledWhen', ['$compile', 'Runtime', 'Helpers', function($compile, Runtime, Helpers){
return {
restrict : 'A',
scope: {
disabledWhen: '@disabledWhen'
},
link : function($scope, $ele, $attrs) {
var myScope = Helpers.seekScope($scope, $attrs['useScope']);
myScope.$watch('disabledWhen', function(new_value){
switch (new_value) {
case 'true' : new_value = true; break;
case 'false' : new_value = false; break;
}
if (new_value) {
$ele.addClass('disabled').prop('disabled', true);
} else {
$ele.removeClass('disabled').prop('disabled', false);
}
});
}
};
}]);