diff --git a/common/locales/en/groups.json b/common/locales/en/groups.json index 4a9e35faef..9e2eca1615 100644 --- a/common/locales/en/groups.json +++ b/common/locales/en/groups.json @@ -38,6 +38,7 @@ "joinNewParty": "Join New Party", "declineInvitation": "Decline Invitation", "loadingNewParty": "Your party is loading. Please wait...", + "systemMessage": "System Message", "newMsg": "New message in \"<%= name %>\"", "chat": "Chat", "sendChat": "Send Chat", diff --git a/website/client/js/controllers/chatCtrl.js b/website/client/js/controllers/chatCtrl.js index 891abed5f6..935c12a310 100644 --- a/website/client/js/controllers/chatCtrl.js +++ b/website/client/js/controllers/chatCtrl.js @@ -94,13 +94,22 @@ habitrpg.controller('ChatCtrl', ['$scope', 'Groups', 'Chat', 'User', '$http', 'A } else { $scope.abuseObject = message; $scope.groupId = groupId; - Members.selectMember(message.uuid) - .then(function () { + + $scope.isSystemMessage = message.uuid === 'system'; + if (message.uuid === 'system') { $rootScope.openModal('abuse-flag',{ controller:'MemberModalCtrl', scope: $scope }); - }); + } else { + Members.selectMember(message.uuid) + .then(function () { + $rootScope.openModal('abuse-flag',{ + controller:'MemberModalCtrl', + scope: $scope + }); + }); + } } }; diff --git a/website/server/controllers/api-v3/chat.js b/website/server/controllers/api-v3/chat.js index 5d79475df5..248867e05e 100644 --- a/website/server/controllers/api-v3/chat.js +++ b/website/server/controllers/api-v3/chat.js @@ -217,7 +217,7 @@ api.flagChat = { let reporterEmailContent = getUserInfo(user, ['email']).email; - let authorEmailContent = getUserInfo(author, ['email']).email; + let authorEmailContent = author ? getUserInfo(author, ['email']).email : 'system'; let groupUrl = getGroupUrl(group); diff --git a/website/views/options/social/chat-message.jade b/website/views/options/social/chat-message.jade index 07447b483c..a8ad847d79 100644 --- a/website/views/options/social/chat-message.jade +++ b/website/views/options/social/chat-message.jade @@ -31,7 +31,7 @@ mixin chatMessages(inbox) span(ng-if='#{inbox ? "true" : ":: user.contributor.admin || message.uuid == user.id"}')     a(ng-click='#{inbox? "User.deletePM({params:{id:message.$key}})" : "deleteChatMessage(group, message)"}') span.glyphicon.glyphicon-trash(tooltip=env.t('delete')) - span(ng-if=':: user.contributor.admin || (!message.sent && user.flags.communityGuidelinesAccepted && message.uuid != user.id && message.uuid != "system")')     + span(ng-if=':: user.contributor.admin || (!message.sent && user.flags.communityGuidelinesAccepted && message.uuid != user.id)')     a(ng-click="flagChatMessage(group._id, message)") span.glyphicon.glyphicon-flag(tooltip="{{message.flags[user._id] ? env.t('abuseAlreadyReported') : env.t('abuseFlag')}}" ng-class='message.flags[user._id] ? "text-danger" : ""') span     diff --git a/website/views/shared/modals/members.jade b/website/views/shared/modals/members.jade index c4741156f8..2de1f72d94 100644 --- a/website/views/shared/modals/members.jade +++ b/website/views/shared/modals/members.jade @@ -102,7 +102,7 @@ script(type='text/ng-template', id='modals/send-gift.html') script(type='text/ng-template', id='modals/abuse-flag.html') .modal-header - h4!=env.t('abuseFlagModalHeading', {name: "{{profile.profile.name}}"}) + h4!=env.t('abuseFlagModalHeading', {name: "{{isSystemMessage ? env.t('systemMessage') : profile.profile.name}}"}) .modal-body blockquote markdown(text="abuseObject.text")