Commit graph

6285 commits

Author SHA1 Message Date
Nick Taylor
32e1b3f228
Removed colour picker from onboarding as it's never used. (#16491) 2022-02-09 06:17:16 -05:00
lionel-rowe
f72e60b15d
Add color-scheme: dark to dark.css (#16493) 2022-02-09 08:52:46 +01:00
Ben Halpern
84379574d5
Feed experiment 6: recency (#16438)
* Feed experiment 6: recency

* Update app/services/articles/feeds/weighted_query_strategy.rb

Co-authored-by: Michael Kohl <me@citizen428.net>

* Update app/services/articles/feeds/weighted_query_strategy.rb

Co-authored-by: Michael Kohl <me@citizen428.net>

Co-authored-by: Michael Kohl <me@citizen428.net>
2022-02-08 15:01:18 -05:00
Jeremy Friesen
d19dad3b28
Ensuring optionally rendering dashboard listings (#16467)
Relates to forem/rfcs#291, #16420, #16437, #16423, and #16461.
2022-02-08 13:41:22 -05:00
Jamie Gaskins
5d00a4d967
Show image-upload errors on /admin/advanced/tools (#16448)
* Show image-upload errors on /admin/advanced/tools

* Simplify error handling

This also makes the error message consistent with the rest of the admin
validation errors, so it's probably better even if it doesn't look as
flashy.

* Remove obsolete clearTimeout call

We aren't setting this timer anymore
2022-02-08 10:41:54 -05:00
Daniel Uber
39c5bcd518
remove activex fallback for internet explorer (#16453)
* remove IE6 XHR support

IE7 and later support XMLHttpRequest natively, and most of the rest of
the code base uses fetch() which may not work in any version of IE

Drop the conditional here in the assumption that this would only be
the first of many problems for a user with an unsupported browser.
2022-02-08 08:36:04 -06:00
Jeremy Friesen
2fd94fcc87
Ensuring that body.dataset is JSON parsable (#16441)
Prior to this commit, if our community name included a `"` we would
encounter a parse error.  Using the [j][1] which is a terse alias for
[escape_javascript][2], we will now be escaping those characters that
cause grief in some of our parsings.

I believe there is a larger audit that needs to occur regarding all
`data-` renderings.

Hopefully this will catch a flakey test.

Closes #16440

[1]:https://api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html#method-i-j
[2]:https://api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html#method-i-escape_javascript
2022-02-08 07:30:43 -05:00
Arit Amana
2842bc68d6
Implement Unified Embeds for Github Repo, Issue, Pull-Request and Comment URLs (#16422)
* figuring things out

* working both ways for issues PRs except disc and PRreview

* working on repo urls

* complete implementation and check specs

* resolve Travis failures

* resolving travis failures

* Fix VCR cassette

* fix regexs

Co-authored-by: Jamie Gaskins <jgaskins@hey.com>
2022-02-07 16:38:43 -05:00
Arit Amana
63c957b12d
Implement Unified Embeds for StackExchange and StackOverflow URLs (#16415)
* complete implementation and add specs

* improvements

* more robust condition

* update API version; re-record VCR cassettes

* PR review comments
2022-02-07 11:21:11 -05:00
Mac Siri
0559a808c4
Allow nil pubDate in Podcast sorting (#16349)
* Allow nil pubDate in Podcast sorting

* Choose a shorter syntax

* Typo
2022-02-07 11:18:51 -05:00
Jeremy Friesen
30a894a6eb
Removing deprecated User methods (#16435)
* Removing deprecated User methods

Related to #15762, #15691, and #15624

* Bump for travis
2022-02-07 10:32:58 -05:00
Suzanne Aitchison
8a14504a8e
Add accessible color picker component (#16385)
* add colorpicker component

* add tests

* separate out label, change swatch border
2022-02-07 14:30:02 +00:00
Jeremy Friesen
446e74ca83
Documenting and addl testing FeatureFlag.enabled? (#16420)
Prior to this commit, we had a single test for `FeatureFlag.enabled?`,
namely that it delegates to `Flipper.enabled?`.  This commit adds some
tests to both verify behavior and communicate to developers the
intentions of the related methods:

- `FeatureFlag.enabled?`
- `FeatureFlag.accessible?`

My hope is the documentation and tests will help address the horrors
mentioned in conversation in #16416:

> I have lived the horrors of having a feature flag accidently
> flipped or incorrectly setup in the first place and half baked
> functionality going live.

Note: I'm not proposing that we test other `Flipper` methods, but
instead to ensure that we're testing and documenting the behavior of
what I believe to be the two primary mechanisms of "putting something
behind a feature flag."

Related to #16406, #16416
2022-02-07 08:53:30 -05:00
Jamie Gaskins
a9cdb2bae2
A suspended user returns 403 instead of 500 (#16408) 2022-02-04 09:42:23 -05:00
Nick Taylor
52e4e571b7
Reworked some webpack aliases as prework for #16174. (#16412) 2022-02-04 06:34:37 -05:00
ludwiczakpawel
baa4ea1ed0
Applying Crayons to Content Manager pages (#16375)
* .

* comments

* .

* badges new

* edit podcasts

* edit badges

* whoops

* fixes

* like

* like
2022-02-04 09:31:59 +01:00
Suzanne Aitchison
e8154fb19c
Copy organization secret code to clipboard (#16358)
* init copy to clipboard functionality for org secret code

* add cypress test

* woops
2022-02-04 08:22:03 +00:00
yheuhtozr
e45536af37
app/models i18n (#16124)
* app/models etc i18n

* delete ja.yml

* fix for PR review

* fix for spec

* delete ja.yml

* fix for spec updated
2022-02-03 13:41:42 -05:00
yheuhtozr
c4778d832e
app/controllers & decorators i18n (#16126)
* app/controllers (& decorators) i18n etc

* tidy key names

* update keys

* delete ja.yml

* delete an involved ja.yml

* fix for PR review

* fix for spec

* delete ja.yml
2022-02-03 13:35:56 -05:00
Suzanne Aitchison
3454750ad3
Place gifs correctly regardless of center tag (#16404)
* place gifs correctly regardless of center tag

* typo

* make sure the same gif src can be used twice in a post

* approach in css
2022-02-03 15:44:44 +00:00
Michael Kohl
a1eb6358db
Easier feature flag handling for Cypress (#16379)
* Add RailsEnvConstraint for routes

* Add feature flags API

* Add Cypress commands

* Add show action, update commands, add e2e test

* Update cypress/integration/seededFlows/toggleFeatureFlags.spec.js

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

* Move helper from command to test file

* Update documentation

Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
2022-02-03 10:42:13 -05:00
VISHAL DEEPAK
14a945326d
Add boolean attribute main_image_from_frontmatter to indicate if cove… (#16075)
* Add boolean attribute main_image_from_frontmatter to indicate if cover image was set via frontmatter

* use article model spec for main_image_from_frontmatter test cases

* Add data migration script and spec for main_image_from_frontmatter for articles

* Update app/models/article.rb

Co-authored-by: Jeremy Friesen <jeremy.n.friesen@gmail.com>

Co-authored-by: Jeremy Friesen <jeremy.n.friesen@gmail.com>
Co-authored-by: Michael Kohl <me@citizen428.net>
2022-02-03 09:16:48 -05:00
Suzanne Aitchison
a168f0c85a
Change UI instances of "vomit" to "flag" (#16397)
* change UI instances of vomit to flag

* update spec

* verify tests against i18n string
2022-02-03 12:22:32 +00:00
Fernando Valverde
b1c0a8d631
Add special case for DEV Android app (#16382) 2022-02-02 15:25:14 -06:00
ludwiczakpawel
e9343e2794
Applying Crayons to some Customization pages (#16383)
* display ads

* nav links

* .

* Update app/views/admin/navigation_links/_add_navigation_link_modal.html.erb

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

* spec

* spec

* whoops

Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
2022-02-02 21:33:12 +01:00
Suzanne Aitchison
1b98b03bde
Allow users to pause gifs in a post (#16314)
* working POC

* refactors and styling

* add some comments

* css tweaks to keep sizes in step

* add cypress test

* comment added to css
2022-02-02 13:45:55 +00:00
Jeremy Friesen
b4b1212a33
Adding conditional rendering of navigation links (#16362)
Prior to this commit we had an inline logic check on whether or not to
render a navigation link.  As we are looking to rollout the feature flag
for Listings, we needed to add another somewhat complex conditional.

This commit moves the inline conditionals to a helper function, which
makes testing the logic far easier.  Especially since we need to bombard
the tests with the combination of 3 different boolean checks.  (And one
of those boolean checks requires even more but could be stubbed).

There should be no UI differences, as we're presently assuming the
Listings feature is enabled.

Related to forem/rfcs#291
2022-02-01 12:23:58 -05:00
Arit Amana
2a56c19d86
Implement Unified Embeds for Glitch URLs (#16378)
* modify GlitchTag for Unified Embed

* complete implementation and add specs

* escape dots in regex; change capture group name

* address PR review comments

* rubocop fixes

* update comment

* pr review changes

* nudge Travis

* nudge Travis
2022-02-01 12:01:26 -05:00
Jeferson S. Brito
4f67acf016
Fix text color on user confirmation alert message (#16131) 2022-02-01 10:29:53 +00:00
Suzanne Aitchison
f1864847e7
Make home link an admin-customisable navigation link (#16268)
* move home link to a customisable navlink

* add trailing slash for path

* update specs

* replace positions, set home link to -1

* add update script for adding home navigation link

* update data update script
2022-02-01 09:27:09 +00:00
Julianna Tetreault
8d00e27b69
Remove Creator Onboarding Feature Flags from Codebase (#15982)
* Removes FeatureFlag.enabled?(:creator_onboarding) from codebase

* Removes FeatureFlag.enabled?(:creator_onboarding) from specs

* Further cleanup, removal, and spec fixes

* Fixes the user_request_confirmation_spec.rb

* Reverts change to confirmation email button

* Revert revert after looking at designs again :(

* Removes redundant logo_png field from config + fixes test

* Rewords an expectation in user_uses_the_editor_spec.rb

* Revert removal of logo_png from Config images

* Removes CSS class from user_uses_the_editor_spec.rb

* Removes test from user_uses_the_editor_sepc.rb

* Removes unnecessary else from _logo.html.erb

* Adds back removed system spec

* Removes SVG-related code from _logo.html.erb

* Removes AsyncInfoController#use_creator_onboarding

* Fixes spec failues due to removed code

* Removes svg-related code (that I thought I removed already :/ )

* Re-removes FeatureFlag and logo_svg from _images.html.erb

* Remove newest instances of FeatureFlag(:creator_onboarding)

* remove instances where we use the creator_onboarding field from the base_data

* fix: redirect to the correct path in the reguistrations controller based on whether the user is a creator or not

Co-authored-by: Ridhwana <ridhwana.khan16@gmail.com>
2022-01-31 11:30:43 -07:00
Julianna Tetreault
534f20bdfc
Replaces the vomit emoji with the inspector emoji across Admin (#16363) 2022-01-31 09:53:10 -07:00
Muhammed Cetin
13540aad86
Disallow additional pages in robots.txt (#16350)
* Unnecessary pages have been disallowed to index by search engines on robots.txt

* Unnecessary pages have been disallowed to index by search engines on robots.txt

* Necessary pages have been added back to the robots.txt.
2022-01-31 11:46:44 -05:00
ludwiczakpawel
df34cbbd7e
Admin layout update (#16345)
* .

* Brand colors

* Update app/views/layouts/admin.html.erb

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

* another label change

* Update app/views/layouts/admin.html.erb

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

Co-authored-by: Nick Taylor <nick@iamdeveloper.com>
Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
2022-01-31 11:53:46 +01:00
Ben Halpern
96a935ffec
Add new cases for reaction weights to lead to more effective rankings (#16138)
* Base author reaction functionality

* Get logic more in place

* Finalize tests

* Add admin clause for new user points

* Add proper registered_at for seeded user

* Fix regsitered_at in e2e

* Add registered_at across the board in e2e tests

* Update comments

* Update spec/models/reaction_spec.rb

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

* Update spec/models/reaction_spec.rb

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

* Update spec/models/reaction_spec.rb

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

* Put points in constant and refactor points resave logic

Co-authored-by: Jamie Gaskins <jamie@forem.com>
2022-01-28 12:28:18 -05:00
Jeremy Friesen
77d9640e3e
Initial statement of intent regarding Listings (#16335)
* Initial statement of intent regarding Listings

I want to use this pull request as a means of conveying intended
direction; namely that we want Forem administrators to be able to toggle
off (or on) the Listing feature set.

This refactor is a first, yet incomplete pass, that doesn't make the
code worse.  Expect more of a similar vein as we work to put the Listing
feature set behind a feature flag.

Related https://github.com/forem/rfcs/issues/291

* Adding feature flag based on reviewer comment
2022-01-28 10:07:06 -05:00
Dwight Scott
077ce36fb4
Added search feature to tags index to search all tags (#16292) 2022-01-28 08:00:11 -05:00
ludwiczakpawel
1abf02d94b
Generator updates (#16339)
* generator

* mod tools update
2022-01-28 12:20:30 +01:00
Michael Kohl
914b984e9b
Use perform_bulk in Podcasts::EnqueueGetEpisodesWorker (#16325) 2022-01-28 11:32:25 +07:00
Michael Kohl
30d2ec6220
Use peform_bulk in Podcasts::Feed (#16324) 2022-01-28 10:16:07 +07:00
Michael Kohl
0d2e05857d
Use peform_bulk in Article#before_destroy_actions (#16326) 2022-01-28 10:09:51 +07:00
Julianna Tetreault
48c1942e76
Removes redundant Verify Email Ownership button (#16340) 2022-01-27 16:11:29 -07:00
Daniel Uber
9f79c92563
Cap tag point sum to 10 (#16342)
* Cap tag point sum to 10

We only have 0..9 configured for cases to consider, treat all "large"
numbers as 10, since it will follow the same path in the weighting.

Use least(value, ...) to cap this. See https://www.postgresql.org/docs/11/functions-conditional.html#FUNCTIONS-GREATEST-LEAST

Fixes https://github.com/forem/forem/issues/16341

* UPCASE sql keywords to distinguish from column or table names
2022-01-27 16:22:49 -06:00
Jeremy Friesen
0484c550c5
Create/update by NavigationLink identity (#16312)
Prior to this commit, we were treating all NavigationLink attributes as
unique.  So, were we to change a position of one of the NavigationLinks
during the add_navigation_links rake task, we would have created a new
NavigationLink (and the only one would have remained).

With this commit, we're introducing the concept of the NavigationLink's
surrogate identity, that is to say if we have two NavigationLink objects
with the same `url` and `name` we should consider them the same
NavigationLink.  This allows us to update properties of those
NavigationLinks (via the rake task) without the risk of creating new
entries.

This unblocks PR #16268 which addresses #16076.
2022-01-27 13:51:41 -05:00
Ben Halpern
1ae10d7e6f
Remove hardcoded /badge page that is DEV-only ✂️✂️✂️ (#16303)
* Remove hardcoded /badge page that is DEV-only

* Remove /badge test

* Remove scheduled job
2022-01-27 13:29:05 -05:00
ludwiczakpawel
c9ef2ac15c
Modals fixes (#16310)
* .

* dark

* simplify and add stories

* update stories and docs

* fix
2022-01-27 16:24:23 +01:00
ludwiczakpawel
188877a865
Crayons: Pills component (#16271) 2022-01-27 15:34:03 +01:00
Jeremy Friesen
a83e87372c
Favor tag sort by count over hotness (#16322)
The hotness score is an "opaque to our users" score, it reflects
"activity" on the tag.  However, by also showing the number of tags on
the associated view, there's a bit of a head scratcher when a "hotter"
tag with less tags is rendered ahead of a popular tag.

Closes #16321
2022-01-27 07:19:05 -05:00
Jeremy Friesen
fa8b55117d
Ensuring we fetch latest podcasts by pubDate (#16319)
* Ensuring we fetch latest podcasts by pubDate

Prior to this commit, we fetched the podcasts that were the first(:limit)
XML `item` nodes in the RSS feed.  Some folks might choose to list those
in descending pubDate order, while others list in ascending pubDate
order.

Closes #3580

* Bump for travis
2022-01-27 07:15:28 -05:00
Michael Kohl
60639bcb71
More ListingsToolkit refactoring (#16221) 2022-01-27 09:47:41 +07:00