Commit Graph

148 Commits

Author SHA1 Message Date
Matteo Pagliazzi
28f2e9c356 API v3 [WIP] (#6144)
* Fixed more tests

* Added tags into user service

* Added api-v3 auth urls

* v3: fix package.json

* v3: fix package.json

* Fixed auth tests. Updated Authctrl response

* v3: remove newrelic config file in favour of env variables

* v3: upgrade some deps

* switch from Q to Bluebird

* v3 fix tests with deferred

* Removed extra consoles.log. Changed data.data to res.data

* v3 fix tests and use coroutines instead of regenerator

* v3: fix tests

* v3: do not await a non promise

* v3: q -> bluebird

* Changed id param for registration response

* Updated party query and create

* Ensured login callback happens after user sync

* Add challenges to groups. Fixed isMemberOfGuild check

* Updated party and group tests

* Fixed cron test

* return user.id and send analytics event before changing page

* fix trailing spaces

* disable redirects

* Api v3 party tavern fixes (#7191)

* Added check if user is in party before query

* Cached party query. Prevented party request when user is not in party. Updated Party create with no invites

* Update tavern ctrl to use new promise

* v3: misc fixes

* Api v3 task fixes (#7193)

* Update task view to use _id

* Added try catch to user service ops calls

* v3 client: saving after syncing is complete

* Fixed test broken by part sync change (#7195)

* v3: fix todo scoring and try to fix production testing problem

* revert changes to mongoose config

* mongoose: increase keepAlive

* test mongoose fix

* fix: Only apply captureStackTrace if it exists on the error object

* v3: fix reminders with no startDate

* mongoose: use options

* chore(): rename website/src -> website/server and website/public -> website/client (#7199)

* v3 fix GET /groups: return an error only if an invalid type is supplied not when there are 0 results (#7203)

* [API v3] Fix calls to user.ops and deleting tags (#7204)

* v3: fixes calls to user.ops from views and deleting tags

* v3: fix tests that use user._statsComputed

* Api v3 fixes continued (#7205)

* Added timzeone offset back

* Added APIToken back to settings page

* Fixed fetch recent messages for party

* Fixed returning group description

* Fixed check if user is member of challenge

* Fixed party members appearing in header

* Updated get myGroups param to include public groups. Fixed isMemberOf group

* Fixed hourglass purchase

* Fixed challenge addding tasks on first creating

* Updated tests to accomidate new changes

* fix: Correct checklist on client

Closes #7207

* fix: Pin eslint to 2.9

* minor improvements to cron code for clarity; fix inaccurate comments; add TODOs for rest-in-inn actions

* fix: Add missing type param to equip call

closes #7212

* rename and reword pubChalsMinPrize to reflect that it's only for Tavern challenges

* allows players to send gems to each other; other minor related changes - fixes https://github.com/HabitRPG/habitrpg/issues/7227

* fix tests for /members/transfer-gems

* fix: Set gems sent notification as translatable string

* chore: Remove unusued variable

* fix: Remove requirement on message paramter in transfer-gems

* add a missing variable declaration

* chore: clarify comments on cron code

* fix: Correct client request from habitrpg -> tavern

* update apidoc URL in package.json

Closes #7222

* Fixed start party by invites

* Updated spell casting to v3

* Fixed adding and removing tags on tasks

* Fixed page reload on settings change

* Fixed battle monsters with friends button

* Loaded completed todos when done is clicked

* chore: Reinstate floating version number for eslint

babel-eslint regression fixed

* Fixed reload tests

* change "an user" to "a user" in comments and text (no code changes) (#7257)

* fix: Alert user that drops were recieved

* remove userServices.js from karma.conf - it's been moved to website/client/js/services

* feat: Create debug update user route

* fix: Correct set cron debug function

* feat: Add make admin button to debug menu

* lint: Add missing semicolons in test

* fix: Temporarilly comment out udpate user debug route

* v3: fix _tmp for crit and streakBonus

* v3: execute all actions when leaving a solo party

* v3 client: fix group not found when leaving party

* v3 migration: fix challenge prize

* v3 cron: only save modified tasks

* v3: add CHALLENGE_TASK_NOT_FOUND to valid broken reasons

* v3: fix tasks chart

* v3 client: fix ability to leave challenge

* v3 client: fix filtering by tag and correctly show tag tooltip

* v3 common: fix tags tests

* v3 client: support unlinking not found challenges tasks

* v3: disable Bluebird warning for missing return, fixes #7269

* feat: Separate out update-user into set-cron and make-admin debug routes

* chore: Disable make admin debug route for v3 prod testing

* v3: misc fixes

* v3: misc fixes

* v3: fix adding multiple tasks

* Fixed join/leave button updates

* Queried only user groups to be available when creating challenges

* Fixed bulk add tasks to challenge

* Synced challenge tasks after leave and join.

* Fixed default selected group

* Fixed challenge member info. Fixed challenge winner selection

* Fixed deleting challenge tasks

* Fixed particiapting filter

* v3 client: fix casting spells

* v3: do not log sensitive data

* v3: always save user when casting spell

* v3: always save user when casting spell

* v3: more fixes for spells

* fix typos and missing information in apidocs - fixes https://github.com/HabitRPG/habitrpg/issues/7277 (#7282)

* v3: add TODO for client side spells

* feat: Add modify inventory debug menu

* Fixed viewing user progress on challenge

* Updated tests

* fix: Fix quest progress button

* fix incorrect Armoire test; remove unneeded param details from apidocs; disambiguate health potion

* v3: fix stealth casting

* v3: fix tasks saving and selection for rebirth reroll and reset (server-only)

* v3: fix auto allocation

* v3 client: misc fixes

* rename buyPotion and buy-potion to buyHealthPotion and buy-health-potion; fix apidoc param error

* Added delete for saved challenge task

* Fixed member modal on front page

* adjust text in apidocs for errors / clarity / consistency / standard terminology (no code changes) (#7298)

* fix bug in Rebirth test, add new tests, adjust apidocs (#7293)

* Updated task model to allow setting streak (#7306)

* fix: Correct missing * in apidoc comments

* Api v3 challenge fixes (#7287)

* Fixed join/leave button updates

* Queried only user groups to be available when creating challenges

* Fixed bulk add tasks to challenge

* Synced challenge tasks after leave and join.

* Fixed default selected group

* Fixed challenge member info. Fixed challenge winner selection

* Fixed deleting challenge tasks

* Fixed particiapting filter

* Fixed viewing user progress on challenge

* Updated tests

* Added delete for saved challenge task

* v3: fix sorting

* [API v3] add CRON_SAFE_MODE (#7286)

* add CRON_SAFE_MODE to example config file, fix some bugs, add an unrelated low-priority TODO

* create CRON_SAFE_MODE to disable parts of cron for use after extended outage - fixes https://github.com/HabitRPG/habitrpg/issues/7161

* fix a bug with CRON_SAFE_MODE, remove duplicated code, remove completed TODO comment

* fix check for CRON_SAFE_MODE

* v3 client: fix typo

* adjust debug menu Modify Inventory: hungrier pets, fewer Special items, "Hide" buttons

* completed To-Dos: return the 30 most recent instead of 30 oldest (#7318)

* v3 migration: fix createdAt date

* adjust locales text, key names, and files for Rebirth, Reset, and Fortify / ReRoll for consistency with existing strings (#7321)

* v3: fix unlinking multiple tasks

* v3 fix releasing pets

* v3: fix authenticating with apiUrl

* v3: fix typo

* v3 fix client tests for unlinking

* v3 client: do not show start quest button when quest is active

* v3 client: fix ability to send cards

* v3 client: fix misc challenge issues

* v3: fix notifications

* v3 client: more user friendly errors

* v3 client: only load completed todos once

* v3 client: fix tests

* v3: move TAVERN_ID to common code

* fix: Provide default type and text for new task creation in score route

* fix: Provide default history [] for habit in score route

* fix: Add _legacyId prop to tasks to support non-uuid identifiers

* chore: Change v3 migration to use _legacyId instead of legacyId

* fix: check for _legacyId in tasks if id does not exist

* refactor: Extract out finding task by id or _legacyId into a function

* Api v3 party quest fixes (#7341)

* Fix display of add challenge message when group challenges are empty

* Fixed forced quest start to update quest without reload

* Fixed needing to reload when accepting party invite

* Fix group leave and join reload

* Fixed leave current party and join another

* Updated party tests

* v3 client: remove console.log statement

* v3: misc fixes

* v3 client: fix predicatbale random

* v3: info about API v3

* v3: update footer with links to developer resources

* v3: support party invitation from email

* v3 client: fix chat flagging

* fix: Correct get tasks route to properly get todos (#7349)

* move locales strings from api-v3.json to other locales files (#7347)

* move locales strings from api-v3.json: authentication strings -> front.json

* move locales strings from api-v3.json: authentication strings -> tasks.json

* move locales strings from api-v3.json: authentication strings -> groups.json

* move locales strings from api-v3.json: authentication strings -> challenge.json

* move locales strings from api-v3.json: authentication strings -> groups.json (again)

* move locales strings from api-v3.json: authentication strings -> quests.json

* move locales strings from api-v3.json: authentication strings -> subscriber.json

* move locales strings from api-v3.json: authentication strings -> spells.json

* move locales strings from api-v3.json: authentication strings -> character.json

* move locales strings from api-v3.json: authentication strings -> groups.json (PMs)

* move locales strings from api-v3.json: authentication strings -> npc.json

* move locales strings from api-v3.json: authentication strings -> pets.json

* move locales strings from api-v3.json: authentication strings -> miscellaneous

* move locales strings from api-v3.json: authentication strings -> contrib.json and settings.json

* move locales strings from api-v3.json: delete unused string (invalidTasksOwner), delete api-v3.json, whitespace cleanup

* v3 client: fix sticky header

* v3: remove unused code

* v3 client: correctly redirect after inviting

* Removed v2 calls from views (#7351)

* v3: fix tests for challenge export

* v3: fallbackto authWithHeaders if wuthWithSession or authWithUrl fails

* Added force cache update when fetching new messages (#7360)

* v3: fetch whole user when booting from group tto avoid issues with pre save hook expecting all data

* v3: misc fixes for payments

* v3: limit fields of challenge tasks that can be updated

* fix(tests): never connect to NODE_DB_URI for tests

* Added new route for setting last cron and updated front end

* v3: fix iap url

* v3: fix build and ios IAP

* Changed route to user set custom day start

* v3: iap accessible under /api/v3, fixes to spells and groups invitations

* v3: correctly use v3 routes in client

* remove XP, GP when unticking a Daily with a completed checklist - fixes https://github.com/HabitRPG/habitrpg/issues/7246

* use natural language for error message about skills on challenge tasks (#7336), fix other gramatical error

* Updated ui when user rejects a guild invite (#7368)

* feat: complete custom day start route

Closes #7363

* fix: Correct spelling of healAll skill

fix: Correct sprite name of healAll skill

* fix: Change all instances of spookDust -> spookySparkles

* add dateCreated to all tasks; add empty challenge object to tasks that don't have one (#7386)

* add plumilla to artists for Tangle Tree in Bailey message

* Fixed quest drop modal (#7377)

* Fixed quest drop modal

* Fixed broken party test

* [API v3] Maintenance Mode (#7367)

* WIP(maintenance): maintenance

* WIP(maintenance): working locale features

* fix(maintenance): don't translate info page target

* WIP(maintenance): start adding info page

* fix(maintenance): linting

* feat: Add container to maintenance info page

* fix(maintenance): add config.json edits
Also DRY variables for main vs info pages

* fix(maintenance): linting

* refactor(maintenance): further slim down variables

* refactor: Remove unnecessary variables

* fix: Correct string interpolation in maintenace view

* feat: Dynamically add time to maintenance pages

* maintenance mode: do not connect to mongodb

* fix(maintenance): clean up timezones etc.

* fix(maintenance): remove unneeded sprite

* Tavern party challenges invites fix (#7394)

* Added challenges and invitations to party

* Loaded tavern challenges

* Updated group and quest services tests

* v3: implement automatic syncing if user is not up to date

* Removed unnecessary fields when updating groups and challenges (#7395)

* v3: do not saved populated user

* v3: correctly return user subset

* Chained party promises together (#7396)

* v3: $w -> splitWhitespace

* use bluebird

* use babel polyfill

* migration: fix items

* update links for v3

* Updated shortname validation to support multiple browsers

* Docs changes (#7401)

* chore: Clarify transfer-gems documentation

* chore: Clarify api status route documentation

* chore: Mark webhooks as BETA

* Added tags update route. Added sort to user service (#7381)

* Added tags update route. Added sort to user service

* Change update tasks route to reorder tasks

* Fixed linting issue

* Changed params for reorder tags route

* Fixed not found tag and added test

* Added password confirmation when deleteing account (#7402)

* fix production logging

* feat(commit): push

* empty commit

* feat(maintenance): post-downtime news & awards (#7406)

* fix exporting avatar

* second attempt at fixing exporting avatar

* fix production logging

* s3: convert moment to date instance

* fix avatar sharing and caching (30 minutes)

* fix: Correct missing parameter

Closes #7433

* fix: Validate challenge shortname on server

* adjust text strings - fixes https://github.com/HabitRPG/habitrpg/issues/5631 and also Short Name -> Tag Name
2016-05-23 13:58:31 +02:00
Blade Barringer
18a3024aea fix: Correct hourglass test 2016-05-18 10:33:05 -05:00
Sabe Jones
7f11e766c3 Sabrecat/glasses chairs (#7182)
* feat(customization): new chairs, eyeglass sprites

* feat(avatar): finish glasses implementation

* fix(test): include glasses in base equipment
2016-05-10 16:07:46 -05:00
Alys
ae9e6fbe30 allow cron to record user's current timezone offset in preferences.timezoneOffsetAtLastCron (initial stage of cron timezone fix for https://github.com/HabitRPG/habitrpg/issues/3806 ) 2016-03-29 22:34:23 +10:00
Matteo Pagliazzi
5ca45df602 Revert "tests for deleting old todos"
This reverts commit d9dd031e7f.
2016-02-15 22:12:21 +01:00
Matteo Pagliazzi
d9dd031e7f tests for deleting old todos 2016-01-31 21:24:59 +01:00
Matteo Pagliazzi
f83b271b30 rever new history preening 2016-01-13 11:07:52 +01:00
Matteo Pagliazzi
be0fe3eb4f Merge pull request #6479 from HabitRPG/new-history-preening
New history preening
2016-01-09 20:12:33 +01:00
Matteo Pagliazzi
2fff34cff4 finalize tests 2016-01-09 19:47:18 +01:00
Matteo Pagliazzi
dec08955ac fix tests 2016-01-08 23:02:18 +01:00
Matteo Pagliazzi
82651cf1ed initial tests 2016-01-08 18:58:54 +01:00
Matteo Pagliazzi
ae852f9a2e complete preening and enable for challenges too 2016-01-08 17:47:08 +01:00
Matteo Pagliazzi
243b839392 wip: new history preening, delineate process and differentiate between subscribers and non 2016-01-07 20:07:13 +01:00
Matteo Pagliazzi
fdd5ab724a begin implementing new preenUserHistory method: port current code to es6 and setup tests 2016-01-07 18:44:25 +01:00
Blade Barringer
75f71bc2ca fix: Corrects stat allocation bug where it was possible to recieve more points than 100
fixes #6434
2016-01-05 08:35:40 -06:00
Alys
8db492099c Revert "fix(common): Corrects bug where stat points could be awarded after level 100"
This reverts commit 2bbdf66d76.
2016-01-05 07:05:40 +10:00
Blade Barringer
2bbdf66d76 fix(common): Corrects bug where stat points could be awarded after level 100
Closes #6434
2016-01-04 07:58:59 -06:00
Blade Barringer
b3050e5a67 chore(dependency): Upgrade lodash from v2 to v3 2015-12-29 07:45:03 -06:00
Blade Barringer
b6ab74ceda refactor(common): Update variable name 2015-12-26 20:10:56 -06:00
Blade Barringer
80ed048d5c tests: Update updateStats test 2015-12-26 19:52:25 -06:00
Blade Barringer
1b118d86b2 refactor: Extract constants into constants file 2015-12-26 19:41:20 -06:00
Blade Barringer
ba31cda85d Merge branch 'develop' into TheHollidayInn-leveling-ensure-user-gets-100-points 2015-12-26 19:14:40 -06:00
Blade Barringer
c5bf06cd24 tests(common): Add test for preening todos 2015-12-26 08:11:02 -06:00
Keith Holliday
5573689d4e Added tests for ensuring user gets 100 points 2015-12-15 18:38:33 -06:00
Blade Barringer
883fd14775 tests(lint): remove unused variables 2015-12-13 16:40:44 -06:00
Blade Barringer
9ec26a8ee9 tests(common): Use generateUser helper in dailies test 2015-12-13 16:29:29 -06:00
Blade Barringer
b10c6f21a8 tests(common): Convert algos tests to use generateUser helper 2015-12-13 16:23:25 -06:00
Blade Barringer
ce06d8a873 tests(common): Simplify spell tests 2015-12-13 15:37:18 -06:00
Blade Barringer
4ee21f2578 tests(common): Use helper to generate user 2015-12-13 10:40:50 -06:00
Blade Barringer
dafe014ec8 Merge branch 'develop' into TheHollidayInn-skills-burst-backstap-leveling-fix 2015-12-13 10:06:27 -06:00
Keith Holliday
beea6d920f Added tests for backstab and fireball 2015-12-13 09:19:20 -06:00
Oliver Eyton-Williams
dcd7cae312 Reverted changes related to multiple messages and changed handleTwoHanded to send single, clearer, messages. 2015-12-02 16:51:01 +01:00
Oliver Eyton-Williams
ee7bfece06 Added tests for equipping and unequipping. 2015-12-01 17:58:12 +01:00
Oliver Eyton-Williams
9bda5657d2 Fixed syntax for linter. 2015-11-25 12:40:40 +01:00
Oliver Eyton-Williams
707cd08a8b Merged: updating two-handed tests to use arrow functions. 2015-11-25 12:12:22 +01:00
Blade Barringer
7d49a8cbf8 Merge branch 'develop' into HabitRPG-sabrecat/modularize-statHelpers 2015-11-23 08:07:58 -06:00
Alys
a380c1aa30 refactor api.daysSince to a cron.js function not exposed on api 2015-11-22 10:48:15 +10:00
Alys
2f8b6d68e8 refactor api.startOfDay to a cron.js function not exposed on api 2015-11-22 07:13:44 +10:00
Alys
6183fd9e71 refactor api.startOfWeek to a cron.js function not exposed on api 2015-11-21 22:26:05 +10:00
Alys
a73662bab6 refactor api.dayMapping to DAY_MAPPING const, not exposed on api 2015-11-21 20:48:18 +10:00
Sabe Jones
66725a561c fix(test): Remove only 2015-11-20 13:39:54 -05:00
Sabe Jones
e5d3e7bc83 fix(test): Linting and coverage 2015-11-20 13:36:41 -05:00
Sabe Jones
fb17c3ae80 Merge branch 'develop' into sabrecat/modularize-statHelpers 2015-11-20 13:27:25 -05:00
Blade Barringer
776faddb34 (chore): lint test/common files 2015-11-19 20:27:39 -06:00
Sabe Jones
31b68219d1 refactor(stats): Address PR comments 2015-11-18 15:06:55 -05:00
Oliver Eyton-Williams
570d7c3c76 Added tests for buying two-handed weapons 2015-11-18 16:41:06 +01:00
Sabe Jones
4bf20959dd refactor(stats): Math helpers ES2015 module 2015-11-17 15:41:26 -05:00
Blade Barringer
037337d54f Remove extraneous anonymous function. 2015-11-15 08:24:42 -06:00
Blade Barringer
c829eb21ed Removed unused mocha.opts 2015-11-14 21:50:47 -06:00
Blade Barringer
bc90893284 Correct test to declare variable 2015-11-14 21:45:20 -06:00