v3 client: fix misc challenge issues

This commit is contained in:
Matteo Pagliazzi
2016-05-17 18:19:45 +02:00
parent d293b2d6ee
commit 30c9458493
5 changed files with 16 additions and 14 deletions

View File

@@ -26,6 +26,7 @@ window.habitrpg = angular.module('habitrpg',
.constant("STORAGE_USER_ID", 'habitrpg-user')
.constant("STORAGE_SETTINGS_ID", 'habit-mobile-settings')
.constant("MOBILE_APP", false)
.constant("TAVERN_ID", '00000000-0000-4000-A000-000000000000')
//.constant("STORAGE_GROUPS_ID", "") // if we decide to take groups offline
.config(['$stateProvider', '$urlRouterProvider', '$httpProvider', 'STORAGE_SETTINGS_ID',

View File

@@ -1,5 +1,5 @@
habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User', 'Challenges', 'Notification', '$compile', 'Groups', '$state', '$stateParams', 'Members', 'Tasks',
function($rootScope, $scope, Shared, User, Challenges, Notification, $compile, Groups, $state, $stateParams, Members, Tasks) {
habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User', 'Challenges', 'Notification', '$compile', 'Groups', '$state', '$stateParams', 'Members', 'Tasks', 'TAVERN_ID',
function($rootScope, $scope, Shared, User, Challenges, Notification, $compile, Groups, $state, $stateParams, Members, Tasks, TAVERN_ID) {
// Use presence of cid to determine whether to show a list or a single
// challenge
@@ -58,7 +58,7 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
}
}
if(!defaultGroup) defaultGroup = 'habitrpg';
if(!defaultGroup) defaultGroup = TAVERN_ID;
$scope.obj = $scope.newChallenge = {
name: '',
@@ -181,7 +181,7 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
$scope["delete"] = function(challenge) {
var warningMsg;
if(challenge.group._id == 'habitrpg') {
if(challenge.group._id == TAVERN_ID) {
warningMsg = window.env.t('sureDelChaTavern');
} else {
warningMsg = window.env.t('sureDelCha');
@@ -356,7 +356,7 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
_calculateMaxPrize(gid);
if (gid == 'habitrpg') {
if (gid == TAVERN_ID) {
$scope.newChallenge.prize = 1;
}
})
@@ -379,7 +379,7 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
$scope.insufficientGemsForTavernChallenge = function() {
var balance = User.user.balance || 0;
var isForTavern = $scope.newChallenge.group == 'habitrpg';
var isForTavern = $scope.newChallenge.group == TAVERN_ID;
if (isForTavern) {
return balance <= 0;
@@ -403,7 +403,7 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
};
$scope.filterInitialChallenges = function() {
$scope.groupsFilter = _.uniq(_.pluck($scope.challenges, 'group'), function(g) {return g._id});
$scope.groupsFilter = _.uniq(_.compact(_.pluck($scope.challenges, 'group')), function(g) {return g._id});
$scope.search = {
group: _.transform($scope.groups, function(m,g) { m[g._id] = true;}),
@@ -442,7 +442,7 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
// case where a challenge's leader deletes their account
var userIsOwner = (chal.leader && chal.leader._id) === User.user.id;
var groupSelected = $scope.search.group[chal.group._id];
var groupSelected = $scope.search.group[chal.group ? chal.group._id : null];
var checkOwner = $scope.search._isOwner === 'either' || (userIsOwner === $scope.search._isOwner);
var checkMember = $scope.search._isMember === 'either' || ($scope.isUserMemberOf(chal) === $scope.search._isMember);

View File

@@ -3,8 +3,8 @@
/* Make user and settings available for everyone through root scope.
*/
habitrpg.controller("RootCtrl", ['$scope', '$rootScope', '$location', 'User', '$http', '$state', '$stateParams', 'Notification', 'Groups', 'Shared', 'Content', '$modal', '$timeout', 'ApiUrl', 'Payments','$sce','$window','Analytics',
function($scope, $rootScope, $location, User, $http, $state, $stateParams, Notification, Groups, Shared, Content, $modal, $timeout, ApiUrl, Payments, $sce, $window, Analytics) {
habitrpg.controller("RootCtrl", ['$scope', '$rootScope', '$location', 'User', '$http', '$state', '$stateParams', 'Notification', 'Groups', 'Shared', 'Content', '$modal', '$timeout', 'ApiUrl', 'Payments','$sce','$window','Analytics','TAVERN_ID',
function($scope, $rootScope, $location, User, $http, $state, $stateParams, Notification, Groups, Shared, Content, $modal, $timeout, ApiUrl, Payments, $sce, $window, Analytics, TAVERN_ID) {
var user = User.user;
var initSticky = _.once(function(){
@@ -25,6 +25,7 @@ habitrpg.controller("RootCtrl", ['$scope', '$rootScope', '$location', 'User', '$
}
});
$rootScope.TAVERN_ID = TAVERN_ID;
$rootScope.User = User;
$rootScope.user = user;
$rootScope.moment = window.moment;

View File

@@ -160,12 +160,12 @@ script(type='text/ng-template', id='partials/options.social.challenges.html')
.Pet_Currency_Gem1x
input.form-control(type='number', placeholder=env.t('prize'),
ng-disabled='insufficientGemsForTavernChallenge()'
min="{{newChallenge.group=='habitrpg' ? 1 : 0}}",
min="{{newChallenge.group==TAVERN_ID ? 1 : 0}}",
max="{{maxPrize}}", ng-model='newChallenge.prize')
a.hint(popover="{{newChallenge.group=='habitrpg' ? env.t('prizePopTavern') : env.t('prizePop')}}",
a.hint(popover="{{newChallenge.group==TAVERN_ID ? env.t('prizePopTavern') : env.t('prizePop')}}",
popover-trigger='mouseenter', popover-placement='right')
=env.t('moreInfo')
div(ng-show='newChallenge.group=="habitrpg"')
div(ng-show='newChallenge.group==TAVERN_ID')
!=env.t('publicChallenges')
.form-group(ng-if='user.contributor.admin')

View File

@@ -8,7 +8,7 @@ div.chat-form.guidelines-not-accepted(ng-if='!user.flags.communityGuidelinesAcce
form.chat-form(ng-if='user.flags.communityGuidelinesAccepted' ng-submit='postChat(group,message.content)')
div(ng-controller='AutocompleteCtrl')
textarea.form-control(rows=4, ui-keydown='{"meta-enter":"postChat(group,message.content)"}', ui-keypress='{13:"postChat(group,message.content)"}', ng-model='message.content', updateinterval='250', flag='@', at-user, auto-complete placeholder="{{group._id == 'habitrpg' ? env.t('tavernCommunityGuidelinesPlaceholder') : ''}}", ng-disabled='_sending == true')
textarea.form-control(rows=4, ui-keydown='{"meta-enter":"postChat(group,message.content)"}', ui-keypress='{13:"postChat(group,message.content)"}', ng-model='message.content', updateinterval='250', flag='@', at-user, auto-complete placeholder="{{group._id == TAVERN_ID ? env.t('tavernCommunityGuidelinesPlaceholder') : ''}}", ng-disabled='_sending == true')
span.user-list
ul.list-at-user(ng-show="query")
li(ng-repeat='msg in response | filter:filterUser | limitTo: 5', ng-click='performCompletion(msg)')