Commit graph

5568 commits

Author SHA1 Message Date
Michael Kohl
84a85fe1a4
Remove color_field input type from profiles (#14239)
* Move brand color validation to Users::Setting

* Fix specs

* Remove color_field as ProfileField input type
2021-07-19 18:42:36 +07:00
zeotuan
130c163fb6
fix podcast page missing skip functionality (#14254)
* add main-content id to podcast page

* switch to main tag to improve accessibility
2021-07-19 11:41:28 +01:00
Keshav Biswa
247e1c48f0
Bust Content Cache after updation of Settings (#14255)
* bust content cache after settings update on admin

* removed bust_content_change_cache from the action
2021-07-19 10:20:59 +02:00
Molly Struve
d185790eed
Remove Settings Columns from User (#14252)
* Remove Settings Columns from User

* add partial feed_url index to user settings

* remove ignored columns from user model

* Update db/migrate/20210715205433_remove_settings_from_user.rb

Co-authored-by: Michael Kohl <citizen428@dev.to>

Co-authored-by: Michael Kohl <citizen428@dev.to>
2021-07-19 09:12:27 +07:00
Michael Kohl
9794305412
Remove unused profile fields (#14206)
* Remove unused profile fields

* Clean up CSV

* Account for user settings in Profiles::Update

* Move brand color validation to Users::Setting

* Fix specs
2021-07-16 09:45:12 -04:00
Suzanne Aitchison
dfc08bf5b4
Revert "Fix shorten_urls to not strip out text formatting in comments (#14240)" (#14258)
This reverts commit 315f1ec4cf.
2021-07-16 14:37:26 +01:00
Khadija Sidhpuri
315f1ec4cf
Fix shorten_urls to not strip out text formatting in comments (#14240)
* fix: shorten_urls to only shorten URLs

* revert: changes to schema.rb

* modify: test to aggregate failures

Co-authored-by: rhymes <github@rhymes.dev>

Co-authored-by: rhymes <github@rhymes.dev>
2021-07-15 18:59:29 +02:00
Fernando Valverde
50601efe9b
Remove useEffect from RuntimeBanner component (#14248) 2021-07-15 10:57:57 -06:00
Jamie Gaskins
355881f744
Don't try to subscribe users without emails (#14244) 2021-07-15 10:34:23 -04:00
rhymes
28a75fe941
[15 min fix] Show pinned article to logged out users (#14219)
* Show pinned article to logged out users

* Check if pinned is defined

* Update app/views/articles/_single_story.html.erb

Co-authored-by: Michael Kohl <citizen428@dev.to>

Co-authored-by: Michael Kohl <citizen428@dev.to>
2021-07-15 08:09:38 -04:00
Veeresh
46655a2c72
Fix: Modal appears under the navbar #13195 (#14236)
* fix: modal appears under the navbar-13195

* removed unncessary made changes to schema.rb

* made sure schema file is equivalent to file in main branch
2021-07-15 12:45:24 +02:00
zeotuan
9900d40521
Add error handling and UI feedback when submitting comment resulting in a 503 error (#14233)
* add catch to response.json promise to handle 503 service unavailable error

* fix typo in error message

* make error message more generic

* add test for comment when server response with 503
2021-07-15 10:24:32 +01:00
Michael Kohl
871dfc4582
Quickfix for duplicate work display (#14237) 2021-07-15 10:14:35 +01:00
Fernando Valverde
8095fdb891
Runtime Banner v2 (#14119)
* Banner v2 - first working version

* Move pack_with_chunks_tag up + removing comments

* Trying to fix unlrelated tests

* Revert experiment

* Defer initialization until page is ready

* Test refactor + trying out UDL Server refactor

* Revert experiment - to be handled in separate PR

* refactor to use function component

* Cleanup unused lines in cypress test

* Update app/javascript/runtimeBanner/RuntimeBanner.jsx

Co-authored-by: Nick Taylor <nick@forem.com>

* Apply review feedback

* Update app/javascript/runtimeBanner/RuntimeBanner.jsx

Co-authored-by: Nick Taylor <nick@forem.com>

* Add import clause + extract functions outside of component

Co-authored-by: Nick Taylor <nick@forem.com>
2021-07-14 14:44:07 -06:00
Keshav Biswa
16334e1eac
fixed dashboard posts lists' border when hovered (#14230) 2021-07-14 20:24:27 +02:00
Arit Amana
3adfe7ace3
Static Sections for Site Navigation - Pt1 (#14213)
* schema file undelete description

* update with main

* update with origin

* Add "section" enum to navlink model

* create migration for section column

* create migration and data-update script

* update related rake tasks

* add scopes for default_links and other_links

* update E2E seeds

* ran migration; correct enum reference

* fix requests and model specs

* write DUS spec; fix factory and DUS

* yarn install

* address PR review comments

* fix migration; add null: false

* Remove yarn.lock from commit

* remove yarn.lock changes from commit

* sync yarn.lock with main

* newline
2021-07-14 11:01:56 -04:00
Suzanne Aitchison
9150e3d4ba
Only attach a click listener to a follow button once (#14217)
* only attach a click listener to a follow button once

* unskip test

* Trigger Travis CI
2021-07-14 15:32:49 +01:00
Julien Maury
75144aaaf3
Move Article Search JavaScript in a separate file (#14194)
* search js in a separate file

* add file searchParams and import utilities

* fix imports

* use global header eslint

* add spaces in eslint comments in searchParams.js

Co-authored-by: rhymes <github@rhymes.dev>

Co-authored-by: rhymes <github@rhymes.dev>
2021-07-14 16:29:29 +02:00
Molly Struve
e0512d8689
Enforce Uniqueness for Feed Import and Push Notification Cleanup Workers (#14196) 2021-07-13 14:37:13 -04:00
Nick Taylor
96f54d02cd
[15 min fix] Fixed an issue with the moderation button not appearing on some posts (#14184)
* Fixed an issue with the moderation button not appearing on some posts.

* Added some E2E tests to ensure moderation button is on posts for trusted users.

* Added some more tests.

* Added a test to ensure moderation button does not appear when logged out.
2021-07-13 10:31:00 +02:00
Michael Kohl
33da6aa1e7
Fix data update script for work field migration (#14207)
* Call .dup on employment_title

* Update app/workers/migrate_data_to_work_field_worker.rb

Co-authored-by: Jamie Gaskins <jamie@forem.com>

Co-authored-by: Jamie Gaskins <jamie@forem.com>
2021-07-13 13:20:21 +07:00
Julianna Tetreault
e1e18aa0aa
[15-Minute Fix] Ensure "Locked Screen" Checkbox Conditionally Renders (#14161)
* Uses Settings::UserExperience.public to conditionally render btn

* Updates landing page-related specs to account for private forem

* Uses Settings::UserExperience in place of ForemInstance in admin_creates_new_page_spec.rb

* Reverts Settings::UserExperience.public? changes throughout codebase
  - Removes any changes to ForemInstance.private?
  - Adds a new helper method, self.invitation_only?
  - Updates self.private? logic

* Updates landing page specs and reverts unnecessary changes
  - Reverts any changes that removed the check for
ForemInstance.private?
  - Updates landingPage.spec.js to use findByRole rather
than findByText

* Reverts a change to admin_manages_pages_spec.rb

* Updates landingPage.spec.js per PR review comment

* Updates #private_forem_or_no_enabled_auth_options and spec

* Uses .invite_only? in _providers_registration_form.html.erb

* Adjusts authenticationSection.spec.js to test that FB is enabled

* Updates necessary specs to check .invitation_only?

* Consistently uses invite_only_mode_or_no_enabled_auth_options
  - Updates all necessary places within the codebase to use
reverted method name, invite_only_mode_or_no_enabled_auth_providers
  - Updates #self.enabled to check ForemInstance.invitation_only?
rather than ForemInstance.private?
  - Reverts change to Facebook assertion within authenticationSection
e2e test

* Removes superfluous .to from authenticationSection.spec.js
2021-07-12 14:14:43 -06:00
Keshav Biswa
9e320afe78
Keep aria-label values static for post reaction buttons (#14211) 2021-07-12 15:46:43 -04:00
Suzanne Aitchison
904d9846a5
use userId in path, remove need to pass preview card id (#14171) 2021-07-12 13:09:12 +01:00
Keshav Biswa
f36459e880
Fix changing feed filters on mobile screen size (#14191) 2021-07-12 13:02:55 +02:00
Keshav Biswa
8e2e25fbb9
added aria-pressed values to reaction buttons (#14192) 2021-07-12 12:54:29 +02:00
Molly Struve
708fc9e2a1
Filter by user IDs when sending comment notifications (#14186) 2021-07-09 16:57:14 -05:00
Jamie Gaskins
c591ec811d
Arrange Datadog Redis integrations more usefully (#14185)
This commit solves two problems:

1. Redis cache usage is tracked under `redis-rpush` because they use the
   same Redis URL and `redis-rpush` overrides `redis`.
2. Sidekiq jobs can enqueue an unbounded number of other Sidekiq jobs.
   The instrumentation cost alone of enqueuing hundreds of thousands of
   other Sidekiq jobs can be prohibitive, similar to DEBUG-level
   logging. This commit wraps it in a conditional so it must be enabled
   explicitly and can be turned on and off at will without a code
   change.
2021-07-09 15:19:37 -04:00
Jamie Gaskins
b2f11547ae
Boost priority of queue stats worker (#14173)
* Boost priority of queue stats worker

We were missing stats for hours at a time this week because this worker
was blocked behind other jobs. We *especially* need stats when Sidekiq
is saturated, so this commit puts these stats at the highest priority.

The tradeoff should be minimal. These jobs take 6-30ms once every 10
minutes.

* Change queue in worker spec, as well
2021-07-09 09:28:43 -05:00
Jamie Gaskins
8b79eb8698
Only update GithubRepos once in RepoSyncWorker (#14175)
Touching the GithubRepo invokes GithubRepo#clear_caches, so calling
`update` and then `touch` calls `clear_caches` *twice*. This pulls it
back to calling it once.
2021-07-09 09:58:20 -04:00
Suzanne Aitchison
6a93ad914a
fetch preview card follow buttons in one network call (#14085)
* fetch preview card follow buttons in one network call

* when new comment is submitted, only fetch new comment status

* make sure individual button follow requests continue to init

* Add follow-user class to all follow user buttons via the application helper

Co-authored-by: mstruve <mollylbs@gmail.com>
2021-07-09 09:24:57 +01:00
Michael Kohl
41a36dd7d1
Add 'Work' profile field (#14106)
* Add 'Work' profile field

* Add DUS for migrating work data

* Make placeholder text more generic

* Update DUS to use worker

* Update worker

* Update spec/lib/data_update_scripts/migrate_data_to_work_field_spec.rb

Co-authored-by: Jamie Gaskins <jamie@forem.com>

* Update spec/lib/data_update_scripts/migrate_data_to_work_field_spec.rb

Co-authored-by: Jamie Gaskins <jamie@forem.com>

* Update spec/lib/data_update_scripts/migrate_data_to_work_field_spec.rb

Co-authored-by: Jamie Gaskins <jamie@forem.com>

* Update spec/lib/data_update_scripts/migrate_data_to_work_field_spec.rb

Co-authored-by: Jamie Gaskins <jamie@forem.com>

* Update spec/lib/data_update_scripts/migrate_data_to_work_field_spec.rb

Co-authored-by: Jamie Gaskins <jamie@forem.com>

* PR feedback

* Use before instead of before(:all)

Co-authored-by: Jamie Gaskins <jamie@forem.com>
2021-07-09 09:24:08 +07:00
Mac Siri
0a3a45a990
Add SocketError to GetMediaUrl's exception rescue (#14177) 2021-07-08 16:31:15 -04:00
Julien Maury
fb6e2e2311
add default text to follow button (#14165) 2021-07-08 09:44:17 -06:00
Molly Struve
e87dead7ad
Use new UserSetting and UserNotificationSettings and Ignore Related User Table Fields (#14121)
* schema file undelete description

* feat: v1 of the script

* Flesh out remaining enums under their categories

* complete UsersSettings data update script

* complete DUS for relevant attributes in users and profiles tables

* complete DUS for users_notification_settings

* alphabetize user_settings sql file

* safeguard against null values for "null: false" settings

* Set up actual UsersSettings DUS and specs files

* fix broken DUS script

* complete specs for UsersSetting DUS

* Address QA of specs

* complete specs for users_notification_settings DUS

* fix the typos (thanks Julianna!)

* begin implementation

* still building

* add missing attribute "email_membership_newsletter"

* complete sync code (except race condition for user profile)

* complete implementation, remains tests

* Address PR review and fix Travis fails

* remove superfluous Profile.new

* fix travis fails

* feat: update the users_notification_setting attributes from the user model

* feat: use the config fonts enums to display the fonts

* feat: loop through the keys

* fix profile = nil blowing up; add specs for notification_setting model

* remove unneeded spec

* remove feed validation until after sync code removed; fixes feed_import spec failures

* remove spec associated with feed_url validation in user_setting model

* fix failing spec 😅

* add TODO

* feat: set the user settings in the user controller  and use it in the customization form

* feat: move some update logic to the users settings controller thats being used from customization

* feat: show the updated values form the users_settingd and not the user instance

* Generalize redirect back to current tab

* still trying to reflect changed theme upon refresh

* customizations take effect on refresh

* remove 'with_feed' scope from user model

Co-authored-by: Jamie Gaskins <jamie@forem.com>

* start with takeover for fields previously in profiles table

* Takeover code for `publishing_from_rss` section in Settings (#13914)

* implement takeover code part 1

* implement takeover code

* fix feed fetch

* need rhymes help

* complete implementation; specs pending

* fix STUPID omission that caused so many headaches 😫

* implement profile fields pointing to users_settings 🎉

* run migrations

* implement inbox type & guidelines takeover code; specs pending (#13911)

* Point changes in notification settings to `users_notification_settings` table (#13910)

* implement takeover code; remains specs

* address PR feedback; remove related sync code

* address PR review feedback

* need help with routing and specs

* address pr review

* addressing pr review

* Treat implementation edge cases and omissions 😅

* fix uncommented comment

* fixing implementation cases

* address more PR review feedback

* fixing notifications use-cases

* refactor settings controller

* more pr review changes

* solving bugs

* fix broken onboarding

* handle eperience_level calls

* more fixes

* remove unneeded mappings

* add To-dos for quety updates

* remove done TODO

* purge done TODOs

* update notification_settings-related queries

* start fixing specs

* fixing specs

* fix notification and lrg_forem specs

* fixing broken specs

* still fixing

* fix line dif and remove reloads from user.rb

* run specs

* silence bullet and other fixes

* remove setting migration scripts and specs, fix more settings for specs

* handle missing user for article builder and fix notification specs

* fix some final controller specs and re-add incorrectly removed specs

* remove deprecated data update scripts and related workers, put travis back

* refactor admin tags mods controller, write/move specs for users notifications settings controller

* schema cleanup and other small refactors for consistency

* set field we can invalidate in spec via active record instead of at the db level

* remove I think an uneccessary hook call from subscribe_to_mailchimp_newsletter

* use bnefore_create to setup settings, please dont blow up the test suite

* mailchimp bot fix

* remove decorator in favor of single model method

Co-authored-by: Arit Amana <msarit@gmail.com>
Co-authored-by: Ridhwana <ridhwana.khan16@gmail.com>
Co-authored-by: Arit Amana <32520970+msarit@users.noreply.github.com>
Co-authored-by: Jamie Gaskins <jamie@forem.com>
2021-07-08 09:31:34 -05:00
Andy Zhao
3e425344ef
[15-min-fix] Add org id to admin listings form (#14162)
* Add organization ID to admin listings form

* Add local: true to form heh...
2021-07-08 09:23:10 -04:00
Julien Maury
fe3b2e767e
Fix HTML markup in article pages (#14130)
* fix wrong markup ul - use div instead

* fix inline styles on link tag

* fix markup button follow

* use button tag function - e2e

* fix e2e error with button_tag() undefined
2021-07-07 08:43:03 -06:00
Jeferson S. Brito
7978b440ec
Fix collections/series meta tags (#13772)
* Fix collections/series meta tags

* Remove twitter creator meta tag

* Remove canonical meta-tag
2021-07-07 07:17:39 -06:00
Nick Taylor
56bd0f9d2a
[15 min fix] Fixed regression for reverting changes in the article editor (#13365) 2021-07-07 08:30:36 -04:00
Suzanne Aitchison
16cec7d93d
[15 min fix] Add aria-current attribute to current dashboard link (#14128)
* add aria-current attribute to current dashboard link

* Update app/views/dashboards/_actions.html.erb

Co-authored-by: rhymes <github@rhymes.dev>

* Update app/views/dashboards/_actions.html.erb

Co-authored-by: rhymes <github@rhymes.dev>

* Update app/views/dashboards/_actions.html.erb

Co-authored-by: rhymes <github@rhymes.dev>

* Update app/views/dashboards/_actions.html.erb

Co-authored-by: rhymes <github@rhymes.dev>

* Update app/views/dashboards/_actions.html.erb

Co-authored-by: rhymes <github@rhymes.dev>

* Update app/views/dashboards/_actions.html.erb

Co-authored-by: rhymes <github@rhymes.dev>

* stub network request

* fix typo in stub

* always guard against lack of entries

Co-authored-by: rhymes <github@rhymes.dev>
2021-07-07 09:41:35 +01:00
dependabot[bot]
92c64c7143
Bump rubocop from 1.18.1 to 1.18.3 (#14144)
* Bump rubocop from 1.18.1 to 1.18.3

Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.18.1 to 1.18.3.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.18.1...v1.18.3)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

* Fix violations

* Commit pundit-matchers gemfile for build

Container builds failed because this was not checked in.
For some reason my Gemfile.lock relaxed the version restriction from
`~> 1.7` to `~> 1.6` but the resolved version is still 1.7.0

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: rhymes <github@rhymes.dev>
Co-authored-by: Dan Uber <dan@forem.com>
2021-07-06 15:36:35 +02:00
Michael Kohl
96cf8f90e0
[15-minute fix] Update password reset wording (#14125)
* Update password reset wording

* Update app/views/users/_account_set_password.html.erb

Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>

Co-authored-by: Ridhwana <Ridhwana.Khan16@gmail.com>
2021-07-05 09:33:51 +07:00
Mac Siri
84114694b9
Provide way to resend comfirmation email via log-in page (#14110) 2021-07-02 09:50:35 -04:00
Michael Kohl
83dc9408b6
Drop profile fields for static attributes (#14109)
* Drop profile fields for static attributes

* Update profile page with static field form

* Fix specs

* Update Cypress test
2021-07-01 14:30:40 -04:00
dependabot[bot]
816855ce3b
Bump rubocop from 1.17.0 to 1.18.0 (#14107)
* Bump rubocop from 1.17.0 to 1.18.0

Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.17.0 to 1.18.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.17.0...v1.18.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

* yarn install

* Fix violations

* Restore the default aligned setting

* Trigger Travis CI

* Escape HTML

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: rhymes <github@rhymes.dev>
2021-07-01 13:51:49 +02:00
Mac Siri
fb07a56879
Track Profile count in RecordDataCountsWorker (#14113) 2021-06-30 17:00:27 -04:00
Mac Siri
f4cf94d700
Change default value for saw_onboarding (#14105) 2021-06-30 14:03:42 -04:00
Julien Maury
0a4b26a804
HTML error fix - better urlencode share links (#14037)
Co-authored-by: rhymes <github@rhymes.dev>
2021-06-30 15:25:12 +02:00
Khadija Sidhpuri
695db6c77e
Bug Fix: Strikethrough markdown within a link is not rendered in live comments (#14103)
* fix: render strikethrough in comment links

* Revert changes to schema.rb
2021-06-30 14:34:00 +02:00
Michael Kohl
aa3a9f5314
[15-minute fix] Disable 'Locked Screen' prompt for public Forems (#14029)
* Disable 'Locked Screen' prompt for public Forems

* Fix spec

* Ensure Forem instance is private in Cypress tests
2021-06-30 10:09:38 +07:00