96 Commits

Author SHA1 Message Date
Eugen Rochko
2df86d6413
Fix wrong styles on rules and buttons in the sign-up form (#33725) 2025-01-24 22:20:05 +00:00
Eugen Rochko
0885c31633
Add information about alt text to alt text modal in web UI (#33702) 2025-01-23 13:01:11 +00:00
Eugen Rochko
11786f1114
Change design of edit media modal in web UI (#33516) 2025-01-21 11:34:22 +00:00
Claire
82e046ea06
Fix preview card sizing in “Author attribution” in profile settings (#33482) 2025-01-07 11:29:38 +00:00
Eugen Rochko
ca45f896dd
Fix various visual sign-up flow issues (#33206) 2024-12-09 08:23:19 +00:00
Eugen Rochko
7a3dea385e
Change onboarding flow in web UI (#32998) 2024-11-26 16:10:12 +00:00
Eugen Rochko
62603508c7
Change design of lists in web UI (#32881) 2024-11-21 16:10:04 +00:00
Claire
8b56509625
Add more explicit explanations about author attribution and fediverse:creator (#32383) 2024-10-17 09:03:08 +00:00
Claire
4c0e44ebbe
Fix recently-broken admin interface buttons (#32240) 2024-10-03 16:12:15 +00:00
Matt Jankowski
c009507912
Use button_to for method: :post links on account show page (#32154) 2024-10-01 11:14:12 +00:00
Matt Jankowski
106b22bd2d
Use 1 column layout for form ul on narrow widths (#32112) 2024-09-26 19:26:40 +00:00
Eugen Rochko
e0c27a5047
Add ability to manage which websites can credit you in link previews (#31819) 2024-09-10 12:00:40 +00:00
Claire
edeae945c0
Remove fontawesome leftovers (#31525) 2024-08-21 15:55:35 +00:00
Renaud Chaput
f6d090fdf5
Change avatars border radius (#31390) 2024-08-13 07:26:23 +00:00
Emelia Smith
d3089018d5
Move Follow Recommendations to Trends menu, rename to Recommendations & Trends (#31292) 2024-08-10 09:17:10 +00:00
Michael Stanclift
176ba984d4
Follow up tweaking of admin UI changes part 2 (#31268) 2024-08-08 09:21:54 +00:00
Michael Stanclift
8b7f93cc7f
Recolor Preferences/Admin UI to better match main design (#31034) 2024-07-23 15:30:45 +00:00
David Roetzel
f48f39a767
Fix cutoff of instance name (#30598) 2024-06-11 12:54:37 +00:00
Eugen Rochko
c10bbf5fe3
Add notification policies and notification requests in web UI (#29433) 2024-03-11 15:02:21 +00:00
Evan Paterakis
213c87ae59
Fix filters title and keywords overflow (#29396) 2024-02-27 10:46:58 +00:00
Eugen Rochko
0e9801443f
Change to single opt-in during profile setup in onboarding in web UI (#27876) 2023-11-17 10:37:04 +00:00
Eugen Rochko
d67bd44ca1
Add profile setup to onboarding in web UI (#27829) 2023-11-15 11:13:53 +00:00
Claire
9e26cd5503
Add authorized_fetch server setting in addition to env var (#25798) 2023-09-01 15:41:10 +02:00
Claire
21ec596dab
Fix sign up steps progress layout in right-to-left locales (#26728) 2023-08-30 16:29:52 +02:00
Christian Schmidt
bb23116e8d
Fix profile picture preview (#26538) 2023-08-18 18:24:32 +02:00
Trevor Wolf
54cb679c19
Change button colors to increase hover/focus contrast and consistency (#25677) 2023-07-03 11:32:31 +02:00
Eugen Rochko
39110d1d0a
Fix CAPTCHA page not following design pattern of sign-up flow (#25395) 2023-06-13 22:30:40 +02:00
Claire
0766c9a631
Add card with who invited you to join when displaying rules on sign-up (#23475) 2023-06-02 18:35:37 +02:00
Claire
bec6a1cad4
Add hCaptcha support (#25019) 2023-05-16 23:27:35 +02:00
Nick Schonning
fc56eda94b
Bump stylelint-config-standard-scss from 7.0.1 to 9.0.0 (#24755)
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2023-05-01 18:23:57 +09:00
Eugen Rochko
e5c0b16735
Add progress indicator to sign-up flow (#24545) 2023-04-16 07:01:24 +02:00
Eugen Rochko
babd86e594
Refactor styles to use logical properties for positioning (#23944) 2023-03-27 10:56:25 +02:00
Nick Schonning
0c9d455ea5
Upgrade to Stylelint 15 with Prettier (#23558) 2023-02-13 04:57:03 +01:00
Connor Shea
cf4992c918
Only remove padding when listing applications (#20382)
This prevents styling issues on the Authorization page.
2022-11-11 02:55:20 +01:00
Claire
d9d722d74b
Change admin announcement edition interface to use datetime-local (#18321)
* Change admin announcement edition interface to use datetime-local

* Dynamically set announcement stop date as required if start date is set, set minimum date for stop date

* Change `all_day` to not be bound to presence of time-range

* Add pattern and placeholder as minimal fallback for browsers not supporting datetime-local

* Display datetime-local inputs as local time

Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2022-10-28 12:56:32 +02:00
Eugen Rochko
7c152acb2c
Change settings area to be separated into categories in admin UI (#19407)
And update all descriptions
2022-10-22 11:44:41 +02:00
Eugen Rochko
1bd00036c2
Change about page to be mounted in the web UI (#19345) 2022-10-13 14:42:37 +02:00
Eugen Rochko
679274465b
Add server rules to sign-up flow (#19296) 2022-10-05 18:57:33 +02:00
Eugen Rochko
546672e292
Change "Allow trends without prior review" setting to include statuses (#17977)
* Change "Allow trends without prior review" setting to include posts

* Fix i18n-tasks
2022-08-28 04:00:39 +02:00
Eugen Rochko
44b2ee3485
Add customizable user roles (#18641)
* Add customizable user roles

* Various fixes and improvements

* Add migration for old settings and fix tootctl role management
2022-07-05 02:41:40 +02:00
Claire
02851848e9
Revamp post filtering system (#18058)
* Add model for custom filter keywords

* Use CustomFilterKeyword internally

Does not change the API

* Fix /filters/edit and /filters/new

* Add migration tests

* Remove whole_word column from custom_filters (covered by custom_filter_keywords)

* Redesign /filters

Instead of a list, present a card that displays more information and handles
multiple keywords per filter.

* Redesign /filters/new and /filters/edit to add and remove keywords

This adds a new gem dependency: cocoon, as well as a npm dependency:
cocoon-js-vanilla. Those are used to easily populate and remove form fields
from the user interface when manipulating multiple keyword filters at once.

* Add /api/v2/filters to edit filter with multiple keywords

Entities:
- `Filter`: `id`, `title`, `filter_action` (either `hide` or `warn`), `context`
  `keywords`
- `FilterKeyword`: `id`, `keyword`, `whole_word`

API endpoits:
- `GET /api/v2/filters` to list filters (including keywords)
- `POST /api/v2/filters` to create a new filter
  `keywords_attributes` can also be passed to create keywords in one request
- `GET /api/v2/filters/:id` to read a particular filter
- `PUT /api/v2/filters/:id` to update a new filter
  `keywords_attributes` can also be passed to edit, delete or add keywords in
   one request
- `DELETE /api/v2/filters/:id` to delete a particular filter
- `GET /api/v2/filters/:id/keywords` to list keywords for a filter
- `POST /api/v2/filters/:filter_id/keywords/:id` to add a new keyword to a
   filter
- `GET /api/v2/filter_keywords/:id` to read a particular keyword
- `PUT /api/v2/filter_keywords/:id` to edit a particular keyword
- `DELETE /api/v2/filter_keywords/:id` to delete a particular keyword

* Change from `irreversible` boolean to `action` enum

* Remove irrelevent `irreversible_must_be_within_context` check

* Fix /filters/new and /filters/edit with update for filter_action

* Fix Rubocop/Codeclimate complaining about task names

* Refactor FeedManager#phrase_filtered?

This moves regexp building and filter caching to the `CustomFilter` class.

This does not change the functional behavior yet, but this changes how the
cache is built, doing per-custom_filter regexps so that filters can be matched
independently, while still offering caching.

* Perform server-side filtering and output result in REST API

* Fix numerous filters_changed events being sent when editing multiple keywords at once

* Add some tests

* Use the new API in the WebUI

- use client-side logic for filters we have fetched rules for.
  This is so that filter changes can be retroactively applied without
  reloading the UI.
- use server-side logic for filters we haven't fetched rules for yet
  (e.g. network error, or initial timeline loading)

* Minor optimizations and refactoring

* Perform server-side filtering on the streaming server

* Change the wording of filter action labels

* Fix issues pointed out by linter

* Change design of “Show anyway” link in accordence to review comments

* Drop “irreversible” filtering behavior

* Move /api/v2/filter_keywords to /api/v1/filters/keywords

* Rename `filter_results` attribute to `filtered`

* Rename REST::LegacyFilterSerializer to REST::V1::FilterSerializer

* Fix systemChannelId value in streaming server

* Simplify code by removing client-side filtering code

The simplifcation comes at a cost though: filters aren't retroactively
applied anymore.
2022-06-28 09:42:13 +02:00
Eugen Rochko
0391b2a603
Fix contrast of some elements with new brand colors (#18691) 2022-06-19 08:18:08 +02:00
Yamagishi Kazutoshi
84266f87e7
Replace from Code Climate to Super-Linter (#18587) 2022-06-01 19:22:35 +02:00
Claire
c0c4b5718d
Change visual separation of applications in authorized apps list (#17686) 2022-03-02 20:28:25 +01:00
Eugen Rochko
50ea54b3ed
Change authorized applications page (#17656)
* Change authorized applications page

* Hide revoke button for superapps and suspended accounts

* Clean up db/schema.rb
2022-03-01 16:48:58 +01:00
Eugen Rochko
7de0ee7aba
Remove Keybase integration (#17045) 2021-11-26 05:58:18 +01:00
Eugen Rochko
d174d12c83
Add authentication history (#16408) 2021-06-21 17:07:30 +02:00
Eugen Rochko
487e37d6d4
Add system checks to dashboard in admin UI (#15989) 2021-04-03 14:12:30 +02:00
ThibG
47e507fa61
Add ability to require invite request text (#15326)
Fixes #15273

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-14 10:03:09 +01:00
ThibG
49eb4d4ddf
Add honeypot fields and minimum fill-out time for sign-up form (#15276)
* Add honeypot fields to limit non-specialized spam

Add two honeypot fields: a fake website input and a fake password confirmation
one. The label/placeholder/aria-label tells not to fill them, and they are
hidden in CSS, so legitimate users should not fall into these.

This should cut down on some non-Mastodon-specific spambots.

* Require a 3 seconds delay before submitting the registration form

* Fix tests

* Move registration form time check to model validation

* Give people a chance to clear the honeypot fields

* Refactor honeypot translation strings

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-10 06:27:26 +01:00