Commit Graph

3776 Commits

Author SHA1 Message Date
dependabot[bot] 266ea01bc8 build(deps): bump @vue/cli-plugin-eslint in /website/client (#14000)
Bumps [@vue/cli-plugin-eslint](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-eslint) from 4.5.15 to 4.5.17.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v4.5.17/packages/@vue/cli-plugin-eslint)

---
updated-dependencies:
- dependency-name: "@vue/cli-plugin-eslint"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-03 14:23:35 -04:00
dependabot[bot] c170edae92 build(deps): bump bootstrap-vue from 2.21.2 to 2.22.0 in /website/client (#14002)
Bumps [bootstrap-vue](https://github.com/bootstrap-vue/bootstrap-vue) from 2.21.2 to 2.22.0.
- [Release notes](https://github.com/bootstrap-vue/bootstrap-vue/releases)
- [Changelog](https://github.com/bootstrap-vue/bootstrap-vue/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/bootstrap-vue/bootstrap-vue/compare/v2.21.2...v2.22.0)

---
updated-dependencies:
- dependency-name: bootstrap-vue
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-03 14:23:13 -04:00
dependabot[bot] 324076438c build(deps): bump core-js from 3.21.0 to 3.22.7 in /website/client (#14004)
Bumps [core-js](https://github.com/zloirock/core-js) from 3.21.0 to 3.22.7.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/compare/v3.21.0...v3.22.7)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-03 14:22:30 -04:00
dependabot[bot] 77791e186f build(deps-dev): bump @babel/plugin-proposal-optional-chaining (#14009)
Bumps [@babel/plugin-proposal-optional-chaining](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-optional-chaining) from 7.16.7 to 7.17.12.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.17.12/packages/babel-plugin-proposal-optional-chaining)

---
updated-dependencies:
- dependency-name: "@babel/plugin-proposal-optional-chaining"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-03 14:19:40 -04:00
dependabot[bot] b3a9e79f0d build(deps): bump smartbanner.js in /website/client (#14011)
Bumps [smartbanner.js](https://github.com/ain/smartbanner.js) from 1.17.0 to 1.19.0.
- [Release notes](https://github.com/ain/smartbanner.js/releases)
- [Commits](https://github.com/ain/smartbanner.js/compare/v1.17.0...v1.19.0)

---
updated-dependencies:
- dependency-name: smartbanner.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-03 14:18:56 -04:00
dependabot[bot] ac972fb481 build(deps): bump eventsource from 1.1.0 to 1.1.1 in /website/client (#14031)
Bumps [eventsource](https://github.com/EventSource/eventsource) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/EventSource/eventsource/releases)
- [Changelog](https://github.com/EventSource/eventsource/blob/master/HISTORY.md)
- [Commits](https://github.com/EventSource/eventsource/compare/v1.1.0...v1.1.1)

---
updated-dependencies:
- dependency-name: eventsource
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-01 15:41:31 -04:00
SabreCat c98c7ab26c Merge branch 'develop' into sabrecat/teams-rebase 2022-05-31 15:51:16 -05:00
SabreCat 5a0813fe7f fix(lint): line length 2022-05-31 15:34:44 -05:00
SabreCat d3673349a9 Merge branch 'release' into develop 2022-05-31 13:58:07 -05:00
SabreCat e16c12fc7f Revert "Gifting Modal Redesign (#13964)"
This reverts commit 761d70ec55.
2022-05-31 10:38:14 -05:00
Natalie L dd5066ab72 2022-06 Subscriber Items (#14016)
* 2022-06 Subscriber Items

* chore(mystery): compile sprites, tidy up whitespace

Co-authored-by: SabreCat <sabe@habitica.com>
2022-05-30 15:56:50 -05:00
Tressley Cahill ec0be8d91f Adjust z-index for notifications
Fixes #14015
2022-05-25 11:09:43 -04:00
SabreCat 1ef7924ba5 Merge branch 'develop' into sabrecat/teams-rebase 2022-05-24 09:39:01 -05:00
SabreCat 331c64a83a Merge branch 'release' into develop 2022-05-24 09:38:40 -05:00
Natalie L 8040d14c28 code for reptacular rumble achievement (#13981) 2022-05-23 15:39:51 -05:00
SabreCat 8358da227d fix(quests): hide offseason quests, again
Also tidy up some Reptacular Rumble issues
2022-05-23 15:38:16 -05:00
SabreCat 74b59d2324 chore(packages): lock cleanup 2022-05-23 14:59:15 -05:00
CuriousMagpie 5fa705c390 code for reptacular rumble achievement 2022-05-23 14:58:17 -05:00
SabreCat 5bcfdbe066 fix(login): catch double-slash exploit 2022-05-20 14:29:15 -05:00
Vanathi G 9ba0bd7c06 Keys to kennel issue (#13978)
* Fix selection highlight in avatar editor

* Fix error message on using Keys to the Kennel
2022-05-19 15:37:15 -05:00
SabreCat bb20c44fde fix(needs-work): don't show Gold/Experience depletion for manager 2022-05-19 14:28:35 -05:00
SabreCat 9c24d43a13 Merge branch 'develop' into sabrecat/teams-rebase 2022-05-17 09:34:51 -05:00
SabreCat 980e35880f fix(login): sanitize redirect 2022-05-16 15:36:09 -05:00
SabreCat bf9a7ea7d9 fix(teams): take user to relevant group from task assignment click 2022-05-13 14:26:14 -05:00
SabreCat 1a74d2b3b0 refactor(achievements): crush down to much fewer notification types
most work by @CuriousMagpie
2022-05-12 15:25:40 -05:00
Natalie L 761d70ec55 Gifting Modal Redesign (#13964)
* update selectUserModal.vue

* more updates to selectUserModal.vue, typo fix in subscriber.json

* remove exact sizing for selectUserModal.vue

* update to size for selectUserModal.vue

* added sendGiftModal.vue file

* updates to selectUser & sendGift modals

* making the modals go & position cursor

* working working working

* added a return to method

* avatar display & placeholder profile.name and username

* subscription-options added

* added menu row & started on gem options

* Added selectPage function, have not tested.

* updated habitica-images

* state changes

* bringing in gem counter

* arranging elements

* state changes, gem input boxes

* styling sendGiftModal.vue

* more sendGiftModal.vue styling and new close.svg icon

* more styling!

* and more styling of send own gems part of page

* images update

* more styling of own gems & some attempts to adjust :class on the menu

* styling styling styling

* replace +/- svg, styling

* styling, mostly

* new SVGs

* stylin'

* reverting svg changes

* no more stylin'

* finally got the +/- icons to show up...but they're the wrong color

* solved svg icon color problem! :)

* habitica-images

* working on sendGift part of button

* trying to make it do math, failing

* more attempts at math

* +/- buttons work on gem pages & cost calculation on buyGems

* trying to get hover colors working on +/- svgs

* formatted dollar amount as currency

* css/html for subscription-options & payments-buttons simplified

* swag at payments-buttons parameter (not tested)

* send gems from own balance works!

* working on starting page

* increment gem amount limited to maxGems and not < 0

* uncommented onHide()

* got bg color on sub options to work! yay!

* payment buttons!

* making g1g1 look good

* position modal on page properly & code clean-up

* Changes as requested!

* small color update

* fixed ternary function

* chore(html): indentation and comments

* fix(fn): correct catch for under-0

* chore(json): whitespace

Co-authored-by: SabreCat <sabe@habitica.com>
2022-05-12 15:14:56 -05:00
SabreCat 04107ed6d3 fix(tasks): 12px padding, not 16 2022-05-10 15:36:43 -05:00
SabreCat 209b7bd1aa Merge branch 'develop' into sabrecat/teams-rebase 2022-05-10 13:58:14 -05:00
Natalie L d317bd1c41 May 2022 Backgrounds and Enchanted Armoire (#13966)
* 2022-05 backgrounds and enchanted armoire images

* 2022-05 backgrounds and enchanted

* chore(sprites): compile
also fix a few string typos

Co-authored-by: SabreCat <sabe@habitica.com>
2022-05-09 14:21:25 -05:00
Alys 1a920d6e17 Hall of Heroes / Contributors: fix hasPermissions bug, merge Name and User ID columns (#13968)
* fix bug in hasPermissions call to stop normal users seeing UserID column

* merge User ID column into Name column in Hall of Heroes
2022-05-09 13:55:52 -05:00
SabreCat db354875ee fix(teams): adjust task title spacing, don't damage user for team Daily 2022-05-06 14:23:09 -05:00
Natalie L 5e12b7b042 Fix: Inconsistent Quest Unlock Behavior (#13734)
* remove quest refactoring, created new branch for that task

* remove quest refactoring, created new branch for that task

* More trying to figure out how buying a quest actually works

* rolling back changes

* updated shops/quests/index.vue to disable clicking on locked quests

* removed console.log(item)

* misc fixes per review comments

* changes as requested

* incorporated quest refactors updates

* removing a couple lines of code
2022-05-05 16:51:47 -05:00
Skander KRATOU de4ebbac7b Habit streak Fix (#13947)
* Fixes Issue13749

* If a value is at 0 the other value won't show a +/-

* Fix for the negative habits

* Fix : Habits values will always have signs except if the habit is one sided or the values are null

* fix(tasks): tighten margen when 0 as well

Co-authored-by: SabreCat <sabe@habitica.com>
2022-05-05 16:50:50 -05:00
SabreCat 40af14b061 fix(multiassign): don't allow nonmanagers to uncheck from footer 2022-05-05 15:16:30 -05:00
SabreCat 1d048e0c35 Merge branch 'develop' into sabrecat/teams-rebase 2022-05-05 13:56:36 -05:00
SabreCat 55f3792c96 Merge branch 'develop' into release 2022-05-05 13:56:02 -05:00
SabreCat 6a5f467a35 fix(teams): hover states, missing snackbars 2022-05-04 17:02:09 -05:00
SabreCat 565d33f6a7 Merge branch 'develop' into sabrecat/teams-rebase 2022-05-03 15:53:11 -05:00
Sabe Jones 1477326351 Log analytics event when cron fails (#13945)
* feat(debug): log analytics event when cron fails

* feat(debug): include status code

Co-authored-by: SabreCat <sabe@habitica.com>
2022-05-03 14:42:45 -05:00
Phillip Thelen 38b39b600c Adminpanel and revamped permissions (#13843)
* create Admin Panel page with initial content from Hall's admin section

* reorganise Admin Panel form and add more accordians

* add lastCron to fields returned by api.getHeroes

* improve timestamps and authentication section

* add party and quest info to Admin Panel, add party to heroAdminFields

* move Admin Panel menu item to top of menu, make invisible to non-admins

* remove code used for displaying all Heroes

* add avatar appearance and drops section in Admin Panel

* allow logged-in user to be the default hero loaded

* add time zones to timestamp/authentication section

* rename Items to Update Items

This will allow a new Items section to be added.

* add read-only Items display with button to copy data to Update Items section

* remove never-used allItemsPaths code that had been copied from Hall

* update tests for the attributes added to heroAdminFields

* supply names for items and also set information for gear/equipment

* remove code that loads subsections of content

We use enough of the content that it's easier to load it all and
access it through the content object, especially when we're looping
through different item types.

* add gear names and set details to Avatar Costume/Battle Gear section

* make the wiki URLs clickable and make minor item format improvements

* add gear sets for Check-In Incentives and animal ears and tails

* add gear set for Gold-Purchasable Quest Lines

Also merges the existing Mystery of the Masterclassers quest set into it.

* fix error with Kickstarter gear set and include wiki link

* improve description of check-in incentive gear set

* fix description of Items section

* fix lint warnings

* update another test for the attributes added to heroAdminFields

* allow "@" to be included when specifying Username to load

* create GetHeroParty API v3 route to fetch a given user's party data

Only some data from the party will be loaded (e.g., not private
data such as name, description).

Includes tests for the route.

See the next commit for front-end changes that use this.

* display data from a given user's party in admin panel

Only some data from the party will be loaded (e.g., not private
data such as name, description).

Also adds support for finding and displaying errors from the
user's data.

* use new error handling method for other sections

- Time zone differences
- Cron bugs
- Privilege removal (mute/block) - not a bug but needs to be highlighted

* redirect non-admin users away from admin-only page (WIP)

This needs more work. Currently, admin users are also redirected
if they access the page by direct URL or after reload.

* clarify source of items from Check-In Incentives and Lunar Battle quests

* replace non-standard form fields with HTML forms

* add user's language, remove unused export blocks

* convert functions to filters: formatDate, formatTimeZone

* improve display of minutes portion of time zone in Admin Panel

* move basic details about user to a new component

* move Timestamp/Cron/Auth/etc details to a new component - WIP, has errors

The automatic expand and error warnings don't reset themselves when
you fetch data for a new user.

* replace non-standard form fields with HTML forms

Most of this was done in 26fdcbbee5

* move Timestamp/Cron/Auth/etc details to a new component (fixed)

* move Avatar and Drops section to a new component

* move Party and Quest section to a new component

* move Contributor Details to new component, add checkbox for admin, add preview

This adds a markdown-enabled preview of the Contributions textarea.

It also removes the code that automatically set contributor.admin
to true when the Tier was above 7.
That feature wasn't secure because the Tier can be accidentally
changed if you scroll while the cursor is over the Tier form field
(we accidentally demoted a Socialite once by doing that and if
we'd scrolled in the other direction we would have given her
admin privileges).

Instead there's now a checkbox for giving moderator-level privileges.
We'll want that anyway when we move to a system of selected
privileges for each admin instead of all admin privileges being
given to all mods/staff.

There's also a commented-out checkbox for giving Bailey CMS
privileges, for when we're ready to use that. The User model doesn't
yet have support for it.

* move Privileges and Gems section to a new component

* rename formatItems to getItemDescription; make other minor fixes

* remove an outdated test description

This "pended" explanation probably wasn't needed after "x" was
removed from "describe" in 2ab76db27c

* add newsPoster Bailey CMS permission to User model and Admin Panel

* move formatDate from mixins to filters

* make lint fixes

* remove development comments from hall.js

I'll be handling the TODO comment and I've left in my "XXX" marker
to remind me

* fix bug in Hall's castItemVal: mounts are null not false

* move Items section to a new component and delete Update Items section

The Update Items section is no longer needed because the new Items
component has in-place editing.

* remove unused imports

* add "secret" field to "Privileges, Gem Balance" section.

Also move the markdownPreview style from contributorDetails.vue to
index.vue since it's used in two components now.

* show non-Standard never-owned Pets and Mounts in Items section

* redirect non-admin users away from admin-only page

This completes the work started in commit a4f9c754ad

It now allows admins to access the page when coming from another
page on the site or from a direct link, including if the admin user
isn't logged in yet.

* display memberCount for party

* add secret.text field to Contributor Details

This is in addition to showing it in the Privileges section because
the secret text could be about either troublesome behaviour or
contributions.

* allow user to be loaded into Admin Panel via a URL

This includes:

- router config has a child route for the admin panel with a
Username/ID as a parameter
- loadHero code moved from top-level index page into a new
"user support" index page
- links in the Hall changed to point to admin panel route
- admin panel link added to admin section of user profile modal

* keep list of known titles on their own lines

* sort heroFields alphabetically

No actual changes.

* return all flags for use in Admin Panel and fix Hall tests for flags

Future Admin Panel changes will display more flags.

NB 'flags' wasn't in the tests before, even though two optional
flags were being fetched.
The tests weren't failing because the test users hadn't been given
data for those optional flags.

The primary reason for this change now is to fix the tests.

* show part of the API Token in the Admin Panel

* send full hero object into cronAndAuth.vue

This is a prelude to allowing this component to change the hero.

* split heroAdminFields string into two: one for fetching data and one for showing it

This is because apiToken must be fetched but not shown,
while apiTokenObscured is calculated (not fetched) and shown.

* let admin change a user's API Token

* restore sanity

* remove code to show obscured version of API Token

It will return with tighter permissions for viewing it.

* add Custom Day Start time (CDS) to Timestamps, Time Zone... section

* commit lint's automatic fixes - one for admin-panel changes in hall.js

The other fixes aren't related to this PR but I figured they may
as well go live.

* apply fixes from paglias's comments, excluding style/CSS changesd

The comments that this PR fixes start at
https://github.com/HabitRPG/habitica/pull/12035#pullrequestreview-500422316

Style fixes will be in a future commit.

* fix styles/CSS

* allow profile modal to close when using admin panel link

Also removes an empty components block.

* prevent Admin Panel being used without new userSupport privilege

Also adds initial support for other contributor.priv privileges
and changes Debug Menu to add userSupport privilege

* don't do this: this.hero = { ...hero };

* enhance quest error messages

* redirect to admin-panel home page when using "Save and Clear Data"

The user's ID / name is still in the form for easy refetching.

* create ensurePriv function, use in api.getHeroParty

* fix lint problems and integration tests

* add page title to top-level Admin Panel

Also add more details to a router comment (consistent with a similar
comment) in case it helps anyone.

* fix tests

* display Moderation Notes above Contributions

* lint fix

* remove placeholder code for new privileges

I had planned to have each of these implemented in stages, but
paglias wanted it all done at once. I'm afraid that's too big a
project for me to take on in a single PR so I'm cancelling
the plans for adjusting the privileges.

* Improve permission handling

* Don't report timezone error on first day

* fix lint error

* .

* Fix lint error

* fix failing tests

* Fix more tests

* .

* ..

* ...

* fix(admin): always include permissions when querying user
also remove unnecessary failing test case

* permission improvements

* show transactions in admin panel

* fix lint errors

* fix permission check

* fix(panel): missing mixin, handle empty perms object

Co-authored-by: Alys <alice.harris@oldgods.net>
Co-authored-by: SabreCat <sabe@habitica.com>
2022-05-03 14:40:56 -05:00
SabreCat bada094139 chore(login): remove FB login option on web client 2022-05-02 14:26:42 -05:00
Vanathi G 7a94b031e0 Fix char values issue (#13946)
* Fix selection highlight in avatar editor

* Add validation for Fix Character Values fields
2022-04-29 15:57:32 -05:00
SabreCat 588e5dd487 Merge branch 'develop' into sabrecat/teams-rebase 2022-04-29 14:42:08 -05:00
SabreCat 88999a0751 Merge branch 'develop' into release 2022-04-29 14:22:07 -05:00
SabreCat 2666c93e5f chore(css): compile images 2022-04-29 14:21:53 -05:00
SabreCat edb606814c feat(teams): beta testing banner 2022-04-22 15:47:55 -05:00
SabreCat a9cd36c109 Merge branch 'background-toggle' into develop 2022-04-21 16:24:04 -05:00
SabreCat 4c1c00b0a3 fix(bgs): revert wording change and tokenize 2022-04-21 16:22:36 -05:00
SabreCat 623d38f281 feat(nav): clicking "Group" goes to first group 2022-04-19 15:38:15 -05:00
SabreCat 48f5ffc997 Merge branch 'develop' into sabrecat/teams-rebase 2022-04-15 14:26:19 -05:00