You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

634 lines
27 KiB

8 years ago
7 years ago
Web Push Notifications (#3243) * feat: Register push subscription * feat: Notify when mentioned * feat: Boost, favourite, reply, follow, follow request * feat: Notification interaction * feat: Handle change of public key * feat: Unsubscribe if things go wrong * feat: Do not send normal notifications if push is enabled * feat: Focus client if open * refactor: Move push logic to WebPushSubscription * feat: Better title and body * feat: Localize messages * chore: Fix lint errors * feat: Settings * refactor: Lazy load * fix: Check if push settings exist * feat: Device-based preferences * refactor: Simplify logic * refactor: Pull request feedback * refactor: Pull request feedback * refactor: Create /api/web/push_subscriptions endpoint * feat: Spec PushSubscriptionController * refactor: WebPushSubscription => Web::PushSubscription * feat: Spec Web::PushSubscription * feat: Display first media attachment * feat: Support direction * fix: Stuff broken while rebasing * refactor: Integration with session activations * refactor: Cleanup * refactor: Simplify implementation * feat: Set VAPID keys via environment * chore: Comments * fix: Crash when no alerts * fix: Set VAPID keys in testing environment * fix: Follow link * feat: Notification actions * fix: Delete previous subscription * chore: Temporary logs * refactor: Move migration to a later date * fix: Fetch the correct session activation and misc bugs * refactor: Move migration to a later date * fix: Remove follow request (no notifications) * feat: Send administrator contact to push service * feat: Set time-to-live * fix: Do not show sensitive images * fix: Reducer crash in error handling * feat: Add badge * chore: Fix lint error * fix: Checkbox label overlap * fix: Check for payload support * fix: Rename action "type" (crash in latest Chrome) * feat: Action to expand notification * fix: Lint errors * fix: Unescape notification body * fix: Do not allow boosting if the status is hidden * feat: Add VAPID keys to the production sample environment * fix: Strip HTML tags from status * refactor: Better error messages * refactor: Handle browser not implementing the VAPID protocol (Samsung Internet) * fix: Error when target_status is nil * fix: Handle lack of image * fix: Delete reference to invalid subscriptions * feat: Better error handling * fix: Unescape HTML characters after tags are striped * refactor: Simpify code * fix: Modify to work with #4091 * Sort strings alphabetically * i18n: Updated Polish translation it annoys me that it's not fully localized :P * refactor: Use current_session in PushSubscriptionController * fix: Rebase mistake * fix: Set cacheName to mastodon * refactor: Pull request feedback * refactor: Remove logging statements * chore(yarn): Fix conflicts with master * chore(yarn): Copy latest from master * chore(yarn): Readd offline-plugin * refactor: Use save! and update! * refactor: Send notifications async * fix: Allow retry when push fails * fix: Save track for failed pushes * fix: Minify sw.js * fix: Remove account_id from fabricator
7 years ago
Web Push Notifications (#3243) * feat: Register push subscription * feat: Notify when mentioned * feat: Boost, favourite, reply, follow, follow request * feat: Notification interaction * feat: Handle change of public key * feat: Unsubscribe if things go wrong * feat: Do not send normal notifications if push is enabled * feat: Focus client if open * refactor: Move push logic to WebPushSubscription * feat: Better title and body * feat: Localize messages * chore: Fix lint errors * feat: Settings * refactor: Lazy load * fix: Check if push settings exist * feat: Device-based preferences * refactor: Simplify logic * refactor: Pull request feedback * refactor: Pull request feedback * refactor: Create /api/web/push_subscriptions endpoint * feat: Spec PushSubscriptionController * refactor: WebPushSubscription => Web::PushSubscription * feat: Spec Web::PushSubscription * feat: Display first media attachment * feat: Support direction * fix: Stuff broken while rebasing * refactor: Integration with session activations * refactor: Cleanup * refactor: Simplify implementation * feat: Set VAPID keys via environment * chore: Comments * fix: Crash when no alerts * fix: Set VAPID keys in testing environment * fix: Follow link * feat: Notification actions * fix: Delete previous subscription * chore: Temporary logs * refactor: Move migration to a later date * fix: Fetch the correct session activation and misc bugs * refactor: Move migration to a later date * fix: Remove follow request (no notifications) * feat: Send administrator contact to push service * feat: Set time-to-live * fix: Do not show sensitive images * fix: Reducer crash in error handling * feat: Add badge * chore: Fix lint error * fix: Checkbox label overlap * fix: Check for payload support * fix: Rename action "type" (crash in latest Chrome) * feat: Action to expand notification * fix: Lint errors * fix: Unescape notification body * fix: Do not allow boosting if the status is hidden * feat: Add VAPID keys to the production sample environment * fix: Strip HTML tags from status * refactor: Better error messages * refactor: Handle browser not implementing the VAPID protocol (Samsung Internet) * fix: Error when target_status is nil * fix: Handle lack of image * fix: Delete reference to invalid subscriptions * feat: Better error handling * fix: Unescape HTML characters after tags are striped * refactor: Simpify code * fix: Modify to work with #4091 * Sort strings alphabetically * i18n: Updated Polish translation it annoys me that it's not fully localized :P * refactor: Use current_session in PushSubscriptionController * fix: Rebase mistake * fix: Set cacheName to mastodon * refactor: Pull request feedback * refactor: Remove logging statements * chore(yarn): Fix conflicts with master * chore(yarn): Copy latest from master * chore(yarn): Readd offline-plugin * refactor: Use save! and update! * refactor: Send notifications async * fix: Allow retry when push fails * fix: Save track for failed pushes * fix: Minify sw.js * fix: Remove account_id from fabricator
7 years ago
Web Push Notifications (#3243) * feat: Register push subscription * feat: Notify when mentioned * feat: Boost, favourite, reply, follow, follow request * feat: Notification interaction * feat: Handle change of public key * feat: Unsubscribe if things go wrong * feat: Do not send normal notifications if push is enabled * feat: Focus client if open * refactor: Move push logic to WebPushSubscription * feat: Better title and body * feat: Localize messages * chore: Fix lint errors * feat: Settings * refactor: Lazy load * fix: Check if push settings exist * feat: Device-based preferences * refactor: Simplify logic * refactor: Pull request feedback * refactor: Pull request feedback * refactor: Create /api/web/push_subscriptions endpoint * feat: Spec PushSubscriptionController * refactor: WebPushSubscription => Web::PushSubscription * feat: Spec Web::PushSubscription * feat: Display first media attachment * feat: Support direction * fix: Stuff broken while rebasing * refactor: Integration with session activations * refactor: Cleanup * refactor: Simplify implementation * feat: Set VAPID keys via environment * chore: Comments * fix: Crash when no alerts * fix: Set VAPID keys in testing environment * fix: Follow link * feat: Notification actions * fix: Delete previous subscription * chore: Temporary logs * refactor: Move migration to a later date * fix: Fetch the correct session activation and misc bugs * refactor: Move migration to a later date * fix: Remove follow request (no notifications) * feat: Send administrator contact to push service * feat: Set time-to-live * fix: Do not show sensitive images * fix: Reducer crash in error handling * feat: Add badge * chore: Fix lint error * fix: Checkbox label overlap * fix: Check for payload support * fix: Rename action "type" (crash in latest Chrome) * feat: Action to expand notification * fix: Lint errors * fix: Unescape notification body * fix: Do not allow boosting if the status is hidden * feat: Add VAPID keys to the production sample environment * fix: Strip HTML tags from status * refactor: Better error messages * refactor: Handle browser not implementing the VAPID protocol (Samsung Internet) * fix: Error when target_status is nil * fix: Handle lack of image * fix: Delete reference to invalid subscriptions * feat: Better error handling * fix: Unescape HTML characters after tags are striped * refactor: Simpify code * fix: Modify to work with #4091 * Sort strings alphabetically * i18n: Updated Polish translation it annoys me that it's not fully localized :P * refactor: Use current_session in PushSubscriptionController * fix: Rebase mistake * fix: Set cacheName to mastodon * refactor: Pull request feedback * refactor: Remove logging statements * chore(yarn): Fix conflicts with master * chore(yarn): Copy latest from master * chore(yarn): Readd offline-plugin * refactor: Use save! and update! * refactor: Send notifications async * fix: Allow retry when push fails * fix: Save track for failed pushes * fix: Minify sw.js * fix: Remove account_id from fabricator
7 years ago
  1. ---
  2. en:
  3. about:
  4. about_hashtag_html: These are public toots tagged with <strong>#%{hashtag}</strong>. You can interact with them if you have an account anywhere in the fediverse.
  5. about_mastodon_html: Mastodon is a social network based on open web protocols and free, open-source software. It is decentralized like e-mail.
  6. about_this: About
  7. closed_registrations: Registrations are currently closed on this instance. However! You can find a different instance to make an account on and get access to the very same network from there.
  8. contact: Contact
  9. contact_missing: Not set
  10. contact_unavailable: N/A
  11. description_headline: What is %{domain}?
  12. domain_count_after: other instances
  13. domain_count_before: Connected to
  14. extended_description_html: |
  15. <h3>A good place for rules</h3>
  16. <p>The extended description has not been set up yet.</p>
  17. features:
  18. humane_approach_body: Learning from failures of other networks, Mastodon aims to make ethical design choices to combat the misuse of social media.
  19. humane_approach_title: A more humane approach
  20. not_a_product_body: Mastodon is not a commercial network. No advertising, no data mining, no walled gardens. There is no central authority.
  21. not_a_product_title: You’re a person, not a product
  22. real_conversation_body: With 500 characters at your disposal and support for granular content and media warnings, you can express yourself the way you want to.
  23. real_conversation_title: Built for real conversation
  24. within_reach_body: Multiple apps for iOS, Android, and other platforms thanks to a developer-friendly API ecosystem allow you to keep up with your friends anywhere.
  25. within_reach_title: Always within reach
  26. find_another_instance: Find another instance
  27. generic_description: "%{domain} is one server in the network"
  28. hosted_on: Mastodon hosted on %{domain}
  29. learn_more: Learn more
  30. other_instances: Instance list
  31. source_code: Source code
  32. status_count_after: statuses
  33. status_count_before: Who authored
  34. user_count_after: users
  35. user_count_before: Home to
  36. what_is_mastodon: What is Mastodon?
  37. accounts:
  38. follow: Follow
  39. followers: Followers
  40. following: Following
  41. media: Media
  42. nothing_here: There is nothing here!
  43. people_followed_by: People whom %{name} follows
  44. people_who_follow: People who follow %{name}
  45. posts: Toots
  46. posts_with_replies: Toots and replies
  47. remote_follow: Remote follow
  48. reserved_username: The username is reserved
  49. roles:
  50. admin: Admin
  51. unfollow: Unfollow
  52. admin:
  53. account_moderation_notes:
  54. account: Moderator
  55. create: Create
  56. created_at: Date
  57. created_msg: Moderation note successfully created!
  58. delete: Delete
  59. destroyed_msg: Moderation note successfully destroyed!
  60. accounts:
  61. are_you_sure: Are you sure?
  62. by_domain: Domain
  63. confirm: Confirm
  64. confirmed: Confirmed
  65. demote: Demote
  66. disable: Disable
  67. disable_two_factor_authentication: Disable 2FA
  68. disabled: Disabled
  69. display_name: Display name
  70. domain: Domain
  71. edit: Edit
  72. email: E-mail
  73. enable: Enable
  74. enabled: Enabled
  75. feed_url: Feed URL
  76. followers: Followers
  77. followers_url: Followers URL
  78. follows: Follows
  79. inbox_url: Inbox URL
  80. ip: IP
  81. location:
  82. all: All
  83. local: Local
  84. remote: Remote
  85. title: Location
  86. login_status: Login status
  87. media_attachments: Media attachments
  88. memorialize: Turn into memoriam
  89. moderation:
  90. all: All
  91. silenced: Silenced
  92. suspended: Suspended
  93. title: Moderation
  94. moderation_notes: Moderation notes
  95. most_recent_activity: Most recent activity
  96. most_recent_ip: Most recent IP
  97. not_subscribed: Not subscribed
  98. order:
  99. alphabetic: Alphabetic
  100. most_recent: Most recent
  101. title: Order
  102. outbox_url: Outbox URL
  103. perform_full_suspension: Perform full suspension
  104. profile_url: Profile URL
  105. promote: Promote
  106. protocol: Protocol
  107. public: Public
  108. push_subscription_expires: PuSH subscription expires
  109. redownload: Refresh avatar
  110. reset: Reset
  111. reset_password: Reset password
  112. resubscribe: Resubscribe
  113. role: Permissions
  114. roles:
  115. admin: Administrator
  116. moderator: Moderator
  117. user: User
  118. salmon_url: Salmon URL
  119. search: Search
  120. shared_inbox_url: Shared Inbox URL
  121. show:
  122. created_reports: Reports created by this account
  123. report: report
  124. targeted_reports: Reports made about this account
  125. silence: Silence
  126. statuses: Statuses
  127. subscribe: Subscribe
  128. title: Accounts
  129. undo_silenced: Undo silence
  130. undo_suspension: Undo suspension
  131. unsubscribe: Unsubscribe
  132. username: Username
  133. web: Web
  134. custom_emojis:
  135. copied_msg: Successfully created local copy of the emoji
  136. copy: Copy
  137. copy_failed_msg: Could not make a local copy of that emoji
  138. created_msg: Emoji successfully created!
  139. delete: Delete
  140. destroyed_msg: Emojo successfully destroyed!
  141. disable: Disable
  142. disabled_msg: Successfully disabled that emoji
  143. emoji: Emoji
  144. enable: Enable
  145. enabled_msg: Successfully enabled that emoji
  146. image_hint: PNG up to 50KB
  147. listed: Listed
  148. new:
  149. title: Add new custom emoji
  150. overwrite: Overwrite
  151. shortcode: Shortcode
  152. shortcode_hint: At least 2 characters, only alphanumeric characters and underscores
  153. title: Custom emojis
  154. unlisted: Unlisted
  155. update_failed_msg: Could not update that emoji
  156. updated_msg: Emoji successfully updated!
  157. upload: Upload
  158. domain_blocks:
  159. add_new: Add new
  160. created_msg: Domain block is now being processed
  161. destroyed_msg: Domain block has been undone
  162. domain: Domain
  163. new:
  164. create: Create block
  165. hint: The domain block will not prevent creation of account entries in the database, but will retroactively and automatically apply specific moderation methods on those accounts.
  166. severity:
  167. desc_html: "<strong>Silence</strong> will make the account's posts invisible to anyone who isn't following them. <strong>Suspend</strong> will remove all of the account's content, media, and profile data. Use <strong>None</strong> if you just want to reject media files."
  168. noop: None
  169. silence: Silence
  170. suspend: Suspend
  171. title: New domain block
  172. reject_media: Reject media files
  173. reject_media_hint: Removes locally stored media files and refuses to download any in the future. Irrelevant for suspensions
  174. severities:
  175. noop: None
  176. silence: Silence
  177. suspend: Suspend
  178. severity: Severity
  179. show:
  180. affected_accounts:
  181. one: One account in the database affected
  182. other: "%{count} accounts in the database affected"
  183. retroactive:
  184. silence: Unsilence all existing accounts from this domain
  185. suspend: Unsuspend all existing accounts from this domain
  186. title: Undo domain block for %{domain}
  187. undo: Undo
  188. title: Domain Blocks
  189. undo: Undo
  190. email_domain_blocks:
  191. add_new: Add new
  192. created_msg: Email domain block successfully created
  193. delete: Delete
  194. destroyed_msg: Email domain block successfully deleted
  195. domain: Domain
  196. new:
  197. create: Create block
  198. title: New email domain block
  199. title: Email Domain Block
  200. instances:
  201. account_count: Known accounts
  202. domain_name: Domain
  203. reset: Reset
  204. search: Search
  205. title: Known Instances
  206. reports:
  207. action_taken_by: Action taken by
  208. are_you_sure: Are you sure?
  209. comment:
  210. label: Comment
  211. none: None
  212. delete: Delete
  213. id: ID
  214. mark_as_resolved: Mark as resolved
  215. nsfw:
  216. 'false': Unhide media attachments
  217. 'true': Hide media attachments
  218. report: 'Report #%{id}'
  219. report_contents: Contents
  220. reported_account: Reported account
  221. reported_by: Reported by
  222. resolved: Resolved
  223. silence_account: Silence account
  224. status: Status
  225. suspend_account: Suspend account
  226. target: Target
  227. title: Reports
  228. unresolved: Unresolved
  229. view: View
  230. settings:
  231. bootstrap_timeline_accounts:
  232. desc_html: Separate multiple usernames by comma. Only local and unlocked accounts will work. Default when empty is all local admins.
  233. title: Default follows for new users
  234. contact_information:
  235. email: Business e-mail
  236. username: Contact username
  237. registrations:
  238. closed_message:
  239. desc_html: Displayed on frontpage when registrations are closed. You can use HTML tags
  240. title: Closed registration message
  241. deletion:
  242. desc_html: Allow anyone to delete their account
  243. title: Open account deletion
  244. open:
  245. desc_html: Allow anyone to create an account
  246. title: Open registration
  247. site_description:
  248. desc_html: Introductory paragraph on the frontpage and in meta tags. You can use HTML tags, in particular <code>&lt;a&gt;</code> and <code>&lt;em&gt;</code>.
  249. title: Instance description
  250. site_description_extended:
  251. desc_html: A good place for your code of conduct, rules, guidelines and other things that set your instance apart. You can use HTML tags
  252. title: Custom extended information
  253. site_terms:
  254. desc_html: You can write your own privacy policy, terms of service or other legalese. You can use HTML tags
  255. title: Custom terms of service
  256. site_title: Instance name
  257. thumbnail:
  258. desc_html: Used for previews via OpenGraph and API. 1200x630px recommended
  259. title: Instance thumbnail
  260. timeline_preview:
  261. desc_html: Display public timeline on landing page
  262. title: Timeline preview
  263. title: Site Settings
  264. statuses:
  265. back_to_account: Back to account page
  266. batch:
  267. delete: Delete
  268. nsfw_off: NSFW OFF
  269. nsfw_on: NSFW ON
  270. execute: Execute
  271. failed_to_execute: Failed to execute
  272. media:
  273. hide: Hide media
  274. show: Show media
  275. title: Media
  276. no_media: No media
  277. title: Account statuses
  278. with_media: With media
  279. subscriptions:
  280. callback_url: Callback URL
  281. confirmed: Confirmed
  282. expires_in: Expires in
  283. last_delivery: Last delivery
  284. title: WebSub
  285. topic: Topic
  286. title: Administration
  287. admin_mailer:
  288. new_report:
  289. body: "%{reporter} has reported %{target}"
  290. subject: New report for %{instance} (#%{id})
  291. application_mailer:
  292. salutation: "%{name},"
  293. settings: 'Change e-mail preferences: %{link}'
  294. signature: Mastodon notifications from %{instance}
  295. view: 'View:'
  296. applications:
  297. created: Application successfully created
  298. destroyed: Application successfully deleted
  299. invalid_url: The provided URL is invalid
  300. regenerate_token: Regenerate access token
  301. token_regenerated: Access token successfully regenerated
  302. warning: Be very careful with this data. Never share it with anyone!
  303. your_token: Your access token
  304. auth:
  305. agreement_html: By signing up you agree to <a href="%{rules_path}">our terms of service</a> and <a href="%{terms_path}">privacy policy</a>.
  306. change_password: Security
  307. delete_account: Delete account
  308. delete_account_html: If you wish to delete your account, you can <a href="%{path}">proceed here</a>. You will be asked for confirmation.
  309. didnt_get_confirmation: Didn't receive confirmation instructions?
  310. forgot_password: Forgot your password?
  311. invalid_reset_password_token: Password reset token is invalid or expired. Please request a new one.
  312. login: Log in
  313. logout: Logout
  314. register: Sign up
  315. resend_confirmation: Resend confirmation instructions
  316. reset_password: Reset password
  317. set_new_password: Set new password
  318. authorize_follow:
  319. error: Unfortunately, there was an error looking up the remote account
  320. follow: Follow
  321. follow_request: 'You have sent a follow request to:'
  322. following: 'Success! You are now following:'
  323. post_follow:
  324. close: Or, you can just close this window.
  325. return: Return to the user's profile
  326. web: Go to web
  327. title: Follow %{acct}
  328. datetime:
  329. distance_in_words:
  330. about_x_hours: "%{count}h"
  331. about_x_months: "%{count}mo"
  332. about_x_years: "%{count}y"
  333. almost_x_years: "%{count}y"
  334. half_a_minute: Just now
  335. less_than_x_minutes: "%{count}m"
  336. less_than_x_seconds: Just now
  337. over_x_years: "%{count}y"
  338. x_days: "%{count}d"
  339. x_minutes: "%{count}m"
  340. x_months: "%{count}mo"
  341. x_seconds: "%{count}s"
  342. deletes:
  343. bad_password_msg: Nice try, hackers! Incorrect password
  344. confirm_password: Enter your current password to verify your identity
  345. description_html: This will <strong>permanently, irreversibly</strong> remove content from your account and deactivate it. Your username will remain reserved to prevent future impersonations.
  346. proceed: Delete account
  347. success_msg: Your account was successfully deleted
  348. warning_html: Only deletion of content from this particular instance is guaranteed. Content that has been widely shared is likely to leave traces. Offline servers and servers that have unsubscribed from your updates will not update their databases.
  349. warning_title: Disseminated content availability
  350. errors:
  351. '403': You don't have permission to view this page.
  352. '404': The page you were looking for doesn't exist.
  353. '410': The page you were looking for doesn't exist anymore.
  354. '422':
  355. content: Security verification failed. Are you blocking cookies?
  356. title: Security verification failed
  357. '429': Throttled
  358. '500':
  359. content: We're sorry, but something went wrong on our end.
  360. title: This page is not correct
  361. noscript_html: To use the Mastodon web application, please enable JavaScript. Alternatively, try one of the <a href="https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md">native apps</a> for Mastodon for your platform.
  362. exports:
  363. blocks: You block
  364. csv: CSV
  365. follows: You follow
  366. mutes: You mute
  367. storage: Media storage
  368. followers:
  369. domain: Domain
  370. explanation_html: If you want to ensure the privacy of your statuses, you must be aware of who is following you. <strong>Your private statuses are delivered to all instances where you have followers</strong>. You may wish to review them, and remove followers if you do not trust your privacy to be respected by the staff or software of those instances.
  371. followers_count: Number of followers
  372. lock_link: Lock your account
  373. purge: Remove from followers
  374. success:
  375. one: In the process of soft-blocking followers from one domain...
  376. other: In the process of soft-blocking followers from %{count} domains...
  377. true_privacy_html: Please mind that <strong>true privacy can only be achieved with end-to-end encryption</strong>.
  378. unlocked_warning_html: Anyone can follow you to immediately view your private statuses. %{lock_link} to be able to review and reject followers.
  379. unlocked_warning_title: Your account is not locked
  380. generic:
  381. changes_saved_msg: Changes successfully saved!
  382. powered_by: powered by %{link}
  383. save_changes: Save changes
  384. validation_errors:
  385. one: Something isn't quite right yet! Please review the error below
  386. other: Something isn't quite right yet! Please review %{count} errors below
  387. imports:
  388. preface: You can import data that you have exported from another instance, such as a list of the people you are following or blocking.
  389. success: Your data was successfully uploaded and will now be processed in due time
  390. types:
  391. blocking: Blocking list
  392. following: Following list
  393. muting: Muting list
  394. upload: Upload
  395. in_memoriam_html: In Memoriam.
  396. landing_strip_html: "<strong>%{name}</strong> is a user on %{link_to_root_path}. You can follow them or interact with them if you have an account anywhere in the fediverse."
  397. landing_strip_signup_html: If you don't, you can <a href="%{sign_up_path}">sign up here</a>.
  398. media_attachments:
  399. validations:
  400. images_and_video: Cannot attach a video to a status that already contains images
  401. too_many: Cannot attach more than 4 files
  402. notification_mailer:
  403. digest:
  404. body: 'Here is a brief summary of what you missed on %{instance} since your last visit on %{since}:'
  405. mention: "%{name} mentioned you in:"
  406. new_followers_summary:
  407. one: You have acquired one new follower! Yay!
  408. other: You have gotten %{count} new followers! Amazing!
  409. subject:
  410. one: "1 new notification since your last visit \U0001F418"
  411. other: "%{count} new notifications since your last visit \U0001F418"
  412. favourite:
  413. body: 'Your status was favourited by %{name}:'
  414. subject: "%{name} favourited your status"
  415. follow:
  416. body: "%{name} is now following you!"
  417. subject: "%{name} is now following you"
  418. follow_request:
  419. body: "%{name} has requested to follow you"
  420. subject: 'Pending follower: %{name}'
  421. mention:
  422. body: 'You were mentioned by %{name} in:'
  423. subject: You were mentioned by %{name}
  424. reblog:
  425. body: 'Your status was boosted by %{name}:'
  426. subject: "%{name} boosted your status"
  427. number:
  428. human:
  429. decimal_units:
  430. format: "%n%u"
  431. units:
  432. billion: B
  433. million: M
  434. quadrillion: Q
  435. thousand: K
  436. trillion: T
  437. unit: ''
  438. pagination:
  439. next: Next
  440. prev: Prev
  441. truncate: "&hellip;"
  442. preferences:
  443. languages: Languages
  444. other: Other
  445. publishing: Publishing
  446. web: Web
  447. push_notifications:
  448. favourite:
  449. title: "%{name} favourited your status"
  450. follow:
  451. title: "%{name} is now following you"
  452. group:
  453. title: "%{count} notifications"
  454. mention:
  455. action_boost: Boost
  456. action_expand: Show more
  457. action_favourite: Favourite
  458. title: "%{name} mentioned you"
  459. reblog:
  460. title: "%{name} boosted your status"
  461. remote_follow:
  462. acct: Enter your username@domain you want to follow from
  463. missing_resource: Could not find the required redirect URL for your account
  464. proceed: Proceed to follow
  465. prompt: 'You are going to follow:'
  466. sessions:
  467. activity: Last activity
  468. browser: Browser
  469. browsers:
  470. alipay: Alipay
  471. blackberry: Blackberry
  472. chrome: Chrome
  473. edge: Microsoft Edge
  474. firefox: Firefox
  475. generic: Unknown browser
  476. ie: Internet Explorer
  477. micro_messenger: MicroMessenger
  478. nokia: Nokia S40 Ovi Browser
  479. opera: Opera
  480. phantom_js: PhantomJS
  481. qq: QQ Browser
  482. safari: Safari
  483. uc_browser: UCBrowser
  484. weibo: Weibo
  485. current_session: Current session
  486. description: "%{browser} on %{platform}"
  487. explanation: These are the web browsers currently logged in to your Mastodon account.
  488. ip: IP
  489. platforms:
  490. adobe_air: Adobe Air
  491. android: Android
  492. blackberry: Blackberry
  493. chrome_os: ChromeOS
  494. firefox_os: Firefox OS
  495. ios: iOS
  496. linux: Linux
  497. mac: Mac
  498. other: unknown platform
  499. windows: Windows
  500. windows_mobile: Windows Mobile
  501. windows_phone: Windows Phone
  502. revoke: Revoke
  503. revoke_success: Session successfully revoked
  504. title: Sessions
  505. settings:
  506. authorized_apps: Authorized apps
  507. back: Back to Mastodon
  508. delete: Account deletion
  509. development: Development
  510. edit_profile: Edit profile
  511. export: Data export
  512. followers: Authorized followers
  513. import: Import
  514. notifications: Notifications
  515. preferences: Preferences
  516. settings: Settings
  517. two_factor_authentication: Two-factor Authentication
  518. your_apps: Your applications
  519. statuses:
  520. open_in_web: Open in web
  521. over_character_limit: character limit of %{max} exceeded
  522. pin_errors:
  523. limit: Too many toots pinned
  524. ownership: Someone else's toot cannot be pinned
  525. private: Non-public toot cannot be pinned
  526. reblog: A boost cannot be pinned
  527. show_more: Show more
  528. visibilities:
  529. private: Followers-only
  530. private_long: Only show to followers
  531. public: Public
  532. public_long: Everyone can see
  533. unlisted: Unlisted
  534. unlisted_long: Everyone can see, but not listed on public timelines
  535. stream_entries:
  536. click_to_show: Click to show
  537. pinned: Pinned toot
  538. reblogged: boosted
  539. sensitive_content: Sensitive content
  540. terms:
  541. body_html: |
  542. <h2>Privacy Policy</h2>
  543. <h3 id="collect">What information do we collect?</h3>
  544. <p>We collect information from you when you register on our site and gather data when you participate in the forum by reading, writing, and evaluating the content shared here.</p>
  545. <p>When registering on our site, you may be asked to enter your name and e-mail address. You may, however, visit our site without registering. Your e-mail address will be verified by an email containing a unique link. If that link is visited, we know that you control the e-mail address.</p>
  546. <p>When registered and posting, we record the IP address that the post originated from. We also may retain server logs which include the IP address of every request to our server.</p>
  547. <h3 id="use">What do we use your information for?</h3>
  548. <p>Any of the information we collect from you may be used in one of the following ways:</p>
  549. <ul>
  550. <li>To personalize your experience &mdash; your information helps us to better respond to your individual needs.</li>
  551. <li>To improve our site &mdash; we continually strive to improve our site offerings based on the information and feedback we receive from you.</li>
  552. <li>To improve customer service &mdash; your information helps us to more effectively respond to your customer service requests and support needs.</li>
  553. <li>To send periodic emails &mdash; The email address you provide may be used to send you information, notifications that you request about changes to topics or in response to your user name, respond to inquiries, and/or other requests or questions.</li>
  554. </ul>
  555. <h3 id="protect">How do we protect your information?</h3>
  556. <p>We implement a variety of security measures to maintain the safety of your personal information when you enter, submit, or access your personal information.</p>
  557. <h3 id="data-retention">What is your data retention policy?</h3>
  558. <p>We will make a good faith effort to:</p>
  559. <ul>
  560. <li>Retain server logs containing the IP address of all requests to this server no more than 90 days.</li>
  561. <li>Retain the IP addresses associated with registered users and their posts no more than 5 years.</li>
  562. </ul>
  563. <h3 id="cookies">Do we use cookies?</h3>
  564. <p>Yes. Cookies are small files that a site or its service provider transfers to your computer's hard drive through your Web browser (if you allow). These cookies enable the site to recognize your browser and, if you have a registered account, associate it with your registered account.</p>
  565. <p>We use cookies to understand and save your preferences for future visits and compile aggregate data about site traffic and site interaction so that we can offer better site experiences and tools in the future. We may contract with third-party service providers to assist us in better understanding our site visitors. These service providers are not permitted to use the information collected on our behalf except to help us conduct and improve our business.</p>
  566. <h3 id="disclose">Do we disclose any information to outside parties?</h3>
  567. <p>We do not sell, trade, or otherwise transfer to outside parties your personally identifiable information. This does not include trusted third parties who assist us in operating our site, conducting our business, or servicing you, so long as those parties agree to keep this information confidential. We may also release your information when we believe release is appropriate to comply with the law, enforce our site policies, or protect ours or others rights, property, or safety. However, non-personally identifiable visitor information may be provided to other parties for marketing, advertising, or other uses.</p>
  568. <h3 id="third-party">Third party links</h3>
  569. <p>Occasionally, at our discretion, we may include or offer third party products or services on our site. These third party sites have separate and independent privacy policies. We therefore have no responsibility or liability for the content and activities of these linked sites. Nonetheless, we seek to protect the integrity of our site and welcome any feedback about these sites.</p>
  570. <h3 id="coppa">Children's Online Privacy Protection Act Compliance</h3>
  571. <p>Our site, products and services are all directed to people who are at least 13 years old. If this server is in the USA, and you are under the age of 13, per the requirements of COPPA (<a href="https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act">Children's Online Privacy Protection Act</a>) do not use this site.</p>
  572. <h3 id="online">Online Privacy Policy Only</h3>
  573. <p>This online privacy policy applies only to information collected through our site and not to information collected offline.</p>
  574. <h3 id="consent">Your Consent</h3>
  575. <p>By using our site, you consent to our web site privacy policy.</p>
  576. <h3 id="changes">Changes to our Privacy Policy</h3>
  577. <p>If we decide to change our privacy policy, we will post those changes on this page.</p>
  578. <p>This document is CC-BY-SA. It was last updated May 31, 2013.</p>
  579. <p>Originally adapted from the <a href="https://github.com/discourse/discourse">Discourse privacy policy</a>.</p>
  580. title: "%{instance} Terms of Service and Privacy Policy"
  581. themes:
  582. default: Mastodon
  583. time:
  584. formats:
  585. default: "%b %d, %Y, %H:%M"
  586. two_factor_authentication:
  587. code_hint: Enter the code generated by your authenticator app to confirm
  588. description_html: If you enable <strong>two-factor authentication</strong>, logging in will require you to be in possession of your phone, which will generate tokens for you to enter.
  589. disable: Disable
  590. enable: Enable
  591. enabled: Two-factor authentication is enabled
  592. enabled_success: Two-factor authentication successfully enabled
  593. generate_recovery_codes: Generate recovery codes
  594. instructions_html: "<strong>Scan this QR code into Google Authenticator or a similiar TOTP app on your phone</strong>. From now on, that app will generate tokens that you will have to enter when logging in."
  595. lost_recovery_codes: Recovery codes allow you to regain access to your account if you lose your phone. If you've lost your recovery codes, you can regenerate them here. Your old recovery codes will be invalidated.
  596. manual_instructions: 'If you can''t scan the QR code and need to enter it manually, here is the plain-text secret:'
  597. recovery_codes: Backup recovery codes
  598. recovery_codes_regenerated: Recovery codes successfully regenerated
  599. recovery_instructions_html: If you ever lose access to your phone, you can use one of the recovery codes below to regain access to your account. <strong>Keep the recovery codes safe</strong>. For example, you may print them and store them with other important documents.
  600. setup: Set up
  601. wrong_code: The entered code was invalid! Are server time and device time correct?
  602. users:
  603. invalid_email: The e-mail address is invalid
  604. invalid_otp_token: Invalid two-factor code
  605. signed_in_as: 'Signed in as:'