* Rename SiteConfig
* More renaming
* Update spec
* Update mandatory settings mapping
* More renaming
* e2e test fixes
* You have a rename, and you have a rename
* Spec fix
* More changes
* Temporarily disable specs
* After-merge update
* Undo rename for migration
* undo rename of DUS
* Fix DUS
* Fix merge problem
* Remove redundant DUS
* Fix specs
* Remove unused code
* Change wrong class name
* More cleanup
* Re-add missing values to constant
* Fix constant
* Fix spec
* Remove obsolete fields
* Add accidentally removed field
* Update spec
* Move methods from Settings::General to ForemInstance
* Remove unneeded model
* Change mentions of 'site config'
* Rename banned and comment_banned roles
* Add data update script to rename roles containing 'ban'
* Add named error for Suspended users
* Update unidiomatic method names
* Rename misc banned to suspended
* Apply suggestions from code review
Co-authored-by: Michael Kohl <me@citizen428.net>
* Add unit tests for suspended methods
This commit also adds TODO comments for removing banned and
comment_banned from the codebase after data update scripts have
successfully run on all of our Forems.
Co-authored-by: Michael Kohl <me@citizen428.net>
* chore: use consistent code styles for the parenthesis around arguments
* Revert "chore: use consistent code styles for the parenthesis around arguments"
This reverts commit 281c899a5cff0480b182fef45b10ef69979166cb.
* chore: add consistent parenthesis
* feat: add a feature flag for data update scripts
* feat: write some tests for it
* chore: oops
* stub the data update scripts out wherever the profile admin is
* chore: remove some unneeded ones
* refactor: use call_original
* feat: add a feature flag to all the Forems (but not enable it as yet)
* Use Ransack for admin/tags
* Update admin tags index to use search with Ransack
* Add feature to sort tags in /admin/tags
* Add test for viewing /admin/tags pages
* Add aria labels for sort links
* Make links a bit more accessible
* 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
* Prepare to drop profile columns from user
* Update code and factory
* Also remove unused constant
* Move validation from user to profile
* Remove Profiles::ExtractData service object
* Add more comments
* Simplify sameAs attribute generation
* Obey me machine, I am your master
* Fix condition order in guard clause
* Temporarily disable callback
* Fix specs
* Reduce usage of Profile#refresh_attributes!
* Remove leftover comment
* Handle social media links differently
* More spec fixes
* Fix specs for admin profile fields controller
* Fix specs after merge
* Fix remaining specs
* Update user show request spec
* Add comment for follow_hiring_tag
* Only save profile when user is valid
* Fix seeds.rb for profile fields
* Switch from before_save to after_save
* Undo unrelated formattin change
* Update spec/fixtures/files/profile_fields.csv
Co-authored-by: Molly Struve <mollylbs@gmail.com>
* Remove data update script and spec
* Fix spec
* Fix typo in comment
* Fix typo in comment
* Move article resave logic to service object
* Move profile field creation to before(:suite)
* Refactor error handling in Profiles::Update
* Fix Profiles::Update specs and refactor
* Temporarily disable spec
* Add ProfileValidator
* Clean up
* Move DB ready check into app/lib
* Refresh attributes after importing from CSV
* Fix specs
* Remove unused file
* A girl has no name. A profile neither.
* Fix specs
* Add responds_to? check
* Spec fix
* Add name to user fields in profile settings page
Co-authored-by: Molly Struve <mollylbs@gmail.com>
* Adds ability for admins to create new tags via /admin/tags
* Merge branch 'master' of github.com:forem/forem into fdoxyz/admin-new-tags-11026
* Fix rubocop pre-hook
* UI Tweaks
* replaces show with edit action & other minor changes
* Reverse unrelated changes
* Removed more unrelated edits
* Fix specs
* Fix moderator link
* Implement changes
* display "Suspended" if user role.name is banned
* Correct equality symbol
Co-authored-by: Michael Kohl <me@citizen428.net>
Co-authored-by: Michael Kohl <me@citizen428.net>
* Adds a default color hex value to the /admin/tags/show color picker
* Rebased against color-picker changes and adds default color to edit.html.erb
* Adds a system spec for admin/tags and adjusts the filename for admin_creates_new_page_spec
* Uses .blank? in place of .nil? in admin/tags/show.html.erb
* Refactors test in admin_updates_tag_spec.rb
* Adds new and edit views for events and removes them from the index view
* Fixes formatting issues in /admin/pages/index.html.erb
* Refactors /admin/events partial, new, and edit forms
* Updates admin_events routes to include all routes except destroy
* Refactors Admin::EventsController and adds #new and #edit actions
* specs: Adjusts admin_creates_new_event_spec to work with /admin/event changes
* Refactors the Admin::EventsController, routes, and events index even further
- Adds back placeholder text in Events form
- Removes unnecessary code from controller
- Reverts changes to routes
- Adjusts event_cover_image size on index.html.erb
* specs: Adds tests around creating and updating events to events_spec
* Adds pagination to Admin::EventsController #index to cap events at 20 per page
* Removes .all from Admin::EventsController and adds a line to index.html.erb
* Uses crayons classes for _event_form.html.erb
* Improve error messages and validation for pages
This could probably be cleaner, but I wanted to avoid changing behavior,
so there is a bit of redundancy.
In this commit, I also had to convert an if statement to a case
statement for Rubocop.
* Add system spec for editing pages
* Use errors_as_sentence
* feat: allow a page to override the code_of_conduct, terms and privacy page
* feat: let privacy policy also use a partial for its contents like coc and terms
* feat: show the defaults or the pages
* specs: add tests for the overrides
* feat: update some styles and make use crayons buttons
* fix: update order of test items
* spec: fix
* reactor: move this whole section in the if
* feat: updates
* fix: code climate + travis
* more codeeclimate
* Remove extra character from meta_keywords in /listings/index.html.erb
* Remove meta_keywords from MANDATORY_CONFIGS
* Add and use meta_keywords_tag helper
* Use modern tag syntax instead of deprecated syntax
* Add and use meta_keywords_default helper
* Add and use meta_keywords_article helper
* Remove * from meta_keywords_field.label
* Update meta_keyword specs to account for no keywords being set
* Add CRUD actions for badge management to Internal::Badges::Controller
* Update sytling of badges index view in index.html.erb
-Uses a table to display all badges
-Links to the badge edit page from the badge title
-Displays a badges slug, title, and badge_image
-Adds an Award Badge button to the index view
* Adds an edit view, edit.html.erb, for badges
-Gives the ability to edit a badge title and/or slug
-Adds an Update Badge button to the left of the view
-Adds a Back to All Badges button to the right of the view
-Displays the badge image in the edit form
* Adjusts the path names in #award_badges in Internal::Badges::Controller
* Adds CRUD actions to the Internal::Badges::Controller and needed routes
* Add a description field to the edit.html.erb for badge management
* Add #award to Internal::Badges::Controller with matching view and routes
-Adds an #award method that sets @badge for #award_badges
-Adds an award.html.erb view for awarding badges
-Adds an award path for awarding badges
-Removes unnecessary code from controller, routes, and views
* Adds image upload functionality to the edit view for badges
* Ensure that usernames are downcased when awarding badges
-Chains downcase to usernames in #award_badges in
Internal::Badges::Controller
* Move badge-related views from old Internal folder to the correct Admin folder
Change routes and paths from /internal to /admin
* Refactor badge_params in Admin::Badges::Controller
* Add additional tests around awarding and updating badges in /admin/badge_achievements
* Add a create view to /admin/badges
-Adds new and create actions to Admin::Badges::Controller
-Adds a create view for creating badges at new.html.erb
-Adds a Create Badge button to the index view
-Moves the Award Badges button to the bottom of the index view
* Add a test around creating badges and clean up existing specs in badges_spec.rb
Adjust path in admin_awards_badges_spec.rb to be correct path
* Adjust routes from /badges/award_badges to /badges/badge_achievements/award_badges
Update paths in admin/badge-related specs
* Adjust paths in badges_spec.rb to be admin_badge_achievements_award_badges_path
* Adjust button styling for Award Badge
* Adjust paths back to /admin/badges in badges_spec.rb
* Add clarification around usernames when awarding badges
* Mark test in black_box_spec.rb as pending due to Travis failure
* Change wording used around usernames and @ symbols in award.html.erb
* First draft - all the big changes
* Changing some more references to 'internal'
* Relocate internal request tests to admin
* Relocate internal system tests to admin
* Fix trailing space
* Test fix
* Move queries from internal to admin
* Docs updates
* Rename internal stimuls controllers to admin (plus docs)
* Rename admin layout
* Fix routing after rebase
* Fixes for latest added admin interfaces
* Serviceworker ignore paths
We are no longer using the Percy service, so this code is not required anymore.
Removes the percy agent, the gem, and all references to Percy.snapshot and percy: true.
* Add Percy to Gemfile, rails helper
* Percy snapshots for using the editor
* Add PERCY_TOKEN to sample_application.yml
* Percy snapshots for visiting the homepage
* Percy snapshots for viewing an article's comments
* Percy snapshots for creating an article
* Percy snapshots for editing an article
* Percy snapshots for logged in/out user
* Remove empty spec file
* Percy snapshots for settings page
* Percy snapshots for reading list
* Percy snapshots for admin view
* Percy snapshots for moderator view
* Percy snapshots for authentication views
* Percy snapshots for article and tag views
* Percy snapshots for editing/deleting comment views
* Percy snapshots for admin views
* Percy snapshots for comment views
* Percy snapshots for organization views
* Percy snapshots for pro membership views
* Percy snapshots for podcast views
* Percy snapshots for user views
* Percy snapshots for dashboard views
* Percy snapshots for homepage views
* Percy snapshots for video views
* Add js: true in tests that require it for Percy
* Percy dependency cleanup
* Add the Percy agent
* Remove the PERCY_TOKEN from sample_application.yml
* Move the Percy gem into the "test" group in the Gemfile
* Remove duplicate snapshots, provide unique names to snapshots
* Set seed on Faker::Config for deterministic Percy snapshots
* Freeze time in js: true tests for determinstic snapshots
* Upgrade Percy to v0.26.3
* Add percy: true flag for Percy snapshotting tests
* Add more percy: true flags