* update packages on local/origin repo
* feat(challenges): add banned words & slur blocker to challenges
* feat(challenges): slur blocker work
* feat(challenges): slur blocker
* feat(challenges): more slur blocker
* feat(challenges): even more slur blocker
* feat(challenges): swear and slur blocker
* feat(challenges): update behavior based on public/private groups
* feat(profiles): slur/swear blocker
* feat(profiles): slur/swear blocker
* feat(profiles/PMs): slur/swear blocker upgrade
* feat(slur/swear): working on it
* feat(profiles/challenges): work on profile block & slack report
* feat(slur/swear blocker): work on Profiles
* feat(slur blocker): refactoring code
* feat(slur blocker): more refactoring
* feat(slur blocker): arghhhhhh
* fix(profiles): improve profanity check logic
* fix(slack): update Slack notification to include authorEmail and remove undefined
* feat(s/s blocker): work on challenges
* feat(s/s blocker): challenge update
* feat(s/s blocker): slack notifs refinements
* feat(s/s blocker): refine slack notifs & disallow use of challenges POST API route if user is chatRevoked:true in db
* update package.json and package-lock.json
* attempt to disable create challenge button for muted users
* another attempt to disable create challenge
* block muted users from creating challenges
* CSS button fun
* fix CSS button
* refactor(css): move button style to global
Also, disable Clone button if user is chat revoked
* fix(lint): remove unused fn
* fix(challenges): handle null slur check
* fix(groups): throw notFound earlier
* fix(challenges): CSS and logic updates
* fix(lint): remove whitespace
* fix(challenges): don't disable create buttons
* fix(slack): restore broken profile flag fields
* chore(cleanup): remove comments and whitespace
* chore(cleanup): one more white space
---------
Co-authored-by: SabreCat <sabe@habitica.com>
* initial commit
* update logic to display flagged challenges properly to users and admins
* add report button to pages 'My Challenges' and 'Discover Challenges'
* allow mods to view flagged messages on challengeDetail view
* update showing flagged challenges for group challenges
* update showing flagged challenges for a specific challenge
* disallow closing a flagged challenge
* update notes to reflect apiParams properly
* fix css spacing
* update challenge en locales
* fix spacing
* update title of closeChallengeModal
* let user know flagged challenges cannot be cloned
* fix linting errors
* ensure flagged challenges cannot be declared with a winner and cloned via API
* define a non user challenge properly
* fix logic to check for a nonParticipant and nonLeader user when grabbing flagged challenges
* fix linting of max character of 100 / line
* remove reporting on 'my challenges' and 'discover challenges'
* WIP(challenges): disable clone button and add notes to new functions
* WIP(challenges): smol changes
* WIP(challenges): clone button only disabled for admin and flagged user; other users can still clone but the flag goes along with the clone
* WIP(challenges): stop flags carrying over on cloned challenges
* WIP(challenges): typo fixing, undoing a smol change
* fix(challenges): improved query logic for flags
* WIP(challenges): more smol changes
* fix(challenges): refactor queries
* fix(challenges): correct My Challenges tab logic
* WIP(challenges): fix clone button state
* WIP(challenges): really fixed clone button & clear flags from clones
* WIP(challenge): implement new design for reporting modal
* WIP(challenge): making things pretty
* WIP(challenge): conquering the close button
* WIP(challenge): fixin some spacing
* WIP(challenge): smol fix
* WIP(challenge): making sure the button is actually disabled
* WIP(challenge): fix blockquote css
* fix(tests): no private guilds
* fix(lint): curlies etc
* fix(test): moderator permission
* fix(lint): sure man whatever
* fix(lint): bad vim no tabby
* fix(test): permissions not contrib lol
* fix(challenges): add icon and fix leaky CSS
* fix(challenge): correct clone button behavior
---------
Co-authored-by: Julius Jung <me@matchajune.io>
Co-authored-by: SabreCat <sabe@habitica.com>
Co-authored-by: Sabe Jones <sabrecat@gmail.com>
* i18n string updates (issue #9210)
* change offHand to offHandCapitalized
* added removeTasks to challenge.json
* added hairBangs back to character.json
* added hairBangs back to character.json
* more hairBangs nonsense
* added hairBangs to hair-settings.vue, removed same from character.json
* changed levelUp to levelup in levelUp.vue and achievements.json
* fix duplicate string values
* fixed different strings with same content in different files
* updated test/api/v3 and test/api/v4 with messageTaskNotFound
* Delete POST-tasks_taskId_checklist_itemId_score.test.js
File got copied to a new directory, doesn't need to be here.
* fix: userID token in patrons.vue and heroes.vue
* removed: unused clock of code
* Restored eggsItemType to inventory.json
Co-authored-by: Sabe Jones <sabrecat@gmail.com>
* challenge won notification: add more info
* update tests
* use new notification on web, fixes#7716
* wip design
* finalize design
* fix markdown rendering
* Removed unused I18N strings from the `challenges.json` file (locales\en)
* Removed unused I18N `challenge.json` strings from all other languages
Co-authored-by: Matteo Pagliazzi <matteopagliazzi@gmail.com>
* Display message on My Guilds page when filters dont' match anything
* Display message on Discover Guilds page when filters dont' match anything
* Display message on My Challenges page when filters dont' match anything
* Display message on Discover Challenges page when filters dont' match anything
* Don't show Load More button when there is nothing to load
* Fix Guild search
Previously was not possible to clear after searching
* change "Keep/Remove It" to "Keep/Remove Them" when asking about all challenge tasks while leaving a challenge
* change "Leave" button on groups to "Leave Guild" or "Leave Party"
This is because the button is underneath the challenges so this
clarifies that it is referring to the group, not a challenge.
* change "Keep/Remove Them" to "Keep/Remove Tasks"
* Added notification for when leader is updated
* Abstracted challenge member search component
* Added challenge member search modal to challenge detail
* Added group search
* Added challenge member search to progress dropdown
* Added leave challenge modal
* Allowed editing for challenge leader only
* Pevented users from editing challenge task info
* Set default progress default to daily
* Removed reward filters from user challenge progress
* 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)
* adjust how User > Profile is referred to
* change "Create" to "Add Task" in a Challenge's page
* remove commented-out code for making a Group Plan cost Gems (there should be no Gem cost)
* split 'create' locales string into multiple strings for different purposes
- Allows text to be changed individually for each purpose.
- Assists translators in determining the best translation.
- Makes it easier to find locations in code for each string.
* remove "public" option for Group Plan creation modal
* allow all users to see challenge participant progress
* allow a user (admin or non-admin) to flag their own message
Initially implemented in https://github.com/HabitRPG/habitica/issues/8005
Use case for a non-admin needing to flag their own message:
- a new user posts a question
- a socialite answers
- the user posts again and reveals that they're under 13
- the socialite flags all of the user's messages and all replies to the user including the socialite's own reply (it's a requirement that all messages to and from under-aged users be hidden and some socialites know this)
* change NPC message for Tavern: "Rest in the Inn" > "Pause Damage"
* prevent a chat message being hidden until it's been flagged more than once
* allow non-Tavern (non-"Public") challenges to have zero gem prize
Also changes message about gem prize to say "Public Challenges" instead of "Tavern Challenges"
* finish committing merge conflict
* Discover challenges
* Fixed hero loading
* Moved add task button
* Fixed bailey showing
* Added logs for bad sub data
* Fixed blurb editing
* Added confirmation for deleteing message
* Reset invite modals on invite
* fixed group member sorting
* Fixed chat time styles
* Fixed hover on liked
* Fixed like count
* Added reverse
* Fixed editing party
* Added leader conditions
* Added search
* Added loading
* Reset members when leaving party
* Rounded pending
* Fixed overflow on collecting quests
* Added to invite friends
* Hid summary from party
* Fixed button styles
* Fixed button class
* Removed okay button
* Fixed renav for profile modal
* Added subscription back to menu
* Fixed static link
* Added daily due setting
* Added local auth adding
* Fixed centering of text
* Removed message locally
* Added count for new message
* Added style fix for profile pet
* Fixed achievement popovers
* Fixed white boxes
* Added plain color backgrounds
* fixed challenge mutability
* Fixed challenge editing
* Added notation for large numbers
* Add color text to guild sizes
* Removed membership filters from discover challenges
* Added invites to group
* Cmd + enter send message
* Made leader clickable
* Updated group validation
* Added cancelling autocomplete
* Added mention icon
* Added removing member
* Removed extra string
* Removed lingering checklist
* Added another party data check
* Added move cursor on hover
* Removed task locally
* Prevented user from being able to delete an active challenge task
* Reset tasks when viewing member progress
* Prevented challenge owners from adding checklists
* Hide challenges columns with no tasks
* Add error translations
* Added markdown to challenge description
* Allowed leader to rejoin challenge
* Replaced description with summary
* Fixed delete logic
* Added author
* Added loading message
* Added load more
* Added default sub
* Fixed remove all
* Added lint
* Fixed login incentives header
* Added achievement hover
* Removed grassy background from editing modal
* Fixed loading of other user equipment
* Prevented non admins from using habitica official
* Fixed challenge loading and leader changing on group reload
* Added community guidlines link
* Added challenge cloning
* Fixed heroes editing
* create new summary field for challenges
* finish implementating summary for challenges, add some support for guilds
* make small improvements to challenges code
* fix lint errors
* add more code to support summaries for guilds (still more needed)
* fix existing tests by adding summary field
* make existing tests pass
* WIP make "Public Challenges" text translatable
* change "leader" locale key to "guildOrPartyLeader" to make searches for it easier
* remove v-once from h2 headings
* remove failed attempt to localise text in <script>
* add quick-and-dirty error checking for guild not having categories
* make "Public Challenges" text translatable
* rename final ...PlaceHolder strings to ...Placeholder (lower-case "h") for consistency with existing Placeholder strings
* Added image
* Added new achievement to user schema
* Added new achievement to content
* Added new achievement to libs
* Added achievement text to locale
* Added achievement to notification model and controller
* Grant achievement on joining or creating first challenge
* Added achievement to modal template
* Compiled new sprites
* Added integration tests
* Fix linting error