UNPKG

acha-framework

Version:

is a modular framework on both client (angular.js) and server (node.js) side, it provides security, orm, ioc, obfuscation and ...

52 lines 1.7 kB
(function ($, angular, underscore, window, document, undefined) { 'use strict'; var directives = angular.module('frontend.directives'); directives.directive('showPanel', [function () { return { restrict: 'A', link: function (scope, element, attr) { var options = scope.$eval(attr.showPanel) || {}; var parent = element.parent(); var top = parent.height() + (parent.offset().top || options.top || 0); element.css({ position: 'fixed', right: options.right || 0, width: parent.width() || options.width || '100%', height: options.height || 200, top: top }); } }; }]); directives.directive('onEnter', function () { return function (scope, element, attr) { element.bind('keydown keypress', function (event) { if (event.which === 13) { scope.$apply(function () { scope.$eval(attr.onEnter, { 'event': event }); }); event.preventDefault(); } }); }; }); directives.directive('numberOnly', function () { return { require: 'ngModel', link: function (scope, element, attr, ngModelCtrl) { function fromUser(text) { if (text) { var transformedInput = text.replace(/[^0-9]/g, ''); if (transformedInput !== text) { ngModelCtrl.$setViewValue(transformedInput); ngModelCtrl.$render(); } return transformedInput; } return undefined; } ngModelCtrl.$parsers.push(fromUser); } }; }); }(jQuery, angular, _, window, document));