about summary refs log tree commit diff
path: root/app
AgeCommit message (Collapse)Author
2020-03-28Fix 404 and 410 API errors being silently discarded in WebUI (#13279)ThibG
* Fix 404 and 410 API errors being silently discarded in WebUI Fixes #13278 * Return more appropriate error when user replies to a deleted toot * Please CodeClimate * Fix 404/410 errors on fetching account timelines & identity proofs * Refactor error handling * Move error message string to statuses.errors
2020-03-26Change `tootctl media remove-orphans` to work for all classes (#13316)Eugen Rochko
Change `tootctl media lookup` to not use an interactive prompt
2020-03-25New Crowdin translations (#13064)Eugen Rochko
* New translations en.yml (Russian) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.json (Dutch) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Dutch) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.json (Dutch) [ci skip] * New translations en.json (Dutch) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations simple_form.en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Swedish) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations en.json (Kabyle) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.json (Greek) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Greek) [ci skip] * New translations en.json (Breton) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations devise.en.yml (Icelandic) [ci skip] * New translations en.json (Italian) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Lithuanian) [ci skip] * New translations en.yml (Norwegian) [ci skip] * New translations en.yml (Norwegian Nynorsk) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Kazakh) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Slovenian) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.yml (Turkish) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Serbian (Cyrillic)) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Swedish) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.yml (Estonian) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations en.yml (Welsh) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations simple_form.en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Icelandic) [ci skip] * New translations simple_form.en.yml (Italian) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations simple_form.en.yml (Russian) [ci skip] * New translations simple_form.en.yml (Swedish) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Catalan) [ci skip] * New translations simple_form.en.yml (Persian) [ci skip] * New translations simple_form.en.yml (Portuguese) [ci skip] * New translations simple_form.en.yml (Arabic) [ci skip] * New translations simple_form.en.yml (French) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations devise.en.yml (Kabyle) [ci skip] * New translations en.yml (Welsh) [ci skip] * New translations simple_form.en.yml (Welsh) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Icelandic) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations simple_form.en.yml (Persian) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Portuguese) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations simple_form.en.yml (Catalan) [ci skip] * New translations simple_form.en.yml (Portuguese) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (German) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Galician) [ci skip] * New translations simple_form.en.yml (Icelandic) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (Hungarian) [ci skip] * New translations en.json (Kabyle) [ci skip] * New translations simple_form.en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Greek) [ci skip] * New translations en.yml (French) [ci skip] * New translations simple_form.en.yml (French) [ci skip] * New translations simple_form.en.yml (Asturian) [ci skip] * New translations en.json (Breton) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations simple_form.en.yml (Italian) [ci skip] * New translations devise.en.yml (Kabyle) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Occitan) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations simple_form.en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.json (French) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations doorkeeper.en.yml (Slovak) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations simple_form.en.yml (Polish) [ci skip] * New translations simple_form.en.yml (Polish) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations simple_form.en.yml (Indonesian) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations activerecord.en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Indonesian) [ci skip] * New translations activerecord.en.yml (Kabyle) [ci skip] * New translations en.json (Breton) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations devise.en.yml (Breton) [ci skip] * New translations en.json (Breton) [ci skip] * New translations doorkeeper.en.yml (Breton) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations devise.en.yml (Russian) [ci skip] * New translations simple_form.en.yml (Russian) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * i18n-tasks normalize * yarn manage:translations
2020-03-25Fix media not being marked sensitive when client sets a CW but no text (#13277)ThibG
Mastodon enforces the “sensitive” flag on media attachments whenever a toot is posted with a Content Warning. However, it does so *after* potentially converting the Content Warning to toot text (when there is no toot text), which leads to inconsistent and surprising behavior for API clients. This commit fixes this inconsistency.
2020-03-25Fix frontend crash when deleting announcements (#13312)ThibG
Refactor and fix #13283, which only worked in some cases.
2020-03-25Change poll option hover/active styling to be less confusing (#13313)ThibG
2020-03-22Fix bookmarks also searchable (#13293)Takeshi Umeda
2020-03-21Migrate Rails ujs as required for Rails 6 Upgrade. (#13280)Shlee
* Update yarn.lock * Update package.json * Update public.js * Update admin.js * Update log_out.js * Update common.js
2020-03-21Add link to bookmarks in web UI dropdown (#13273)mayaeh
2020-03-21Make bookmarks also searchable (#13271)Jeong Arm
2020-03-21Fix frontend crash when deleting announcements (#13283)Daniel Sockwell
This two-line change fixes a crash in the front end that occurred under the following circumstances: * A server had more than one announcement, * A user was displaying the announcements, and * An announcement was deleted (or unpublished, which amounts to the same thing.) As might be expected, the bug was caused by attempting to access a notification using an index value outside the bounds of the existing announcements. Specifically, in two places. First, `_markAnnouncementAsRead` attempts to modify announcements based on the current index. This is what caused the front end crash. Second, when rendering the `Announcements` component, the code paginates the announcements and displays the current one. This did not cause a crash, but caused the front end to confusingly display a blank announcement (in situations that would have caused a crash) with no way for the user to navigate back to previous announcements. This commit fixes both issues by adding a check to ensure that the code never attempts to access an announcement with an index greater than or equal to the number of announcements present.
2020-03-21Fix reported accounts not being whitelisted when resolving a spamcheck ↵ThibG
report (#13289)
2020-03-17Fix WebUI crash in single-column mode on prehistoric browsers (#13267)ThibG
Fixes #13266
2020-03-12Fix some timeouts when searching URLs by limiting some database queries (#13253)ThibG
Only look up private toots from database if the request failed because of 401, 403 or 404 errors, as those may indicate a private toot, rather than something that isn't a toot or cannot be processed.
2020-03-12Add option to include resolved DNS records when blacklisting e-mail domains ↵Eugen Rochko
in admin UI (#13254) * Add shortcuts to blacklist a user's e-mail domain in admin UI * Add option to blacklist resolved MX and IP records for e-mail domains
2020-03-12Add titles to warning presets in admin UI (#13252)Eugen Rochko
2020-03-10Fix detailed view of direct messages displaying a 0 boost count (#13244)ThibG
The boost count is already removed from private toots, do the same with direct messages.
2020-03-10Fix regression in “Edit media” modal in web UI (#13243)ThibG
2020-03-10Fix videos with unsupported colorspace not being transcoded (#13242)ThibG
2020-03-09Fix MP4 (H264 + AAC) video files being needlessly re-encoded (#13239)ThibG
2020-03-09Change the string "hidden" to "blocked" in WebUI (#13221)mayaeh
* Change the string "hidden" to "blocked" in WebUI. * update
2020-03-09Change video uploads to always be converted to H264/MP4 (#13220)Eugen Rochko
Even if the container format is the same (.mp4), the codec could be different and not playable in web browsers
2020-03-09Change video uploads to enforce certain limits (#13218)Eugen Rochko
- Dimensions at most 1920x1200 - Frame rate at most 60
2020-03-09Bump cld3 from 3.2.6 to 3.3.0 (#13107)dependabot-preview[bot]
* Bump cld3 from 3.2.6 to 3.3.0 Bumps [cld3](https://github.com/akihikodaki/cld3-ruby) from 3.2.6 to 3.3.0. - [Release notes](https://github.com/akihikodaki/cld3-ruby/releases) - [Commits](https://github.com/akihikodaki/cld3-ruby/compare/v3.2.6...v3.3.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> * Fix compatibility with cld3 3.3.0 Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2020-03-09Add federation support for the "hide network" preference (#11673)ThibG
* Change ActivityPub follower/following collections to not link first page * Add support for hiding followers and following of remote users * Switch to using a single `hide_collections` column * Address code style remarks
2020-03-08Change local media attachments to perform heavy processing asynchronously ↵Eugen Rochko
(#13210) Fix #9106
2020-03-08Fix public posts from silenced accounts not being changed to unlisted ↵ThibG
visibility (#13096)
2020-03-08Add support for links to statuses in announcements to be opened in web UI ↵ThibG
(#13212) * Add support for links to public statuses in announcements to be opened in WebUI * Please CodeClimate
2020-03-08Change the tooltip "Toggle visibility" to "Hide media" in web UI (#13199)Mélanie Chauvel (ariasuni)
2020-03-08Add submit button to the top of preferences pages (#13068)guigeekz
* Move submit button to the top of the edit page * Duplicate save button on long form * Fix click submit on profile spec
2020-03-08Code style improvements in JavaScript (#13159)Bèr Kessels
* JS-linter: fix trailing comma's * Configure eslinter to ignore this onchange error.
2020-03-08Add ability to delete files uploaded for settings in admin UI (#13192)ThibG
* Allow deleting site uploads * Refactor and move links into hints * Fix i18n tests * Fix HTML output of site_upload_delete_hint
2020-03-08Change description of privacy levels to be more intuitive in web UI (#13197)Mélanie Chauvel (ariasuni)
* Improve description of privacy levels in compose interface * Change strings in defaultMessage and source as well as english Co-authored-by: Thibaut Girka <thib@sitedethib.com>
2020-03-08Fix error when searching for URLs that contain the mention syntax (#13151)ThibG
Fixes #13150
2020-03-08Add sorting by username, creation and last activity in moderation view (#13076)ThibG
* Add ability to order accounts in moderation view * Display last status date in “Most recent activity” for remote users
2020-03-08Fix text area above/right of emoji picker being accidentally clickable in ↵Mélanie Chauvel (ariasuni)
web UI (#13148)
2020-03-08Add specific rate limits for posting and following (#13172)Eugen Rochko
2020-03-06Fix too large announcements not being scrollable in web UI (#13211)ThibG
2020-03-06Change GIF label to be displayed even when autoplay is enabled in web UI ↵koyu
(#13209)
2020-03-06Remove useless `respond_to` calls (#13208)Eugen Rochko
2020-03-05Change the string "Hide everything from …" to "Block domain …" in web UI ↵Eugen Rochko
(#13178) Blocking a domain is closer to blocking all its users than to a mute action.
2020-03-05Fix "tootctl media remove-orphans" crashing when encountering invalid media ↵Eugen Rochko
(#13170) Fixes #13168
2020-03-05Add tooltips to audio/video player buttons (#13203)Eugen Rochko
2020-02-28Fix announcements with fully-qualified mention to local user crashing WebUI ↵ThibG
(#13164)
2020-02-27Fix leak of arbitrary statuses through unfavourite action in REST API (#13161)Eugen Rochko
2020-02-24Fix dismissing an announcement twice raising an obscure error (#13124)ThibG
2020-02-24Fix misleading error when attempting to re-send a pending follow request ↵ThibG
(#13133) Fixes #13131
2020-02-24Fix backups failing when files are missing from media attachments (#13146)ThibG
Fixes #13123
2020-02-24Fix duplicate accounts being created when fetching an account for its key ↵ThibG
only (#13147) Fixes #13136 When a user's canonical acct domain is different from its id's domain (WEB_DOMAIN ≠ LOCAL_DOMAIN), two webfinger queries are required to find the canonical domain from the URI. However, we skip webfinger queries when updating only the key of a remote user, which led to the creation of a duplicate account, using the URI's domain instead of the canonical acct: one.
2020-02-22Fix `/web` redirecting to `/web/web` in web UI (#13128)ThibG
Fixes #13127