about summary refs log tree commit diff
path: root/app
AgeCommit message (Collapse)Author
2019-08-17New Crowdin translations (#11305)Eugen Rochko
* New translations simple_form.en.yml (Slovak) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Greek) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Basque) [ci skip] * New translations en.yml (German) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations doorkeeper.en.yml (Korean) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations doorkeeper.en.yml (Korean) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Estonian) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.yml (Lithuanian) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Kazakh) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations en.yml (Slovenian) [ci skip] * New translations en.yml (Turkish) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.yml (Welsh) [ci skip] * New translations en.yml (Serbian (Cyrillic)) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.json (Slovak) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Galician) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Galician) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Greek) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations simple_form.en.yml (Galician) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.json (Arabic) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Estonian) [ci skip] * New translations simple_form.en.yml (Estonian) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.json (Slovak) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.json (Hungarian) [ci skip] * New translations simple_form.en.yml (Hungarian) [ci skip] * New translations activerecord.en.yml (Hungarian) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (Hungarian) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations doorkeeper.en.yml (Esperanto) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Esperanto) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations doorkeeper.en.yml (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.json (Slovenian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations devise.en.yml (Ukrainian) [ci skip] * New translations doorkeeper.en.yml (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.json (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations devise.en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations activerecord.en.yml (Ukrainian) [ci skip] * New translations devise.en.yml (Ukrainian) [ci skip] * New translations doorkeeper.en.yml (Ukrainian) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Basque) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.json (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations simple_form.en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations doorkeeper.en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Occitan) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations simple_form.en.yml (Arabic) [ci skip] * New translations en.yml (Arabic) [ci skip] * i18n-tasks normalize * yarn manage:translations
2019-08-17Add explanation to featured hashtags page and profile (#11586)Eugen Rochko
2019-08-16Fix multiple issues with replies collection for pages further than ↵ThibG
self-replies (#11582) * Fix the replies collection returning snowflakes ids rather than URIs Fixes #11568 * Fix min_id in replies queries once self-replies are exhausted * Fix `next` attribute of replies collection being nil when there are no self-replies * Rename other_accounts param to only_other_accounts
2019-08-16Fix blurhash and autoplay not working on public pages (#11585)Eugen Rochko
2019-08-16Fix accounts search by full/partial display name and others (#11580)Eugen Rochko
- Restrict followers counts to local users to minimize local advantage - Fix emoji shortcodes causing error in search - Fix search syntax parse errors not being caught
2019-08-16Fix 422 being returned instead of 404 when POSTing (#11574)Eugen Rochko
2019-08-16Add more accurate account search (#11537)Eugen Rochko
* Add more accurate account search When ElasticSearch is available, a more accurate search is implemented: - Using edge n-gram index for acct and display name - Using asciifolding and cjk width normalization on display names - Using Gaussian decay on account activity for additional scoring (recency) - Using followers/friends ratio for additional scoring (spamminess) - Using followers number for additional scoring (size) The exact match precedence only takes effect when the input conforms to the username format and the username part of it is complete, i.e. when the user started typing the domain part. * Support single-letter usernames * Fix tests * Fix not picking up account updates * Add weights and normalization for scores, skip zero terms queries * Use local counts for accounts index, adjust search parameters * Fix mistakes * Using updated_at of accounts is inadequate for remote accounts
2019-08-15Improve focal point modal on mobile (#11575)ThibG
* Reduce padding around report modal and focal point modal title * Increase max allowed height for focal point modal content
2019-08-15Allow clicking behind preview (#11576)ThibG
2019-08-15Fix edit media modal on small screens, touch events (#11573)Eugen Rochko
2019-08-15Change title bar to only show unread notifications (#11572)Eugen Rochko
2019-08-15Include max image dimensions in error (#11552)Arnout Engelen
2019-08-15Fix trending counter width (#11569)Sasha Sorokin
Trending counter used to be constant 100px in width, which caused issues in languages like Russian, where because of that, "talking" text was cut to the size where actual count is not visible at all: > 6 people talking > Популярно у...
2019-08-15Fix tesseract.js being part of the common chunk (#11571)Eugen Rochko
* Fix tesseract.js being part of the common chunk Besides being 620 KB large, it also causes a modules-related runtime error in production... * Fix code style issue * Fix modules error
2019-08-15Add OCR tool to media editing modal (#11566)Eugen Rochko
2019-08-15Fix client-side resizing of image uploads (#11570)ThibG
Fixes #11567
2019-08-14Add media editing modal (#11563)Eugen Rochko
Move media description input to a modal and unite that modal with the focal point modal. Add a hint about choosing focal points, as well as a preview of a 16:9 thumbnail. Enable the user to watch the video next to the media description input. Fix #8320 Fix #6713
2019-08-13Fix reverse-proxy caching of instance actor object (#11561)ThibG
2019-08-13Fix short number formatting for numbers above million in web UI (#11559)Eugen Rochko
2019-08-13Add indicator of unread content to window title when web UI is out of focus ↵Eugen Rochko
(#11560) Fix #1288
2019-08-12Fix more ActivityPub queries setting cookies and preventing caching (#11557)ThibG
2019-08-11Fix ActivityPub and REST API queries setting cookies and preventing caching ↵ThibG
(#11539) Regression from #8657
2019-08-11Fix some emojis in profile metadata labels are not emojified. (#11534)kedama
2019-08-11Fix account search always returning exact match on paginated results (#11525)Eugen Rochko
Fix #11365
2019-08-08Fix crash when saving invalid domain name (#11528)Eugen Rochko
Fix #7629
2019-08-08Fix pinned statuses API returning pagination headers (#11526)Eugen Rochko
Fix #10227
2019-08-08Fix weekly usage not being displayed correctly in hashtag admin UI (#11524)Eugen Rochko
Fix percentages in usage breakdown having too many digits Change trending hashtags to only ask for review if a hashtag enters the top 3 position in the set, since it's the only items shown in the default web UI
2019-08-08Add GIF and WebP support for custom emojis (#11519)Eugen Rochko
Fix #11466
2019-08-08Fix “read more” button behing hidden (regression from #11404) (#11522)ThibG
* Fix “read more” button behing hidden (regression from #11404) This has the side-effect of putting the “Read more” button below possibly trunctated polls instead of putting the poll below the “Read more” * Remove dead code
2019-08-08Fix "cancel follow request" button having unreadable text in web UI (#11521)Eugen Rochko
Fix #11478
2019-08-07Fix acct URIs with IDN domains not being resolved (#11520)Eugen Rochko
Fix #11494
2019-08-07Add breakdown of usage by source to admin UI for hashtags (#11517)Eugen Rochko
Allows determining where the majority of posts in a hashtag come from on a given day at a glance.
2019-08-07Add domain block notes (#11515)ThibG
* Add database columns for adding notes to domain blocks/restrctions * Add admin UI to set private and public comments when blocking a domain * Add text for private and public comments on domain blocks * Show domain block comments in admin UI * Add comments to the domain block undo page * Make UnblockDomainService more robust regarding upgraded domain blocks * Allow editing domain blocks * Rename button from “undo domain block” to “view domain block” in account admin UI * Change test to unsilence silenced users from upgraded blocks
2019-08-07Fix trending tags returning less items than requested sometimes (#11513)Eugen Rochko
Add better sorting defaults to the hashtags admin UI Add "not reviewed" filter to hashtags admin UI
2019-08-07Add number of pending accounts and pending hashtags to admin dashboard (#11514)Eugen Rochko
2019-08-07Improve focus handling with dropdown menus (#11511)ThibG
- Focus first item when activated via keyboard - When the dropdown menu closes, give back the focus to the actual element which was focused prior to opening the menu
2019-08-07Fix account tags not being saved correctly (#11507)Eugen Rochko
* Fix account tags not being saved correctly Regression from f371b32 Fix Tag#discoverable not returning tags where listable is nil instead of true Add notice when saving hashtags in admin UI Change public hashtag and directory pages to return 404 for forbidden tags * Remove unused locale string
2019-08-07Fix non-lowercase hashtags not being picked up by the streaming API (#11508)Eugen Rochko
Regression from f371b32 Fix hashtag links always being lowercase
2019-08-07Fix featured tags not finding the right tag on save (#11504)Eugen Rochko
Regression from f371b32
2019-08-06Fix admin dashboard missing latest features (#11505)Eugen Rochko
Fix redis-namespace deprecation warning about administrative commands
2019-08-06Add trends UI with admin and user settings (#11502)Eugen Rochko
2019-08-06Revert "Change links in webUI to rewrite misleading links (#11426)" (#11500)Eugen Rochko
This reverts commit b31b232edfcc7f04acf828bf6829ab716b290692.
2019-08-06Fix image uploads being perfectly white when canvas read access is blocked ↵ThibG
(#11499) Fixes #11496
2019-08-06Improve keyboard navigation in privacy dropdown (#11492)ThibG
* Trap tab in privacy dropdown * Give focus back to last focused element when privacy dropdown menu closes * Actually give back focus to the element that had it before clicking the dropdown
2019-08-06Improve dropdown menu keyboard navigation (#11491)ThibG
* Allow selecting menu items with the space bar in status dropdown menus * Fix modals opened by keyboard navigation being immediately closed * Fix menu items triggering modal actions * Add Tab trapping inside dropdown menu * Give focus back to last focused element when status dropdown menu closes
2019-08-06Trap tab in modals (#11493)ThibG
2019-08-06Fix privacy dropdown active state when dropdown is placed on top of it (#11495)ThibG
2019-08-05Change admin UI for hashtags and add back whitelisted trends (#11490)Eugen Rochko
Fix #271 Add back the `GET /api/v1/trends` API with the caveat that it does not return tags that have not been allowed to trend by the staff. When a hashtag begins to trend (internally) and that hashtag has not been previously reviewed by the staff, the staff is notified. The new admin UI for hashtags allows filtering hashtags by where they are used (e.g. in the profile directory), whether they have been reviewed or are pending reviewal, they show by how many people the hashtag is used in the directory, how many people used it today, how many statuses with it have been created today, and it allows fixing the name of the hashtag to make it more readable. The disallowed hashtags feature has been reworked. It is now controlled from the admin UI for hashtags instead of from the file `config/settings.yml`
2019-08-04Fix timestamp on featured tag (#11477)Jeong Arm
It resolves #11338
2019-08-03Change icon button styles to make hover/focus states more obvious (#11474)ThibG
* Change icon buttons styles to make hover/focused states more obvious * Fix CW button size inconsistency * Fix icon button background color consistency