Commit Graph

2564 Commits (15093f9113e0eda8a66a7c12bbd92e7e8670da15)

Author SHA1 Message Date
Eugen Rochko fe5b66aa08 Handle duplicate ActivityPub activities (#4639)
* Handle duplicate ActivityPub activities

Only perform side-effects when record processed for the first time

* Fast-forward repeat follow requests
7 years ago
takayamaki d5acf4275f Improve about ja translation standalone.public_title (#4641) 7 years ago
Eugen Rochko 412ea87306 Improve ActivityPub/OStatus compatibility (#4632)
*Note: OStatus URIs are invalid for ActivityPub. But we have them for
as long as we want to keep old OStatus-sourced content and as long as
we remain OStatus-compatible.*

- In Announce handling, if object URI is not a URL, fallback to object URL
- Do not use specialized ThreadResolveWorker, rely on generalized handling
- When serializing notes, if parent's URI is not a URL, use parent's URL
7 years ago
Eugen Rochko 774b8661bc Revert #4616 (#4638) 7 years ago
Eugen Rochko c7d2619ab1 Parse OStatus tag URIs in ActivityPub handlers when those are local (#4631) 7 years ago
Yamagishi Kazutoshi 2edfdab6e6 Don't send Link header when don't know prev and next links (#4633) 7 years ago
Eugen Rochko 4edf9d849f Make ActivityPub::TagManager#local_uri? recognize local URIs with ports (#4628) 7 years ago
Eugen Rochko 10489b4e4a If url attribute not present in Note, fallback to id attribute (#4629) 7 years ago
Eugen Rochko 40c45f5dd9 Put ActivityPub alternate link into Atom, prefer it when processing Atom (#4623) 7 years ago
nightpool efec02f153 use existing inflections instead of custom helper (#4624)
* use existing inflections instead of custom helper

* use ActiveSupport versions
7 years ago
Eugen Rochko 116b8a6363 Fix #4607 - Accept/reject activities use FollowRequest, which has inverse relations (#4616) 7 years ago
Eugen Rochko ad892dbc0c Add _:atomUri property for deduplicating OStatus/ActivityPub legacy records (#4593) 7 years ago
nullkal 075d6a1e13 Show what protocol is used for accounts in admin/accounts#index (#4622)
* Show what protocol used for in admin/accounts#index

* Add frozen_string_literal
7 years ago
m4sk1n 2a04bdc87a i18n: Update Polish translation (#4613)
* i18n: Update Polish translation

* Update pl.json
7 years ago
Eugen Rochko ca7ea1aba9 Redesign public profiles (#4608)
* Redesign public profiles

* Responsive design

* Change public profile status filtering defaults and add options

- No longer displays private/direct toots even if you are permitted access
- By default omits replies
- "With replies" option
- "Media only" option

* Redesign account grid cards

* Fix style issues
7 years ago
Clworld f814661fca Make share intent modal to make "signed in as" shown. (#4611)
* Make share intent modal to make "signed in as" shown.

* fix glitch on mobile.
7 years ago
abcang e120d09c98 Fix require_user! behavior when not logged in (#4604) 7 years ago
Eugen Rochko 4fcbb1f838 Re-add missing transaction around status-from-OStatus creation (#4603) 7 years ago
unarist a855956185 Fix ActivityPub follow interaction and add more specs (#4601) 7 years ago
unarist 5b9ae7981e Update /admin/accounts/:id view for ActivityPub (#4600)
* Add protocol field
* Switch protocol specific information according to active protocol
* Hide PuSH subscription related buttons if ActivityPub is active
7 years ago
Yamagishi Kazutoshi 5f22c0189d Add support for searching AP users (#4599)
* Add support for searching AP users

* use JsonLdHelper
7 years ago
Eugen Rochko 26d26644ac Require "inbox" to be set on actor to be ActivityPub-ready (#4595) 7 years ago
Eugen Rochko 3c6503038e Add protocol handler. Handle follow intents (#4511)
* Add protocol handler. Handle follow intents

* Add share intent

* Improve code in intents controller

* Adjust share form CSS
7 years ago
Yamagishi Kazutoshi 96e9ed13de Fix search (regression from #4589) (#4594) 7 years ago
Eugen Rochko 6df8bd277b Set correct content-type for ActivityPub JSON (#4592) 7 years ago
Eugen Rochko 4e75f0d889 Hook up URL-based resource look-up to ActivityPub (#4589) 7 years ago
Eugen Rochko a2aeacbfee Add alternate links to ActivityPub resources from HTML/HEAD variants (#4586) 7 years ago
Eugen Rochko b7370ac8ba ActivityPub delivery (#4566)
* Deliver ActivityPub Like

* Deliver ActivityPub Undo-Like

* Deliver ActivityPub Create/Announce activities

* Deliver ActivityPub creates from mentions

* Deliver ActivityPub Block/Undo-Block

* Deliver ActivityPub Accept/Reject-Follow

* Deliver ActivityPub Undo-Follow

* Deliver ActivityPub Follow

* Deliver ActivityPub Delete activities

Incidentally fix #889

* Adjust BatchedRemoveStatusService for ActivityPub

* Add tests for ActivityPub workers

* Add tests for FollowService

* Add tests for FavouriteService, UnfollowService and PostStatusService

* Add tests for ReblogService, BlockService, UnblockService, ProcessMentionsService

* Add tests for AuthorizeFollowService, RejectFollowService, RemoveStatusService

* Add tests for BatchedRemoveStatusService

* Deliver updates to a local account to ActivityPub followers

* Minor adjustments
7 years ago
Eugen Rochko ccdd5a9576 Add serializing/unserializing of "locked" actor attribute (#4585) 7 years ago
Eugen Rochko 3d47154c20 Only PuSH-resubscribe to OStatus accounts (#4583) 7 years ago
Sylvhem d0a217eb92 Minor fixes in the French translation (#4580)
* Ajout de traductions manquantes

Ajoute des traductions pour les chaînes n’en ayant pas en version 1.5.1.

Add translations for the strings that are missing them in 1.5.1.

* Remplace « ' » par « ’ »

Retire de la traduction les apostrophes droites « ' » (U+0027) au profit des apostrophes typographiques « ’ » (U+2019).
En typographie française, les apostrophes typographiques sont utilisées à la place des apostrophes droites. La traduction était incohérente et utilisait les deux.

Remove from the translation all the vertical apostrophes (U+0027) in favor of the curly ones (U+2019).
In French typography, typographic apostrophes are used instead of vertical ones. The translation was incoherent and used both.

* Ajout d’espaces insécables

Ajoute des espaces insécables suivant les régles nécessaires en typographie française.

Add non-breaking spaces following rules of French typography.

* Remplace « status » par « statut »

Remplace le mot anglais « status » par sa traduction française « statut ».

Replace the English word "status" by its French translation "statut".

* Correction de la politique de confidentialité

Apporte diverses corrections à la traduction de la politique de confidentialité.

Add various fixes to the privacy policy's translation.

* Remplace « mentionné » par « mentionné·e »

Harmonise la traduction en remplaçant « mentionné » par sa forme épicène.

Harmonize the translation by replacing "mentionné" (sure) by its epicene form.

* Remplace « Coup d’œil » par « Jeter un coup d’œil… »

Remplace la première traduction par une forme plus proche de la version originelle.

Replace the first translation by something closer to the original version.

* Remplace « Bon Appétoot ! » par « Bon appouetit ! »

Remplace « Bon Appétoot ! » par « Bon appouetit ! » pour essayer de conserver le jeu de mot.

Replace « Bon Appétoot ! » by « Bon appouetit ! » to keep the pun.

* Remplace « Bon Appétoot ! » par « Bon appouetit ! » (2)

Remplace « Bon Appétoot ! » par « Bon appouetit ! » pour essayer de conserver le jeu de mot.

Replace « Bon Appétoot ! » by « Bon appouetit ! » to keep the pun.f

* Corrections

Corrige des fautes d’orthographe et change « appouetit » pour « appouétit ».

Correct some mistakes and change "appouetit" to "appouétit".
7 years ago
Eugen Rochko 81c1303cd6 Handle ActivityPub follows correctly (#4571)
* Handle ActivityPub follows correctly

ActivityPub follows are follow-requests. Always require an Accept.
If account is not locked, auto-accept.

* Handle ActivityPub Accept/Reject-Follow

* Fix wrong method

* Fix wrong class
7 years ago
Yamagishi Kazutoshi d9a1fb134a Fix emoji picker scrollbar style (#4572) 7 years ago
Eugen Rochko fdea173237 Add Digest header to requests with body, handle acct and URI keyId (#4565) 7 years ago
Ondřej Hruška b1c8a702a4 Add favourited toot to favourites column (#4562)
* Add faved toot to faves column

* renamed append to prepend for clarity
7 years ago
Ondřej Hruška 820099813f add scrollTop to ui/components/column (#4563) 7 years ago
Gergely Nagy 2ebe4ff568 api/instances: Include the stats from the /about/more page (#4074)
To be able to pull some basic statistics from a Mastodon instance, include the
user, status and connected domain counters in the `/api/v1/instance` response.

Fixes #3570.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
7 years ago
Ondřej Hruška 61bfce5aa9 add missing @ to the onboarding modal (#4560) 7 years ago
Eugen Rochko dd7ef0dc41 Add ActivityPub inbox (#4216)
* Add ActivityPub inbox

* Handle ActivityPub deletes

* Handle ActivityPub creates

* Handle ActivityPub announces

* Stubs for handling all activities that need to be handled

* Add ActivityPub actor resolving

* Handle conversation URI passing in ActivityPub

* Handle content language in ActivityPub

* Send accept header when fetching actor, handle JSON parse errors

* Test for ActivityPub::FetchRemoteAccountService

* Handle public key and icon/image when embedded/as array/as resolvable URI

* Implement ActivityPub::FetchRemoteStatusService

* Add stubs for more interactions

* Undo activities implemented

* Handle out of order activities

* Hook up ActivityPub to ResolveRemoteAccountService, handle
Update Account activities

* Add fragment IDs to all transient activity serializers

* Add tests and fixes

* Add stubs for missing tests

* Add more tests

* Add more tests
7 years ago
Lynx Kotoura dcbc1af38a Fix short description in about/more page (#4554) 7 years ago
Yamagishi Kazutoshi 81c41d8681 Add coalesce option to avatar and header convert processor (#4552)
Resolve #3199
7 years ago
雨宮美羽 ec3be87a2b improve zh-CN translations (#4557) 7 years ago
TheInventrix c9fd6f386c unify short description styling (#4548)
apply same style class to the About description on both the landing page
and the about/more page
7 years ago
Yamagishi Kazutoshi 1b5d26735e Revert "Set false to animated options for thumbnail processor" (#4550)
* Revert "Adjust tags and accounts page (#4534)"

This reverts commit a3e53bd442.

* Revert "feat: Cache status height to avoid expensive renders (#4439)"

This reverts commit 8eb6d171e6.

* Revert "Refactor Avatar and AvatarOverlay to have 'account' as prop instead of src and staticSrc (#4526)"

This reverts commit 5942347407.

* Revert "Update dependencies for Ruby (#4543)"

This reverts commit 22db947225.

* Revert "[Docker] Add multicore support to "make" and "bundler" (#4544)"

This reverts commit 5d408fd9aa.

* Revert "It makes no sense to try using invalid or expired link again (#4521)"

This reverts commit 47579ec58c.

* Revert "i18n: Update Polish translation (#4545)"

This reverts commit 3363a05539.

* Revert "Set false to animated options for thumbnail processor (#4547)"

This reverts commit 87f10d476c.
7 years ago
Lynx Kotoura a3e53bd442 Adjust tags and accounts page (#4534)
* Adjust tag and accounts page

* Remove units from 0px paddings
7 years ago
Sorin Davidoi 8eb6d171e6 feat: Cache status height to avoid expensive renders (#4439)
* feat: Cache status height to avoid expensive renders

* feat: Escape content and emojify in reducers

* fix(css): Remove backface-visibility: hidden from .scrollable

* fix(statuses): Avoid creating DOMParses inside a loop
7 years ago
Ondřej Hruška 5942347407 Refactor Avatar and AvatarOverlay to have 'account' as prop instead of src and staticSrc (#4526)
* Refactored Avatar and AvatarOverlay (DRY) to have 'account' as prop.
Also removed animate attribute from compose navigation bar, which should
have never been there. Added test for avatar overlay.

* fix broken tests

* god dammit another bug in tests! travis please let this pass

* formatting in avatar overlay
7 years ago
Yamagishi Kazutoshi 87f10d476c Set false to animated options for thumbnail processor (#4547)
Resolve #3199

Fix the aspect ratio of animated GIF whose background is transparent.
7 years ago
Masoud Abkenar e7a5a188ef i18n: update Persian translation (#4540) 7 years ago
MitarashiDango 5ee45fa571 fix columns_area.js (#4528) 7 years ago
Eugen Rochko df605f0f8b Add "signed in as" header to some pages (#4523) 7 years ago
Akihiko Odaki 9d1f8b9d6a Scroll columns area to right when children property is changed (#4517)
The feature to pin column could hide the rightmost column, which is
specified with children property of ColumnsArea.

The user is likely to see the column when the property changed, so scroll
the area in such cases.
7 years ago
Krzysztof Jurewicz 400616813e Fix some mistakes in Polish translation (#4495) 7 years ago
nullkal dfcd2834f9 Redirect to PasswordController#new when reset_password_token is invalid (#4506) 7 years ago
MIYAGI Hikaru 09e86ef90b make number of comparison in emojify() fewer (#4500)
fix style

"©"削除処理をemojione_lightに移動
7 years ago
TheKinrar 9ba7d526a0 Don't normalize invalid domain names (#4499)
Fixes #4496
7 years ago
unarist 94e233e7b2 Fix column-back-button style for some browsers (#4484)
Use `text-align: unset` instead of `text-align: start` which Edge doesn't support for now.

Also remove default margin on Safari.
7 years ago
Sorin Davidoi ac53736814 fix(status_list): Use correct keys for keyboard navigation (#4487) 7 years ago
Komic 8c0e78ae43 fr.json update (#4492) 7 years ago
Quent-in 7ef8482568 l10n #4457 update for Occitan language (#4483)
Previous and Next buttons
7 years ago
Jeroen 202942a76f Update Dutch (nl) strings (#4480) 7 years ago
Sorin Davidoi d4c4820c03 fix(web_push_notifications): Send message with welcome notifications (#4471)
* fix(web_push_notifications): Send grouping title in welcome notification

* fix(web_push_notifications): Read message from last notification
7 years ago
Yamagishi Kazutoshi 8ccb3b96ab Re-add outline (#4474)
* Re-add outline

* respect default of web browser
7 years ago
Ondřej Hruška e9ee249fd5 do not emojify tm, (R) and (C) (#4472) 7 years ago
Masoud Abkenar 4b6cd1dfdb i18n: update Persian translation (#4470)
* i18n: update Persian translation

* i18n: fix quotes
7 years ago
Yamagishi Kazutoshi b9ec3b7e7c Load extra polyfills when isIntersecting is undefined (#4469) 7 years ago
Eugen Rochko c7cc806251 Simplify web UI character counter logic (#4463) 7 years ago
unarist 82b4cf4acb Fix button overflow on confirmation modal for mobile (#4465) 7 years ago
Yamagishi Kazutoshi 3e7a541e09 Change RuboCop rules to loose (#4464) 7 years ago
m4sk1n 93aafa8549 i18n: Update Polish translation (#4467) 7 years ago
Yamagishi Kazutoshi bb85043f46 Disable sensitive button when with content warnings (#4460) 7 years ago
Eugen Rochko e1fcad34a9 Fix length validator counting things that look like URIs like URLs (#4462)
URI.extract is too strong, not limited to URLs, matched real text.
Same issue was present in language detector.
7 years ago
unarist 155ba8fd3a Make salutation of email localizable (#4454) 7 years ago
Sorin Davidoi e44f03bc71 Improve accessibility (part 7) (#4457)
* fix(media_modal): Keyboard navigation

* fix(column_back_button): Use native button

* fix(media_gallery): Keyboard navigation

* fix(status_content): Make CW content focusable
7 years ago
Yamagishi Kazutoshi 970297a138 Change to sensitive when adding content warning from web UI (#4456) 7 years ago
Yamagishi Kazutoshi 29abc9438c Remove outline from focused toot (#4448)
* Remove outline from focused toot

* change style
7 years ago
Yamagishi Kazutoshi f91284d230 Do not create empty a element when there is no e-mail (#4455)
Empty a element is created when there is no business e-mail input.
7 years ago
unarist feadf7553d Update Japanese translations (#4453) 7 years ago
Lynx Kotoura ea33cdc30b Set contact address in about/more as mailto link (#4450)
* Set contact address as mailto link

To be able to copy long email address

* Set style for mailto link
7 years ago
Damien Erambert ea144ba302 Use a fainted text color for <hr> elements in the landing page (#4443)
* Use a fainted text color for <hr> elements in the landing page

* remove trailing whitespace
7 years ago
Sorin Davidoi 4f04981dde feat(tabs_bar): Avoid optimization for non-touch devices (#4444)
* fix(tabs_bar): Check if transition is necessary

* feat(tabs_bar): Only apply optimization for touch devices
7 years ago
Jeroen 0913351dcf Dutch: only one (new) string (#4440) 7 years ago
Lynx Kotoura 57a794d8eb Fix autocomplete option in haml files (#4438)
* Fix autocomplete in two_factor.html.haml

* Fix autocomplete in registrations edit.html.haml

* Fix autocomplete in passwords edit.html.haml

* Fix autocomplete in _registration.html.haml

* Fix autocomplete in new.html.haml

* Fix autocomplete in show.html.haml

* Add autocomplete option to sessions new.html.haml

* Add autocomplete option to 2FA new.html.haml

* Add autocomplete option to 2FA show.html.haml
7 years ago
unarist a5e0cf2450 fix(status): Don't add tabIndex to wrapped status (#4437) 7 years ago
みたらしだんご a46ba4a8f5 fix tabs_bar.js (#4436) 7 years ago
Sorin Davidoi c71874b84c Improve accessibility (part 6) (#4435)
* fix(status_action_bar): Use aria-pressed for reblog and favourite button

* fix(column_back_button): Keyboard accessible

* fix(status_content): Make focusable and accessible

* fix(dropdown_menu): Use aria-expanded instead of aria-pressed

* fix(emoji_picker_dropdown): Use aria-expanded instead of aria-hidden

* feat(icon_button): Add aria-expanded

* fix(privacy_dropdown): Use aria-expanded instead of aria-hidden
7 years ago
Eugen Rochko 53b2b1b238 Count all URLs in text as 23 characters flat, do not count domain part of usernames (#4427)
* Count all URLs in text as 23 characters flat, do not count domain part of usernames

* Add new status text counting logic to web UI
7 years ago
Sorin Davidoi 634b71ed1d Accessability fixes (#4432)
* fix(modal_root): Read type from props, not from component

* fix(status_list): Do not user event.path
7 years ago
Sorin Davidoi 3d378ed0b4 fix(tabs_bar): Allow animation to end before navigating (#4429)
* fix(tabs_bar): Allow animation to end before navigating

* fix(tabs_bar): Do not use event.path
7 years ago
Eugen Rochko f0bb2c6d1e Fix web push notifications "boost" icon not being loaded (regression from #4426) (#4431) 7 years ago
Eugen Rochko 13bb1ddc7f Use consistent icons for web push notifications, same as web UI (#4426) 7 years ago
Eugen Rochko 4e2f2fab73 Fix guard clause in WebPushNotificationWorker (#4421) 7 years ago
Eugen Rochko 6e186b9c77 When PuSH subscribe attempts are exhausted, unsubscribe (#4422) 7 years ago
Quent-in ff9d344d4c i18n update of OC version (#4425)
* Correction of misspellings

* Improve the OC version

* Improve of the OC version

* Improvement of OC version
7 years ago
Eugen Rochko b3c44e95a9 Improve actions modal style (#4423) 7 years ago
Eugen Rochko 8c0dd33ce4 Fix current session not being displayed in sessions list (#4424) 7 years ago
Yamagishi Kazutoshi 12874eafa6 Unify webpackChunkName to lowercase (#4412) 7 years ago
Lynx Kotoura afb593b44e Fix protruded infomation board section in about/more page (#4415)
* Fix protruded infomation board section

Set "flexwrap: wrap" for sections. Set upper and lower padding for each section, and adjust clearances around sections accordingly. Settings for viewport threshold 500px is no more needed.

* Fix mistake of reducing information-board padding

In according with this fix, additional padding setting  for maximum 840px width is no more needed.
7 years ago
Sorin Davidoi 296bfa23aa fix(actions-modal): Inconsistent margins (#4418) 7 years ago
Sorin Davidoi 534da4f24f Improve accessibility (part 5) (#4417)
* fix(status): Add tabIndex=0

* fix(status_list): Make keyboard navigable
7 years ago