Commit graph

142 commits

Author SHA1 Message Date
Michael Kohl
c4a05587f9
User color fields in admin (#10875) 2020-10-16 10:37:16 -04:00
Ben Halpern
0e712f77b0
Add all new functionality for trusted (#10816) 2020-10-15 17:00:49 -04:00
Molly Struve
f39219e6e5
[deploy] Optimization:Break up SiteConfig Updates by Groups (#10851) 2020-10-14 15:33:33 -05:00
Lisa Sy
36e271e1cb
Deprecate old button stylings with Crayons buttons (#10694) [deploy]
* Deprecate old buttons.scss file

* Replace outdated button styles with Crayons button styling

* Update additional views after removing old button styling

* Update tests

* Update test

* Update test

* Fix button placements
2020-10-14 07:28:41 -07:00
Lisa Sy
3377b5b69e
Update [authentication] in /admin/config (#10748)
* Write up new accordion view in markup

* Add inline SVG and edit padding of form

* Fix padding

* Remove extraneous buttons for current draft
2020-10-13 16:43:29 -04:00
Molly Struve
7ce3b8abd2
[deploy] Feature:Add Video States Encoder Key to SiteConfig (#10818) 2020-10-13 12:14:07 -05:00
Ridhwana
9e8ce4569e
SVG logo image re-sizing (#10826)
* feat: add some heights and widths on the logo svg so any svg can be resized to fit in the header

* chore: show a realistic view of the logo as per the header
2020-10-13 17:41:31 +02:00
Julianna Tetreault
cb93197d43
Fixes "Invite Flow" 404s for Unregistered Users (#10743) [deploy]
* Add conditional to display "<username> is not registered" or Admin User profile in /admin/show.html.erb
  -Displays a "<username> is not registered" message for unregistered users
  -Displays all linked usernames and Admin User info for registered users

* Adds tests around unregistered users Admin User profiles

* Use predicate method in all conditionals in /admin/users/show.html.erb

* Adjusts message alerting admins that a user has not accepted the invite yet
  - Makes the message displayed on the Admin User prof more explicit
  - Makes GETS singular instead of plural in invitations_spec.rb
  - Updates users_spec.rb to test against updated message
2020-10-13 07:53:29 -06:00
Jacob Herrington
54db91bb4b
Add input validation for sidebar tags (#10822) 2020-10-13 08:39:46 -05:00
Ridhwana
66b14fc0bf
[deploy] Dynamic frontend for the sidebar navigation Items (#10754)
* feat: configure the frontend for sidebar nav links

* chore: add a comment

* changes to the admin interface

* feat: move the temporary task to be in the rake tasks and use it in the dev seeds

* feat: use the task in the rake seeds

* refactor: reuse the form across two modals

* refactor: use the form partial

* feat: change the modal to be large

* fix: naming

* Update db/seeds.rb

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

* chore: make the file readable

* chore: removed the if else as the rake task was run on all forems + i sent out a message to new communities

* oops

* refactor: add a scope

* chore: oops removed this

* feat: add navigation links specs

* spec: fix two failing ones

Co-authored-by: Michael Kohl <me@citizen428.net>
2020-10-12 16:05:47 -04:00
Arit Amana
f4bd1df21c
[Email/Password Authentication] Allow Admins to enable email/password login (#10745)
* Implement Admins ability to allow email login

* Write specs for admin allow email login

* Fix specs causing builds to fail

* Fix spec causing builds to fail

* Use dummyimage.com for spec images

Co-authored-by: Josh Puetz <joshpuetz@gmail.com>

* Use dummyimage.com

* refactor setting of SiteConfig attributes

* Address PR review comments

* fix indentation

* Use "allow to receive and return" approach for other specs

Co-authored-by: Josh Puetz <joshpuetz@gmail.com>
2020-10-12 12:54:35 -04:00
Jacob Herrington
c37b283865
Allow Forem admins to enable an invite only mode. (#10758)
* Add invite only mode field to SiteConfig

* Add UI elements for invite only mode
2020-10-12 11:27:22 -04:00
Andy Zhao
6c20a70aef
[deploy] Add recaptcha keys to as site-configurable keys (#10736)
* Add recaptcha keys to as site-configurable keys

* Add recaptcha to site config view

* Use site config key

* Make ReCAPTCHA tag optional if keys are blank

* Use proper capitalization of recaptcha

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>

* Refactor logic for readability

* Use proper capitalization of recaptcha

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>

* Use proper capitalization of recaptcha

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>

* Use proper capitalization of recaptcha

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>
2020-10-08 17:16:00 -04:00
Vaidehi Joshi
c4efee10bf
Do not require meta_keywords to be set (#10721)
* 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
2020-10-08 10:51:25 -04:00
Ridhwana
19c78d6072
[deploy] Prepare the database for the configurable navigation items (#10662)
* feat: add the order of the navigational items to the database + admin interface

* refactor: rename :display_when_signed_in to :display_only_when_signed_in

* chore: rename all instances of display_when_signed_in to display_only_when_signed_in

* feat: add a data script that will setup the base urls

* feat: add a temporary rake file that will allow us to seed prod db's

* chore: oops rename file

* chore: remove the index for now

* chore: remove validation

* feat: change the order field to position and add an index o the name and url

* feat: update everything that uses order to position

* refactor: order by name as a secondary attr
2020-10-07 11:20:32 -04:00
Jacob Herrington
c53522a8a8
Remove random onboarding background images (#10683)
* Fix misleading alt tags

* Make random fallback images optional
2020-10-07 10:19:18 -04:00
Julianna Tetreault
0a5babc10e
Add Recent Reactions to the Admin Users' Page (#10680)
* Adds Recent Reations back to the Admin Users page...UGH rebasing :(
  - Render negative_reactions partial in admin/edit.html.erb
  - Add #set_related_reactions back to Admin::UsersController
  - Refacotors JS to target #reports-row in _reports.html.erb

* Alphabetizes reports and reactions partials in edit.html.erb

* Adds tests around Recent Reports and Recent Reactions sections to users_spec.rb
2020-10-07 14:21:10 +07:00
Ben Halpern
6cb68f134e
[deploy] Allow pattern match for spam terms (#10684) 2020-10-06 19:18:29 -04:00
Ben Halpern
f87e9eace1
[deploy] Add feed_strategy config (#10245)
* Add feed_strategy config

* Add configs spec

* Fix specs

* Fix field test scenario

* Linting

* A couple small changes

* Rename Optimized and objects

* Add proper namespace

* Fix codeclimate

* Add docs

* Update docs/technical-overview/readme.md
2020-10-06 17:36:27 -04:00
Vaidehi Joshi
f83062a9dd
Remove community_action from SiteConfig (#10678) 2020-10-06 15:46:04 -04:00
Vaidehi Joshi
3d169b5e6f
Do not require SiteConfig.tagline (#10623) [deploy]
* Fix incorrect formatting in admin/configs/show.html.erb

* Only render SiteConfig.tagline if it exists

* Fix typo in _signup_modal.html.erb

* Remove tagline from VerifySetupCompleted::MANDATORY_CONFIGS

* Improve signup_modal tagline specs

* Tiny fixes to address @citizen428's comments
2020-10-06 10:34:34 -07:00
Ben Halpern
cbcd60a17e
[deploy] Fix spam trigger keyword input text (#10665) 2020-10-06 10:47:04 -04:00
Ben Halpern
eefbe25bd3
[deploy] Add ability for admin to add anti-spam terms (#10615)
* Add ability for admin to add anti-spam terms

* Fix specs

* Fix tests

* Fix typo

* Fix test
2020-10-06 10:10:30 -04:00
ludwiczakpawel
9d384e1a93
CSS Cleanups, part 2 (#10527)
* padding-top on body

* padding-top on body

* move cheese around

* .

* :(

* rename
2020-10-03 06:57:57 +02:00
Ridhwana
21389ab05d
Admin Panel for Configurable Navigational Links (#9444) 2020-10-02 11:11:21 -04:00
Julianna Tetreault
c87974b7ac
[deploy] Add co_author_ids to Articles (#10339)
* Replaces second_user_id and third_user_id with co_author_ids on the Articles table

* Adjusts migration that adds co_author_ids to also add array: true

* Replaces second_user_id and third_user_id with co_author_ids in all applicable files
  - Use co_author_ids in _individual_article view
  - Use co_author_ids in articles and stories controllers
  - Use co_author_ids in article and podcast_episode models
  - Use co_author_ids in article_dashboard
  - Use co_author_ids in comments_helper
  - Use co_author_ids in articles_spec

* Replaces second_user_id and third_user_id with co_author_ids in article.rb model

* Remove unused #assign_co_authors method from the Stories::Controller

* Add #co_authors and #co_author_name_and_path to article_decorator.rb

* Adds a descriptive form field for co_author_ids for Admins in /admin/articles

* Adds a conditional in article/show.html.erb to render co_author names on an Article in a human-readable way

* Replaces get_co_author_name_and_path with proper method name, co_author_name_and_path in show.html.erb

* Adds latest schema to (hopefully) resolve Travis conflicts

* Adds the safe operator to show.html.erb

* Adjusts articles_spec.rb to use an array in the first test

* Replaces unless &.empty? with if ./present? in articles/show.html.erb

* Replaces second_user_id with co_author_ids in stories_show_spec.rb test

* Replaces elsif with else in articles/show.html.erb

* Cleans up show.html.erb by removing conditional in favor of decorator method

* Refactors splitting of params in Articles::Controller and optimizes query in #co_authors

* Reverts removal of second_user_id and third_user_id and migration file

* Adds a data_update script to update co_author_ids with existing second and third user_ids

* Adds validations to co_authors and flash_messages to indicate whether an update was successful or not
  - Adds to methods to article.rb to validate the IDs of co_authors and authors
  - Adds flash messages to the Admin::Articles::Controller and a redirect to the show page
  - Removes the JS highlighting upon submit when updating an Article in Admin
  - Refactors #update action in Admin::Articles::Controller

* Adds tests to article_spec.rb around co_author_id validations in article.rb

* Adjusts #validate_co_authors_must_not_be_the_same to use .include? instead

* Uses Field::Select.with_options in article_dashboard.rb to properly display co_author_ids

* Reverts removal of assigning co_author_ids in the Stories::Controller

* Adjusts error message and adjusts return logic in article.rb (thanks, Fernando!)

* Fixes failing article_spec.rb test that checks for co_author_ids uniqueness

* Adds a default array to co_author_ids and checks if they are .blank?

* Refactor data_update script to use a single SQL statement (thank you, Michael)

* Preserve array order of co_author_ids in article_decorator.rb

* Add db file for default: []

* Add validation to fix bug related to text inputs and invalid users when adding co_authors

* Adds tests to ensure that co_author_ids are both an integer and an integer > 0

* Updates admin/articles_spec.rb to default [] instead of nil

* Adjusts validations in article.rb to be DRY-er and more consistent

* Consolidates validations further

* Refactors validations in article.rb to use procs

* Refactors data_update script to remove nil values from array
2020-10-02 11:06:11 -04:00
Rafi
4a9f27163e
[deploy] Manage listing categories in dashboard (#10506)
* Displaying all listing

* Edit listing form

* Editing listing

* Searching listing categories

* Creating new listing category

* Deleting listing category

* Fixing error message and roles

* Tests

* Fixing aria label

* Fixing link class

* Fixing error message of destroy

* Changing placeholder text
2020-10-02 11:05:09 -04:00
ludwiczakpawel
bf8e2e53f1
Titles & subtitles cleanup (#10508)
* .

* .

* .
2020-10-02 12:37:39 +02:00
Diogo Osório
3bc51a13cc
Fixes 500 error when viewing the "Tag Mods" page without having the role on the database (#10515)
* Makes the ModeratorsQuery not return an exception on invalid role

The current implementation of the query would yield an exception when
recieving an invalid state parameter. As per the [GH issue
discussion](https://github.com/forem/forem/issues/10060#issuecomment-692295217),
Zhao recommended to change its behaviour and not trigger an exception in
this condition.

This commit does just that. If the state argument is invalid, the query
now returns an empty result set.

* Adds a warning when there are no matching mods

* Re-trigger the build
2020-10-01 12:55:25 -06:00
Fernando Valverde
2297e84f35
[deploy] HTML Variant admin dashboard (#10188)
* HTML Variant admin dashboard

* Tweaks to actions & spec fixes

* Update app/controllers/admin/html_variants_controller.rb

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

* Removes old html_variants dashboards

* Removes old lingering spec

Co-authored-by: Michael Kohl <citizen428@dev.to>
2020-09-28 09:22:13 -06:00
Molly Struve
b0e086346d
[deploy] Refactor:Remove BackupData Model and Code (#10409) 2020-09-22 16:45:18 -05:00
Mac Siri
9ebd742712
[deploy] Reintroduce sticky_nav changes (ab81f36 & 7f92855) (#10263)
* Revert "[deploy] Revert removal of unneeded eager load (if needed) (#10179)"

This reverts commit 11c7b148da.

* Revert "[deploy] Revert "Migrate ProfileImage to Images::Profile (#10055)" (#10149)"

This reverts commit 5657067e55.
2020-09-09 15:33:13 -04:00
Julianna Tetreault
751c910291
Give Admins the Ability to Add Co-Authors to Posts (#10252) [deploy]
* Adds second_user_id and third_user_id to Admin::Articles::Controller and Article model
  - Add second_user_id to #update
  - Add third_user_id to #update
  - Add second_user_id to #article_params
  - Add third_user_id to #article_params
  - Add second and third user_ids to :limited_columns_internal_select

* Adds a second_user_id and third_user_id form field to _individual_article.html.erb

* Adds tests around adding a co-author and multiple co-authors to an article in articles_spec.rb
2020-09-09 10:25:25 -06:00
Ben Halpern
b3f1e53ec7
[deploy] Add ga tracking to config (#10150)
* Add ga tracking to config

* Remove empty line

* Remove console.log

* Fix typo

* Update app/assets/javascripts/initializers/initializeBaseTracking.js.erb

* Add google tracking id example
2020-09-04 09:37:16 -04:00
Julianna Tetreault
31990b3d3b
Add Recent Reports to Users' Admin User Page (#10058) [deploy]
* Adds _reports partial and renders _reports.html.erb in /admin/users/edit.html.erb

* Adds a Recent Reports sections and a toggle function to /admin/users/_reports

* WIP: display feedback_messages in _reports.html.erb

* Adds #set_feedback_messages to Admin::Users::Controller and adjusts _reports.html.erb

* Adjusts #set_feedback_messages to look for message ids and adds to _reports.html.erb data

* Remove accidental dead code from Admin::Users::Controller

* Adjusts the else statement wording to be more fun

* Adjusts style of recent reports to mirror style of recent reactions

* Implement Admin UI changes to Recent Reports section of admin/users/:id/edit

* Adds a link to the admin_feedback_messages_path for each report in _reports.html.erb

* Adjusts the path used when a report is clicked on in _reports.html.erb

* Adds #user_types check to feedback_message.rb to determine Affected, Offender, or Reporter in _reports
2020-09-03 12:06:15 -06:00
Fernando Valverde
536b2c821c
Adds ability to create new sponsorships from admin dashboard (#10187)
* Adds create feature to the sponsorships admin dashboard

* Fixes spec
2020-09-03 10:10:37 -06:00
Ridhwana
c90cb2caf0
[deploy] Add display_area & show_in_onboarding to the profile setup ui (#10158) 2020-09-02 16:30:33 -05:00
Fernando Valverde
ada2d0c728
[deploy] Extracts DisplayAds from Administrate into admin (#10153)
* Extracts DisplayAds from Administrate into admin

* Suggested changes
2020-09-02 09:28:22 -06:00
Ridhwana
3474ffda6d
Profile Admin updates (#10133)
* feat: cater for when there are no profile fields in a group

* feat: add a modal to create a new group

* feat: add a controller and route for the group

* refactor: add group modal

* feat: edit a group

* chore: remove an instance var

* chore: toggle the section using a toggle button

* feat: add the edit button

* chore: update the messaging

* chore: update the class name

* feat: delete the group

* chore: add some css

* chore: use group_name

* chore: rename the file and add the group select to the file

* feat: render the correct partial and add the profile_field_group_id

* feat: add a profile field

* feat: amend the styles on the card header

* feat: add a cursor pointer

* feat: get the form to redirect after an update

* chore:  remove style

* feat: order by created at so that each time we save the order doesn't change

* fix: change the form

* chore: format the options

* feat: show ungrouped fields at the bottom

* feat: add the profile fields length

* chore: remove unused action

* test: add some specs for profile group workflow

* fix: oops

* refactor: grouped profile fields

* refactor: amend the styles

* chore: rename methods

* chore: update headings

* chore: remove changes from my linter

* refactor: suggestions by Michael - upgrade ternary

* refactor: order by name and label
2020-09-02 12:32:25 +02:00
Molly Struve
5657067e55
[deploy] Revert "Migrate ProfileImage to Images::Profile (#10055)" (#10149)
This reverts commit ab81f36a38.
2020-09-01 18:28:58 -05:00
Mac Siri
ab81f36a38
[deploy] Migrate ProfileImage to Images::Profile (#10055) 2020-09-01 17:16:03 -04:00
Andy Zhao
0b849341e0
Remove ghostify from app (#10139)
* Remove ghostify from app

* Remove unused ghostify specs
2020-09-01 13:39:39 -04:00
Ben Halpern
7b5bc89b7c
Allow admins to set brand color (#10097)
* Allow admins to set brand color

* Remove extra line

* Fix linting

* Update app/controllers/admin/configs_controller.rb

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

* Move wcag compare to own class

* Remove unnecessary spacing

Co-authored-by: Michael Kohl <citizen428@dev.to>
2020-09-01 11:16:31 +02:00
Julianna Tetreault
e7608d83bd
Updates Recent Reactions UI to match Admin UI changes (#10109)
-Adds crayons styling to _negative_reactions.html.erb
  -Removes dead divs from template
2020-08-31 14:44:30 -04:00
ludwiczakpawel
25e20bdc1c
[deploy] Admin Reports view hot fix 2020-08-31 18:32:41 +02:00
Julianna Tetreault
92042333bd
[deploy] Add Recent Vomit Reaction Reports to Users' Admin Users Page (#10059)
* Capitalizes Admin on Admin Profile button for better consistency

* Adds reactions and reports partials and adjusts filenames of _notes, _activity, and _credits

* Removes code related to reports to separate this PR and the reports PR

* Adds ability to toggle Recent Reactions and adds #get_related_reactions to controller
  - Adds a #get_related_reactions method to the Admin::Users::Controller
  - Moves the rendering of the reactions partial below the notes partial in edit
  - Styles Recent Reactions in a list format with the ability to toggle

* Modifies #set_related_reactions name, query, and limit and the _reactions view with it
  - Adjust #get_related_reactions to read #set_related_reactions
  - Sort reactions by descending created_at
  - Add a limit of 15 to reactions displayed for any given user
  - Add .empty? in place of .nil? to _reactions.html.erb reaction check

* Adjusts the format of how Recent Reactions are displayed and adds Reaction category

* Adds a check for category: vomit in #set_related_reactions

* Renames partial, adds User reactions to #set_related_reactions, and adjusts partial styling

* Rewords message displayed when no negative reactions exist to make it fun

* Adds additional styling changes to recent reactions
2020-08-31 11:23:19 -04:00
ludwiczakpawel
8ec4044f3e
[deploy] Adding Crayons to Admin (#10015)
* layout

* user

* config

* header

* badges, badge_achievements, layout

* broadcasts

* chat channels

* comments.. not much really

* Events

* growth

* listings

* mod actions

* mods

* orgs

* pages

* permissions

* podcasts

* reactions

* profile fields

* reports

* response templates

* tools

* users

* Secrets

* webhooks

* welcome threads

* .

* internal

* css fix

* .

* main element elsewhere

* scope

* bring back some of the old styling

* .

* .

* .

* notice

* Revert schema.db

* add alert

* little fixes

* profile fields

* Update schema.rb

* closing span

* another span

* Fixed broken admin specs.

Co-authored-by: Nick Taylor <nick@dev.to>
2020-08-31 10:29:06 -04:00
Nick Taylor
59093918c3
Fixed label not being associated to published checkbox on events admin page. (#10063) 2020-08-30 11:40:06 -04:00
Ben Halpern
239629c1de
[deploy] Grant admin permissions through the UI (part 1) (#9656)
* Grant permissions through the UI

* Update app/services/moderator/manage_activity_and_roles.rb

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

* Make roles into constants

* Swap internal and admin

* Improve UI, remove hack

* Fix link

* Remove unused internal file

* Modify registrations controller

* A bit of progress

* More work

* a bit pf progress on confirmation emails

* Get basic functionality in place

* Remove comments

* First basic test

* Add tests

* Fix code styles

* Remove sessions spec

* Remove sessions spec

* Remove extra markup

* Fix base role

* Add Resource Admin Config

* Fix indentation issue

Co-authored-by: Michael Kohl <citizen428@dev.to>
2020-08-28 11:57:06 -04:00
Ben Halpern
0dd04ea45a
Create initial "register by email and password" beta/MVP in prep for "setup mode" (#10039)
* Modify registrations controller

* A bit of progress

* More work

* a bit pf progress on confirmation emails

* Get basic functionality in place

* Remove comments

* First basic test

* Add tests

* Fix code styles

* Remove sessions spec

* Remove sessions spec

* Remove extra markup
2020-08-28 09:46:56 -04:00