angular.module('fasit') .directive("fbSearchFromTo", ['$timeout', function ($timeout) { var link = function (scope, element, attibute) { scope.edit = false; scope.focusMin = false; scope.focusMax = false; scope.focusdisplay = function () { scope.focusMin = scope.edit = true; }; scope.preventClose = function (event: Event) { //scope.focusMin = true; event.stopPropagation(); }; scope.blurMin = function () { scope.focusMax = true; }; scope.hideDialog = function (direktion) { scope.edit = false; scope.focusMin = false; scope.focusMax = false; }; scope.blurlast = function () { scope.edit = false; scope.focusMax = false; }; scope.displayText = function () { if (scope.modelMin !== undefined && scope.modelMin !== null && scope.modelMax !== undefined && scope.modelMax !== null) { return scope.modelMin + " - " + scope.modelMax; } else if (scope.placeholder !== undefined && scope.placeholder !== "") { return scope.placeholder; } else if (scope.name !== undefined) { return scope.name; } return "min - max"; }; scope.$watch('modelMin', function () { if (scope.modelMax !== undefined && scope.modelMin > scope.modelMax ) { scope.modelMax = scope.modelMin; } else { scope.model = scope.displayText(); } }); scope.$watch('modelMax', function () { scope.model = scope.displayText(); }); scope.func = function (index) { } }; return { restrict: 'E', scope: { model: '@', modelMin: '=', modelMax: '=', name: '@', label: '@', placeholder: '@', remove: '&', index: '@' }, link: link, templateUrl: 'app/Directives/fbSearchFromTo/fbSearchFromTo.html' }; }]) .directive('focusMe', ['$timeout','$parse',function ($timeout, $parse) { return { link: function (scope, element, attrs) { var model = $parse(attrs.focusMe); scope.$watch(model, function (value) { if (value === true) { $timeout(function () { (element[0]).select(); // TODO: frida&viktor: ta bort any-castning }); } }); } }; }]);