Commit Graph

6078 Commits

Author SHA1 Message Date
Eugen Rochko 66436d0895
Improve e-mail digest (#9689)
- Reduce time-to-digest from 20 to 7 days
- Fetch mentions starting from +1 day since last login
- Fix case when last login is more recent than last e-mail
- Do not render all mentions, only 40, but show number in subject
- Do not send digest to moved accounts
- Do send digest to silenced accounts
2019-01-02 10:47:32 +01:00
Yamagishi Kazutoshi dc84899fff Upgrade ESLint to v5.x (#9694) 2019-01-02 07:28:53 +01:00
ThibG 70be301d69 Ensure blocked user unfollows blocker if Block/Undo Block are processed out of order (#9687)
* Ensure blocked user unfollows blocker if Block/Undo Block are processed out of order

* Add specs for Block causing unfollow and for out-of-order Block + Undo
2019-01-02 01:12:02 +01:00
ThibG f04f3ee436 Fix icon alignment in onboarding interaction screen (#9686) 2019-01-01 16:19:51 +01:00
Eugen Rochko 7fc7437d05
Add CSV export for lists and domain blocks (#9677)
Fix #6893
Fix #9268
2019-01-01 13:44:04 +01:00
ThibG 1d4215be77 Restore ReplyDistributionWorker to allow existing jobs to be processed (#9676) 2019-01-01 13:43:11 +01:00
Eugen Rochko e3dc8870bf
Remove visible timestamps for notifications (#9675)
Revert #9423. Issues with line breaks / clutter.
2018-12-31 18:12:07 +01:00
Yamagishi Kazutoshi 8f5fdab5bf Update dependencies for Node.js (2018-12-31) (#9669)
* Update react-* to v16.7.0

* Upgrade react-hotkeys to v1.1.4

* Update react-intl to v2.7.2

* Update react-select to v2.2.0

* Update react-swipeable-views to v0.13.0

* Upgrade react-textarea-autosize to v7.1.0

* Upgrade redux to v4.0.1

* Upgrade reselect to v4.0.0

* Update raf to v3.4.1

* Update enzyme to v3.8.0

* Update rails-ujs to v5.2.2

* Update axios to v0.18.0

* Update http-link-header to v1.0.2

* Update rellax to v1.7.1

* Update intersection-observer to v0.5.1

* Update stringz to v1.0.0

* Upgrade babel-eslint to v10.0.1

* Update @babel/* to v7.2.x

* Update babel-plugin-react-intl to v3.0.1

* Update babel-plugin-transform-react-remove-prop-types to v0.4.21

* Upgrade dotenv to v6.2.0

* Update express to v4.16.4

* Update webpack to v4.28.3

* Upgrade autoprefixer to v9.4.3

* Update babel-loader to v8.0.4

* Upgrade css-loader to v2.1.0

* Upgrade file-loader to v3.0.1

* Update marky to v1.2.1

* Update mini-css-extract-plugin to v0.5.0

* Update offline-plugin to v5.0.6

* Update style-loader to v0.23.1

* Update eslint-plugin-jsx-a11y to v6.1.2

* yarn upgrade

* fix

* Replace webpack-manifest-plugin to webpack-assets-manifest

* Replace node-zopfli to @gfz/zopfli

* Remove monkey-patch for http-link-header
2018-12-31 18:11:48 +01:00
kodai 6a090db4c9 Fix links not being verified (#9673)
Fix #9365
2018-12-31 15:29:10 +01:00
Jeong Arm 511231ce57 Skip full text search if failed (#9654)
* Skip full text search if failed

* Move rescue block to "perform_statuses_search!"
2018-12-30 19:00:29 +01:00
ThibG 6fb6a53938 Avoid duplicate work by merging ReplyDistributionWorker into DistributionWorker (#9660) 2018-12-30 19:00:04 +01:00
ThibG b2f4114550 Do not ignore federated reports targetting already-reported accounts (#9534) 2018-12-30 18:58:51 +01:00
ThibG 6a7a36fcdd Immediately go back in browser history upon successfully sending toot (#9663)
Avoids possible misleading delay before redirection during which the
composer would be cleared and redrawn.
2018-12-30 18:58:25 +01:00
Takeshi Umeda 1340460c85 If it is disabled, remove the link of the profile directory (#9665) 2018-12-30 18:57:50 +01:00
ThibG e74c99edf5 Fix crash when clearing uninitialized timeline (#9662) 2018-12-30 18:57:39 +01:00
Thibaut Girka b300948526 Fix crash when clearing uninitialized timeline
Fixes #875
2018-12-30 16:56:55 +01:00
Thibaut Girka d126240129 Immediately go back in browser history upon successfully sending toot 2018-12-30 14:07:57 +01:00
ThibG 290932602b Reduce usage of LD signatures (#9659)
* Do not LDS-sign Follow, Accept, Reject, Undo, Block

* Do not use LDS for Create activities of private toots

* Minor cleanup

* Ignore unsigned activities instead of misattributing them

* Use status.distributable? instead of querying visibility directly
2018-12-30 09:48:59 +01:00
ysksn 05edec6917 Add specs for BlackListedEmailValidator (#9651)
* Add specs for BlackListedEmailValidator

* Use instance variable
2018-12-29 07:23:44 +01:00
ysksn 4725aeec9f Add specs for DisallowedHashtagsValidator (#9653)
In order to implement tests easier, `#select_tags` created.
2018-12-29 07:22:51 +01:00
Eugen Rochko 0f938ff29c
Add handler for Move activity (#9629) 2018-12-29 02:24:36 +01:00
Thibaut Girka 115b1abb6e Rename hide_followers_count helper to hide_followers_count? 2018-12-28 20:05:47 +01:00
Thibaut Girka 374bae0abe Do not leak followers count on public pages
Fixes #873
2018-12-28 20:05:47 +01:00
ysksn ccb9c1b952 Add pending specs for StatusLengthValidator (#9647)
* Add pending specs of StatusLengthValidator

* Use instance variable
2018-12-28 08:18:47 +01:00
mayaeh c1693827ae Change the icon to "reply-all" when reply to other accounts (#9378) 2018-12-28 03:51:32 +01:00
Eugen Rochko 6e49907ecf
Improve admin UI for account view (#9643) 2018-12-28 03:38:41 +01:00
chr v1.x c3465f699e Add local followers page to admin account UI (#9610)
* Add local followers page to admin account UI

For moderation, I often find myself wondering who, locally, is following
a remote user. Currently, to see this, I have to go back to the web UI,
paste in their full handle, click their profile, and go to the
"Followers" tab (plus, this information is incidental, and if mastodon
ever decides to resolve all of the follower information, there will be
no place local followers are shown). This PR adds a new page which is
accessible via the "following" count on the admin's account view
page, which shows the local followers. (It has filter parameters for
account location to indicate that only local followers are shown, and
leave room for expansion if mastodon ever decides to store the entire
remote follow list).

* Normalize en.yml
2018-12-27 13:15:39 +01:00
Renato "Lond" Cerqueira b41f715180 Weblate translations (2018-12-27) (#9642)
* Translated using Weblate (Occitan)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/oc/

* Translated using Weblate (Occitan)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/oc/

* Translated using Weblate (Greek)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/

* Translated using Weblate (Czech)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Czech)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (French)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (717 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/nl/

* Translated using Weblate (French)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fr/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Korean)

Currently translated at 100.0% (717 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ko/

* Translated using Weblate (Arabic)

Currently translated at 97.5% (699 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/

* Translated using Weblate (Greek)

Currently translated at 93.8% (332 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Corsican)

Currently translated at 93.8% (332 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/co/

* Translated using Weblate (Arabic)

Currently translated at 98.6% (349 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ar/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 78.2% (277 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/zh_Hans/

* Translated using Weblate (Basque)

Currently translated at 93.8% (332 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Dutch)

Currently translated at 93,8% (332 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Galician)

Currently translated at 92,9% (329 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Greek)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Galician)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/

* Translated using Weblate (Galician)

Currently translated at 100,0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/co/

* Translated using Weblate (Korean)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/

* Translated using Weblate (Tamil)

Currently translated at 14.4% (51 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ta/

* Translated using Weblate (Russian)

Currently translated at 85.6% (303 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ru/

* Translated using Weblate (Italian)

Currently translated at 93.8% (332 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/it/

* Translated using Weblate (Occitan)

Currently translated at 93.8% (332 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/oc/

* Translated using Weblate (Spanish)

Currently translated at 88.1% (312 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/es/

* Translated using Weblate (German)

Currently translated at 93.5% (331 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/de/

* Translated using Weblate (Hungarian)

Currently translated at 63.0% (223 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/hu/

* Translated using Weblate (Portuguese)

Currently translated at 65.0% (230 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt/

* Translated using Weblate (Hebrew)

Currently translated at 61.9% (219 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/he/

* Translated using Weblate (Chinese (Traditional))

Currently translated at 92.9% (329 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/zh_Hant/

* Translated using Weblate (Dutch)

Currently translated at 94.9% (336 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/co/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Arabic)

Currently translated at 97.4% (698 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/

* Translated using Weblate (German)

Currently translated at 100,0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/de/

* Added translation using Weblate (Hindi)

* Translated using Weblate (Corsican)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/co/

* Translated using Weblate (French)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Esperanto)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eo/

* Translated using Weblate (German)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (Esperanto)

Currently translated at 100.0% (354 of 354 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eo/

* Translated using Weblate (Esperanto)

Currently translated at 98.3% (705 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/eo/

* Translated using Weblate (French)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/fr/

* Translated using Weblate (Polish)

Currently translated at 90.3% (84 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/pl/

* Normalize translations

* Add missing plurals, remove unused translations
2018-12-27 12:25:30 +01:00
Eugen Rochko ee1ba59692
Add exclude_reblogs option to account statuses API (#9640)
Fix #9606
2018-12-27 03:42:35 +01:00
Eugen Rochko 9b8c7a9aad
Redirect to reports overview instead of report after account action (#9639) 2018-12-27 03:42:29 +01:00
Quentí f63a0134d7 [i18n] OC/CAT/FR «crop» => «change preview» (#9636)
* Rename "crop" to "change preview" (tootsuite#9616)

* Rename "crop" to "change preview" (tootsuite#9616)

* Rename "crop" to "change preview" (tootsuite#9616)
2018-12-26 19:16:40 +01:00
ThibG 4423999609 Fix account unsilencing and unsuspension (#9637)
Fix regression from 3c033c4352
2018-12-26 19:16:15 +01:00
Eugen Rochko aa9a20cde0
Fix ThreadResolveWorker getting queued with invalid URLs (#9628) 2018-12-26 19:15:53 +01:00
Eugen Rochko 17cd91c777
Fix signature verification stoplight triggering on non-timeout errors (#9617) 2018-12-26 19:15:43 +01:00
Thibaut Girka f349fe2159 Fix account unsilencing and unsuspension
Fix regression from 3c033c4352
2018-12-26 19:13:54 +01:00
ysksn a8ba291beb Fix scope latest of ReportNote (#9630) 2018-12-26 06:38:59 +01:00
ysksn 0c1e4bb969 Create DomainNormalizable#normalize_domain (#9631) 2018-12-26 06:38:42 +01:00
Takeshi Umeda bf70e5cfda Add error message with invalid email confirmation (#9625) 2018-12-25 19:35:26 +01:00
ysksn 6641a1cac9 Remove Form::StatusBatch::ACTION_TYPE unused (#9623) 2018-12-25 18:29:51 +01:00
Aboobacker MK fd16502ae4 Add support for Malayalam in language filter (#9624) 2018-12-25 18:29:30 +01:00
Eugen Rochko 5d2fc6de32
Add REST API for creating an account (#9572)
* Add REST API for creating an account

The method is available to apps with a token obtained via the client
credentials grant. It creates a user and account records, as well as
an access token for the app that initiated the request. The user is
unconfirmed, and an e-mail is sent as usual.

The method returns the access token, which the app should save for
later. The REST API is not available to users with unconfirmed
accounts, so the app must be smart to wait for the user to click a
link in their e-mail inbox.

The method is rate-limited by IP to 5 requests per 30 minutes.

* Redirect users back to app from confirmation if they were created with an app

* Add tests

* Return 403 on the method if registrations are not open

* Require agreement param to be true in the API when creating an account
2018-12-24 19:12:38 +01:00
Eugen Rochko acf9358c52
Rename "crop" to "change preview" (#9616) 2018-12-24 19:12:18 +01:00
Eugen Rochko 2ee779dcd3
Update emoji codepoint mappings to v11.0 (#9618) 2018-12-24 19:12:00 +01:00
ThibG 5f387995d9 Limit maximum visibility of local silenced users to unlisted (#9583)
Fixes #9580
2018-12-24 19:06:14 +01:00
Thibaut Girka cb98e7dbd3 [Glitch] Add moderation warnings
Port SCSS changes from 3c033c4352 to glitch-soc
2018-12-23 12:54:09 +01:00
Thibaut Girka 82088f0d7d [Glitch] Remove links to bridge.joinmastodon.org (non-functional)
Port bb62827c16 to glitch-soc
2018-12-23 11:43:47 +01:00
Thibaut Girka c5c4450fdd Remove file added by error 2018-12-23 11:43:25 +01:00
Thibaut Girka 22dedb676b [Glitch] Fix unnecessary loadMore calls when the end of a timeline has been reached
Port 8389b496ba to glitch flavour
2018-12-23 11:40:52 +01:00
Thibaut Girka 3e686beaea Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- config/routes.rb
  Upstream changed some admin routes, conflict was because of an added :show
  action for statuses on our side. Kept it.
2018-12-23 11:28:28 +01:00
ThibG e25947db4a Sanitize and sandbox toot embeds (#9552) 2018-12-23 02:16:35 +01:00
Eugen Rochko bb62827c16
Remove links to bridge.joinmastodon.org (non-functional) (#9608)
Add link to profile directory
2018-12-22 23:32:00 +01:00
Eugen Rochko 59e333385b
Show 40 profiles per directory page instead of 30 (#9609)
To better align with the list of hashtags
2018-12-22 23:31:23 +01:00
Eugen Rochko 3c033c4352
Add moderation warnings (#9519)
* Add moderation warnings

Replace individual routes for disabling, silencing, and suspending
a user, as well as the report update route, with a unified account
action controller that allows you to select an action (none,
disable, silence, suspend) as well as whether it should generate an
e-mail notification with optional custom text. That notification,
with the optional custom text, is saved as a warning.

Additionally, there are warning presets you can configure to save
time when performing the above.

* Use Account#local_username_and_domain
2018-12-22 20:02:09 +01:00
Quentí 00862dcaff [i18n] Occitan update (#9607)
* Update for new On Board messages

* Update oc.json
2018-12-22 18:27:03 +01:00
ysksn bd4ee732c2 Remove MailerHelper does nothing (#9604) 2018-12-22 02:35:55 +01:00
Thibaut Girka 1a3088364f Fix composer not getting focus after reply confirmation dialog
The modal-handling code gives back focus to the element focused when the
modal opened. However, in the case of reply confirmation, it would do so
*after* the composer code itself requested focus.
2018-12-21 20:00:49 +01:00
Thibaut Girka 0605c004a5 Fix incorrect and duplicate onConfirm callback 2018-12-21 20:00:49 +01:00
Thibaut Girka 6166751f9e [Glitch] Fix that translation is not applied to "joining hashtags"
Port bfec030a4e to glitch-soc
2018-12-21 19:54:54 +01:00
Thibaut Girka 3611ea02e2 [Glitch] Deep compare tags for hashtag column reload
Port 4fdefffb99 to glitch-soc
2018-12-21 19:54:54 +01:00
Thibaut Girka 4be7313298 [Glitch] Allow joining several hashtags in a single column
Port 4c03e05a4e to glitch-soc

This introduces new requirements in the API:

  `/api/v1/timelines/tag/:tag` now accepts new params: `any`, `all` and `none`
  It now returns status matching tag :tag or any of the :any, provided that
  they also include all tags in `all` and none of `none`.
2018-12-21 19:54:54 +01:00
Marcin Mikołajczak aa0e1ff286 i18n: Update Polish translation (#9594)
Signed-off-by: Marcin Mikołajczak <me@m4sk.in>
2018-12-21 18:56:24 +01:00
ThibG a6079a42b6 Fix composer not getting focus after reply confirmation dialog (#9602)
The modal-handling code gives back focus to the element focused when the
modal opened. However, in the case of reply confirmation, it would do so
*after* the composer code itself requested focus.
2018-12-21 18:52:41 +01:00
Thibaut Girka 6073195a7d [Glitch] Display customized mascot in web UI
Port relevant parts of 9d4541c612 to glitch-soc
2018-12-20 18:39:05 +01:00
Thibaut Girka fb63941c47 Make drawer markup and styling closer to upstream
WARNING: This may break some custom skins!

  `.drawer > .contents` has been moved to
  `.drawer > .drawer__pager > .drawer__iner`, and the waves have been moved
  from `.drawer > .contents` to `.drawer__inner__mastodon`!
2018-12-20 18:39:05 +01:00
Thibaut Girka 5eaf2c9e02 [Glitch] Back to the getting-started when pins the timeline
Port 5bf100f87b to glitch-soc
2018-12-20 14:51:28 +01:00
Thibaut Girka bc113927d6 Move hide_followers_count logic to an helper 2018-12-20 14:51:12 +01:00
Thibaut Girka bd23288a52 Add a per-user setting to hide followers count
This is only available if the instance-wide setting isn't set and allows
people to hide their own followers count. This does not hide others' to
them.
2018-12-20 14:51:12 +01:00
Thibaut Girka 9e04b2e8a4 Per-user followers count display in profile directory 2018-12-20 14:51:12 +01:00
Thibaut Girka 1b18eb49e3 Hide negative follower counts from glitch flavour 2018-12-20 14:51:12 +01:00
Thibaut Girka a1c56fcef1 Add admin setting to disable followers count 2018-12-20 14:51:12 +01:00
Thibaut Girka 0cd367e295 Refactor followers_accounts_controller 2018-12-20 14:51:12 +01:00
Eugen Rochko 108b2139cd
Allow unauthenticated REST API access to GET /api/v1/accounts/:id/statuses (#9573)
Fix #7087

The same data is available over the ActivityPub outbox, RSS, and Atom, so
there is little benefit to keeping it limited in this method.
2018-12-20 01:30:43 +01:00
ThibG 8389b496ba Fix unnecessary loadMore calls when the end of a timeline has been reached (#9581)
Fixes #9568
2018-12-19 22:23:16 +01:00
Thibaut Girka e8d5affe06 Restore oops.gif animation for user who have auto_play_gif set 2018-12-19 20:49:58 +01:00
Thibaut Girka 0c2d48b60a Replace animated oops.gif by a non-animated image
Fixes #6060
2018-12-19 20:49:58 +01:00
Renato "Lond" Cerqueira af37f4a70f Weblate translations (2018-12-19) (#9578)
* Translated using Weblate (Greek)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/

* Translated using Weblate (Czech)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Japanese)

Currently translated at 97.5% (699 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (Slovak)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Dutch)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/nl/

* Translated using Weblate (Galician)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/

* Translated using Weblate (Korean)

Currently translated at 100.0% (717 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ko/

* Translated using Weblate (Korean)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/

* Translated using Weblate (Korean)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ko/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 98.9% (709 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/pt_BR/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 97.8% (91 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/pt_BR/

* Translated using Weblate (Corsican)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/co/

* Translated using Weblate (French)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fr/

* Translated using Weblate (French)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fr/

* Translated using Weblate (Arabic)

Currently translated at 96.8% (90 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ar/

* Translated using Weblate (Arabic)

Currently translated at 96.8% (694 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (717 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/nl/

* Translated using Weblate (Czech)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Slovak)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Czech)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Czech)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Italian)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/it/

* Translated using Weblate (Czech)

Currently translated at 99,9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Catalan)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ca/

* Translated using Weblate (Catalan)

Currently translated at 100,0% (717 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ca/

* Translated using Weblate (Czech)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Occitan)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/oc/

* Translated using Weblate (Occitan)

Currently translated at 99,7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/oc/

* Translated using Weblate (Occitan)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/oc/

* Translated using Weblate (Czech)

Currently translated at 99.9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Greek)

Currently translated at 99.7% (715 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/

* Translated using Weblate (Greek)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (French)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/fr/

* Translated using Weblate (German)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/de/

* Translated using Weblate (German)

Currently translated at 99,9% (716 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (Japanese)

Currently translated at 97,5% (699 of 717 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (Korean)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/

* Translated using Weblate (Czech)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Normalize translations

* Normalize translations, remove unused, add missing plurals
2018-12-19 21:07:05 +09:00
Thibaut Girka 2228655848 [Glitch] Improved appearance of notification filter on safari
Port 2e1b5edfea to glitch-soc
2018-12-19 13:00:08 +01:00
Thibaut Girka add74816a5 Merge branch 'master' into glitch-soc/merge-upstream 2018-12-19 12:58:49 +01:00
mayaeh ff472d2cfb Update Japanese translations. (#9574) 2018-12-19 08:51:02 +01:00
Hinaloe 2e1b5edfea improved appearance of notification filter on safari (#9564) 2018-12-18 22:28:09 +01:00
ThibG e70e496e29 Clean up dead code in public timeline code (#9565) 2018-12-18 22:00:18 +01:00
Thibaut Girka 655da1be20 Reword confirm_before_clearing_draft description 2018-12-18 21:54:34 +01:00
Thibaut Girka 9a7201f2ee Allow disabling the reply confirmation dialog 2018-12-18 21:54:34 +01:00
Thibaut Girka 056a8a8ee4 Allow disabling media confirmation from the confirmation dialog itself 2018-12-18 21:54:34 +01:00
Thibaut Girka 490d8fff0b Remove dead code 2018-12-18 21:39:35 +01:00
Thibaut Girka 82b01a6c9f [Glitch] Put "Media Only" option in column settings instead of content area headline
Port 4f42238c29 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka 9fc7ad7b9c [Glitch] Always display tab navigation on local/federated timeline even when empty
Port 90b64c0069 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka c644e6ea89 Do not replace history state
This is both for consistency with account timelines and to not mess with
the logic used to decide whether going back in the browser's history is
going to make us leave the WebUI.
2018-12-18 21:39:35 +01:00
Thibaut Girka 200a8bdd3a [Glitch] Enable media timeline
Port 8182b61518 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka a693d6e2f2 [Glitch] Hide section headline for timelines in production
Port 4eeda67727 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka 593f88acb1 [Glitch] Change column params on pinned timeline
Port 06252ec71e to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka c03cbb9471 [Glitch] Save onlyMedia prop when pinning column
Port 5ea643b279 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka 1a9e78b9bc [Glitch] Add exact attribute to WrappedRoute for community timeline
Port 46061dc041 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka 1fb4bf87f7 [Glitch] Add media timeline
Port 7403e5d306 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka 0ef2c1415a [Glitch] Make notifications quick-filter use consistent style with profile tabs
Port 12ab15e584 to glitch-soc
2018-12-18 17:23:04 +01:00
Thibaut Girka 06a7c07eda [Glitch] Add notification quick-filter bar in the frontend app
Port 13dce12665 to glitch-soc
2018-12-18 17:22:01 +01:00
Thibaut Girka a18a46ca6e [Glitch] Responsive design for profile directory
Port SCSS changes from 087e118971 to glitch flavour
2018-12-18 17:03:53 +01:00
Thibaut Girka 034ffc079e Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- app/controllers/admin/base_controller.rb
  Some refactoring made upstream, no real conflict.
- app/javascript/mastodon/features/compose/components/compose_form.js
  Updated using upstream's code but using maxChars instead of the
  hardcoded length of 500 characters per toot.
- app/javascript/styles/mastodon/components.scss
  Upstream redesigned the onboarding modal. Not sure why we had a
  conflict there.
2018-12-18 16:55:15 +01:00
kedama 5bf100f87b Back to the getting-started when pins the timeline. (#9561) 2018-12-18 16:43:50 +01:00
jomo 2c1a6f746f fix CSP / X-Frame-Options for media embeds (#9558) 2018-12-18 16:40:30 +01:00
Thibaut Girka 36d27e2891 Sandbox toot embeds in the embed modal
It should not be necessary thanks to our Content Security Policy, but best
be sure in case a server's CSP is incorrect. Also, avoids a CSP warning about
loading remote scripts.
2018-12-17 22:22:29 +01:00
Thibaut Girka 30de4e4dfc [Glitch] Minor scrollable list fixes
* Make sure loading indicator has enough vertical space
* Respect reduce_motion setting for loading indicator

Port 4ede51743e to glitch-soc
2018-12-17 22:14:06 +01:00
Eugen Rochko 12ab15e584
Make notifications quick-filter use consistent style with profile tabs (#9554) 2018-12-17 21:08:40 +01:00
ThibG e709b8da0d Ignore low-confidence CharlockHolmes guesses when parsing link cards (#9510)
* Add failing test for windows-1251 link cards

* Ignore low-confidence CharlockHolmes guesses

Fixes #9466

* Fix no method error when charlock holmes cannot detect charset
2018-12-17 19:19:45 +01:00
ThibG 4ede51743e Minor scrollable list fixes (#9551)
* Make sure loading indicator has enough vertical space

* Respect reduce_motion setting for loading indicator
2018-12-17 17:02:59 +01:00
Thibaut Girka 8266d224ef Split out is_changing_upload from is_submitting
Fixes #855
2018-12-17 13:01:07 +01:00
ysksn 3281df0df1 Move #set_user to Admin::BaseController (#9470)
* Move #set_user to Admin::BaseController

* Rename Admin::TwoFactorAuthenticationsController

from `#set_user` to `#set_target_user` .
2018-12-17 11:40:51 +01:00
Eugen Rochko 9cb26bb56b
Add new first-time tutorial (#9531)
* Prepare to load onboarding as a full page

* Update the first-time introduction

* Improve responsive design

* Replace speech bubble with logo

* Increase text size and reword first paragraph
2018-12-17 11:07:17 +01:00
Eugen Rochko adaf249700
Fix regression in #9539 (#9541) 2018-12-17 04:32:36 +01:00
Eugen Rochko 087e118971
Remove "most popular" tab from profile directory, add responsive design (#9539)
* Remove "most popular" tab from profile directory, add responsive design

* Remove unused translations
2018-12-17 03:14:28 +01:00
Eugen Rochko 628da11e38
Do no retry web push workers if the server returns a 4xx response (#9434)
Add timeout of 10s to web push requests
2018-12-17 03:14:13 +01:00
ThibG 4297de34cf Split out is_changing_upload from is_submitting (#9536)
There is no reason to disable the composer textarea when some media metadata
is being modified, nor is there any reason to focus the textarea when some
media metadata has been modified (prevents clicking one image's description
field right after having modified another).
2018-12-16 21:17:56 +01:00
Thibaut Girka 7238e4ea5f [Glitch] Fix padding on select elements in preferences
Port c58c00651b to glitch-soc
2018-12-16 14:48:15 +01:00
Thibaut Girka 89e4ac67c8 [Glitch] Make animated header resoect `auto_play_gif`
Port part of 7c48688d85 to glitch-soc
2018-12-16 14:48:15 +01:00
Paweł Ngei 13dce12665 Add notification quick-filter bar in the frontend app (#9399)
* create FilterBar componer and its container, unstyled

* introduce basic styling for FilterBar

* add selection css

* allow FilterBar to display active CSS with js

* connect the FilterBar to the Redux state

* change getNotifications to use filter

* remove temporary comments

* add an option to turn the FilterBar off in settings

* fix showFilterBar data type to boolean

* fix eslint errors

* add English and Polish translations

* allowed filter bar overflow to accomodate for longer languages

* fix mispelled translation key

* add unified CSS look

* replace text in FilterBar with icons

* add tooltips

* replace text @ with an icon

* introduce simple and advanced filtering view

* add ability to toggle the advanced view

* add Polish translations

* change Advanced View description to be more clear

* make each filter flush notifications and load new ones, fixing pagination

* simplify getNotifications once frontend filtering is not needed for FilterBar

* add a semicolon

* Revert "simplify getNotifications once frontend filtering is not needed for FilterBar"

This reverts commit 9f4be7857135b0327814bd22a3e8a4e7b546f7cc.

* reset filter to 'all' when turning off FilterBar
2018-12-16 05:56:41 +01:00
Thibaut Girka 65e994b29b Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- app/controllers/directories_controller.rb
- app/controllers/settings/applications_controller.rb
- app/controllers/settings/base_controller.rb
- app/controllers/settings/deletes_controller.rb
- app/controllers/settings/exports_controller.rb
- app/controllers/settings/follower_domains_controller.rb
- app/controllers/settings/imports_controller.rb
- app/controllers/settings/migrations_controller.rb
- app/controllers/settings/notifications_controller.rb
- app/controllers/settings/preferences_controller.rb
- app/controllers/settings/sessions_controller.rb
- app/controllers/settings/two_factor_authentication/confirmations_controller.rb
- app/controllers/settings/two_factor_authentication/recovery_codes_controller.rb
- app/controllers/settings/two_factor_authentications_controller.rb

Conflicts were due to some refactoring already made in glitch-soc
when introducing flavours.
2018-12-15 10:45:53 +01:00
Thibaut Girka f0505a5b2e On mobile, go back in browser history upon posting, unless threaded mode is enabled 2018-12-14 23:56:53 +01:00
ThibG aa7a8a3031 When posting in mobile mode, go back to previous history location (#9502)
Fixes #7112
2018-12-14 20:35:26 +01:00
ThibG 7c48688d85 Make avatar and headers respect `auto_play_gif` (#9515)
* Do not animate account header art if user's GIF autoplay setting is off

Fixes #9472

* Honour currently logged-in user's GIF autoplay setting for account avatars

Fixes #9467

* Fix avatar display on some public pages when data is stored on a different host

* Use ternary operator instead of if/else for avatar/header URL
2018-12-14 20:34:18 +01:00
Sumit Khanna 769c2d2680 Error message for avatar image that's too large. #9204 (#9518)
* Error message for avatar image that's too large. #9204

* Code climate/formatting

* Removed avatar error message

* Moved valid image dimentions check to update service

* removed unnescessary begin block

* code climate formatting

* code climate indent fix
2018-12-14 05:07:21 +01:00
ThibG 11a91592aa Restore profile links in /admin/accounts (#9494)
Fixes #9431
2018-12-14 01:47:50 +01:00
ThibG c58c00651b Fix padding on select elements in preferences (#9517)
Add right-padding to select elements to take the up/down arrows into
account.

Thanks Tixie for finding the issue!
2018-12-14 01:44:39 +01:00
ThibG f20c0b8507 Fix timeline pagination in the WebUI (#9516)
The `hasMore` property of timelines in redux store was set whenever an API
request returned only one page of results, *even* if the query only requested
newer statuses (using `since_id`), causing `hasMore` to be incorrectly set to
false whenever fetching new toots in a timeline, which happens each time
an account's timeline or media gallery is visited.
2018-12-14 01:41:38 +01:00
Thibaut Girka 132dd28162 [Glitch] Fix timeline pagination in the WebUI
The `hasMore` property of timelines in redux store was set whenever an API
request returned only one page of results, *even* if the query only requested
newer statuses (using `since_id`), causing `hasMore` to be incorrectly set to
false whenever fetching new toots in a timeline, which happens each time
an account's timeline or media gallery is visited.
2018-12-13 21:59:46 +01:00
Thibaut Girka c20c6c2029 [Glitch] Fix hasMore in notifications 2018-12-13 21:58:48 +01:00
Renato "Lond" Cerqueira 6eece70fca Weblate translations (2018-12-13) (#9513)
* Translated using Weblate (Czech)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Czech)

Currently translated at 99.9% (697 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt_BR/

* Translated using Weblate (Esperanto)

Currently translated at 99.7% (348 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eo/

* Translated using Weblate (Esperanto)

Currently translated at 98.9% (88 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/eo/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/co/

* Translated using Weblate (Catalan)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ca/

* Translated using Weblate (Greek)

Currently translated at 100,0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Greek)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 98.0% (684 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Galician)

Currently translated at 100,0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Galician)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Czech)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Greek)

Currently translated at 99.6% (695 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/

* Translated using Weblate (Czech)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (349 of 349 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Czech)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 98.0% (684 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Greek)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Catalan)

Currently translated at 100.0% (698 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ca/

* Translated using Weblate (Catalan)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ca/

* Translated using Weblate (Catalan)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ca/

* Translated using Weblate (Esperanto)

Currently translated at 98.6% (345 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eo/

* Translated using Weblate (French)

Currently translated at 99.7% (349 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Czech)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Czech)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/co/

* Translated using Weblate (Italian)

Currently translated at 99.7% (349 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/it/

* Translated using Weblate (Serbian)

Currently translated at 99.7% (696 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sr/

* Translated using Weblate (French)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Esperanto)

Currently translated at 98.9% (690 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/eo/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt_BR/

* Translated using Weblate (Czech)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Basque)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Basque)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (German)

Currently translated at 99.9% (697 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (Slovak)

Currently translated at 98.0% (684 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (French)

Currently translated at 99.9% (697 of 698 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fr/

* Translated using Weblate (French)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (German)

Currently translated at 98.5% (703 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (Greek)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/

* Translated using Weblate (Greek)

Currently translated at 100.0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/el/

* Translated using Weblate (Slovak)

Currently translated at 97.1% (693 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Galician)

Currently translated at 100,0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/gl/

* Translated using Weblate (Galician)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Galician)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/

* Translated using Weblate (Czech)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Czech)

Currently translated at 100.0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/cs/

* Translated using Weblate (Japanese)

Currently translated at 97.9% (699 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (French)

Currently translated at 100,0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/fr/

* Translated using Weblate (French)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fr/

* Translated using Weblate (Japanese)

Currently translated at 99.7% (349 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ja/

* Translated using Weblate (Japanese)

Currently translated at 97.8% (89 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ja/

* Translated using Weblate (Slovak)

Currently translated at 97.9% (699 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/co/

* Translated using Weblate (Corsican)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/co/

* Translated using Weblate (Japanese)

Currently translated at 97.9% (699 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (Slovak)

Currently translated at 98.0% (700 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Czech)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Basque)

Currently translated at 100.0% (714 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/eu/

* Translated using Weblate (Basque)

Currently translated at 100.0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/eu/

* Translated using Weblate (Italian)

Currently translated at 100,0% (91 of 91 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/it/

* Translated using Weblate (Italian)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/it/

* Translated using Weblate (Italian)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/it/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Chinese (Hong Kong))

Currently translated at 84.6% (296 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/zh_Hant_HK/

* Translated using Weblate (Croatian)

Currently translated at 47.4% (166 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/hr/

* Translated using Weblate (Danish)

Currently translated at 96.6% (338 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/da/

* Translated using Weblate (Greek)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/el/

* Translated using Weblate (Greek)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Finnish)

Currently translated at 94.6% (331 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fi/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 82.9% (290 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/zh_Hans/

* Translated using Weblate (Georgian)

Currently translated at 87.4% (306 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ka/

* Translated using Weblate (Armenian)

Currently translated at 68.9% (241 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/hy/

* Translated using Weblate (Esperanto)

Currently translated at 96.6% (690 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/eo/

* Translated using Weblate (Arabic)

Currently translated at 99.7% (349 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ar/

* Translated using Weblate (Arabic)

Currently translated at 95.8% (684 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/

* Translated using Weblate (Czech)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/cs/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Malay)

Currently translated at 13.7% (48 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ms/

* Translated using Weblate (Tamil)

Currently translated at 13.7% (48 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ta/

* Translated using Weblate (Russian)

Currently translated at 91.7% (321 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ru/

* Translated using Weblate (German)

Currently translated at 96.6% (338 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/de/

* Translated using Weblate (Korean)

Currently translated at 97.1% (340 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/

* Translated using Weblate (Serbian (latin))

Currently translated at 70.0% (245 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sr_Latn/

* Translated using Weblate (Thai)

Currently translated at 10.3% (36 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/th/

* Translated using Weblate (Ido)

Currently translated at 36.0% (126 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/io/

* Translated using Weblate (Portuguese)

Currently translated at 70.6% (247 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt/

* Translated using Weblate (Telugu)

Currently translated at 97.1% (340 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/te/

* Translated using Weblate (Swedish)

Currently translated at 85.7% (300 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sv/

* Translated using Weblate (Welsh)

Currently translated at 95.1% (333 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cy/

* Translated using Weblate (Spanish)

Currently translated at 94.6% (331 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/es/

* Translated using Weblate (Polish)

Currently translated at 95.7% (335 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pl/

* Translated using Weblate (Greek)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/el/

* Translated using Weblate (Turkish)

Currently translated at 44.3% (155 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/tr/

* Translated using Weblate (Persian)

Currently translated at 96.6% (338 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fa/

* Translated using Weblate (Norwegian (old code))

Currently translated at 72.0% (252 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/no/

* Translated using Weblate (Japanese)

Currently translated at 99.7% (349 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ja/

* Translated using Weblate (Japanese)

Currently translated at 95.7% (89 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ja/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (714 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/nl/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (62 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/nl/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (714 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/nl/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Slovak)

Currently translated at 99.7% (712 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/co/

* Translated using Weblate (German)

Currently translated at 99.7% (349 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/de/

* Translated using Weblate (German)

Currently translated at 98.9% (706 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (German)

Currently translated at 98.9% (706 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (Danish)

Currently translated at 96.9% (339 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/da/

* Translated using Weblate (Danish)

Currently translated at 89.2% (83 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/da/

* Translated using Weblate (French)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/fr/

* Translated using Weblate (French)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Slovak)

Currently translated at 99.7% (712 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (French)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Galician)

Currently translated at 100,0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Galician)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/gl/

* Translated using Weblate (Galician)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/gl/

* Translated using Weblate (Slovak)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Dutch)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/nl/

* Translated using Weblate (Slovak)

Currently translated at 99.7% (712 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Basque)

Currently translated at 100.0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/eu/

* Translated using Weblate (Basque)

Currently translated at 100.0% (714 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/eu/

* Translated using Weblate (Basque)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Galician)

Currently translated at 99,9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/

* Translated using Weblate (Galician)

Currently translated at 100,0% (93 of 93 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/gl/

* Normalize translations

* Add missing translations for ar, cs, sk and sr

* Translated using Weblate (Galician)

Currently translated at 100.0% (350 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Czech)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Galician)

Currently translated at 99.9% (713 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/gl/

* Normalize translations

* Translated using Weblate (Asturian)

Currently translated at 37.3% (266 of 714 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ast/

* Translated using Weblate (Asturian)

Currently translated at 68.3% (239 of 350 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ast/

* Normalize translations
2018-12-13 16:59:51 +01:00
Thibaut Girka 1e656c3632 [Glitch] Fix “load more” button when no data has been fetched 2018-12-13 15:00:36 +01:00
Thibaut Girka 2d097c10d0 [Glitch] Make account media gallery more consistent with account timeline
Display “load more” more consistently, add a loading indicator on first load.
2018-12-13 15:00:36 +01:00
Thibaut Girka 5f581d7c3c [Glitch] Fix LoadMore usage in account media gallery
(Even though that codepath is probably never actually used…)
2018-12-13 15:00:36 +01:00
Thibaut Girka 73ee38f485 [Glitch] Do not display empty message when the list is known to have more elements 2018-12-13 15:00:36 +01:00
Thibaut Girka 39696024ca Minor cleanup in ScrollableList component 2018-12-13 15:00:36 +01:00
Eugen Rochko 6d2080a74b
Add account hashtags to ActivityPub actor JSON (#9450) 2018-12-13 05:22:01 +01:00
ThibG 55abff8af7 Various fixes to scrollable lists and media gallery (#9501)
* Always use the scrollable class for the ScrollList component

Fixes #9499 as well as empty timelines' scrollbar “blinking”
between loading state and empty state.

* Do not display empty message when the list is known to have more elements

Fixes #9500

* Fix LoadMore usage in account media gallery

(Even though that codepath is probably never actually used…)

* Make account media gallery more consistent with account timeline

Fixes #9498

Display “load more” more consistently, add a loading indicator on first load.

* Fix “load more” button when no data has been fetched
2018-12-12 22:32:44 +01:00
ysksn b048926e67 Create Settings::BaseController (#9507)
Define `Settings::BaseController#set_body_classes` so that sub classes
inherit `Settings::BaseController` don't need to define
`#set_body_classes` agein.
2018-12-12 22:32:13 +01:00
ysksn 83975a2394 Remove redundant (#9503) 2018-12-12 05:54:34 +01:00
ysksn 351ed12b2f Use find_or_initialize_by (#9504) 2018-12-12 05:54:09 +01:00
ThibG cf6ee4ff24 Add admin ability to remove an user's header image (#9495)
* Fix markup in admin/accounts/:id table for avatar

* Add admin ability to remove an user's header image
2018-12-11 19:28:03 +01:00
ThibG 720daa8143 Add instance-wide setting to disable profile directory (#9497)
* Add instance-wide setting to disable profile directory

Fixes #9496

When the profile directory is disabled:
- The “discoverable” setting is hidden from users
- The “profile directory” link is not shown on public pages
- /explore returns 404

* Move Setting.profile_directory check to a before_action filter
2018-12-11 19:18:29 +01:00
Yamagishi Kazutoshi 9650bbc8b2 [i18n] Update Occitan (#9491)
* Adds the Profil directory

* Adds the line about directory

* Harmonisation

* Update oc.yml

* i18n-tasks normalize && i18n-tasks remove-unused

* yarn manage:translations
2018-12-11 05:38:57 +01:00
Adam Copp 7d00e4edbd Make custom emoji domains case insensitive #9351 (#9474)
* Make custom emoji domains case sensitive #9351

* Fixup style in downcase_domain to comply with codeclimate.

* switch if! to unless

* Don't use transactions, operate in batches.

Also revert spurious schema change.
2018-12-11 05:30:57 +01:00
Eugen Rochko dbb1ee269f
Improve e-mail MX validator and add tests (#9489) 2018-12-10 22:53:25 +01:00
ysksn ed24bb2c3e Add specs for activitypub collections controller (#9484)
* Add specs for ActivityPub::CollectionsController#show

* Raise ActiveRecord::RecordNotFound

Raising ActiveRecord::NotFound raises NameError: uninitialized constant
ActiveRecord::NotFound.
2018-12-10 21:39:25 +01:00
ysksn 189a6b17fb Remove RemoteAccountControllerConcern never used (#9482) 2018-12-10 21:38:01 +01:00
ysksn 361818e931 Fix Admin::TagsController#unhide (#9481) 2018-12-10 21:37:38 +01:00
Thibaut Girka 4f59d1efd7 Fix directory controller in glitch-soc 2018-12-09 16:08:10 +01:00
Thibaut Girka 480f938511 [Glitch] Fix various things in the directory
Port ecd303c097 to glitch-soc
2018-12-09 16:08:10 +01:00
Thibaut Girka 0b1bc66695 Port directory CSS changes from upstream
Port 73be8f38c1 to glitch-soc
2018-12-09 16:08:10 +01:00
Thibaut Girka e7f1bfdc2d Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- app/javascript/packs/public.js
- app/models/user.rb
- config/settings.yml
- db/schema.rb

Moved public.js changes to settings.js.
2018-12-09 16:08:04 +01:00
ThibG 81bda7d67c Add setting to not aggregate reblogs (#9248)
* Add setting to not aggregate reblogs

Fixes #9222

* Handle cases where user is nil in add_to_home and add_to_list

* Add hint for setting_aggregate_reblogs option

* Reword setting_aggregate_reblogs label
2018-12-09 13:03:01 +01:00
Eugen Rochko 6b78e5b5ab
Cache hashtag sample accounts, and exclude ineligible ones (#9465) 2018-12-08 01:32:26 +01:00
Eugen Rochko 4638b16822
Make notification time smaller and reduce contrast (#9464) 2018-12-08 00:40:11 +01:00
Paweł Ngei 5c7f641565 Escape HTML in profile name preview in profile settings (#9446)
* fix non-escaped html in the profile settings

* provide a default profile text in case if there's no custom one

* update haml syntax

* simplify default profile name to username

* sanitize user-input html but display emojified icons
2018-12-07 16:42:22 +01:00
Eugen Rochko ecd303c097
Fix various things in the directory (#9449)
* Fix missing variable in directory page title

* Order hashtags by number of people instead of alphabetically

* Add icon to OpenGraph preview of directory page

* Prevent line breaks in hashtags and ensure lowercase in the table
2018-12-07 16:37:32 +01:00
Takeshi Umeda c1c0f7c516 Fix tag mb_chars comparison of profile directory (#9448) 2018-12-07 04:18:37 +01:00
ThibG e3682c9c17
Merge pull request #848 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2018-12-06 17:40:43 +01:00
Eugen Rochko 73be8f38c1
Add profile directory (#9427)
Fix #5578
2018-12-06 17:36:11 +01:00
Thibaut Girka 4167ed375b Fix mention links in detailed statuses not opening in the WebUI 2018-12-06 15:31:21 +01:00
Thibaut Girka 1df392819d Merge branch 'master' into glitch-soc/merge-upstream 2018-12-06 12:44:38 +01:00
ThibG 1a22eff1e0 Attempt fixing deadlocks by moving account stats update outside transaction (#9437)
* Use `update_column` instead of `update_attribute` in callback

`update_attribute` would normally cause callbacks to be called.
Called from a callback, it seems to stop further callbacks from executing.

`update_column` does the same work, but without calling callbacks or
preventing other callbacks from executing.

* Fix deadlocks by moving account stats update outside transaction
2018-12-05 22:51:12 +01:00
Paweł Ngei 9897cf0701 Add visible dates for notifications in Notification column (#9423)
* add RelativeTimestamp elements

* style the elements properly with CSS
2018-12-05 05:08:43 +01:00
ThibG e88c6a5c3c Fix thread depth computation in statuses_controller (#9426)
* Add test that should currently fail

* Fix depth computation (will still fail if statuses have been filtered out)

* Fix handling of broken threads
2018-12-05 02:12:29 +01:00
Eugen Rochko 6ddf0432e7
Improve account suspension speed and completeness (#9290)
- Some associations were missing from the clean-up
- Some attributes were not reset on suspension
- Skip federation and streaming deletes when purging a dead domain
- Move account association definitions to concern
2018-12-03 01:32:08 +01:00
David Yip fe9340d95e
Merge pull request #838 from ThibG/glitch-soc/features/reply-all-streaming-entries
Display a double reply arrow on public pages for toots that are replies
2018-12-02 16:30:52 -06:00
Thibaut Girka a07e37cc17 Merge branch 'master' into glitch-soc/merge-upstream 2018-12-01 21:00:16 +01:00
Thibaut Girka 4b85bf12ab Fix since_id 2018-12-01 18:59:24 +01:00
ThibG 5648b30d6c Fix last_status parameter for notifications and conversations (#9407) 2018-12-01 18:36:41 +01:00
Quentí 6a285f0a15 [i18n] update and corrections for Occitan locale (#9404)
* Update + correction

Colomna and not columna
Pòt, verb missing

* Correction

D’aquí is followed by a time period, and dins by a season.
Read : https://github.com/briannesbitt/Carbon/pull/1403 for more details.

* Correction admin zone

* Correction

Reïnicializacion, with the funny ï
2018-12-01 17:39:13 +01:00
Paweł Ngei b9ec34de57 Add a tooltip explaining what a locked account is (#9403)
* create a title tooltip explaining what a locked account is

* improve phrasing

* minor phrasing fix to unify default and english
2018-12-01 14:25:15 +01:00
ThibG 3cbe0c26bb
Merge pull request #837 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2018-11-30 22:37:58 +01:00
Thibaut Girka 76320bf6d8 Scroll to selected toot even if the ancestors happen to be loaded 2018-11-30 22:37:38 +01:00
Thibaut Girka a10fee3c09 Scroll to detailed status when new ancestors get inserted 2018-11-30 22:37:38 +01:00
Thibaut Girka 31599ad91c [Glitch] Fix bug in order of conversations in web UI
Port e18390cfe6 to glitch-soc
2018-11-30 22:37:38 +01:00
Thibaut Girka 837ea32c88 [Glitch] Replace recursion in status mapStateToProps
Port dfbadd6837 to glitch-soc
2018-11-30 22:37:38 +01:00
Thibaut Girka a28f5695f3 [Glitch] Fix context building in the reducer
Port 7706ed038f to glitch-soc
2018-11-30 22:37:38 +01:00
Thibaut Girka 1624a95b2b [Glitch] Introduce flat layout to contexts reducer
Port 023fe5181b to glitch-soc
2018-11-30 22:37:38 +01:00
Thibaut Girka 1a5de04789 Display a double reply arrow on public pages for toots that are replies 2018-11-30 22:09:52 +01:00
Thibaut Girka bc8411ec87 Merge branch 'master' into glitch-soc/merge-upstream 2018-11-30 20:16:26 +01:00
mayaeh bfec030a4e Fix that translation is not applied to "joining hashtags" (#9397) 2018-11-30 19:36:09 +01:00
Eugen Rochko 3948b6fa52
Remove npm-run-all dependency (#9401)
Fix #9359
2018-11-30 19:16:32 +01:00
Thibaut Girka ad7a3974cc Merge branch 'master' into glitch-soc/merge-upstream 2018-11-29 19:22:52 +01:00
Thibaut Girka 6a264c9379 Improve detailed status component lifecycle
- Move componentWillMount and componentWillReceiveProps logic to
  getDerivedStateFromProps.
- Compute CW auto-unfold status earlier
2018-11-29 18:32:42 +01:00
ThibG fa9f28f52d Swap avatar and header input fields in profile page (#9271)
Fixes #9211
2018-11-29 02:56:09 +01:00
Thibaut Girka 7e63fb26e0 Do not hardcode preferences link, pleroma doesn't have it 2018-11-28 22:36:01 +01:00
Thibaut Girka 922d05864f Add error boundary component to catch Web UI crashes 2018-11-28 22:36:01 +01:00
Thibaut Girka 39c8a71df8 Do not crash the whole UI when loading an invalid column 2018-11-28 22:36:01 +01:00
Thibaut Girka c18bb5d245 Switch “cycling” reply policy link to set of radio inputs
Fixes #832
2018-11-28 22:35:42 +01:00
Thibaut Girka f17a61a916 Add basic UI to set list replies setting in glitch-soc 2018-11-28 14:46:07 +01:00
Thibaut Girka 06c7fb8015 Add backend support to read and update list-specific show_replies settings 2018-11-28 14:46:07 +01:00
Thibaut Girka 53d0293d25 Add database support for list show-reply preferences 2018-11-28 14:46:07 +01:00
David Yip 74a281475a
Merge pull request #829 from ThibG/glitch-soc/features/volume-sliders
[Glitch] Volume sliders for videos
2018-11-27 15:27:21 -06:00
Eugen Rochko c39d7e7b2b
Fix TLS handshake timeout not being enforced (#9381)
Follow-up to #9329
2018-11-27 19:46:05 +01:00
Eugen Rochko 11955600ad
Skip deliveries to inboxes that have already been marked as unavailable (#9358) 2018-11-27 19:15:08 +01:00
Eugen Rochko 81f96c973a
Don't count suspended users in user count (#9380)
Fix #7637
2018-11-27 18:49:37 +01:00
Eugen Rochko 43c311b3a1
Fix nil error when no DNS addresses are found for host (#9379) 2018-11-27 18:13:36 +01:00
Thibaut Girka 3b707bdc12 [Glitch] Volume sliders for videos
Port f978afa487 to glitch-soc
2018-11-27 15:21:57 +01:00
Thibaut Girka 55edfd6e0e Merge branch 'master' into glitch-soc/merge-upstream 2018-11-27 15:10:58 +01:00
Eugen Rochko 4afda5444a
Change identities id column to a bigint (#9371)
* fix: change Identity's id column to a bigint

This appears to be the last model created using a 5.0 migration,
where column types defaulted to `integer` rather than `bigint`.

This migration changes the column type to match that of all of the
other ID columns.

* Change user_id column in identities to bigint and fix down-migration
2018-11-27 13:56:25 +01:00
Thibaut Girka f969eca07e [Glitch] check_boxes label should use display: inline-block
Port 180ae0472a to glitch-soc
2018-11-27 13:29:12 +01:00
Thibaut Girka f8e07ca5cd Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- app/models/status.rb

Resolved by taking both changes (not a real conflict, just changes too close
to each other).
2018-11-27 13:23:02 +01:00
Renato "Lond" Cerqueira 496a6b3dc5 Weblate translations (2018-11-27) (#9367)
* Translated using Weblate (Malay)

Currently translated at 0.4% (3 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ms/

* Added translation using Weblate (Malay)

* Translated using Weblate (Bulgarian)

Currently translated at 14.0% (98 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/bg/

* Translated using Weblate (Croatian)

Currently translated at 14.3% (100 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/hr/

* Translated using Weblate (Asturian)

Currently translated at 31.1% (218 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ast/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (62 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/ar/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ar/

* Translated using Weblate (Arabic)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ar/

* Translated using Weblate (Arabic)

Currently translated at 96.0% (673 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ar/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Czech)

Currently translated at 100.0% (62 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/cs/

* Translated using Weblate (Malay)

Currently translated at 28.7% (201 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ms/

* Translated using Weblate (Polish)

Currently translated at 98.0% (687 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/pl/

* Translated using Weblate (Serbian (latin))

Currently translated at 68.3% (479 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sr_Latn/

* Translated using Weblate (Hebrew)

Currently translated at 43.1% (302 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/he/

* Translated using Weblate (Indonesian)

Currently translated at 31.2% (219 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/id/

* Translated using Weblate (Turkish)

Currently translated at 32.0% (224 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/tr/

* Translated using Weblate (Ido)

Currently translated at 19.3% (135 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/io/

* Translated using Weblate (Asturian)

Currently translated at 49.3% (167 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ast/

* Translated using Weblate (Ido)

Currently translated at 36.9% (125 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/io/

* Translated using Weblate (Hungarian)

Currently translated at 70.2% (238 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/hu/

* Translated using Weblate (Slovenian)

Currently translated at 45.7% (155 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sl/

* Translated using Weblate (Indonesian)

Currently translated at 62.5% (212 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/id/

* Translated using Weblate (Serbian (latin))

Currently translated at 72.0% (244 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sr_Latn/

* Translated using Weblate (Catalan)

Currently translated at 99.4% (337 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ca/

* Translated using Weblate (Polish)

Currently translated at 98.2% (333 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pl/

* Translated using Weblate (Galician)

Currently translated at 99.4% (337 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (Occitan)

Currently translated at 99.4% (337 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/oc/

* Translated using Weblate (Spanish)

Currently translated at 97.3% (330 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/es/

* Translated using Weblate (Romanian)

Currently translated at 97.1% (329 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ro/

* Translated using Weblate (Turkish)

Currently translated at 45.4% (154 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/tr/

* Translated using Weblate (Welsh)

Currently translated at 97.9% (332 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cy/

* Translated using Weblate (Portuguese)

Currently translated at 72.6% (246 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt/

* Translated using Weblate (Bulgarian)

Currently translated at 22.4% (76 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/bg/

* Translated using Weblate (Norwegian (old code))

Currently translated at 74.0% (251 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/no/

* Translated using Weblate (Slovenian)

Currently translated at 89.9% (80 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sl/

* Translated using Weblate (Czech)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Czech)

Currently translated at 100.0% (62 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/cs/

* Translated using Weblate (Slovenian)

Currently translated at 13.3% (93 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sl/

* Translated using Weblate (Czech)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Korean)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ko/

* Translated using Weblate (Corsican)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/co/

* Translated using Weblate (French)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Asturian)

Currently translated at 29.0% (18 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/ast/

* Translated using Weblate (Asturian)

Currently translated at 50.0% (1 of 2 strings)

Translation: Mastodon/Activerecord
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/activerecord/ast/

* Translated using Weblate (Asturian)

Currently translated at 36.2% (254 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ast/

* Translated using Weblate (Asturian)

Currently translated at 43.9% (43 of 98 strings)

Translation: Mastodon/Doorkeeper
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/doorkeeper/ast/

* Translated using Weblate (Asturian)

Currently translated at 68.1% (231 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ast/

* Translated using Weblate (Asturian)

Currently translated at 59.6% (53 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/ast/

* Translated using Weblate (Asturian)

Currently translated at 68.1% (231 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ast/

* Translated using Weblate (Persian)

Currently translated at 99.7% (699 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/fa/

* Translated using Weblate (Persian)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/fa/

* Translated using Weblate (Slovenian)

Currently translated at 15.5% (109 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sl/

* Translated using Weblate (Slovenian)

Currently translated at 46.0% (156 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sl/

* Translated using Weblate (Galician)

Currently translated at 100,0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/gl/

* Translated using Weblate (German)

Currently translated at 99,7% (699 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/de/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Basque)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Chinese (Traditional))

Currently translated at 100.0% (62 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/zh_Hant/

* Translated using Weblate (Basque)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Corsican)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/co/

* Translated using Weblate (Danish)

Currently translated at 98.9% (693 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/da/

* Translated using Weblate (Danish)

Currently translated at 99.4% (337 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/da/

* Translated using Weblate (Danish)

Currently translated at 91.0% (81 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/da/

* Translated using Weblate (Finnish)

Currently translated at 97.9% (332 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fi/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Italian)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/it/

* Translated using Weblate (Italian)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/it/

* Translated using Weblate (Welsh)

Currently translated at 91.0% (638 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cy/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (French)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/fr/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (62 of 62 strings)

Translation: Mastodon/Devise
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/devise/nl/

* Translated using Weblate (Malay)

Currently translated at 42.9% (301 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ms/

* Translated using Weblate (Japanese)

Currently translated at 99.4% (337 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ja/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/pt_BR/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/pt_BR/

* Translated using Weblate (Japanese)

Currently translated at 99.7% (338 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ja/

* Translated using Weblate (Czech)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Danish)

Currently translated at 100,0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/da/

* Translated using Weblate (Czech)

Currently translated at 100,0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/cs/

* Translated using Weblate (Basque)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Japanese)

Currently translated at 99.6% (698 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (Basque)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/eu/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Czech)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/cs/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 94.4% (84 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Japanese)

Currently translated at 99.7% (699 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (Japanese)

Currently translated at 99.6% (698 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/ja/

* Translated using Weblate (Telugu)

Currently translated at 0.6% (4 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/te/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Slovak)

Currently translated at 96.6% (677 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Slovak)

Currently translated at 96.6% (677 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Slovak)

Currently translated at 97.7% (685 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/sk/

* Translated using Weblate (Slovak)

Currently translated at 97.7% (685 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Greek)

Currently translated at 99.6% (698 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/el/

* Translated using Weblate (Slovak)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/sk/

* Translated using Weblate (Slovak)

Currently translated at 97.7% (685 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Basque)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Basque)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/eu/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/nl/

* Translated using Weblate (Basque)

Currently translated at 100.0% (89 of 89 strings)

Translation: Mastodon/Preferences
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/simple_form/eu/

* Translated using Weblate (Telugu)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/te/

* Translated using Weblate (Czech)

Currently translated at 99.9% (700 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/cs/

* Translated using Weblate (Telugu)

Currently translated at 100.0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/te/

* Translated using Weblate (Catalan)

Currently translated at 100,0% (339 of 339 strings)

Translation: Mastodon/React
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/frontend/ca/

* Translated using Weblate (Slovak)

Currently translated at 97.7% (685 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Translated using Weblate (Slovak)

Currently translated at 97.9% (686 of 701 strings)

Translation: Mastodon/Backend
Translate-URL: https://weblate.joinmastodon.org/projects/mastodon/backend/sk/

* Normalize translations

* Normalize translations

ran yarn build:development && i18n-tasks normalize && yarn
manage:translations && i18n-tasks remove-unused
Also ran i18n-tasks check-consistent-interpolations

* Fix ast translation

* Fix missing plurals for ar

* Add missing plurals for cs

* Add missing plurals for sk

* Add missing plurals for sl

* Normalize translations
2018-11-27 12:50:26 +01:00
ThibG 395615d9f3 Allow hyphens in the middle of remote user names (#9345)
Fixes #9309

This only allows hyphens in the middle of a username, much like dots,
although I don't have a compelling reason to do so other than keeping
the changes minimal.
2018-11-27 12:28:01 +01:00
Sumit Khanna f978afa487 Volume sliders for videos #7429 (#9366)
* Volume sliders for videos #7429

* Code formatting updates

* Code formatting updates
2018-11-27 12:25:38 +01:00
Hugo Gameiro b6681d21ad add loglevel to ffmpeg in gif upload (#9368) 2018-11-27 12:19:12 +01:00
Eugen Rochko 73faadad28
Redesign admin accounts index (#9340)
* Improve overview of accounts in admin UI

- Display suspended status, role, last activity and IP prominently
- Default to showing local accounts
- Default to not showing suspended accounts

* Remove unused strings

* Fix tests

* Allow filtering accounts by IP mask
2018-11-26 15:53:27 +01:00
valerauko db9aea34de Ensure replied-to is a status not a boost (#9129)
* Ensure replied-to is a status not a boost

* Consider case of not a reply

* Add test case for replying to boost

* Move reblog-reply resolution to model

* Remove unnecessary comment
2018-11-25 16:35:21 +01:00
takayamaki 180ae0472a check_boxes label should use display: inline-block (#9348) 2018-11-25 16:26:15 +01:00
Thibaut Girka 6b6e633c09 Update MediaGallery and Video props when folding/unfolding CWs in detailed statuses 2018-11-25 11:29:56 +01:00
Thibaut Girka b41d60f2d8 Render placeholder when inline video container width isn't known 2018-11-25 11:29:56 +01:00
Thibaut Girka 0d3612482e Render placeholder instead of image when MediaGallery container width isn't known 2018-11-25 11:29:56 +01:00
Eugen Rochko 0eaf6d7693
Sort self-replies to the top of descendants (#9320)
Fix #6463
2018-11-24 20:48:50 +01:00
Eugen Rochko 87a43274f1
Revert "Sort self-replies to the top of the thread (#9296)" (#9335)
This reverts commit 074960bb0f.

Fix #9315
2018-11-23 21:58:01 +01:00
Eugen Rochko fd8145d232
Fix connect timeout not being enforced (#9329)
* Fix connect timeout not being enforced

The loop was catching the timeout exception that should stop execution, so the next IP would no longer be within a timed block, which led to requests taking much longer than 10 seconds.

* Use timeout on each IP attempt, but limit to 2 attempts

* Fix code style issue

* Do not break Request#perform if no block given

* Update method stub in spec for Request

* Move timeout inside the begin/rescue block

* Use Resolv::DNS with timeout of 1 to get IP addresses

* Update Request spec to stub Resolv::DNS instead of Addrinfo

* Fix Resolve::DNS stubs in Request spec
2018-11-22 20:12:04 +01:00
valerauko 824497fbce Ignore JSON-LD profile in mime type comparison (#9179)
Ignore JSON-LD profile in mime type comparison
2018-11-22 12:49:07 +01:00
ThibG 466e3d710c Include replies to list owner and replies to list members in list statuses (#9324) 2018-11-21 17:02:58 +01:00
Eugen Rochko 384e953b75
Revert connect timeout from 1s to 10s (#9319)
The failure rate in Sidekiq is too high
2018-11-21 17:00:56 +01:00
Alexandre Alapetite d1d2377870 WebSub: ATOM before RSS (#9302)
Hello,
The ATOM feed contains the hub declaration for WebSub, but the RSS
version does not.
RSS/ATOM readers will typically pick whichever version comes first, and
will thus not see the WebSub feature.
I therefore suggest putting the ATOM version first, as it is more
feature-rich than its RSS counterpart is.

Clients not compatible with ATOM would not pick it anyway due to the
different type attribute.

A more complicated alternative would be to declare the WebSub feature in
the RSS version as well, using something like the following code, and
ensuring that clients subscribed to the RSS version would receive PuSH
updates just like those subscribed to the ATOM version.

````xml
<rss version="2.0" xmlns:webfeeds="http://webfeeds.org/rss/1.0"
xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<atom:link rel="self" type="application/rss+xml"
href="https://diaspodon.fr/users/test.rss"/>
<atom:link rel="hub" href="https://diaspodon.fr/api/push"/>
</channel>
</rss>
```
2018-11-20 22:25:04 +01:00
Eugen Rochko 0c666ae5e6
Cast status_count to integer (#9314)
It is returned as a double because the sum is now over bigint columns

Fix #9312
2018-11-20 02:52:52 +01:00
Thibaut Girka b3ff35a75c Move URLs to backend in their own file 2018-11-19 15:56:38 +01:00
James Kiesel 6a65d87f4d Simplify hashtag query service, perf increase for 'any' tags (#9298) 2018-11-19 12:49:50 +01:00
Eugen Rochko 1d38c9750a
Fix filter ID not being a string in REST API (#9303) 2018-11-19 10:37:57 +01:00
Eugen Rochko d6b9a62e0a
Extract counters from accounts table to account_stats table (#9295) 2018-11-19 00:43:52 +01:00
James Kiesel 4fdefffb99 Deep compare tags for hashtag column reload (#9297)
* Deep compare tags for hashtag column reload

* Don't use global lodash
2018-11-17 11:07:48 +01:00
Eugen Rochko 9311430ed7
Prevent multiple handlers for Delete of Actor from running (#9292) 2018-11-16 19:46:23 +01:00
Eugen Rochko 074960bb0f
Sort self-replies to the top of the thread (#9296)
Fix #6463
2018-11-16 19:34:10 +01:00
Thibaut Girka a77ee0bb6d Fix composer not displaying on iPad 2018-11-16 15:04:32 +01:00
Eugen Rochko 8069fd636b
Remove intermediary arrays when creating hash maps from results (#9291) 2018-11-16 15:02:18 +01:00
mayaeh bdd3c8c255 Change the password form order (#9267)
* Change order of password.

* Update Japanese translation for "Show thread".

* Separate the translation PR.
2018-11-16 11:18:43 +01:00
mayaeh 560acf171e Update Japanese translation for "Show thread". (#9287) 2018-11-16 11:16:10 +09:00
Thibaut Girka 86527024aa In detailed status view, take displayMedia setting into account when changing media
Fixes #819
2018-11-15 16:38:50 +01:00
Thibaut Girka f84897c7d7 Add field to serialized local-only statuses 2018-11-13 18:55:57 +01:00
Thibaut Girka 759750801e Exclude local-only toots from atom feeds 2018-11-13 18:55:57 +01:00
Thibaut Girka 6ce7e74b46 [Glitch] Fix race condition when interacting with deleted toots
Port c875f19673 to glitch-soc
2018-11-13 16:30:07 +01:00
Thibaut Girka bfe2b9cc50 Merge branch 'master' into glitch-soc/merge-upstream 2018-11-13 16:28:07 +01:00
Thibaut Girka 2fe0cb1623 [Glitch] Prepend account header even when status list is empty
Partially port 90b64c0069
2018-11-13 15:54:04 +01:00
Thibaut Girka c78c80f807 [Glitch] Fix loading indicator inconsistency
Port 3cecf3e5b9 to glitch-soc
2018-11-13 15:54:04 +01:00
Thibaut Girka 5ebbaffaa3 [Glitch] Use local instead of global loading indicator for timelines, account timelines
Port dd00cd19d2 to glitch-soc
2018-11-13 15:54:04 +01:00
ThibG c875f19673 Fix race condition causing shallow status with only a "favourited" attribute (#9272)
Fixes #9231
2018-11-13 14:58:14 +01:00
Eugen Rochko bb69d154c4
Fix null error introduced in #9270 (#9275) 2018-11-12 22:07:31 +01:00
ThibG bbd8fdd185 Perform deep comparison for card data when receiving new props (#9270)
Fixes #9226
2018-11-12 18:17:50 +01:00
Les Orchard cc1f13dfd0 Only consider mouse move in scrolling on item insertion (#9262)
Fixes #9259
2018-11-11 23:20:20 +01:00
mayaeh 208d278cbc i18n: Add ja translations (#9261)
* Run yarn manage:translations

* Add Japanese translations.
2018-11-11 18:57:16 +01:00
ThibG 7f5a4be580 Fix emoji update date processing (#9255) 2018-11-10 23:59:51 +01:00
ThibG 9b89c62d43 Check that twitter:player is valid before using it (#9254)
Fixes #9251
2018-11-10 20:42:04 +01:00
Thibaut Girka 0506c6f62f Merge branch 'master' into glitch-soc/merge-upstream 2018-11-10 17:57:19 +01:00
Eugen Rochko 3cecf3e5b9
Fix loading indicator inconsistency (#9252)
* Use global loading indicator when loading more items

* Use local loading indicator for notifications

And remove global loading indicator for initial custom emojis load
2018-11-10 15:04:13 +01:00
ThibG 09562b0fcc
Merge pull request #806 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2018-11-09 22:29:52 +01:00
Thibaut Girka 868cace797 [Glitch] Remove unused computation of reblog references from updateTimeline 2018-11-09 21:57:56 +01:00
Thibaut Girka 0e80661e42 [Glitch] Don't remove originals of boosted toots from timeline
Port 2b51b4094c to glitch-soc
2018-11-09 21:57:56 +01:00
Les Orchard 2f86fc5e0a Identify manual scrolling to cancel scroll to top reset on mouse idle (#9245) 2018-11-09 18:06:43 +01:00
Thibaut Girka 44f5f7bab4 Fix drawer waves being displayed in the list editor 2018-11-09 18:00:29 +01:00
ThibG 08b3de4d5e Remove unused computation of reblog references from updateTimeline (#9244) 2018-11-09 17:43:25 +01:00
Thibaut Girka c6fc3e0c65 [Glitch] Fix form validation flash message color and input borders
Port ccbdf689e8 to glitch-soc
2018-11-09 15:10:09 +01:00
Thibaut Girka 9201398507 Merge branch 'master' into glitch-soc/merge-upstream 2018-11-09 14:56:31 +01:00
Thibaut Girka bf92e7aaa6 [Glitch] Implement adding a user to a list from their profile
Port bb5558de62 to glitch-soc
2018-11-09 14:50:08 +01:00
Eugen Rochko 4615512285
Reduce connect timeout limit and limit signature failures by source IP (#9236)
* Reduce connect timeout from 10s to 1s

* Limit failing signature verifications per source IP
2018-11-08 21:35:58 +01:00
Eugen Rochko dd00cd19d2
Use local instead of global loading indicator for timelines, account timelines (#9224)
So that opening a profile feels faster. Also, pinned toots are not
shown before other toots have loaded. Also, if no toots are loaded,
added empty message
2018-11-08 21:35:06 +01:00
Eugen Rochko 5cbf6cf3ec
Add "Show thread" link to self-replies (#9228)
Fix #4716
2018-11-08 21:08:57 +01:00
Eugen Rochko ccbdf689e8
Fix form validation flash message color and input borders (#9235)
* Fix form validation flash message color and input borders

* Fix typo
2018-11-08 21:06:14 +01:00
Eugen Rochko 7f4adfaf77
Fix follow limit validator reporting lower number past threshold (#9230)
* Fix follow limit validator reporting lower number past threshold

* Avoid floating point follow limit
2018-11-08 21:06:01 +01:00
Eugen Rochko 6d59dfa15d
Optimize the process of following someone (#9220)
* Eliminate extra accounts select query from FollowService

* Optimistically update follow state in web UI and hide loading bar

Fix #6205

* Asynchronize NotifyService in FollowService

And fix failing test

* Skip Webfinger resolve routine when called from FollowService if possible

If an account is ActivityPub, then webfinger re-resolving is not necessary
when called from FollowService. Improve options of ResolveAccountService
2018-11-08 21:05:42 +01:00
Les Orchard 9cfd610484 Cancel list scroll reset after mouse move on wheel scroll (#9233)
- Use object properties rather than component state for
  mouseMovedRecently and scrollToTopOnMouseIdle flags

- Remove redundant scrollToTop prop call, also fixing an attempt to call
  an undefined prop.

Fixes #9217
2018-11-08 18:45:20 +01:00
Eugen Rochko b22db8162a
Increase default column width from 330px to 350px (#9227) 2018-11-08 07:42:17 +01:00
Thibaut Girka a2a254625b [Glitch] Update reset.scss from upstream 2018-11-06 16:03:53 +01:00
Thibaut Girka 36dab188fd Merge branch 'master' into glitch-soc/merge-upstream 2018-11-06 15:22:44 +01:00
Les Orchard 6a1216d2cd Temporarily hold timeline if mouse moved recently (fixes #8630) (#9200)
- On recent mouse movement, hold timeline position so statuses remain in
  place for interactions in progress.

- If the timeline had been scrolled to the top before mouse movement,
  restore scroll on mouse idle.
2018-11-05 18:59:41 +01:00
m.b cd41c2c6ad Update resolve_url_service.rb (#9188) 2018-11-05 18:54:07 +01:00
James Kiesel 4c03e05a4e Allow joining several hashtags in a single column (#8904)
* Nascent tag menu on frontend

* Hook up frontend to search

* Tag intersection backend first pass

* Update yarnlock

* WIP

* Fix for tags not searching correctly

* Make radio buttons function

* Simplify radio buttons with modeOption

* Better naming

* Rearrange options

* Add all/any/none functionality on backend

* Small PR cleanup

* Move to service from scope

* Small cleanup, add proper service tests

* Don't use send with user input :D

* Set appropriate column header

* Handle auto updating timeline

* Fix up toggle function

* Use tag value correctly

* A bit more correct to use 'self' rather than 'all' in status scope

* Fix some style issues

* Fix more code style issues

* Style select dropdown more better

* Only use to_id'ed value to ensure no SQL injection

* Revamp frontend to allow for multiple selects

* Update backend / col header to account for more flexible tagging

* Update brakeman ignore

* Codeclimate suggestions

* Fix presenter tag_url

* Implement initial PR feedback

* Handle additional tag streaming

* CodeClimate tweak
2018-11-05 18:53:25 +01:00
namelessGonbai bb5558de62 Implement adding a user to a list from their profile (#9062)
* Add add user to list from thier profile

* Fix listAdderCss
2018-11-05 18:52:38 +01:00
Steven Tappert a7e3bd0300 Check for empty "last_status" before sorting DM column (#9207)
* Check for empty "last_status" before sorting

* Small touchups for codeclimate
2018-11-05 18:51:43 +01:00
Sorin Davidoi d6c7b01d08 fix(reset): Property name for styled scrollbars (#9210)
https://webplatform.news/issues/2018-10-26
2018-11-05 18:51:26 +01:00
Thibaut Girka 34209c0340 Fix timestamp position in public pages with RTL languages 2018-10-31 11:37:47 +01:00
Thibaut Girka b3c1380980 Fix styling of display names in public pages 2018-10-31 11:37:47 +01:00
Thibaut Girka 75b48dc177 Merge branch 'master' into glitch-soc/merge-upstream 2018-10-31 10:08:36 +01:00
Thibaut Girka 2b2facbbdf [Glitch] Port some of upstream's getting started footer links 2018-10-31 10:07:41 +01:00
Eugen Rochko b9d0d209cd
Fix reducer error when conversation has no last status in web UI (#9173)
Fix #9170
2018-10-31 00:55:20 +01:00
Eugen Rochko ce2ee68b64
Revert "Fix FetchAtomService content type handling (#9132)" (#9171)
This reverts commit c36a4a1617.
2018-10-31 00:43:34 +01:00
Quentí 804586172e [i18n] Update for Occitan (#9169)
* Update oc.json

* Update oc.yml

* Update simple_form.oc.yml

* Update simple_form.oc.yml

* Update oc.json
2018-10-30 22:06:31 +01:00
Thibaut Girka 0d6b8f36aa [Glitch] Fix empty display name precedence over username in web UI
Port f59b840549 to glitch-soc
2018-10-30 17:54:50 +01:00
Thibaut Girka 1c448d6474 Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- app/controllers/auth/sessions_controller.rb

Upstream reverted something we partially reverted already.
Reverted the rest to match upstream.
2018-10-30 17:52:08 +01:00
Thibaut Girka 7e18e95716 Add a local setting for inline preview cards 2018-10-30 17:51:06 +01:00
Thibaut Girka bdc2338833 Add a “link” status icon for toots with a preview card 2018-10-30 17:51:06 +01:00
Thibaut Girka b21615e957 [Glitch] Fix dimensions of preview cards, fix crash in web UI, fix warning
Port 9c38c5daa3 to glitch-soc
2018-10-30 17:51:06 +01:00
Thibaut Girka ac9780b844 [Glitch] Include preview cards in status entity in REST API
Port 795f0107d2 to glitch-soc
2018-10-30 17:51:06 +01:00
Eugen Rochko f59b840549
Fix empty display name precedence over username in web UI (#9163)
Fix #9131
2018-10-30 17:06:12 +01:00
Eugen Rochko cc45a8f9f7
Fix td instead of th in sessions table header (#9162)
Fix #9130
2018-10-30 17:00:34 +01:00
Eugen Rochko 5c8e7f0e1d
Revert "feat(auth/session_controller): Send Clear-Site-Data when logging out (8627)" (#9161)
This reverts commit 10680f93e7.
2018-10-30 16:25:54 +01:00
valerauko c36a4a1617 Fix FetchAtomService content type handling (#9132)
* Add profile to json+ld in Accept

It's required by the ActivityPub spec

* Use headers['Content-type'] instead of mime_type

mime_type strips the profile from the content type, but it's still available raw in the headers hash

* Add test for ld+json with profile
2018-10-30 15:07:57 +01:00
Quentí a3d40ba53b [i18n] Update for Occitan (#9157)
* Update oc.json

* Update devise.oc.yml

* Update oc.yml

* Update oc.json
2018-10-30 15:05:01 +01:00
Eugen Rochko be202f9377
Accept the same payload in multiple inboxes and deliver (#9150) 2018-10-30 15:03:55 +01:00
Eugen Rochko 47b8d195e6
Always let through notifications from staff (#9152)
* Always let through notifications from staff

Follow-up to #8993

* Let messages from staff through, but no other notifications
2018-10-30 15:02:55 +01:00
ThibG a03d506626 Fix Pleroma mentions being fetched as preview cards (#9158) 2018-10-30 15:02:24 +01:00
Masoud Abkenar 3aa2418217 [Glitch] RTL: fix toot privacy preferences radio buttonss
Port e961a763a2 to glitch-soc
2018-10-30 11:24:40 +01:00
Masoud Abkenar e32a4f55fe [Glitch] RTL: fix preferences page checkbox margins
Port 5ee0b51ac8 to glitch-soc
2018-10-30 11:24:19 +01:00
Thibaut Girka 94ad76a5b9 Merge branch 'master' into glitch-soc/merge-upstream 2018-10-30 11:22:25 +01:00
trwnh 2cc099c70f Make detailed-status__wrapper actually wrap detailed status (#8547)
* Remove class from scrollable div

.detailed-status__wrapper does not actually wrap the detailed status here

* Re-add class to focusable div

.detailed-status__wrapper now wraps the detailed status instead of the entire scrollable area
2018-10-30 06:33:02 +01:00
Masoud Abkenar e961a763a2 RTL: fix toot privacy preferences radio buttonss (#9146) 2018-10-30 00:49:29 +01:00
Masoud Abkenar 5ee0b51ac8 RTL: fix preferences page checkbox margins (#9145)
* RTL: fix preferences page checkbox margins

* Update rtl.scss
2018-10-30 00:47:43 +01:00
ThibG 33a71e8f7c Do not hide boost notifications from followed people with hidden boosts (#9147)
* Do not hide boost notifications from followed people with hidden boosts

Not displaying boosts from a followed user in the Home timeline and not
having notifications when they reblog your own content are two very
separate concerns, tying them together seem counter-intuitive and unwanted.

* Update specs accordingly
2018-10-30 00:47:31 +01:00
ash lea 7ec3f6022d move some constants to rails environment 2018-10-29 21:29:31 +01:00
Thibaut Girka a942ad3062 Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- config/locales/simple_form.ja.yml

Not a real conflict, one new string was introduced in
glitch and one in upstream.
2018-10-29 14:00:41 +01:00