Move member modal controller to own file

This commit is contained in:
Blade Barringer
2015-07-18 15:29:00 -05:00
parent b716d882b6
commit d44dbef859
4 changed files with 68 additions and 64 deletions

View File

@@ -0,0 +1,66 @@
"use strict";
habitrpg
.controller("MemberModalCtrl", ['$scope', '$rootScope', 'Members', 'Shared', '$http', 'Notification', 'Groups', 'Chat', '$controller', 'Stats',
function($scope, $rootScope, Members, Shared, $http, Notification, Groups, Chat, $controller, Stats) {
$controller('RootCtrl', {$scope: $scope});
$scope.timestamp = function(timestamp){
return moment(timestamp).format($rootScope.User.user.preferences.dateFormat.toUpperCase());
}
$scope.statCalc = Stats;
// We watch Members.selectedMember because it's asynchronously set, so would be a hassle to handle updates here
$scope.$watch( function() { return Members.selectedMember; }, function (member) {
if(member) {
member.petCount = Shared.countPets($rootScope.countExists(member.items.pets), member.items.pets);
member.mountCount = Shared.countMounts($rootScope.countExists(member.items.mounts), member.items.mounts);
$scope.profile = member;
}
});
$scope.sendPrivateMessage = function(uuid, message){
// Don't do anything if the user somehow gets here without a message.
if (!message) return;
$http.post('/api/v2/members/'+uuid+'/message',{message:message}).success(function(){
Notification.text(window.env.t('messageSentAlert'));
$rootScope.User.sync();
$scope.$close();
});
};
$scope.gift = {
type: 'gems',
gems: {amount:0, fromBalance:true},
subscription: {key:''},
message:''
};
$scope.sendGift = function(uuid, gift){
$http.post('/api/v2/members/'+uuid+'/gift', gift).success(function(){
Notification.text('Gift sent!')
$rootScope.User.sync();
$scope.$close();
})
};
$scope.reportAbuse = function(reporter, message, groupId) {
message.flags[reporter._id] = true;
Chat.utils.flagChatMessage({gid: groupId, messageId: message.id}, undefined, function(data){
Notification.text(window.env.t('abuseReported'));
$scope.$close();
});
};
$scope.clearFlagCount = function(message, groupId) {
Chat.utils.clearFlagCount({gid: groupId, messageId: message.id}, undefined, function(data){
message.flagCount = 0;
Notification.text("Flags cleared");
$scope.$close();
});
}
}
]);