Commit graph

335 commits

Author SHA1 Message Date
Frank Maximus
ea44af0929
buyMysterySet records every item in Amplitude. (#12197)
* buyMysterySet records every item in Amplitude.

Record only the mysterySet

Fixes: #11705

* buyMysterySet records every item in Amplitude.

Extend unit test

Fixes: #11705
2020-05-19 16:39:48 +02:00
Matteo Pagliazzi
ca4efa21cf Reset should unassign Stat Points
Squashed commit of the following:

commit c3c2c364118a90f893ea7fca0a943ea64299234a
Author: Matteo Pagliazzi <matteopagliazzi@gmail.com>
Date:   Sun May 3 22:36:57 2020 +0200

    increase timeout to 100ms to allow a correct route change before reload

commit 5fd85345ce4a1d3684ca991db7f666803c899e63
Merge: a73b5c942b 33331554d3
Author: Matteo Pagliazzi <matteopagliazzi@gmail.com>
Date:   Sun May 3 22:35:33 2020 +0200

    Merge branch 'develop' of https://github.com/PitiTheGrey/habitica into PitiTheGrey-develop

commit 33331554d3da85134fd8b2a625a00d150da9e2e1
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Sun May 3 22:14:33 2020 +0200

    Order fixed.

    Rekord after reset

commit 3374ed29dbe37cd7416a3ef3eb9b9519f1488078
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Sun May 3 22:01:07 2020 +0200

    Return to page  then reset

commit a73b5c942b577dd357ce76380a0102c6823f66c1
Merge: 888f2c8217 0887141ec4
Author: Matteo Pagliazzi <matteopagliazzi@gmail.com>
Date:   Sun May 3 21:44:16 2020 +0200

    Merge branch 'develop' of https://github.com/PitiTheGrey/habitica into PitiTheGrey-develop

commit 0887141ec47fa8c7fb912f459416f6fa20d271b5
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Sun May 3 20:42:50 2020 +0200

    Remove 2nd try (sorry)

commit e5534a7cba989ef8197a06ee6e5a4adb80992dba
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Sun May 3 20:14:49 2020 +0200

    removed unnecessary lines of code

commit 888f2c8217611d367bee912b63d4cc3f4def59bb
Merge: aeba14f2e9 e5c5f7f1d0
Author: Matteo Pagliazzi <matteopagliazzi@gmail.com>
Date:   Sun May 3 19:43:02 2020 +0200

    Merge branch 'develop' of https://github.com/PitiTheGrey/habitica into PitiTheGrey-develop

commit e5c5f7f1d005e38a54341ca104a1d6632323bd75
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Sat May 2 14:54:14 2020 +0200

    Page reload after reset button pressed

commit 1c7385f774f12f4d02adf0370bc692622e81f22c
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Tue Apr 28 22:23:59 2020 +0200

    Update reset.js

commit 6a8ad34aa6eace9c621d52dded8d6e4200352e33
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Tue Apr 28 22:15:08 2020 +0200

    Update reset.js

    Resets int, con, per, str to 0
    and Points to 1

commit ba6de48ee367aabf4a87f86eac03aeb8d3f1c2e0
Author: PitiTheGrey <35431804+PitiTheGrey@users.noreply.github.com>
Date:   Tue Apr 28 22:10:16 2020 +0200

    Update reset.js

    Test if habitica/Website/common/script/ops/reset.js resets
    int, con, per, str to 0
    and Points to 1.
2020-05-03 22:37:34 +02:00
Alys
aeba14f2e9
update API's monthly Gem cap messages to use the friendly website version (#12150)
* allow subscribers to buy their final monthly gem

* replace old montly Gem cap messages with friendlier new ones
2020-05-02 21:49:38 +02:00
Bart Enkelaar
dc9800d88a
Don't bill (subtract gems) multiple times for multiple unlock item set calls (#12116)
* Issue 11050 - Small tuneups to unlock.js

- Use includes i.o. indexOf
- Extract small function for object setting duplication
- Use every instead of custom counter

* Issue 11050 - Properly store purchased items when purchasing them

* Issue 11050 - Couple more tuneups in unlock.js and implemented partial failure scenario

* Issue 11050 - Fix last lint issue

* Issue 11050 - Check path for gear i.o. failing to write it to purchased

* Issue 11050 - Guarantee variation coverage in tests

* Issue 11050 - Use startsWith instead of includes for background check

* Issue 11050 - Don't unlock lost items
2020-04-24 16:16:34 +02:00
Jack Somers
6d6adfd919
Fixes #11119: Added check for wacky pet before feeding (#12106)
* Added check for wacky pet before feeding

* added test for feeding wacky pets

* Fixed typo in test for feeding wacky pets

Co-authored-by: Jack Somers <somersjw9@gmail.com>
2020-04-20 22:17:42 +02:00
Sabe Jones
92c3a640ee feat(content): Bug Bonanza achievement 2020-03-17 09:11:41 -05:00
Sabe Jones
e94631a002 fix(test): food expectation, sigh 2020-03-13 11:10:28 -05:00
Sabe Jones
bd8e67a2ea
Adventure Guide Prep (#11883)
* WIP(adventure): prereqs

* WIP(drops): new modal

* WIP(adventure): analytics fixes etc

* feat(adventure): random egg+potion on 2nd task

* fix(lint): noworkies

* fix(modal): correctly construct classes

* fix(tests): expectations and escape

* fix(first-drops): address comments

* fix(first-drops): don't give random drops until first drops

* fix(drops): remove more Level 3 references

* refactor(drops): no need for cloning

* refactor(drops): unnecessary export

* fix(first-drops): force sync

* fix(first-drops): move to server

* fix(first-drops): escape in case we get here with >0 items

* fix(lint): line length

* fix(pet-food): remove unused string
2020-03-07 13:03:13 -06:00
Sabe Jones
34145ed8ca fix(event): decakeify 2020-02-01 12:07:23 -06:00
Sabe Jones
5a065b8a8a fix(test): food expectation 2020-01-28 15:49:50 -06:00
Matteo Pagliazzi
527544354a fix typo in comment 2019-12-23 18:15:50 +01:00
Yo
04a9c97393 Fix Typos (#11644)
* Fix Typos

* Fix More Typos
2019-12-23 17:52:55 +01:00
Matteo Pagliazzi
8f5a0cfe79
Onboarding guide and initial achievements refactoring (#11536)
* add achievements to user

* add placeholder strings

* add to achievements to common script

* add onboarding achievements category

* add notifications

* more notifications

* award achievements

* wip notification panel

* add achievements icons and copy

* do not count onboarding tasks for the created task achievement

* add notes

* sprites, fixes and completion status and reward

* add onboarding panel

* add toggle

* fix toggle size

* fix tests

* fix typo

* add notification

* start adding modal

* fix remove button positionin, timeout, progress bar

* modal + fixes

* disable broken social links from level up modal

* change toggle icon color on hover

* add border bottom to onboarding guide panel

* add collapse animation

* expanded onboarding on first open

* onboarding: flip toggle colors

* onboarding: show progress bar all the time

* onboarding: fix panel closing on click

* onboarding modal: add close icon and fix padding

* wip: add migration for existing users

* fix titles in guide

* fix achievements copy

* do not award completed task achievement when direction is down

* start implementing new achievements

* start migrating client

* remove social links from achievements modals

* prevent skipping tutorial + fix achievement notification

* sync fixes

* start redesign achievement modal

* misc fixes to achievements, polish generic achievement modal and hatched pet modal

* add special badge for onboarding

* fix badge condition

* modals fixes

* hatched pet modal: add close icon

* fix badge typo

* fix justin button

* new scrolling behavior for dropdowns

* fix strings capitalization

* add common tests

* add api unit tests

* add date check

* achievements modal polishing

* typos

* add toggle for achievements categories

* typo

* fix test

* fix edit avatar modal cannot be closed

* finish migration and correct launch date

* fix migration

* migration fixes

* fix tests
2019-12-16 17:20:47 +01:00
Xaz16
da8346ea50 Fix: if wrapping 2019-11-20 10:05:11 +03:00
Xaz16
0731dcd453 Fix: lint 2019-11-17 23:57:42 +03:00
Xaz16
aedabd2266 Fix
- Rewrite exports of debuffPotion functions
- Force clear debuffPotions in setDebuffPotionItems to make the same behavior as in develop branch
- Change class of debuffPotion items to shop_{key}
- Resolve lint warnings
2019-10-29 00:27:41 +03:00
Xaz16
60a12e8090 after merge 2019-10-28 23:15:45 +03:00
Matteo Pagliazzi
0bac3c0b5f misc, fix client tests 2019-10-15 15:32:53 +02:00
Matteo Pagliazzi
85fb5f33aa fix test lint 2019-10-08 20:45:38 +02:00
Matteo Pagliazzi
90c917f69e fix duplicates in code 2019-10-08 15:05:48 +02:00
Matteo Pagliazzi
90f732f545 Revert "Revert "Fix: Antidotes to Avatar Transformation Items should be added to Rewards by API (#11353)" (#11406)"
This reverts commit 50cae0165c.
2019-10-07 16:55:55 +02:00
Matteo Pagliazzi
50cae0165c
Revert "Fix: Antidotes to Avatar Transformation Items should be added to Rewards by API (#11353)" (#11406)
This reverts commit 5b57d91a9b.
2019-10-07 16:55:44 +02:00
Aleksey
5b57d91a9b Fix: Antidotes to Avatar Transformation Items should be added to Rewards by API (#11353)
* Fix: moved debuffPotions from vue component

- Move logic of choosing proper debuf potion from vue component to website commons
- introduce new function to get debuffSpellItems

* Fix: move debuffPotions to server

* Refactoring: move setting of debuff potion to func

* Fix: sanity

* Refactoring & Tests:

- Create test case for get and set DebuffPotionItems functions
- Fix setDebuffPotionItems function to not create duplicated debuff items
- Make debuff potion type of items unpinnable
- Move list of debuffs to constant to reuse it in tests and functions

* Fix: typo in test describe

* Fix: translation of unpin

* Fix: setDebuffPotionItems on cron buffs reset

* Fix: use full path for debuff potions
2019-10-06 18:41:39 +02:00
cheng-shiqi
ca7399f6c1 Repair negative quest scrolls on (gem)purchase (#11399)
* Fix: Reset negative quest scrolls number to zero on purchase(gem)

* Refactor: rename website/common/script/ops/buy/buyQuest.js to website/common/script/ops/buy/buyQuestGold.js and update related files

* Test: add two tests related to negative quest scrolls
2019-10-06 17:06:02 +02:00
Matteo Pagliazzi
17c7a2bad1 fix common tests 2019-10-03 16:27:44 +02:00
negue
3aa2e30815 Purchase API Refactoring: Mounts [Hourglass] (#10482)
* AbstractGemItemOperation - BuyQuestWithGemOperation

* fix purchase
2019-09-20 16:52:15 +02:00
Sabe Jones
56b4008835 Merge branch 'release' into develop 2019-09-17 16:11:30 -05:00
Sabe Jones
7d732b5612 feat(content): new pet color achievements 2019-09-17 16:10:32 -05:00
Gurkirpal
9bf380039e Add test for code preventing sale of saddles 2019-09-11 20:18:30 +05:30
Aleksey
65906f0b71 Fix: reset streak for habits after rebirth (#11345)
* Fix: reset streak for habits after rebirth

- Modify current test of reseting streaks
- Add new if branch for task with "habit" type

* Fix: reset habits by another keys (counterDown/counterUp):

- Fix test for correct way of reseting habits
- Use another keys for reseting habits
2019-09-09 15:46:49 +02:00
Phillip Thelen
6784d23a7c Add translated gear name to open-mystery-item call (#11306)
* Add translated gear name to open-mystery-item call

* Fix test

* fix mystery item text language
2019-08-16 19:40:49 +02:00
Sabe Jones
6de5fed47a fix(test): change expectation of empty streak achievement 2019-08-12 16:17:01 -05:00
Matteo Pagliazzi
ee867a9d30 add tests 2019-06-17 21:04:22 +02:00
Sabe Jones
7094e75dd8 feat(achievements): new pet-related cheevos 2019-06-04 10:31:25 -05:00
Sabe Jones
3a8312832c feat(content): new freebie glasses
Fixes #11171
2019-05-30 15:13:23 -05:00
Sabe Jones
e9163a1bb2 fix(test): Feathered Friends date range 2019-05-09 14:53:55 -05:00
Sabe Jones
6f7cd96e9f
Improved number validation (#11131)
* fix(purchasing): more number validation

* test(purchasing): add error cases
Also refactor NaN check and create client mixin

* fix(purchasing): cover "purchase" cases
2019-04-23 15:19:49 -05:00
Sabe Jones
6b933914ef fix(pets): disallow hatching quest pets with Wacky potions 2019-04-09 16:25:49 -05:00
Matteo Pagliazzi
0b8ce63c76
WIP: Improve User model performances (#10832)
* wip: define items as mixed objects

* add default owned gear

* mark modified

* more mark modified

* more mark modified

* more mark modified

* more mark modified

* fix common tests

* fix common tests

* update mongoose

* add itemsUtils

* use new util function in hall controller

* add tests for items utils

* update website/server to mark all items as modified

* start updating common code

* update login incentives

* update unlock

* remove changes to package-lock.json

* remove changes to package.json
2019-04-01 19:24:18 +02:00
negue
f35ef3a046 Multiple checks for pinnedItems (#11031)
* remove null/undefined entries from pinnedItems when an item is toggled - more inner checks + test

* drawer: fix when there isn't a page available

* rollback cleaning up pinnedEntries on item-toggle

* remove "re-setting" pinnedItems

* remove the filter
2019-03-31 20:41:37 +02:00
Sabe Jones
2a225c2376 chore(event): end Pi Day 2019-03-15 10:31:08 -05:00
Sabe Jones
9ad50be6ca fix(test): update food const 2019-03-14 07:32:32 -05:00
Sabe Jones
4d1b239231 Track specific items dropped by Armoire (#10977)
* feat(analytics): track specific items dropped by Armoire

* fix(lint): remove console log

* fix(analytics): address test failures

* fix(analytics): add missed if block

* fix(analytics): seriously tho actually fix
2019-02-10 19:30:49 +01:00
Sabe Jones
5b7c4bf03f fix(event): end Cake 2019-02-02 13:10:56 -06:00
Sabe Jones
b1f42dcac9 feat(content): Habitica Birthday 2019 2019-01-31 17:10:56 -06:00
negue
e2c5b9058b more checks on the item.klass, also added the specialClass checks (#10859) 2018-11-22 14:35:34 +01:00
Nathanael Farley
a48a6a292d If user's cron will happen later today, start the task yesterday. (#10783)
* If user's cron will happen later today, start the task yesterday.

* Added default dayStart to taskDefaults.

* Removed the need to call shouldDo twice to calculate nextDue.

* Revert "Removed the need to call shouldDo twice to calculate nextDue."

This reverts commit e1467f2fc33cfb11e6a4fc667460df6a48b69d45.

* Removed defaults from taskDefault arguments.

* Got user from $store in copyAsTodoModal.vue.

* Fixed tests for taskDefaults to include mock user.

* Fix shouldDo tests when run in GMT timezone.

* Added test to taskDefault; added utcOffset to taskDefault.

* Replaced utcOffset with zone.

* Removed erroneous import.
2018-11-02 16:58:01 +01:00
negue
074837b274 check every armoire gear 'canOwn' method (#10760) 2018-10-15 20:11:28 +02:00
Carl Vuorinen
71c0939a15 Fix API early Stat Point allocation (#10680)
* Refactor hasClass check to common so it can be used in shared & server-side code

* Check that user has selected class before allocating stat points
2018-09-21 16:55:55 +02:00
Matteo Pagliazzi
26c8323e70
Move inbox to its own model (#10428)
* shared model for chat and inbox

* disable inbox schema

* inbox: use separate model

* remove old code that used group.chat

* add back chat field (not used) and remove old tests

* remove inbox exclusions when loading user

* add GET /api/v3/inbox/messages

* add comment

* implement DELETE /inbox/messages/:messageid in v4

* implement GET /inbox/messages in v4 and update tests

* implement DELETE /api/v4/inbox/clear

* fix url

* fix doc

* update /export/inbox.html

* update other data exports

* add back messages in user schema

* add user.toJSONWithInbox

* add compativility until migration is done

* more compatibility

* fix tojson called twice

* add compatibility methods

* fix common tests

* fix v4 integration tests

* v3 get user -> with inbox

* start to fix tests

* fix v3 integration tests

* wip

* wip, client use new route

* update tests for members/send-private-message

* tests for get user in v4

* add tests for DELETE /inbox/messages/:messageId

* add tests for DELETE /inbox/clear in v4

* update docs

* fix tests

* initial migration

* fix migration

* fix migration

* migration fixes

* migrate api.enterCouponCode

* migrate api.castSpell

* migrate reset, reroll, rebirth

* add routes to v4 version

* fix tests

* fixes

* api.updateUser

* remove .only

* get user -> userLib

* refactor inbox.vue to work with new data model

* fix return message when messaging yourself

* wip fix bug with new conversation

* wip

* fix remaining ui issues

* move api.registerLocal, fixes

* keep only v3 version of GET /inbox/messages
2018-09-21 15:12:20 +02:00