Adjust NotGonnaGitUs's PR
* move challenge test to separate file * adjust wording of popover text * prevent refunding gems for tavern challenges * adjust ui of challenge creation page * fix bug in cancel function * adjust wording of delete confirmation message
This commit is contained in:
@@ -126,19 +126,27 @@ habitrpg.controller("ChallengesCtrl", ['$rootScope','$scope', 'Shared', 'User',
|
||||
$scope.challenges = Challenges.Challenge.query();
|
||||
User.log({});
|
||||
}
|
||||
$scope.cancelClosing = function() {
|
||||
$scope.cancelClosing = function(challenge) {
|
||||
$scope.popoverEl.popover('destroy');
|
||||
$scope.popoverEl = undefined;
|
||||
$scope.closingChal = undefined;
|
||||
challenge.winner = undefined;
|
||||
}
|
||||
$scope["delete"] = function(challenge) {
|
||||
if (!confirm(window.env.t('sureDelCha'))) return;
|
||||
var warningMsg;
|
||||
if(challenge.group._id == 'habitrpg') {
|
||||
warningMsg = window.env.t('sureDelChaTavern');
|
||||
} else {
|
||||
warningMsg = window.env.t('sureDelCha');
|
||||
}
|
||||
if (!confirm(warningMsg)) return;
|
||||
challenge.$delete(function(){
|
||||
$scope.popoverEl.popover('destroy');
|
||||
backToChallenges();
|
||||
});
|
||||
};
|
||||
$scope.selectWinner = function(challenge) {
|
||||
if (!challenge.winner) return;
|
||||
if (!confirm(window.env.t('youSure'))) return;
|
||||
challenge.$close({uid:challenge.winner}, function(){
|
||||
$scope.popoverEl.popover('destroy');
|
||||
|
||||
@@ -300,24 +300,18 @@ function closeChal(cid, broken, cb) {
|
||||
api['delete'] = function(req, res, next){
|
||||
var user = res.locals.user;
|
||||
var cid = req.params.cid;
|
||||
var chal
|
||||
|
||||
async.waterfall([
|
||||
function(cb){
|
||||
Challenge.findById(cid, cb);
|
||||
},
|
||||
function(_chal, cb){
|
||||
chal = _chal;
|
||||
function(chal, cb){
|
||||
if (!chal) return cb('Challenge ' + cid + ' not found');
|
||||
if (chal.leader != user._id) return cb("You don't have permissions to edit this challenge");
|
||||
//Refunds to challenge leader
|
||||
User.findById(user._id, cb)
|
||||
},
|
||||
function(leader, cb){
|
||||
leader.balance += chal.prize/4;
|
||||
leader.save(cb);
|
||||
if (chal.group != 'habitrpg') user.balance += chal.prize/4; // Refund gems to user if a non-tavern challenge
|
||||
user.save(cb);
|
||||
},
|
||||
function(save, num, cb){
|
||||
//Deletes challenge and adds broken link (same as before) add prizeRefundedTo: save.profile.name?
|
||||
closeChal(req.params.cid, {broken: 'CHALLENGE_DELETED'}, cb);
|
||||
}
|
||||
], function(err){
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
script(type='text/ng-template', id='partials/options.social.challenges.detail.close.html')
|
||||
a.btn.btn-sm.btn-danger(ng-click="delete(closingChal)")=env.t('delete')
|
||||
h5= '- ' + env.t('or') + ' -'
|
||||
select(ui-select2, ng-required=true, ng-model='closingChal.winner', data-placeholder=env.t('selectWinner'), ng-change='selectWinner(closingChal)', )
|
||||
select(ui-select2, ng-required=true, ng-model='closingChal.winner', data-placeholder=env.t('selectWinner'), ng-change='selectWinner(closingChal)', style='display:block')
|
||||
option(value='')
|
||||
option(ng-repeat='u in closingChal.members', value='{{u._id}}') {{u.profile.name}}
|
||||
|
||||
small.pull-right
|
||||
a(ng-click='cancelClosing(closingChal)')=env.t('cancel')
|
||||
.text-right
|
||||
small.btn-link(ng-click='cancelClosing(closingChal)')=env.t('cancel')
|
||||
|
||||
script(type='text/ng-template', id='partials/options.social.challenges.detail.member.html')
|
||||
.modal.bs-modal-lg(style='display: block')
|
||||
@@ -115,17 +115,14 @@ script(type='text/ng-template', id='partials/options.social.challenges.html')
|
||||
.form-group
|
||||
textarea.form-control(cols='3', placeholder=env.t('challengeDescr'), ng-model='newChallenge.description')
|
||||
|
||||
//- what's going on here?
|
||||
br
|
||||
br
|
||||
|
||||
.form-group
|
||||
input.form-control(type='number', min="{{newChallenge.group=='habitrpg' ? 1 : 0}}", max="{{maxPrize}}", ng-model='newChallenge.prize', placeholder=env.t('prize'))
|
||||
span.input-suffix.Pet_Currency_Gem1x.inline-gems
|
||||
|
|
||||
span.hint.vertical-20(popover=env.t('prizePop'), popover-trigger='mouseenter', popover-placement='right')
|
||||
.input-group
|
||||
span.input-group-addon
|
||||
.Pet_Currency_Gem1x
|
||||
input.form-control(type='number', min="{{newChallenge.group=='habitrpg' ? 1 : 0}}", max="{{maxPrize}}", ng-model='newChallenge.prize', placeholder=env.t('prize'))
|
||||
a.hint(popover="{{newChallenge.group=='habitrpg' ? env.t('prizePopTavern') : env.t('prizePop')}}", popover-trigger='mouseenter', popover-placement='right')
|
||||
=env.t('moreInfo')
|
||||
span(ng-show='newChallenge.group=="habitrpg"')
|
||||
.pull-right(ng-show='newChallenge.group=="habitrpg"')
|
||||
!=env.t('publicChallenges')
|
||||
|
||||
.form-group(ng-if='user.contributor.admin')
|
||||
|
||||
Reference in New Issue
Block a user