diff --git a/config/env/torrents.js b/config/env/torrents.js index f4e1884e..a83fec7e 100644 --- a/config/env/torrents.js +++ b/config/env/torrents.js @@ -19,7 +19,7 @@ module.exports = { allow_social_sign: false }, invite: { - open_invite: false, + open_invite: true, score_exchange: 10000, expires: 60 * 60 * 1000 * 24 }, diff --git a/modules/core/client/controllers/header.client.controller.js b/modules/core/client/controllers/header.client.controller.js index b11921bc..90b9d87c 100644 --- a/modules/core/client/controllers/header.client.controller.js +++ b/modules/core/client/controllers/header.client.controller.js @@ -6,9 +6,10 @@ .controller('HeaderController', HeaderController); HeaderController.$inject = ['$scope', '$state', '$stateParams', '$translate', 'Authentication', 'menuService', 'MeanTorrentConfig', 'localStorageService', - 'ScoreLevelService']; + 'ScoreLevelService', 'InvitationsService']; - function HeaderController($scope, $state, $stateParams, $translate, Authentication, menuService, MeanTorrentConfig, localStorageService, ScoreLevelService) { + function HeaderController($scope, $state, $stateParams, $translate, Authentication, menuService, MeanTorrentConfig, localStorageService, ScoreLevelService, + InvitationsService) { var vm = this; vm.user = Authentication.user; vm.language = MeanTorrentConfig.meanTorrentConfig.language; @@ -26,11 +27,34 @@ $scope.$on('$stateChangeSuccess', stateChangeSuccess); - $scope.$on('auth-user-changed', function(event, args) { + /** + * auth-user-changed + */ + $scope.$on('auth-user-changed', function (event, args) { vm.user = Authentication.user; vm.scoreLevelData = vm.user ? ScoreLevelService.getScoreLevelJson(vm.user.score) : undefined; }); + /** + * user-invitations-changed + */ + $scope.$on('user-invitations-changed', function (event, args) { + vm.getInvitationsCount(); + }); + + /** + * getInvitationsCount + */ + vm.getInvitationsCount = function () { + InvitationsService.countInvitations({}, function (res) { + if (res.countMyInvitations > 0) { + vm.countMyInvitations = res.countMyInvitations; + } else { + vm.countMyInvitations = undefined; + } + }); + }; + function stateChangeSuccess() { // Collapsing the menu after navigation vm.isCollapsed = false; diff --git a/modules/core/client/less/mt.less b/modules/core/client/less/mt.less index 92abc163..b589bce1 100644 --- a/modules/core/client/less/mt.less +++ b/modules/core/client/less/mt.less @@ -183,10 +183,20 @@ body { top: 3px; } +.menu-badge { + position: absolute; + right: 10px; + top: 3px; +} + .menu-score-parent { position: relative; } +.menu-invitation-parent { + position: relative; +} + .vip-flag { color: #FF6600; > kbd { diff --git a/modules/core/client/views/header.client.view.html b/modules/core/client/views/header.client.view.html index 71c8bd49..e7e77b9b 100644 --- a/modules/core/client/views/header.client.view.html +++ b/modules/core/client/views/header.client.view.html @@ -1,4 +1,4 @@ -