* Allowing the flagging of messages that were written by user accounts that have since been deleted
* replacing ternary operator with else if, else paradigm
* formatting fixes
* fixing message in tests
* throw a 401 error if user tries to update his/her email to an email that exists already
* Make error message generic so we don't violate users' privacy. Added test case.
* Syntax fixes
* select only the _id field when searching for users with the same email. Return found document as javascript object.
* making requests to accept or reject a request fail because the invite is invalid clear the invite from the user so it doesn't require admin intervention. part of #7653
* Adding await
* api: return computed stats for members responses
* add integration tests for computed stats
* add unit tests for computed stats
* clarify test name
* add missing query parameter to test case
* reset test database before running API tests for the Hall
* voluntarily leaving a party removes the user from the quest the party is involved in. part of #7653
* addressing pr comments, removing lodash dependency and unecessary comment
* using the existing update object instead of group.save to avoid duplicate behavior
* finalizing tests
* Add API call for market inventory
* changes to shop api calls
* optimize shop categories
* add API call for quests
* add api call for time travelers shop
* fic buying items in shops
* fix linting errors
* shop adjustments for iOS app
* add tests to shops
* fix syntax issues
* Code formatting
* correct indentation
* add tests for api routes
* fix time travelers and seasonal
* Increase test coverage for shop routes
* refactor: Pull out trinket count in time traveler route
* refactor: Clarify instructions for seasonal shop script
* lint: Remove extra new line
* Adjust shops common test
* add new "allCompletedTodos" option to API for returning all completed To-Dos at once - fixes#7301
* make minor fixes to allCompletedTodos option
* change allCompletedTodos option to _allCompletedTodos and add a BETA comment
* feat(realtime-chat): add Pusher library to the server
* feat(realtime-chat): only for private groups
* feat(realtime-chat): add authentication endpoint for Pusher
* feat(realtime-chat): client proof of concept
* fix typo in apidoc
* feat(realtime-chat): redo authentication and write integration tests
* remove firebase code
* fix client side tests
* fix line ending in bower.json
* feat(realtime chat): use presence channels for parties, send events & disconnect clients if user leaves or is removed from party, automatically update UI
* pusher: enable all events in the background
* fix pusher integration tests
* Fix Social Push notifications
* Fix code formatting issues
* Fix commented issues
* Fix Syntax errors
* update push notify dependency
* specify push-notify version
* change how apn key is loaded
* feat(push-notifications): improve logging
* feat(push-notifications): disable v2 push notifications
* test(push-notifications): add unit tests and improve integration ones
* fix(push-notifications): throw when required params are missing
* fix(tests): correct descriptions and remove wrong comment
* fix(push-notifications): trim APN key
* fix(apn): log feedback only if it has data
* fix(apn): load cert and key differently
* fix(tests): correctly load apn during tests
* download creds from S3 and create AWS lib
* convert s3 buffer to a string
* fix(apn): remove console.log and do not use cert twice
* invert key and cert, disable failing test
* invert key and cert
* send email when admin unflags post
* Improved email acquisition code, minor changes to sent email
* Refactor getGoupUrl into its own method
* added unit test for getGroupUrl
* improved test and getGroupUrl
* move remaining files frm /common/script/public to website/public
* remove localstorage
* add back noscript template and put all javascript in the footer
* fixes client side tests
* remove double quotes where possible
* simplify jade code and add tests for buildManifest
* loading page with logo and spinner
* better loading screen in landscape mode
* icon on top of text logo
* wip: user.notifications
* notifications: simpler and working code
* finish implementing notifications
* correct loading screen css and re-inline images
* add tests for user notifications
* split User model in multiple files
* remove old comment about missing .catch()
* correctly setup hooks and methods for User model. Cleanup localstorage
* include UserNotificationsService in static page js and split loading-screen css in its own file
* add cron notification and misc fixes
* remove console.log
* fix tests
* fix multiple notifications