Commit graph

1930 commits

Author SHA1 Message Date
Matt Jankowski
0d70fe2659 Spec coverage and refactor for pubsub/delivery worker (#3021)
* Framework for delivery worker spec

* Refactor of pubsub delivery worker
2017-05-12 20:35:36 +02:00
Shel Raphen
a1fc2cfa09 Fix color contrast some more in privacy warning (#3018)
* Fix color contrast some more in privacy warning

Latest master appears to have changed the <strong> to this unreadable grey color. If you want that to be white then it should be pure white. If someone would rather revert this to that strong dark blue color it was before that would be good too.

* Make domain dark blue again

* add missing ;

woops
2017-05-12 20:19:39 +02:00
Koala Yeung
b535966ab5 Allow SCSS variables to be overridden (#2987)
* Allow SCSS variables to be overridden with
  `app/javascript/pack/variables*.scss`

* Allow these SCSS variables to be overriden:
  * `$base-shadow-color`
  * `$base-overlay-background`
  * `$base-border-color`
  * `$simple-background-color`
  * `$primary-text-color`
  * `$valid-value-color
  * `$error-value-color`
2017-05-12 19:22:50 +02:00
Eugen Rochko
5abdc77c80 Add conversation model, <ostatus:conversation /> (#3016)
* Add <ostatus:conversation /> tag to Atom input/output

Only uses ref attribute (not href) because href would be
the alternate link that's always included also.

Creates new conversation for every non-reply status. Carries
over conversation for every reply. Keeps remote URIs verbatim,
generates local URIs on the fly like the rest of them.

* Fix conversation migration

* More spec coverage for status before_create

* Prevent n+1 query when generating Atom with the new conversations

* Improve code style

* Remove redundant local variable
2017-05-12 19:09:21 +02:00
Eugen Rochko
b5a9c6b3d2 Prepend reblogs' wrapper content with "RT @original_author", (#3013)
so that when a reblog parse fails on another instance, it doesn't
look like a misattributed/stolen text
2017-05-12 17:46:44 +02:00
Shel Raphen
60f3230a05 Increase color contrast on privacy warning (#3015)
The current text contrast on the privacy warning is a WCAG violation. I didn't notice this because my instance has a custom theme which is better. On default theme I am barely able to read the text with my impaired vision. This patch brings the contrast to Normal Text WCAG AA compliance, and Large Text WCAG AAA compliance.
2017-05-12 17:46:36 +02:00
Eugen Rochko
43d754eb42 Fix not rejecting remote URIs when parsing out local IDs (#3012) 2017-05-12 16:47:55 +02:00
Eugen Rochko
e0c3ed29d8 Fix locales again (#3010)
* Normalize locales

* Restore "mention" locale key
2017-05-12 14:46:21 +02:00
Yamagishi Kazutoshi
2991a7cfe6 Use ES Class Fields & Static Properties (#3008)
Use ES Class Fields & Static Properties (currently stage 2) for improve class outlook.

Added babel-plugin-transform-class-properties as a Babel plugin.
2017-05-12 14:44:10 +02:00
Yamagishi Kazutoshi
44a3584e2d Remove unnecessary message in video player (#3007)
Remove unnecessary messages added in #1879.
It is duplicated with other keys, causing the correct message not to be displayed.
2017-05-12 14:43:06 +02:00
ButterflyOfFire
62a98a3f0e Update ar.json (#3004)
Updating some arabic translations.
2017-05-12 14:32:35 +02:00
Eugen Rochko
58bcd50f7f Fix #1426 - Trim long usernames in public follower/following lists (#2993)
Fix #2221 - Catch OpenSSL exceptions when loading remote avatars/headers/attachments
Don't strip "rel" attribute from <a> tags when sanitizing (microformats)
2017-05-11 23:14:00 +02:00
Eugen Rochko
d0ef318eaa Fix #2205 - Delete associated notifications when a status is deleted (#2994) 2017-05-11 21:54:47 +02:00
Eugen Rochko
65f9db73b0 Fix #2027 - Accept own ID for remote follow with and without preceding @ (#2991)
* Fix #2027 - Accept own ID for remote follow with and without preceding @
Fix #2177 - Omit leading "acct:" in remote follow redirect template expansion

* Fix test
2017-05-11 21:54:30 +02:00
Eugen Rochko
a2c8da0185 When avatar/header are missing, do not include the missing file into Atom (#2988)
Receiving instances will then use their own missing image

Also, add <content /> to deleted statuses, since there was a reported
problem with the deletes and GNU social
2017-05-11 14:32:03 +02:00
Yamagishi Kazutoshi
88fd5cb688 Focus tab of Mastodon when clicking notification (#2989) 2017-05-11 13:34:05 +02:00
Nolan Lawson
0ec77c5b3e Add dynamic polyfills for older browsers (#2985)
Fixes #2941
2017-05-11 11:26:06 +02:00
Go Shoemake
9cd3a6836b Fixed mention regex to support unicode (#2420) 2017-05-11 03:47:38 +02:00
Yamagishi Kazutoshi
7ff84cb07e Refine unescapeHTML (#2977) 2017-05-11 02:22:40 +02:00
Yamagishi Kazutoshi
e6fbf0334f Remove unnecessary .keep files (#2976)
Follow up #2902
2017-05-11 01:45:42 +02:00
Eugen Rochko
72698bc3b4 Fix regressions from #2683 (#2970)
* Fix regressions from #2683

Properly format spoiler text HTML, while keeping old logic for blankness intact
Process hashtags and mentions in spoiler text
Format spoiler text for Atom
Change "show more" toggle into a button instead of anchor
Fix style regression on dropdowns for detailed statuses

* Fix lint issue

* Convert spoiler text to plaintext in desktop notifications
2017-05-11 00:28:10 +02:00
jeroenpraat
65027657ec Very small fix/update NL strings (#2971)
* Very small fix/update NL strings

* Oops
2017-05-11 00:20:13 +02:00
Matt Jankowski
08949cca41 Pubsub confirmation worker spec (#2974)
* Add specs for valid challenge response from pubsub confirmation worker

* Refactor the pubsub confirmation worker
2017-05-11 00:19:37 +02:00
Eugen Rochko
a231f915a0 Fix #2955 - Send HEAD request ahead of GET when fetching URL previews (#2972) 2017-05-10 23:30:07 +02:00
alpaca-tc
c3ef5d5414 Add account_id DESC to optimize PrecomputeFeedService (#2967) 2017-05-10 20:33:32 +02:00
beatrix
57a3d71c90 fix a regression introduced by e2491680e6 (#2966)
that caused user pages to break when showing toots with CWs
2017-05-10 20:32:59 +02:00
Wonderfall
43db2cf5e7 align buttons with column headers (#2964) 2017-05-10 20:32:26 +02:00
Matt Jankowski
cc9a6a710f Spec feed insert worker (#2965)
* Spec for feed insert worker when missing records

* more specs!

* Refactor feed insert worker
2017-05-10 20:32:05 +02:00
Yamagishi Kazutoshi
2fba4196ef Add boop sounds in Vorbis format (#2963)
Vorbis is audio format of Open Source.
Can play audio in a free environment where you can not play mp3.
2017-05-10 16:58:54 +02:00
Matt Jankowski
d142544159 Spec coverage and refactor of digest mailer worker (#2961) 2017-05-10 15:45:43 +02:00
Koala Yeung
7ac092513c Fix Occitan's locale data plural function (#2957)
* Fix the pluralRuleFunction of the locale data.
* Added more descriptions about how to write it.
2017-05-10 14:44:48 +02:00
AA4ch1
2db53526c9 Fix compose_form.js for #2904 (#2960) 2017-05-10 14:41:39 +02:00
R Tucker
e2491680e6 Handle hashtags in spoiler_texts (partial fix for #699) (#2683)
* services: scan spoiler_text for hashtags (#699)

* views: link hashtags from spoiler_texts

This covers linking hashtags from within the spoiler
text on the server-generated pages.

* services: fix string concat going into hashtag RE

Cleaner Ruby syntax, may handle immutable strings better
2017-05-10 04:47:25 +02:00
Eugen Rochko
3a38322a54 Add spec for Pubsubhubbub::DistributionWorker. PuSH-deliver public items (#2954)
to all subscribers. IDN-normalize callback URLs for subscriptions on insert.
2017-05-10 02:55:43 +02:00
fusshi-
29d8313b28 Disabled auto focus on toot form when search results are shown. (#2942) 2017-05-10 02:51:43 +02:00
Matt Jankowski
682507bc3c Specs for pubsub subscribe service (#2951)
* Add spec for pubsubhubbub/subscribe

* Refactor pubsubhubbub/subscribe service
2017-05-09 20:48:30 +02:00
Matt Jankowski
441d6dc734 Spec and refactor for pubsubhubbub/unsubscribe service (#2946)
* Add coverage for pubsub unsubscribe service

* Refactor pubsub unsubscribe service
2017-05-09 19:58:18 +02:00
Akihiko Odaki
d5cabfe5c6 Use CLD3 (#2949)
Compact Language Detector v3 (CLD3) is the successor of CLD2, which was
used in the previous implementation. CLD3 includes improvements since CLD2,
and supports newer compilers. On the other hand, it has additional
requirements and cld3-ruby, the FFI of CLD3 for Ruby, is still new and may
be still inmature.

Though CLD3 is named after CLD2, it is implemented with a neural network
model, different from the old implementation, which is based on a Naïve
Bayesian classifier.

CLD3 supports newer compilers, such as GCC 6. CLD2 is not compatible with
GCC 6 because it assigns negative values to varibales typed unsigned.
(see internal/cld_generated_cjk_uni_prop_80.cc) The support for GCC 6 and
newer compilers are essential today, when some server operating system
such as Ubuntu Server 16.10 has GCC 6 by default.

On the one hand, CLD3 requires C++11 support. Environments with old
compilers such as Ubuntu Server 14.04 needs to update the system or install
a newer compiler.

CLD3 needs protocol buffers as a new dependency. However,it is not
considered problematic because major server operating systems, CentOS and
Ubuntu Server provide them.

The FFI cld3-ruby was written by me (Akihiko Odaki) for use in Mastodon.
It is still new and may be inmature, but confirmed to pass existing tests.
2017-05-09 19:58:03 +02:00
Akihiko Odaki
af6a84da14 Use RegExp for require.context to filter custom stylesheets (#2950)
ExtractTextWebpackPlugin extracts the content of loaded files, which means
it loads files loaded by require.context but not required after that.
However the former implementation is not aware of that.

require.context can have a RegExp to filter files to load. This change
gives a RegExp which matches with SCSSes with 'custom' prefix to
require.context to take advantage of the feature.
2017-05-09 19:51:45 +02:00
abcang
08e94d1b19 Fixed bug that timeline can not be displayed by InvalidURIError (#2947) 2017-05-09 18:17:41 +02:00
haoyayoi
2fba94b36e add content-type in pubsubhubhub request header (#2943)
* add content-type in pubsubhubhub request header

* fix type
2017-05-09 16:34:47 +02:00
Alda Marteau-Hardi
8c9116dc98 Fix missing or not gender neutral strings. (#2944) 2017-05-09 16:14:44 +02:00
Yamagishi Kazutoshi
42eb841dc2 Remove jquery-ujs (#2939)
* Remove jquery-ujs

* fix for eslint
2017-05-09 14:50:43 +02:00
Yamagishi Kazutoshi
584b45530c Fix duplicated values in nl.json (#2931) 2017-05-09 14:12:35 +02:00
Koala Yeung
f5cdea5122 Update Norwegian translations (#2937)
* Update Norwegian translations

* Updated no.json
* Updated activerecord.no.yml
* Updated no.yml
* Updated simple_form.no.yml

* i18n: fix Unicode character error in no.yml

* Javascript escaping code "\uD83D\uDC18" should be "\U0001f418" in
Ruby / yml

* i18n: remove unused keys in Norwegian translation

* Remove unused keys in no.yml and activerecord.no.yml
  by running: `bundle exec i18n-tasks remove-unused no`

* Add missing keys in activerecord.no.yml and no.yml by
  running: `bundle exec i18n-tasks add-missing no`

* i18n: escape the key 'no' in activerecord.no.yml
2017-05-09 14:01:45 +02:00
Soshi Kato
f36a791227 Fix snackbar notification stacking order (#2935) 2017-05-09 14:01:29 +02:00
HANATANI Takuma
7c249dfd88 Add cursor property to toot user avatar. (#2933) 2017-05-09 03:48:15 +02:00
Matt Jankowski
5bea42412e Services specs for subscribe and unsubscribe (#2928)
* Add specs for unsubscribe service

* Fix non existent methods in unsubscribe service

* Clean up status handling in subscribe service
2017-05-09 00:45:02 +02:00
Matt Jankowski
04166c4a35 Specs for API push controller, with refactor (#2926)
* Coverage for api push controller

* Refactor the api/push controller
2017-05-09 00:44:30 +02:00
Quent-in
fed585e3f4 i18n mailer files for Occitan language (#2924)
* Create reset_password_instructions.oc.html.erb

* Create reset_password_instructions.oc.text.erb

* Create password_change.oc.html.erb

* Create password_change.oc.text.erb

* Create confirmation_instructions.oc.html.erb

* Create confirmation_instructions.oc.text.erb
2017-05-08 23:15:03 +02:00
jeroenpraat
406229d927 Updating and extending Dutch strings (#2930)
* Update nl

* Update nl

* Update nl

* Create confirmation_instructions.nl.html.erb

* Create confirmation_instructions.nl.text.erb

* Create password_change.nl.html.erb

* Create password_change.nl.text.erb

* Create reset_password_instructions.nl.html.erb

* Create reset_password_instructions.nl.text.erb
2017-05-08 23:11:12 +02:00
Matt Jankowski
7a7d12d27f Delegate Account#user_locale method and allow nil (#2927) 2017-05-08 23:10:50 +02:00
ButterflyOfFire
01c4c29b3a Update fr.json (#2915)
* Update fr.json

Updating some missing french translations.

* Update fr.json

Fix repetition in line 41.

* Update fr.json

Fix : adding space between {name} and ? question mark.
2017-05-08 18:24:55 +02:00
Yamagishi Kazutoshi
459bbfa4b2 Prevent selection of unacceptable Content-Type files (#2910)
* Prevent selection of unacceptable Content-Type files

* replace hard code

* media_attachments accept content-types in initial state
2017-05-08 16:49:53 +02:00
ButterflyOfFire
7140def5c9 Update simple_form.ar.yml (#2908)
* Update simple_form.ar.yml

Added missing strings that were introduced to simple_form.ar.yml and completing translation.

* Create confirmation_instructions.ar.html.erb

* Create confirmation_instructions.ar.text.erb

* Create password_change.ar.html.erb

* Create password_change.ar.text.erb

* Create reset_password_instructions.ar.text.erb

* Create reset_password_instructions.ar.html.erb
2017-05-08 15:58:38 +02:00
Matt Jankowski
b85dec2b97 Improve scss color variables (#2912)
- Updates scss variables file to use better-named variables for black/white/etc
- Arranges the "mastodon classic" colors into variables
- Remove all references to `$color-*` naming, replacing with new

This does not in itself introduce "theme" support, but:

- It would probably be easier to start working on theme support after this
  change and others
- Even without the goal of themes, these changes make it more clear how the
  colors are being used.

There is almost definitely some edge case in here where I've guessed the
intent/context of some color usage incorrectly, but it still seems like a net
improvement.
2017-05-08 15:57:49 +02:00
Koala Yeung
cbd673601c Add Thai langauge (#2903)
* Updated Thai language

* locale: remove unused translation in Thai

* locale: add Thai to settings menu and application

* locale: fix activerecord.th.yml format
2017-05-08 15:56:00 +02:00
Yamagishi Kazutoshi
66a3979cba Fix broken features list in RTL languages (#2909)
Fixes #2905
2017-05-08 15:52:51 +02:00
ster
9de254c46e Fix small typo in ru.json (#2906) 2017-05-08 15:03:17 +02:00
HANATANI Takuma
388e70b881 Remove unnecessary keep file. (#2902) 2017-05-08 15:01:19 +02:00
yhirano
48594b18e6 Added haml-lint and fix warnings (#2773)
* add haml_lint to Gemfile

* add .haml-lint.yml

* fix warnings of haml_lint
2017-05-08 03:35:25 +02:00
Matt Jankowski
bba537a7be Improve allowed language handling (#2897)
* Dont allow empty value in user allowed languages

* Sanitize language input to reject blank values in array
2017-05-08 03:32:52 +02:00
Jessica K. Litwin
28e674bc6a small ui change so that the settings buttons at the top of each column are actually aligned properly (#2894) 2017-05-07 23:47:55 +02:00
ster
9d84dda213 Update Ukrainian, Russian translations (#2893)
* Update Ukrainian translation (rebased off Russian translation)

* Update Ukrainian, Russian translations
2017-05-07 23:47:19 +02:00
yhirano
d63c291f86 Enable CodeClimate SCSS Lint checks (#2886)
* add scss_lint to Gemfile

* add .scss-lint.yml

* fix warnings of scss-lint

* chmod -x styles/variables.scss

* Enable CodeClimate SCSS Lint checks
2017-05-07 20:47:31 +02:00
Ratmir Karabut
6ad19036e3 Update Russian translation (#2891)
* Add Russian translation (ru)

* Fix a missing comma

* Fix the wording for better consistency

* Update Russian translation

* Arrange Russian setting alphabetically

* Fix syntax error

* Update Russian translation

* Fix formatting error

* Update Russian translation

* Update Russian translation

* Update ru.jsx

* Fix syntax error

* Remove two_factor_auth.warning (appears obsolete)

* Add missing strings in ru.yml

A lot of new strings translated, especially for the newly added admin section

* Fix translation consistency

* Update Russian translation

* Update Russian translation (pluralizations)

* Update Russian translation
2017-05-07 20:47:19 +02:00
Yamagishi Kazutoshi
3bdcf5d8f0 Add final newline to locale files (#2890) 2017-05-07 19:55:47 +02:00
ButterflyOfFire
c7848f54ff Update ar.json (#2888)
* Update ar.json

Adding more translations (updating the missing non translated strings) and some little minimal corrections.

* Update ar.json

Deleting final new line as suggested in the review.

* Update ar.json

* Update ar.json
2017-05-07 19:37:32 +02:00
masarakki
267ed3d74b raise-when-oembed-not-found (#2882) 2017-05-07 19:00:40 +02:00
alpaca-tc
ca05bfaac7 Refactor account.rb (#2881)
* Call simple query

* Refactor Account#keypair

* Replace escaped single quote

* Extract similar behavior to method

* Gather the same condition to one block

* Remove not needed receiver
2017-05-07 16:40:57 +02:00
Koala Yeung
e4b84c7ba5 locale: add Occitan locale-data for js (#2845)
Translation works by @Quent-in.
2017-05-07 16:39:37 +02:00
Özcan Zafer AYAN
983593ddf4 Add Turkish yml file (#2878)
* Add Turkish yml file

* Add translation files for Turkish

* Deleted click_to_edit key and val

Deleted click_to_edit: Düzenlemek için ilgili ayara tıklayınız line
2017-05-07 16:20:53 +02:00
Ram Lmn
f14df43435 Fix local fonts and change font-face values (#2877)
* Fix local fonts and change font-face values

* Remove eot font files
2017-05-07 15:23:06 +02:00
Yamagishi Kazutoshi
f000673599 Remove local_time gem, and add similar (#2875) 2017-05-07 15:22:54 +02:00
Yamagishi Kazutoshi
139d183485 Fix a aspect ratio for the embedded video (#2872) 2017-05-07 15:21:46 +02:00
Ira
ee1486a7de i18n: Update Hebrew interface translation. (#2880)
* follow the instructions for registering the language as stated on the Tootsuite's docs.

* Added translation strings from latest master

Adding &rlm; characters to many strings that are misdirected in the interface.

A tiny grammar fix

Updates of Hebrew strings to v1.3.1

Hebrew translation of the mailer templates.

Fix strings and a missing comma.

Just discovered two string keys were updated. this should lay Travis' mind to rest at last.

Remove mentions before counting characters to decide RTL ratio

Fixes for PR #2573

updated strings for latest master

Undo RTL counting, moved out to another branch for future consideration...
2017-05-07 15:20:34 +02:00
Matt Jankowski
b8ba719f73 Unblock domain service specs/refactor (#2867)
* Add spec for unblock domain service

* Refactor UnblockDomainService
2017-05-07 14:44:28 +02:00
Koala Yeung
ada8a6cb77 Fix unused key issue in zh-HK (#2870)
* locale: remove unused keys in zh-HK

* locale: update json translations

* handled the untranslated strings.
* removed unused keys.
2017-05-07 14:29:01 +02:00
Yamagishi Kazutoshi
6c678b7472 Fix locale key for account card (#2866) 2017-05-07 03:09:58 +02:00
Nolan Lawson
df81bc4a97 add asynchronous emojione-picker (code-splitting) (#2863) 2017-05-07 02:42:38 +02:00
alpaca-tc
74036a2c9d Hotfix convert string from symbol (#2856)
* Convert key to string from symbol

* Prefer :public_send instead of
2017-05-06 23:06:52 +02:00
alpaca-tc
05b72368ed Fixes slow query in notifications api (#2851)
* Add inclusion validation for activity_type

* When excluding all types with `WHERE NOT IN`, the query search all rows.
2017-05-06 21:55:40 +02:00
Koala Yeung
bd71327180 Fix Croatian localedata issues in mastodon.js (#2844)
* locale: added hr and oc react-intl locale data

* adds Croatian locale data in mastodon.js
* adds Occitan locale data in mastodon.js

Resolves #2667

* locale: sort locale data imports in mastodon.js

* locale: remove oc reference

* [react-intl](https://github.com/yahoo/react-intl) does not provide
  default locale data for Occitan. Hence removed from reference.
2017-05-06 17:30:48 +02:00
Yamagishi Kazutoshi
aa235318fc Add Japanese tranlsation for getting started, and run manage:tranlation (#2839)
* Add Japanese tranlsation for getting started, and run manage:tranlation

* remove unnecessary {apps}
2017-05-06 17:04:53 +02:00
alpaca-tc
a0b1951791 Refactor domain_blocks_controller (#2843)
* Set domain_block by before_action

* Cast value with ActiveRecord::Type

* Batch update
2017-05-06 17:03:34 +02:00
rch850
453fb84c9c Use null as default oEmbed height (#2842)
Height 640 is too big for most toots.
Twitter use null value to support flexible height.
2017-05-06 16:31:43 +02:00
alpaca-tc
59804abc3d Optimize MuteService and AfterBlockService (#2836) 2017-05-06 16:31:07 +02:00
jeroenpraat
496f466d73 Added support options to the bottom right (#2769)
* Added support options to the bottom right

I don't know if this is actually wanted, but I made these changes on my instance, so why not share it. Not wanted? No problem! BTW: Maybe the Mastodon image should leave here, cause there is no space left cause of the increased height of the getting started column.

* 2 paragraphs looks cleaner

* Update

* Good morning
2017-05-06 13:43:43 +02:00
Eugen Rochko
b8e166894b Fix Scheduler::SubscriptionsScheduler (#2834)
* Fix Scheduler::SubscriptionsScheduler, add worker test for it

* Change production log level of Sidekiq to "warn" instead of "info"
2017-05-06 13:05:03 +02:00
alpaca-tc
1f15a15621 Handling failed http response (#2823) 2017-05-06 12:55:59 +02:00
m4sk1n
fd1e29c3f8 i18n: Updated Polish translation (#2832)
* i18n: updated Polish translation

Signed-off-by: Marcin Mikołajczak <m4sk1n@vivaldi.net>

* i18n: completed Polish translation

Signed-off-by: Marcin Mikołajczak <m4sk1n@vivaldi.net>
2017-05-06 11:06:55 +02:00
Nolan Lawson
553e13144f remove legacy decorators, use lodash.debounce (#2830) 2017-05-06 11:05:32 +02:00
Koala Yeung
cf0b753209 Streamline javascript translation by improving translationRunner (#2808)
* package.json: Add "build:*" targets

* Improve react-intl-translations-manager workflow.
  * Added "build:production" to build production bundle.
  * Added "build:development" to build development bundle.

* Fix json translation files

* Run `yarn manage:translations` to fix translation files.
* Fix `pl.json` for syntax error.

* translationRunner: auto detect existing languages

* Auto detect existing rfc5646 language tag in *.json filenames
  in `app/javascript/mastodon/locale` folder. No need to manually
  define every new language in the languages array here.

* translationRunner: add more functionality

* Allow script user to specify language code to check.
* Added available language check.
* Added --force flag to force creation of unexists language.
* Added --help flag and help messages.

* gitignore: ignore npm-debug.log

* Fix webpack error if NODE_ENV is not defined

Default to use 'development' in config/webpack/configuration.js
2017-05-06 04:05:38 +02:00
alpaca-tc
ddc34feb58 Optimize follower_accounts and following_accounts (#2820) 2017-05-06 04:03:07 +02:00
Matt Jankowski
3f5b994ff0 Stream entry specs and refactor to use delegate (#2827)
* Add coverage for stream entry delegated methods

* Use delegate with allow_nil to clean up stream entry
2017-05-06 04:00:21 +02:00
gentaro
dacdfec973 Added japanese version of terms of service and privacy policy (#2703)
* Added japanese version of terms of service and privacy policy

* Fix typo

* Add trasnlation for title.

* Improve translation and update the date.
2017-05-06 02:23:22 +02:00
Matt Jankowski
4e05751346 Move account header and avatar methods to a concern (#2825) 2017-05-05 21:37:02 +02:00
alpaca-tc
ee3e0a93f4 Fixes unknown mime type (#2822) 2017-05-05 21:32:14 +02:00
alpaca-tc
d1290fbd8f Fixes propTypes warning introduced by #2774 (#2824) 2017-05-05 21:31:20 +02:00
Matt Jankowski
484c9709b6 Misc spec coverage improvements (#2821)
* Dont use raise_error by itself (avoids warning)

* Add coverage for AccountFilter

* Improve coverage and refactor for Subscription#lease_seconds

* Improve coverage and refactor for NotificationMailer

* Simplify assignment of min/max threshold on subscription
2017-05-05 14:56:00 -04:00
masarakki
d08f1112d5 use Twitter::Extractor for creating links (#2502) 2017-05-05 19:48:22 +02:00
Koala Yeung
886176f854 Update Locale zh-HK (#2818)
* locale: Add missing translation in zh-HK.yml

* locale: fix consistancy in zh-HK.yml translation

* locale: Improve zh-HK yml translations

* Use "PuSH" in all "PubSubHubBub" occurances.
* Simplify text on front page.
* Improve doorkeeper authorization table translations.
* Simplify setting form text for better layout.
* Improve "Business Email" translation.

* locale: Update zh-HK.json

* Fix untranslated text.
* Improve translations.
2017-05-05 18:48:54 +02:00
Yamagishi Kazutoshi
d397d0d681 Run manage:translations (#2816) 2017-05-05 18:46:51 +02:00
Matt Jankowski
20c37ed0f9 Add specs (and refactor) of FetchRemoteResourceService and SearchService (#2812)
* Coverage for fetch remote resource service

* Refactor fetch remote resource service

* Coverage for search service

* Refactor search service
2017-05-05 17:26:04 +02:00
Yamagishi Kazutoshi
9501a87704 Add Japanese translate to home column when inactive (#2813) 2017-05-05 17:25:42 +02:00
ButterflyOfFire
8f0f4a861a Update ar.json (#2815)
Adding more arabic translated strings.
2017-05-05 17:25:17 +02:00
Eugen Rochko
81584779cb More robust PuSH subscription refreshes (#2799)
* Fix #2473 - Use sidekiq scheduler to refresh PuSH subscriptions instead of cron

Fix an issue where / in domain would raise exception in TagManager#normalize_domain

PuSH subscriptions refresh done in a round-robin way to avoid hammering a single
server's hub in sequence. Correct handling of failures/retries through Sidekiq (see
also #2613). Optimize Account#with_followers scope. Also, since subscriptions
are now delegated to Sidekiq jobs, an uncaught exception will not stop the entire
refreshing operation halfway through

Fix #2702 - Correct user agent header on outgoing http requests

* Add test for SubscribeService

* Extract #expiring_accounts into method

* Make mastodon:push:refresh no-op

* Queues are now defined in sidekiq.yml

* Queues are now in sidekiq.yml
2017-05-05 02:23:01 +02:00
R Tucker
61c33652ad ui: check spoiler_text against regex filter (#1635) (#2665)
* ui: check spoiler_text against regex filter (#1635)

When filtering by regex, also check the spoiler_text if
present.

* ui: concatenate spoiler and content in reducer

Simplifies aa5b03c, clarifies intent of the field
2017-05-04 23:48:48 +02:00
alpaca-tc
74c8ca699c Delete records in smaller transaction (#2802) 2017-05-04 23:44:39 +02:00
Eugen Rochko
eddb95b012 When streaming API is disconnected, poll home/notifications (#2776)
* When streaming API is disconnected, poll home/notifications
Display slightly different empty home timeline message if user is following others
Cull notifications to 20 items when over 40 get added in real-time
Run manage:translations

* Optimize <HomeTimeline /> a little
2017-05-04 23:41:34 +02:00
AA4ch1
a50a87457e Fix language selector on preferences page (#2794) 2017-05-04 14:39:25 -04:00
Yamagishi Kazutoshi
566e0a772d Improve style for form in site settings (#2796) 2017-05-04 14:37:57 -04:00
Masoud Abkenar
11077af52f Persian translation update (#2788)
* Persian translation update

* fix newline typo
2017-05-04 18:32:05 +02:00
Wonderfall
0fc73a6e47 about page : use slightly more space (#2791) 2017-05-04 18:16:00 +02:00
Matt Jankowski
2bd132d458 Replace best_in_place editor on admin settings page (#2789)
* Remove best_in_place

* Replace best_in_place usage with rails helpers

* Move admin/settings#index to #edit action

* Remove click_to__edit from i18n
2017-05-04 18:12:44 +02:00
Akihiko Odaki
0cdcf32865 Use ws protocol in streaming API base URL (#2606) 2017-05-04 15:55:13 +02:00
Yamagishi Kazutoshi
e95983f5df Decode IDNA in PreviewCard (#2781) 2017-05-04 15:52:08 +02:00
unarist
e57e6f509d Show emoji shortname by a tooltip (#2784) 2017-05-04 15:50:09 +02:00
Eugen Rochko
13c16b4e95 Likely fix #2458, fix #2031 - handle out-of-order deletes for statuses (#2734)
* Likely fix #2458, fix #2031 - handle out-of-order deletes for statuses

If a delete arrives before the original status, cache that information
for 6h, and if the original status arrives in that window, ignore it

* Add test case
2017-05-04 04:34:57 +02:00
Eugen Rochko
4fcc0d5ac9 Fix #2725 (#2774) 2017-05-04 01:42:03 +02:00
goofy-bz
44969307c7 Update fr.json (#2757)
ajout espace insécable derrière pouet - pour voir
2017-05-03 23:36:01 +02:00
m4sk1n
4babdff72f i18n: updated Polish translation (#2768)
Signed-off-by: Marcin Mikołajczak <m4sk1n@vivaldi.net>
2017-05-03 23:19:11 +02:00
Tomohiro Suwa
aa6a26a2d5 Correct Account model for rubocop (#2587)
* Correct Account model for rubocop

* Undo these changes
2017-05-03 19:13:04 +02:00
Matt Jankowski
d91ba3c8d0 Remove screenshot image (#2736) 2017-05-03 17:03:10 +02:00
Eugen Rochko
bafd22ecf4 Fix #2706 - Always respond with 200 to PuSH payloads (#2733)
Fix #2196 - Respond with 201 when Salmon accepted, 400 when unverified
Fix #2629 - Correctly handle confirm_domain? for local accounts
Unify rules for extracting author acct from XML, prefer <email>, fall back
to <name> + <uri> (see also #2017, #2172)
2017-05-03 17:02:18 +02:00
Matt Jankowski
8c5ad23b24 Language improvements, replace whatlanguage with CLD (#2753)
* add failing en specs

* add cld2 gem

* Replace WhatLanguage with CLD
2017-05-03 16:59:31 +02:00
ヨイツの賢狼ホロ | 3rd style
1c469ca98b i18n: Update zh-CN [ Chinese (China) ] translations. (#2699)
* Update zh-CN translations.

* Update doorkeeper.zh-CN.yml

* Follow @Artoria2e5 's change advices.

* forget mail for text format ......

* fix some changes

* mail's html version ......

* https://github.com/tootsuite/mastodon/pull/2699#pullrequestreview-35982283

* a space.....

* delete some unused keys
2017-05-03 14:03:16 +02:00
unarist
e61ecf4091 Add styles for small devices to .onboarding-modal (#2748) 2017-05-03 14:02:15 +02:00
kawax
383c0b7802 Show boosted user's avatar (#2518)
* Show boosted user's avatar

* add .status__avatar-boost

* margin

* apply to notifications too.

* account__avatar-boost

* Add inline prop to Avatar component

* Add AvatarOverlay component

* rename mixins.scss

* move files for latest master

* fixed for webpack
2017-05-03 11:43:37 +02:00
unarist
40562fd266 Fix width of .confirmation-modal on narrow screens (#2743) 2017-05-03 11:39:14 +02:00
Yamagishi Kazutoshi
2ab7dc9a55 Use URI.join for generate asset URL (#2741)
* Use URI.join for generate asset URL

* to String
2017-05-03 11:31:21 +02:00
Eugen Rochko
f5bf5ebb82 Replace sprockets/browserify with Webpack (#2617)
* Replace browserify with webpack

* Add react-intl-translations-manager

* Do not minify in development, add offline-plugin for ServiceWorker background cache updates

* Adjust tests and dependencies

* Fix production deployments

* Fix tests

* More optimizations

* Improve travis cache for npm stuff

* Re-run travis

* Add back support for custom.scss as before

* Remove offline-plugin and babili

* Fix issue with Immutable.List().unshift(...values) not working as expected

* Make travis load schema instead of running all migrations in sequence

* Fix missing React import in WarningContainer. Optimize rendering performance by using ImmutablePureComponent instead of
React.PureComponent. ImmutablePureComponent uses Immutable.is() to compare props. Replace dynamic callback bindings in
<UI />

* Add react definitions to places that use JSX

* Add Procfile.dev for running rails, webpack and streaming API at the same time
2017-05-03 02:04:16 +02:00
Matt Jankowski
268dd32d76 Auth sign out (#2511)
* Add a spec for signing out

* Add spec showing that suspended user gets a 403 forbidden on sign out

* Allow suspended account users to sign out
2017-05-02 23:37:58 +02:00
Kaylee
7880671f35 Add option to disable two factor auth in admin accounts panel. (#2584)
* Add option to disable two factor auth in admin accounts panel.
Closes #2578

* Add @mjankowski's suggestions.
* Moves destroy actions behind User#disable_two_factor!
* Adds spec coverage for Admin:TwoFactorAuthenticationsController and User#disable_two_factor!
2017-05-02 21:07:12 +02:00
Matt Jankowski
b5eec34230 Add admin area view partials for each record type (#2700) 2017-05-02 20:56:28 +02:00
Audun Larsen
e68c0ce5f6 Norwegian translation for email notifications (#2673)
* Create confirmation_instructions.no.html.erb

* Create confirmation_instructions.no.text.erb

* Create password_change.no.html.erb

* Create password_change.no.text.erb

* Create reset_password_instructions.no.html.erb

* Create reset_password_instructions.no.text.erb

* Translates html welcome email

* Translates welcome email

* Translates html password changed email

* Translates password changed email

* Translates html reset password email

* Translates reset password email

* Fixes typo in translation

* Fixes typo in translation
2017-05-02 20:18:43 +02:00
Ash Furrow
54dddfe9b8 Darkens colour on stream entries meta. (#2616) 2017-05-02 20:10:55 +02:00
Yamagishi Kazutoshi
46943b64c6 Reset textarea height when press submit key (#2681)
* Reset textarea height when press submit key

* dry

* DON'T NEED props
2017-05-02 20:08:21 +02:00
hakoai
22b1a70274 Fix to completely hide NSFW-tagged images (#2724) 2017-05-02 20:03:00 +02:00
Yamagishi Kazutoshi
6f75c8451d Fix subscription expiration condition (#2715)
* Fix subscription expiration condition

* dry and add spec
2017-05-02 18:21:22 +02:00
Yamagishi Kazutoshi
b9b78549f3 Make it possible to check Subscription that has expired (#2712) 2017-05-02 15:52:30 +02:00
Ira
438ce5809f Add Hebrew interface translation. (#2573)
* follow the instructions for registering the language as stated on the Tootsuite's docs.

* Added translation strings from latest master

Adding &rlm; characters to many strings that are misdirected in the interface.

A tiny grammar fix

Updates of Hebrew strings to v1.3.1

Hebrew translation of the mailer templates.

Fix strings and a missing comma.

Just discovered two string keys were updated. this should lay Travis' mind to rest at last.

Remove mentions before counting characters to decide RTL ratio

Fixes for PR #2573

updated strings for latest master

Undo RTL counting, moved out to another branch for future consideration...
2017-05-02 08:54:35 -04:00
Stephen Burgess
34ae4cf511 fix(boost-icon): Align center for Firefox (#2690) 2017-05-02 02:15:14 +02:00
yhirano
298796cc7b annotate models (#2697)
* add annotate to Gemfile

* rails g annotate:install

* configure annotate_models

* add schema info to models

* fix rubocop to add frozen_string_literal
2017-05-02 02:14:47 +02:00
Matt Jankowski
a4859446ab Coverage for remote follows (#2694)
* Add coverage for create with empty acct value

* Add coverage for create with webfinger failure

* Add coverage for create with webfinger providing bad values

* Add coverage for create when webfinger is good

* Add coverage for session[:remote_follow] having data

* Simplify how remote follow pulls acct from session

* Remote follow behaves more like model

* Move the discovery portions of remote follow out of controller

* Check for suspended accounts
2017-05-02 00:44:23 +02:00
Matt Jankowski
7bffd16024 Error responses cleanup (#2692)
* Use respond_with_error for forbidden errors

* Wrap up common error code into single method
2017-05-01 22:24:36 +02:00
Giuseppe Pignataro
2bd46f442d Italian translation (#2654)
* Added Italian Translation of the following files:
Changes to be committed:
	new file:   app/views/user_mailer/confirmation_instructions.it.html.erb
	new file:   app/views/user_mailer/confirmation_instructions.it.text.erb
	new file:   app/views/user_mailer/password_change.it.html.erb
	new file:   app/views/user_mailer/password_change.it.text.erb
	new file:   app/views/user_mailer/reset_password_instructions.it.html.erb
	new file:   app/views/user_mailer/reset_password_instructions.it.text.erb

* Added italian translation
Changes to be committed:
new file:   config/locales/activerecord.it.yml
2017-05-01 18:14:51 +02:00
Stephen Burgess
11b706acdf fix(scrolling): Center for large screen w/o breaking horiz scroll (#2682) 2017-05-01 18:14:26 +02:00
Stephen Burgess
33b9e8d461 fix(dropdowns): Allow for dropdowns to fill full column (#2684)
* fix(dropdowns): Allow for dropdowns to fill full column

When the text inside a dropdown is longer than it is for English, the text is truncated which can result in a less-than-usable experience for languages such as German with longer words. This commit addresses the following:

* Allow the dropdown to expand to the entire width of the column based on the length of the text in the dropdown
* Align active dropdown arrow in relation to the trigger rather than the dropdown
* Show the right hand side of the dropdown which was previously hidden (could not see border radius)
* Ensure the three places dropdowns of status, account, and emoji appear well in Chrome, Firefox, Safari

* fix(emoji-dropdown): Restore emoji dropdown caret
2017-05-01 18:13:10 +02:00
Matt Jankowski
f025cc6782 Filter on allowed user language preferences (#2361)
* Naive approached to timeline filtering

* Convert allowed_languages into a db column

* Allow users to choose languages to see statuses in

* Style list items as two columns

* Add a hint to explain language filtering preference
2017-05-01 17:42:13 +02:00