Commit graph

2303 commits

Author SHA1 Message Date
Vaidehi Joshi
5e6aad98e3
Replace MAX_USER_MENTIONS with Settings::RateLimit.mention_creation (#13736)
* Replace MAX_USER_MENTIONS with Settings::RateLimit.mention_creation

* Remove Vaidehi-specific TODOs

* Remove unnecessary constant stubs

* Remove rate_limit_mention_creation from SiteConfig
2021-05-12 08:16:38 -07:00
Vaidehi Joshi
8f0c24c167
Expand @-mention functionality to posts (#13367)
* Initial work for @-mention notifications from posts

* Revert article.published changes to article updater, add clarifying comments

* Extract article preview into reusable partial for notification views

* Clean up Article Updater

* Address + remove some FIXMEs

* Add a whole buncha specs for @-mention functionality in posts YAY

* Refactor create all spec to use shared examples, add clarifying comments

* Add guard clause to create all service

* Update new mention and notifiable action specs

* Some additional cleanup

* Add specs + shared examples to SendEmailNotificationWorker spec

* Use aggregate_failures where applicable

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

* Cleanup and address code review comments

* Add MentionDecorator + relevant specs

* Address comments/issues flagged by @rhymes

* Optimize plucking user_ids when checking for article followers

Co-authored-by: Michael Kohl <citizen428@dev.to>
2021-05-12 07:33:33 -07:00
Suzanne Aitchison
cdcb3b9be3
add accessibility section to editor guide (#13727)
* add accessibility section to editor guide

* Update app/views/pages/_editor_guide_text.html.erb

Co-authored-by: Jacob Herrington <jacobherringtondeveloper@gmail.com>

Co-authored-by: Jacob Herrington <jacobherringtondeveloper@gmail.com>
2021-05-12 10:19:34 +01:00
Jamie Gaskins
1649d14891
Pass a FlareTag instead of a string to URL.tag (#13732) 2021-05-11 12:10:42 -04:00
Jamie Gaskins
bcc42a130d
Sanitize tag urls (#13720)
* Sanitize tag URLs

For tags with non-ASCII names, we were generating busted URLs, which
would then cause errors. This commit fixes that particular error by
generating usable URLs.

* Use URL generator that will sanitize tag names

* Remove path prefix when using a URL generator
2021-05-11 11:21:03 -04:00
Michael Kohl
111b7316d9
Remove mascot footer image (#13642)
* Remove footer mascot image

* Move remaining mascot settings back to SiteConfig

* Add data update script

* Update usages

* Fix path

* Remove dead route

* Update tests

* Fix view and spec

* Fix e2e test

* Fix DUS
2021-05-11 13:55:18 +02:00
Suzanne Aitchison
783fb6fa24
Accessibility enhancements to navigation tabs (#13559)
* update storybook example and docs

* update desktop home feed tabs with a11y enhancements

* update storybook to reflect buttons usage, update post editor buttons

* update admin html variants tabs

* update admin sponsorships tabs

* re-add flex to the crayons-tab class to prevent regression in tab components not updated

* Revert "update admin sponsorships tabs"

This reverts commit d9e4a5e4b0d362e38a11c795b35ceb4442bc4d90.

* Revert "update admin html variants tabs"

This reverts commit 3d9f119e88dc2f2f102d664c57a1f56413490a36.

* update search tabs

* update v2 form erb html

* update tag index tabs

* update notifications tabs

* label the notifications nav

* update mod sidebar tabs

* update main analytics page tabs

* add cypress tests for home feed tabs

* add tab tests for the post editor

* add cypress tests for tags index navigation

* fix UI issue with search tabs, add search cypress tests

* add tests for the analytics dashboard tabs

* add mod nav tests

* add notifications navigation tests

* get new handles after view switch

* replace hardcoded mod paths

* apply review suggestions
2021-05-07 15:24:34 +01:00
Siddharth
f669907a8f
Updated replit url from repl.it to replit.com (#13680)
* Updated replit url from repl.it to replit.com

* Changed repl.it to replit

* Changed repl.it to replit
2021-05-07 08:00:45 -04:00
Siddharth
5462e0a1f9
Update badge CSS (#13659) 2021-05-07 10:47:25 +02:00
rhymes
cf9f6094cd
Have specs run without Redis and refactor ConsumerApp and Device (#13647)
* Add fakeredis gem

* Mock Pusher::PushNotifications in specs

* Remove Redis from Travis

* Add Android tests to ConsumerApp specs

* Use mock for push notification tests and refactor ConsumerApp and Device code

* Fix remaining broken specs

* Use symbols

* Cleanup rpush helpers

* Pusher::PushNotifications is no more

* Use human friendly platform in Admin::ConsumerApps index page
2021-05-07 08:03:16 +02:00
Daniel Uber
d7f9a18199
Clarify article link copy title (#13682)
Incorporating aitchiss's suggestion from https://github.com/forem/forem/pull/13668/
2021-05-06 09:04:14 -05:00
Thomas Bnt
7ad3aeb7ac
Edited the title on id="article-copy-link-input" (#13668) 2021-05-06 08:19:58 -05:00
Andrew Bone
38214380dd
Fix a bug with moderator dropdowns and add aria tags (#13623) 2021-05-06 07:56:28 -04:00
Andy Zhao
ebbbcee41a
[15-min-fix] Remove badge slug field b/c auto-gen by title (#13649)
* Make explicit that badge slug is auto generated

* Remove slug from new form

* Remove unused disabled form field

* Remove link and Crayonsify form

* Add badge's path
2021-05-05 13:49:43 -04:00
Andy Zhao
9970b1c2d5
Auto generate profile image for email signups (#13635)
* Add required tooltips and asterisks to fields

* Generate profile image for email signups

* Use be over eq

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

* Use path helpers over hard-coded paths

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

* Add labels to make it more accessible

* Stub it all... eek

* stub some more stuff

* stub stub stub

* Move aria label to proper label and fix tests

Co-authored-by: Michael Kohl <citizen428@dev.to>
2021-05-05 12:08:24 -04:00
Fernando Valverde
121603a44b
Replace Pusher Beams with Rpush PN delivery ✂️ ✂️ (#13588)
* Remove feature flag

* Remove Pusher Beams implementation

* Remove Pusher Beams require from initializer

* Adds consumer apps to sidebar + consider :admin_restructure

* Fix routes + PN target URL

* Remove old file that sneaked in

* Adds docs

* docs tweaks

* Apply suggestions from code review

Co-authored-by: rhymes <rhymes@hey.com>

Co-authored-by: rhymes <rhymes@hey.com>
2021-05-05 08:37:20 -06:00
Ridhwana
355d510f88
refactor: inline the ERB template instead of passing via a data-path (#13657) 2021-05-05 16:00:39 +02:00
Michael Kohl
aee05b4597
Retain registration form data on failed submission (#13614)
* Retain registration form data on failed submission

* Remove unnecessary command

* Apply suggestions from code review

Co-authored-by: Suzanne Aitchison <suzanne@forem.com>

* Fix e2e test

Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
2021-05-04 10:52:20 +07:00
Jacob Herrington
198f778b32
Rename profile header partial (#13639)
This partial is not actually rendered on the user profile, it is only
used by organizations. Moving it to the directory where other
organization-specific partials live!
2021-05-03 18:36:24 -05:00
Suzanne Aitchison
ef70d1f92b
fix accessible names of sign up options (#13620) 2021-05-03 11:06:45 -07:00
Jacob Herrington
bb9780ff3d
Remove references to social link profile fields (#13252)
* Remove references to social link profile fields

* Add some dummy data

* Remove special display social links

* Remove unnecessary tests

* Add tests for profile social icons

* PR feedback

* Remove nil check from erb

* Move view method into helper

* Don't render links in user settings
2021-05-03 10:16:02 -05:00
Ridhwana
ba5c97de50
RFC 50 - Remove old admin routes and related code (#13579)
* chore: remove current_admin routes file

* feat: move all the admin routes into the admin file

* chore: remove conditionals for the sidebar and tabbed navbar

* remove some more notes where we use the admin_restructure feature flag

* chore: amend the tests now that the old routes and the admin_restructure flag are removed

* chore: remove more references to the  admin_restructure flag

* chore: fix the tests

* chore: remove sidebar_spec

* chore: add slash back

* chore: comment it out for now whilst I try and figure out why its not passing
2021-05-03 16:03:38 +02:00
Michael Kohl
c5598816ac
[15 minute fix] Remove secondary logo (#13595) 2021-05-03 09:35:10 +07:00
Suzanne Aitchison
1868537294
fix some landmark issues in listings (#13602) 2021-04-30 18:34:27 +02:00
Jacob Herrington
69f4c039da
Add href for open reports (#13592) 2021-04-30 09:07:24 -05:00
Ridhwana
320eb86dc2
RFC 50: Interaction tweaks (take two) (#13576)
* feat: add the collapse style css + a script for the intercepting the bootstrap event

* chore: remove old code

* Add some guards for missing elements and simplify show/hide collapse interaction

* Update app/assets/stylesheets/admin.scss

Co-authored-by: rhymes <rhymes@hey.com>

Co-authored-by: rhymes <rhymes@hey.com>
2021-04-30 13:01:55 +02:00
Michael Kohl
3837c3a221
Refactor handling of mandatory settings (#13553)
* Refactor handling of mandatory settings

* Add e2e test

* Rename controller
2021-04-29 09:25:16 +07:00
Ridhwana
b027a0c342
fix: change aria-page to aria-current (#13558) 2021-04-28 21:33:29 +02:00
Jacob Herrington
c6d3628480
Remove empty file from version control (#13551) 2021-04-28 10:03:32 -05:00
Michael Kohl
1c7de11bef
Split Settings::UserExperience (#13495)
* Add Settings::UserExperience

* Add DUS

* Update usage

* Add controller

* Add e2e test

* Fix specs
2021-04-28 13:29:25 +07:00
Suzanne Aitchison
6f4382719e
add skip link to connect and manage post (#13503) 2021-04-27 10:01:24 +01:00
Ridhwana
9db98d3031
chore: change aria:true to aria: hidden (#13515) 2021-04-26 19:30:04 +02:00
rhymes
23c661bb0a
Cleanup markup of editor guide (#13491)
* Improve HTML markup

* Implement some a11y changes

* Update app/views/pages/_v1_editor_guide_preamble.html.erb

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

Co-authored-by: Nick Taylor <nick@forem.com>
2021-04-26 18:44:18 +02:00
Ridhwana
c5bcb4c021
RFC 50: fix some more hardcoded paths (#13473)
* fix: remove hardcoded paths

* fix: use path helpers

* swap href for link_to

* feat: use path helpers

* feat: use a data path to send through the path that we will be calling

* feat: pass route through to js

* dus index path

* chore: change to use path_helpers

* feat: update DUS controller

* chore: oops remove these paths
2021-04-26 17:49:54 +02:00
Michael Kohl
610f6151e6
Split Settings::Community from SiteConfig (#13403)
* Add settings_community_contents model

* Add settings_communities model

* Update usage

* Add controller and update code

* Add e2e test

* Add data update script

* Update schema.rb

* Fix specs

* PR feedback

* Remove experience_* from Settings::Community

* Update spec

* Fix spec
2021-04-26 10:46:35 +02:00
Michael Kohl
f2f5e911cf
Add Settings::Mascot (#13451)
* Add Settings::Mascot

* Add DUS

* Update usage

* Fix e2e test and controller

* Fix specs

* Fix remaining spec
2021-04-26 11:39:19 +07:00
Michael Kohl
62542a35ab
15 minute fix: Remove /partnerships page ✂️ (#13480)
* Remove partnerships

* Remove dead link
2021-04-26 08:44:53 +07:00
Molly Struve
73973d3941
Refactor:Remove jobs_url and Dispaly Banner (#13479) 2021-04-25 12:59:54 -05:00
Fernando Valverde
affc704c9b
Runtime Banner for Mobile Deep Linking (#13190)
* First version using custom schemes for iOS

* Starting to take shape with /r/mobile redirect page

* Wording and aasa

* Adds e2e tests

* Trigger CI

* Tweaks to AASA

* Uses external pivot domain to trigger Universal Links

* Add missing external domain deep link

* Fix test by enabling runtime_banner only in E2E tests

* Fix URL encoding mismatch in Cypress test

* banner sttyling

* Cleanup unrelated changes

* Add AASA tests + remove lingering Gemfile.lock changes

* Fix cypress test

* Remove unnecessary window global assignment

* Trigger Travis

* Replace querySelectorAll with querySelector

* Apply suggestions from code review

Co-authored-by: Vaidehi Joshi <vaidehi.sj@gmail.com>

* Refactor inline comments, extract URL.deep_link logic and other review feedback

* Small tweaks

* Remove untrusted user-provided redirect (CodeQL suggestion)

* Fix failing tests

* Whoops - another test fix

* Use Forem's UDL server

* Extract timeoutDelay and add comment clarifying

* Add target='_blank' to deep link

* Add TODO comment for replacing hardcoded identifiers

* Apply suggestions from code review

Co-authored-by: Suzanne Aitchison <suzanne@forem.com>

* Add a11y attributes

Co-authored-by: Paweł Ludwiczak <ludwiczakpawel@gmail.com>
Co-authored-by: Vaidehi Joshi <vaidehi.sj@gmail.com>
Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
2021-04-23 15:45:34 -06:00
Suzanne Aitchison
ee106c5fb0
add skip link to settings page (#13488) 2021-04-23 20:42:36 +02:00
Suzanne Aitchison
2447bc3a40
add skip link to stats and analytics pages (#13487) 2021-04-23 16:17:23 +01:00
Suzanne Aitchison
b075c3c94a
make sure custom pages have skip link functionality (#13483) 2021-04-23 16:10:51 +01:00
Suzanne Aitchison
9a693d3ac6
add skip link to tag page (#13485) 2021-04-23 16:10:28 +01:00
Suzanne Aitchison
3b6574dd44
add skip link to search results page (#13486) 2021-04-23 16:10:07 +01:00
Suzanne Aitchison
ee66e4cf7d
[15 min fix] Fix following tags input a11y errors (#13425)
* fix following tags input a11y errors

* give hidden inputs unique ids

* update html element code in initScrolling, update test with new ids

* refactor

* trigger travis

* target the textfield inside the div in the test
2021-04-23 14:40:02 +01:00
Nick Taylor
a55943d2b6
Removed title attributes from SVGs that are purely decorative. (#13482) 2021-04-23 14:59:58 +02:00
Nick Taylor
90da6355dd
[15 minute fix] Fixed issue with member navigation button only working after full page loads but not InstantClick page transitions (#13402) 2021-04-23 08:06:56 -04:00
Fernando Valverde
e602d50d32
Push Notification multi app support (#13304)
* PushNotificationTarget model + /admin/push_notifications (index)

* Admin panel CRUD + request tests

* Migrate Redis backed Rpush model responsibilities into PushNotificationTarget

* Fix failing specs

* Fix conflicts + clean up test by using constant reference

* Removed unused policy

* policy + services + misc feedback

* PushNotificationTarget refactored to AppIntegration

* Review feedback

* Some small cleanup

* Refactor AppIntegration -> ConsumerApp

* Fixing specs

* Trigger Travis

* More naming refactor changes

* Refactor services into queries

* Revert to where(...).first, fix typo and tests

* Apply suggestions from code review

Co-authored-by: rhymes <rhymes@hey.com>

* PR review feedback - create_or_find_by, validations, renaming + more tests

* Fix aria-label text

* Remove unnecessary individual index - composite index will do

Co-authored-by: rhymes <rhymes@hey.com>
2021-04-21 17:13:01 -06:00
Michael Kohl
28dd50e718
Create settings model for rate limits (#13381)
Co-authored-by: rhymes <rhymes@hey.com>
2021-04-20 11:29:22 +07:00
Daniel Uber
2f1dad4e37
Add reading_time to articles api responses (#13446)
* Add reading_time to articles api responses

Fixes #13436

* Update api docs to match changes to the articles response

* Follow up docs updates

- increment api docs version
- add reading_time to articles/me responses
- add reading time to the show response example format

* Change reading_time attribute to reading_time_minutes

Update the article builder to use `article.reading_time` and present
it as `"reading_time_minutes"`.

Update the api spec to expect the new property name instead of the attribute.

* Update api documentation to reflect the new name

- Change reading_time -> reading_time_minutes.
- I decided to keep the (possibly redundant) description text here.
2021-04-19 17:11:55 -05:00