1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
(function(angular, $, _) {
angular.module('statuspage')
.filter('trusted', function($sce){ return $sce.trustAsHtml; })
// Todo: abstract this into a generic crmUi directive?
.directive('statuspagePopupMenu', function($timeout) {
return {
templateUrl: '~/statuspage/SnoozeOptions.html',
transclude: true,
link: function(scope, element, attr) {
element.on('click', '.hush-menu-button', function() {
$timeout(function() {
$('ul', element).show().menu();
element.closest('h3').addClass('menuopen');
$('body').one('click', function() {
$('ul', element).menu('destroy').hide();
element.closest('h3').removeClass('menuopen');
});
});
});
// TODO: Is there a more "Angular" way to do this animation?
element.on('click', 'button:not(.hush-menu-button), li', function() {
$(this).closest('div.crm-status-item').slideUp();
});
}
};
});
})(angular, CRM.$, CRM._);
|