Eugen Rochko
b440b2a9ee
Merge branch 'master' of https://github.com/blackle/mastodon into blackle-master
8 years ago
blackle
e7d77f4e13
Allow user to disable the boost confirm dialog in preferences
8 years ago
Eugen
e0977567e7
When avatar/header are GIF, generate static versions ( #1428 )
...
* When avatar/header are GIF, generate static versions.
Account API returns "avatar"/"avatar_static", "header"/"header_static"
Static version is the same as original for other cases
Web UI de-animates avatars in toots, lists of users
Fix #441 , fix #596 , prerequisite for #1064
* Fix JS test
* Add rake task to generate static avatars/headers from GIF ones, add test
8 years ago
Eugen
68f3ce7d0c
API param to exclude notification types from response ( #1341 )
...
* Add exclude_types param to /api/v1/notifications
* Exclude notification types in web UI through exclude_types in the API
8 years ago
Matt Jankowski
874a240a58
Clean up generation of account webfinger string ( #1477 )
...
* Consolidate webfinger string creation under Account#to_webfinger_s
* Introduce Account#local_username_and_domain for consolidation
8 years ago
Eugen
d30a82a22f
Fix #1339 - better Atom titles ( #1343 )
8 years ago
Matt Jankowski
641e809eaf
Search cleanup ( #1333 )
...
* Clean up SQL output in Tag and Account search methods
* Add basic coverage for Tag.search_for
* Add coverage for Account.search_for
* Add coverage for Account.advanced_search_for
8 years ago
Eugen
b532134503
Fix #795 , fix #704 , fix #835 - 2FA requires confirmation to be enabled ( #1278 )
...
* Fix #795 , fix #704 , fix #835 - 2FA requires confirmation to be enabled
TOTP secret is not shown again after 2FA is enabled
* Clean up
8 years ago
Joël Quenneville
8a67fb5eca
DRY up reblog vs original status check
...
Checking reblog vs original status was happening in multiple places
across the app. For views, this logic was encapsulated in a helper
method named `proper_status` but in the other layers of the app, the
logic was duplicated.
Because the logic is used at all layers of the app, we extracted it into
a `Status#proper` method on the model and changed all uses of the logic
to use this method. There is now a single source of truth for this
condition.
We added test coverage to untested methods that got refactored.
8 years ago
Eugen
24c77e57b2
Rewrite Atom generation from stream entries to use Ox instead of Nokogiri ( #1124 )
...
* Rewrite Atom generation from stream entries to use Ox instead of Nokogiri::Builder
StreamEntry is now limited to only statuses, which allows some optimization. Removed
extra queries on AccountsController#show. AtomSerializer instead of AtomBuilderHelper
used in AccountsController#show, StreamEntriesController#show, StreamEntryRenderer
and PubSubHubbub::DistributionWorker
PubSubHubbub::DistributionWorker moves n+1 DomainBlock query to PubSubHubbub::DeliveryWorker
instead.
All Salmon slaps that aren't based on StreamEntry still use AtomBuilderHelper and Nokogiri
* All Salmon slaps now use Ox instead of Nokogiri. No touch from status on account
8 years ago
Brad Urani
522410589e
Eliminate unnecessary queries and query clauses with none and all
8 years ago
Samy KACIMI
06424fd912
fix rubocop issues
8 years ago
Samy KACIMI
9f80b2dd4e
add more tests to models
8 years ago
Eugen Rochko
7a56845060
Only call regeneration worker after first login after a 14 day break
8 years ago
Eugen Rochko
24793cdbaa
Fix ActionController::Parameters in API issue
8 years ago
Eugen Rochko
c9ffa7ab1d
Add basic logging of who resolved report
8 years ago
Eugen Rochko
d1f8bd2673
Paperclip will complain on its own if this variable is missing
8 years ago
Eugen Rochko
244da78105
Import feature for following/blocking lists (addresses #62 , #177 , #201 , #454 )
8 years ago
Eugen Rochko
96e58cf289
Add counter caches for a large performance increase on API requests
8 years ago
Eugen Rochko
1b4583ca91
Fix full-text search query quotation, improve tag search performance with an index,
...
add ability to open status by URL from search (fix #53 )
8 years ago
Eugen Rochko
bee385a81f
Merge branch 'master' into feature-omnisearch
...
this merge is necessary,
8 years ago
Eugen Rochko
afd53467eb
More efficient single account retrieval (0.9ms vs 50ms before)
8 years ago
Eugen Rochko
3893f75a51
New API method: /api/v1/search
...
Returns accounts, statuses, hashtags arrays
8 years ago
Eugen Rochko
a19062b726
Federate header images, fix open-uri http->https redirection error
8 years ago
Eugen Rochko
64be072702
Make account search blazing fast and rank followers/followees higher in the results
8 years ago
Eugen Rochko
8e2146ab50
Add method for retrieving triadic closures
8 years ago
Eugen Rochko
f1b9644cfd
Add "direct" visibility level in the backend. Web UI is not yet
...
adjusted to allow choosing it, yet
8 years ago
Eugen Rochko
dea8e95d14
Performance improvement for profiles
8 years ago
Eugen Rochko
8bc70e6a16
Use more widely supported MP4 format for gifv's
8 years ago
Eugen Rochko
42b6d5aca5
Increase max bitrate of converted webms, slightly optimized counter queries
...
(Because postgres can tell that count(*) needs no extra checks, but
counting a specific column requires them)
8 years ago
Eugen Rochko
354eb3b757
Add vsync -cfr option when converting gif to webm
8 years ago
Eugen Rochko
671d1d8a26
Higher quality webms? Might improve conversation of some types of gifs
8 years ago
Eugen Rochko
c911ade272
Detect videos with no sound, handle them like gifv
8 years ago
Eugen Rochko
9adf6e8736
Fix wrongful matching of last period in extended usernames
...
Fix anchor tags in some wikipedia URLs being matches as a hashtag
8 years ago
Eugen Rochko
d1e1f26878
Improved /api/v1/accounts/:id/statuses with new params: only_media, exclude_replies
...
Redirect /:username to /users/:username
Redirect /:username/:id to /users/:username/updates/:id
Updated API documentation and sponsors
8 years ago
Eugen Rochko
4b93cf88e5
Fix #431 - convert gif to webm during upload. Web UI treats them like it did
...
before. In the API, attachments now can be either image, video or gifv. Gifv
is to be treated like images in terms of behaviour, but are videos by file
type.
8 years ago
Eugen Rochko
0cb5a2a0a7
Add digest e-mails
8 years ago
Eugen Rochko
9989890e2e
Fix #231 - Muting
8 years ago
Kit Redgrave
4554ccd5d0
Mute button progress so far. WIP, doesn't entirely work correctly.
8 years ago
Eugen Rochko
a741049a77
Fix #104 - Style OAuth authorized applications page
...
Add ability to search accounts by display name
8 years ago
Eugen Rochko
b734ae3029
Skip remote media URLs that don't have a hostname
8 years ago
Eugen Rochko
c7427bf3c9
Split public timeline into "public timeline" which is local, and
...
"whole known network" which is what public timeline used to be
Only domain blocks with suspend severity will block PuSH subscriptions
Silenced accounts should not appear in conversations unless followed
8 years ago
Eugen Rochko
3d291bcc55
Do not display non-Status stream entries anymore
8 years ago
Eugen Rochko
6917e53fe0
Adding index overview for reports in admin UI
8 years ago
Eugen Rochko
2cc31b3194
Adding POST /api/v1/reports API, and a UI for submitting reports
8 years ago
Eugen Rochko
f9f8f52fe9
Stop trying to shoehorn all Salmon updates into the poor database-connected
...
StreamEntry model. Simply render Salmon slaps as they are needed
8 years ago
Eugen Rochko
12ed6f5712
Resolve issue with rendering authorize/reject Salmon slaps
8 years ago
Eugen Rochko
c001ef3df6
Fix Status.permitted_for scope query
8 years ago
Eugen Rochko
db53bfd30e
Fix semantics of follow requests another slaps
8 years ago
Eugen Rochko
ffd58aad9d
Make PuSH only distribute to subscriptions that match follower domains
...
Allow PuSH to distribute private toots with that condition
8 years ago
Eugen Rochko
ce193afa4f
Mentions in private statuses allow mentioned people to see them
8 years ago
Eugen Rochko
59c8c2b28a
Make follow requests federate
8 years ago
Eugen Rochko
f0d4a2c9b7
Fix the fix
8 years ago
Eugen Rochko
81be690f95
Fix #614 - extra reply-boolean on statuses to account for cases when replied-to
...
status is not in the system at time of distribution; fix #607 - reset privacy
settings to defaults when cancelling replies
8 years ago
Eugen Rochko
94cda4cfb9
Add "clear notifications" button, exclude posts from people who have blocked *you* from public/hashtag timelines
8 years ago
Eugen Rochko
b1f2683ecc
Add API modifiers to limit returned toots from public/hashtag timelines
...
to only those from local users; Add link to "extended information" to
getting started in the UI; Add defaults for posting privacy; Change
how publish button looks depending on posting privacy chosen
8 years ago
Eugen Rochko
d384845469
Fix #61 - Add list of blocked users to the UI; clean up failed push notifications API
...
Try to fix Travis CI setup
8 years ago
Eugen Rochko
2f126b1225
Removing failed push notification API, make context loads use cache
8 years ago
Eugen Rochko
727d236fcc
Cleaning up format of broadcast real-time messages, removing
...
redis-backed "mentions" timeline as redundant (given notifications)
8 years ago
Eugen Rochko
edcfbee9f5
Fix #529 - Make hashtag timelines show conversations, fix hashtag loading in the UI
8 years ago
Eugen Rochko
9327d05bf7
API for apps to register for push notifications
8 years ago
Eugen Rochko
9b8670c939
Added optional two-factor authentication
8 years ago
Eugen Rochko
27ad4ce9e8
Do not run FetchLinkCardService on local URLs, increase file size limit to 8MB,
...
fix ProcessFeedService pushing status into distribution if called a second time
while the first is still running (i.e. when a PuSH comes after a Salmon slap),
fix not running escape on spoiler text before emojify
8 years ago
Eugen Rochko
096ff9ba38
Removed accidental n+1 query from notifications, updated some deps,
...
improved how "show more" link looks
8 years ago
Eugen Rochko
803652ff75
Follow request authorizations faster
8 years ago
Eugen Rochko
959e064186
Instead of using spoiler boolean and spoiler_text, simply check for non-blank spoiler_text
...
Federate spoiler_text using warning attribute on <content /> instead of a <category term="spoiler" />
Clean up schema file from accidental development migrations
8 years ago
blackle
e25fc71c2c
Implement a click-to-view spoiler system
8 years ago
Eugen Rochko
77a76d5171
Domain blocks now have varying severity - auto-suspend vs auto-silence
8 years ago
Eugen
9a2a6b476b
Mitigate inconsistent notifications
8 years ago
Eugen Rochko
f748a91ec7
Fix #463 - Fetch and display previews of URLs using OpenGraph tags
8 years ago
Eugen Rochko
31d48af0d1
Fix statsd null backend not being initialized properly
8 years ago
Eugen
788e884690
Try to avoid any potential loops
8 years ago
Eugen Rochko
3f30e91462
Improve how the list entry Account component looks when target is blocked/follow is requested
8 years ago
Eugen Rochko
5d88ef90c9
Fix tests, add applications to eager loading/cache for statuses, fix
...
application website validation, don't link to app website if website isn't set,
also comment out animated boost icon from #464 until it's consistent with non-animated version
8 years ago
Effy Elden
8e0c1914fb
Add tracking of OAuth app that posted a status, extend OAuth apps to have optional website field, add application details to API, show application name and website on detailed status views. Resolves #11
8 years ago
Eugen Rochko
533448be42
Add extended about page stub
8 years ago
Eugen Rochko
6d98465db2
Extend rails-settings-cached to merge db-saved hash values with defaults
8 years ago
Eugen Rochko
7e7c2bbb0f
Migrate from ledermann/rails-settings to rails-settings-cached which allows global settings
...
with YAML-defined defaults. Add admin page for editing global settings. Add "site_description"
setting that would show as a paragraph on the frontpage
8 years ago
Eugen Rochko
4293e132d1
Persist UI settings, add missing localizations for German
8 years ago
Eugen Rochko
f29df16eea
Fix Paperclip timeout setting. Fix bug introduced in #437
8 years ago
Eugen
72843ea705
Merge pull request #437 from krainboltgreene/patch-1
...
Simplifying followers mappings
8 years ago
Kurtis Rainbolt-Greene
5cecff7f2a
Simplifying followers mappings
...
Deduplicating some logic and switching to pluck, to avoid pulling the entire model in memory.
8 years ago
Kurtis Rainbolt-Greene
ff835f3377
Less complicated determination
8 years ago
Kurtis Rainbolt-Greene
82b0eb2ae4
Using "rails style" order arguments
8 years ago
Eugen Rochko
0df070596e
Fix #416 - Generate random unique 14-byte (19 characters) shortcodes
...
for local attachments, use them in URLs. Check status privacy
before redirecting to actual file.
8 years ago
Eugen Rochko
df2f14d2dd
Adding remote follow button
8 years ago
Eugen Rochko
d7bc0d8a33
Set in_reply_to_account on statuses to non-self value when possible, thus
...
resolving the confusion from self-chain replies ultimately linking to a
non-self status. Adjust filters
8 years ago
Eugen Rochko
2bc6e7c96e
Add API for retrieving blocked accounts
8 years ago
Eugen Rochko
34febf75be
Fix wrong person being notified after nested reblog call, fix favourites leaking private toots in Atom feeds
8 years ago
Eugen Rochko
cef68b9b1c
Follow requests send e-mail notifications, but are excluded from notifications API
...
Better initial state for unlisted/nsfw toggles
8 years ago
Eugen Rochko
ef9e827c54
Adding follow requests API
8 years ago
Eugen Rochko
1ed3bb3a02
Don't show statuses to blocked users
8 years ago
Eugen Rochko
9e0bd72434
Fix account timelines bug
8 years ago
Eugen Rochko
a3680345b7
Hide follow/unfollow button from public page if follow already requested
8 years ago
Eugen Rochko
238233440f
Follow call on locked account creates follow request instead
...
Reflect "requested" relationship in API and UI
Reflect inability of private posts to be reblogged in the UI
Disable Webfinger for locked accounts
8 years ago
Eugen Rochko
11e2159859
Merge branch 'master' into development
8 years ago
Eugen Rochko
8038c663b0
Ensure that reblogs and favs always refer to the original status rather than a reblog wrapper
8 years ago
Eugen Rochko
d417da7d3a
Private visibility on statuses prevents non-followers from seeing those
...
Filters out hidden stream entries from Atom feed
Blocks now generate hidden stream entries, can be used to federate blocks
Private statuses cannot be reblogged (generates generic 422 error for now)
POST /api/v1/statuses now takes visibility=(public|unlisted|private) param instead of unlisted boolean
Statuses JSON now contains visibility=(public|unlisted|private) field
8 years ago
Eugen Rochko
6d7f3be2f6
Add OEmbed iframe HTML, convert emojis on public pages, increase size of attachment thumbnails
8 years ago
Eugen Rochko
9d4f96f440
Removing external hub completely, fix #333 fixing digit-only hashtags,
...
removing web app capability from non-webapp pages
8 years ago