SmartIT_Extensions/BMC/smart-it-full-helix/components/email/email-accelerators-directiv...

36 lines
1.6 KiB
JavaScript

"use strict";
(function () {
'use strict';
angular.module('myitsmApp')
.directive('emailAccelerators', ['$window', function ($window) {
return {
restrict: 'E',
replace: true,
templateUrl: 'components/email/email-accelerators.html',
link: function postLink(scope, $element) {
$element.show(function () {
var $parent = $element.parent(), popupWidth = $element[0].offsetWidth, popupHeight = $element[0].offsetHeight;
var spaceRight, spaceLeft, spaceTop;
spaceRight = ($(window).width() - ($parent.offset().left + $parent.outerWidth()));
spaceLeft = $parent.offset().left;
spaceTop = $parent.offset().top;
if (spaceRight >= popupWidth) {
$element.css({ left: '100%', right: 'auto' });
}
else if (spaceLeft >= popupWidth) {
$element.css({ right: '100%', left: 'auto' });
}
else {
if (spaceTop >= popupHeight) {
$element.css({ left: 'auto', right: 'auto', top: '-100%' });
}
else {
$element.css({ maxWidth: spaceLeft, right: 'auto', left: 'auto' });
}
}
});
}
};
}]);
}());