mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 14:47:53 +01:00
Remove unused v2 code from /website/common/script (#8034)
* remove apiv2 behavior from ops * remove apiv2 behavior from fns
This commit is contained in:
committed by
Blade Barringer
parent
8f9ed6e377
commit
5f0c1687b5
@@ -11,6 +11,10 @@ describe('analyticsService', () => {
|
|||||||
sandbox.stub(Visitor.prototype, 'transaction');
|
sandbox.stub(Visitor.prototype, 'transaction');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
afterEach(() => {
|
||||||
|
sandbox.restore();
|
||||||
|
});
|
||||||
|
|
||||||
describe('#track', () => {
|
describe('#track', () => {
|
||||||
let eventType, data;
|
let eventType, data;
|
||||||
|
|
||||||
|
|||||||
@@ -53,31 +53,32 @@ describe('emails', () => {
|
|||||||
let pathToEmailLib = '../../../../../website/server/libs/email';
|
let pathToEmailLib = '../../../../../website/server/libs/email';
|
||||||
|
|
||||||
describe('sendEmail', () => {
|
describe('sendEmail', () => {
|
||||||
it('can send an email using the default transport', () => {
|
let sendMailSpy;
|
||||||
let sendMailSpy = sandbox.stub().returns(defer().promise);
|
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
sendMailSpy = sandbox.stub().returns(defer().promise);
|
||||||
sandbox.stub(nodemailer, 'createTransport').returns({
|
sandbox.stub(nodemailer, 'createTransport').returns({
|
||||||
sendMail: sendMailSpy,
|
sendMail: sendMailSpy,
|
||||||
});
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
afterEach(() => {
|
||||||
|
sandbox.restore();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('can send an email using the default transport', () => {
|
||||||
let attachEmail = requireAgain(pathToEmailLib);
|
let attachEmail = requireAgain(pathToEmailLib);
|
||||||
attachEmail.send();
|
attachEmail.send();
|
||||||
expect(sendMailSpy).to.be.calledOnce;
|
expect(sendMailSpy).to.be.calledOnce;
|
||||||
});
|
});
|
||||||
|
|
||||||
it('logs errors', (done) => {
|
it('logs errors', (done) => {
|
||||||
let deferred = defer();
|
|
||||||
let sendMailSpy = sandbox.stub().returns(deferred.promise);
|
|
||||||
|
|
||||||
sandbox.stub(nodemailer, 'createTransport').returns({
|
|
||||||
sendMail: sendMailSpy,
|
|
||||||
});
|
|
||||||
sandbox.stub(logger, 'error');
|
sandbox.stub(logger, 'error');
|
||||||
|
|
||||||
let attachEmail = requireAgain(pathToEmailLib);
|
let attachEmail = requireAgain(pathToEmailLib);
|
||||||
attachEmail.send();
|
attachEmail.send();
|
||||||
expect(sendMailSpy).to.be.calledOnce;
|
expect(sendMailSpy).to.be.calledOnce;
|
||||||
deferred.reject();
|
defer().reject();
|
||||||
|
|
||||||
// wait for unhandledRejection event to fire
|
// wait for unhandledRejection event to fire
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ habitrpg.controller("UserCtrl", ['$rootScope', '$scope', '$location', 'User', '$
|
|||||||
if (fullSet) {
|
if (fullSet) {
|
||||||
if (confirm(window.env.t('purchaseFor',{cost:cost*4})) !== true) return;
|
if (confirm(window.env.t('purchaseFor',{cost:cost*4})) !== true) return;
|
||||||
if (User.user.balance < cost) return $rootScope.openModal('buyGems');
|
if (User.user.balance < cost) return $rootScope.openModal('buyGems');
|
||||||
} else if (!User.user.fns.dotGet('purchased.' + path)) {
|
} else if (!_.get(user, 'purchased.' + path)) {
|
||||||
if (confirm(window.env.t('purchaseFor',{cost:cost*4})) !== true) return;
|
if (confirm(window.env.t('purchaseFor',{cost:cost*4})) !== true) return;
|
||||||
if (User.user.balance < cost) return $rootScope.openModal('buyGems');
|
if (User.user.balance < cost) return $rootScope.openModal('buyGems');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +0,0 @@
|
|||||||
import _ from 'lodash';
|
|
||||||
|
|
||||||
// TODO remove completely, use _.get, only used in client
|
|
||||||
|
|
||||||
module.exports = function dotGet (user, path) {
|
|
||||||
return _.get(user, path);
|
|
||||||
};
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
import _ from 'lodash';
|
|
||||||
|
|
||||||
/*
|
|
||||||
This allows you to set object properties by dot-path. Eg, you can run pathSet('stats.hp',50,user) which is the same as
|
|
||||||
user.stats.hp = 50. This is useful because in our habitrpg-shared functions we're returning changesets as {path:value},
|
|
||||||
so that different consumers can implement setters their own way. Derby needs model.set(path, value) for example, where
|
|
||||||
Angular sets object properties directly - in which case, this function will be used.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// TODO use directly _.set and remove this fn, only used in client
|
|
||||||
|
|
||||||
module.exports = function dotSet (user, path, val) {
|
|
||||||
return _.set(user, path, val);
|
|
||||||
};
|
|
||||||
@@ -2,24 +2,18 @@ import handleTwoHanded from './handleTwoHanded';
|
|||||||
import predictableRandom from './predictableRandom';
|
import predictableRandom from './predictableRandom';
|
||||||
import crit from './crit';
|
import crit from './crit';
|
||||||
import randomVal from './randomVal';
|
import randomVal from './randomVal';
|
||||||
import dotSet from './dotSet';
|
|
||||||
import dotGet from './dotGet';
|
|
||||||
import randomDrop from './randomDrop';
|
import randomDrop from './randomDrop';
|
||||||
import autoAllocate from './autoAllocate';
|
import autoAllocate from './autoAllocate';
|
||||||
import updateStats from './updateStats';
|
import updateStats from './updateStats';
|
||||||
import ultimateGear from './ultimateGear';
|
import ultimateGear from './ultimateGear';
|
||||||
import nullify from './nullify';
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
handleTwoHanded,
|
handleTwoHanded,
|
||||||
predictableRandom,
|
predictableRandom,
|
||||||
crit,
|
crit,
|
||||||
randomVal,
|
randomVal,
|
||||||
dotSet,
|
|
||||||
dotGet,
|
|
||||||
randomDrop,
|
randomDrop,
|
||||||
autoAllocate,
|
autoAllocate,
|
||||||
updateStats,
|
updateStats,
|
||||||
ultimateGear,
|
ultimateGear,
|
||||||
nullify,
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,7 +0,0 @@
|
|||||||
// TODO remove once v2 is retired
|
|
||||||
|
|
||||||
module.exports = function nullify (user) {
|
|
||||||
user.ops = null;
|
|
||||||
user.fns = null;
|
|
||||||
user = null;
|
|
||||||
};
|
|
||||||
@@ -43,12 +43,6 @@ api.diminishingReturns = statHelpers.diminishingReturns;
|
|||||||
import splitWhitespace from './libs/splitWhitespace';
|
import splitWhitespace from './libs/splitWhitespace';
|
||||||
api.$w = splitWhitespace;
|
api.$w = splitWhitespace;
|
||||||
|
|
||||||
import dotSet from './libs/dotSet';
|
|
||||||
api.dotSet = dotSet;
|
|
||||||
|
|
||||||
import dotGet from './libs/dotGet';
|
|
||||||
api.dotGet = dotGet;
|
|
||||||
|
|
||||||
import refPush from './libs/refPush';
|
import refPush from './libs/refPush';
|
||||||
api.refPush = refPush;
|
api.refPush = refPush;
|
||||||
|
|
||||||
@@ -253,7 +247,6 @@ api.wrap = function wrapUser (user, main = true) {
|
|||||||
|
|
||||||
if (main) {
|
if (main) {
|
||||||
user.ops = {
|
user.ops = {
|
||||||
update: _.partial(importedOps.update, user),
|
|
||||||
sleep: _.partial(importedOps.sleep, user),
|
sleep: _.partial(importedOps.sleep, user),
|
||||||
revive: _.partial(importedOps.revive, user),
|
revive: _.partial(importedOps.revive, user),
|
||||||
reset: _.partial(importedOps.reset, user),
|
reset: _.partial(importedOps.reset, user),
|
||||||
@@ -266,8 +259,6 @@ api.wrap = function wrapUser (user, main = true) {
|
|||||||
addTask: _.partial(importedOps.addTask, user),
|
addTask: _.partial(importedOps.addTask, user),
|
||||||
addTag: _.partial(importedOps.addTag, user),
|
addTag: _.partial(importedOps.addTag, user),
|
||||||
sortTag: _.partial(importedOps.sortTag, user),
|
sortTag: _.partial(importedOps.sortTag, user),
|
||||||
getTags: _.partial(importedOps.getTags, user),
|
|
||||||
getTag: _.partial(importedOps.getTag, user),
|
|
||||||
updateTag: _.partial(importedOps.updateTag, user),
|
updateTag: _.partial(importedOps.updateTag, user),
|
||||||
deleteTag: _.partial(importedOps.deleteTag, user),
|
deleteTag: _.partial(importedOps.deleteTag, user),
|
||||||
addWebhook: _.partial(importedOps.addWebhook, user),
|
addWebhook: _.partial(importedOps.addWebhook, user),
|
||||||
@@ -308,14 +299,11 @@ api.wrap = function wrapUser (user, main = true) {
|
|||||||
predictableRandom: _.partial(importedFns.predictableRandom, user),
|
predictableRandom: _.partial(importedFns.predictableRandom, user),
|
||||||
crit: _.partial(importedFns.crit, user),
|
crit: _.partial(importedFns.crit, user),
|
||||||
randomVal: _.partial(importedFns.randomVal, user),
|
randomVal: _.partial(importedFns.randomVal, user),
|
||||||
dotSet: _.partial(importedFns.dotSet, user),
|
|
||||||
dotGet: _.partial(importedFns.dotGet, user),
|
|
||||||
randomDrop: _.partial(importedFns.randomDrop, user),
|
randomDrop: _.partial(importedFns.randomDrop, user),
|
||||||
autoAllocate: _.partial(importedFns.autoAllocate, user),
|
autoAllocate: _.partial(importedFns.autoAllocate, user),
|
||||||
updateStats: _.partial(importedFns.updateStats, user),
|
updateStats: _.partial(importedFns.updateStats, user),
|
||||||
statsComputed: _.partial(statsComputed, user),
|
statsComputed: _.partial(statsComputed, user),
|
||||||
ultimateGear: _.partial(importedFns.ultimateGear, user),
|
ultimateGear: _.partial(importedFns.ultimateGear, user),
|
||||||
nullify: _.partial(importedFns.nullify, user),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Object.defineProperty(user, '_statsComputed', {
|
Object.defineProperty(user, '_statsComputed', {
|
||||||
|
|||||||
@@ -14,14 +14,10 @@ module.exports = function addWebhook (user, req = {}) {
|
|||||||
|
|
||||||
user.markModified('preferences.webhooks');
|
user.markModified('preferences.webhooks');
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.preferences.webhooks;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
refPush(wh, {
|
refPush(wh, {
|
||||||
url: req.body.url,
|
url: req.body.url,
|
||||||
enabled: req.body.enabled,
|
enabled: req.body.enabled,
|
||||||
}),
|
}),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,15 +1,11 @@
|
|||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import autoAllocate from '../fns/autoAllocate';
|
import autoAllocate from '../fns/autoAllocate';
|
||||||
|
|
||||||
module.exports = function allocateNow (user, req = {}) {
|
module.exports = function allocateNow (user) {
|
||||||
_.times(user.stats.points, () => autoAllocate(user));
|
_.times(user.stats.points, () => autoAllocate(user));
|
||||||
user.stats.points = 0;
|
user.stats.points = 0;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, 'stats');
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.stats,
|
user.stats,
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -105,12 +105,8 @@ module.exports = function buyArmoire (user, req = {}, analytics) {
|
|||||||
let resData = _.pick(user, splitWhitespace('items flags'));
|
let resData = _.pick(user, splitWhitespace('items flags'));
|
||||||
if (armoireResp) resData.armoire = armoireResp;
|
if (armoireResp) resData.armoire = armoireResp;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return resData;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
resData,
|
resData,
|
||||||
message,
|
message,
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -60,12 +60,8 @@ module.exports = function buyGear (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('items achievements stats flags'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('items achievements stats flags')),
|
_.pick(user, splitWhitespace('items achievements stats flags')),
|
||||||
message,
|
message,
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -42,12 +42,8 @@ module.exports = function buyHealthPotion (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.stats;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.stats,
|
user.stats,
|
||||||
message,
|
message,
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
import i18n from '../i18n';
|
import i18n from '../i18n';
|
||||||
import content from '../content/index';
|
import content from '../content/index';
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import splitWhitespace from '../libs/splitWhitespace';
|
|
||||||
import pickDeep from '../libs/pickDeep';
|
|
||||||
import {
|
import {
|
||||||
BadRequest,
|
BadRequest,
|
||||||
NotAuthorized,
|
NotAuthorized,
|
||||||
@@ -45,12 +43,8 @@ module.exports = function buyMysterySet (user, req = {}, analytics) {
|
|||||||
user.purchased.plan.consecutive.trinkets--;
|
user.purchased.plan.consecutive.trinkets--;
|
||||||
|
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return pickDeep(user, splitWhitespace('items purchased.plan.consecutive'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
{ items: user.items, purchasedPlanConsecutive: user.purchased.plan.consecutive },
|
{ items: user.items, purchasedPlanConsecutive: user.purchased.plan.consecutive },
|
||||||
i18n.t('hourglassPurchaseSet', req.language),
|
i18n.t('hourglassPurchaseSet', req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -38,14 +38,10 @@ module.exports = function buyQuest (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.items.quests;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.items.quests,
|
user.items.quests,
|
||||||
i18n.t('messageBought', {
|
i18n.t('messageBought', {
|
||||||
itemText: item.text(req.language),
|
itemText: item.text(req.language),
|
||||||
}, req.language),
|
}, req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -22,14 +22,10 @@ module.exports = function buySpecialSpell (user, req = {}) {
|
|||||||
|
|
||||||
user.items.special[key]++;
|
user.items.special[key]++;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('items stats'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('items stats')),
|
_.pick(user, splitWhitespace('items stats')),
|
||||||
i18n.t('messageBought', {
|
i18n.t('messageBought', {
|
||||||
itemText: item.text(req.language),
|
itemText: item.text(req.language),
|
||||||
}, req.language),
|
}, req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -69,11 +69,7 @@ module.exports = function changeClass (user, req = {}, analytics) {
|
|||||||
user.flags.classSelected = false;
|
user.flags.classSelected = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('stats flags items preferences'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('stats flags items preferences')),
|
_.pick(user, splitWhitespace('stats flags items preferences')),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import splitWhitespace from '../libs/splitWhitespace';
|
|||||||
import { capByLevel } from '../statHelpers';
|
import { capByLevel } from '../statHelpers';
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
|
|
||||||
module.exports = function disableClasses (user, req = {}) {
|
module.exports = function disableClasses (user) {
|
||||||
user.stats.class = 'warrior';
|
user.stats.class = 'warrior';
|
||||||
user.flags.classSelected = true;
|
user.flags.classSelected = true;
|
||||||
user.preferences.disableClasses = true;
|
user.preferences.disableClasses = true;
|
||||||
@@ -10,11 +10,7 @@ module.exports = function disableClasses (user, req = {}) {
|
|||||||
user.stats.str = capByLevel(user.stats.lvl);
|
user.stats.str = capByLevel(user.stats.lvl);
|
||||||
user.stats.points = 0;
|
user.stats.points = 0;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('stats flags preferences'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('stats flags preferences')),
|
_.pick(user, splitWhitespace('stats flags preferences')),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -58,11 +58,7 @@ module.exports = function equip (user, req = {}) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.items;
|
|
||||||
} else {
|
|
||||||
let res = [user.items];
|
let res = [user.items];
|
||||||
if (message) res.push(message);
|
if (message) res.push(message);
|
||||||
return res;
|
return res;
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -80,14 +80,8 @@ module.exports = function feed (user, req = {}) {
|
|||||||
|
|
||||||
user.items.food[food.key]--;
|
user.items.food[food.key]--;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return {
|
|
||||||
value: userPets[pet.key],
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
userPets[pet.key],
|
userPets[pet.key],
|
||||||
message,
|
message,
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
import _ from 'lodash';
|
|
||||||
import i18n from '../i18n';
|
|
||||||
import { NotFound } from '../libs/errors';
|
|
||||||
|
|
||||||
// TODO used only in client, move there?
|
|
||||||
|
|
||||||
module.exports = function getTag (user, req = {}) {
|
|
||||||
let tid = _.get(req, 'params.id');
|
|
||||||
|
|
||||||
let index = _.findIndex(user.tags, {
|
|
||||||
id: tid,
|
|
||||||
});
|
|
||||||
if (index === -1) {
|
|
||||||
throw new NotFound(i18n.t('messageTagNotFound', req.language));
|
|
||||||
}
|
|
||||||
|
|
||||||
return user.tags[index];
|
|
||||||
};
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
// TODO used only in client, move there?
|
|
||||||
|
|
||||||
module.exports = function getTags (user) {
|
|
||||||
return user.tags;
|
|
||||||
};
|
|
||||||
@@ -33,12 +33,8 @@ module.exports = function hatch (user, req = {}) {
|
|||||||
user.items.eggs[egg]--;
|
user.items.eggs[egg]--;
|
||||||
user.items.hatchingPotions[hatchingPotion]--;
|
user.items.hatchingPotions[hatchingPotion]--;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.items;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.items,
|
user.items,
|
||||||
i18n.t('messageHatched', req.language),
|
i18n.t('messageHatched', req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import {
|
|||||||
BadRequest,
|
BadRequest,
|
||||||
NotAuthorized,
|
NotAuthorized,
|
||||||
} from '../libs/errors';
|
} from '../libs/errors';
|
||||||
import splitWhitespace from '../libs/splitWhitespace';
|
|
||||||
|
|
||||||
module.exports = function purchaseHourglass (user, req = {}, analytics) {
|
module.exports = function purchaseHourglass (user, req = {}, analytics) {
|
||||||
let key = _.get(req, 'params.key');
|
let key = _.get(req, 'params.key');
|
||||||
@@ -51,12 +50,8 @@ module.exports = function purchaseHourglass (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('items purchased.plan.consecutive'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
{ items: user.items, purchasedPlanConsecutive: user.purchased.plan.consecutive },
|
{ items: user.items, purchasedPlanConsecutive: user.purchased.plan.consecutive },
|
||||||
i18n.t('hourglassPurchase', req.language),
|
i18n.t('hourglassPurchase', req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
import update from './update';
|
|
||||||
import sleep from './sleep';
|
import sleep from './sleep';
|
||||||
import revive from './revive';
|
import revive from './revive';
|
||||||
import reset from './reset';
|
import reset from './reset';
|
||||||
@@ -11,8 +10,6 @@ import deleteTask from './deleteTask';
|
|||||||
import addTask from './addTask';
|
import addTask from './addTask';
|
||||||
import addTag from './addTag';
|
import addTag from './addTag';
|
||||||
import sortTag from './sortTag';
|
import sortTag from './sortTag';
|
||||||
import getTags from './getTags';
|
|
||||||
import getTag from './getTag';
|
|
||||||
import updateTag from './updateTag';
|
import updateTag from './updateTag';
|
||||||
import deleteTag from './deleteTag';
|
import deleteTag from './deleteTag';
|
||||||
import addWebhook from './addWebhook';
|
import addWebhook from './addWebhook';
|
||||||
@@ -47,7 +44,6 @@ import scoreTask from './scoreTask';
|
|||||||
import markPmsRead from './markPMSRead';
|
import markPmsRead from './markPMSRead';
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
update,
|
|
||||||
sleep,
|
sleep,
|
||||||
revive,
|
revive,
|
||||||
reset,
|
reset,
|
||||||
@@ -60,8 +56,6 @@ module.exports = {
|
|||||||
addTask,
|
addTask,
|
||||||
addTag,
|
addTag,
|
||||||
sortTag,
|
sortTag,
|
||||||
getTags,
|
|
||||||
getTag,
|
|
||||||
updateTag,
|
updateTag,
|
||||||
deleteTag,
|
deleteTag,
|
||||||
addWebhook,
|
addWebhook,
|
||||||
|
|||||||
@@ -1,14 +1,10 @@
|
|||||||
import i18n from '../i18n';
|
import i18n from '../i18n';
|
||||||
|
|
||||||
module.exports = function markPmsRead (user, req = {}) {
|
module.exports = function markPmsRead (user) {
|
||||||
user.inbox.newMessages = 0;
|
user.inbox.newMessages = 0;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.inbox.newMessages,
|
user.inbox.newMessages,
|
||||||
i18n.t('pmsMarkedRead'),
|
i18n.t('pmsMarkedRead'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -28,12 +28,8 @@ module.exports = function openMysteryItem (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.items.gear.owned;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
item,
|
item,
|
||||||
i18n.t('mysteryItemOpened', req.language),
|
i18n.t('mysteryItemOpened', req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -119,11 +119,7 @@ module.exports = function purchase (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('items balance'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('items balance')),
|
_.pick(user, splitWhitespace('items balance')),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
import splitWhitespace from '../libs/splitWhitespace';
|
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import i18n from '../i18n';
|
import i18n from '../i18n';
|
||||||
import {
|
import {
|
||||||
@@ -21,12 +20,8 @@ module.exports = function readCard (user, req = {}) {
|
|||||||
user.items.special[`${cardType}Received`].shift();
|
user.items.special[`${cardType}Received`].shift();
|
||||||
user.flags.cardReceived = false;
|
user.flags.cardReceived = false;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('items.special flags.cardReceived'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
{ specialItems: user.items.special, cardReceived: user.flags.cardReceived },
|
{ specialItems: user.items.special, cardReceived: user.flags.cardReceived },
|
||||||
i18n.t('readCard', {cardType}, req.language),
|
i18n.t('readCard', {cardType}, req.language),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -97,12 +97,8 @@ module.exports = function rebirth (user, tasks = [], req = {}, analytics) {
|
|||||||
|
|
||||||
user.stats.buffs = {};
|
user.stats.buffs = {};
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
{user, tasks},
|
{user, tasks},
|
||||||
i18n.t('rebirthComplete'),
|
i18n.t('rebirthComplete'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -58,12 +58,8 @@ module.exports = function releaseBoth (user, req = {}, analytics) {
|
|||||||
user.achievements.triadBingoCount++;
|
user.achievements.triadBingoCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('achievements items balance')),
|
_.pick(user, splitWhitespace('achievements items balance')),
|
||||||
i18n.t('mountsAndPetsReleased'),
|
i18n.t('mountsAndPetsReleased'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -33,12 +33,8 @@ module.exports = function releaseMounts (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.items.mounts,
|
user.items.mounts,
|
||||||
i18n.t('mountsReleased'),
|
i18n.t('mountsReleased'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -31,12 +31,8 @@ module.exports = function releasePets (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.items.pets,
|
user.items.pets,
|
||||||
i18n.t('petsReleased'),
|
i18n.t('petsReleased'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -30,12 +30,8 @@ module.exports = function reroll (user, tasks = [], req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
{user, tasks},
|
{user, tasks},
|
||||||
i18n.t('fortifyComplete'),
|
i18n.t('fortifyComplete'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import resetGear from '../fns/resetGear';
|
import resetGear from '../fns/resetGear';
|
||||||
import i18n from '../i18n';
|
import i18n from '../i18n';
|
||||||
|
|
||||||
module.exports = function reset (user, tasks = [], req = {}) {
|
module.exports = function reset (user, tasks = []) {
|
||||||
user.stats.hp = 50;
|
user.stats.hp = 50;
|
||||||
user.stats.lvl = 1;
|
user.stats.lvl = 1;
|
||||||
user.stats.gp = 0;
|
user.stats.gp = 0;
|
||||||
@@ -20,12 +20,8 @@ module.exports = function reset (user, tasks = [], req = {}) {
|
|||||||
|
|
||||||
user.preferences.automaticAllocation = false;
|
user.preferences.automaticAllocation = false;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
{user, tasksToRemove},
|
{user, tasksToRemove},
|
||||||
i18n.t('resetComplete'),
|
i18n.t('resetComplete'),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -97,12 +97,8 @@ module.exports = function revive (user, req = {}, analytics) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user;
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
user.items,
|
user.items,
|
||||||
message,
|
message,
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -33,11 +33,7 @@ module.exports = function sell (user, req = {}) {
|
|||||||
user.items[type][key]--;
|
user.items[type][key]--;
|
||||||
user.stats.gp += content[type][key].value;
|
user.stats.gp += content[type][key].value;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return _.pick(user, splitWhitespace('stats items'));
|
|
||||||
} else {
|
|
||||||
return [
|
return [
|
||||||
_.pick(user, splitWhitespace('stats items')),
|
_.pick(user, splitWhitespace('stats items')),
|
||||||
];
|
];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,9 +1,5 @@
|
|||||||
module.exports = function sleep (user, req = {}) {
|
module.exports = function sleep (user) {
|
||||||
user.preferences.sleep = !user.preferences.sleep;
|
user.preferences.sleep = !user.preferences.sleep;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return {};
|
|
||||||
} else {
|
|
||||||
return [user.preferences.sleep];
|
return [user.preferences.sleep];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -111,9 +111,5 @@ module.exports = function unlock (user, req = {}, analytics) {
|
|||||||
|
|
||||||
if (!alreadyOwns) response.push(i18n.t('unlocked', req.language));
|
if (!alreadyOwns) response.push(i18n.t('unlocked', req.language));
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return response[0];
|
|
||||||
} else {
|
|
||||||
return response;
|
return response;
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
import _ from 'lodash';
|
|
||||||
|
|
||||||
// TODO used only in client, move there?
|
|
||||||
|
|
||||||
module.exports = function updateUser (user, req = {}) {
|
|
||||||
_.each(req.body, (val, key) => {
|
|
||||||
_.set(user, key, val);
|
|
||||||
});
|
|
||||||
|
|
||||||
return user;
|
|
||||||
};
|
|
||||||
@@ -12,9 +12,5 @@ module.exports = function updateWebhook (user, req) {
|
|||||||
user.preferences.webhooks[req.params.id].url = req.body.url;
|
user.preferences.webhooks[req.params.id].url = req.body.url;
|
||||||
user.preferences.webhooks[req.params.id].enabled = req.body.enabled;
|
user.preferences.webhooks[req.params.id].enabled = req.body.enabled;
|
||||||
|
|
||||||
if (req.v2 === true) {
|
|
||||||
return user.preferences.webhooks;
|
|
||||||
} else {
|
|
||||||
return [user.preferences.webhooks[req.params.id]];
|
return [user.preferences.webhooks[req.params.id]];
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -537,7 +537,7 @@ api.allocateNow = {
|
|||||||
url: '/user/allocate-now',
|
url: '/user/allocate-now',
|
||||||
async handler (req, res) {
|
async handler (req, res) {
|
||||||
let user = res.locals.user;
|
let user = res.locals.user;
|
||||||
let allocateNowRes = common.ops.allocateNow(user, req);
|
let allocateNowRes = common.ops.allocateNow(user);
|
||||||
await user.save();
|
await user.save();
|
||||||
res.respond(200, ...allocateNowRes);
|
res.respond(200, ...allocateNowRes);
|
||||||
},
|
},
|
||||||
@@ -1241,7 +1241,7 @@ api.markPmsRead = {
|
|||||||
url: '/user/mark-pms-read',
|
url: '/user/mark-pms-read',
|
||||||
async handler (req, res) {
|
async handler (req, res) {
|
||||||
let user = res.locals.user;
|
let user = res.locals.user;
|
||||||
let markPmsResponse = common.ops.markPmsRead(user, req);
|
let markPmsResponse = common.ops.markPmsRead(user);
|
||||||
await user.save();
|
await user.save();
|
||||||
res.respond(200, markPmsResponse);
|
res.respond(200, markPmsResponse);
|
||||||
},
|
},
|
||||||
@@ -1308,7 +1308,7 @@ api.userReset = {
|
|||||||
],
|
],
|
||||||
}).select('_id type challenge').exec();
|
}).select('_id type challenge').exec();
|
||||||
|
|
||||||
let resetRes = common.ops.reset(user, tasks, req);
|
let resetRes = common.ops.reset(user, tasks);
|
||||||
|
|
||||||
await Bluebird.all([
|
await Bluebird.all([
|
||||||
Tasks.Task.remove({_id: {$in: resetRes[0].tasksToRemove}, userId: user._id}),
|
Tasks.Task.remove({_id: {$in: resetRes[0].tasksToRemove}, userId: user._id}),
|
||||||
|
|||||||
Reference in New Issue
Block a user