* Removes collective_noun and collective_noun_disabled from app
* Config Generalization: replaces community_qualified_name with community_name
- Generalizes SiteConfig after the removal of collective_noun field
- Updates copy where necessary to be readable with community_name
- Makes the community_name SiteConfig description more explicit
- Adds flexibility for Admins by removing appended "community"
* Adds a data_update script to remove collective_noun and collective_noun_disabled
* Removes appended community from stories_controller.rb
* Removes unnecessary quotation marks around SiteConfig.community_name.to_s
* Makes SiteConfig community_name description more explicit
* Removes topic from #email_from and replaces arg with _
* Removes argument from #email_from (facepalm)
* Reverts changes to application_mailer and notify_mailer_spec
* Removes default "Community" topic from application_mailer and makes topic optional
* Refactors #prepopulate_new_form to resolve Code Climate failures
* Refactors #email_from even further by use of a ternary operator per review suggestion
* Simplifies the data_update script used to remove collective_noun per review request
* Adds a data_update script to append community to community_name
* Updates data_update script to correctly append Community to community_name
* Removes RemoveCollectiveNounFromConfig and updates other script
* Removes superfluous false from data_update script
* Updates data_update script to be more idiomatic
* Update data exporter to handle admin send
* Match button with everything else
* Use proper redirect path
* Stub SiteConfig definition instead of setting it
Co-authored-by: Mac Siri <krairit.siri@gmail.com>
* Removed if statement by accident oops
* Remove non-functional boolean param and pass email directly
* Use refinement to conv to boolean instead of JSON.parse
* Rename to StringToBoolean
* Use 'using' in proper scope (not in method)
* Rename to_bool to to_boolean
* Refactor if statement, thanks rhymes!
* Fix small bugs in tests
* Remove tracking for export_email b/c no @user
Co-authored-by: Mac Siri <krairit.siri@gmail.com>
* Add dual booting logic to Gemfile
This might be helpful for the Rails 6.0 upgrade project.
* Add more than one gemfile to Travis' configuration
We want to see how the application behaves with more than one Rails versions:
- Gemfile -> Rails 5.2
- Gemfile.next -> Rails 6.0
This will help us figure out what needs to be addressed before migrating to Rails 6.0.
If you want to read more about this technique (dual booting) you can check out this page: https://www.fastruby.io/blog/upgrade-rails/dual-boot/dual-boot-with-rails-6-0-beta.html
* Fix joins
* Upgrade Gemfile.next.lock
* Make sure we're installing the correct versions of gems
* Add Rails 6 notes
* Update rubocop in Gemfile.next.lock
* Fix organization spec
* Fix page_views_spec
* Add Rails 6 and run rails app:update
* Remove some tricks
* Remove Gemfile.next for now
* Fix .content_type deprecation
* Fix deprecation of .where.not NAND/NOR behavior
* Fix deprecation of parameterized emails
* Fix specs
* Remove next flag for now
* Fix spec (hopefully)
* Add wait_for_javascript
* Fix spec, thanks @maestromac!
* Try without wait for javascript hack
* Remove unnecessary bin/update
* Remove file that snuck in the rebase
* Update the vendored gems
* Replace migrate+db:setup with db:prepare
* Update vendored gems
* Fix Gemfile.lock and update vendored stuff
* Fix Gemfile.lock to be the same as master's minus the changes
Co-authored-by: rhymes <rhymesete@gmail.com>
* Add automated email ownership emails
This is task Michael does manually a lot. There are a lot of cases where
we need to validate that an individual has access to the email address
associated with their DEV account. This automates a singificant portion
of that, and hopefully we can use it in a lot of places.
* refactor: set the email_from to use in teh defaults
* chore: remove some new lines
* feat: add a mail link helper that can be used in the views
* feat: returns the default if it doesn't understand the parameter
* feat: Quick replacement of links
* feat: allow subject to be passed through
* chore: update all hrefs
* chore: remove rel attribute
* chore: mail link
* update spec
* chore: space
* chore: update some whitespaces and emails
* style
* chore: PR mail_link to email_link and the comment
* feat: PR suggestions for encoding
* feat: use mail_to
* feat: update the email addresses in the site config
* chore: update the default email address everywhere
* feat: update the template for the config
* chore: remove default_site_mail as an allowed parameter
* feat: change biz@dev.to to teh business email address and with a subject
* feat: update partners@dev.to to use SiteConfig.email_addresses[:business]
* feta: update to business email address
* feat: update members@dev.to to use the site config
* feat: update privacy email
* chore: Anna's suggestion to loop through object instead of keys
* feat: make the from in the email to be dynamic
* feat: hardcoded mailer dev.to
* feat: oops hardcoded email addresses in the terms
* chore: remove some whitespace
* update editor guide
* feat: new reply email
* feat: new message mailer
* feat: new follower email
* feat: capitalize the button
* feat: rename the link
* feat: capitalize the button
* feat: generalize the urls
* feat: generalise the url
* feat: dynamic DEV
* feat: update the specs
* feat: DEV digest generalisation part 1
* fix: the method is accessed by tag_url and so the default parameter needs to be set at this level and not at self.tag
* fix: use the tag model instance instead of passing through just the tag name (so that we can use tag_url)
* chore: make code climate happy
* chore: more robocop
* feat: add a default url back for self.tag
* test: fix the feedback helper spec
* fix: spec to be general
* fix: oops :(
* refactor: user_settings_path
* chore: use code_of_conduct_path
* chore: robocop
* chore: use connect path
* chore; use the notifications symbol
* chore: misc path
* feat: simplify url
* feat/fix: change the order of the helpers and use user_url
* chore: user_url
* capitalise
* chore: update article path
* 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>
* Move from env variables to SiteConfig
Related to #5384
This PR only deals with the first remaining part outlined in the issue, starting to use existing SiteConfig keys instead of the env variables.
* Restore Envfile to original version for now
* 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
* 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
* Add tracking and missing specs for DigestMailer
* Add tracking and missing specs for MembershipMailer
* Add tracking and missing specs for NotifyMailer
* Add tracking and missing specs for ScholarshipMailer
* Add EditorConfig file for all editors
* Add article export service
* Add setting to request an export of all articles
* On the outside they are called posts
* Add articles exported email to mailer and service
* Refactor to one public method and test flags
* Trigger the export if it was requested and send the email
* Recreated migration file with generic export fields
* Rename fields and switch to a whitelist
* Refactor ArticleExportService into a more generic structure
* Rename articles_exported_email to export_email
* Fix notify mailer spec
* Rename Exporter::Exporter to Exporter::Service
* Remove commented out line
* Removed body_html, coordinates and updated_at from export
* Invert DJ config
* Update spec
* Use timezone aware datetime methods
* Use timezone aware date parse for GitHub issue tag
* Introduce a bit of chaos programming using Zonebie
Zonebie uses a random timezone to run tests, it's a really good way to see if the code is timezone dependent or not.
* Convert GitHub issue date as UTC
* Add initial remove association feature
* Add initial account deletion feature
* Add back in cursor pointer
* Update email text copy
* Update copy on email html
* Fix nav issue and add integration buttons to account
* Fix weird breakpoint top-nav issue
* Fix error handling when submitting blank note
* Change status closed to invalid
* Add ability to sort between status
* WIP
* Add working views for new report page
* Add mailer WIP
* Add MVP of new reports system
* Move collapse to the right & add show page link
* Fix buttons for index page
* Change collapse to collapse/expand
* Remove email functionality from new report
* Update copy of report abuse responses
* WIP of showing emails in reports
* Fix notes for user_role_service.rb
* Remove unused scripts from internal.html.erb
* Update tests for reports dashboard
* Add missing migration file
* Add finishing touches to reports dashboard
* Remove deprecated methods
* Update view with better timestamps
* Update and write new tests
* Add .codeclimate.yml
* Remove commented out editor thing
* Undo commented out code for recaptcha method
* Undo comment out code for development
* Use new comment path instead of old comment path
* Move validations from controller to model
* Add new columns to feedback message model
* Use polymorphic notes relationship
* MVP of ticketing system
* Use new URL for reported_url param
* Add missing files
* Add validations and tests for feedback_messages
* Clean up some html
* Update create spec and add update spec
* Add mail tests and lint
* Add link to user profile