Commit Graph

278 Commits

Author SHA1 Message Date
Blade Barringer
65556c0444 feat: Allow admins to flag messages in private groups 2016-08-24 21:32:32 -05:00
Husman
2308e14d3e fix: allows leader of challenge to create new challenge tasks even when not a participant of the challenge. fixes #7918
closes #7924
2016-08-24 12:07:54 -05:00
Phillip Thelen
7ef2c34177 add route for QR codes (#7902)
* add route for QR codes

* check that passed ID is a UUID

* add test for qr code redirect

* fix qr code test
2016-08-18 19:37:14 +02:00
Blade Barringer
fd70efcb60 Merge pull request #7900 from crookedneighbor/analytics_fix
Analytics fix
2016-08-15 22:39:03 -05:00
Jaka Kranjc
408d988341 api: expose user's inbox.optOut for api/v3/members/:memberId #7798 (#7893)
* api: expose user's inbox.optOut for `api/v3/members/:memberId` #7798

* test: fixed chai exist vs exists typos

* _getMembersForItem: fixed typo in api docs
2016-08-15 22:21:14 -05:00
Blade Barringer
bd8b1b0ece chore(tests): Rewrite analytics tests to remove dependency on nock 2016-08-15 22:20:39 -05:00
Travis
1a409848a8 allow flagging the post of a deleted user (#7897)
* 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
2016-08-15 22:14:52 -05:00
Blade Barringer
977bafd2d1 fix(api): Set platform and agent to Unknown if headers are not passed in 2016-08-15 08:07:59 -05:00
Camellia Peng
12f1aae2dd Update email check exist (#7899)
* 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.
2016-08-15 07:52:53 -05:00
Phillip Thelen
679378331d add client and OS info to amplitude events
closes #7865
2016-08-11 08:58:13 -05:00
Husman
725c3b36f3 feat: allowing modification of challenge tasks after challenge creation. fixes #7320
closes #7877
2016-08-11 08:48:39 -05:00
Blade Barringer
384783567b chore(tests): Add test to catch bugs when adding invalid types to market 2016-08-10 08:44:21 -05:00
Husman
bba56b8c29 fix: remove guild or party when user looks it up if it does not exist
closes #7878
fixes #7724
2016-08-07 10:41:07 -05:00
Blade Barringer
05eacc32ba Merge branch 'develop' into Hus274-7793 2016-08-05 12:55:00 -05:00
Blade Barringer
626b87eb79 Merge pull request #7849 from Hus274/7653-3
booting a member from party removes member from quest
2016-08-05 12:35:45 -05:00
Travis
d7c5d05f13 Clear invites from user when the request fails because the invite is invalid (#7852)
* 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
2016-08-05 12:34:06 -05:00
Matteo Pagliazzi
ae5b66e248 Merge branch 'develop' of github.com:HabitRPG/habitrpg into develop 2016-08-04 20:00:19 +02:00
Matteo Pagliazzi
d1bd63289b Merge branch 'facebook-login-add-newuser-flag' of https://github.com/TheHollidayInn/habitrpg into TheHollidayInn-facebook-login-add-newuser-flag 2016-08-04 19:58:09 +02:00
Matteo Pagliazzi
d7ccf2bbe1 API: return computed stats for members routes (#7870)
* 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
2016-08-04 19:56:00 +02:00
Sabe Jones
29498976ee feat(content): Armoire and BGs 201608 (#7868)
Plus: beta shops API fixes and front page user count update
2016-08-03 14:55:12 -05:00
Matteo Pagliazzi
fb939e0300 Migrate from GCM to FCM notifications (#7860)
* Fixed logging. Fixed lint issues. Temporarly removed GCM code

* Removed extra packages. Removed lingering gcm code

* Update message structure to send a data notification instead of a regular notification

* Removed excess code

* switch from fcm-push to node-gcm
2016-08-02 23:12:39 +02:00
Keith Holliday
2a76f0c8cf Added lint ignore comment 2016-08-02 14:29:15 -05:00
Matteo Pagliazzi
60f34dafb0 Deprecate API v2 (was Revert "Revert "Deprecate API v2"") (#7802)
* Revert "Revert "Deprecate API v2""

* fix path in shops controller
2016-08-01 22:36:10 +02:00
Oziris
d51bd68201 Enable guild challenge prize to use guild bank gems (#7840)
* add leader property to getGroups

* Add test coverage
2016-08-01 14:31:31 -05:00
Husman
6859cf1f73 booting a member from party removes member from quest whether the quest is started or not. part of #7653 2016-07-30 09:44:21 -07:00
Travis
6804125068 voluntarily leaving a party removes the user from the quest the party is involved in (#7845)
* 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
2016-07-30 06:53:29 -05:00
Keith Holliday
e6dd8cc03a Added tests for Facebook auth 2016-07-27 14:27:21 -05:00
Phillip Thelen
24d25026cf Add API calls for shop inventories (#7810)
* 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
2016-07-26 14:36:55 -05:00
Husman
a798c4ef08 fix: removing party invitations 2016-07-18 19:25:02 -07:00
Matteo Pagliazzi
590adb3438 Revert "Deprecate API v2" (#7801) 2016-07-17 18:15:25 +02:00
Matteo Pagliazzi
45c31a2bcf Deprecate API v2 (#7761)
* deprecate api-v2

* remove v2 test helpers

* remove unused string
2016-07-16 19:56:18 +02:00
Alys
ee01788647 "allCompletedTodos" option in API for returning all completed To-Dos for when 30 isn't enough (#7773)
* 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
2016-07-14 08:34:48 +10:00
Husman
6543ff89e1 refactor(api): Remove prod check in payments library. Fill out tests
Wasn't able to mock out pushNotifications correctly and left two tests unfinished.

closes #7728
closes #7770
2016-07-12 12:43:17 -05:00
Matteo Pagliazzi
0880850408 Real-time Chat (#7664)
* 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
2016-07-02 15:17:24 +02:00
Blade Barringer
9602a398b2 feat(api): Allow admins to revoke chat priveleges from website 2016-07-01 20:24:37 -05:00
Blade Barringer
c9f2389765 chore(test): Unpend cancel subscription test 2016-06-26 09:49:48 -05:00
Blade Barringer
37e638a64d fix(test): Pend send email test 2016-06-26 09:27:29 -05:00
Blade Barringer
81ac45f2a7 fix(api): Grant remaining perks when canceling an Amazon subscription
* Add tests for payments lib
* Add placeholder it blocks to be filled in

closes #7660
closes #4840
2016-06-26 08:08:49 -05:00
Blade Barringer
d5a354b499 fix(api): Only award participating members the quest rewards (#7706) 2016-06-23 07:10:56 -05:00
Matteo Pagliazzi
08d7727881 Push notifications (#7682)
* 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
2016-06-23 00:19:37 +02:00
Blade Barringer
94ddd82cae fix(lint): Correct group test file 2016-06-19 21:00:02 -05:00
Blade Barringer
e920734648 feat(api): Stop alerting about new messages for large groups
closes #6706
closes #6762
2016-06-19 20:54:30 -05:00
Blade Barringer
b7b61e6251 Shortname (#7655)
* feat: Add alias property to task model
2016-06-16 12:28:45 -05:00
Travis
1de2c839c8 Adding ticks back into gifted gems receive message #7540 (#7671)
* Adding ticks back into gifted gems receive message #7540

* Removing raw string concatenation and fixing tests
2016-06-15 22:29:04 -05:00
Alys
a03b1fc6cb prevents damage to quest participants with false or null values - partial fix for #7653 (#7665) 2016-06-16 09:36:58 +10:00
Shervin Sarain
8490b481f6 send email when admin unflags post (#7580)
* 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
2016-06-07 22:22:33 -05:00
Matteo Pagliazzi
f7be7205e7 Remove localstorage and add notifications (#7588)
* 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
2016-06-07 16:14:19 +02:00
Alys
0a10b2bd28 change user quest.progress.collect to quest.progress.collectedItems (#7612) 2016-06-05 20:47:45 -05:00
Blade Barringer
840a90bbdf refactor: Make quest methods private instance methods 2016-06-04 22:11:54 -05:00
Blade Barringer
25cc01e7cd fix: Supply random value as seed so quest collection is random 2016-06-04 22:11:52 -05:00