* initial refactor
* add scoredUp and scoredDown values for habits history entries, one entry per habit per day
* fix lint and add initial migration
* update old test
* remove scoreNotes
* dry run for migration
* migration fixes
* update migration and remove old test
* fix
* add challenges migration (read only)
* fix challenges migration
* handle custom day start
* update tasks in migration
* scoring: support cds
* add new test
* 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
* begin implementing global webhooks
* add checklist item scored webhook
* add pet hatched and mount raised webhooks (no tests)
* fix typo
* add lvl up webhooks, remove corrupt notifications and reorganize pre-save hook
* fix typo
* add some tests, globalActivity webhook
* fix bug in global activiy webhook and add more tests
* add tests and fix typo for petHatched and mountRaised webhooks
* fix errors and add tests for level up webhook
* wip: add default data to all webhooks, change signature for WebhookSender.send (missing tests)
* remove unused code
* fix unit tests
* fix chat webhooks
* remove console
* fix lint
* add and fix webhook tests
* add questStarted webhook and questActivity type
* add unit tests
* add finial tests and features
* Client POC
We need to wrap each draggable region it its own div or else the
"draggable" element will conflict with each other. This screws up the
styling but that is totally fixable
* Ah that ref was being used after all, changing back
* Scaffold out a new callback for when we drag these things
Next is going to be the hard part: I need to save the sort order for
these to the database. I don't even know if there is a schema but hey
this is the best place to start
* Firefox caching is the problem: don't actually need the wrapper div
So I guess I should try this in chrome and see how it works then come
back to firefox and figure out what the heck is going on
* Scaffolding out our API call to save the sort order
The endpoint doesn't exist yet so we will need to add that
* Ok we are now calling our API endpoint to reorder these things
Of course it doesn't exist yet so you get a 404 when you try, but that
is ok
* Defining api endpoint, a work in progress
In particular I really had ought to use _id for these too, it appears
that the primary way we detect order doesn't even use "key" at all.
* Switching to using the pinned item UUID
This has much better results, but of course the server and client logic
don't match now. Will have to keep working on my splice to make sure
that they are the same
* I thought this would fix our server/client mismatch but it is not it
Something is really wrong with my logic somewhere, maybe I need to
update the db step?
* Moving this logic to the "user" rather than "tasks" and key off path
Path is unique and is less finiky than dealing with string comparisons
with ids. Unfortunately everything is still not working... I suppose
user.update() doesn't care about the position?
* This client code caused quite a lot of problems if you dragged fast
We don't really need it it seems, so off it goes
* Updating markup and CSS so it actually looks good.
Everything is working horray!!
I did just notice the following bug: the popover text sometimes makes it
very annoying to drag because you can't drop over it@
* Cleaning up my comments in the API section user.js
I had a lot of TODOS that are mostly done now
* Fixing a spacing code standards thing
* Turns out we never use type, so we should remove this from the API call
* Adding pinnedItemsOrder into the user schema
And disabling my call in the frontend before I do any more damage
* Halfway to using pinnedItemsOrder
This isn't working yet but it is not going to break it horribly like it
was before.
* Hooking up inAppRewards to always produce sorted information
It is suspicially working right now even though I have not added the
seasonal stuff logic yet...
* Updating the comments in user.js in movedPinnedItem
It turns out that my bandaid fix to just get the ball rolling perfectly
does what I need it to do when we have a length discrepancy. So we are
getting much closer to the final product, just need lots of testing
* Cleaning up code standards kinds of things
* Yay, this fixes the popover issue
I hope this is the right "vue" way to do things, because I tried a bunch
of other things that definately were not the right way to do it. And
this appears to work too
* ** Partial Work ** Starting tests on api call for draggable items
Doesn't work, doesn't compile so don't include in PR!
* Test failing still...
This is worth a save. The api call grabs the seasonal items too, so we
can't get away from using the common functions and calls here to get the
actual list of items
* Okay have the first test passing
Need to clean up my linter problems though
* Planning out the next two tests and fixing my format problems
* 2nd Test case written, this time with the "more" odd case
* Making sure that we didn't mess with pinned items
* Huh... this test doesn't give me the expected result
Drat, I guess I found a bug
* Throw an error when we put garbage in our api call.
Well, before we got user.pinnedItemsOrder filled with a bunch of "null"
entries which is not ideal. it still worked, but isn't this confusing
enough already?
* Cleaning up the multitude of linting problems thanks gulp :)
* Writing tests for inAppRewards.js, but something is wrong
* Fixing my linting errors in inAppRewards tests
These tests still do not run though, so they may fail and I would not
know
* Applying Negue's fixes to inAppRewards.js test
It never occured to me that we shouldn't try to reach the database while
in the common tests. Well, we shouldn't do that, we should use the
common.helpers instead. Thanks!
* 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
* update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
* clean up / refactor
* prevent unpin of all items which don't have a pinType
* remove the double boolean casting / fix lint
* update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
* clean up / refactor
* prevent unpin of all items which don't have a pinType
* remove the double boolean casting / fix lint
* problem location identified (breaks code)
* problem identification notes
* Add class checking to ES (does not yet notify user)
* Add error message
* Add .gitattributes
Attempting to fix line ending disaster
* package stuff
so I can see what's broken
* add reminder and hopefully fix gitattributes
* Fix lint errors
* Redo surge fail notifs
* exterminate rogue comment, fix gitattributes
* Remove unused import
As per @paglias' request.
* fix(lint): remove extraneous expression
* Delete .gitattributes
* Fix skill key surge -> mpheal
* Show notification only when there are mages in party
* Fix notification being too big and appearing outside the notification div
* Remove unused code
* Only show the notification on parties with 2 or more mages
The caster is a mage, so certainly at least 1 mage will be counted.
* Automated test: mpheal does not heal other mages
* Fix lint error
* Fix typo in test description
* Increase performance of test
* Using target instead of requestion partyMembers again
* Rename variable 'party' to 'partyMembers'
* Update strings in English
* spell -> Skill
* 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.
* Show keys to pets immediately
* Ensured keys to pets dissapear after use
* Added resdirect to stable after purchase
* Added mount check and updated keys to mounts and to both
* Added api calls
* Added check for beastmaster progress
* Added mount check for release mounts. Added pets and mount check to release both
* Added actions
* Added catch to common tests
* Added beast count and reload
* Removed extra console log
* feat(world-boss): barebones API
* fix(world): use Express respond for better JSON
* fix(api): respond with code 200
* feat(content): canonical Dysheartener desc and Rage
* fix(world-boss): enable progress
* WIP(test): world state API
* WIP(test): refactor world boss setup
* WIP(test): better expectations
* fix(test): more expect polishing
* feat(event): server side World Boss
* fix(strings): accidental deletion
* fix(content): include encouragement after Rage
* refactor(world-boss): address comments
* refresh not working - show avatar transformation
* call store-action from mixin, use mixin from app.vue, add user-target in spells-mixin,
* fix avatar tranformation on user - clean up
* move default message
* fix purchase of cards
* fix casting
Adjusts column widths for 'drop' type notifications to prevent .text from overlapping .icon-item.
Adds new 'flavorMessage' property to Snackbar notifications, which overrides standard computed message.
Vertically center XP gain icon/amount.
Fixes unrelated typo in i18n key name.
* testing additional event trigger for sendMessage
* moved keyup event to newmessage
* added keyup event to tavern vue too
* all food items now have version with definite and indefinite article. foodText also adapted in messages json
* modified api.food, and feed, armoire and drop mechanism
* drops now ok, removed dropArticle, corrected feed test
* test correction
* api doc modification for task completion
* dailies history date added in scoreTask instead of cron
* fix lint issues
* changes based on feedback. Undo cron code deletion and deleted iteration on scoreTask
* fix lint issues
* add task history entry in cron for dailies that weren't completed
* add history entry after value is fully evaluated
* Added initial bailey api
* wip
* implement new panel header
* Fixed lint
* add ability to mark notification as seen
* add notification count, remove top badge from user and add ability to mark multiple notifications as seen
* add support dismissall and mark all as read
* do not dismiss actionable notif
* mark as seen when menu is opened instead of closed
* implement ordering, list of actionable notifications
* add groups messages and fix badges count
* add notifications for received cards
* send card received notification to target not sender
* rename notificaion field
* fix integration tests
* mark cards notifications as read and update tests
* add mystery items notifications
* add unallocated stats points notifications
* fix linting
* simplify code
* refactoring and fixes
* fix dropdown opening
* start splitting notifications into their own component
* add notifications for inbox messages
* fix unit tests
* fix default buttons styles
* add initial bailey support
* add title and tests to new stuff notification
* add notification if a group task needs more work
* add tests and fixes for marking a task as needing more work
* make sure user._v is updated
* remove console.log
* notification: hover status and margins
* start styling notifications, add separate files and basic functionalities
* fix tests
* start adding mystery items notification
* wip card notification
* fix cards text
* initial implementation inbox messages
* initial implementation group messages
* disable inbox notifications until mobile is ready
* wip group chat messages
* finish mystery and card notifications
* add bailey notification and fix a lot of stuff
* start adding guilds and parties invitations
* misc invitation fixes
* fix lint issues
* remove old code and add key to notifications
* fix tests
* remove unused code
* add link for public guilds invite
* starts to implement needs work notification design and feature
* fixes to needs work, add group task approved notification
* finish needs work feature
* lots of fixes
* implement quest notification
* bailey fixes and static page
* routing fixes
* fixes # this.$store.dispatch(guilds:join, {groupId: group.id, type: party});
* read notifications on click
* chat notifications
* fix tests for chat notifications
* fix chat notification test
* fix tests
* fix tests (again)
* try awaiting
* remove only
* more sleep
* add bailey tests
* fix icons alignment
* fix issue with multiple points notifications
* remove merge code
* fix rejecting guild invitation
* make remove area bigger
* fix error with notifications and add migration
* fix migration
* fix typos
* add cleanup migration too
* notifications empty state, new counter color, fix marking messages as seen in guilds
* fixes
* add image and install correct packages
* fix mongoose version
* update bailey
* typo
* make sure chat is marked as read after other requests
* Sleep status is tracked by analytics when toggled.
* Modify test: test that analytics is called with 'sleep' event and data passed includes the user's new sleep status
* Able to see all non class related items in market
* Fix lint errors
* Able to see all non class related items in market
* Fix lint errors
* add test for showing contributor gear
* Added previously owned items to test with eslint exception
* fix(shops): include seasonal gear in Market class lists
* fix(market): display non-seasonal broken special items
Also fixes a bug where if a current seasonal item was broken, it would show up twice.
* list special gear by the `specialClass` - fixes#9485
* only disable the currencly label + value not the amount input - fixes#9492
* disable transformations on equipment previews - fixes#9497
* show boss strength - fixes#9522
* pin time travelers animals - closes#9382
* clean up + package-lock ?
* fix quest info
* add another check if previous gear is owned
* respect gear purchase order
* catch error with miscalculation of equipment number floor
* add integration test for proper equipment purchasing order
* fix syntax
* add 'previousGearNotOwned' string
* rewrite logic for different starting levels for wep vs others
* separate and add tests for armor and weapon
* rename variable for clarification
* skip check if itemIndex is NaN
* change obscure NaN check for readability
* change conditional from checking NaN to Int
* fix(various): small issues
* Rename "Gold-Purchasable Quests" to "Masterclasser Quest Lines"
* Use "getting_organized" instead of "organization" as task category
* Use pixel gem instead of SVG gem for Market
* Recanvas shop sprites for Fall 2017 seasonal items
* chore(news): update Bailey
* fix(shops): event date range for mobile
* fix(profile): clean up equipment grids
* fix(strings): remove unused string
* fix(sprites): recanvas Lost Masterclasser scrolls
* fix(sprites): serve animated GIFs
Also add new GIF for upcoming quest line
* feat(content): Masterclasser capstone quest
Also fixes Quests page for clearer lock/unlock display
* chore(sprites): compile
* feat(achievements): award quest completionist cheevo
* feat(quests): Siphoning Void
fix Achievements page styling and text spacing
fix display of Rage bar on party page
* test(quests): Lost Masterclasser
* chore(news): Bailey
* fix(test): only use Masterclasser in relevant scenario
* client/tasks/user: (create dropdown) change icon color on menuitem hover
Previously the color was only changing when you hovered over the
text or icon.
This change changes the icon color when you hover anywhere over
the `menuitem`
* client/shops/market: fix search field in market
* Hide drawer sliders if number of items for type is empty
* Move drawer-help-text icon down to line up vertically with text
* Add TODO for error thrown when trying to sell special item types
* client/tasks/taskModal: display all selected tags for task
* i18n/groups: religous to religious
* client/shops/market: Add error message to empty drawer slider
* Create new locale file to hold inventory locales
* client/tasks/user: Revert change to create dropdown
* Revert tag changes
This will be picked up in a separate PR.
* Fix missing space before function paren
* Client: fix Apidoc and move email files (#9139)
* fix apidoc
* move emails files
* quest leader can start/end quest; admins can edit challenges/guilds; reverse chat works; remove static/videos link; etc (#9140)
* enable link to markdown info on group and challenge edit screen
* allow admin (moderators and staff) to edit challenges
* allow admin (moderators and staff) to edit guilds
Also add some unrelated TODO comments.
* allow any party member (not just leader) to start quest from party page
* allow quest owner to cancel, begin, abort quest
Previously only the party leader could see those buttons. The leader still can.
This also hides those buttons from all other party members.
* enable reverse chat in guilds and party
* remove outdated videos from press kit
* adjust various wordings
* Be consistent with capitalization of Check-In. (#9118)
* limit for inlined svg images and make home leaner by not bundling it with the rest of static pages
* sep 27 fixes (#9088)
* fix item paddings / drawer width
* expand the width of item-rows by the margin of an item
* fix hatchedPet-dialog
* fix hatching-modal
* remove min-height
* Oct 3 fixes (#9148)
* Only show level after yesterdailies modal
* Fixed zindex
* Added spcial spells to rewards column
* Added single click buy for health and armoire
* Prevented task scoring when casting a spell
* Renamed generic purchase method
* Updated nav for small screen
* Hide checklist while casting
* fix some text describing menu items (#9145)
* 4.1.3
* use `selectGearToPin` instead of updateStore in migration-script (#9102)
* Tags redesign in edit-task modal (#9122)
* Truncate tags list to maximum number of tasks
This commit truncates the list of tags in the edit task modal and
displays the remaining selected tasks as a number.
* Align tags-select dropdown with "Tags" label
* Add tags popup component
* Use solid purple for tags-select dropdown
* Remove shadow when tags-select is active
* Add border-radius to tags-select
* Re-add previously disabled transitions
* Remove unused template element
* Add Clear Tags button to footer of tags popup
* Decrease column size for tags to better match design
* Truncate tag name to avoid overflows
* Add tag name as title to show full name on hover
* Grow inline tags select from left to right
* Style none button
* Add spacing to streak reset button to line up with tags select
* Add top offset to tags dropdown toggle to line up with label
* Ability to collapse checklists (#9158)
* ability to collapse checklists
* typo
* show warning to use the mobile apps (#9152)
* Oct 4 fixes (#9159)
* Added gem purchase note
* Added notification count
* Added party reload
* Added description when user can no longer purchase gems this month
* Prevent modal from showing when pruchasing recently purchased items
* Added progress bar
* Prevented non leader from loading approvals
* Added group billing
* Release fix (#9161)
* Merge Develop onto Release (#9123)
* Some random quick (#9111)
* Switch group button directions
* Allowed admins to export challenges
* Added scoping to some stable styles
* Fixed challenge cloning
* Tasks tags (#9112)
* Added auto apply and exit
* Add challenge tag editing
* Fixed lint
* Skill fixes (#9113)
* Added local storage setting for spell drawer
* Added new spell styles
* Fixed typo
* Reset local creds if access is denied (#9114)
* various fixes: group leader's name at top of edit drop-down; Members List; etc (#9117)
* fix text describing location of subscription/gem gift box
* disable Copy As To-Do in Tavern, guilds, party because it's not working
* change members label on group pages to Member List
* remove outdated info about seeing number of Gems available to buy
* allow Danger Zone to be seen by players without local authentication
Also add an hr because the Danger Zone heading was crammed up against the button above it.
* put current group leader's name at top of Leader change drop-down
* Client Fixes (#9120)
* unduplicate logout code
* re-enable debug menu
* fix pets badge and equipping mounts
* close gift modal after sending gems
* armoire notifications
* Oct 1 fixes (#9121)
* Added default tags to task
* Added seasonal gear check and show spooky
* Disabled spooky sparkles
* Fixed challenge remove tasks modal
* Hid checklist
* Added group gems modal
* Purchase with amazon
* Added check for user health
* Added missing notification file
* 4.1.1
* 4.1.2
* Merge develop into release (#9154)
* Client: fix Apidoc and move email files (#9139)
* fix apidoc
* move emails files
* quest leader can start/end quest; admins can edit challenges/guilds; reverse chat works; remove static/videos link; etc (#9140)
* enable link to markdown info on group and challenge edit screen
* allow admin (moderators and staff) to edit challenges
* allow admin (moderators and staff) to edit guilds
Also add some unrelated TODO comments.
* allow any party member (not just leader) to start quest from party page
* allow quest owner to cancel, begin, abort quest
Previously only the party leader could see those buttons. The leader still can.
This also hides those buttons from all other party members.
* enable reverse chat in guilds and party
* remove outdated videos from press kit
* adjust various wordings
* Be consistent with capitalization of Check-In. (#9118)
* limit for inlined svg images and make home leaner by not bundling it with the rest of static pages
* sep 27 fixes (#9088)
* fix item paddings / drawer width
* expand the width of item-rows by the margin of an item
* fix hatchedPet-dialog
* fix hatching-modal
* remove min-height
* Oct 3 fixes (#9148)
* Only show level after yesterdailies modal
* Fixed zindex
* Added spcial spells to rewards column
* Added single click buy for health and armoire
* Prevented task scoring when casting a spell
* Renamed generic purchase method
* Updated nav for small screen
* Hide checklist while casting
* fix some text describing menu items (#9145)
* on class change: remove owned gear from pinned items
* move dragging item-info closer to the cursor (food / hatching potion)
* remove v-once at attributesPopover (if the parent component is recycled the old data stays active)
* prevent popover to show data of an item that was removed - but the popover stays opened
* remove `classSelected` on adding new pinned gear
* use show::modal on buyModal / selectMembersModal instead of v-if=item
* show::modal for buyQuestModal - fix bundles class
* fix buy potion
* fix open selectMembersModal (after changing to shop::modal)
* remove console.log calls used for debugging
* open member modal when clicking on user name or avatar in chat
* misc fixes to strings, payments, ...
* simplify code
* secure statsComputed
* extract seasonal-shop config - use summer season items (to work on)
* add suggested border to shopItems
* refactor getOfficialPinnedItems (now includes the seasonal gear)
* refactor shops.getSeasonalShop - add featured items to result - add the set to special equipment items
* feat(content): Fall 2017 seasonal gear
Also adds set keys for all prior seasonal gear.
* show item limited time (buyModal & shopItem)
* select seasonal fall sets
* WIP(seasonal-shop): placeholder Fall 2017 items
* fix lint
* sprites
* styling + fix purchase of seasonal spells
* compile sprites
* fixes: check isPinned with officialItems
* enable purchase of seasonal items for testing
* fix shop apis
* add featuredItems to market
* quest shop: add featuredItems to api
* tiem travelers shop: add featuredItems to api
* fix gear types filter
* feat(content): Fall 2017 compleat
* chore(sprites): compile
* show opened shop state (npc+background)
* add opened seasonal npc
* current seasonal users class set = purchase by gold - lock other sets of the current season
* hide event badge in seasonal shop - dot only for suggested items - cursor: pointer on shopItems
* refresh rewards column list (seasonal gear won't refresh it on purchase)
* fix duplicate seasonal gear -> remove special items from the old reward gear (which is used to reset the pinned gears)
* every current season gear is purchased by gold - prevent buyModal on locked items
* use the current event date range
* list seasonal sets by event date
* use custom method instead of updateStore to list the pinnable gear
* change daterange to 10-31
* fix start quest modal from items - disable invite quest button if a quest is already active
* toggle pin in buy-dialogs
* check if the item is not undefined/null - renamed the watch function
* not locking pre-owned gear - pin removed gear on revive
* fix createAnimal (check for function) - hide pet-popover while dragging food
* fix dragging popover text color
* fix drop toasts
* selectMembersModal: load members on item change
* show quests and open quest dialog on click
* extract questDialogContent/Drops to separate components & use those in startQuestModal & buyQuestModal
* fix market search
* remove & readd pinned gear on revive
* remove listener once destroyed
* Added new message count
* Added route change for group plan
* Added fix for quest value of 0
* Fixed guild summary limit, guild and challenge height
* Added task sorting
* Added api buy armoire
* Fixed linting
* Added task sync after joining challenge
* Added gem purchasing
* Updated member modal style
* Added community guidelines to all groups
* Added group plans redirect
* Began add new front page design
* Fixed challenge loading on mount
* Fixed upgrade
* Added default summary
* Fixed small nav bar styles
* Added more unlock options to avatar editor
* Added more home page finishes