* Enable new Rails/* cops and use autocorrect on them
* Fixed Rails/PluckInWhere leftovers
* Fix Rails/DefaultScope
* Enable and fix Rails/PluckId
* Fix manual mistake with forcing autocorrection on Rails/PluckId
* Apply PR feedback to remove Rails/PluckId inline disables
* Apply PR feedback to get rid of Rails/PluckInWhere inline
* Add destroy organization backend
* Add view for deleting org
* Add new line to end of file
* Refactor and move destroyable? to model
* Use a nice card to distinguish the message
* Prevent organizations from being deleted if they have credits
* Fix codeclimate issues
* Remove let_it_be_changeable for flakiness
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* Merge conflict resolved
* request manager info API
* 👨🏼🎨 Design added for requestCenter
* integrate request manager with API
* remove unused argument
* fix request manager card UI
* fix request card UI
* add request manager button
* handle no invitaion UI
* fix badge UI
* add request specs
* add jest specs
* remove the presenter
* fix code climate issues
* fix queries
* fix runbocop issues
* fix PR suggestions
* remove empty lines
Co-authored-by: Sarthak Sharma <7lovesharma7@gmail.com>
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* Merge conflict resolved
* fix video content issue
* add UI for membership management
* add api to update memberahip role
* add methods for manage membership
* Add integration test cases
* add emoji for admin
* Open member profile in sidecar only
* 🐞 Problem with direct channel sidecar
* 🐞 Few other UI enhancements
* fix mod typo
* add limit upto 4 for display active memberships
* fix UI issues
* fix action ui for membership
* fix sidebar redirection issue
* fix svg buttons
* add test cases
* fixed broken spec
* fix PR suggestions
* remove not used code
* fix typo
* fix PR suggestion
* fix typos
* add invitation url expiry
* fix specs
* fix PR suggestions
* removed unused gem
* remove presenter format
* handle invitation link expiry with redis
* fix PR suggestions
* user can view non-discoverable channel invitation link
* fix typos
* remove commented code
* add spacing
* PR suggestions
* remove class from button
* replace componentDidMount with commen function
* remove action button for single membership
* add chat message on update role
* add spece between lines
Co-authored-by: Narender Singh <narender2031@gmail.com>
Co-authored-by: Fernando Valverde <fdov88@gmail.com>
* Make liquid tags adhere to context and permission
* Undo updates to all liquid tags and update error
* ACTUALLY update errors this time
* Typo
* Refactor error handling and add support for Comment
* Fix specs
* Code cleanup
* Prettify error message
* Add comment clarifying error
* parsed --> parse
* Use a policy for validating roles
* Fix pretty error message
* Return early if valid source
* Get rid of duplicate current_user
* Add comment to Pundit.authorize
* LiquidTagPolicy specs
* Update liquid tag docs
* Update docs
* Use parse_context argument for clarity
* Remove duplicate guard clause for VALID_ROLES
* Update docs
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* 🐞 Channel List bug in mobile view
* changes in joining request responses
* 🛠 Request Managers Frontend ready
* changes in routes for adding and removing remembership
* 🚀 New routes implemented for request manager
* fix issues
* changes in api for remove membership
* Merge conflict resolved
* 🐞 Channel List bug in mobile view
* changes in joining request responses
* 🛠 Request Managers Frontend ready
* changes in routes for adding and removing remembership
* 🚀 New routes implemented for request manager
* fix issues
* changes in api for remove membership
* 🛠Optimizing for CodeClimate
* 🛠Optimizing again for CodeClimate
* 🛠Optimizing again 2 for CodeClimate
* 🛠 Added more test cases
* 🛠 Optimizing code
* 🚀 Action to open setting page added
* 🛠 Dummy page added for chat setting
* add JSON routes for chat channel settings
* Integrate chat channel settings API with UI
* 🐞 Channel List bug in mobile view
* 🛠 Request Managers Frontend ready
* changes in routes for adding and removing remembership
* 🚀 New routes implemented for request manager
* fix issues
* 🐞 Channel List bug in mobile view
* 🛠 Request Managers Frontend ready
* changes in routes for adding and removing remembership
* 🚀 New routes implemented for request manager
* fix issues
* 🛠Optimizing again for CodeClimate
* 🚀 Action to open setting page added
* 🛠 Dummy page added for chat setting
* add JSON routes for chat channel settings
* Integrate chat channel settings API with UI
* Fix PR requested changes
* Add JSDoc documentation to exported functions
* fix/add rspec test cases
* refactor channelSettinngs render part
* add test cases for chat channel settings component
* fix code-climate
* add rest component tests
* add more test coverage
* fix code-climate bugs
* add API function test
Co-authored-by: Sarthak Sharma <7lovesharma7@gmail.com>
Co-authored-by: Parasgr-code <paras.gaur@skynox.tech>
* Initial user payment pointer work
* Finalize functionality and tests
* Fix schema
* Update app/views/shared/_payment_pointer.html.erb
* Add function to list
* Add display_announcements boolean to Users table
* Adds a boolean with a default of true to Users
* Add display_announcements to #user_data and user_policy.rb
* Adds display_announcements to #user_data in AsyncInfoController
* Adds display_announcements to PERMITTED_ATTRIBUTES
* Add display_announcements to _misc.html.erb
* Adjust submit data request button and adjust Announcements heading
* Adjusts submit data request button to follow button capitalization
* Adjusts announcements heading to read Announcements not Sponsors
* Add copy to _misc.html.erb to add context around Announcement toggle
* Add request and system specs around Announcements
* Adds a test for announcements to user_settings_spec.rb
* Adds a system spec for updating announcements
* Add user_updates_announcements_spec file and remove old spec from users_settings_spec
* Fix spec weirdness
* Add tests around misc tab and Announcement toggle to user_settings_spec.rb
* Tests that misc tab renders properly
* Tests that display_announcements toggle updates a users settings properly
* Removes user_updates_announcements_spec.rb
* Adjusts Export Content capitalization in _misc.html.erb
* Resolve DB conflicts
* db
* Add an iframe to host mod actions menu
This iframe is probably the fastest way to get a working mod actions
menu without rewriting existing code. We may eventually re-write this,
but based on Ben's recommendation we are going to go with an iframe
because it gets us a working feature quickly and it seems to be serving
us well in other parts of the application.
* Add the mod actions menu button to articles
When the user is "trusted" they will see a small badge on the lower
right-hand side of the screen. Clicking the icon reveals the mod actions
menu.
* Add header to actions panel (#7395)
* Update iframe border
* Add 'Moderate Post' header and button
* Use inline SVG over <img src='svg'>
* Use Crayons variables for units
* Use flexbox to center chevron
* Add accidentally deleted positioning
* Add chevron-right.svg
* Use a partial for actions panel and revert /mod page
* Load actions panel in iframe and not /mod
* Style UpVote, DownVote and Vomit buttons (#7421)
* Add a iframe to host mod actions menu
* Up and Downvote Icons
* Starting with vomit button
* Completed UI; interactions pending
* Incorporated Andy changes; making mod action-panel
* space reactions away from header
* UI tweaks and corrections 1
* Fixing styles to match crayons
* choose pure white color css variable
* Add thumbs-up emoji; address Lisa comments
* Trying to fix reactions interactions
* remove clearThumbReactions function
Co-authored-by: jacobherrington <jacobherringtondeveloper@gmail.com>
* Add bottom layout for actions panel (#7501)
* WIP for Lisa
* Finalize mod actions bottom section
* Use showing instead of hidden for transition
* Add new optimized SVGs
* Fix weird height issues for actions panel
* Move hover styles below the cascade, yo
* Use margin-top for sticky footer over height: 100%
* Move initialize actions panel button to Webpack (#7506)
* Move actions panel JS code to webpack
* Refactor and use destructuring
Thanks @nickytonline!
Co-Authored-By: Nick Taylor <nick@iamdeveloper.com>
* Rename file
Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
* Configure Experience Level options for Mod Action Panel (#7507)
* Add a iframe to host mod actions menu
* Click interactions (no toggle of dropdowns yet)
Co-authored-by: jacobherrington <jacobherringtondeveloper@gmail.com>
* Fix the iframe's path (#7509)
* Toggle the 'Set Experience Level' menu on button-click (#7529)
* Add a iframe to host mod actions menu
* Add set-exp dropdown functionality
* WIP: making exp level updates async
* Completes async implementation
* Fix controller for "actions_panel" and "/mod"
Co-authored-by: jacobherrington <jacobherringtondeveloper@gmail.com>
* Add close button interaction (#7552)
* Rename actions panel pack file
* Add close button toggle to actions panel
* DB update
* Move more code to Webpack and add conditional tag adjustments section (#7652)
* Move JS code to Webpack
* Clean up a few style issues
* Add styling for tag adjustments
* Add active/inactive functionality
* Add conditional rendering for tag adjustments section
* Add missing variable oops (#7673)
* update with upstream
* Add missing subtract svg (#7695)
* Create 'Flag User' modal (#7626)
* Add a iframe to host mod actions menu
* Starting task
* Phase 1
* Fix "Close Modal" icon
* Implement open modal
* Working on all "Close Modal" actions
* Almost-complete implementation
* Remove Abuse Report snackbar
* Delete unneeded JS code
* Remove "How does this work?" links
* Link to Community Moderation page
* Addressing code review corrections
* Update api call to use "request" method
* Make else path clearer in api call
Co-authored-by: jacobherrington <jacobherringtondeveloper@gmail.com>
* Mod Actions Panel: Prevent nonsensical reaction pairs (#7699)
* Still implementing
* Completed Implementation
* Address code review feednack; refactor "create" method
* Move scss variables to native-css (for ModPanel code only)
* Correct missing native css
* update to native-css again
* More sccs -> native-css fixes
* Adjust ModPanel Button position on mobile (#7744)
* Adjusted ModPanel position on mobile
* Better adjustment
* Fix phantom schema.rb changes
* Fix phantom schema.rb changes
* Finalize tag adjustments (#7740)
* Finalize tag adjustments and flow
* Fix logic for rendering adjust tags options
* Clean up alert response
* Rename user to trusted user
* Use new CSS variables
* Add/remove tag on article's tag section after adjusting
* Fix logic for admin tag input and some other niceties
* Final bug fixes mod panel (#7772)
* Use correct boolean statement
* Clear the value of the textarea not div
* Use the correct attribute
* Use actions panel for /mod page (#7775)
* Fix loading logic with tag adjust button conditional render
* Link to tag moderation for adjust tags section
* Use top over window.parent
Thanks @nickytonline!
Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
* Use Webpack alias to import
Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
* Use place-items shorthand over align-items + justify-content
Thanks @nickytonline!
Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
* Fix typo for utilities
* Add new line to end of file
* Disable linter for use for top function
* Use align-items and justify-content center
* Update SVGs to spec
* Remove unnecessary height and use spacing units for open button
* Remove accidentally added comment
* Error handling when selecting reactions; optimize "reactions.each" loop
* Add comment about clearing innerHTML
* Revert schema back to master
* Use each since there should only be two reactions
* Fix typo oops
* Add missing height oops
* Return if there are no reactions to be destroyed
* Center path with GUI tool shrug
* chose more appropriate name for JS pack; rewrote api calls using async-await
* Rename variables and methods and check categories before clearing
* Use addSnackbarItem instead of hardcoded version
* Place articleModerationTools pack behind user_signed_in
* Correct omission
* Implement dynamic imports for ModPanel tools
* Implemented async/await; added snackbar message for null response use-case
* Fix the "/article/mod" page; make sure all reactions, vomit-user and exp-level working as expected
* Update language to reflect new UI
* Close the modal after the "Confirm Action" button is clicked
* Change text for Spam/Abuse button
* Fix schema to use with master
* Update schema to master again
* Use crayons button for actions panel button
* UI tweak to play nicer with site themes
* Make actions panel work for dev.to/mod
* Add snackbar for reactions
* Update how does this work links
* Add "thumbsup" reactions to logging
* Add thumbsup to categories
* Add external link icon
* Changes to reflect "Privileged" and not "Negative" reactions; spec changes pending
* Updated instance variable
* Starting to update the specs
* Update "thumbsup" points from 10 to 5
* Still working on both requests
* Embracing an easier implemantation (thanks Andy!)
* Add tests for actions panel
* Add some basic tests for actions panel
* Change to flag to admins
* Indicate that 'Reason for Tag adjust' is required
Co-authored-by: Mac Siri <krairit.siri@gmail.com>
* Rename negative_reactions to privileged
* Update rating level to use correct values
* Use a different display value than backend value
* Don't show adjust tags for trusted users
* Add specs for moderation_routes for admin and super_admin
Co-authored-by: Arit Amana <msarit@gmail.com>
Co-authored-by: jacobherrington <jacobherringtondeveloper@gmail.com>
Co-authored-by: Arit Amana <32520970+msarit@users.noreply.github.com>
Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
Co-authored-by: Mac Siri <krairit.siri@gmail.com>
* Change models and related files
* Update controllers and specs
* More renaming
* Seek and destroy, I mean search and replace
* Round up the stragglers
* Ground control to Major Travis...
* More fixes
* PR feedback
* Various fixes
* Rename view
* Fix list query builder
* Unify request specs
* Fix some API spec errors
* Fix remaining API specs
* Make spec conform to API
* Fix leftover problems
* Fix JS tests
* Fix column name in select
* Fix API specs
* Fix search specs
* Paging Mr. Travis
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* added new column discoverable for public channel and changes in elasticsearch
* fix corrections
* changes in serializer file, added channel_discoverable
* added checkbox with discoverable policy
* changes in code for discoverable channels
* accept and reject member invitation by mod
* add joining request to closed groups
* fixed merge error
* changes in joining member to closed groups
* join to closed group
* changes in message action of joining
* changes in chat upopened json
* 🚀Feature : Ability to search Global Channels
* touch updated_at in after commit update
* 🚀Feature : Ability to send request to discoverable channel
* 🚀Feature : Ability to send request to discoverable channel
* created new route for joining closed channel
* 🚀 Success handle on joining request sent
* removed redundant code
* join_channel improvement, removed authorization for join channel
* list of joining requests
* added joining_request status channels on search list
* changes in mailer and query builder optimized
* 🛠 Adding filter for new Query
* added rspec for add membership method in controller
* rspec for sending join channel request
* invite join request channel list rspec
* test case for query builder discoverable
* viewable and discoverable channel list
* refactored logic for search channels
* 🚀 Check if Request already sent
* 🛠 Optimizing code and making channelButton Component
* 🛠 Optimizing codefor SVG problem
* 🛠 Optimized action.js
* changes in search controller query
* hot fix
* removed unwanted code
* 🛠 Fix the Channel Name problem
* 🛠 Optimizing code further for CodeClimate
* added new column discoverable for public channel and changes in elasticsearch
* fix corrections
* changes in serializer file, added channel_discoverable
* added checkbox with discoverable policy
* changes in code for discoverable channels
* accept and reject member invitation by mod
* add joining request to closed groups
* fixed merge error
* changes in joining member to closed groups
* join to closed group
* changes in message action of joining
* changes in chat upopened json
* touch updated_at in after commit update
* 🚀Feature : Ability to search Global Channels
* 🚀Feature : Ability to send request to discoverable channel
* 🚀Feature : Ability to send request to discoverable channel
* created new route for joining closed channel
* 🚀 Success handle on joining request sent
* removed redundant code
* join_channel improvement, removed authorization for join channel
* list of joining requests
* added joining_request status channels on search list
* changes in mailer and query builder optimized
* added rspec for add membership method in controller
* rspec for sending join channel request
* invite join request channel list rspec
* 🛠 Adding filter for new Query
* test case for query builder discoverable
* viewable and discoverable channel list
* refactored logic for search channels
* 🚀 Check if Request already sent
* 🛠 Optimizing code and making channelButton Component
* 🛠 Optimizing codefor SVG problem
* 🛠 Optimized action.js
* changes in search controller query
* hot fix
* 🛠 Fix the Channel Name problem
* 🛠 Fixing merge problem
* 🛠 Optimizing code further for CodeClimate
* updated UI for membership edit
* fixed test casses and fixed UI for chat_channel_edit
* 🛠napshots added
* test cases fixed
* 🛠 Test cases added for new component
* channel settings accesible only by mod
* 🛠 More Test cases added
* 🛠 Svg code optimized
* 🛠 Svg code optimized in videocontent
* optimized code for search query
* fix test case for query builder
* changes in joining closed channel logic
* refactored join channel
* redirect to edit channel after joining request
* changes in test case for redirect
* optimized code
* 🛠 Eslint bugs fixed
* test case fixed
* optimization
* olving channel repetition problem
* optimization of code for query builder
* changes in query builder
* test cases fixed
* 🛠 Handling reduntant data on frontend
* 🛠 Don't show data if no filter query
* 🛠 Optimized code for fixing bugs and code coverage
* 🛠 Optimizing code further for CodeClimate
Co-authored-by: Parasgr-code <paras.gaur@skynox.tech>
* Rename remove_association to remove_identity and future proof its tests
* Use the signin_path everywhere
* Generalize account settings
* Use delegation
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* Move channel settings to sidecar
* added spec for chat_channels_memberships_controller.rb (#6539)
* added spec for chat_channels_memberships_controller.rb
* simplified record not found error for membership
* error message formatting updated
* added error key in flash message
Co-authored-by: jitendra <jitendrarajpurohit@skynox.tech>
* Refining "Move sidecar to iframe" branch (#6634)
* added spec for chat_channels_memberships_controller.rb
* simplified record not found error for membership
* error message formatting updated
* added error key in flash message
* 🐞 Bug Fix: Open sidecar of clicking @all
* 🐞 Bug Fix: adding space after selecting the username from suggestion box
* added remove channel member functionality for moderators
* 🔩 Small Tweaks: Hover issue fixed
* 🐞 Bug Fix: Remove sidecar toggle on @all tag (for now)
* updated manually constructed urls with rails path helpers
* mod users cannot remove members of other channel
Co-authored-by: jitendra <jitendrarajpurohit@skynox.tech>
* 🚀 Finalising the connect group/channel feature. (#6829)
* added spec for chat_channels_memberships_controller.rb
* simplified record not found error for membership
* error message formatting updated
* added error key in flash message
* 🐞 Bug Fix: Open sidecar of clicking @all
* 🐞 Bug Fix: adding space after selecting the username from suggestion box
* added remove channel member functionality for moderators
* 🔩 Small Tweaks: Hover issue fixed
* 🐞 Bug Fix: Remove sidecar toggle on @all tag (for now)
* updated manually constructed urls with rails path helpers
* mod users cannot remove members of other channel
* mod members can now invite user who have left the channel
* 🐞 Bug Fix: Ability to open sidecar on mention all properly
* Eslint Changes
* send email notification on inviting user feature added
* 🛠 Email design enhancements for channel invitation
* send invitation to mod user added from internal
* 🛠 Gif changes for Mod
* spec fixed
* inviter name issue fixed
* 🚀 Open sidecar when automatically if you use link from email
Co-authored-by: jitendra <jitendrarajpurohit@skynox.tech>
* review changes
* added spec for channel_invite_email
* Bug🐞: Design problem with sidecar after merge
* Bug🐞: Design problem with invitation alert box
* replaced instance variables with local variable
* Bug🐞: Wrong css classes fixed
* Bug🐞: Edit option bug
* yarn.lock file updated
* code review changes
* updated manually constructed urls with rails path helpers in spec
* user name url issue fix in invite email
* user url corrected
Co-authored-by: Sarthak Sharma <7lovesharma7@gmail.com>
Co-authored-by: benhalpern <bendhalpern@gmail.com>
* Update some test descriptions in notifications_spec
The descriptions of these tests didn't actually match the test's assertions!
* Add welcome_notifications column to users table
Also ensures that welcome_notifications cannot be set to `nil`.
* Show an opt-out message for Welcome broadcast notifications
* Add opt-out link to notifications + welcome notification box to settings
* Allow welcome notification subscription to be updated
* Add tests for unsubscribed to welcome notification users
Also refactor generator specs a bit.
* Fix up paths, copy, tests
Use rails path helpers instead of hardcoding paths. Improve copy in a few locations.
* Add internal response template controller
* Add response template policy and spec
* Add response template views for internal
* Add missing html oops, and some padding
* Use arrays instead of %w because spaces
* Link to user in index list
* Add actual HTML oops
* Allow success flash to be displayed
* Add tag moderator trait
* Remove unnecessary .all
* Use constant to avoid duplication
* Use URL helpers over manual string URLs
* Use appropriate renders and URLs
* Follow conventional CRUD and use form_with
* Add internal request spec for response_templates
* Add missing view file oops
* Use table view for index and bootstrap styles
* Redirect to index after create
* Use clearer messaging for labels
* Validate email types to use only plain text and html
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* Refactoring🔩: Refactoring for edit messages
* Refactoring🔩: Refactoring:2 for edit messages
* Refactoring🔩: Refactoring:2 for edit messages
* Test Cases📝 : Test Cases for edit message added
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Feature 🚀 : Ability to edit messages
* Test Cases📝 : Specs for Edit message added
* Refactoring🔩: Refactoring for edit messages
* Refactoring🔩: Refactoring:2 for edit messages
* Refactoring🔩: Refactoring:2 for edit messages
* Bug Fix 🐞: Added space between edited and timestamp
Co-authored-by: Ben Halpern <bendhalpern@gmail.com>
* Feature 🚀 : Ability to delete messages in chat channels
- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime
* Minor Bug 🐞: Show message action only for current user
- User can delete or edit their own messages
* Test cases added
* Bug 🐞: Update message id for receiver
Message id was not sent to receiver by pusher
* Refactoring🛠: Message controller refactoring
* Test Cases📝 : Specs for Delete message added
* Action to request account deletion by email
* Confirmation page for user destroy
* Remove some of the old destroy user code
* System tests for user destroy
* Moved user destroy tokens to redis
* Change tests according to the new user destroy token storage (in redis)
* Added info about the link to user delete confirmation email
* Remove blank like from schema.rb
* Delete user destroy token on user delete
* Update confirm user destroy js
* Start with self deleting account
* Moved deleting user content and activity out of moderator hierarchy
* Added tests for the users delete services
* Tests for Users::DeleteComments
* User self-deletion (start)
* Some tests for user self-delete
* Specs for user self-deletion
* Test flash settings on users delete
* Added basic specs for the Users::DeleteJob
* Send notification when a user was destroyed
* Rename Users::DeleteJob to SelfDelete
* Change texts about self-deletion
* Fix users delete job spec
* Rescue and log exceptions while self-deleting user
* Added visible flash notices after deleting user
* Remove unneeded css for flash notice
* Fix link to a ghost account
* Remove redundant css
* Added github and twitter oauth apps links
* Initial changes for some new themes/fonts/etc.
* Add basic navbar config
* Finalize navbar config
* Make config_navbar non nullable
* Add dark_theme? to user decorator
* Prevent need for eager loading
* Add initial implementation of user block
* Remove debugger oops
* Add index and foreign keys for user_block table
* Use private method instead of exists
* Move channel handling logic to service object
* Update styling a bit
* Use profileDropdown file for future proofing
* Remove commented out code
* Render json: { result } for all endpoints
* Add statuses for sad paths
* Add better sad path handling in the JS
* Remove accidentally committed spec file
* Don't wait for DOM to load block button
* Use equality for accuracy in slug query
* Add status code for unauthorized requests
* Add missing comma sigh
* Add ProMembership model
* Implement ProMembershipsController#create
* Implement basic ProMembershipsController#show
* Add ProMembership to ledger
* Populate user history after pro subscription is created
* Add fields for expiration notifications
* Add ProMemberships::ExpirationNotifier to notify users of expiring memberships
* Add tasks for recurring jobs to notify users of expiration
* Add auto_recharge column to ProMembership
* Add ProMemberships::Biller (incomplete)
* Fix specs
* Add ProMembership to Administrate
* Fix spec
* Add has_enough_credits? to User and Organization
* Add Payments::Customer class
* Finish ProMembership::Biller functionality
* Fix ProMemberships::Creator check for credits
* Disable destroy actions for ProMembershipsController
* Correctly authenticate ProMembershipsController actions
* Make sure only pro user's history can be indexed
* Add ProMembershipsController#update action for auto recharge
* Use regular AR to save new credits and add touch to the purchaser
* Clarify Pro membership create policy
* Display information about an existing pro membership
* Add UI to show page
* Add system test for Pro membership creation
* Implement edit membership
* Make sure users with pro memberships can access history and dashboard pro
* Fix padding issue
* Show a different text for a user that has credits but not enough for Pro
* Move Pro Membership functionality inside settings
* Update Pro Membership link in email notifications
* Bust all relevant caches
* Add the Pro checkmark around the website
* Use Users::ResaveArticlesJob instead of delay
* Add/remove user from pro-members chat channel
* Use the appropriate Pro checkmark
* Remove unfinished pro elements
* Remove checkmark JS
* wip init handle draft class and styling
* add draft button
* start splitting up listing row into multile files
* separate tag links
* split location
* fix location
* separate listing row action buttons
* update listing row proptypes to describe listing object
* contact via connect to jsx
* fix default checked
* init draft creation and first publish charge
* fix first publish logic and credit charging
* handle drafts in dashboard filtering
* adjust isDraft bool statement
* hide drafts from main listings feed
* fix expired and draft bools in listing row
* adjust create listing org credits
* internally handle drafts
* adjust listing row
* break down update method
* remove unnecessary logic and shorten lines
* fix logic again woops
* convert input hidden value + submit into one form button submit with corresponding name and value
also adds clear message that drafts do not cost credits
* handle insufficient org credits on first publish
- uses user credits to publish
- similar to bump implementation
* fix sorting for personal and all orgs
* space out some elements
* don't spend original users credit for them
* add delete buttons and delete_confirm and destroy methods
* remove notification removal since listings dont trigger notifications
* move draft message and add draft_params to tests
* Update classified_listings_controller.rb
* update tests
* update snapshot
* add del tests
* add guard preventing free draft publish
* fix draft filter
* update from master and resolve merge conflict in listing preact
* Revert "update from master and resolve merge conflict in listing preact"
This reverts commit 0a34fccf334a2ca0902644b486cb26ead6bef664.
* update column spec
instead of setting and saving
* separate two expectations into their own tests
* split more tests into single expectations
* change to unless bumped_at? instead of if nil
* Fix listing draft edge cases and styling
* Add title tags to listings pages
* set up refactored onboarding
* create onboarding page
* add in first slide and change slide functionality
* fix test suite
* profile refactor
* profile refactor
* refactor to api
* add checkbox fields
* add checkbox fields
* remove puts
* add basic css
* add styling
* add redirect
* hide back and next at first and last slides
* test refactored onboarding
* test refactored onboarding
* remove article edits
* Fix schema
* Add deleted file back in
* Add default value for checked_t&c column
* Adjust HTML structure to keep nav buttons in place
* Fix ESLint issues on Onboarding.jsx file
* Handling for undefined or empty followedTags on getUserTags
* Fix codeclimate issues
* Fix codeclimate issues
* Fix more codeclimate issues
* Fix more codeclimate issues
* Update Onboarding snapshots
* Uncheck the CoC and T&C checkboxes on render
* Update snapshots
* Return false instead of raising error
* Update spec to use new onboarding
* Redirect to onboarding if haven't seen it yet
* Prevent redirect to onboarding from /signout_confirm
* Use assign_attributes instead of saving twice
* Move COC and T&C checkbox page to second slide
* Add 'go back to original page' functionality
* Reuse ready prototype logic
* Keep track of the last visited onboarding page
* Fix email subscription bug
* Fix overflow issue for tags page
* Remove height to prevent page container scrolling
* Check for CoC and T&C for displaying onboarding
* Add InstantClick redirect and preserve referrer in client
* Fix async update + check by using localStorage
* Turn off onboarding for tests
* Finalize design for onboarding
* Finalize design for onboarding
* Make bulk follows during onboarding
* Fix bulk follow test
* adjust validations to allow org admins to edit listings
also adjusted presented elements based on bumped_at dates and published boolean status
* allow org admins to edit listings under diff user_id
adjust statement in edit so that it has to be admin not just member
* pluck via attribute not string of attribute name
* update policy for org admins
* make authorizing org admin for listing private
* update classified listing spec
user_id is required for classified listing
* Add /stats endpoint for articles, opened only to Pro users
* Add analytics to article stats page
* Add stats button to the article page and test stats page
* Allow user to have many orgs
* Allow users to handle multi orgs in settings
* Make rounded buttons inline
* Add multi org function to dashboards
* Fix merge conflicts
* Fix mistake in merge conflict fix oops
* Display the correct membership level
* Fix accessibility issues
* Display organizations for article editors
* Handle submitting org id with preact editors
* Make listings work with multiple organizations
* Allow listings to have multiple orgs on create
* Display the correct number of credits for each org
* Move script tag to Webpack
* Allow multi orgs for purchasing and viewing credits
* Use OrganizationMembership as authorization check
* Display multiple organizations for notifications
* Allow dashboard to be viewable under multi-orgs
* Remove unused method
* Add multi-org functionality for article editors
* Show pro dashboard buttons for member+ org levels
* Leave the correct organization
* Allow article API to change org id
* Add left-out authorization method oops
* Make nav buttons a bit more clear
* Fix merge conflict
* Fix adding org id for /api/articles and tests
* Fix tests for org policy
* Use proper logic for displaying org members
* Update org actions with new authorization
* Use correct org when creating a listing
* Remove additional payment charge oops
* Mark org notifications as read with authorization
* Remove deprecated post_as_organization attribute
* Use new org_admin syntax
* Remove deprecated org logic for article create and update
* Default all RSS posts to not belong to any org
* Render org_member page for guest users
* Update org policy spec to work with multi orgs
* Use org_membership for org traits and move identity code
* Use org_member trait
* Update to work with multi-orgs
* Validate article's org_id if param org_id is blank
* Make a let variable
* Remove unnecessary eager load for credits
* Fix HTML structure and org logic for non-org users
* Update credits spec for multi-org
* Add test for failed payment when purchased by org
* Lint listings_spec
* Test that the listing was created under the user
* Add tests for POST /listings multi-org
* Use double quotes for classes
* Fix /manage and a few other multi-org bugs
* Fix test for multi org
* Use correct method SQL exists? not Rails exist?
* Fix reads spec for multi-org
* Fix org_controller actions to work with multi org
* Test only multi org and not old usage and fix leave_org
* Fix org showing user profile img test for multi-org
* Fix org logic for users with no orgs
* Remove switch org functionality
* Update tests and add hidden param for org id
* Redirect to the specific organization
* Test other org button actions
* Use settings_notice instead of legacy notice and refactor
* Fix weird extra end issue prob from merge conflicts
* Test for with new flash key
* Fix user_views_org tests for multi-org
* Test for new flash message
* Update snapshot with new a11y html
* Move styling to stylesheet
* Add site admins functionality
* Move org_member? method in user model and refactor
* Use unspent_credits_count for organizations
* Add tests for /listings/new and minor bug fixes
* Use .present? in case of empty array
* Fix a lingering deprecated method
* Use greater than 1 for random numbers
* Add tests for counting spent and unspent credits