Sabe Jones
40bf664f20
chore(analytics): various updates to analytics tracking
2021-08-30 16:21:05 -05:00
Matteo Pagliazzi
3d5630d5a2
chore: update sub-deps and fix lint
2020-07-01 18:20:18 +02:00
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
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
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
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
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
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
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
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
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
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
negue
d9b573b430
AbstractGemItemOperation - BuyQuestWithGemOperation ( #10476 )
2018-06-28 12:37:21 +02:00
Sabe Jones
3aca0343e8
Merge branch 'release' into develop
2018-05-29 22:54:31 +00:00
Sabe Jones
97b99c0550
fix(tests): correct for new content, fix lint
2018-05-29 22:54:00 +00:00
Brian Fenton
ac90a40be5
Api quest restrictions - no purchase/start without fulfilling eligibility requirements ( #10387 )
...
* removing duplicate translation key
* fixing typos
* extracting quest prerequisite check. adding check for previous quest completion, if required
* fixing (undoing) static change, adding tests
* more typos
* correcting test failures
* honoring quest prerequisites in quest invite API call. updating format of il8n string replacement arg
* no longer using apiError, use translate method instead (msg key was not defined)
* adding @apiError to docblock as requested in issue
* removing checks on quest invite method. small window of opportunity/low risk
2018-05-27 16:41:56 +02:00
negue
3d39718048
Purchase API Refactoring: Spells [Gold] ( #10305 )
...
* convert buySpell operation
* remove purchaseWithSpell - change purchaseType 'special' to 'spells' - fix lint
* fix tests
* rollback 'spells' to 'special'
2018-05-18 17:00:39 +02:00
negue
c26696a9eb
moving developer-only strings to api/common messages ( #10258 )
...
* move translatable string to apiMessages
* use apiMessages instead of res.t for groupIdRequired / keepOrRemove
* move pageMustBeNumber to apiMessages
* change apimessages
* move missingKeyParam to apiMessages
* move more strings to apiMessages
* fix lint
* revert lodash imports to fix tests
* fix webhook test
* fix test
* rollback key change of `keepOrRemove`
* remove unneeded `req.language` param
* extract more messages from i18n
* add missing `missingTypeParam` message
* Split api- and commonMessages
* fix test
* fix sanity
* merge messages to an object, rename commonMessage to errorMessage
* apiMessages -> apiError, commonMessages -> errorMessage, extract messages to separate objects
* fix test
* module.exports
2018-05-04 16:00:19 -05:00
negue
4f963e99dc
Purchase API Refactoring: Gems [Gold] ( #10271 )
...
* remove `keyRequired` - change to `missingKeyParam` - i18n-string
* extract & convert buyGemsOperation
* fix lint
2018-04-27 19:29:26 +02:00
SabreCat
9f06d78db6
Revert "moving developer-only strings to api messages ( #10188 )"
...
This reverts commit a42cb0e3ab . Testing hypothesis that this was causing Staging to break.
2018-04-15 17:09:15 +00:00
negue
a42cb0e3ab
moving developer-only strings to api messages ( #10188 )
...
* move translatable string to apiMessages
* use apiMessages instead of res.t for groupIdRequired / keepOrRemove
* move pageMustBeNumber to apiMessages
* change apimessages
* move missingKeyParam to apiMessages
* move more strings to apiMessages
* fix lint
* revert lodash imports to fix tests
* fix webhook test
* fix test
* rollback key change of `keepOrRemove`
* remove unneeded `req.language` param
* extract more messages from i18n
* add missing `missingTypeParam` message
2018-04-14 16:13:13 +02:00
Tyler Nychka
5449652bd2
pinned items fixes #10012 ( #10216 )
...
* Don't unpin non-gear items
Assumes that multiple of bundles, quests, eggs, potions can be bought
* Added tests
* Changed type checking and made variables global
* Lint fix
2018-04-13 15:19:44 +02:00
negue
1109ae308d
convert buyQuest (gold) to the purchase refactoring / check quantity to be a number ( #10244 )
2018-04-13 15:14:51 +02:00
negue
11f136ac89
Purchase API Refactoring: Armoire ( #10153 )
...
* convert armoire
* fix armoire tests
* fix lint
2018-03-31 13:10:37 +02:00
negue
567d5f74ba
Purchase API Refactoring: Health Potion ( #10152 )
...
* convert buyHealthPotion
* fix health potion tests
* fix lint
2018-03-31 13:09:16 +02:00
Travis
781256c917
fix: fix quest shop to not use string addition when buying quests ( #10120 )
...
* fix: fix quest shop to not use string addition when buying quests
fixes #10115
* Fixing quest purchase quantity interpretted as a string on the server side.
* Adjusting pull-request according to comments.
* Updating according to PR comments.
2018-03-24 11:17:23 -05:00
negue
2a97915477
Purchase API Refactoring: Market Gear ( #10010 )
...
* convert buyGear to buyMarketGearOperation + tests
* move NotImplementedError
2018-03-17 21:56:19 +01:00
Travis
f9a47b1420
Update user pinned items on purchases. ( #10085 )
...
fixes #10049
2018-03-09 15:11:42 -06:00
negue
54153ec299
Refactor Purchase API - Part 1 ( #9714 )
...
* move to shops/purchase
* move files to /buy/ instead of /purchase/
* refactor buy.js - add more itemtypes
* revert moving special purchases to buy
* only use buyOp from api-routes
* fix buying potion client-side
* undo import buy instead of purchase
* enable potion bulk purchase - use buyGear as fallback (as before)
* move quantity purchase inside buyHealthPotion
* move quantity purchase inside buyQuest
* move quantity purchase inside buySpecialSpell + add analytics
* remove unused quantity variable - set req.type on specialKeys
* fix `buyKnownKeys` on buy api
* test buy-special-spell if not enough gold
* more buy ops coverage
* fix lint
* buyMysterySet: test for window.confirm, buyQuest: check for Masterclassers unlock
* fix test & lint
* re-create package-lock.json to travis build ?
* use global.window instead of method argument
* add back canOwn checks
* remove buyMysterySet confirm request
2018-02-10 11:14:40 +01:00
Sabe Jones
99ab9726b4
Allow user to buy numbered special gear ( #9823 )
...
* fix(buy): allow user to buy numbered special gear
* fix(buy): correct content constant
2018-01-29 15:02:55 -06:00
Keith Holliday
7fe2504906
Bulk purchasing ( #9196 )
...
* Moved buy tests
* Added mystery buy to buy.js
* Added quest purchasing to buy
* Added buy special
* Moved integration tests to buy folder
* Removed buyGear dependency
* Removed buyArmoire dependency
* Removed buyHealthPotion dependency
* Removed myster, quest and special dependency
* Replaced functions with factory
* Added bulk purchasing to common
* Added bulk purchasing to the api
* Added bulk purchasing to client
* Refactored purchasing function to reduce long method
* Added bulk purchase to gem purchases
* Added bulk purchasing to api
* Added bulk purchasing to gem items on client
* Removed bulk from equipment
* Removed recentlyPurchased
* Fixed style issues and prevented puchasing more gems than are left
* Fixed lint
* Fixed missing keys
* Fixed gem amount notice
* Added quest modal to pinned item
* Added bulk purchase to gem modal
* Fixed styles
* Fixed bulk purchase for spells
* Fixed modal size
* Hid autofill
2017-10-23 16:05:35 -05:00