From 49fc54aac603fee08a6fb1e8b9610a0537ca9ec2 Mon Sep 17 00:00:00 2001 From: Sawood Alam Date: Sat, 3 Dec 2016 23:17:51 -0500 Subject: [PATCH] Add initial Urdu support with RTL direction --- app/assets/javascripts/locales/ur.js.erb | 3 + app/models/rtl.rb | 2 +- config/locales/client.ur.yml | 3322 ++++++++++++++++ config/locales/server.ur.yml | 3379 +++++++++++++++++ .../config/locales/client.ur.yml | 7 + .../config/locales/server.ur.yml | 3 + .../config/locales/server.ur.yml | 3 + plugins/poll/config/locales/client.ur.yml | 89 + plugins/poll/config/locales/server.ur.yml | 65 + public/403.ur.html | 28 + public/422.ur.html | 27 + public/500.ur.html | 13 + public/503.ur.html | 12 + .../lib/discourse_imgur/locale/server.ur.yml | 22 + 14 files changed, 6974 insertions(+), 1 deletion(-) create mode 100644 app/assets/javascripts/locales/ur.js.erb create mode 100644 config/locales/client.ur.yml create mode 100644 config/locales/server.ur.yml create mode 100644 plugins/discourse-details/config/locales/client.ur.yml create mode 100644 plugins/discourse-details/config/locales/server.ur.yml create mode 100644 plugins/discourse-nginx-performance-report/config/locales/server.ur.yml create mode 100644 plugins/poll/config/locales/client.ur.yml create mode 100644 plugins/poll/config/locales/server.ur.yml create mode 100644 public/403.ur.html create mode 100644 public/422.ur.html create mode 100644 public/500.ur.html create mode 100644 public/503.ur.html create mode 100644 vendor/gems/discourse_imgur/lib/discourse_imgur/locale/server.ur.yml diff --git a/app/assets/javascripts/locales/ur.js.erb b/app/assets/javascripts/locales/ur.js.erb new file mode 100644 index 00000000000..6bff8e1dd8b --- /dev/null +++ b/app/assets/javascripts/locales/ur.js.erb @@ -0,0 +1,3 @@ +//= depend_on 'client.ur.yml' +//= require locales/i18n +<%= JsLocaleHelper.output_locale(:ur) %> diff --git a/app/models/rtl.rb b/app/models/rtl.rb index e3a4946b3a0..79f48603e02 100644 --- a/app/models/rtl.rb +++ b/app/models/rtl.rb @@ -19,7 +19,7 @@ class RTL end def rtl_locales - %w(he ar fa_IR) + %w(he ar ur fa_IR) end def css_class diff --git a/config/locales/client.ur.yml b/config/locales/client.ur.yml new file mode 100644 index 00000000000..9061d17f101 --- /dev/null +++ b/config/locales/client.ur.yml @@ -0,0 +1,3322 @@ +# encoding: utf-8 +# +# This file contains content for the client portion of Discourse, sent out +# to the Javascript app. +# +# To work with us on translations, see: https://www.transifex.com/projects/p/discourse-org/ +# +# This is a "source" file, which is used by Transifex to get translations for other languages. +# After this file is changed, it needs to be pushed by a maintainer to Transifex: +# +# tx push -s +# +# Read more here: https://meta.discourse.org/t/contribute-a-translation-to-discourse/14882 +# +# To validate this YAML file after you change it, please paste it into http://yamllint.com/ + +ur: + js: + number: + format: + # symbol used to separate the integer part from the fractional part of a number + separator: "." + # symbol for the thousands separator used in digit grouping + delimiter: "," + human: + storage_units: + format: '%n %u' + units: + byte: + one: Byte + other: Bytes + gb: GB + kb: KB + mb: MB + tb: TB + short: + thousands: "{{number}}k" + millions: "{{number}}M" + dates: + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + time: "h:mm a" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + timeline_date: "MMM YYYY" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_no_year: "MMM D h:mm a" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_no_year_no_time: "MMM D" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + full_no_year_no_time: "MMMM Do" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_with_year: "MMM D, YYYY h:mm a" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_with_year_no_time: "MMM D, YYYY" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + full_with_year_no_time: "MMMM Do, YYYY" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_date_with_year: "MMM D, 'YY LT" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_date_without_year: "MMM D, LT" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_date_with_year_without_time: "MMM D, 'YY" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_date_without_year_with_linebreak: "MMM D
LT" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_date_with_year_with_linebreak: "MMM D, 'YY
LT" + + wrap_ago: "%{date} ago" + + tiny: + half_a_minute: "< 1m" + less_than_x_seconds: + one: "< 1s" + other: "< %{count}s" + x_seconds: + one: "1s" + other: "%{count}s" + x_minutes: + one: "1m" + other: "%{count}m" + about_x_hours: + one: "1h" + other: "%{count}h" + x_days: + one: "1d" + other: "%{count}d" + about_x_years: + one: "1y" + other: "%{count}y" + over_x_years: + one: "> 1y" + other: "> %{count}y" + almost_x_years: + one: "1y" + other: "%{count}y" + date_month: "MMM D" + date_year: "MMM 'YY" + medium: + x_minutes: + one: "1 min" + other: "%{count} mins" + x_hours: + one: "1 hour" + other: "%{count} hours" + x_days: + one: "1 day" + other: "%{count} days" + date_year: "MMM D, 'YY" + medium_with_ago: + x_minutes: + one: "1 min ago" + other: "%{count} mins ago" + x_hours: + one: "1 hour ago" + other: "%{count} hours ago" + x_days: + one: "1 day ago" + other: "%{count} days ago" + later: + x_days: + one: "1 day later" + other: "%{count} days later" + x_months: + one: "1 month later" + other: "%{count} months later" + x_years: + one: "1 year later" + other: "%{count} years later" + previous_month: 'Previous Month' + next_month: 'Next Month' + share: + topic: 'share a link to this topic' + post: 'post #%{postNumber}' + close: 'close' + twitter: 'share this link on Twitter' + facebook: 'share this link on Facebook' + google+: 'share this link on Google+' + email: 'send this link in an email' + + action_codes: + public_topic: "made this topic public %{when}" + private_topic: "made this topic private %{when}" + split_topic: "split this topic %{when}" + invited_user: "invited %{who} %{when}" + invited_group: "invited %{who} %{when}" + removed_user: "removed %{who} %{when}" + removed_group: "removed %{who} %{when}" + autoclosed: + enabled: 'closed %{when}' + disabled: 'opened %{when}' + closed: + enabled: 'closed %{when}' + disabled: 'opened %{when}' + archived: + enabled: 'archived %{when}' + disabled: 'unarchived %{when}' + pinned: + enabled: 'pinned %{when}' + disabled: 'unpinned %{when}' + pinned_globally: + enabled: 'pinned globally %{when}' + disabled: 'unpinned %{when}' + visible: + enabled: 'listed %{when}' + disabled: 'unlisted %{when}' + + topic_admin_menu: "topic admin actions" + + wizard_required: "It's time to configure your forum! Start the Setup Wizard!" + emails_are_disabled: "All outgoing email has been globally disabled by an administrator. No email notifications of any kind will be sent." + + bootstrap_mode_enabled: "To make launching your new site easier, you are in bootstrap mode. All new users will be granted trust level 1 and have daily email digest updates enabled. This will be automatically turned off when total user count exceeds %{min_users} users." + bootstrap_mode_disabled: "Bootstrap mode will be disabled in next 24 hours." + + s3: + regions: + us_east_1: "US East (N. Virginia)" + us_west_1: "US West (N. California)" + us_west_2: "US West (Oregon)" + us_gov_west_1: "AWS GovCloud (US)" + eu_west_1: "EU (Ireland)" + eu_central_1: "EU (Frankfurt)" + ap_southeast_1: "Asia Pacific (Singapore)" + ap_southeast_2: "Asia Pacific (Sydney)" + ap_south_1: "Asia Pacific (Mumbai)" + ap_northeast_1: "Asia Pacific (Tokyo)" + ap_northeast_2: "Asia Pacific (Seoul)" + sa_east_1: "South America (Sao Paulo)" + cn_north_1: "China (Beijing)" + + edit: 'edit the title and category of this topic' + not_implemented: "That feature hasn't been implemented yet, sorry!" + no_value: "No" + yes_value: "Yes" + generic_error: "Sorry, an error has occurred." + generic_error_with_reason: "An error occurred: %{error}" + sign_up: "Sign Up" + log_in: "Log In" + age: "Age" + joined: "Joined" + admin_title: "Admin" + flags_title: "Flags" + show_more: "show more" + show_help: "options" + links: "Links" + links_lowercase: + one: "link" + other: "links" + faq: "FAQ" + guidelines: "Guidelines" + privacy_policy: "Privacy Policy" + privacy: "Privacy" + terms_of_service: "Terms of Service" + mobile_view: "Mobile View" + desktop_view: "Desktop View" + you: "You" + or: "or" + now: "just now" + read_more: 'read more' + more: "More" + less: "Less" + never: "never" + every_30_minutes: "every 30 minutes" + every_hour: "every hour" + daily: "daily" + weekly: "weekly" + every_two_weeks: "every two weeks" + every_three_days: "every three days" + max_of_count: "max of {{count}}" + alternation: "or" + character_count: + one: "{{count}} character" + other: "{{count}} characters" + + suggested_topics: + title: "Suggested Topics" + pm_title: "Suggested Messages" + + about: + simple_title: "About" + title: "About %{title}" + stats: "Site Statistics" + our_admins: "Our Admins" + our_moderators: "Our Moderators" + stat: + all_time: "All Time" + last_7_days: "Last 7 Days" + last_30_days: "Last 30 Days" + like_count: "Likes" + topic_count: "Topics" + post_count: "Posts" + user_count: "New Users" + active_user_count: "Active Users" + contact: "Contact Us" + contact_info: "In the event of a critical issue or urgent matter affecting this site, please contact us at %{contact_info}." + + bookmarked: + title: "Bookmark" + clear_bookmarks: "Clear Bookmarks" + help: + bookmark: "Click to bookmark the first post on this topic" + unbookmark: "Click to remove all bookmarks in this topic" + + bookmarks: + not_logged_in: "sorry, you must be logged in to bookmark posts" + created: "you've bookmarked this post" + not_bookmarked: "you've read this post; click to bookmark it" + last_read: "this is the last post you've read; click to bookmark it" + remove: "Remove Bookmark" + confirm_clear: "Are you sure you want to clear all the bookmarks from this topic?" + + topic_count_latest: + one: "{{count}} new or updated topic." + other: "{{count}} new or updated topics." + + topic_count_unread: + one: "{{count}} unread topic." + other: "{{count}} unread topics." + + topic_count_new: + one: "{{count}} new topic." + other: "{{count}} new topics." + + click_to_show: "Click to show." + preview: "preview" + cancel: "cancel" + + save: "Save Changes" + saving: "Saving..." + saved: "Saved!" + + upload: "Upload" + uploading: "Uploading..." + uploading_filename: "Uploading {{filename}}..." + uploaded: "Uploaded!" + + enable: "Enable" + disable: "Disable" + undo: "Undo" + revert: "Revert" + failed: "Failed" + + switch_to_anon: "Enter Anonymous Mode" + switch_from_anon: "Exit Anonymous Mode" + + banner: + close: "Dismiss this banner." + edit: "Edit this banner >>" + + choose_topic: + none_found: "No topics found." + title: + search: "Search for a Topic by name, url or id:" + placeholder: "type the topic title here" + + queue: + topic: "Topic:" + approve: 'Approve' + reject: 'Reject' + delete_user: 'Delete User' + title: "Needs Approval" + none: "There are no posts to review." + edit: "Edit" + cancel: "Cancel" + view_pending: "view pending posts" + has_pending_posts: + one: "This topic has 1 post awaiting approval" + other: "This topic has {{count}} posts awaiting approval" + + confirm: "Save Changes" + delete_prompt: "Are you sure you want to delete %{username}? This will remove all of their posts and block their email and IP address." + + approval: + title: "Post Needs Approval" + description: "We've received your new post but it needs to be approved by a moderator before it will appear. Please be patient." + pending_posts: + one: "You have 1 post pending." + other: "You have {{count}} posts pending." + ok: "OK" + + user_action: + user_posted_topic: "{{user}} posted the topic" + you_posted_topic: "You posted the topic" + user_replied_to_post: "{{user}} replied to {{post_number}}" + you_replied_to_post: "You replied to {{post_number}}" + user_replied_to_topic: "{{user}} replied to the topic" + you_replied_to_topic: "You replied to the topic" + + user_mentioned_user: "{{user}} mentioned {{another_user}}" + user_mentioned_you: "{{user}} mentioned you" + you_mentioned_user: "You mentioned {{another_user}}" + + posted_by_user: "Posted by {{user}}" + posted_by_you: "Posted by you" + sent_by_user: "Sent by {{user}}" + sent_by_you: "Sent by you" + + directory: + filter_name: "filter by username" + title: "Users" + likes_given: "Given" + likes_received: "Received" + topics_entered: "Viewed" + topics_entered_long: "Topics Viewed" + time_read: "Time Read" + topic_count: "Topics" + topic_count_long: "Topics Created" + post_count: "Replies" + post_count_long: "Replies Posted" + no_results: "No results were found." + days_visited: "Visits" + days_visited_long: "Days Visited" + posts_read: "Read" + posts_read_long: "Posts Read" + total_rows: + one: "1 user" + other: "%{count} users" + + groups: + empty: + posts: "There is no post by members of this group." + members: "There is no member in this group." + mentions: "There is no mention of this group." + messages: "There is no message for this group." + topics: "There is no topic by members of this group." + add: "Add" + selector_placeholder: "Add members" + owner: "owner" + visible: "Group is visible to all users" + index: "Groups" + title: + one: "group" + other: "groups" + members: "Members" + topics: "Topics" + posts: "Posts" + mentions: "Mentions" + messages: "Messages" + alias_levels: + title: "Who can message and @mention this group?" + nobody: "Nobody" + only_admins: "Only admins" + mods_and_admins: "Only moderators and Admins" + members_mods_and_admins: "Only group members, moderators and admins" + everyone: "Everyone" + trust_levels: + title: "Trust level automatically granted to members when they're added:" + none: "None" + notifications: + watching: + title: "Watching" + description: "You will be notified of every new post in every message, and a count of new replies will be shown." + watching_first_post: + title: "Watching First Post" + description: "You will only be notified of the first post in each new topic in this group." + tracking: + title: "Tracking" + description: "You will be notified if someone mentions your @name or replies to you, and a count of new replies will be shown." + regular: + title: "Normal" + description: "You will be notified if someone mentions your @name or replies to you." + muted: + title: "Muted" + description: "You will never be notified of anything about new topics in this group." + + user_action_groups: + "1": "Likes Given" + "2": "Likes Received" + "3": "Bookmarks" + "4": "Topics" + "5": "Replies" + "6": "Responses" + "7": "Mentions" + "9": "Quotes" + "11": "Edits" + "12": "Sent Items" + "13": "Inbox" + "14": "Pending" + + categories: + all: "all categories" + all_subcategories: "all" + no_subcategory: "none" + category: "Category" + category_list: "Display category list" + reorder: + title: "Reorder Categories" + title_long: "Reorganize the category list" + fix_order: "Fix Positions" + fix_order_tooltip: "Not all categories have a unique position number, which may cause unexpected results." + save: "Save Order" + apply_all: "Apply" + position: "Position" + posts: "Posts" + topics: "Topics" + latest: "Latest" + latest_by: "latest by" + toggle_ordering: "toggle ordering control" + subcategories: "Subcategories" + topic_sentence: + one: "1 topic" + other: "%{count} topics" + topic_stat_sentence: + one: "%{count} new topic in the past %{unit}." + other: "%{count} new topics in the past %{unit}." + + ip_lookup: + title: IP Address Lookup + hostname: Hostname + location: Location + location_not_found: (unknown) + organisation: Organization + phone: Phone + other_accounts: "Other accounts with this IP address:" + delete_other_accounts: "Delete %{count}" + username: "username" + trust_level: "TL" + read_time: "read time" + topics_entered: "topics entered" + post_count: "# posts" + confirm_delete_other_accounts: "Are you sure you want to delete these accounts?" + + user_fields: + none: "(select an option)" + + user: + said: "{{username}}:" + profile: "Profile" + mute: "Mute" + edit: "Edit Preferences" + download_archive: + button_text: "Download My Posts" + confirm: "Are you sure you want to download your posts?" + success: "Download initiated, you will be notified via message when the process is complete." + rate_limit_error: "Posts can be downloaded once per day, please try again tomorrow." + new_private_message: "New Message" + private_message: "Message" + private_messages: "Messages" + activity_stream: "Activity" + preferences: "Preferences" + expand_profile: "Expand" + bookmarks: "Bookmarks" + bio: "About me" + invited_by: "Invited By" + trust_level: "Trust Level" + notifications: "Notifications" + statistics: "Stats" + desktop_notifications: + label: "Desktop Notifications" + not_supported: "Notifications are not supported on this browser. Sorry." + perm_default: "Turn On Notifications" + perm_denied_btn: "Permission Denied" + perm_denied_expl: "You denied permission for notifications. Allow notifications via your browser settings." + disable: "Disable Notifications" + currently_enabled: "" + enable: "Enable Notifications" + currently_disabled: "" + each_browser_note: "Note: You have to change this setting on every browser you use." + dismiss_notifications: "Dismiss All" + dismiss_notifications_tooltip: "Mark all unread notifications as read" + first_notification: "Your first notification! Select it to begin." + disable_jump_reply: "Don't jump to my post after I reply" + dynamic_favicon: "Show new / updated topic count on browser icon" + external_links_in_new_tab: "Open all external links in a new tab" + enable_quoting: "Enable quote reply for highlighted text" + change: "change" + moderator: "{{user}} is a moderator" + admin: "{{user}} is an admin" + moderator_tooltip: "This user is a moderator" + admin_tooltip: "This user is an admin" + blocked_tooltip: "This user is blocked" + suspended_notice: "This user is suspended until {{date}}." + suspended_reason: "Reason: " + github_profile: "Github" + email_activity_summary: "Activity Summary" + mailing_list_mode: + label: "Mailing list mode" + enabled: "Enable mailing list mode" + instructions: | + This setting overrides the activity summary.
+ Muted topics and categories are not included in these emails. + daily: "Send daily updates" + individual: "Send an email for every new post" + individual_no_echo: "Send an email for every new post except my own" + many_per_day: "Send me an email for every new post (about {{dailyEmailEstimate}} per day)" + few_per_day: "Send me an email for every new post (about 2 per day)" + tag_settings: "Tags" + watched_tags: "Watched" + watched_tags_instructions: "You will automatically watch all topics with these tags. You will be notified of all new posts and topics, and a count of new posts will also appear next to the topic." + tracked_tags: "Tracked" + tracked_tags_instructions: "You will automatically track all topics with these tags. A count of new posts will appear next to the topic." + muted_tags: "Muted" + muted_tags_instructions: "You will not be notified of anything about new topics with these tags, and they will not appear in latest." + watched_categories: "Watched" + watched_categories_instructions: "You will automatically watch all topics in these categories. You will be notified of all new posts and topics, and a count of new posts will also appear next to the topic." + tracked_categories: "Tracked" + tracked_categories_instructions: "You will automatically track all topics in these categories. A count of new posts will appear next to the topic." + watched_first_post_categories: "Watching First Post" + watched_first_post_categories_instructions: "You will be notified of the first post in each new topic in these categories." + watched_first_post_tags: "Watching First Post" + watched_first_post_tags_instructions: "You will be notified of the first post in each new topic with these tags." + + muted_categories: "Muted" + muted_categories_instructions: "You will not be notified of anything about new topics in these categories, and they will not appear in latest." + delete_account: "Delete My Account" + delete_account_confirm: "Are you sure you want to permanently delete your account? This action cannot be undone!" + deleted_yourself: "Your account has been deleted successfully." + delete_yourself_not_allowed: "You cannot delete your account right now. Contact an admin to do delete your account for you." + unread_message_count: "Messages" + admin_delete: "Delete" + users: "Users" + muted_users: "Muted" + muted_users_instructions: "Suppress all notifications from these users." + muted_topics_link: "Show muted topics" + watched_topics_link: "Show watched topics" + automatically_unpin_topics: "Automatically unpin topics when I reach the bottom." + apps: "Apps" + revoke_access: "Revoke Access" + undo_revoke_access: "Undo Revoke Access" + api_approved: "Approved:" + + staff_counters: + flags_given: "helpful flags" + flagged_posts: "flagged posts" + deleted_posts: "deleted posts" + suspensions: "suspensions" + warnings_received: "warnings" + + messages: + all: "All" + inbox: "Inbox" + sent: "Sent" + archive: "Archive" + groups: "My Groups" + bulk_select: "Select messages" + move_to_inbox: "Move to Inbox" + move_to_archive: "Archive" + failed_to_move: "Failed to move selected messages (perhaps your network is down)" + select_all: "Select All" + + change_password: + success: "(email sent)" + in_progress: "(sending email)" + error: "(error)" + action: "Send Password Reset Email" + set_password: "Set Password" + + change_about: + title: "Change About Me" + error: "There was an error changing this value." + + change_username: + title: "Change Username" + confirm: "If you change your username, all prior quotes of your posts and @name mentions will be broken. Are you absolutely sure you want to?" + taken: "Sorry, that username is taken." + error: "There was an error changing your username." + invalid: "That username is invalid. It must only include numbers and letters" + + change_email: + title: "Change Email" + taken: "Sorry, that email is not available." + error: "There was an error changing your email. Perhaps that address is already in use?" + success: "We've sent an email to that address. Please follow the confirmation instructions." + + change_avatar: + title: "Change your profile picture" + gravatar: "Gravatar, based on" + gravatar_title: "Change your avatar on Gravatar's website" + refresh_gravatar_title: "Refresh your Gravatar" + letter_based: "System assigned profile picture" + uploaded_avatar: "Custom picture" + uploaded_avatar_empty: "Add a custom picture" + upload_title: "Upload your picture" + upload_picture: "Upload Picture" + image_is_not_a_square: "Warning: we've cropped your image; width and height were not equal." + cache_notice: "You've successfully changed your profile picture but it might take some time to appear due to browser caching." + + change_profile_background: + title: "Profile Background" + instructions: "Profile backgrounds will be centered and have a default width of 850px." + + change_card_background: + title: "User Card Background" + instructions: "Background images will be centered and have a default width of 590px." + + email: + title: "Email" + instructions: "Never shown to the public" + ok: "We will email you to confirm" + invalid: "Please enter a valid email address" + authenticated: "Your email has been authenticated by {{provider}}" + frequency_immediately: "We'll email you immediately if you haven't read the thing we're emailing you about." + frequency: + one: "We'll only email you if we haven't seen you in the last minute." + other: "We'll only email you if we haven't seen you in the last {{count}} minutes." + + name: + title: "Name" + instructions: "Your full name (optional)" + instructions_required: "Your full name" + too_short: "Your name is too short" + ok: "Your name looks good" + username: + title: "Username" + instructions: "Unique, no spaces, short" + short_instructions: "People can mention you as @{{username}}" + available: "Your username is available" + global_match: "Email matches the registered username" + global_mismatch: "Already registered. Try {{suggestion}}?" + not_available: "Not available. Try {{suggestion}}?" + too_short: "Your username is too short" + too_long: "Your username is too long" + checking: "Checking username availability..." + enter_email: 'Username found; enter matching email' + prefilled: "Email matches this registered username" + + locale: + title: "Interface language" + instructions: "User interface language. It will change when you refresh the page." + default: "(default)" + any: "any" + + password_confirmation: + title: "Password Again" + + last_posted: "Last Post" + last_emailed: "Last Emailed" + last_seen: "Seen" + created: "Joined" + log_out: "Log Out" + location: "Location" + card_badge: + title: "User Card Badge" + + website: "Web Site" + email_settings: "Email" + like_notification_frequency: + title: "Notify when liked" + always: "Always" + first_time_and_daily: "First time a post is liked and daily" + first_time: "First time a post is liked" + never: "Never" + email_previous_replies: + title: "Include previous replies at the bottom of emails" + unless_emailed: "unless previously sent" + always: "always" + never: "never" + email_digests: + title: "When I don't visit here, send me an email summary of popular topics and replies" + every_30_minutes: "every 30 minutes" + every_hour: "hourly" + daily: "daily" + every_three_days: "every three days" + weekly: "weekly" + every_two_weeks: "every two weeks" + + include_tl0_in_digests: "Include content from new users in summary emails" + email_in_reply_to: "Include an excerpt of replied to post in emails" + email_direct: "Send me an email when someone quotes me, replies to my post, mentions my @username, or invites me to a topic" + email_private_messages: "Send me an email when someone messages me" + email_always: "Send me email notifications even when I am active on the site" + + other_settings: "Other" + categories_settings: "Categories" + + new_topic_duration: + label: "Consider topics new when" + not_viewed: "I haven't viewed them yet" + last_here: "created since I was here last" + after_1_day: "created in the last day" + after_2_days: "created in the last 2 days" + after_1_week: "created in the last week" + after_2_weeks: "created in the last 2 weeks" + + auto_track_topics: "Automatically track topics I enter" + auto_track_options: + never: "never" + immediately: "immediately" + after_30_seconds: "after 30 seconds" + after_1_minute: "after 1 minute" + after_2_minutes: "after 2 minutes" + after_3_minutes: "after 3 minutes" + after_4_minutes: "after 4 minutes" + after_5_minutes: "after 5 minutes" + after_10_minutes: "after 10 minutes" + + notification_level_when_replying: "When I post in a topic, set that topic to" + + invited: + search: "type to search invites..." + title: "Invites" + user: "Invited User" + sent: "Sent" + none: "There are no pending invites to display." + truncated: + one: "Showing the first invite." + other: "Showing the first {{count}} invites." + redeemed: "Redeemed Invites" + redeemed_tab: "Redeemed" + redeemed_tab_with_count: "Redeemed ({{count}})" + redeemed_at: "Redeemed" + pending: "Pending Invites" + pending_tab: "Pending" + pending_tab_with_count: "Pending ({{count}})" + topics_entered: "Topics Viewed" + posts_read_count: "Posts Read" + expired: "This invite has expired." + rescind: "Remove" + rescinded: "Invite removed" + reinvite: "Resend Invite" + reinvite_all: "Resend all Invites" + reinvited: "Invite re-sent" + reinvited_all: "All Invites re-sent!" + time_read: "Read Time" + days_visited: "Days Visited" + account_age_days: "Account age in days" + create: "Send an Invite" + generate_link: "Copy Invite Link" + link_generated: "Invite link generated successfully!" + valid_for: "Invite link is only valid for this email address: %{email}" + bulk_invite: + none: "You haven't invited anyone here yet. You can send individual invites, or invite a bunch of people at once by uploading a bulk invite file." + text: "Bulk Invite from File" + uploading: "Uploading..." + success: "File uploaded successfully, you will be notified via message when the process is complete." + error: "There was an error uploading '{{filename}}': {{message}}" + + password: + title: "Password" + too_short: "Your password is too short." + common: "That password is too common." + same_as_username: "Your password is the same as your username." + same_as_email: "Your password is the same as your email." + ok: "Your password looks good." + instructions: "At least %{count} characters." + + summary: + title: "Summary" + stats: "Stats" + time_read: "read time" + topic_count: + one: "topic created" + other: "topics created" + post_count: + one: "post created" + other: "posts created" + likes_given: + one: " given" + other: " given" + likes_received: + one: " received" + other: " received" + days_visited: + one: "day visited" + other: "days visited" + posts_read: + one: "post read" + other: "posts read" + bookmark_count: + one: "bookmark" + other: "bookmarks" + top_replies: "Top Replies" + no_replies: "No replies yet." + more_replies: "More Replies" + top_topics: "Top Topics" + no_topics: "No topics yet." + more_topics: "More Topics" + top_badges: "Top Badges" + no_badges: "No badges yet." + more_badges: "More Badges" + top_links: "Top Links" + no_links: "No links yet." + most_liked_by: "Most Liked By" + most_liked_users: "Most Liked" + most_replied_to_users: "Most Replied To" + no_likes: "No likes yet." + + + associated_accounts: "Logins" + ip_address: + title: "Last IP Address" + registration_ip_address: + title: "Registration IP Address" + avatar: + title: "Profile Picture" + header_title: "profile, messages, bookmarks and preferences" + title: + title: "Title" + + filters: + all: "All" + + stream: + posted_by: "Posted by" + sent_by: "Sent by" + private_message: "message" + the_topic: "the topic" + + loading: "Loading..." + errors: + prev_page: "while trying to load" + reasons: + network: "Network Error" + server: "Server Error" + forbidden: "Access Denied" + unknown: "Error" + not_found: "Page Not Found" + desc: + network: "Please check your connection." + network_fixed: "Looks like it's back." + server: "Error code: {{status}}" + forbidden: "You're not allowed to view that." + not_found: "Oops, the application tried to load a URL that doesn't exist." + unknown: "Something went wrong." + buttons: + back: "Go Back" + again: "Try Again" + fixed: "Load Page" + close: "Close" + assets_changed_confirm: "This site was just updated. Refresh now for the latest version?" + logout: "You were logged out." + refresh: "Refresh" + read_only_mode: + enabled: "This site is in read only mode. Please continue to browse, but replying, likes, and other actions are disabled for now." + login_disabled: "Login is disabled while the site is in read only mode." + logout_disabled: "Logout is disabled while the site is in read only mode." + too_few_topics_and_posts_notice: "Let's get this discussion started! There are currently %{currentTopics} / %{requiredTopics} topics and %{currentPosts} / %{requiredPosts} posts. New visitors need some conversations to read and respond to." + too_few_topics_notice: "Let's get this discussion started! There are currently %{currentTopics} / %{requiredTopics} topics. New visitors need some conversations to read and respond to." + too_few_posts_notice: "Let's get this discussion started! There are currently %{currentPosts} / %{requiredPosts} posts. New visitors need some conversations to read and respond to." + logs_error_rate_notice: + reached: "%{relativeAge}%{rate} reached site setting limit of %{siteSettingRate}." + exceeded: "%{relativeAge}%{rate} exceeds site setting limit of %{siteSettingRate}." + rate: + one: "1 error/%{duration}" + other: "%{count} errors/%{duration}" + + learn_more: "learn more..." + + all_time: 'total' + all_time_desc: 'total topics created' + year: 'year' + year_desc: 'topics created in the last 365 days' + month: 'month' + month_desc: 'topics created in the last 30 days' + week: 'week' + week_desc: 'topics created in the last 7 days' + day: 'day' + + first_post: First post + mute: Mute + unmute: Unmute + last_post: Last post + last_reply_lowercase: last reply + replies_lowercase: + one: reply + other: replies + + signup_cta: + sign_up: "Sign Up" + hide_session: "Remind me tomorrow" + hide_forever: "no thanks" + hidden_for_session: "OK, I'll ask you tomorrow. You can always use 'Log In' to create an account, too." + intro: "Hey there! :heart_eyes: Looks like you're enjoying the discussion, but you're not signed up for an account." + value_prop: "When you create an account, we remember exactly what you've read, so you always come right back where you left off. You also get notifications, here and via email, whenever new posts are made. And you can like posts to share the love. :heartbeat:" + + summary: + enabled_description: "You're viewing a summary of this topic: the most interesting posts as determined by the community." + description: "There are {{replyCount}} replies." + description_time: "There are {{replyCount}} replies with an estimated read time of {{readingTime}} minutes." + enable: 'Summarize This Topic' + disable: 'Show All Posts' + + deleted_filter: + enabled_description: "This topic contains deleted posts, which have been hidden. " + disabled_description: "Deleted posts in the topic are shown." + enable: "Hide Deleted Posts" + disable: "Show Deleted Posts" + + private_message_info: + title: "Message" + invite: "Invite Others..." + remove_allowed_user: "Do you really want to remove {{name}} from this message?" + remove_allowed_group: "Do you really want to remove {{name}} from this message?" + + email: 'Email' + username: 'Username' + last_seen: 'Seen' + created: 'Created' + created_lowercase: 'created' + trust_level: 'Trust Level' + search_hint: 'username, email or IP address' + + create_account: + disclaimer: "By registering, you agree to the privacy policy and terms of service." + title: "Create New Account" + failed: "Something went wrong, perhaps this email is already registered, try the forgot password link" + + forgot_password: + title: "Password Reset" + action: "I forgot my password" + invite: "Enter your username or email address, and we'll send you a password reset email." + reset: "Reset Password" + complete_username: "If an account matches the username %{username}, you should receive an email with instructions on how to reset your password shortly." + complete_email: "If an account matches %{email}, you should receive an email with instructions on how to reset your password shortly." + complete_username_found: "We found an account that matches the username %{username}, you should receive an email with instructions on how to reset your password shortly." + complete_email_found: "We found an account that matches %{email}, you should receive an email with instructions on how to reset your password shortly." + + complete_username_not_found: "No account matches the username %{username}" + complete_email_not_found: "No account matches %{email}" + login: + title: "Log In" + username: "User" + password: "Password" + email_placeholder: "email or username" + caps_lock_warning: "Caps Lock is on" + error: "Unknown error" + rate_limit: "Please wait before trying to log in again." + blank_username_or_password: "Please enter your email or username, and password." + reset_password: 'Reset Password' + logging_in: "Signing In..." + or: "Or" + authenticating: "Authenticating..." + awaiting_confirmation: "Your account is awaiting activation, use the forgot password link to issue another activation email." + awaiting_approval: "Your account has not been approved by a staff member yet. You will be sent an email when it is approved." + requires_invite: "Sorry, access to this forum is by invite only." + not_activated: "You can't log in yet. We previously sent an activation email to you at {{sentTo}}. Please follow the instructions in that email to activate your account." + not_allowed_from_ip_address: "You can't login from that IP address." + admin_not_allowed_from_ip_address: "You can't log in as admin from that IP address." + resend_activation_email: "Click here to send the activation email again." + sent_activation_email_again: "We sent another activation email to you at {{currentEmail}}. It might take a few minutes for it to arrive; be sure to check your spam folder." + to_continue: "Please Log In" + preferences: "You need to be logged in to change your user preferences." + forgot: "I don't recall my account details" + google: + title: "with Google" + message: "Authenticating with Google (make sure pop up blockers are not enabled)" + google_oauth2: + title: "with Google" + message: "Authenticating with Google (make sure pop up blockers are not enabled)" + twitter: + title: "with Twitter" + message: "Authenticating with Twitter (make sure pop up blockers are not enabled)" + instagram: + title: "with Instagram" + message: "Authenticating with Instagram (make sure pop up blockers are not enabled)" + facebook: + title: "with Facebook" + message: "Authenticating with Facebook (make sure pop up blockers are not enabled)" + yahoo: + title: "with Yahoo" + message: "Authenticating with Yahoo (make sure pop up blockers are not enabled)" + github: + title: "with GitHub" + message: "Authenticating with GitHub (make sure pop up blockers are not enabled)" + + emoji_set: + apple_international: "Apple/International" + google: "Google" + twitter: "Twitter" + emoji_one: "Emoji One" + win10: "Win10" + + category_page_style: + categories_only: "Categories Only" + categories_with_featured_topics: "Categories with Featured Topics" + categories_and_latest_topics: "Categories and Latest Topics" + + shortcut_modifier_key: + shift: 'Shift' + ctrl: 'Ctrl' + alt: 'Alt' + + composer: + emoji: "Emoji :)" + more_emoji: "more..." + options: "Options" + whisper: "whisper" + unlist: "unlisted" + + add_warning: "This is an official warning." + toggle_whisper: "Toggle Whisper" + toggle_unlisted: "Toggle Unlisted" + posting_not_on_topic: "Which topic do you want to reply to?" + saving_draft_tip: "saving..." + saved_draft_tip: "saved" + saved_local_draft_tip: "saved locally" + similar_topics: "Your topic is similar to..." + drafts_offline: "drafts offline" + + group_mentioned: + one: "By mentioning {{group}}, you are about to notify 1 person – are you sure?" + other: "By mentioning {{group}}, you are about to notify {{count}} people – are you sure?" + cannot_see_mention: + category: "You mentioned {{username}} but they won't be notified because they do not have access to this category. You will need to add them to a group that has access to this category." + private: "You mentioned {{username}} but they won't be notified because they are unable to see this personal message. You will need to invite them to this PM." + duplicate_link: "It looks like your link to {{domain}} was already posted in the topic by @{{username}} in a reply {{ago}} – are you sure you want to post it again?" + + error: + title_missing: "Title is required" + title_too_short: "Title must be at least {{min}} characters" + title_too_long: "Title can't be more than {{max}} characters" + post_missing: "Post can't be empty" + post_length: "Post must be at least {{min}} characters" + try_like: 'Have you tried the button?' + category_missing: "You must choose a category" + + save_edit: "Save Edit" + reply_original: "Reply on Original Topic" + reply_here: "Reply Here" + reply: "Reply" + cancel: "Cancel" + create_topic: "Create Topic" + create_pm: "Message" + title: "Or press Ctrl+Enter" + + users_placeholder: "Add a user" + title_placeholder: "What is this discussion about in one brief sentence?" + edit_reason_placeholder: "why are you editing?" + show_edit_reason: "(add edit reason)" + reply_placeholder: "Type here. Use Markdown, BBCode, or HTML to format. Drag or paste images." + view_new_post: "View your new post." + saving: "Saving" + saved: "Saved!" + saved_draft: "Post draft in progress. Select to resume." + uploading: "Uploading..." + show_preview: 'show preview »' + hide_preview: '« hide preview' + + quote_post_title: "Quote whole post" + bold_label: "B" + bold_title: "Strong" + bold_text: "strong text" + italic_label: "I" + italic_title: "Emphasis" + italic_text: "emphasized text" + link_title: "Hyperlink" + link_description: "enter link description here" + link_dialog_title: "Insert Hyperlink" + link_optional_text: "optional title" + link_url_placeholder: "http://example.com" + quote_title: "Blockquote" + quote_text: "Blockquote" + code_title: "Preformatted text" + code_text: "indent preformatted text by 4 spaces" + paste_code_text: "type or paste code here" + upload_title: "Upload" + upload_description: "enter upload description here" + olist_title: "Numbered List" + ulist_title: "Bulleted List" + list_item: "List item" + heading_label: "H" + heading_title: "Heading" + heading_text: "Heading" + hr_title: "Horizontal Rule" + help: "Markdown Editing Help" + toggler: "hide or show the composer panel" + modal_ok: "OK" + modal_cancel: "Cancel" + cant_send_pm: "Sorry, you can't send a message to %{username}." + yourself_confirm: + title: "Did you forget to add recipients?" + body: "Right now this message is only being sent to yourself!" + + admin_options_title: "Optional staff settings for this topic" + auto_close: + label: "Auto-close topic time:" + error: "Please enter a valid value." + based_on_last_post: "Don't close until the last post in the topic is at least this old." + all: + units: "" + examples: 'Enter number of hours (24), absolute time (17:30) or timestamp (2013-11-22 14:00).' + limited: + units: "(# of hours)" + examples: 'Enter number of hours (24).' + + notifications: + title: "notifications of @name mentions, replies to your posts and topics, messages, etc" + none: "Unable to load notifications at this time." + empty: "No notifications found." + more: "view older notifications" + total_flagged: "total flagged posts" + mentioned: "

{{username}} {{description}}

" + group_mentioned: "

{{username}} {{description}}

" + quoted: "

{{username}} {{description}}

" + replied: "

{{username}} {{description}}

" + posted: "

{{username}} {{description}}

" + edited: "

{{username}} {{description}}

" + liked: "

{{username}} {{description}}

" + liked_2: "

{{username}}, {{username2}} {{description}}

" + liked_many: + one: "

{{username}}, {{username2}} and 1 other {{description}}

" + other: "

{{username}}, {{username2}} and {{count}} others {{description}}

" + private_message: "

{{username}} {{description}}

" + invited_to_private_message: "

{{username}} {{description}}

" + invited_to_topic: "

{{username}} {{description}}

" + invitee_accepted: "

{{username}} accepted your invitation

" + moved_post: "

{{username}} moved {{description}}

" + linked: "

{{username}} {{description}}

" + granted_badge: "

Earned '{{description}}'

" + + watching_first_post: "

New Topic {{description}}

" + + group_message_summary: + one: "

{{count}} message in your {{group_name}} inbox

" + other: "

{{count}} messages in your {{group_name}} inbox

" + + alt: + mentioned: "Mentioned by" + quoted: "Quoted by" + replied: "Replied" + posted: "Post by" + edited: "Edit your post by" + liked: "Liked your post" + private_message: "Private message from" + invited_to_private_message: "Invited to a private message from" + invited_to_topic: "Invited to a topic from" + invitee_accepted: "Invite accepted by" + moved_post: "Your post was moved by" + linked: "Link to your post" + granted_badge: "Badge granted" + group_message_summary: "Messages in group inbox" + + popup: + mentioned: '{{username}} mentioned you in "{{topic}}" - {{site_title}}' + group_mentioned: '{{username}} mentioned you in "{{topic}}" - {{site_title}}' + quoted: '{{username}} quoted you in "{{topic}}" - {{site_title}}' + replied: '{{username}} replied to you in "{{topic}}" - {{site_title}}' + posted: '{{username}} posted in "{{topic}}" - {{site_title}}' + private_message: '{{username}} sent you a private message in "{{topic}}" - {{site_title}}' + linked: '{{username}} linked to your post from "{{topic}}" - {{site_title}}' + + upload_selector: + title: "Add an image" + title_with_attachments: "Add an image or a file" + from_my_computer: "From my device" + from_the_web: "From the web" + remote_tip: "link to image" + remote_tip_with_attachments: "link to image or file {{authorized_extensions}}" + local_tip: "select images from your device" + local_tip_with_attachments: "select images or files from your device {{authorized_extensions}}" + hint: "(you can also drag & drop into the editor to upload them)" + hint_for_supported_browsers: "you can also drag and drop or paste images into the editor" + uploading: "Uploading" + select_file: "Select File" + image_link: "link your image will point to" + + search: + sort_by: "Sort by" + relevance: "Relevance" + latest_post: "Latest Post" + most_viewed: "Most Viewed" + most_liked: "Most Liked" + select_all: "Select All" + clear_all: "Clear All" + too_short: "Your search term is too short." + result_count: + one: "1 result for \"{{term}}\"" + other: "{{count}} results for \"{{term}}\"" + title: "search topics, posts, users, or categories" + no_results: "No results found." + no_more_results: "No more results found." + searching: "Searching ..." + post_format: "#{{post_number}} by {{username}}" + + context: + user: "Search posts by @{{username}}" + category: "Search the #{{category}} category" + topic: "Search this topic" + private_messages: "Search messages" + + advanced: + title: Advanced Search + posted_by: + label: Posted by + in_category: + label: In Category + in_group: + label: In Group + with_badge: + label: With Badge + with_tags: + label: With Tags + filters: + label: Only return topics/posts that... + likes: I liked + posted: I posted in + watching: I'm watching + tracking: I'm tracking + private: are in my messages + bookmarks: I've bookmarked + first: are the very first post + pinned: are pinned + unpinned: are not pinned + wiki: are wiki + statuses: + label: Where topics + open: are open + closed: are closed + archived: are archived + noreplies: have zero replies + single_user: contain a single user + post: + count: + label: Minimum Post Count + time: + label: Posted + before: before + after: after + + hamburger_menu: "go to another topic list or category" + new_item: "new" + go_back: 'go back' + not_logged_in_user: 'user page with summary of current activity and preferences' + current_user: 'go to your user page' + + topics: + new_messages_marker: "last visit" + bulk: + select_all: "Select All" + clear_all: "Clear All" + unlist_topics: "Unlist Topics" + reset_read: "Reset Read" + delete: "Delete Topics" + dismiss: "Dismiss" + dismiss_read: "Dismiss all unread" + dismiss_button: "Dismiss…" + dismiss_tooltip: "Dismiss just new posts or stop tracking topics" + also_dismiss_topics: "Stop tracking these topics so they never show up as unread for me again" + dismiss_new: "Dismiss New" + toggle: "toggle bulk selection of topics" + actions: "Bulk Actions" + change_category: "Change Category" + close_topics: "Close Topics" + archive_topics: "Archive Topics" + notification_level: "Change Notification Level" + choose_new_category: "Choose the new category for the topics:" + selected: + one: "You have selected 1 topic." + other: "You have selected {{count}} topics." + change_tags: "Change Tags" + choose_new_tags: "Choose new tags for these topics:" + changed_tags: "The tags of those topics were changed." + + none: + unread: "You have no unread topics." + new: "You have no new topics." + read: "You haven't read any topics yet." + posted: "You haven't posted in any topics yet." + latest: "There are no latest topics. That's sad." + hot: "There are no hot topics." + bookmarks: "You have no bookmarked topics yet." + category: "There are no {{category}} topics." + top: "There are no top topics." + search: "There are no search results." + educate: + new: '

Your new topics appear here.

By default, topics are considered new and will show a new indicator if they were created in the last 2 days.

Visit your preferences to change this.

' + unread: '

Your unread topics appear here.

By default, topics are considered unread and will show unread counts 1 if you:

Or if you have explicitly set the topic to Tracked or Watched via the notification control at the bottom of each topic.

Visit your preferences to change this.

' + bottom: + latest: "There are no more latest topics." + hot: "There are no more hot topics." + posted: "There are no more posted topics." + read: "There are no more read topics." + new: "There are no more new topics." + unread: "There are no more unread topics." + category: "There are no more {{category}} topics." + top: "There are no more top topics." + bookmarks: "There are no more bookmarked topics." + search: "There are no more search results." + + topic: + unsubscribe: + stop_notifications: "You will now receive less notifications for {{title}}" + change_notification_state: "Your current notification state is " + filter_to: + one: "1 post in topic" + other: "{{count}} posts in topic" + create: 'New Topic' + create_long: 'Create a new Topic' + private_message: 'Start a message' + archive_message: + help: 'Move message to your archive' + title: 'Archive' + move_to_inbox: + title: 'Move to Inbox' + help: 'Move message back to Inbox' + list: 'Topics' + new: 'new topic' + unread: 'unread' + new_topics: + one: '1 new topic' + other: '{{count}} new topics' + unread_topics: + one: '1 unread topic' + other: '{{count}} unread topics' + title: 'Topic' + invalid_access: + title: "Topic is private" + description: "Sorry, you don't have access to that topic!" + login_required: "You need to log in to see that topic." + server_error: + title: "Topic failed to load" + description: "Sorry, we couldn't load that topic, possibly due to a connection problem. Please try again. If the problem persists, let us know." + not_found: + title: "Topic not found" + description: "Sorry, we couldn't find that topic. Perhaps it was removed by a moderator?" + total_unread_posts: + one: "you have 1 unread post in this topic" + other: "you have {{count}} unread posts in this topic" + unread_posts: + one: "you have 1 unread old post in this topic" + other: "you have {{count}} unread old posts in this topic" + new_posts: + one: "there is 1 new post in this topic since you last read it" + other: "there are {{count}} new posts in this topic since you last read it" + likes: + one: "there is 1 like in this topic" + other: "there are {{count}} likes in this topic" + back_to_list: "Back to Topic List" + options: "Topic Options" + show_links: "show links within this topic" + toggle_information: "toggle topic details" + read_more_in_category: "Want to read more? Browse other topics in {{catLink}} or {{latestLink}}." + read_more: "Want to read more? {{catLink}} or {{latestLink}}." + + # keys ending with _MF use message format, see https://meta.discourse.org/t/message-format-support-for-localization/7035 for details + read_more_MF: "There { + UNREAD, plural, + =0 {} + one { + is 1 unread + } other { + are # unread + } + } { + NEW, plural, + =0 {} + one { {BOTH, select, true{and } false {is } other{}} 1 new topic} + other { {BOTH, select, true{and } false {are } other{}} # new topics} + } remaining, or {CATEGORY, select, true {browse other topics in {catLink}} false {{latestLink}} other {}}" + + browse_all_categories: Browse all categories + + view_latest_topics: view latest topics + suggest_create_topic: Why not create a topic? + jump_reply_up: jump to earlier reply + jump_reply_down: jump to later reply + deleted: "The topic has been deleted" + + auto_close_notice: "This topic will automatically close %{timeLeft}." + auto_close_notice_based_on_last_post: "This topic will close %{duration} after the last reply." + auto_close_title: 'Auto-Close Settings' + auto_close_save: "Save" + auto_close_remove: "Don't Auto-Close This Topic" + auto_close_immediate: + one: "The last post in the topic is already 1 hour old, so the topic will be closed immediately." + other: "The last post in the topic is already %{count} hours old, so the topic will be closed immediately." + + timeline: + back: "Back" + back_description: "Go back to your last unread post" + replies_short: "%{current} / %{total}" + + progress: + title: topic progress + go_top: "top" + go_bottom: "bottom" + go: "go" + jump_bottom: "jump to last post" + jump_prompt: "jump to post" + jump_prompt_long: "What post would you like to jump to?" + jump_bottom_with_number: "jump to post %{post_number}" + total: total posts + current: current post + + notifications: + title: change how often you get notified about this topic + reasons: + mailing_list_mode: "You have mailing list mode enabled, so you will be notified of replies to this topic via email." + "3_10": 'You will receive notifications because you are watching a tag on this topic.' + "3_6": 'You will receive notifications because you are watching this category.' + "3_5": 'You will receive notifications because you started watching this topic automatically.' + "3_2": 'You will receive notifications because you are watching this topic.' + "3_1": 'You will receive notifications because you created this topic.' + "3": 'You will receive notifications because you are watching this topic.' + "2_8": 'You will receive notifications because you are tracking this category.' + "2_4": 'You will receive notifications because you posted a reply to this topic.' + "2_2": 'You will receive notifications because you are tracking this topic.' + "2": 'You will receive notifications because you read this topic.' + "1_2": 'You will be notified if someone mentions your @name or replies to you.' + "1": 'You will be notified if someone mentions your @name or replies to you.' + "0_7": 'You are ignoring all notifications in this category.' + "0_2": 'You are ignoring all notifications on this topic.' + "0": 'You are ignoring all notifications on this topic.' + watching_pm: + title: "Watching" + description: "You will be notified of every new reply in this message, and a count of new replies will be shown." + watching: + title: "Watching" + description: "You will be notified of every new reply in this topic, and a count of new replies will be shown." + tracking_pm: + title: "Tracking" + description: "A count of new replies will be shown for this message. You will be notified if someone mentions your @name or replies to you." + tracking: + title: "Tracking" + description: "A count of new replies will be shown for this topic. You will be notified if someone mentions your @name or replies to you. " + regular: + title: "Normal" + description: "You will be notified if someone mentions your @name or replies to you." + regular_pm: + title: "Normal" + description: "You will be notified if someone mentions your @name or replies to you." + muted_pm: + title: "Muted" + description: "You will never be notified of anything about this message." + muted: + title: "Muted" + description: "You will never be notified of anything about this topic, and it will not appear in latest." + + actions: + recover: "Un-Delete Topic" + delete: "Delete Topic" + open: "Open Topic" + close: "Close Topic" + multi_select: "Select Posts…" + auto_close: "Auto Close…" + pin: "Pin Topic…" + unpin: "Un-Pin Topic…" + unarchive: "Unarchive Topic" + archive: "Archive Topic" + invisible: "Make Unlisted" + visible: "Make Listed" + reset_read: "Reset Read Data" + make_public: "Make Public Topic" + make_private: "Make Private Message" + + feature: + pin: "Pin Topic" + unpin: "Un-Pin Topic" + pin_globally: "Pin Topic Globally" + make_banner: "Banner Topic" + remove_banner: "Remove Banner Topic" + + reply: + title: 'Reply' + help: 'begin composing a reply to this topic' + + clear_pin: + title: "Clear pin" + help: "Clear the pinned status of this topic so it no longer appears at the top of your topic list" + + share: + title: 'Share' + help: 'share a link to this topic' + + print: + title: 'Print' + help: 'Open a printer friendly version of this topic' + + flag_topic: + title: 'Flag' + help: 'privately flag this topic for attention or send a private notification about it' + success_message: 'You successfully flagged this topic.' + + feature_topic: + title: "Feature this topic" + pin: "Make this topic appear at the top of the {{categoryLink}} category until" + confirm_pin: "You already have {{count}} pinned topics. Too many pinned topics may be a burden for new and anonymous users. Are you sure you want to pin another topic in this category?" + unpin: "Remove this topic from the top of the {{categoryLink}} category." + unpin_until: "Remove this topic from the top of the {{categoryLink}} category or wait until %{until}." + pin_note: "Users can unpin the topic individually for themselves." + pin_validation: "A date is required to pin this topic." + not_pinned: "There are no topics pinned in {{categoryLink}}." + already_pinned: + one: "Topics currently pinned in {{categoryLink}}: 1" + other: "Topics currently pinned in {{categoryLink}}: {{count}}" + pin_globally: "Make this topic appear at the top of all topic lists until" + confirm_pin_globally: "You already have {{count}} globally pinned topics. Too many pinned topics may be a burden for new and anonymous users. Are you sure you want to pin another topic globally?" + unpin_globally: "Remove this topic from the top of all topic lists." + unpin_globally_until: "Remove this topic from the top of all topic lists or wait until %{until}." + global_pin_note: "Users can unpin the topic individually for themselves." + not_pinned_globally: "There are no topics pinned globally." + already_pinned_globally: + one: "Topics currently pinned globally: 1" + other: "Topics currently pinned globally: {{count}}" + make_banner: "Make this topic into a banner that appears at the top of all pages." + remove_banner: "Remove the banner that appears at the top of all pages." + banner_note: "Users can dismiss the banner by closing it. Only one topic can be bannered at any given time." + no_banner_exists: "There is no banner topic." + banner_exists: "There is currently a banner topic." + + inviting: "Inviting..." + automatically_add_to_groups: "This invite also includes access to these groups:" + + invite_private: + title: 'Invite to Message' + email_or_username: "Invitee's Email or Username" + email_or_username_placeholder: "email address or username" + action: "Invite" + success: "We've invited that user to participate in this message." + success_group: "We've invited that group to participate in this message." + error: "Sorry, there was an error inviting that user." + group_name: "group name" + + controls: "Topic Controls" + + invite_reply: + title: 'Invite' + username_placeholder: "username" + action: 'Send Invite' + help: 'invite others to this topic via email or notifications' + to_forum: "We'll send a brief email allowing your friend to immediately join by clicking a link, no login required." + sso_enabled: "Enter the username of the person you'd like to invite to this topic." + to_topic_blank: "Enter the username or email address of the person you'd like to invite to this topic." + to_topic_email: "You've entered an email address. We'll email an invitation that allows your friend to immediately reply to this topic." + to_topic_username: "You've entered a username. We'll send a notification with a link inviting them to this topic." + to_username: "Enter the username of the person you'd like to invite. We'll send a notification with a link inviting them to this topic." + + email_placeholder: 'name@example.com' + success_email: "We mailed out an invitation to {{emailOrUsername}}. We'll notify you when the invitation is redeemed. Check the invitations tab on your user page to keep track of your invites." + success_username: "We've invited that user to participate in this topic." + error: "Sorry, we couldn't invite that person. Perhaps they have already been invited? (Invites are rate limited)" + + login_reply: 'Log In to Reply' + + filters: + n_posts: + one: "1 post" + other: "{{count}} posts" + cancel: "Remove filter" + + split_topic: + title: "Move to New Topic" + action: "move to new topic" + topic_name: "New Topic Name" + error: "There was an error moving posts to the new topic." + instructions: + one: "You are about to create a new topic and populate it with the post you've selected." + other: "You are about to create a new topic and populate it with the {{count}} posts you've selected." + + merge_topic: + title: "Move to Existing Topic" + action: "move to existing topic" + error: "There was an error moving posts into that topic." + instructions: + one: "Please choose the topic you'd like to move that post to." + other: "Please choose the topic you'd like to move those {{count}} posts to." + + merge_posts: + title: "Merge Selected Posts" + action: "merge selected posts" + error: "There was an error merging the selected posts." + + change_owner: + title: "Change Owner of Posts" + action: "change ownership" + error: "There was an error changing the ownership of the posts." + label: "New Owner of Posts" + placeholder: "username of new owner" + instructions: + one: "Please choose the new owner of the post by {{old_user}}." + other: "Please choose the new owner of the {{count}} posts by {{old_user}}." + instructions_warn: "Note that any notifications about this post will not be transferred to the new user retroactively.
Warning: Currently, no post-dependent data is transferred over to the new user. Use with caution." + + change_timestamp: + title: "Change Timestamp" + action: "change timestamp" + invalid_timestamp: "Timestamp cannot be in the future." + error: "There was an error changing the timestamp of the topic." + instructions: "Please select the new timestamp of the topic. Posts in the topic will be updated to have the same time difference." + + multi_select: + select: 'select' + selected: 'selected ({{count}})' + select_replies: 'select +replies' + delete: delete selected + cancel: cancel selecting + select_all: select all + deselect_all: deselect all + description: + one: You have selected 1 post. + other: "You have selected {{count}} posts." + + post: + reply: " {{replyAvatar}} {{usernameLink}}" + reply_topic: " {{link}}" + quote_reply: "Quote" + edit: "Editing {{link}} {{replyAvatar}} {{username}}" + edit_reason: "Reason: " + post_number: "post {{number}}" + last_edited_on: "post last edited on" + reply_as_new_topic: "Reply as linked Topic" + continue_discussion: "Continuing the discussion from {{postLink}}:" + follow_quote: "go to the quoted post" + show_full: "Show Full Post" + show_hidden: 'View hidden content.' + deleted_by_author: + one: "(post withdrawn by author, will be automatically deleted in %{count} hour unless flagged)" + other: "(post withdrawn by author, will be automatically deleted in %{count} hours unless flagged)" + expand_collapse: "expand/collapse" + gap: + one: "view 1 hidden reply" + other: "view {{count}} hidden replies" + + unread: "Post is unread" + has_replies: + one: "{{count}} Reply" + other: "{{count}} Replies" + has_likes: + one: "{{count}} Like" + other: "{{count}} Likes" + + has_likes_title: + one: "1 person liked this post" + other: "{{count}} people liked this post" + + has_likes_title_only_you: "you liked this post" + has_likes_title_you: + one: "you and 1 other person liked this post" + other: "you and {{count}} other people liked this post" + + errors: + create: "Sorry, there was an error creating your post. Please try again." + edit: "Sorry, there was an error editing your post. Please try again." + upload: "Sorry, there was an error uploading that file. Please try again." + file_too_large: "Sorry, that file is too big (maximum size is {{max_size_kb}}kb). Why not upload your large file to a cloud sharing service, then share the link?" + too_many_uploads: "Sorry, you can only upload one file at a time." + too_many_dragged_and_dropped_files: "Sorry, you can only upload 10 files at a time." + upload_not_authorized: "Sorry, the file you are trying to upload is not authorized (authorized extension: {{authorized_extensions}})." + image_upload_not_allowed_for_new_user: "Sorry, new users can not upload images." + attachment_upload_not_allowed_for_new_user: "Sorry, new users can not upload attachments." + attachment_download_requires_login: "Sorry, you need to be logged in to download attachments." + + abandon: + confirm: "Are you sure you want to abandon your post?" + no_value: "No, keep" + yes_value: "Yes, abandon" + + via_email: "this post arrived via email" + via_auto_generated_email: "this post arrived via an auto generated email" + whisper: "this post is a private whisper for moderators" + + wiki: + about: "this post is a wiki" + + archetypes: + save: 'Save Options' + + few_likes_left: "Thanks for sharing the love! You only have a few likes left for today." + + controls: + reply: "begin composing a reply to this post" + like: "like this post" + has_liked: "you've liked this post" + undo_like: "undo like" + edit: "edit this post" + edit_anonymous: "Sorry, but you need to be logged in to edit this post." + flag: "privately flag this post for attention or send a private notification about it" + delete: "delete this post" + undelete: "undelete this post" + share: "share a link to this post" + more: "More" + delete_replies: + confirm: + one: "Do you also want to delete the direct reply to this post?" + other: "Do you also want to delete the {{count}} direct replies to this post?" + yes_value: "Yes, delete the replies too" + no_value: "No, just this post" + admin: "post admin actions" + wiki: "Make Wiki" + unwiki: "Remove Wiki" + convert_to_moderator: "Add Staff Color" + revert_to_regular: "Remove Staff Color" + rebake: "Rebuild HTML" + unhide: "Unhide" + change_owner: "Change Ownership" + + actions: + flag: 'Flag' + defer_flags: + one: "Defer flag" + other: "Defer flags" + undo: + off_topic: "Undo flag" + spam: "Undo flag" + inappropriate: "Undo flag" + bookmark: "Undo bookmark" + like: "Undo like" + vote: "Undo vote" + people: + off_topic: "flagged this as off-topic" + spam: "flagged this as spam" + inappropriate: "flagged this as inappropriate" + notify_moderators: "notified moderators" + notify_user: "sent a message" + bookmark: "bookmarked this" + like: "liked this" + vote: "voted for this" + by_you: + off_topic: "You flagged this as off-topic" + spam: "You flagged this as spam" + inappropriate: "You flagged this as inappropriate" + notify_moderators: "You flagged this for moderation" + notify_user: "You sent a message to this user" + bookmark: "You bookmarked this post" + like: "You liked this" + vote: "You voted for this post" + by_you_and_others: + off_topic: + one: "You and 1 other flagged this as off-topic" + other: "You and {{count}} other people flagged this as off-topic" + spam: + one: "You and 1 other flagged this as spam" + other: "You and {{count}} other people flagged this as spam" + inappropriate: + one: "You and 1 other flagged this as inappropriate" + other: "You and {{count}} other people flagged this as inappropriate" + notify_moderators: + one: "You and 1 other flagged this for moderation" + other: "You and {{count}} other people flagged this for moderation" + notify_user: + one: "You and 1 other sent a message to this user" + other: "You and {{count}} other people sent a message to this user" + bookmark: + one: "You and 1 other bookmarked this post" + other: "You and {{count}} other people bookmarked this post" + like: + one: "You and 1 other liked this" + other: "You and {{count}} other people liked this" + vote: + one: "You and 1 other voted for this post" + other: "You and {{count}} other people voted for this post" + by_others: + off_topic: + one: "1 person flagged this as off-topic" + other: "{{count}} people flagged this as off-topic" + spam: + one: "1 person flagged this as spam" + other: "{{count}} people flagged this as spam" + inappropriate: + one: "1 person flagged this as inappropriate" + other: "{{count}} people flagged this as inappropriate" + notify_moderators: + one: "1 person flagged this for moderation" + other: "{{count}} people flagged this for moderation" + notify_user: + one: "1 person sent a message to this user" + other: "{{count}} sent a message to this user" + bookmark: + one: "1 person bookmarked this post" + other: "{{count}} people bookmarked this post" + like: + one: "1 person liked this" + other: "{{count}} people liked this" + vote: + one: "1 person voted for this post" + other: "{{count}} people voted for this post" + + delete: + confirm: + one: "Are you sure you want to delete that post?" + other: "Are you sure you want to delete all those posts?" + + merge: + confirm: + one: "Are you sure you want merge those posts?" + other: "Are you sure you want to merge those {{count}} posts?" + + revisions: + controls: + first: "First revision" + previous: "Previous revision" + next: "Next revision" + last: "Last revision" + hide: "Hide revision" + show: "Show revision" + revert: "Revert to this revision" + comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" + displays: + inline: + title: "Show the rendered output with additions and removals inline" + button: ' HTML' + side_by_side: + title: "Show the rendered output diffs side-by-side" + button: ' HTML' + side_by_side_markdown: + title: "Show the raw source diffs side-by-side" + button: ' Raw' + + category: + can: 'can… ' + none: '(no category)' + all: 'All categories' + choose: 'Select a category…' + edit: 'edit' + edit_long: "Edit" + view: 'View Topics in Category' + general: 'General' + settings: 'Settings' + topic_template: "Topic Template" + tags: "Tags" + tags_allowed_tags: "Tags that can only be used in this category:" + tags_allowed_tag_groups: "Tag groups that can only be used in this category:" + tags_placeholder: "(Optional) list of allowed tags" + tag_groups_placeholder: "(Optional) list of allowed tag groups" + delete: 'Delete Category' + create: 'New Category' + create_long: 'Create a new category' + save: 'Save Category' + slug: 'Category Slug' + slug_placeholder: '(Optional) dashed-words for url' + creation_error: There has been an error during the creation of the category. + save_error: There was an error saving the category. + name: "Category Name" + description: "Description" + topic: "category topic" + logo: "Category Logo Image" + background_image: "Category Background Image" + badge_colors: "Badge colors" + background_color: "Background color" + foreground_color: "Foreground color" + name_placeholder: "One or two words maximum" + color_placeholder: "Any web color" + delete_confirm: "Are you sure you want to delete this category?" + delete_error: "There was an error deleting the category." + list: "List Categories" + no_description: "Please add a description for this category." + change_in_category_topic: "Edit Description" + already_used: 'This color has been used by another category' + security: "Security" + special_warning: "Warning: This category is a pre-seeded category and the security settings cannot be edited. If you do not wish to use this category, delete it instead of repurposing it." + images: "Images" + auto_close_label: "Auto-close topics after:" + auto_close_units: "hours" + email_in: "Custom incoming email address:" + email_in_allow_strangers: "Accept emails from anonymous users with no accounts" + email_in_disabled: "Posting new topics via email is disabled in the Site Settings. To enable posting new topics via email, " + email_in_disabled_click: 'enable the "email in" setting.' + suppress_from_homepage: "Suppress this category from the homepage." + sort_order: "Default Sort:" + allow_badges_label: "Allow badges to be awarded in this category" + edit_permissions: "Edit Permissions" + add_permission: "Add Permission" + this_year: "this year" + position: "position" + default_position: "Default Position" + position_disabled: "Categories will be displayed in order of activity. To control the order of categories in lists, " + position_disabled_click: 'enable the "fixed category positions" setting.' + parent: "Parent Category" + notifications: + watching: + title: "Watching" + description: "You will automatically watch all topics in these categories. You will be notified of every new post in every topic, and a count of new replies will be shown." + watching_first_post: + title: "Watching First Post" + description: "You will only be notified of the first post in each new topic in these categories." + tracking: + title: "Tracking" + description: "You will automatically track all topics in these categories. You will be notified if someone mentions your @name or replies to you, and a count of new replies will be shown." + regular: + title: "Normal" + description: "You will be notified if someone mentions your @name or replies to you." + muted: + title: "Muted" + description: "You will never be notified of anything about new topics in these categories, and they will not appear in latest." + sort_options: + default: "default" + likes: "Likes" + op_likes: "Original Post Likes" + views: "Views" + posts: "Posts" + activity: "Activity" + posters: "Posters" + category: "Category" + created: "Created" + sort_ascending: 'Ascending' + sort_descending: 'Descending' + + flagging: + title: 'Thanks for helping to keep our community civil!' + action: 'Flag Post' + take_action: "Take Action" + notify_action: 'Message' + official_warning: 'Official Warning' + delete_spammer: "Delete Spammer" + + # keys ending with _MF use message format, see https://meta.discourse.org/t/message-format-support-for-localization/7035 for details + delete_confirm_MF: "You are about to delete {POSTS, plural, one {1 post} other {# posts}} and {TOPICS, plural, one {1 topic} other {# topics}} from this user, remove their account, block signups from their IP address {ip_address}, and add their email address {email} to a permanent block list. Are you sure this user is really a spammer?" + yes_delete_spammer: "Yes, Delete Spammer" + ip_address_missing: "(N/A)" + hidden_email_address: "(hidden)" + submit_tooltip: "Submit the private flag" + take_action_tooltip: "Reach the flag threshold immediately, rather than waiting for more community flags" + cant: "Sorry, you can't flag this post at this time." + notify_staff: 'Notify staff privately' + formatted_name: + off_topic: "It's Off-Topic" + inappropriate: "It's Inappropriate" + spam: "It's Spam" + custom_placeholder_notify_user: "Be specific, be constructive, and always be kind." + custom_placeholder_notify_moderators: "Let us know specifically what you are concerned about, and provide relevant links and examples where possible." + custom_message: + at_least: + one: "enter at least 1 character" + other: "enter at least {{count}} characters" + more: + one: "1 to go..." + other: "{{count}} to go..." + left: + one: "1 remaining" + other: "{{count}} remaining" + + flagging_topic: + title: "Thanks for helping to keep our community civil!" + action: "Flag Topic" + notify_action: "Message" + + topic_map: + title: "Topic Summary" + participants_title: "Frequent Posters" + links_title: "Popular Links" + links_shown: "show more links..." + clicks: + one: "1 click" + other: "%{count} clicks" + post_links: + about: "expand more links for this post" + title: + one: "1 more" + other: "%{count} more" + + topic_statuses: + warning: + help: "This is an official warning." + bookmarked: + help: "You bookmarked this topic" + locked: + help: "This topic is closed; it no longer accepts new replies" + archived: + help: "This topic is archived; it is frozen and cannot be changed" + locked_and_archived: + help: "This topic is closed and archived; it no longer accepts new replies and cannot be changed" + unpinned: + title: "Unpinned" + help: "This topic is unpinned for you; it will display in regular order" + pinned_globally: + title: "Pinned Globally" + help: "This topic is pinned globally; it will display at the top of latest and its category" + pinned: + title: "Pinned" + help: "This topic is pinned for you; it will display at the top of its category" + invisible: + help: "This topic is unlisted; it will not be displayed in topic lists, and can only be accessed via a direct link" + + posts: "Posts" + posts_long: "there are {{number}} posts in this topic" + + # keys ending with _MF use message format, see https://meta.discourse.org/t/message-format-support-for-localization/7035 for details + posts_likes_MF: | + This topic has {count, plural, one {1 reply} other {# replies}} {ratio, select, + low {with a high like to post ratio} + med {with a very high like to post ratio} + high {with an extremely high like to post ratio} + other {}} + original_post: "Original Post" + views: "Views" + views_lowercase: + one: "view" + other: "views" + replies: "Replies" + views_long: "this topic has been viewed {{number}} times" + activity: "Activity" + likes: "Likes" + likes_lowercase: + one: "like" + other: "likes" + likes_long: "there are {{number}} likes in this topic" + users: "Users" + users_lowercase: + one: "user" + other: "users" + category_title: "Category" + history: "History" + changed_by: "by {{author}}" + + raw_email: + title: "Raw Email" + not_available: "Not available!" + + categories_list: "Categories List" + + filters: + with_topics: "%{filter} topics" + with_category: "%{filter} %{category} topics" + latest: + title: "Latest" + title_with_count: + one: "Latest (1)" + other: "Latest ({{count}})" + help: "topics with recent posts" + hot: + title: "Hot" + help: "a selection of the hottest topics" + read: + title: "Read" + help: "topics you've read, in the order that you last read them" + search: + title: "Search" + help: "search all topics" + categories: + title: "Categories" + title_in: "Category - {{categoryName}}" + help: "all topics grouped by category" + unread: + title: "Unread" + title_with_count: + one: "Unread (1)" + other: "Unread ({{count}})" + help: "topics you are currently watching or tracking with unread posts" + lower_title_with_count: + one: "1 unread" + other: "{{count}} unread" + new: + lower_title_with_count: + one: "1 new" + other: "{{count}} new" + lower_title: "new" + title: "New" + title_with_count: + one: "New (1)" + other: "New ({{count}})" + help: "topics created in the last few days" + posted: + title: "My Posts" + help: "topics you have posted in" + bookmarks: + title: "Bookmarks" + help: "topics you have bookmarked" + category: + title: "{{categoryName}}" + title_with_count: + one: "{{categoryName}} (1)" + other: "{{categoryName}} ({{count}})" + help: "latest topics in the {{categoryName}} category" + top: + title: "Top" + help: "the most active topics in the last year, month, week or day" + all: + title: "All Time" + yearly: + title: "Yearly" + quarterly: + title: "Quarterly" + monthly: + title: "Monthly" + weekly: + title: "Weekly" + daily: + title: "Daily" + all_time: "All Time" + this_year: "Year" + this_quarter: "Quarter" + this_month: "Month" + this_week: "Week" + today: "Today" + other_periods: "see top" + + browser_update: 'Unfortunately, your browser is too old to work on this site. Please upgrade your browser.' + + permission_types: + full: "Create / Reply / See" + create_post: "Reply / See" + readonly: "See" + + lightbox: + download: "download" + + keyboard_shortcuts_help: + title: 'Keyboard Shortcuts' + jump_to: + title: 'Jump To' + home: 'g, h Home' + latest: 'g, l Latest' + new: 'g, n New' + unread: 'g, u Unread' + categories: 'g, c Categories' + top: 'g, t Top' + bookmarks: 'g, b Bookmarks' + profile: 'g, p Profile' + messages: 'g, m Messages' + navigation: + title: 'Navigation' + jump: '# Go to post #' + back: 'u Back' + up_down: 'k/j Move selection ↑ ↓' + open: 'o or Enter Open selected topic' + next_prev: 'shift+j/shift+k Next/previous section' + application: + title: 'Application' + create: 'c Create a new topic' + notifications: 'n Open notifications' + hamburger_menu: '= Open hamburger menu' + user_profile_menu: 'p Open user menu' + show_incoming_updated_topics: '. Show updated topics' + search: '/ Search' + help: '? Open keyboard help' + dismiss_new_posts: 'x, r Dismiss New/Posts' + dismiss_topics: 'x, t Dismiss Topics' + log_out: 'shift+z shift+z Log Out' + actions: + title: 'Actions' + bookmark_topic: 'f Toggle bookmark topic' + pin_unpin_topic: 'shift+p Pin/Unpin topic' + share_topic: 'shift+s Share topic' + share_post: 's Share post' + reply_as_new_topic: 't Reply as linked topic' + reply_topic: 'shift+r Reply to topic' + reply_post: 'r Reply to post' + quote_post: 'q Quote post' + like: 'l Like post' + flag: '! Flag post' + bookmark: 'b Bookmark post' + edit: 'e Edit post' + delete: 'd Delete post' + mark_muted: 'm, m Mute topic' + mark_regular: 'm, r Regular (default) topic' + mark_tracking: 'm, t Track topic' + mark_watching: 'm, w Watch topic' + print: 'ctrl+p Print topic' + + badges: + earned_n_times: + one: "Earned this badge 1 time" + other: "Earned this badge %{count} times" + granted_on: "Granted %{date}" + others_count: "Others with this badge (%{count})" + title: Badges + allow_title: "available title" + multiple_grant: "awarded multiple times" + badge_count: + one: "1 Badge" + other: "%{count} Badges" + more_badges: + one: "+1 More" + other: "+%{count} More" + granted: + one: "1 granted" + other: "%{count} granted" + select_badge_for_title: Select a badge to use as your title + none: "" + badge_grouping: + getting_started: + name: Getting Started + community: + name: Community + trust_level: + name: Trust Level + other: + name: Other + posting: + name: Posting + + google_search: | +

Search with Google

+

+

+

+ + tagging: + all_tags: "All Tags" + selector_all_tags: "all tags" + selector_no_tags: "no tags" + changed: "tags changed:" + tags: "Tags" + choose_for_topic: "choose optional tags for this topic" + delete_tag: "Delete Tag" + delete_confirm: "Are you sure you want to delete that tag?" + rename_tag: "Rename Tag" + rename_instructions: "Choose a new name for the tag:" + sort_by: "Sort by:" + sort_by_count: "count" + sort_by_name: "name" + manage_groups: "Manage Tag Groups" + manage_groups_description: "Define groups to organize tags" + + filters: + without_category: "%{filter} %{tag} topics" + with_category: "%{filter} %{tag} topics in %{category}" + untagged_without_category: "%{filter} untagged topics" + untagged_with_category: "%{filter} untagged topics in %{category}" + + notifications: + watching: + title: "Watching" + description: "You will automatically watch all topics in this tag. You will be notified of all new posts and topics, plus the count of unread and new posts will also appear next to the topic." + watching_first_post: + title: "Watching First Post" + description: "You will only be notified of the first post in each new topic in this tag." + tracking: + title: "Tracking" + description: "You will automatically track all topics in this tag. A count of unread and new posts will appear next to the topic." + regular: + title: "Regular" + description: "You will be notified if someone mentions your @name or replies to your post." + muted: + title: "Muted" + description: "You will not be notified of anything about new topics in this tag, and they will not appear on your unread tab." + + groups: + title: "Tag Groups" + about: "Add tags to groups to manage them more easily." + new: "New Group" + tags_label: "Tags in this group:" + parent_tag_label: "Parent tag:" + parent_tag_placeholder: "Optional" + parent_tag_description: "Tags from this group can't be used unless the parent tag is present." + one_per_topic_label: "Limit one tag per topic from this group" + new_name: "New Tag Group" + save: "Save" + delete: "Delete" + confirm_delete: "Are you sure you want to delete this tag group?" + + topics: + none: + unread: "You have no unread topics." + new: "You have no new topics." + read: "You haven't read any topics yet." + posted: "You haven't posted in any topics yet." + latest: "There are no latest topics." + hot: "There are no hot topics." + bookmarks: "You have no bookmarked topics yet." + top: "There are no top topics." + search: "There are no search results." + bottom: + latest: "There are no more latest topics." + hot: "There are no more hot topics." + posted: "There are no more posted topics." + read: "There are no more read topics." + new: "There are no more new topics." + unread: "There are no more unread topics." + top: "There are no more top topics." + bookmarks: "There are no more bookmarked topics." + search: "There are no more search results." + + invite: + custom_message: "Make your invite a little bit more personal by writing a" + custom_message_link: "custom message" + custom_message_placeholder: "Enter your custom message" + custom_message_template_forum: "Hey, you should join this forum!" + custom_message_template_topic: "Hey, I thought you might enjoy this topic!" + + safe_mode: + enabled: "Safe mode is enabled, to exit safe mode close this browser window" + + + # This section is exported to the javascript for i18n in the admin section + admin_js: + type_to_filter: "type to filter..." + + admin: + title: 'Discourse Admin' + moderator: 'Moderator' + + dashboard: + title: "Dashboard" + last_updated: "Dashboard last updated:" + version: "Version" + up_to_date: "You're up to date!" + critical_available: "A critical update is available." + updates_available: "Updates are available." + please_upgrade: "Please upgrade!" + no_check_performed: "A check for updates has not been performed. Ensure sidekiq is running." + stale_data: "A check for updates has not been performed lately. Ensure sidekiq is running." + version_check_pending: "Looks like you upgraded recently. Fantastic!" + installed_version: "Installed" + latest_version: "Latest" + problems_found: "Some problems have been found with your installation of Discourse:" + last_checked: "Last checked" + refresh_problems: "Refresh" + no_problems: "No problems were found." + moderators: 'Moderators:' + admins: 'Admins:' + blocked: 'Blocked:' + suspended: 'Suspended:' + private_messages_short: "Msgs" + private_messages_title: "Messages" + mobile_title: "Mobile" + space_free: "{{size}} free" + uploads: "uploads" + backups: "backups" + traffic_short: "Traffic" + traffic: "Application web requests" + page_views: "API Requests" + page_views_short: "API Requests" + show_traffic_report: "Show Detailed Traffic Report" + + reports: + today: "Today" + yesterday: "Yesterday" + last_7_days: "Last 7 Days" + last_30_days: "Last 30 Days" + all_time: "All Time" + 7_days_ago: "7 Days Ago" + 30_days_ago: "30 Days Ago" + all: "All" + view_table: "table" + view_graph: "graph" + refresh_report: "Refresh Report" + start_date: "Start Date" + end_date: "End Date" + groups: "All groups" + + commits: + latest_changes: "Latest changes: please update often!" + by: "by" + + flags: + title: "Flags" + old: "Old" + active: "Active" + + agree: "Agree" + agree_title: "Confirm this flag as valid and correct" + agree_flag_modal_title: "Agree and..." + agree_flag_hide_post: "Agree (hide post + send PM)" + agree_flag_hide_post_title: "Hide this post and automatically send the user a message urging them to edit it" + agree_flag_restore_post: "Agree (restore post)" + agree_flag_restore_post_title: "Restore this post" + agree_flag: "Agree with flag" + agree_flag_title: "Agree with flag and keep the post unchanged" + defer_flag: "Defer" + defer_flag_title: "Remove this flag; it requires no action at this time." + delete: "Delete" + delete_title: "Delete the post this flag refers to." + delete_post_defer_flag: "Delete post and Defer flag" + delete_post_defer_flag_title: "Delete post; if the first post, delete the topic" + delete_post_agree_flag: "Delete post and Agree with flag" + delete_post_agree_flag_title: "Delete post; if the first post, delete the topic" + delete_flag_modal_title: "Delete and..." + delete_spammer: "Delete Spammer" + delete_spammer_title: "Remove the user and all posts and topics by this user." + disagree_flag_unhide_post: "Disagree (unhide post)" + disagree_flag_unhide_post_title: "Remove any flags from this post and make the post visible again" + disagree_flag: "Disagree" + disagree_flag_title: "Deny this flag as invalid or incorrect" + clear_topic_flags: "Done" + clear_topic_flags_title: "The topic has been investigated and issues have been resolved. Click Done to remove the flags." + more: "(more replies...)" + + dispositions: + agreed: "agreed" + disagreed: "disagreed" + deferred: "deferred" + + flagged_by: "Flagged by" + resolved_by: "Resolved by" + took_action: "Took action" + system: "System" + error: "Something went wrong" + reply_message: "Reply" + no_results: "There are no flags." + topic_flagged: "This topic has been flagged." + visit_topic: "Visit the topic to take action" + was_edited: "Post was edited after the first flag" + previous_flags_count: "This post has already been flagged {{count}} times." + + summary: + action_type_3: + one: "off-topic" + other: "off-topic x{{count}}" + action_type_4: + one: "inappropriate" + other: "inappropriate x{{count}}" + action_type_6: + one: "custom" + other: "custom x{{count}}" + action_type_7: + one: "custom" + other: "custom x{{count}}" + action_type_8: + one: "spam" + other: "spam x{{count}}" + + groups: + primary: "Primary Group" + no_primary: "(no primary group)" + title: "Groups" + edit: "Edit Groups" + refresh: "Refresh" + new: "New" + selector_placeholder: "enter username" + name_placeholder: "Group name, no spaces, same as username rule" + about: "Edit your group membership and names here" + group_members: "Group members" + delete: "Delete" + delete_confirm: "Delete this group?" + delete_failed: "Unable to delete group. If this is an automatic group, it cannot be destroyed." + delete_member_confirm: "Remove '%{username}' from the '%{group}' group?" + delete_owner_confirm: "Remove owner privilege for '%{username}'?" + name: "Name" + add: "Add" + add_members: "Add members" + custom: "Custom" + bulk_complete: "The users have been added to the group." + bulk: "Bulk Add to Group" + bulk_paste: "Paste a list of usernames or emails, one per line:" + bulk_select: "(select a group)" + automatic: "Automatic" + automatic_membership_email_domains: "Users who register with an email domain that exactly matches one in this list will be automatically added to this group:" + automatic_membership_retroactive: "Apply the same email domain rule to add existing registered users" + default_title: "Default title for all users in this group" + primary_group: "Automatically set as primary group" + group_owners: Owners + add_owners: Add owners + incoming_email: "Custom incoming email address" + incoming_email_placeholder: "enter email address" + flair_url: "Avatar Flair Image" + flair_url_placeholder: "(Optional) Image URL or Font Awesome class" + flair_bg_color: "Avatar Flair Background Color" + flair_bg_color_placeholder: "(Optional) Hex color value" + flair_color: "Avatar Flair Color" + flair_color_placeholder: "(Optional) Hex color value" + flair_preview: "Preview" + flair_note: "Note: Flair will only show for a user's primary group." + + api: + generate_master: "Generate Master API Key" + none: "There are no active API keys right now." + user: "User" + title: "API" + key: "API Key" + generate: "Generate" + regenerate: "Regenerate" + revoke: "Revoke" + confirm_regen: "Are you sure you want to replace that API Key with a new one?" + confirm_revoke: "Are you sure you want to revoke that key?" + info_html: "Your API key will allow you to create and update topics using JSON calls." + all_users: "All Users" + note_html: "Keep this key secret, all users that have it may create arbitrary posts as any user." + + web_hooks: + title: "Webhooks" + none: "There are no webhooks right now." + instruction: "Webhooks allows Discourse to notify external services when certain event happens in your site. When the webhook is triggered, a POST request will send to URLs provided." + detailed_instruction: "A POST request will be sent to provided URL when chosen event happens." + new: "New Webhook" + create: "Create" + save: "Save" + destroy: "Delete" + description: "Description" + controls: "Controls" + go_back: "Back to list" + payload_url: "Payload URL" + payload_url_placeholder: "https://example.com/postreceive" + warn_local_payload_url: "It seems you are trying to set up the webhook to a local url. Event delivered to a local address may cause side-effect or unexpected behaviours. Continue?" + secret_invalid: "Secret must not have any blank characters." + secret_too_short: "Secret should be at least 12 characters." + secret_placeholder: "A optional string, used for generating signature" + event_type_missing: "You need to set up at least one event type." + content_type: "Content Type" + secret: "Secret" + event_chooser: "Which events would you like to trigger this webhook?" + wildcard_event: "Send me everything." + individual_event: "Select individual events." + verify_certificate: "Check TLS certificate of payload url" + active: "Active" + active_notice: "We will deliver event details when it happens." + categories_filter_instructions: "Relevant webhooks will only be triggered if the event is related with specified categories. Leave blank to trigger webhooks for all categories." + categories_filter: "Triggered Categories" + groups_filter_instructions: "Relevant webhooks will only be triggered if the event is related with specified groups. Leave blank to trigger webhooks for all groups." + groups_filter: "Triggered Groups" + delete_confirm: "Delete this webhook?" + topic_event: + name: "Topic Event" + details: "When there is a new topic, revised, changed or deleted." + post_event: + name: "Post Event" + details: "When there is a new reply, edit, deleted or recovered." + user_event: + name: "User Event" + details: "When a user is created or approved." + delivery_status: + title: "Delivery Status" + inactive: "Inactive" + failed: "Failed" + successful: "Successful" + events: + none: "There are no related events." + redeliver: "Redeliver" + incoming: + one: "There is a new event." + other: "There are {{count}} new events." + completed_in: + one: "Completed in 1 second." + other: "Completed in {{count}} seconds." + request: "Request" + response: "Response" + redeliver_confirm: "Are you sure you want to redeliver the same payload?" + headers: "Headers" + payload: "Payload" + body: "Body" + go_list: "Go to list" + go_details: "Edit webhook" + go_events: "Go to events" + ping: "Ping" + status: "Status Code" + event_id: "ID" + timestamp: "Created" + completion: "Completion Time" + actions: "Actions" + plugins: + title: "Plugins" + installed: "Installed Plugins" + name: "Name" + none_installed: "You don't have any plugins installed." + version: "Version" + enabled: "Enabled?" + is_enabled: "Y" + not_enabled: "N" + change_settings: "Change Settings" + change_settings_short: "Settings" + howto: "How do I install plugins?" + + backups: + title: "Backups" + menu: + backups: "Backups" + logs: "Logs" + none: "No backup available." + read_only: + enable: + title: "Enable read-only mode" + label: "Enable read-only" + confirm: "Are you sure you want to enable read-only mode?" + disable: + title: "Disable read-only mode" + label: "Disable read-only" + logs: + none: "No logs yet..." + columns: + filename: "Filename" + size: "Size" + upload: + label: "Upload" + title: "Upload a backup to this instance" + uploading: "Uploading..." + success: "'{{filename}}' has successfully been uploaded." + error: "There has been an error while uploading '{{filename}}': {{message}}" + operations: + is_running: "An operation is currently running..." + failed: "The {{operation}} failed. Please check the logs." + cancel: + label: "Cancel" + title: "Cancel the current operation" + confirm: "Are you sure you want to cancel the current operation?" + backup: + label: "Backup" + title: "Create a backup" + confirm: "Do you want to start a new backup?" + without_uploads: "Yes (do not include files)" + download: + label: "Download" + title: "Download the backup" + destroy: + title: "Remove the backup" + confirm: "Are you sure you want to destroy this backup?" + restore: + is_disabled: "Restore is disabled in the site settings." + label: "Restore" + title: "Restore the backup" + confirm: "Are you sure you want to restore this backup?" + rollback: + label: "Rollback" + title: "Rollback the database to previous working state" + confirm: "Are you sure you want to rollback the database to the previous working state?" + + export_csv: + success: "Export initiated, you will be notified via message when the process is complete." + failed: "Export failed. Please check the logs." + button_text: "Export" + button_title: + user: "Export full user list in CSV format." + staff_action: "Export full staff action log in CSV format." + screened_email: "Export full screened email list in CSV format." + screened_ip: "Export full screened IP list in CSV format." + screened_url: "Export full screened URL list in CSV format." + export_json: + button_text: "Export" + + invite: + button_text: "Send Invites" + button_title: "Send Invites" + + customize: + title: "Customize" + long_title: "Site Customizations" + css: "CSS" + header: "Header" + top: "Top" + footer: "Footer" + embedded_css: "Embedded CSS" + head_tag: + text: "" + title: "HTML that will be inserted before the tag" + body_tag: + text: "" + title: "HTML that will be inserted before the tag" + override_default: "Do not include standard style sheet" + enabled: "Enabled?" + preview: "preview" + undo_preview: "remove preview" + rescue_preview: "default style" + explain_preview: "See the site with this custom stylesheet" + explain_undo_preview: "Go back to the currently enabled custom stylesheet" + explain_rescue_preview: "See the site with the default stylesheet" + save: "Save" + new: "New" + new_style: "New Style" + import: "Import" + import_title: "Select a file or paste text" + delete: "Delete" + delete_confirm: "Delete this customization?" + about: "Modify CSS stylesheets and HTML headers on the site. Add a customization to start." + color: "Color" + opacity: "Opacity" + copy: "Copy" + email_templates: + title: "Email Templates" + subject: "Subject" + multiple_subjects: "This email template has multiple subjects." + body: "Body" + none_selected: "Select an email template to begin editing." + revert: "Revert Changes" + revert_confirm: "Are you sure you want to revert your changes?" + + css_html: + title: "CSS/HTML" + long_title: "CSS and HTML Customizations" + colors: + title: "Colors" + long_title: "Color Schemes" + about: "Modify the colors used on the site without writing CSS. Add a scheme to start." + new_name: "New Color Scheme" + copy_name_prefix: "Copy of" + delete_confirm: "Delete this color scheme?" + undo: "undo" + undo_title: "Undo your changes to this color since the last time it was saved." + revert: "revert" + revert_title: "Reset this color to Discourse's default color scheme." + primary: + name: 'primary' + description: 'Most text, icons, and borders.' + secondary: + name: 'secondary' + description: 'The main background color, and text color of some buttons.' + tertiary: + name: 'tertiary' + description: 'Links, some buttons, notifications, and accent color.' + quaternary: + name: "quaternary" + description: "Navigation links." + header_background: + name: "header background" + description: "Background color of the site's header." + header_primary: + name: "header primary" + description: "Text and icons in the site's header." + highlight: + name: 'highlight' + description: 'The background color of highlighted elements on the page, such as posts and topics.' + danger: + name: 'danger' + description: 'Highlight color for actions like deleting posts and topics.' + success: + name: 'success' + description: 'Used to indicate an action was successful.' + love: + name: 'love' + description: "The like button's color." + + email: + title: "Emails" + settings: "Settings" + templates: "Templates" + preview_digest: "Preview Digest" + sending_test: "Sending test Email..." + error: "ERROR - %{server_error}" + test_error: "There was a problem sending the test email. Please double-check your mail settings, verify that your host is not blocking mail connections, and try again." + sent: "Sent" + skipped: "Skipped" + bounced: "Bounced" + received: "Received" + rejected: "Rejected" + sent_at: "Sent At" + time: "Time" + user: "User" + email_type: "Email Type" + to_address: "To Address" + test_email_address: "email address to test" + send_test: "Send Test Email" + sent_test: "sent!" + delivery_method: "Delivery Method" + preview_digest_desc: "Preview the content of the digest emails sent to inactive users." + refresh: "Refresh" + send_digest_label: "Send this result to:" + send_digest: "Send" + sending_email: "Sending email..." + format: "Format" + html: "html" + text: "text" + last_seen_user: "Last Seen User:" + no_result: "No results found for digest." + reply_key: "Reply Key" + skipped_reason: "Skip Reason" + incoming_emails: + from_address: "From" + to_addresses: "To" + cc_addresses: "Cc" + subject: "Subject" + error: "Error" + none: "No incoming emails found." + modal: + title: "Incoming Email Details" + error: "Error" + headers: "Headers" + subject: "Subject" + body: "Body" + rejection_message: "Rejection Mail" + filters: + from_placeholder: "from@example.com" + to_placeholder: "to@example.com" + cc_placeholder: "cc@example.com" + subject_placeholder: "Subject..." + error_placeholder: "Error" + logs: + none: "No logs found." + filters: + title: "Filter" + user_placeholder: "username" + address_placeholder: "name@example.com" + type_placeholder: "digest, signup..." + reply_key_placeholder: "reply key" + skipped_reason_placeholder: "reason" + + logs: + title: "Logs" + action: "Action" + created_at: "Created" + last_match_at: "Last Matched" + match_count: "Matches" + ip_address: "IP" + topic_id: "Topic ID" + post_id: "Post ID" + category_id: "Category ID" + delete: 'Delete' + edit: 'Edit' + save: 'Save' + screened_actions: + block: "block" + do_nothing: "do nothing" + staff_actions: + title: "Staff Actions" + instructions: "Click usernames and actions to filter the list. Click profile pictures to go to user pages." + clear_filters: "Show Everything" + staff_user: "Staff User" + target_user: "Target User" + subject: "Subject" + when: "When" + context: "Context" + details: "Details" + previous_value: "Previous" + new_value: "New" + diff: "Diff" + show: "Show" + modal_title: "Details" + no_previous: "There is no previous value." + deleted: "No new value. The record was deleted." + actions: + delete_user: "delete user" + change_trust_level: "change trust level" + change_username: "change username" + change_site_setting: "change site setting" + change_site_customization: "change site customization" + delete_site_customization: "delete site customization" + change_site_text: "change site text" + suspend_user: "suspend user" + unsuspend_user: "unsuspend user" + grant_badge: "grant badge" + revoke_badge: "revoke badge" + check_email: "check email" + delete_topic: "delete topic" + delete_post: "delete post" + impersonate: "impersonate" + anonymize_user: "anonymize user" + roll_up: "roll up IP blocks" + change_category_settings: "change category settings" + delete_category: "delete category" + create_category: "create category" + block_user: "block user" + unblock_user: "unblock user" + grant_admin: "grant admin" + revoke_admin: "revoke admin" + grant_moderation: "grant moderation" + revoke_moderation: "revoke moderation" + backup_operation: "backup operation" + deleted_tag: "deleted tag" + renamed_tag: "renamed tag" + revoke_email: "revoke email" + screened_emails: + title: "Screened Emails" + description: "When someone tries to create a new account, the following email addresses will be checked and the registration will be blocked, or some other action performed." + email: "Email Address" + actions: + allow: "Allow" + screened_urls: + title: "Screened URLs" + description: "The URLs listed here were used in posts by users who have been identified as spammers." + url: "URL" + domain: "Domain" + screened_ips: + title: "Screened IPs" + description: 'IP addresses that are being watched. Use "Allow" to whitelist IP addresses.' + delete_confirm: "Are you sure you want to remove the rule for %{ip_address}?" + roll_up_confirm: "Are you sure you want to roll up commonly screened IP addresses into subnets?" + rolled_up_some_subnets: "Successfully rolled up IP ban entries to these subnets: %{subnets}." + rolled_up_no_subnet: "There was nothing to roll up." + actions: + block: "Block" + do_nothing: "Allow" + allow_admin: "Allow Admin" + form: + label: "New:" + ip_address: "IP address" + add: "Add" + filter: "Search" + roll_up: + text: "Roll up" + title: "Creates new subnet ban entries if there are at least 'min_ban_entries_for_roll_up' entries." + logster: + title: "Error Logs" + + impersonate: + title: "Impersonate" + help: "Use this tool to impersonate a user account for debugging purposes. You will have to log out once finished." + not_found: "That user can't be found." + invalid: "Sorry, you may not impersonate that user." + + users: + title: 'Users' + create: 'Add Admin User' + last_emailed: "Last Emailed" + not_found: "Sorry, that username doesn't exist in our system." + id_not_found: "Sorry, that user id doesn't exist in our system." + active: "Active" + show_emails: "Show Emails" + nav: + new: "New" + active: "Active" + pending: "Pending" + staff: 'Staff' + suspended: 'Suspended' + blocked: 'Blocked' + suspect: 'Suspect' + approved: "Approved?" + approved_selected: + one: "approve user" + other: "approve users ({{count}})" + reject_selected: + one: "reject user" + other: "reject users ({{count}})" + titles: + active: 'Active Users' + new: 'New Users' + pending: 'Users Pending Review' + newuser: 'Users at Trust Level 0 (New User)' + basic: 'Users at Trust Level 1 (Basic User)' + member: 'Users at Trust Level 2 (Member)' + regular: 'Users at Trust Level 3 (Regular)' + leader: 'Users at Trust Level 4 (Leader)' + staff: "Staff" + admins: 'Admin Users' + moderators: 'Moderators' + blocked: 'Blocked Users' + suspended: 'Suspended Users' + suspect: 'Suspect Users' + reject_successful: + one: "Successfully rejected 1 user." + other: "Successfully rejected %{count} users." + reject_failures: + one: "Failed to reject 1 user." + other: "Failed to reject %{count} users." + not_verified: "Not verified" + check_email: + title: "Reveal this user's email address" + text: "Show" + + user: + suspend_failed: "Something went wrong suspending this user {{error}}" + unsuspend_failed: "Something went wrong unsuspending this user {{error}}" + suspend_duration: "How long will the user be suspended for?" + suspend_duration_units: "(days)" + suspend_reason_label: "Why are you suspending? This text will be visible to everyone on this user's profile page, and will be shown to the user when they try to log in. Keep it short." + suspend_reason: "Reason" + suspended_by: "Suspended by" + delete_all_posts: "Delete all posts" + + # keys ending with _MF use message format, see https://meta.discourse.org/t/message-format-support-for-localization/7035 for details + delete_all_posts_confirm_MF: "You are about to delete {POSTS, plural, one {1 post} other {# posts}} and {TOPICS, plural, one {1 topic} other {# topics}}. Are you sure?" + suspend: "Suspend" + unsuspend: "Unsuspend" + suspended: "Suspended?" + moderator: "Moderator?" + admin: "Admin?" + blocked: "Blocked?" + staged: "Staged?" + show_admin_profile: "Admin" + edit_title: "Edit Title" + save_title: "Save Title" + refresh_browsers: "Force browser refresh" + refresh_browsers_message: "Message sent to all clients!" + show_public_profile: "Show Public Profile" + impersonate: 'Impersonate' + ip_lookup: "IP Lookup" + log_out: "Log Out" + logged_out: "User was logged out on all devices" + revoke_admin: 'Revoke Admin' + grant_admin: 'Grant Admin' + revoke_moderation: 'Revoke Moderation' + grant_moderation: 'Grant Moderation' + unblock: 'Unblock' + block: 'Block' + reputation: Reputation + permissions: Permissions + activity: Activity + like_count: Likes Given / Received + last_100_days: 'in the last 100 days' + private_topics_count: Private Topics + posts_read_count: Posts Read + post_count: Posts Created + topics_entered: Topics Viewed + flags_given_count: Flags Given + flags_received_count: Flags Received + warnings_received_count: Warnings Received + flags_given_received_count: 'Flags Given / Received' + approve: 'Approve' + approved_by: "approved by" + approve_success: "User approved and email sent with activation instructions." + approve_bulk_success: "Success! All selected users have been approved and notified." + time_read: "Read Time" + anonymize: "Anonymize User" + anonymize_confirm: "Are you SURE you want to anonymize this account? This will change the username and email, and reset all profile information." + anonymize_yes: "Yes, anonymize this account" + anonymize_failed: "There was a problem anonymizing the account." + delete: "Delete User" + delete_forbidden_because_staff: "Admins and moderators can't be deleted." + delete_posts_forbidden_because_staff: "Can't delete all posts of admins and moderators." + delete_forbidden: + one: "Users can't be deleted if they have posts. Delete all posts before trying to delete a user. (Posts older than %{count} day old can't be deleted.)" + other: "Users can't be deleted if they have posts. Delete all posts before trying to delete a user. (Posts older than %{count} days old can't be deleted.)" + cant_delete_all_posts: + one: "Can't delete all posts. Some posts are older than %{count} day old. (The delete_user_max_post_age setting.)" + other: "Can't delete all posts. Some posts are older than %{count} days old. (The delete_user_max_post_age setting.)" + cant_delete_all_too_many_posts: + one: "Can't delete all posts because the user has more than 1 post. (delete_all_posts_max)" + other: "Can't delete all posts because the user has more than %{count} posts. (delete_all_posts_max)" + delete_confirm: "Are you SURE you want to delete this user? This is permanent!" + delete_and_block: "Delete and block this email and IP address" + delete_dont_block: "Delete only" + deleted: "The user was deleted." + delete_failed: "There was an error deleting that user. Make sure all posts are deleted before trying to delete the user." + send_activation_email: "Send Activation Email" + activation_email_sent: "An activation email has been sent." + send_activation_email_failed: "There was a problem sending another activation email. %{error}" + activate: "Activate Account" + activate_failed: "There was a problem activating the user." + deactivate_account: "Deactivate Account" + deactivate_failed: "There was a problem deactivating the user." + unblock_failed: 'There was a problem unblocking the user.' + block_failed: 'There was a problem blocking the user.' + block_confirm: 'Are you sure you want to block this user? They will not be able to create any new topics or posts.' + block_accept: 'Yes, block this user' + bounce_score: "Bounce Score" + reset_bounce_score: + label: "Reset" + title: "Reset bounce score back to 0" + deactivate_explanation: "A deactivated user must re-validate their email." + suspended_explanation: "A suspended user can't log in." + block_explanation: "A blocked user can't post or start topics." + staged_explanation: "A staged user can only post via email in specific topics." + bounce_score_explanation: + none: "No bounces were received recently from that email." + some: "Some bounces were received recently from that email." + threshold_reached: "Received too many bounces from that email." + trust_level_change_failed: "There was a problem changing the user's trust level." + suspend_modal_title: "Suspend User" + trust_level_2_users: "Trust Level 2 Users" + trust_level_3_requirements: "Trust Level 3 Requirements" + trust_level_locked_tip: "trust level is locked, system will not promote or demote user" + trust_level_unlocked_tip: "trust level is unlocked, system will may promote or demote user" + lock_trust_level: "Lock Trust Level" + unlock_trust_level: "Unlock Trust Level" + tl3_requirements: + title: "Requirements for Trust Level 3" + table_title: + one: "In the last day:" + other: "In the last %{count} days:" + value_heading: "Value" + requirement_heading: "Requirement" + visits: "Visits" + days: "days" + topics_replied_to: "Topics Replied To" + topics_viewed: "Topics Viewed" + topics_viewed_all_time: "Topics Viewed (all time)" + posts_read: "Posts Read" + posts_read_all_time: "Posts Read (all time)" + flagged_posts: "Flagged Posts" + flagged_by_users: "Users Who Flagged" + likes_given: "Likes Given" + likes_received: "Likes Received" + likes_received_days: "Likes Received: unique days" + likes_received_users: "Likes Received: unique users" + qualifies: "Qualifies for trust level 3." + does_not_qualify: "Doesn't qualify for trust level 3." + will_be_promoted: "Will be promoted soon." + will_be_demoted: "Will be demoted soon." + on_grace_period: "Currently in promotion grace period, will not be demoted." + locked_will_not_be_promoted: "Trust level locked. Will never be promoted." + locked_will_not_be_demoted: "Trust level locked. Will never be demoted." + sso: + title: "Single Sign On" + external_id: "External ID" + external_username: "Username" + external_name: "Name" + external_email: "Email" + external_avatar_url: "Profile Picture URL" + + user_fields: + title: "User Fields" + help: "Add fields that your users can fill out." + create: "Create User Field" + untitled: "Untitled" + name: "Field Name" + type: "Field Type" + description: "Field Description" + save: "Save" + edit: "Edit" + delete: "Delete" + cancel: "Cancel" + delete_confirm: "Are you sure you want to delete that user field?" + options: "Options" + required: + title: "Required at signup?" + enabled: "required" + disabled: "not required" + editable: + title: "Editable after signup?" + enabled: "editable" + disabled: "not editable" + show_on_profile: + title: "Show on public profile?" + enabled: "shown on profile" + disabled: "not shown on profile" + show_on_user_card: + title: "Show on user card?" + enabled: "shown on user card" + disabled: "not shown on user card" + + field_types: + text: 'Text Field' + confirm: 'Confirmation' + dropdown: "Dropdown" + + site_text: + description: "You can customize any of the text on your forum. Please start by searching below:" + search: "Search for the text you'd like to edit" + title: 'Text Content' + edit: 'edit' + revert: "Revert Changes" + revert_confirm: "Are you sure you want to revert your changes?" + go_back: "Back to Search" + recommended: "We recommend customizing the following text to suit your needs:" + show_overriden: 'Only show overridden' + + site_settings: + show_overriden: 'Only show overridden' + title: 'Settings' + reset: 'reset' + none: 'none' + no_results: "No results found." + clear_filter: "Clear" + add_url: "add URL" + add_host: "add host" + categories: + all_results: 'All' + required: 'Required' + basic: 'Basic Setup' + users: 'Users' + posting: 'Posting' + email: 'Email' + files: 'Files' + trust: 'Trust Levels' + security: 'Security' + onebox: "Onebox" + seo: 'SEO' + spam: 'Spam' + rate_limits: 'Rate Limits' + developer: 'Developer' + embedding: "Embedding" + legal: "Legal" + user_api: 'User API' + uncategorized: 'Other' + backups: "Backups" + login: "Login" + plugins: "Plugins" + user_preferences: "User Preferences" + tags: "Tags" + search: "Search" + + badges: + title: Badges + new_badge: New Badge + new: New + name: Name + badge: Badge + display_name: Display Name + description: Description + long_description: Long Description + badge_type: Badge Type + badge_grouping: Group + badge_groupings: + modal_title: Badge Groupings + granted_by: Granted By + granted_at: Granted At + reason_help: (A link to a post or topic) + save: Save + delete: Delete + delete_confirm: Are you sure you want to delete this badge? + revoke: Revoke + reason: Reason + expand: Expand … + revoke_confirm: Are you sure you want to revoke this badge? + edit_badges: Edit Badges + grant_badge: Grant Badge + granted_badges: Granted Badges + grant: Grant + no_user_badges: "%{name} has not been granted any badges." + no_badges: There are no badges that can be granted. + none_selected: "Select a badge to get started" + allow_title: Allow badge to be used as a title + multiple_grant: Can be granted multiple times + listable: Show badge on the public badges page + enabled: Enable badge + icon: Icon + image: Image + icon_help: "Use either a Font Awesome class or URL to an image" + query: Badge Query (SQL) + target_posts: Query targets posts + auto_revoke: Run revocation query daily + show_posts: Show post granting badge on badge page + trigger: Trigger + trigger_type: + none: "Update daily" + post_action: "When a user acts on post" + post_revision: "When a user edits or creates a post" + trust_level_change: "When a user changes trust level" + user_change: "When a user is edited or created" + post_processed: "After a post is processed" + preview: + link_text: "Preview granted badges" + plan_text: "Preview with query plan" + modal_title: "Badge Query Preview" + sql_error_header: "There was an error with the query." + error_help: "See the following links for help with badge queries." + bad_count_warning: + header: "WARNING!" + text: "There are missing grant samples. This happens when the badge query returns user IDs or post IDs that do not exist. This may cause unexpected results later on - please double-check your query." + no_grant_count: "No badges to be assigned." + grant_count: + one: "1 badge to be assigned." + other: "%{count} badges to be assigned." + sample: "Sample:" + grant: + with: %{username} + with_post: %{username} for post in %{link} + with_post_time: %{username} for post in %{link} at %{time} + with_time: %{username} at %{time} + + emoji: + title: "Emoji" + help: "Add new emoji that will be available to everyone. (PROTIP: drag & drop multiple files at once)" + add: "Add New Emoji" + name: "Name" + image: "Image" + delete_confirm: "Are you sure you want to delete the :%{name}: emoji?" + + embedding: + get_started: "If you'd like to embed Discourse on another website, begin by adding its host." + confirm_delete: "Are you sure you want to delete that host?" + sample: "Use the following HTML code into your site to create and embed discourse topics. Replace REPLACE_ME with the canonical URL of the page you are embedding it on." + title: "Embedding" + host: "Allowed Hosts" + path_whitelist: "Path Whitelist" + edit: "edit" + category: "Post to Category" + add_host: "Add Host" + settings: "Embedding Settings" + feed_settings: "Feed Settings" + feed_description: "Providing an RSS/ATOM feed for your site can improve Discourse's ability to import your content." + crawling_settings: "Crawler Settings" + crawling_description: "When Discourse creates topics for your posts, if no RSS/ATOM feed is present it will attempt to parse your content out of your HTML. Sometimes it can be challenging to extract your content, so we provide the ability to specify CSS rules to make extraction easier." + + embed_by_username: "Username for topic creation" + embed_post_limit: "Maximum number of posts to embed" + embed_username_key_from_feed: "Key to pull discourse username from feed" + embed_title_scrubber: "Regular expression used to scrub the title of posts" + embed_truncate: "Truncate the embedded posts" + embed_whitelist_selector: "CSS selector for elements that are allowed in embeds" + embed_blacklist_selector: "CSS selector for elements that are removed from embeds" + embed_classname_whitelist: "Allowed CSS class names" + feed_polling_enabled: "Import posts via RSS/ATOM" + feed_polling_url: "URL of RSS/ATOM feed to crawl" + save: "Save Embedding Settings" + + permalink: + title: "Permalinks" + url: "URL" + topic_id: "Topic ID" + topic_title: "Topic" + post_id: "Post ID" + post_title: "Post" + category_id: "Category ID" + category_title: "Category" + external_url: "External URL" + delete_confirm: Are you sure you want to delete this permalink? + form: + label: "New:" + add: "Add" + filter: "Search (URL or External URL)" + + wizard_js: + wizard: + done: "Done" + back: "Back" + next: "Next" + step: "%{current} of %{total}" + upload: "Upload" + uploading: "Uploading..." + quit: "Maybe Later" + + staff_count: + one: "Your community has 1 staff member. " + other: "Your community has %{count} staff members." + + invites: + add_user: "add" + none_added: "You haven’t invited any staff. Are you sure you want to continue?" + roles: + admin: "Admin" + moderator: "Moderator" + regular: "Regular User" diff --git a/config/locales/server.ur.yml b/config/locales/server.ur.yml new file mode 100644 index 00000000000..7dbd43329c0 --- /dev/null +++ b/config/locales/server.ur.yml @@ -0,0 +1,3379 @@ +# encoding: utf-8 +# This file contains content for the server portion of Discourse used by Ruby +# +# To work with us on translations, see: +# https://www.transifex.com/projects/p/discourse-org/ +# +# This is a "source" file, which is used by Transifex to get translations for other languages. +# After this file is changed, it needs to be pushed by a maintainer to Transifex: +# +# tx push -s +# +# Read more here: https://meta.discourse.org/t/contribute-a-translation-to-discourse/14882 +# +# To validate this YAML file after you change it, please paste it into +# http://yamllint.com/ + +ur: + dates: + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + short_date_no_year: "D MMM" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + short_date: "D MMM, YYYY" + # Use Moment.js format string: http://momentjs.com/docs/#/displaying/format/ + long_date: "MMMM D, YYYY h:mma" + + datetime_formats: &datetime_formats + formats: + # Format directives: http://ruby-doc.org/core-2.3.1/Time.html#method-i-strftime + short: "%m-%d-%Y" + # Format directives: http://ruby-doc.org/core-2.3.1/Time.html#method-i-strftime + short_no_year: "%B %-d" + # Format directives: http://ruby-doc.org/core-2.3.1/Time.html#method-i-strftime + date_only: "%B %-d, %Y" + # Format directives: http://ruby-doc.org/core-2.3.1/Time.html#method-i-strftime + long: "%B %-d, %Y, %l:%M%P" + date: + # Do not remove the brackets and commas and do not translate the first month name. It should be "null". + month_names: + [~, January, February, March, April, May, June, July, August, September, October, November, December] + <<: *datetime_formats + time: + <<: *datetime_formats + am: "am" + pm: "pm" + + title: "Discourse" + topics: "Topics" + posts: "posts" + loading: "Loading" + powered_by_html: 'Powered by Discourse, best viewed with JavaScript enabled' + log_in: "Log In" + + purge_reason: "Automatically deleted as abandoned, deactivated account" + disable_remote_images_download_reason: "Remote images download was disabled because there wasn't enough disk space available." + anonymous: "Anonymous" + + emails: + incoming: + default_subject: "Incoming email from %{email}" + show_trimmed_content: "Show trimmed content" + maximum_staged_user_per_email_reached: "Reached maximum number of staged users created per email." + errors: + empty_email_error: "Happens when the raw mail we received was blank." + no_message_id_error: "Happens when the mail has no 'Message-Id' header." + auto_generated_email_error: "Happens when the 'precedence' header is set to: list, junk, bulk or auto_reply, or when any other header contains: auto-submitted, auto-replied or auto-generated." + no_body_detected_error: "Happens when we couldn't extract a body and there were no attachments." + inactive_user_error: "Happens when the sender is not active." + blocked_user_error: "Happens when the sender has been blocked." + bad_destination_address: "Happens when none of the email addresses in To/Cc/Bcc fields matched a configured incoming email address." + strangers_not_allowed_error: "Happens when a user tried to create a new topic in a category they're not a member of." + insufficient_trust_level_error: "Happens when a user tried to create a new topic in a category they don't have the required trust level for." + reply_user_not_matching_error: "Happens when a reply came in from a different email address the notification was sent to." + topic_not_found_error: "Happens when a reply came in but the related topic has been deleted." + topic_closed_error: "Happens when a reply came in but the related topic has been closed." + bounced_email_error: "Email is a bounced email report." + screened_email_error: "Happens when the sender's email address was already screened." + + errors: &errors + format: ! '%{attribute} %{message}' + messages: + too_long_validation: "is limited to %{max} characters; you entered %{length}." + invalid_boolean: "Invalid boolean." + taken: "has already been taken" + accepted: must be accepted + blank: can't be blank + present: must be blank + confirmation: ! "doesn't match %{attribute}" + empty: can't be empty + equal_to: must be equal to %{count} + even: must be even + exclusion: is reserved + greater_than: must be greater than %{count} + greater_than_or_equal_to: must be greater than or equal to %{count} + has_already_been_used: "has already been used" + inclusion: is not included in the list + invalid: is invalid + is_invalid: "seems unclear, is it a complete sentence?" + less_than: must be less than %{count} + less_than_or_equal_to: must be less than or equal to %{count} + not_a_number: is not a number + not_an_integer: must be an integer + odd: must be odd + record_invalid: ! 'Validation failed: %{errors}' + restrict_dependent_destroy: + one: "Cannot delete record because a dependent %{record} exists" + many: "Cannot delete record because dependent %{record} exist" + too_long: + one: is too long (maximum is 1 character) + other: is too long (maximum is %{count} characters) + too_short: + one: is too short (minimum is 1 character) + other: is too short (minimum is %{count} characters) + wrong_length: + one: is the wrong length (should be 1 character) + other: is the wrong length (should be %{count} characters) + other_than: "must be other than %{count}" + template: + body: ! 'There were problems with the following fields:' + header: + one: 1 error prohibited this %{model} from being saved + other: ! '%{count} errors prohibited this %{model} from being saved' + embed: + load_from_remote: "There was an error loading that post." + site_settings: + min_username_length_exists: "You cannot set the minimum username length above the shortest username." + min_username_length_range: "You cannot set the minimum above the maximum." + max_username_length_exists: "You cannot set the maximum username length below the longest username." + max_username_length_range: "You cannot set the maximum below the minimum." + default_categories_already_selected: "You cannot select a category used in another list." + s3_upload_bucket_is_required: "You cannot enable uploads to S3 unless you've provided the 's3_upload_bucket'." + + activemodel: + errors: + <<: *errors + + bulk_invite: + file_should_be_csv: "The uploaded file should be of csv or txt format." + + backup: + operation_already_running: "An operation is currently running. Can't start a new job right now." + backup_file_should_be_tar_gz: "The backup file should be a .tar.gz archive." + not_enough_space_on_disk: "There is not enough space on disk to upload this backup." + invalid_filename: "The backup filename contains invalid characters. Valid characters are a-z 0-9 . - _." + + not_logged_in: "You need to be logged in to do that." + not_found: "The requested URL or resource could not be found." + invalid_access: "You are not permitted to view the requested resource." + read_only_mode_enabled: "The site is in read only mode. Interactions are disabled." + + reading_time: "Reading time" + likes: "Likes" + + too_many_replies: + one: "We're sorry, but new users are temporarily limited to 1 reply in the same topic." + other: "We're sorry, but new users are temporarily limited to %{count} replies in the same topic." + + embed: + start_discussion: "Start Discussion" + continue: "Continue Discussion" + more_replies: + one: "1 more reply" + other: "%{count} more replies" + + loading: "Loading Discussion..." + permalink: "Permalink" + imported_from: "This is a companion discussion topic for the original entry at %{link}" + in_reply_to: "▶ %{username}" + replies: + one: "1 reply" + other: "%{count} replies" + + no_mentions_allowed: "Sorry, you can't mention other users." + too_many_mentions: + one: "Sorry, you can only mention one other user in a post." + other: "Sorry, you can only mention %{count} users in a post." + no_mentions_allowed_newuser: "Sorry, new users can't mention other users." + too_many_mentions_newuser: + one: "Sorry, new users can only mention one other user in a post." + other: "Sorry, new users can only mention %{count} users in a post." + no_images_allowed: "Sorry, new users can't put images in posts." + too_many_images: + one: "Sorry, new users can only put one image in a post." + other: "Sorry, new users can only put %{count} images in a post." + no_attachments_allowed: "Sorry, new users can't put attachments in posts." + too_many_attachments: + one: "Sorry, new users can only put one attachment in a post." + other: "Sorry, new users can only put %{count} attachments in a post." + no_links_allowed: "Sorry, new users can't put links in posts." + too_many_links: + one: "Sorry, new users can only put one link in a post." + other: "Sorry, new users can only put %{count} links in a post." + + spamming_host: "Sorry you cannot post a link to that host." + user_is_suspended: "Suspended users are not allowed to post." + topic_not_found: "Something has gone wrong. Perhaps this topic was closed or deleted while you were looking at it?" + + just_posted_that: "is too similar to what you recently posted" + invalid_characters: "contains invalid characters" + is_invalid: "seems unclear, is it a complete sentence?" + next_page: "next page →" + prev_page: "← previous page" + page_num: "Page %{num}" + home_title: "Home" + topics_in_category: "Topics in the '%{category}' category" + rss_posts_in_topic: "RSS feed of '%{topic}'" + rss_topics_in_category: "RSS feed of topics in the '%{category}' category" + author_wrote: "%{author} wrote:" + num_posts: "Posts:" + num_participants: "Participants:" + read_full_topic: "Read full topic" + private_message_abbrev: "Msg" + rss_description: + latest: "Latest topics" + hot: "Hot topics" + top: "Top topics" + posts: "Latest posts" + private_posts: "Latest private messages" + group_posts: "Latest posts from %{group_name}" + group_mentions: "Latest mentions from %{group_name}" + user_posts: "Latest posts by @%{username}" + user_topics: "Latest topics by @%{username}" + tag: "Tagged topics" + too_late_to_edit: "That post was created too long ago. It can no longer be edited or deleted." + revert_version_same: "The current version is same as the version you are trying to revert to." + + excerpt_image: "image" + + queue: + delete_reason: "Deleted via post moderation queue" + + groups: + errors: + can_not_modify_automatic: "You cannot modify an automatic group" + member_already_exist: "'%{username}' is already a member of this group." + invalid_domain: "'%{domain}' is not a valid domain." + invalid_incoming_email: "'%{email}' is not a valid email address." + email_already_used_in_group: "'%{email}' is already used by the group '%{group_name}'." + email_already_used_in_category: "'%{email}' is already used by the category '%{category_name}'." + default_names: + everyone: "everyone" + admins: "admins" + moderators: "moderators" + staff: "staff" + trust_level_0: "trust_level_0" + trust_level_1: "trust_level_1" + trust_level_2: "trust_level_2" + trust_level_3: "trust_level_3" + trust_level_4: "trust_level_4" + + education: + until_posts: + one: "1 post" + other: "%{count} posts" + + 'new-topic': | + Welcome to %{site_name} — **thanks for starting a new conversation!** + + - Does the title sound interesting if you read it out loud? Is it a good summary? + + - Who would be interested in this? Why does it matter? What kind of responses do you want? + + - Include commonly used words in your topic so others can *find* it. To group your topic with related topics, select a category. + + For more, [see our community guidelines](/guidelines). This panel will only appear for your first %{education_posts_text}. + + 'new-reply': | + Welcome to %{site_name} — **thanks for contributing!** + + - Does your reply improve the conversation in some way? + + - Be kind to your fellow community members. + + - Constructive criticism is welcome, but criticize *ideas*, not people. + + For more, [see our community guidelines](/guidelines). This panel will only appear for your first %{education_posts_text}. + + avatar: | + ### How about a picture for your account? + + You've posted a few topics and replies, but your profile picture isn't as unique as you are -- it's just a letter. + + Have you considered **[visiting your user profile](%{profile_path})** and uploading a picture that represents you? + + It's easier to follow discussions and find interesting people in conversations when everyone has a unique profile picture! + + sequential_replies: | + ### Consider replying to several posts at once + + Rather than many sequential replies to a topic, please consider a single reply that includes quotes from previous posts or @name references. + + You can edit your previous reply to add a quote by highlighting text and selecting the quote reply button that appears. + + It's easier for everyone to read topics that have fewer in-depth replies versus lots of small, individual replies. + + dominating_topic: | + ### Let others join the conversation + + This topic is clearly important to you – you've posted more than %{percent}% of the replies here. + + Are you sure you're providing adequate time for other people to share their points of view, too? + + too_many_replies: | + ### You have reached the reply limit for this topic + + We're sorry, but new users are temporarily limited to %{newuser_max_replies_per_topic} replies in the same topic. + + Instead of adding another reply, please consider editing your previous replies, or visiting other topics. + + reviving_old_topic: | + ### Revive this topic? + + The last reply to this topic is now over %{days} days old. Your reply will bump the topic to the top of its list and notify anyone previously involved in the conversation. + + Are you sure you want to continue this old conversation? + + activerecord: + attributes: + category: + name: "Category Name" + topic: + title: 'Title' + post: + raw: "Body" + user_profile: + bio_raw: "About Me" + user: + ip_address: "" + errors: + <<: *errors + models: + topic: + attributes: + base: + warning_requires_pm: "You can only attach warnings to private messages." + too_many_users: "You can only send warnings to one user at a time." + cant_send_pm: "Sorry, you cannot send a private message to that user." + no_user_selected: "You must select a valid user." + user: + attributes: + password: + common: "is one of the 10000 most common passwords. Please use a more secure password." + same_as_username: "is the same as your username. Please use a more secure password." + same_as_email: "is the same as your email. Please use a more secure password." + same_as_current: "is the same as your current password." + ip_address: + signup_not_allowed: "Signup is not allowed from this account." + color_scheme_color: + attributes: + hex: + invalid: "is not a valid color" + post_reply: + base: + different_topic: "Post and reply must belong to the same topic." + web_hook: + attributes: + payload_url: + invalid: "URL is invalid. URL should includes http:// or https://. And no blank is allowed." + + user_profile: + no_info_me: "
the About Me field of your profile is currently blank, would you like to fill it out?
" + no_info_other: "
%{name} hasn't entered anything in the About Me field of their profile yet
" + + vip_category_name: "Lounge" + vip_category_description: "A category exclusive to members with trust level 3 and higher." + + meta_category_name: "Site Feedback" + meta_category_description: "Discussion about this site, its organization, how it works, and how we can improve it." + + staff_category_name: "Staff" + staff_category_description: "Private category for staff discussions. Topics are only visible to admins and moderators." + + assets_topic_body: "This is a permanent topic, visible only to staff, for storing images and files used in the site design. Don't delete it!\n\n\nHere's how:\n\n\n1. Reply to this topic.\n2. Upload all the images you wish to use for logos, favicons, and so forth here. (Use the upload toolbar icon in the post editor, or drag-and-drop or paste images.)\n3. Submit your reply to post it.\n4. Right click the images in your new post to get the path to the uploaded images, or click the edit icon to edit your post and retrieve the path to the images. Copy the image paths.\n5. Paste those image paths into [basic settings](/admin/site_settings/category/required).\n\n\nIf you need to enable different file type uploads, edit `authorized_extensions` in the [file settings](/admin/site_settings/category/files)." + + lounge_welcome: + title: "Welcome to the Lounge" + body: | + + Congratulations! :confetti_ball: + + If you can see this topic, you were recently promoted to **regular** (trust level 3). + + You can now … + + * Edit the title of any topic + * Change the category of any topic + * Have all your links followed ([automatic nofollow](http://en.wikipedia.org/wiki/Nofollow) is removed) + * Access a private Lounge category only visible to users at trust level 3 and higher + * Hide spam with a single flag + + Here's the [current list of fellow regulars](/badges/3/regular). Be sure to say hi. + + Thanks for being an important part of this community! + + (For more information on trust levels, [see this topic][trust]. Please note that only members who continue to meet the requirements over time will remain regulars.) + + [trust]: https://meta.discourse.org/t/what-do-user-trust-levels-do/4924 + + + category: + topic_prefix: "About the %{category} category" + replace_paragraph: "(Replace this first paragraph with a brief description of your new category. This guidance will appear in the category selection area, so try to keep it below 200 characters. **Until you edit this description or create topics, this category won't appear on the categories page.**)" + post_template: "%{replace_paragraph}\n\nUse the following paragraphs for a longer description, or to establish category guidelines or rules:\n\n- Why should people use this category? What is it for?\n\n- How exactly is this different than the other categories we already have?\n\n- What should topics in this category generally contain?\n\n- Do we need this category? Can we merge with another category, or subcategory?\n" + errors: + uncategorized_parent: "Uncategorized can't have a parent category" + self_parent: "A subcategory's parent cannot be itself" + depth: "You can't nest a subcategory under another" + invalid_email_in: "'%{email}' is not a valid email address." + email_already_used_in_group: "'%{email}' is already used by the group '%{group_name}'." + email_already_used_in_category: "'%{email}' is already used by the category '%{category_name}'." + cannot_delete: + uncategorized: "Can't delete Uncategorized" + has_subcategories: "Can't delete this category because it has sub-categories." + topic_exists: + one: "Can't delete this category because is has 1 topic. Oldest topic is %{topic_link}." + other: "Can't delete this category because it has %{count} topics. Oldest topic is %{topic_link}." + topic_exists_no_oldest: "Can't delete this category because topic count is %{count}." + uncategorized_description: "Topics that don't need a category, or don't fit into any other existing category." + trust_levels: + newuser: + title: "new user" + basic: + title: "basic user" + member: + title: "member" + regular: + title: "regular" + leader: + title: "leader" + change_failed_explanation: "You attempted to demote %{user_name} to '%{new_trust_level}'. However their trust level is already '%{current_trust_level}'. %{user_name} will remain at '%{current_trust_level}' - if you wish to demote user lock trust level first" + + + rate_limiter: + slow_down: "You have performed this action too many times, try again later." + too_many_requests: "We have a daily limit on how many times that action can be taken. Please wait %{time_left} before trying again." + by_type: + first_day_replies_per_day: "You've reached the maximum number of replies a new user can create on their first day. Please wait %{time_left} before trying again." + first_day_topics_per_day: "You've reached the maximum number of topics a new user can create on their first day. Please wait %{time_left} before trying again." + create_topic: "You're creating topics too quickly. Please wait %{time_left} before trying again." + create_post: "You're replying too quickly. Please wait %{time_left} before trying again." + delete_post: "You're deleting posts too quickly. Please wait %{time_left} before trying again." + topics_per_day: "You've reached the maximum number of new topics today. Please wait %{time_left} before trying again." + pms_per_day: "You've reached the maximum number of messages today. Please wait %{time_left} before trying again." + create_like: "You've reached the maximum number of likes today. Please wait %{time_left} before trying again." + create_bookmark: "You've reached the maximum number of bookmarks today. Please wait %{time_left} before trying again." + edit_post: "You've reached the maximun number of edits today. Please wait %{time_left} before trying again." + live_post_counts: "You're asking for live post counts too quickly. Please wait %{time_left} before trying again." + unsubscribe_via_email: "You've reached the maximum number of unsubscribe via email today. Please wait %{time_left} before trying again." + topic_invitations_per_day: "You've reached the maximum number of topic invitations today. Please wait %{time_left} before trying again." + + hours: + one: "1 hour" + other: "%{count} hours" + minutes: + one: "1 minute" + other: "%{count} minutes" + seconds: + one: "1 second" + other: "%{count} seconds" + + datetime: + distance_in_words: + half_a_minute: "< 1m" + less_than_x_seconds: + one: "< 1s" + other: "< %{count}s" + x_seconds: + one: "1s" + other: "%{count}s" + less_than_x_minutes: + one: "< 1m" + other: "< %{count}m" + x_minutes: + one: "1m" + other: "%{count}m" + about_x_hours: + one: "1h" + other: "%{count}h" + x_days: + one: "1d" + other: "%{count}d" + about_x_months: + one: "1mon" + other: "%{count}mon" + x_months: + one: "1mon" + other: "%{count}mon" + about_x_years: + one: "1y" + other: "%{count}y" + over_x_years: + one: "> 1y" + other: "> %{count}y" + almost_x_years: + one: "1y" + other: "%{count}y" + + distance_in_words_verbose: + half_a_minute: "just now" + less_than_x_seconds: + one: "just now" + other: "just now" + x_seconds: + one: "1 second ago" + other: "%{count} seconds ago" + less_than_x_minutes: + one: "less than 1 minute ago" + other: "less than %{count} minutes ago" + x_minutes: + one: "1 minute ago" + other: "%{count} minutes ago" + about_x_hours: + one: "1 hour ago" + other: "%{count} hours ago" + x_days: + one: "1 day ago" + other: "%{count} days ago" + about_x_months: + one: "about 1 month ago" + other: "about %{count} months ago" + x_months: + one: "1 month ago" + other: "%{count} months ago" + about_x_years: + one: "about 1 year ago" + other: "about %{count} years ago" + over_x_years: + one: "over 1 year ago" + other: "over %{count} years ago" + almost_x_years: + one: "almost 1 year ago" + other: "almost %{count} years ago" + + password_reset: + no_token: "Sorry, that password change link is too old. Select the Log In button and use 'I forgot my password' to get a new link." + choose_new: "Please choose a new password" + choose: "Please choose a password" + update: 'Update Password' + save: 'Set Password' + title: 'Reset Password' + success: "You successfully changed your password and are now logged in." + success_unapproved: "You successfully changed your password." + continue: "Continue to %{site_name}" + + change_email: + confirmed: "Your email has been updated." + please_continue: "Continue to %{site_name}" + error: "There was an error changing your email address. Perhaps the address is already in use?" + error_staged: "There was an error changing your email address. The address is already in use by a staged user." + already_done: "Sorry, this confirmation link is no longer valid. Perhaps your email was already changed?" + authorizing_old: + title: "Thanks for confirming your current email address" + description: "We're now emailing your new address for confirmation." + + activation: + action: "Click here to activate your account" + already_done: "Sorry, this account confirmation link is no longer valid. Perhaps your account is already active?" + please_continue: "Your new account is confirmed; you will be redirected to the home page." + continue_button: "Continue to %{site_name}" + welcome_to: "Welcome to %{site_name}!" + approval_required: "A moderator must manually approve your new account before you can access this forum. You'll get an email when your account is approved!" + missing_session: "We cannot detect if your account was created, please ensure you have cookies enabled." + post_action_types: + off_topic: + title: 'Off-Topic' + description: 'This post is not relevant to the current discussion as defined by the title and first post, and should probably be moved elsewhere.' + long_form: 'flagged this as off-topic' + spam: + title: 'Spam' + description: 'This post is an advertisement. It is not useful or relevant to the current topic, but promotional in nature.' + long_form: 'flagged this as spam' + email_title: '"%{title}" was flagged as spam' + email_body: "%{link}\n\n%{message}" + inappropriate: + title: 'Inappropriate' + description: 'This post contains content that a reasonable person would consider offensive, abusive, or a violation of our community guidelines.' + long_form: 'flagged this as inappropriate' + notify_user: + title: 'Send @{{username}} a message' + description: 'I want to talk to this person directly and privately about their post.' + long_form: 'messaged user' + email_title: 'Your post in "%{title}"' + email_body: "%{link}\n\n%{message}" + notify_moderators: + title: "Something Else" + description: 'This post requires staff attention for another reason not listed above.' + long_form: 'flagged this for staff attention' + email_title: 'A post in "%{title}" requires staff attention' + email_body: "%{link}\n\n%{message}" + bookmark: + title: 'Bookmark' + description: 'Bookmark this post' + long_form: 'bookmarked this post' + like: + title: 'Like' + description: 'Like this post' + long_form: 'liked this' + vote: + title: 'Vote' + description: 'Vote for this post' + long_form: 'voted for this post' + + user_activity: + no_bookmarks: + self: "You have no bookmarked posts, bookmarking posts allows you to easily access them later on." + others: "No bookmarks." + no_likes_given: + self: "You have not liked any posts." + others: "No liked posts." + + topic_flag_types: + spam: + title: 'Spam' + description: 'This topic is an advertisement. It is not useful or relevant to this site, but promotional in nature.' + long_form: 'flagged this as spam' + inappropriate: + title: 'Inappropriate' + description: 'This topic contains content that a reasonable person would consider offensive, abusive, or a violation of our community guidelines.' + long_form: 'flagged this as inappropriate' + notify_moderators: + title: "Something Else" + description: 'This topic requires general staff attention based on the guidelines, TOS, or for another reason not listed above.' + long_form: 'flagged this for moderator attention' + email_title: 'The topic "%{title}" requires moderator attention' + email_body: "%{link}\n\n%{message}" + + flagging: + you_must_edit: '

Your post was flagged by the community. Please see your messages.

' + user_must_edit: '

This post was flagged by the community and is temporarily hidden.

' + + archetypes: + regular: + title: "Regular Topic" + banner: + title: "Banner Topic" + message: + make: "This topic is now a banner. It will appear at the top of every page until it is dismissed by the user." + remove: "This topic is no longer a banner. It will no longer appear at the top of every page." + + unsubscribed: + title: "Unsubscribed!" + description: "You have been unsubscribed. To change your email settings visit your user preferences." + topic_description: "To re-subscribe to %{link}, use the notification control at the bottom or right of the topic." + + unsubscribe: + title: "Unsubscribe" + stop_watching_topic: "Stop watching this topic, %{link}" + mute_topic: "Mute all notifications for this topic, %{link}" + unwatch_category: "Stop watching all topics in %{category}" + mailing_list_mode: "Turn off mailing list mode" + disable_digest_emails: "Stop sending me summary emails" + all: "Don't send me any mail from %{sitename}" + different_user_description: "You are currently logged in as a different user than the one we emailed. Please log out, or enter anonymous mode, and try again." + not_found_description: "Sorry, we couldn't find this unsubscribe. It's possible the link in your email has expired?" + log_out: "Log Out" + + user_api_key: + title: "Authorize application access" + authorize: "Authorize" + read: "read" + read_write: "read/write" + description: "\"%{application_name}\" is requesting the following access to your account:" + no_trust_level: "Sorry, you do not have the required trust level to access the user API" + generic_error: "Sorry, we are unable to issue user API keys, this feature may be disabled by the site admin" + scopes: + message_bus: "Live updates" + notifications: "Read and clear notifications" + push: "Push notifications to external services" + session_info: "Read user session info" + read: "Read all" + write: "Write all" + + reports: + visits: + title: "User Visits" + xaxis: "Day" + yaxis: "Number of visits" + signups: + title: "New Users" + xaxis: "Day" + yaxis: "Number of new users" + profile_views: + title: "User Profile Views" + xaxis: "Day" + yaxis: "Number of user profiles viewed" + topics: + title: "Topics" + xaxis: "Day" + yaxis: "Number of new topics" + posts: + title: "Posts" + xaxis: "Day" + yaxis: "Number of new posts" + likes: + title: "Likes" + xaxis: "Day" + yaxis: "Number of new likes" + flags: + title: "Flags" + xaxis: "Day" + yaxis: "Number of flags" + bookmarks: + title: "Bookmarks" + xaxis: "Day" + yaxis: "Number of new bookmarks" + starred: + title: "Starred" + xaxis: "Day" + yaxis: "Number of new starred topics" + users_by_trust_level: + title: "Users per Trust Level" + xaxis: "Trust Level" + yaxis: "Number of Users" + emails: + title: "Emails Sent" + xaxis: "Day" + yaxis: "Number of Emails" + user_to_user_private_messages: + title: "User-to-User" + xaxis: "Day" + yaxis: "Number of messages" + system_private_messages: + title: "System" + xaxis: "Day" + yaxis: "Number of messages" + moderator_warning_private_messages: + title: "Moderator Warning" + xaxis: "Day" + yaxis: "Number of messages" + notify_moderators_private_messages: + title: "Notify Moderators" + xaxis: "Day" + yaxis: "Number of messages" + notify_user_private_messages: + title: "Notify User" + xaxis: "Day" + yaxis: "Number of messages" + top_referrers: + title: "Top Referrers" + xaxis: "User" + num_clicks: "Clicks" + num_topics: "Topics" + top_traffic_sources: + title: "Top Traffic Sources" + xaxis: "Domain" + num_clicks: "Clicks" + num_topics: "Topics" + num_users: "Users" + top_referred_topics: + title: "Top Referred Topics" + xaxis: "Topic" + num_clicks: "Clicks" + page_view_anon_reqs: + title: "Anonymous" + xaxis: "Day" + yaxis: "Anonymous Pageviews" + page_view_logged_in_reqs: + title: "Logged In" + xaxis: "Day" + yaxis: "Logged In Pageviews" + page_view_crawler_reqs: + title: "Web Crawlers" + xaxis: "Day" + yaxis: "Web Crawler Pageviews" + page_view_total_reqs: + title: "Total" + xaxis: "Day" + yaxis: "Total Pageviews" + page_view_logged_in_mobile_reqs: + title: "Logged In Pageviews" + xaxis: "Day" + yaxis: "Mobile Logged In Pageviews" + page_view_anon_mobile_reqs: + title: "Anon Pageviews" + xaxis: "Day" + yaxis: "Mobile Anon Pageviews" + http_background_reqs: + title: "Background" + xaxis: "Day" + yaxis: "Requests used for live update and tracking" + http_2xx_reqs: + title: "Status 2xx (OK)" + xaxis: "Day" + yaxis: "Successful requests (Status 2xx)" + http_3xx_reqs: + title: "HTTP 3xx (Redirect)" + xaxis: "Day" + yaxis: "Redirect requests (Status 3xx)" + http_4xx_reqs: + title: "HTTP 4xx (Client Error)" + xaxis: "Day" + yaxis: "Client Errors (Status 4xx)" + http_5xx_reqs: + title: "HTTP 5xx (Server Error)" + xaxis: "Day" + yaxis: "Server Errors (Status 5xx)" + http_total_reqs: + title: "Total" + xaxis: "Day" + yaxis: "Total requests" + time_to_first_response: + title: "Time to first response" + xaxis: "Day" + yaxis: "Average time (hours)" + topics_with_no_response: + title: "Topics with no response" + xaxis: "Day" + yaxis: "Total" + mobile_visits: + title: "User Visits" + xaxis: "Day" + yaxis: "Number of visits" + + dashboard: + rails_env_warning: "Your server is running in %{env} mode." + host_names_warning: "Your config/database.yml file is using the default localhost hostname. Update it to use your site's hostname." + gc_warning: 'Your server is using default ruby garbage collection parameters, which will not give you the best performance. Read this topic on performance tuning: Tuning Ruby and Rails for Discourse.' + sidekiq_warning: 'Sidekiq is not running. Many tasks, like sending emails, are executed asynchronously by sidekiq. Please ensure at least one sidekiq process is running. Learn about Sidekiq here.' + queue_size_warning: 'The number of queued jobs is %{queue_size}, which is high. This could indicate a problem with the Sidekiq process(es), or you may need to add more Sidekiq workers.' + memory_warning: 'Your server is running with less than 1 GB of total memory. At least 1 GB of memory is recommended.' + google_oauth2_config_warning: 'The server is configured to allow signup and log in with Google OAuth2 (enable_google_oauth2_logins), but the client id and client secret values are not set. Go to the Site Settings and update the settings. See this guide to learn more.' + facebook_config_warning: 'The server is configured to allow signup and log in with Facebook (enable_facebook_logins), but the app id and app secret values are not set. Go to the Site Settings and update the settings. See this guide to learn more.' + twitter_config_warning: 'The server is configured to allow signup and log in with Twitter (enable_twitter_logins), but the key and secret values are not set. Go to the Site Settings and update the settings. See this guide to learn more.' + github_config_warning: 'The server is configured to allow signup and log in with GitHub (enable_github_logins), but the client id and secret values are not set. Go to the Site Settings and update the settings. See this guide to learn more.' + s3_config_warning: 'The server is configured to upload files to s3, but at least one the following setting is not set: s3_access_key_id, s3_secret_access_key or s3_upload_bucket. Go to the Site Settings and update the settings. See "How to set up image uploads to S3?" to learn more.' + s3_backup_config_warning: 'The server is configured to upload backups to s3, but at least one the following setting is not set: s3_access_key_id, s3_secret_access_key or s3_backup_bucket. Go to the Site Settings and update the settings. See "How to set up image uploads to S3?" to learn more.' + image_magick_warning: 'The server is configured to create thumbnails of large images, but ImageMagick is not installed. Install ImageMagick using your favorite package manager or download the latest release.' + failing_emails_warning: 'There are %{num_failed_jobs} email jobs that failed. Check your app.yml and ensure that the mail server settings are correct. See the failed jobs in Sidekiq.' + subfolder_ends_in_slash: "Your subfolder setup is incorrect; the DISCOURSE_RELATIVE_URL_ROOT ends in a slash." + email_polling_errored_recently: + one: "Email polling has generated an error in the past 24 hours. Look at the logs for more details." + other: "Email polling has generated %{count} errors in the past 24 hours. Look at the logs for more details." + missing_mailgun_api_key: "The server is configured to send emails via mailgun but you haven't provided an API key used the verify the webhook messages." + bad_favicon_url: "The favicon is failing to load. Check your favicon_url setting in Site Settings." + poll_pop3_timeout: "Connection to the POP3 server is timing out. Incoming email could not be retrieved. Please check your POP3 settings and service provider." + poll_pop3_auth_error: "Connection to the POP3 server is failing with an authentication error. Please check your POP3 settings." + + site_settings: + censored_words: "Words that will be automatically replaced with ■■■■" + censored_pattern: "Regex pattern that will be automatically replaced with ■■■■" + delete_old_hidden_posts: "Auto-delete any hidden posts that stay hidden for more than 30 days." + default_locale: "The default language of this Discourse instance (ISO 639-1 Code)" + allow_user_locale: "Allow users to choose their own language interface preference" + set_locale_from_accept_language_header: "set interface language for anonymous users from their web browser's language headers. (EXPERIMENTAL, does not work with anonymous cache)" + min_post_length: "Minimum allowed post length in characters" + min_first_post_length: "Minimum allowed first post (topic body) length in characters" + min_private_message_post_length: "Minimum allowed post length in characters for messages" + max_post_length: "Maximum allowed post length in characters" + min_topic_title_length: "Minimum allowed topic title length in characters" + max_topic_title_length: "Maximum allowed topic title length in characters" + min_private_message_title_length: "Minimum allowed title length for a message in characters" + min_search_term_length: "Minimum valid search term length in characters" + search_tokenize_chinese_japanese_korean: "Force search to tokenize Chinese/Japanese/Korean even on non CJK sites" + search_prefer_recent_posts: "If searching your large forum is slow, this option tries an index of more recent posts first" + search_recent_posts_size: "How many recent posts to keep in the index" + allow_uncategorized_topics: "Allow topics to be created without a category. WARNING: If there are any uncategorized topics, you must recategorize them before turning this off." + allow_duplicate_topic_titles: "Allow topics with identical, duplicate titles." + unique_posts_mins: "How many minutes before a user can make a post with the same content again" + educate_until_posts: "When the user starts typing their first (n) new posts, show the pop-up new user education panel in the composer." + title: "The name of this site, as used in the title tag." + site_description: "Describe this site in one sentence, as used in the meta description tag." + contact_email: "Email address of key contact responsible for this site. Used for critical notifications such as unhandled flags, as well as on the /about contact form for urgent matters." + contact_url: "Contact URL for this site. Used on the /about contact form for urgent matters." + queue_jobs: "DEVELOPER ONLY! WARNING! By default, queue jobs in sidekiq. If disabled, your site will be broken." + crawl_images: "Retrieve images from remote URLs to insert the correct width and height dimensions." + download_remote_images_to_local: "Convert remote images to local images by downloading them; this prevents broken images." + download_remote_images_threshold: "Minimum disk space necessary to download remote images locally (in percent)" + download_remote_images_max_days_old: "Don't download remote images for posts that are more than n days old." + disabled_image_download_domains: "Remote images will never be downloaded from these domains. Pipe-delimited list." + editing_grace_period: "For (n) seconds after posting, editing will not create a new version in the post history." + post_edit_time_limit: "The author can edit or delete their post for (n) minutes after posting. Set to 0 for forever." + edit_history_visible_to_public: "Allow everyone to see previous versions of an edited post. When disabled, only staff members can view." + delete_removed_posts_after: "Posts removed by the author will be automatically deleted after (n) hours. If set to 0, posts will be deleted immediately." + max_image_width: "Maximum thumbnail width of images in a post" + max_image_height: "Maximum thumbnail height of images in a post" + category_featured_topics: "Number of topics displayed per category on the /categories page. After changing this value, it takes up to 15 minutes for the categories page to update." + show_subcategory_list: "Show subcategory list instead of topic list when entering a category." + fixed_category_positions: "If checked, you will be able to arrange categories into a fixed order. If unchecked, categories are listed in order of activity." + fixed_category_positions_on_create: "If checked, category ordering will be maintained on topic creation dialog (requires fixed_category_positions)." + add_rel_nofollow_to_user_content: "Add rel nofollow to all submitted user content, except for internal links (including parent domains). If you change this, you must rebake all posts with: \"rake posts:rebake\"" + exclude_rel_nofollow_domains: "A list of domains where nofollow should not be added to links. tld.com will automatically allow sub.tld.com as well. As a minimum, you should add the top-level domain of this site to help web crawlers find all content. If other parts of your website are at other domains, add those too." + + post_excerpt_maxlength: "Maximum length of a post excerpt / summary." + show_pinned_excerpt_mobile: "Show excerpt on pinned topics in mobile view." + show_pinned_excerpt_desktop: "Show excerpt on pinned topics in desktop view." + post_onebox_maxlength: "Maximum length of a oneboxed Discourse post in characters." + onebox_domains_blacklist: "A list of domains that will never be oneboxed." + max_oneboxes_per_post: "Maximum number of oneboxes in a post." + + logo_url: "The logo image at the top left of your site, should be a wide rectangle shape. If left blank site title text will be shown." + digest_logo_url: "The alternate logo image used at the top of your site's email summary. Should be a wide rectangle shape. Should not be an SVG image. If left blank `logo_url` will be used." + logo_small_url: "The small logo image at the top left of your site, should be a square shape, seen when scrolling down. If left blank a home glyph will be shown." + favicon_url: "A favicon for your site, see http://en.wikipedia.org/wiki/Favicon, to work correctly over a CDN it must be a png" + mobile_logo_url: "The fixed position logo image used at the top left of your mobile site. Should be a square shape. If left blank, `logo_url` will be used. eg: http://example.com/uploads/default/logo.png" + apple_touch_icon_url: "Icon used for Apple touch devices. Recommended size is 144px by 144px." + + notification_email: "The from: email address used when sending all essential system emails. The domain specified here must have SPF, DKIM and reverse PTR records set correctly for email to arrive." + email_custom_headers: "A pipe-delimited list of custom email headers" + email_subject: "Customizable subject format for standard emails. See https://meta.discourse.org/t/customize-subject-format-for-standard-emails/20801" + force_https: "Force your site to use HTTPS only. WARNING: do NOT enable this until you verify HTTPS is fully set up and working absolutely everywhere! Did you check your CDN, all social logins, and any external logos / dependencies to make sure they are all HTTPS compatible, too?" + summary_score_threshold: "The minimum score required for a post to be included in 'Summarize This Topic'" + summary_posts_required: "Minimum posts in a topic before 'Summarize This Topic' is enabled" + summary_likes_required: "Minimum likes in a topic before 'Summarize This Topic' is enabled" + summary_percent_filter: "When a user clicks 'Summarize This Topic', show the top % of posts" + summary_max_results: "Maximum posts returned by 'Summary This Topic'" + + enable_private_messages: "Allow trust level 1 (configurable via min trust level to send messages) users to create messages and reply to messages. Note that staff can always send messages no matter what." + + enable_long_polling: "Message bus used for notification can use long polling" + long_polling_base_url: "Base URL used for long polling (when a CDN is serving dynamic content, be sure to set this to origin pull) eg: http://origin.site.com" + long_polling_interval: "Amount of time the server should wait before responding to clients when there is no data to send (logged on users only)" + polling_interval: "When not long polling, how often should logged on clients poll in milliseconds" + anon_polling_interval: "How often should anonymous clients poll in milliseconds" + background_polling_interval: "How often should the clients poll in milliseconds (when the window is in the background)" + + flags_required_to_hide_post: "Number of flags that cause a post to be automatically hidden and message sent to the user (0 for never)" + cooldown_minutes_after_hiding_posts: "Number of minutes a user must wait before they can edit a post hidden via community flagging" + + max_topics_in_first_day: "The maximum number of topics a user is allowed to create in the 24 hour period after creating their first post" + max_replies_in_first_day: "The maximum number of replies a user is allowed to create in the 24 hour period after creating their first post" + + tl2_additional_likes_per_day_multiplier: "Increase limit of likes per day for tl2 (member) by multiplying with this number" + tl3_additional_likes_per_day_multiplier: "Increase limit of likes per day for tl3 (regular) by multiplying with this number" + tl4_additional_likes_per_day_multiplier: "Increase limit of likes per day for tl4 (leader) by multiplying with this number" + + num_spam_flags_to_block_new_user: "If a new user's posts get this many spam flags from num_users_to_block_new_user different users, hide all their posts and prevent future posting. 0 to disable." + num_users_to_block_new_user: "If a new user's posts get num_spam_flags_to_block_new_user spam flags from this many different users, hide all their posts and prevent future posting. 0 to disable." + num_tl3_flags_to_block_new_user: "If a new user's posts get this many flags from num_tl3_users_to_block_new_user different trust level 3 users, hide all their posts and prevent future posting. 0 to disable." + num_tl3_users_to_block_new_user: "If a new user's posts get num_tl3_flags_to_block_new_user flags from this many different trust level 3 users, hide all their posts and prevent future posting. 0 to disable." + notify_mods_when_user_blocked: "If a user is automatically blocked, send a message to all moderators." + flag_sockpuppets: "If a new user replies to a topic from the same IP address as the new user who started the topic, flag both of their posts as potential spam." + + traditional_markdown_linebreaks: "Use traditional linebreaks in Markdown, which require two trailing spaces for a linebreak." + allow_html_tables: "Allow tables to be entered in Markdown using HTML tags. TABLE, THEAD, TD, TR, TH will be whitelisted (requires full rebake on all old posts containing tables)" + post_undo_action_window_mins: "Number of minutes users are allowed to undo recent actions on a post (like, flag, etc)." + must_approve_users: "Staff must approve all new user accounts before they are allowed to access the site. WARNING: enabling this for a live site will revoke access for existing non-staff users!" + pending_users_reminder_delay: "Notify moderators if new users have been waiting for approval for longer than this many hours. Set to -1 to disable notifications." + maximum_session_age: "User will remain logged in for n hours since last visit" + ga_tracking_code: "OBSOLETE: Google analytics (ga.js) tracking code code, eg: UA-12345678-9; see http://google.com/analytics" + ga_domain_name: "OBSOLETE: Google analytics (ga.js) domain name, eg: mysite.com; see http://google.com/analytics" + ga_universal_tracking_code: "Google Universal Analytics (analytics.js) tracking code code, eg: UA-12345678-9; see http://google.com/analytics" + ga_universal_domain_name: "Google Universal Analytics (analytics.js) domain name, eg: mysite.com; see http://google.com/analytics" + gtm_container_id: "Google Tag Manager container id. eg: GTM-ABCDEF" + enable_escaped_fragments: "Fall back to Google's Ajax-Crawling API if no webcrawler is detected. See https://developers.google.com/webmasters/ajax-crawling/docs/learn-more" + enable_noscript_support: "Enable standard webcrawler search engine support via the noscript tag" + allow_moderators_to_create_categories: "Allow moderators to create new categories" + cors_origins: "Allowed origins for cross-origin requests (CORS). Each origin must include http:// or https://. The DISCOURSE_ENABLE_CORS env variable must be set to true to enable CORS." + use_admin_ip_whitelist: "Admins can only log in if they are at an IP address defined in the Screened IPs list (Admin > Logs > Screened Ips)." + top_menu: "Determine which items appear in the homepage navigation, and in what order. Example latest|new|unread|categories|top|read|posted|bookmarks" + post_menu: "Determine which items appear on the post menu, and in what order. Example like|edit|flag|delete|share|bookmark|reply" + post_menu_hidden_items: "The menu items to hide by default in the post menu unless an expansion ellipsis is clicked on." + share_links: "Determine which items appear on the share dialog, and in what order." + track_external_right_clicks: "Track external links that are right clicked (eg: open in new tab) disabled by default because it rewrites URLs" + site_contact_username: "A valid staff username to send all automated messages from. If left blank the default System account will be used." + send_welcome_message: "Send all new users a welcome message with a quick start guide." + suppress_reply_directly_below: "Don't show the expandable reply count on a post when there is only a single reply directly below this post." + suppress_reply_directly_above: "Don't show the expandable in-reply-to on a post when there is only a single reply directly above this post." + suppress_reply_when_quoting: "Don't show the expandable in-reply-to on a post when post quotes reply." + max_reply_history: "Maximum number of replies to expand when expanding in-reply-to" + topics_per_period_in_top_summary: "Number of top topics shown in the default top topics summary." + topics_per_period_in_top_page: "Number of top topics shown on the expanded 'Show More' top topics." + redirect_users_to_top_page: "Automatically redirect new and long absent users to the top page." + top_page_default_timeframe: "Default timeframe for the top view page." + show_email_on_profile: "Show a user's email on their profile (only visible to themselves and staff)" + prioritize_username_in_ux: "Show username first on user page, user card and posts (when disabled name is shown first)" + + email_token_valid_hours: "Forgot password / activate account tokens are valid for (n) hours." + email_token_grace_period_hours: "Forgot password / activate account tokens are still valid for a grace period of (n) hours after being redeemed." + + enable_badges: "Enable the badge system" + enable_whispers: "Allow staff private communication within topic. (experimental)" + + allow_index_in_robots_txt: "Specify in robots.txt that this site is allowed to be indexed by web search engines." + email_domains_blacklist: "A pipe-delimited list of email domains that users are not allowed to register accounts with. Example: mailinator.com|trashmail.net" + email_domains_whitelist: "A pipe-delimited list of email domains that users MUST register accounts with. WARNING: Users with email domains other than those listed will not be allowed!" + forgot_password_strict: "Don't inform users of an account's existence when they use the forgot password dialog." + log_out_strict: "When logging out, log out ALL sessions for the user on all devices" + version_checks: "Ping the Discourse Hub for version updates and show new version messages on the /admin dashboard" + new_version_emails: "Send an email to the contact_email address when a new version of Discourse is available." + + port: "DEVELOPER ONLY! WARNING! Use this HTTP port rather than the default of port 80. Leave blank for default of 80." + force_hostname: "DEVELOPER ONLY! WARNING! Specify a hostname in the URL. Leave blank for default." + + invite_expiry_days: "How long user invitation keys are valid, in days" + invite_passthrough_hours: "How long a user can use a previously redeemed invitation key to log in, in hours" + + invite_only: "Public registration is disabled, all new users must be explicitly invited by other members or staff." + + login_required: "Require authentication to read content on this site, disallow anonymous access." + + min_username_length: "Minimum username length in characters." + max_username_length: "Maximum username length in characters." + + reserved_usernames: "Usernames for which signup is not allowed." + + min_password_length: "Minimum password length." + min_admin_password_length: "Minimum password length for Admin." + block_common_passwords: "Don't allow passwords that are in the 10,000 most common passwords." + + enable_sso: "Enable single sign on via an external site (WARNING: USERS' EMAIL ADDRESSES *MUST* BE VALIDATED BY THE EXTERNAL SITE!)" + verbose_sso_logging: "Log verbose SSO related diagnostics to /logs" + enable_sso_provider: "Implement Discourse SSO provider protocol at the /session/sso_provider endpoint, requires sso_secret to be set" + sso_url: "URL of single sign on endpoint (must include http:// or https://)" + sso_secret: "Secret string used to cryptographically authenticate SSO information, be sure it is 10 characters or longer" + sso_overrides_bio: "Overrides user bio in user profile and prevents user from changing it" + sso_overrides_email: "Overrides local email with external site email from SSO payload on every login, and prevent local changes. (WARNING: discrepancies can occur due to normalization of local emails)" + sso_overrides_username: "Overrides local username with external site username from SSO payload on every login, and prevent local changes. (WARNING: discrepancies can occur due to differences in username length/requirements)" + sso_overrides_name: "Overrides local full name with external site full name from SSO payload on every login, and prevent local changes." + sso_overrides_avatar: "Overrides user avatar with external site avatar from SSO payload. If enabled, disabling allow_uploaded_avatars is highly recommended" + sso_not_approved_url: "Redirect unapproved SSO accounts to this URL" + + enable_local_logins: "Enable local username and password login based accounts. (Note: this must be enabled for invites to work)" + allow_new_registrations: "Allow new user registrations. Uncheck this to prevent anyone from creating a new account." + enable_signup_cta: "Show a notice to returning anonymous users prompting them to sign up for an account." + enable_yahoo_logins: "Enable Yahoo authentication" + + enable_google_oauth2_logins: "Enable Google Oauth2 authentication. This is the method of authentication that Google currently supports. Requires key and secret." + google_oauth2_client_id: "Client ID of your Google application." + google_oauth2_client_secret: "Client secret of your Google application." + + enable_twitter_logins: "Enable Twitter authentication, requires twitter_consumer_key and twitter_consumer_secret" + twitter_consumer_key: "Consumer key for Twitter authentication, registered at http://dev.twitter.com" + twitter_consumer_secret: "Consumer secret for Twitter authentication, registered at http://dev.twitter.com" + + enable_instagram_logins: "Enable Instagram authentication, requires instagram_consumer_key and instagram_consumer_secret" + instagram_consumer_key: "Consumer key for Instagram authentication" + instagram_consumer_secret: "Consumer secret Instagram authentication" + + enable_facebook_logins: "Enable Facebook authentication, requires facebook_app_id and facebook_app_secret" + facebook_app_id: "App id for Facebook authentication, registered at https://developers.facebook.com/apps" + facebook_app_secret: "App secret for Facebook authentication, registered at https://developers.facebook.com/apps" + facebook_request_extra_profile_details: "Request about me, location and website from facebook. (requires that your auth application be approved by facebook)" + + enable_github_logins: "Enable Github authentication, requires github_client_id and github_client_secret" + github_client_id: "Client id for Github authentication, registered at https://github.com/settings/applications" + github_client_secret: "Client secret for Github authentication, registered at https://github.com/settings/applications" + + readonly_mode_during_backup: "Enable read only mode while taking a backup" + allow_restore: "Allow restore, which can replace ALL site data! Leave false unless you plan to restore a backup" + maximum_backups: "The maximum amount of backups to keep on disk. Older backups are automatically deleted" + automatic_backups_enabled: "Run automatic backups as defined in backup frequency" + backup_frequency: "How frequently we create a site backup, in days." + enable_s3_backups: "Upload backups to S3 when complete. IMPORTANT: requires valid S3 credentials entered in Files settings." + s3_backup_bucket: "The remote bucket to hold backups. WARNING: Make sure it is a private bucket." + s3_disable_cleanup: "Disable the removal of backups from S3 when removed locally." + backup_time_of_day: "Time of day UTC when the backup should occur." + backup_with_uploads: "Include uploads in scheduled backups. Disabling this will only backup the database." + + active_user_rate_limit_secs: "How frequently we update the 'last_seen_at' field, in seconds" + verbose_localization: "Show extended localization tips in the UI" + previous_visit_timeout_hours: "How long a visit lasts before we consider it the 'previous' visit, in hours" + + top_topics_formula_log_views_multiplier: "value of log views multiplier (n) in top topics formula: `log(views_count) * (n) + op_likes_count * 0.5 + LEAST(likes_count / posts_count, 3) + 10 + log(posts_count)`" + top_topics_formula_first_post_likes_multiplier: "value of first post likes multiplier (n) in top topics formula: `log(views_count) * 2 + op_likes_count * (n) + LEAST(likes_count / posts_count, 3) + 10 + log(posts_count)`" + top_topics_formula_least_likes_per_post_multiplier: "value of least likes per post multiplier (n) in top topics formula: `log(views_count) * 2 + op_likes_count * 0.5 + LEAST(likes_count / posts_count, (n)) + 10 + log(posts_count)`" + + rebake_old_posts_count: "Number of old posts to be rebaked every 15 minutes." + + rate_limit_create_topic: "After creating a topic, users must wait (n) seconds before creating another topic." + rate_limit_create_post: "After posting, users must wait (n) seconds before creating another post." + rate_limit_new_user_create_topic: "After creating a topic, new users must wait (n) seconds before creating another topic." + rate_limit_new_user_create_post: "After posting, new users must wait (n) seconds before creating another post." + + max_likes_per_day: "Maximum number of likes per user per day." + max_flags_per_day: "Maximum number of flags per user per day." + max_bookmarks_per_day: "Maximum number of bookmarks per user per day." + max_edits_per_day: "Maximum number of edits per user per day." + max_topics_per_day: "Maximum number of topics a user can create per day." + max_private_messages_per_day: "Maximum number of messages users can create per day." + max_invites_per_day: "Maximum number of invites a user can send per day." + max_topic_invitations_per_day: "Maximum number of topic invitations a user can send per day." + + alert_admins_if_errors_per_minute: "Number of errors per minute in order to trigger an admin alert. A value of 0 disables this feature. NOTE: requires restart." + alert_admins_if_errors_per_hour: "Number of errors per hour in order to trigger an admin alert. A value of 0 disables this feature. NOTE: requires restart." + + categories_topics: "Number of topics to show in /categories page." + suggested_topics: "Number of suggested topics shown at the bottom of a topic." + limit_suggested_to_category: "Only show topics from the current category in suggested topics." + suggested_topics_max_days_old: "Suggested topics should not be more than n days old." + + clean_up_uploads: "Remove orphan unreferenced uploads to prevent illegal hosting. WARNING: you may want to back up of your /uploads directory before enabling this setting." + clean_orphan_uploads_grace_period_hours: "Grace period (in hours) before an orphan upload is removed." + purge_deleted_uploads_grace_period_days: "Grace period (in days) before a deleted upload is erased." + purge_unactivated_users_grace_period_days: "Grace period (in days) before a user who has not activated their account is deleted." + enable_s3_uploads: "Place uploads on Amazon S3 storage. IMPORTANT: requires valid S3 credentials (both access key id & secret access key)." + s3_use_iam_profile: 'Use AWS EC2 IAM role to retrieve keys. NOTE: enabling will override "s3 access key id" and "s3 secret access key" settings.' + s3_upload_bucket: "The Amazon S3 bucket name that files will be uploaded into. WARNING: must be lowercase, no periods, no underscores." + s3_access_key_id: "The Amazon S3 access key id that will be used to upload images." + s3_secret_access_key: "The Amazon S3 secret access key that will be used to upload images." + s3_region: "The Amazon S3 region name that will be used to upload images." + s3_cdn_url: "The CDN URL to use for all s3 assets (for example: https://cdn.somewhere.com). WARNING: after changing this setting you must rebake all old posts." + + avatar_sizes: "List of automatically generated avatar sizes." + + external_system_avatars_enabled: "Use external system avatars service." + external_system_avatars_url: "URL of the external system avatars service. Allowed substitutions are {username} {first_letter} {color} {size}" + + default_opengraph_image_url: "URL of the default opengraph image." + twitter_summary_large_image_url: "URL of the default Twitter summary card image (should be at least 280px in width, and at least 150px in height)." + + allow_all_attachments_for_group_messages: "Allow all email attachments for group messages." + + convert_pasted_images_to_hq_jpg: "Convert pasted images to high-quality JPG files." + convert_pasted_images_quality: "Quality of the converted JPG file (1 is lowest quality, 100 is best quality)." + + enable_flash_video_onebox: "Enable embedding of swf and flv (Adobe Flash) links in oneboxes. WARNING: may introduce security risks." + + default_invitee_trust_level: "Default trust level (0-4) for invited users." + default_trust_level: "Default trust level (0-4) for all new users. WARNING! Changing this will put you at serious risk for spam." + + tl1_requires_topics_entered: "How many topics a new user must enter before promotion to trust level 1." + tl1_requires_read_posts: "How many posts a new user must read before promotion to trust level 1." + tl1_requires_time_spent_mins: "How many minutes a new user must read posts before promotion to trust level 1." + + tl2_requires_topics_entered: "How many topics a user must enter before promotion to trust level 2." + tl2_requires_read_posts: "How many posts a user must read before promotion to trust level 2." + tl2_requires_time_spent_mins: "How many minutes a user must read posts before promotion to trust level 2." + tl2_requires_days_visited: "How many days a user must visit the site before promotion to trust level 2." + tl2_requires_likes_received: "How many likes a user must receive before promotion to trust level 2." + tl2_requires_likes_given: "How many likes a user must cast before promotion to trust level 2." + tl2_requires_topic_reply_count: "How many topics user must reply to before promotion to trust level 2." + + tl3_time_period: "Trust Level 3 requirements time period (in days)" + tl3_requires_days_visited: "Minimum number of days that a user needs to have visited the site in the last (tl3 time period) days to qualify for promotion to trust level 3. Set higher than tl3 time period to disable promotions to tl3. (0 or higher)" + tl3_requires_topics_replied_to: "Minimum number of topics a user needs to have replied to in the last (tl3 time period) days to qualify for promotion to trust level 3. (0 or higher)" + tl3_requires_topics_viewed: "The percentage of topics created in the last (tl3 time period) days that a user needs to have viewed to qualify for promotion to trust level 3. (0 to 100)" + tl3_requires_topics_viewed_cap: "The maximum required number of topics viewed in the last (tl3 time period) days." + tl3_requires_posts_read: "The percentage of posts created in the last (tl3 time period) days that a user needs to have viewed to qualify for promotion to trust level 3. (0 to 100)" + tl3_requires_posts_read_cap: "The maximum required number of posts read in the last (tl3 time period) days." + tl3_requires_topics_viewed_all_time: "The minimum total number of topics a user must have viewed to qualify for trust level 3." + tl3_requires_posts_read_all_time: "The minimum total number of posts a user must have read to qualify for trust level 3." + tl3_requires_max_flagged: "User must not have had more than x posts flagged by x different users in the last (tl3 time period) days to qualify for promotion to trust level 3, where x is this setting's value. (0 or higher)" + tl3_promotion_min_duration: "The minimum number of days that a promotion to trust level 3 lasts before a user can be demoted back to trust level 2." + tl3_requires_likes_given: "The minimum number of likes that must be given in the last (tl3 time period) days to qualify for promotion to trust level 3." + tl3_requires_likes_received: "The minimum number of likes that must be received in the last (tl3 time period) days to qualify for promotion to trust level 3." + tl3_links_no_follow: "Do not remove rel=nofollow from links posted by trust level 3 users." + + min_trust_to_create_topic: "The minimum trust level required to create a new topic." + + min_trust_to_edit_wiki_post: "The minimum trust level required to edit post marked as wiki." + + min_trust_to_edit_post: "The minimum trust level required to edit posts." + + min_trust_to_allow_self_wiki: "The minimum trust level required to make user's own post wiki." + + min_trust_to_send_messages: "The minimum trust level required to create new private messages." + + newuser_max_links: "How many links a new user can add to a post." + newuser_max_images: "How many images a new user can add to a post." + newuser_max_attachments: "How many attachments a new user can add to a post." + newuser_max_mentions_per_post: "Maximum number of @name notifications a new user can use in a post." + newuser_max_replies_per_topic: "Maximum number of replies a new user can make in a single topic until someone replies to them." + max_mentions_per_post: "Maximum number of @name notifications anyone can use in a post." + max_users_notified_per_group_mention: "Maximum number of users that may receive a notification if a group is mentioned (if threshold is met no notifications will be raised)" + + create_thumbnails: "Create thumbnails and lightbox images that are too large to fit in a post." + + email_time_window_mins: "Wait (n) minutes before sending any notification emails, to give users a chance to edit and finalize their posts." + private_email_time_window_seconds: "Wait (n) seconds before sending any private notification emails, to give users a chance to edit and finalize their messages." + email_posts_context: "How many prior replies to include as context in notification emails." + flush_timings_secs: "How frequently we flush timing data to the server, in seconds." + title_max_word_length: "The maximum allowed word length, in characters, in a topic title." + title_min_entropy: "The minimum entropy (unique characters, non-english count for more) required for a topic title." + body_min_entropy: "The minimum entropy (unique characters, non-english count for more) required for a post body." + allow_uppercase_posts: "Allow all caps in a topic title or a post body." + + title_fancy_entities: "Convert common ASCII characters to fancy HTML entities in topic titles, ala SmartyPants http://daringfireball.net/projects/smartypants/" + + min_title_similar_length: "The minimum length of a title before it will be checked for similar topics." + min_body_similar_length: "The minimum length of a post's body before it will be checked for similar topics." + + desktop_category_page_style: "Visual style for the /categories page." + category_colors: "A list of hexadecimal color values allowed for categories." + category_style: "Visual style for category badges." + + max_image_size_kb: "The maximum image upload size in kB. This must be configured in nginx (client_max_body_size) / apache or proxy as well." + max_attachment_size_kb: "The maximum attachment files upload size in kB. This must be configured in nginx (client_max_body_size) / apache or proxy as well." + authorized_extensions: "A list of file extensions allowed for upload (use '*' to enable all file types)" + max_similar_results: "How many similar topics to show above the editor when composing a new topic. Comparison is based on title and body." + + title_prettify: "Prevent common title typos and errors, including all caps, lowercase first character, multiple ! and ?, extra . at end, etc." + + topic_views_heat_low: "After this many views, the views field is slightly highlighted." + topic_views_heat_medium: "After this many views, the views field is moderately highlighted." + topic_views_heat_high: "After this many views, the views field is strongly highlighted." + + cold_age_days_low: "After this many days of conversation, the last activity date is slightly dimmed." + cold_age_days_medium: "After this many days of conversation, the last activity date is moderately dimmed." + cold_age_days_high: "After this many days of conversation, the last activity date is strongly dimmed." + + history_hours_low: "A post edited within this many hours has the edit indicator slightly highlighted" + history_hours_medium: "A post edited within this many hours has the edit indicator moderately highlighted." + history_hours_high: "A post edited within this many hours has the edit indicator strongly highlighted." + + topic_post_like_heat_low: "After the likes:post ratio exceeds this ratio, the post count field is slightly highlighted." + topic_post_like_heat_medium: "After the likes:post ratio exceeds this ratio, the post count field is moderately highlighted." + topic_post_like_heat_high: "After the likes:post ratio exceeds this ratio, the post count field is strongly highlighted." + + faq_url: "If you have a FAQ hosted elsewhere that you want to use, provide the full URL here." + tos_url: "If you have a Terms of Service document hosted elsewhere that you want to use, provide the full URL here." + privacy_policy_url: "If you have a Privacy Policy document hosted elsewhere that you want to use, provide the full URL here." + + newuser_spam_host_threshold: "How many times a new user can post a link to the same host within their `newuser_spam_host_threshold` posts before being considered spam." + + white_listed_spam_host_domains: "A list of domains excluded from spam host testing. New users will never be restricted from creating posts with links to these domains." + staff_like_weight: "How much extra weighting factor to give staff likes." + topic_view_duration_hours: "Count a new topic view once per IP/User every N hours" + user_profile_view_duration_hours: "Count a new user profile view once per IP/User every N hours" + + levenshtein_distance_spammer_emails: "When matching spammer emails, number of characters difference that will still allow a fuzzy match." + max_new_accounts_per_registration_ip: "If there are already (n) trust level 0 accounts from this IP (and none is a staff member or at TL2 or higher), stop accepting new signups from that IP." + min_ban_entries_for_roll_up: "When clicking the Roll up button, will create a new subnet ban entry if there are at least (N) entries." + + max_age_unmatched_emails: "Delete unmatched screened email entries after (N) days." + max_age_unmatched_ips: "Delete unmatched screened IP entries after (N) days." + + num_flaggers_to_close_topic: "Minimum number of unique flaggers that is required to automatically pause a topic for intervention" + num_flags_to_close_topic: "Minimum number of active flags that is required to automatically pause a topic for intervention" + + auto_respond_to_flag_actions: "Enable automatic reply when disposing a flag." + min_first_post_typing_time: "Minimum amount of time in milliseconds a user must type during first post, if threshold is not met post will automatically enter the needs approval queue. Set to 0 to disable (not recommended)" + auto_block_fast_typers_on_first_post: "Automatically block users that do not meet min_first_post_typing_time" + auto_block_fast_typers_max_trust_level: "Maximum trust level to auto block fast typers" + auto_block_first_post_regex: "Case insensitive regex that if passed will cause first post by user to be blocked and sent to approval queue. Example: raging|a[bc]a , will cause all posts containing raging or aba or aca to be blocked on first. Only applies to first post." + + reply_by_email_enabled: "Enable replying to topics via email." + reply_by_email_address: "Template for reply by email incoming email address, for example: %{reply_key}@reply.example.com or replies+%{reply_key}@example.com" + alternative_reply_by_email_addresses: "List of alternative templates for reply by email incoming email addresses. Example: %{reply_key}@reply.example.com|replies+%{reply_key}@example.com" + incoming_email_prefer_html: "Use the HTML instead of the text for incoming email. May cause unexpected formatting issues!" + + disable_emails: "Prevent Discourse from sending any kind of emails" + + strip_images_from_short_emails: "Strip images from emails having size less than 2800 Bytes" + short_email_length: "Short email length in Bytes" + display_name_on_email_from: "Display full names on email from fields" + + unsubscribe_via_email: "Allow users to unsubscribe from emails by sending an email with 'unsubscribe' in the subject or body" + unsubscribe_via_email_footer: "Attach an unsubscribe via email mailto: link to the footer of sent emails" + + delete_email_logs_after_days: "Delete email logs after (N) days. 0 to keep indefinitely" + max_emails_per_day_per_user: "Maximum number of emails to send users per day. 0 to disable the limit" + enable_staged_users: "Automatically create staged users when processing incoming emails." + maximum_staged_users_per_email: "Maximum number of staged users created when processing an incoming email." + auto_generated_whitelist: "List of email addresses that won't be checked for auto-generated content. Example: foo@bar.com|discourse@bar.com" + block_auto_generated_emails: "Block incoming emails identified as being auto generated." + ignore_by_title: "Ignore incoming emails based on their title." + mailgun_api_key: "Mailgun Secret API key used to verify webhook messages." + + soft_bounce_score: "Bounce score added to the user when a temporary bounce happens." + hard_bounce_score: "Bounce score added to the user when a permanent bounce happens." + bounce_score_threshold: "Max bounce score before we will stop emailing a user." + bounce_score_threshold_deactivate: "Max bounce score before we will deactivate a user." + reset_bounce_score_after_days: "Automatically reset bounce score after X days." + + attachment_content_type_blacklist: "List of keywords used to blacklist attachments based on the content type." + attachment_filename_blacklist: "List of keywords used to blacklist attachments based on the filename." + + enable_forwarded_emails: "[BETA] Allow users to create a topic by forwarding an email in." + always_show_trimmed_content: "Always show trimmed part of incoming emails. WARNING: might reveal email addresses." + + manual_polling_enabled: "Push emails using the API for email replies." + pop3_polling_enabled: "Poll via POP3 for email replies." + pop3_polling_ssl: "Use SSL while connecting to the POP3 server. (Recommended)" + pop3_polling_openssl_verify: "Verify TLS server certificate (Default: enabled)" + pop3_polling_period_mins: "The period in minutes between checking the POP3 account for email. NOTE: requires restart." + pop3_polling_port: "The port to poll a POP3 account on." + pop3_polling_host: "The host to poll for email via POP3." + pop3_polling_username: "The username for the POP3 account to poll for email." + pop3_polling_password: "The password for the POP3 account to poll for email." + log_mail_processing_failures: "Log all email processing failures to http://yoursitename.com/logs" + email_in: "Allow users to post new topics via email (requires pop3 polling). Configure the addresses in the \"Settings\" tab of each category." + email_in_min_trust: "The minimum trust level a user needs to have to be allowed to post new topics via email." + email_prefix: "The [label] used in the subject of emails. It will default to 'title' if not set." + email_site_title: "The title of the site used as the sender of emails from the site. Default to 'title' if not set. If your 'title' contains characters that are not allowed in email sender strings, use this setting." + + minimum_topics_similar: "How many topics need to exist before similar topics are presented when composing new topics." + + relative_date_duration: "Number of days after posting where post dates will be shown as relative (7d) instead of absolute (20 Feb)." + delete_user_max_post_age: "Don't allow deleting users whose first post is older than (x) days." + delete_all_posts_max: "The maximum number of posts that can be deleted at once with the Delete All Posts button. If a user has more than this many posts, the posts cannot all be deleted at once and the user can't be deleted." + username_change_period: "The number of days after registration that accounts can change their username (0 to disallow username change)." + email_editable: "Allow users to change their e-mail address after registration." + logout_redirect: "Location to redirect browser to after logout (eg: http://somesite.com/logout)" + + allow_uploaded_avatars: "Allow users to upload custom profile pictures." + allow_animated_avatars: "Allow users to use animated gif profile pictures. WARNING: run the avatars:refresh rake task after changing this setting." + allow_animated_thumbnails: "Generates animated thumbnails of animated gifs." + default_avatars: "URLs to avatars that will be used by default for new users until they change them." + automatically_download_gravatars: "Download Gravatars for users upon account creation or email change." + digest_topics: "The maximum number of popular topics to display in the email summary." + digest_posts: "The maximum number of popular posts to display in the email summary." + digest_other_topics: "The maximum number of topics to show in the 'New in topics and categories you follow' section of the email summary." + digest_min_excerpt_length: "Minimum post excerpt in the email summary, in characters." + delete_digest_email_after_days: "Suppress summary emails for users not seen on the site for more than (n) days." + digest_suppress_categories: "Suppress these categories from summary emails." + disable_digest_emails: "Disable summary emails for all users." + + detect_custom_avatars: "Whether or not to check that users have uploaded custom profile pictures." + max_daily_gravatar_crawls: "Maximum number of times Discourse will check Gravatar for custom avatars in a day" + public_user_custom_fields: "A whitelist of custom fields for a user that can be shown publicly." + staff_user_custom_fields: "A whitelist of custom fields for a user that can be shown to staff." + enable_user_directory: "Provide a directory of users for browsing" + allow_anonymous_posting: "Allow users to switch to anonymous mode" + anonymous_posting_min_trust_level: "Minimum trust level required to enable anonymous posting" + anonymous_account_duration_minutes: "To protect anonymity create a new anonymous account every N minutes for each user. Example: if set to 600, as soon as 600 minutes elapse from last post AND user switches to anon, a new anonymous account is created." + + hide_user_profiles_from_public: "Disable user cards, user profiles and user directory for anonymous users." + + allow_profile_backgrounds: "Allow users to upload profile backgrounds." + + sequential_replies_threshold: "Number of posts a user has to make in a row in a topic before being reminded about too many sequential replies." + + enable_mobile_theme: "Mobile devices use a mobile-friendly theme, with the ability to switch to the full site. Disable this if you want to use a custom stylesheet that is fully responsive." + + dominating_topic_minimum_percent: "What percentage of posts a user has to make in a topic before being reminded about overly dominating a topic." + + disable_avatar_education_message: "Disable education message for changing avatar." + + suppress_uncategorized_badge: "Don't show the badge for uncategorized topics in topic lists." + + permalink_normalizations: "Apply the following regex before matching permalinks, for example: /(topic.*)\\?.*/\\1 will strip query strings from topic routes. Format is regex+string use \\1 etc. to access captures" + + global_notice: "Display an URGENT, EMERGENCY global banner notice to all visitors, change to blank to hide it (HTML allowed)." + + disable_edit_notifications: "Disables edit notifications by the system user when 'download_remote_images_to_local' is active." + + automatically_unpin_topics: "Automatically unpin topics when the user reaches the bottom." + + read_time_word_count: "Word count per minute for calculating estimated reading time." + + topic_page_title_includes_category: "Topic page title includes the category name." + + max_prints_per_hour_per_user: "Maximum number of /print page impressions (set to 0 to disable)" + + full_name_required: "Full name is a required field of a user's profile." + enable_names: "Show the user's full name on their profile, user card, and emails. Disable to hide full name everywhere." + display_name_on_posts: "Show a user's full name on their posts in addition to their @username." + show_time_gap_days: "If two posts are made this many days apart, display the time gap in the topic." + invites_per_page: "Default invites shown on the user page." + short_progress_text_threshold: "After the number of posts in a topic goes above this number, the progress bar will only show the current post number. If you change the progress bar's width, you may need to change this value." + default_code_lang: "Default programming language syntax highlighting applied to GitHub code blocks (lang-auto, ruby, python etc.)" + warn_reviving_old_topic_age: "When someone starts replying to a topic where the last reply is older than this many days, a warning will be displayed. Disable by setting to 0." + autohighlight_all_code: "Force apply code highlighting to all preformatted code blocks even when they didn't explicitly specify the language." + highlighted_languages: "Included syntax highlighting rules. (Warning: including too many languages may impact performance) see: https://highlightjs.org/static/demo/ for a demo" + + feed_polling_enabled: "EMBEDDING ONLY: Whether to embed a RSS/ATOM feed as posts." + feed_polling_url: "EMBEDDING ONLY: URL of RSS/ATOM feed to embed." + embed_by_username: "Discourse username of the user who creates the embedded topics." + embed_username_key_from_feed: "Key to pull discourse username from feed." + embed_title_scrubber: "Regular expression for scrubbing embeddable titles." + embed_truncate: "Truncate the embedded posts." + allowed_href_schemes: "Schemes allowed in links in addition to http and https." + embed_post_limit: "Maximum number of posts to embed." + embed_username_required: "The username for topic creation is required." + embed_whitelist_selector: "CSS selector for elements that are allowed in embeds." + embed_blacklist_selector: "CSS selector for elements that are removed from embeds." + notify_about_flags_after: "If there are flags that haven't been handled after this many hours, send an email to the contact_email. Set to 0 to disable." + enable_cdn_js_debugging: "Allow /logs to display proper errors by adding crossorigin permissions on all js includes." + show_create_topics_notice: "If the site has fewer than 5 public topics, show a notice asking admins to create some topics." + + delete_drafts_older_than_n_days: Delete drafts older than (n) days. + + bootstrap_mode_min_users: "Minimum number of users required to disable bootstrap mode (set to 0 to disable)" + + vacuum_db_days: "Run VACUUM ANALYZE to reclaim DB space after migrations (set to 0 to disable)" + + prevent_anons_from_downloading_files: "Prevent anonymous users from downloading attachments. WARNING: this will prevent any non-image site assets posted as attachments from working." + + slug_generation_method: "Choose a slug generation method. 'encoded' will generate percent encoding string. 'none' will disable slug at all." + + enable_emoji: "Enable emoji" + emoji_set: "How would you like your emoji?" + enforce_square_emoji: "Force a square aspect ratio to all emojis." + + approve_post_count: "The amount of posts from a new or basic user that must be approved" + approve_unless_trust_level: "Posts for users below this trust level must be approved" + approve_new_topics_unless_trust_level: "New topics for users below this trust level must be approved" + notify_about_queued_posts_after: "If there are posts that have been waiting to be reviewed for more than this many hours, an email will be sent to the contact_email. Set to 0 to disable these emails." + auto_close_messages_post_count: "Maximum number of posts allowed in a message before it is automatically closed (0 to disable)" + auto_close_topics_post_count: "Maximum number of posts allowed in a topic before it is automatically closed (0 to disable)" + + code_formatting_style: "Code button in composer will default to this code formatting style" + + default_email_digest_frequency: "How often users receive summary emails by default." + default_include_tl0_in_digests: "Include posts from new users in summary emails by default. Users can change this in their preferences." + default_email_private_messages: "Send an email when someone messages the user by default." + default_email_direct: "Send an email when someone quotes/replies to/mentions or invites the user by default." + default_email_mailing_list_mode: "Send an email for every new post by default." + default_email_mailing_list_mode_frequency: "Users who enable mailing list mode will receive emails this often by default." + disable_mailing_list_mode: "Disallow users from enabling mailing list mode." + default_email_always: "Send an email notification even when the user is active by default." + default_email_previous_replies: "Include previous replies in emails by default." + + default_email_in_reply_to: "Include excerpt of replied to post in emails by default." + + default_other_new_topic_duration_minutes: "Global default condition for which a topic is considered new." + default_other_auto_track_topics_after_msecs: "Global default time before a topic is automatically tracked." + default_other_notification_level_when_replying: "Global default notification level when the user replies to a topic." + default_other_external_links_in_new_tab: "Open external links in a new tab by default." + default_other_enable_quoting: "Enable quote reply for highlighted text by default." + default_other_dynamic_favicon: "Show new/updated topic count on browser icon by default." + default_other_disable_jump_reply: "Don't jump to user's post after they reply by default." + + default_other_like_notification_frequency: "Notify users on likes by default" + + default_topics_automatic_unpin: "Automatically unpin topics when the user reaches the bottom by default." + + default_categories_watching: "List of categories that are watched by default." + default_categories_tracking: "List of categories that are tracked by default." + default_categories_muted: "List of categories that are muted by default." + default_categories_watching_first_post: "List of categories in which first post in each new topic will be watched by default." + + max_user_api_reqs_per_day: "Maximum number of user API requests per key per day" + max_user_api_reqs_per_minute: "Maximum number of user API requests per key per minute" + allow_user_api_keys: "Allow generation of user API keys" + allow_user_api_key_scopes: "List of scopes allowed for user API keys" + max_api_keys_per_user: "Maximum number of user API keys per user" + min_trust_level_for_user_api_key: "Trust level required for generation of user API keys" + allowed_user_api_auth_redirects: "Allowed URL for authentication redirect for user API keys" + allowed_user_api_push_urls: "Allowed URLs for server push to user API" + + tagging_enabled: "Enable tags on topics?" + min_trust_to_create_tag: "The minimum trust level required to create a tag." + max_tags_per_topic: "The maximum tags that can be applied to a topic." + max_tag_length: "The maximum amount of characters that can be used in a tag." + max_tag_search_results: "When searching for tags, the maximum number of results to show." + show_filter_by_tag: "Show a dropdown to filter a topic list by tag." + max_tags_in_filter_list: "Maximum number of tags to show in the filter dropdown. The most used tags will be shown." + tags_sort_alphabetically: "Show tags in alphabetical order. Default is to show in order of popularity." + tag_style: "Visual style for tag badges." + staff_tags: "A list of tags that can only be applied by staff members" + min_trust_level_to_tag_topics: "Minimum trust level required to tag topics" + suppress_overlapping_tags_in_list: "If tags match exact words in topic titles, don't show the tag" + remove_muted_tags_from_latest: "Don't show topics tagged with muted tags in the latest topic list." + + company_short_name: "Company Name (short)" + company_full_name: "Company Name (full)" + company_domain: "Company Domain" + + errors: + invalid_email: "Invalid email address." + invalid_username: "There's no user with that username." + invalid_integer_min_max: "Value must be between %{min} and %{max}." + invalid_integer_min: "Value must be %{min} or greater." + invalid_integer_max: "Value cannot be higher than %{max}." + invalid_integer: "Value must be an integer." + regex_mismatch: "Value doesn't match the required format." + must_include_latest: "Top menu must include the 'latest' tab." + invalid_string: "Invalid value." + invalid_string_min_max: "Must be between %{min} and %{max} characters." + invalid_string_min: "Must be at least %{min} characters." + invalid_string_max: "Must be no more than %{max} characters." + invalid_reply_by_email_address: "Value must contain '%{reply_key}' and be different from the notification email." + invalid_alternative_reply_by_email_addresses: "All values must contain '%{reply_key}' and be different from the notification email." + pop3_polling_host_is_empty: "You must set a 'pop3 polling host' before enabling POP3 polling." + pop3_polling_username_is_empty: "You must set a 'pop3 polling username' before enabling POP3 polling." + pop3_polling_password_is_empty: "You must set a 'pop3 polling password' before enabling POP3 polling." + pop3_polling_authentication_failed: "POP3 authentication failed. Please verify your pop3 credentials." + reply_by_email_address_is_empty: "You must set a 'reply by email address' before enabling reply by email." + email_polling_disabled: "You must enable either manual or POP3 polling before enabling reply by email." + user_locale_not_enabled: "You must first enable 'allow user locale' before enabling this setting." + invalid_regex: "Regex is invalid or not allowed." + + search: + within_post: "#%{post_number} by %{username}" + types: + category: 'Categories' + topic: 'Results' + user: 'Users' + + sso: + not_found: "Your account couldn't be found. Please contact the site's administrator." + account_not_approved: "Your account is pending approval. You will receive an email notification when you are approved." + unknown_error: "There is a problem with your account. Please contact the site's administrator." + timeout_expired: "Account login timed out, please try logging in again." + + original_poster: "Original Poster" + most_posts: "Most Posts" + most_recent_poster: "Most Recent Poster" + frequent_poster: "Frequent Poster" + + redirected_to_top_reasons: + new_user: "Welcome to our community! These are the most popular recent topics." + not_seen_in_a_month: "Welcome back! We haven't seen you in a while. These are the most popular topics since you've been away." + + merge_posts: + edit_reason: + one: "A post was merged in by %{username}" + other: "%{count} posts were merged in by %{username}" + errors: + different_topics: "Posts belonging to different topics cannot be merged." + different_users: "Posts belonging to different users cannot be merged." + + move_posts: + new_topic_moderator_post: + one: "A post was split to a new topic: %{topic_link}" + other: "%{count} posts were split to a new topic: %{topic_link}" + existing_topic_moderator_post: + one: "A post was merged into an existing topic: %{topic_link}" + other: "%{count} posts were merged into an existing topic: %{topic_link}" + + change_owner: + post_revision_text: "Ownership transferred from %{old_user} to %{new_user}" + deleted_user: "a deleted user" + + emoji: + errors: + name_already_exists: "Sorry, the name '%{name}' is already used by another emoji." + error_while_storing_emoji: "Sorry, there has been an error while storing the emoji." + + topic_statuses: + archived_enabled: "This topic is now archived. It is frozen and cannot be changed in any way." + archived_disabled: "This topic is now unarchived. It is no longer frozen, and can be changed." + closed_enabled: "This topic is now closed. New replies are no longer allowed." + closed_disabled: "This topic is now opened. New replies are allowed." + autoclosed_message_max_posts: + one: "This message was automatically closed after reaching the maximum limit of 1 reply." + other: "This message was automatically closed after reaching the maximum limit of %{count} replies." + autoclosed_topic_max_posts: + one: "This topic was automatically closed after reaching the maximum limit of 1 reply." + other: "This topic was automatically closed after reaching the maximum limit of %{count} replies." + autoclosed_enabled_days: + one: "This topic was automatically closed after 1 day. New replies are no longer allowed." + other: "This topic was automatically closed after %{count} days. New replies are no longer allowed." + autoclosed_enabled_hours: + one: "This topic was automatically closed after 1 hour. New replies are no longer allowed." + other: "This topic was automatically closed after %{count} hours. New replies are no longer allowed." + autoclosed_enabled_minutes: + one: "This topic was automatically closed after 1 minute. New replies are no longer allowed." + other: "This topic was automatically closed after %{count} minutes. New replies are no longer allowed." + autoclosed_enabled_lastpost_days: + one: "This topic was automatically closed 1 day after the last reply. New replies are no longer allowed." + other: "This topic was automatically closed %{count} days after the last reply. New replies are no longer allowed." + autoclosed_enabled_lastpost_hours: + one: "This topic was automatically closed 1 hour after the last reply. New replies are no longer allowed." + other: "This topic was automatically closed %{count} hours after the last reply. New replies are no longer allowed." + autoclosed_enabled_lastpost_minutes: + one: "This topic was automatically closed 1 minute after the last reply. New replies are no longer allowed." + other: "This topic was automatically closed %{count} minutes after the last reply. New replies are no longer allowed." + autoclosed_disabled: "This topic is now opened. New replies are allowed." + autoclosed_disabled_lastpost: "This topic is now opened. New replies are allowed." + pinned_enabled: "This topic is now pinned. It will appear at the top of its category until it is unpinned by staff for everyone, or by individual users for themselves." + pinned_disabled: "This topic is now unpinned. It will no longer appear at the top of its category." + pinned_globally_enabled: "This topic is now pinned globally. It will appear at the top of its category and all topic lists until it is unpinned by staff for everyone, or by individual users for themselves." + pinned_globally_disabled: "This topic is now unpinned. It will no longer appear at the top of its category." + visible_enabled: "This topic is now listed. It will be displayed in topic lists." + visible_disabled: "This topic is now unlisted. It will no longer be displayed in any topic lists. The only way to access this topic is via direct link." + + login: + not_approved: "Your account hasn't been approved yet. You will be notified by email when you are ready to log in." + incorrect_username_email_or_password: "Incorrect username, email or password" + wait_approval: "Thanks for signing up. We will notify you when your account has been approved." + active: "Your account is activated and ready to use." + activate_email: "

You're almost done! We sent an activation mail to %{email}. Please follow the instructions in the email to activate your account.

If it doesn't arrive, check your spam folder, or try to log in again to send another activation mail.

" + not_activated: "You can't log in yet. We sent an activation email to you. Please follow the instructions in the email to activate your account." + not_allowed_from_ip_address: "You can't log in as %{username} from that IP address." + admin_not_allowed_from_ip_address: "You can't log in as admin from that IP address." + suspended: "You can't log in until %{date}." + suspended_with_reason: "Account suspended until %{date}: %{reason}" + errors: "%{errors}" + not_available: "Not available. Try %{suggestion}?" + something_already_taken: "Something went wrong, perhaps the username or email is already registered. Try the forgot password link." + omniauth_error: "Sorry, there was an error authorizing your account. Perhaps you did not approve authorization?" + omniauth_error_unknown: "Something went wrong processing your log in, please try again." + authenticator_error_no_valid_email: "No email addresses associated with %{account} are allowed. You may need to configure your account with a different email address." + new_registrations_disabled: "New account registrations are not allowed at this time." + password_too_long: "Passwords are limited to 200 characters." + email_too_long: "The email you provided is too long. Mailbox names must be no more than 254 characters, and domain names must be no more than 253 characters." + reserved_username: "That username is not allowed." + missing_user_field: "You have not completed all the user fields" + close_window: "Authentication is complete. Close this window to continue." + already_logged_in: "Oops, looks like you are attempting to accept an invitation for another user. If you are not %{current_user}, please log out and try again." + + user: + no_accounts_associated: "No accounts associated" + deactivated: "Was deactivated due to too many bounced emails to '%{email}'." + username: + short: "must be at least %{min} characters" + long: "must be no more than %{max} characters" + characters: "must only include numbers, letters and underscores" + unique: "must be unique" + blank: "must be present" + must_begin_with_alphanumeric_or_underscore: "must begin with a letter, a number or an underscore" + must_end_with_alphanumeric: "must end with a letter or a number" + must_not_contain_two_special_chars_in_seq: "must not contain a sequence of 2 or more special chars (.-_)" + must_not_end_with_confusing_suffix: "must not end with a confusing suffix like .json or .png etc." + email: + not_allowed: "is not allowed from that email provider. Please use another email address." + blocked: "is not allowed." + revoked: "Won't be sending emails to '%{email}' until %{date}." + ip_address: + blocked: "New registrations are not allowed from your IP address." + max_new_accounts_per_registration_ip: "New registrations are not allowed from your IP address (maximum limit reached). Contact a staff member." + + flags_reminder: + flags_were_submitted: + one: "Flags were submitted over 1 hour ago. Please review them." + other: "Flags were submitted over %{count} hours ago. Please review them." + subject_template: + one: "1 flag waiting to be handled" + other: "%{count} flags waiting to be handled" + + unsubscribe_mailer: + subject_template: "Confirm you no longer want to receive email updates from %{site_title}" + text_body_template: | + Someone (possibly you?) requested to no longer send email updates from %{site_domain_name} to this address. + If you with to confirm this, please click this link: + + %{confirm_unsubscribe_link} + + + If you want to continue receiving email updates, you may ignore this email. + + invite_mailer: + subject_template: "%{invitee_name} invited you to '%{topic_title}' on %{site_domain_name}" + text_body_template: | + %{invitee_name} invited you to a discussion + + > **%{topic_title}** + > + > %{topic_excerpt} + + at + + > %{site_title} -- %{site_description} + + If you're interested, click the link below: + + %{invite_link} + + This invitation is from a trusted user, so you can reply to the discussion immediately. + + custom_invite_mailer: + subject_template: "%{invitee_name} invited you to '%{topic_title}' on %{site_domain_name}" + text_body_template: | + %{invitee_name} invited you to a discussion + + > **%{topic_title}** + > + > %{topic_excerpt} + + at + + > %{site_title} -- %{site_description} + + Message from %{invitee_name}: + + %{user_custom_message} + + If you're interested, click the link below: + + %{invite_link} + + This invitation is from a trusted user, so you can reply to the discussion immediately. + + invite_forum_mailer: + subject_template: "%{invitee_name} invited you to join %{site_domain_name}" + text_body_template: | + %{invitee_name} invited you to join + + > **%{site_title}** + > + > %{site_description} + + If you're interested, click the link below: + + %{invite_link} + + This invitation is from a trusted user, so an account will be created for you automatically. + + custom_invite_forum_mailer: + subject_template: "%{invitee_name} invited you to join %{site_domain_name}" + text_body_template: | + %{invitee_name} invited you to join + + > **%{site_title}** + > + > %{site_description} + + Message from %{invitee_name}: + + %{user_custom_message} + + If you're interested, click the link below: + + %{invite_link} + + This invitation is from a trusted user, so an account will be created for you automatically. + + invite_password_instructions: + subject_template: "Set password for your %{site_name} account" + text_body_template: | + Thanks for accepting your invitation to %{site_name} -- welcome! + + Click this link to choose a password now: + %{base_url}/users/password-reset/%{email_token} + + (If the link above has expired, choose "I forgot my password" when logging in with your email address.) + + test_mailer: + subject_template: "[%{site_name}] Email Deliverability Test" + text_body_template: | + This is a test email from + + [**%{base_url}**][0] + + Email deliverability is complicated. Here are a few important things you should check first: + + - Be *sure* to set the `notification email` from: address correctly in your site settings. **The domain specified in the "from" address of the emails you send is the domain your email will be validated against**. + + - Know how to view the raw source of the email in your mail client, so you can examine email headers for important clues. in Gmail, it is the "show original" option in the drop-down menu at the top right of each mail. + + - **IMPORTANT:** Does your ISP have a reverse DNS record entered to associate the domain names and IP addresses you send mail from? [Test your Reverse PTR record][2] here. If your ISP does not enter the proper reverse DNS pointer record, it's very unlikely any of your email will be delivered. + + - Is your domain's [SPF record][8] correct? [Test your SPF record][1] here. Note that TXT is the correct official record type for SPF. + + - Is your domain's [DKIM record][3] correct? This will significantly improve email deliverability. [Test your DKIM record][7] here. + + - If you run your own mail server, check to make sure the IPs of your mail server are [not on any email blacklists][4]. Also verify that it is definitely sending a fully-qualified hostname that resolves in DNS in its HELO message. If not, this will cause your email to be rejected by many mail services. + + - We highly recommend you **send a test email to [mail-tester.com][mt]** to verify that all the above is working correctly. + + (The *easy* way is to create a free account on [SendGrid][sg], [SparkPost][sp], [Mailgun][mg] or [Mailjet][mj], which have generous free mailing plans and will be fine for small communities. You'll still need to set up the SPF and DKIM records in your DNS, though!) + + We hope you received this email deliverability test OK! + + Good luck, + + Your friends at [Discourse](http://www.discourse.org) + + [0]: %{base_url} + [1]: http://www.kitterman.com/spf/validate.html + [2]: http://mxtoolbox.com/ReverseLookup.aspx + [3]: http://www.dkim.org/ + [4]: http://whatismyipaddress.com/blacklist-check + [7]: https://www.mail-tester.com/spf-dkim-check + [8]: http://www.openspf.org/SPF_Record_Syntax + [sg]: https://goo.gl/r1WMF6 + [sp]: https://www.sparkpost.com/ + [mg]: http://www.mailgun.com/ + [mj]: https://www.mailjet.com/pricing + [mt]: http://www.mail-tester.com/ + + new_version_mailer: + subject_template: "[%{site_name}] New Discourse version, update available" + text_body_template: | + Hooray, a new version of [Discourse](http://www.discourse.org) is available! + + Your version: %{installed_version} + New version: **%{new_version}** + + - Upgrade using our easy **[one-click browser upgrade](%{base_url}/admin/upgrade)** + + - See what's new in the [GitHub changelog](https://github.com/discourse/discourse/commits/master) + + - Visit [meta.discourse.org](https://meta.discourse.org) for news, discussion, and support for Discourse + + new_version_mailer_with_notes: + subject_template: "[%{site_name}] update available" + text_body_template: | + Hooray, a new version of [Discourse](http://www.discourse.org) is available! + + Your version: %{installed_version} + New version: **%{new_version}** + + - Upgrade using our easy **[one-click browser upgrade](%{base_url}/admin/upgrade)** + + - See what's new in the [GitHub changelog](https://github.com/discourse/discourse/commits/master) + + - Visit [meta.discourse.org](https://meta.discourse.org) for news, discussion, and support for Discourse + + ### Release notes + + %{notes} + + queued_posts_reminder: + subject_template: + one: "[%{site_name}] 1 post waiting to be reviewed" + other: "[%{site_name}] %{count} posts waiting to be reviewed" + text_body_template: | + Hello, + + Posts from new users were held for moderation and are currently waiting to be reviewed. [Approve or reject them here](%{base_url}/queued-posts). + + flag_reasons: + off_topic: "Your post was flagged as **off-topic**: the community feels it is not a good fit for the topic, as currently defined by the title and the first post." + inappropriate: "Your post was flagged as **inappropriate**: the community feels it is offensive, abusive, or a violation of [our community guidelines](/guidelines)." + spam: "Your post was flagged as **spam**: the community feels it is an advertisement, something that is overly promotional in nature instead of being useful or relevant to the topic as expected." + notify_moderators: "Your post was flagged **for moderator attention**: the community feels something about the post requires manual intervention by a staff member." + + flags_dispositions: + agreed: "Thanks for letting us know. We agree there is an issue and we're looking into it." + agreed_and_deleted: "Thanks for letting us know. We agree there is an issue and we've removed the post." + disagreed: "Thanks for letting us know. We're looking into it." + deferred: "Thanks for letting us know. We're looking into it." + deferred_and_deleted: "Thanks for letting us know. We've removed the post." + + temporarily_closed_due_to_flags: "This topic is temporarily closed due to a large number of community flags." + + system_messages: + post_hidden: + subject_template: "Post hidden by community flags" + text_body_template: | + Hello, + + This is an automated message from %{site_name} to let you know that your post was hidden. + + %{base_url}%{url} + + %{flag_reason} + + Multiple community members flagged this post before it was hidden, so please consider how you might revise your post to reflect their feedback. **You can edit your post after %{edit_delay} minutes, and it will be automatically unhidden.** + + However, if the post is hidden by the community a second time, it will remain hidden until handled by staff – and there may be further action, including the possible suspension of your account. + + For additional guidance, please refer to our [community guidelines](%{base_url}/guidelines). + + usage_tips: + text_body_template: | + Here are a few quick tips to get you started: + + ## Reading + + To read more, **just keep scrolling down!** + + As new replies or new topics arrive, they will appear automatically – no need to refresh the page. + + ## Navigation + + - For search, your user page, or the menu, use the **icon buttons at upper right**. + + - Selecting a topic title will always take you to your **next unread reply** in the topic. To enter at the top or bottom instead, select the reply count or last reply date. + + + + - While reading a topic, use the timeline on the right to jump to the top, bottom, or your last read position. On smaller screens, select the progress bar at bottom right to expand it: + + + + You can also press ? on your keyboard for a list of super-speedy keyboard shortcuts. + + ## Replying + + To insert a quote, select the text you wish to quote, then press any Reply button to open the editor. Repeat for multiple quotes. + + + + You can always continue reading while you compose your reply, and we automatically save drafts as you write. + + To notify someone about your reply, mention their name. Type `@` to begin selecting a username. + + + + To use [standard Emoji](http://www.emoji.codes/), just type `:` to match by name, or use the traditional smileys `;)` + + + + To generate a summary for a link, paste it on a line by itself: + + + + Your reply can be formatted using simple HTML, BBCode, or [Markdown](http://commonmark.org/help/): + + This is bold. + This is [b]bold[/b]. + This is **bold**. + + For more formatting tips, [try our fun 10 minute interactive tutorial!](http://commonmark.org/help/tutorial/) + + ## Actions + + There are action buttons at the bottom of each post: + + + + - To let someone know that you enjoyed and appreciated their post, use the **like** button. Share the love! + + - Grab a copy-pasteable link to any reply or topic via the **link** button. + + - Use the show more button to reveal more actions. **Flag** to privately let the author, or [our staff](%{base_url}/about), know about a problem. **Bookmark** to find this post later on your profile page. + + ## Notifications + + When someone replies to you, quotes your post, mentions your `@username`, or even links to your post, a number will immediately appear at the top right of the page. Select it to access your **notifications**. + + + + Don't worry about missing a reply – you'll be emailed any notifications that arrive when you are away. + + ## Preferences + + - All topics less than **two days old** are considered new. + + - Any topic you've **actively participated in** (by creating it, replying to it, or reading it for an extended period) will be automatically tracked on your behalf. + + You will see the new and unread number indicators next to these topics: + + + + You can change your notifications for any topic via the notification control at the bottom, and right hand side, of each topic. + + + + You can also set notification state per category, if you want to watch or mute every new topic in a specific category. + + To change any of these settings, see [your user preferences](%{base_url}/my/preferences). + + ## Community Trust + + It's great to meet you! As you participate here, over time we'll get to know you, and your temporary new user limitations will be lifted. Keep participating, and over time you'll gain new [trust levels](https://meta.discourse.org/t/what-do-user-trust-levels-do/4924) that include special abilities to help us manage our community together. + + welcome_user: + subject_template: "Welcome to %{site_name}!" + text_body_template: | + Thanks for joining %{site_name}, and welcome! + + %{new_user_tips} + + We believe in [civilized community behavior](%{base_url}/guidelines) at all times. + + Enjoy your stay! + + (If you need to communicate with [staff members](%{base_url}/about) as a new user, just reply to this message.) + + welcome_invite: + subject_template: "Welcome to %{site_name}!" + text_body_template: | + Thanks for accepting your invitation to %{site_name} -- welcome! + + We've created a new account **%{username}** for you, and you are logged in. You can change your name by visiting [your user profile][prefs]. + + To log in again later: + + 1. Always **use the same email address from your original invitation** when logging in. Otherwise we won't be able to tell it's you! + + 2. Create a unique password for [your user profile][prefs], and use it to log in. + + %{new_user_tips} + + We believe in [civilized community behavior](%{base_url}/guidelines) at all times. + + Enjoy your stay! + + (If you need to communicate with [staff members](%{base_url}/about) as a new user, just reply to this message.) + + [prefs]: %{user_preferences_url} + + backup_succeeded: + subject_template: "Backup completed successfully" + text_body_template: | + The backup was successful. + + Visit the [admin > backup section](%{base_url}/admin/backups) to download your new backup. + + Here's the log: + + ```text + %{logs} + ``` + + backup_failed: + subject_template: "Backup failed" + text_body_template: | + The backup has failed. + + Here's the log: + + ```text + %{logs} + ``` + + restore_succeeded: + subject_template: "Restore completed successfully" + text_body_template: | + The restore was successful. + + Here's the log: + + ```text + %{logs} + ``` + + restore_failed: + subject_template: "Restore failed" + text_body_template: | + The restore has failed. + + Here's the log: + + ```text + %{logs} + ``` + + bulk_invite_succeeded: + subject_template: "Bulk user invite processed successfully" + text_body_template: "Your bulk user invite file was processed, %{sent} invites mailed." + + bulk_invite_failed: + subject_template: "Bulk user invite processed with errors" + text_body_template: | + Your bulk user invite file was processed, %{sent} invites mailed with %{failed} error(s). + + Here's the log: + + ``` + %{logs} + ``` + + csv_export_succeeded: + subject_template: "Data export complete" + text_body_template: | + Your data export was successful! :dvd: + + %{file_name} (%{file_size}) + + The above download link will be valid for 48 hours. + + csv_export_failed: + subject_template: "Data export failed" + text_body_template: "We're sorry, but your data export failed. Please check the logs or contact a staff member." + + email_reject_insufficient_trust_level: + subject_template: "[%{site_name}] Email issue -- Insufficient Trust Level" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your account does not have the required trust level to post new topics to this email address. If you believe this is an error, contact a staff member. + + email_reject_user_not_found: + subject_template: "[%{site_name}] Email issue -- User Not Found" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your reply was sent from an unknown email address. Try sending from another email address, or contact a staff member. + + email_reject_screened_email: + subject_template: "[%{site_name}] Email issue -- Blocked Email" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your reply was sent from a blocked email address. Try sending from another email address, or contact a staff member. + + email_reject_inactive_user: + subject_template: "[%{site_name}] Email issue -- Inactive User" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your account associated with this email address is not activated. Please activate your account before sending emails in. + + email_reject_blocked_user: + subject_template: "[%{site_name}] Email issue -- Blocked User" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your account associated with this email address has been blocked. + + email_reject_reply_user_not_matching: + subject_template: "[%{site_name}] Email issue -- Unexpected Reply Address" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your reply was sent from a different email address than the one we expected, so we're not sure if this is the same person. Try sending from another email address, or contact a staff member. + + email_reject_no_account: + subject_template: "[%{site_name}] Email issue -- Unknown Account" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + We can't find any accounts that match your email address. Try sending from a different email address, or contact a staff member. + + email_reject_empty: + subject_template: "[%{site_name}] Email issue -- No Content" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + We couldn't find any reply content in your email. + + If you're getting this and you _did_ include a reply, try again with simpler formatting. + + email_reject_parsing: + subject_template: "[%{site_name}] Email issue -- Content Unrecognized" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + We couldn't find your reply in the email. **Make sure your reply is at the top of the email** -- we can't process inline replies. + + email_reject_invalid_access: + subject_template: "[%{site_name}] Email issue -- Invalid Access" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your account does not have the privileges to post new topics in that category. If you believe this is an error, contact a staff member. + + email_reject_strangers_not_allowed: + subject_template: "[%{site_name}] Email issue -- Invalid Access" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + The category you sent this email to only allows replies from users with valid accounts and known email addresses. If you believe this is an error, contact a staff member. + + email_reject_invalid_post: + subject_template: "[%{site_name}] Email issue -- Posting error" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Some possible causes are: complex formatting, message too large, message too small. Please try again, or post via the website if this continues. + + email_reject_invalid_post_specified: + subject_template: "[%{site_name}] Email issue -- Posting error" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Reason: + + %{post_error} + + If you can correct the problem, please try again. + + email_reject_invalid_post_action: + subject_template: "[%{site_name}] Email issue -- Invalid Post Action" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + The Post Action was not recognized. Please try again, or post via the website if this continues. + + + email_reject_reply_key: + subject_template: "[%{site_name}] Email issue -- Unknown Reply Key" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + The reply key in the email is invalid or unknown, so we can't figure out what this email is in reply to. Contact a staff member. + + email_reject_bad_destination_address: + subject_template: "[%{site_name}] Email issue -- Unknown To: Address" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + None of the destination email addresses are recognized. Please make sure that you are sending to the correct email address provided by staff. + + email_reject_topic_not_found: + subject_template: "[%{site_name}] Email issue -- Topic Not Found" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + The topic you are replying to no longer exists -- perhaps it was deleted? If you believe this is an error, contact a staff member. + + email_reject_topic_closed: + subject_template: "[%{site_name}] Email issue -- Topic Closed" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + The topic you are replying to is currently closed and no longer accepting replies. If you believe this is an error, contact a staff member. + + email_reject_auto_generated: + subject_template: "[%{site_name}] Email issue -- Auto Generated Reply" + text_body_template: | + We're sorry, but your email message to %{destination} (titled %{former_title}) didn't work. + + Your email was marked as "auto generated", which means it was automatically created by a computer instead of being typed by a human; we can't accept those kinds of emails. If you believe this is an error, contact a staff member. + + email_error_notification: + subject_template: "[%{site_name}] Email issue -- POP authentication error" + text_body_template: | + Unfortunately, there was an authentication error while polling mails from the POP server. + + Please make sure you have properly configured the POP credentials in [the site settings](%{base_url}/admin/site_settings/category/email). + + If there is a web UI for the POP email account, you may need to log in on the web and check your settings there. + too_many_spam_flags: + subject_template: "New account on hold" + text_body_template: | + Hello, + + This is an automated message from %{site_name} to let you know that your posts have been temporarily hidden because they were flagged by the community. + + As a precautionary measure, your new account has been blocked from creating new replies or topics until a staff member can review your account. We apologize for the inconvenience. + + For additional guidance, please refer to our [community guidelines](%{base_url}/guidelines). + too_many_tl3_flags: + subject_template: "New account on hold" + text_body_template: | + Hello, + + This is an automated message from %{site_name} to let you know you that your account has been placed on hold due to a large number of community flags. + + As a precautionary measure, your new account has been blocked from creating new replies or topics until a staff member can review your account. We apologize for the inconvenience. + + For additional guidance, please refer to our [community guidelines](%{base_url}/guidelines). + blocked_by_staff: + subject_template: "Account temporarily on hold" + text_body_template: | + Hello, + + This is an automated message from %{site_name} to let you know that your account has been temporarily placed on hold as a precautionary measure. + + Please do continue to browse, but you won't be able to reply or create topics until a [staff member](%{base_url}/about) reviews your most recent posts. We apologize for the inconvenience. + + For additional guidance, refer to our [community guidelines](%{base_url}/guidelines). + + user_automatically_blocked: + subject_template: "New user %{username} blocked by community flags" + text_body_template: | + This is an automated message. + + The new user [%{username}](%{user_url}) was automatically blocked because multiple users flagged %{username}'s post(s). + + Please [review the flags](%{base_url}/admin/flags). If %{username} was incorrectly blocked from posting, click the unblock button on [the admin page for this user](%{user_url}). + + This threshold can be changed via the `block_new_user` site settings. + + spam_post_blocked: + subject_template: "New user %{username} posts blocked due to repeated links" + text_body_template: | + This is an automated message. + + The new user [%{username}](%{user_url}) tried to create multiple posts with links to %{domains}, but those posts were blocked to avoid spam. The user is still able to create new posts that do not link to %{domains}. + + Please [review the user](%{user_url}). + + This can be modified via the `newuser_spam_host_threshold` and `white_listed_spam_host_domains` site settings. + + unblocked: + subject_template: "Account no longer on hold" + text_body_template: | + Hello, + + This is an automated message from %{site_name} to let you know that your account is no longer on hold after staff review. + + You can now create new replies and topics again. Thank you for your patience. + + pending_users_reminder: + subject_template: + one: "1 user waiting for approval" + other: "%{count} users waiting for approval" + text_body_template: | + There are new user signups waiting to be approved (or rejected) before they can access this forum. + + [Please review them in the admin section](%{base_url}/admin/users/list/pending). + + download_remote_images_disabled: + subject_template: "Downloading remote images disabled" + text_body_template: "The `download_remote_images_to_local` setting was disabled because the disk space limit at `download_remote_images_threshold` was reached." + + dashboard_problems: + subject_template: "Problems have been found" + text_body_template: | + Some problems are being reported on your admin dashboard. + + [Please review and fix them](%{base_url}/admin). + + unsubscribe_link: | + To unsubscribe from these emails, [click here](%{unsubscribe_url}). + + unsubscribe_link_and_mail: | + To unsubscribe from these emails, [click here](%{unsubscribe_url}). + + unsubscribe_mailing_list: | + You are receiving this because you enabled mailing list mode. + + To unsubscribe from these emails, [click here](%{unsubscribe_url}). + + subject_re: "Re: " + subject_pm: "[PM] " + + user_notifications: + previous_discussion: "Previous Replies" + reached_limit: + one: "WARNING: you reached the limit of daily emails. Further email notifications will be suppressed." + other: "WARNING: you reached the limit of %{count} daily emails. Further email notifications will be suppressed." + in_reply_to: "In Reply To" + unsubscribe: + title: "Unsubscribe" + description: "Not interested in getting these emails? No problem! Click below to unsubscribe instantly:" + + header_instructions: '' + reply_by_email: "[Visit Topic](%{base_url}%{url}) or reply to this email to respond." + reply_by_email_pm: "[Visit Message](%{base_url}%{url}) or reply to this email to respond." + only_reply_by_email: "Reply to this email to respond." + visit_link_to_respond: "[Visit Topic](%{base_url}%{url}) to respond." + visit_link_to_respond_pm: "[Visit Message](%{base_url}%{url}) to respond." + + posted_by: "Posted by %{username} on %{post_date}" + + invited_to_private_message_body: | + %{username} invited you to a message + + > **%{topic_title}** + > + > %{topic_excerpt} + + at + + > %{site_title} -- %{site_description} + + invited_to_topic_body: | + %{username} invited you to a discussion + + > **%{topic_title}** + > + > %{topic_excerpt} + + at + + > %{site_title} -- %{site_description} + + user_invited_to_private_message_pm: + subject_template: "[%{site_name}] %{username} invited you to a message '%{topic_title}'" + text_body_template: | + %{header_instructions} + + %{message} + + %{respond_instructions} + + user_invited_to_private_message_pm_staged: + subject_template: "[%{site_name}] %{username} invited you to a message '%{topic_title}'" + text_body_template: | + %{header_instructions} + + %{message} + + %{respond_instructions} + + user_invited_to_topic: + subject_template: "[%{site_name}] %{username} invited you to '%{topic_title}'" + text_body_template: | + %{header_instructions} + + %{message} + + %{respond_instructions} + + user_replied: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_replied_pm: + subject_template: "[%{site_name}] [PM] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_quoted: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_linked: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_mentioned: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_group_mentioned: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_posted: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_watching_first_post: + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_posted_pm: + subject_template: "[%{site_name}] [PM] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_posted_pm_staged: + subject_template: "%{optional_re}%{topic_title}" + text_body_template: | + + %{message} + + digest: + why: "A brief summary of %{site_link} since your last visit on %{last_seen_at}" + since_last_visit: "Since your last visit" + new_topics: "New Topics" + unread_messages: "Unread Messages" + unread_notifications: "Unread Notifications" + new_posts: "New Posts" + new_users: "New Users" + popular_topics: "Popular Topics" + follow_topic: "Follow this topic" + join_the_discussion: "Read More" + popular_posts: "Popular Posts" + from_topic_label: "From" + more_new: "New in topics and categories you follow" + subject_template: "[%{site_name}] Summary" + unsubscribe: "This summary is sent from %{site_link} when we haven't seen you in a while. To unsubscribe %{unsubscribe_link}." + click_here: "click here" + from: "%{site_name} summary" + preheader: "A brief summary since your last visit on %{last_seen_at}" + custom: + html: + header: '' + below_post_1: '' + below_post_2: '' + below_post_3: '' + below_post_4: '' + below_post_5: '' + above_popular_topics: '' + below_popular_topics: '' + above_footer: '' + below_footer: '' + text: + below_post_1: '' + below_post_2: '' + below_post_3: '' + below_post_4: '' + below_post_5: '' + above_popular_topics: '' + below_popular_topics: '' + above_footer: '' + below_footer: '' + + mailing_list: + why: "All activity on %{site_link} for %{date}" + subject_template: "[%{site_name}] Summary for %{date}" + unsubscribe: "This summary is sent daily due to mailing list mode being enabled. To unsubscribe %{unsubscribe_link}." + from: "%{site_name} summary" + new_topics: "New topics" + topic_updates: "Topic updates" + view_this_topic: "View this topic" + back_to_top: "Back to top" + forgot_password: + subject_template: "[%{site_name}] Password reset" + text_body_template: | + Somebody asked to reset your password on [%{site_name}](%{base_url}). + + If it was not you, you can safely ignore this email. + + Click the following link to choose a new password: + %{base_url}/users/password-reset/%{email_token} + + set_password: + subject_template: "[%{site_name}] Set Password" + text_body_template: | + Somebody asked to add a password to your account on [%{site_name}](%{base_url}). Alternatively, you can log in using any supported online service (Google, Facebook, etc) that is associated with this validated email address. + + If you did not make this request, you can safely ignore this email. + + Click the following link to choose a password: + %{base_url}/users/password-reset/%{email_token} + + admin_login: + subject_template: "[%{site_name}] Login" + text_body_template: | + Somebody asked to login to your account on [%{site_name}](%{base_url}). + + If you did not make this request, you can safely ignore this email. + + Click the following link to login: + %{base_url}/users/admin-login/%{email_token} + + account_created: + subject_template: "[%{site_name}] Your New Account" + text_body_template: | + A new account was created for you at %{site_name} + + Click the following link to choose a password for your new account: + %{base_url}/users/password-reset/%{email_token} + + confirm_new_email: + subject_template: "[%{site_name}] Confirm your new email address" + text_body_template: | + Confirm your new email address for %{site_name} by clicking on the following link: + + %{base_url}/users/authorize-email/%{email_token} + + confirm_old_email: + subject_template: "[%{site_name}] Confirm your current email address" + text_body_template: | + Before we can change your email address, we need you to confirm that you control + the current email account. After you complete this step, we will have you confirm + the new email address. + + Confirm your current email address for %{site_name} by clicking on the following link: + + %{base_url}/users/authorize-email/%{email_token} + + notify_old_email: + subject_template: "[%{site_name}] Your email address has been changed" + text_body_template: | + This is an automated message to let you know that your email address for + %{site_name} has been changed. If this was done in error, please contact + a site administrator. + + Your email address has been changed to: + + %{new_email} + + signup_after_approval: + subject_template: "You've been approved on %{site_name}!" + text_body_template: | + Welcome to %{site_name}! + + A staff member approved your account on %{site_name}. + + Click the following link to confirm and activate your new account: + %{base_url}/users/activate-account/%{email_token} + + If the above link is not clickable, try copying and pasting it into the address bar of your web browser. + + %{new_user_tips} + + We believe in [civilized community behavior](%{base_url}/guidelines) at all times. + + Enjoy your stay! + + (If you need to communicate with [staff members](%{base_url}/about) as a new user, just reply to this message.) + + signup: + subject_template: "[%{site_name}] Confirm your new account" + text_body_template: | + Welcome to %{site_name}! + + Click the following link to confirm and activate your new account: + %{base_url}/users/activate-account/%{email_token} + + If the above link is not clickable, try copying and pasting it into the address bar of your web browser. + + page_not_found: + title: "Oops! That page doesn’t exist or is private." + popular_topics: "Popular" + recent_topics: "Recent" + see_more: "More" + search_title: "Search this site" + search_google: "Google" + + login_required: + welcome_message: | + #[Welcome to %{title}](#welcome) + An account is required. Please create an account or log in to continue. + + terms_of_service: + title: "Terms of Service" + signup_form_message: 'I have read and accept the Terms of Service.' + + deleted: 'deleted' + + upload: + edit_reason: "downloaded local copies of images" + unauthorized: "Sorry, the file you are trying to upload is not authorized (authorized extensions: %{authorized_extensions})." + pasted_image_filename: "Pasted image" + store_failure: "Failed to store upload #%{upload_id} for user #%{user_id}." + file_missing: "Sorry, you must provide a file to upload." + attachments: + too_large: "Sorry, the file you are trying to upload is too big (maximum size is %{max_size_kb}KB)." + images: + too_large: "Sorry, the image you are trying to upload is too big (maximum size is %{max_size_kb}KB), please resize it and try again." + size_not_found: "Sorry, but we couldn't determine the size of the image. Maybe your image is corrupted?" + + avatar: + missing: "Sorry, we can't find any avatar associated with that email address. Can you try uploading it again?" + + flag_reason: + sockpuppet: "A new user created a topic, and another new user at the same IP address (%{ip_address}) replied. See the `flag_sockpuppets` site setting." + spam_hosts: "This new user tried to create multiple posts with links to the same domain (%{domain}). See the `newuser_spam_host_threshold` site setting." + + email_log: + post_user_deleted: "User of the post has been deleted." + no_user: "Can't find user with id %{user_id}" + anonymous_user: "User is anonymous" + suspended_not_pm: "User is suspended, not a message" + seen_recently: "User was seen recently" + post_not_found: "Can't find a post with id %{post_id}" + notification_already_read: "The notification this email is about has already been read" + topic_nil: "post.topic is nil" + post_deleted: "post was deleted by the author" + user_suspended: "user was suspended" + already_read: "user has already read this post" + exceeded_emails_limit: "Exceeded max_emails_per_day_per_user" + exceeded_bounces_limit: "Exceeded bounce_score_threshold" + message_blank: "message is blank" + message_to_blank: "message.to is blank" + text_part_body_blank: "text_part.body is blank" + body_blank: "body is blank" + no_echo_mailing_list_mode: "Mailing list notifications disabled for user's own posts" + + color_schemes: + base_theme_name: "Base" + + about: "About" + guidelines: "Guidelines" + privacy: "Privacy" + + edit_this_page: "Edit this page" + + csv_export: + boolean_yes: "Yes" + boolean_no: "No" + + static_topic_first_reply: | + Edit the first post in this topic to change the contents of the %{page_name} page. + + guidelines_topic: + title: "FAQ/Guidelines" + body: | + + + ## [This is a Civilized Place for Public Discussion](#civilized) + + Please treat this discussion forum with the same respect you would a public park. We, too, are a shared community resource — a place to share skills, knowledge and interests through ongoing conversation. + + These are not hard and fast rules, merely aids to the human judgment of our community. Use these guidelines to keep this a clean, well-lighted place for civilized public discourse. + + + + ## [Improve the Discussion](#improve) + + Help us make this a great place for discussion by always working to improve the discussion in some way, however small. If you are not sure your post adds to the conversation, think over what you want to say and try again later. + + The topics discussed here matter to us, and we want you to act as if they matter to you, too. Be respectful of the topics and the people discussing them, even if you disagree with some of what is being said. + + One way to improve the discussion is by discovering ones that are already happening. Please spend some time browsing the topics here before replying or starting your own, and you’ll have a better chance of meeting others who share your interests. + + + + ## [Be Agreeable, Even When You Disagree](#agreeable) + + You may wish to respond to something by disagreeing with it. That’s fine. But, remember to _criticize ideas, not people_. Please avoid: + + * Name-calling. + * Ad hominem attacks. + * Responding to a post’s tone instead of its actual content. + * Knee-jerk contradiction. + + Instead, provide reasoned counter-arguments that improve the conversation. + + + + ## [Your Participation Counts](#participate) + + The conversations we have here set the tone for everyone. Help us influence the future of this community by choosing to engage in discussions that make this forum an interesting place to be — and avoiding those that do not. + + Discourse provides tools that enable the community to collectively identify the best (and worst) contributions: favorites, bookmarks, likes, flags, replies, edits, and so forth. Use these tools to improve your own experience, and everyone else’s, too. + + Let’s try to leave our park better than we found it. + + + + ## [If You See a Problem, Flag It](#flag-problems) + + Moderators have special authority; they are responsible for this forum. But so are you. With your help, moderators can be community facilitators, not just janitors or police. + + When you see bad behavior, don’t reply. It encourages the bad behavior by acknowledging it, consumes your energy, and wastes everyone’s time. _Just flag it_. If enough flags accrue, action will be taken, either automatically or by moderator intervention. + + In order to maintain our community, moderators reserve the right to remove any content and any user account for any reason at any time. Moderators do not preview new posts in any way; the moderators and site operators take no responsibility for any content posted by the community. + + + + ## [Always Be Civil](#be-civil) + + Nothing sabotages a healthy conversation like rudeness: + + * Be civil. Don’t post anything that a reasonable person would consider offensive, abusive, or hate speech. + * Keep it clean. Don’t post anything obscene or sexually explicit. + * Respect each other. Don’t harass or grief anyone, impersonate people, or expose their private information. + * Respect our forum. Don’t post spam or otherwise vandalize the forum. + + These are not concrete terms with precise definitions — avoid even the _appearance_ of any of these things. If you’re unsure, ask yourself how you would feel if your post was featured on the front page of the New York Times. + + This is a public forum, and search engines index these discussions. Keep the language, links, and images safe for family and friends. + + + + ## [Keep It Tidy](#keep-tidy) + + Make the effort to put things in the right place, so that we can spend more time discussing and less cleaning up. So: + + * Don’t start a topic in the wrong category. + * Don’t cross-post the same thing in multiple topics. + * Don’t post no-content replies. + * Don’t divert a topic by changing it midstream. + * Don’t sign your posts — every post has your profile information attached to it. + + Rather than posting “+1” or “Agreed”, use the Like button. Rather than taking an existing topic in a radically different direction, use Reply as a Linked Topic. + + + + ## [Post Only Your Own Stuff](#stealing) + + You may not post anything digital that belongs to someone else without permission. You may not post descriptions of, links to, or methods for stealing someone’s intellectual property (software, video, audio, images), or for breaking any other law. + + + + ## [Powered by You](#power) + + This site is operated by your [friendly local staff](/about) and *you*, the community. If you have any further questions about how things should work here, open a new topic in the [site feedback category](/c/site-feedback) and let's discuss! If there's a critical or urgent issue that can't be handled by a meta topic or flag, contact us via the [staff page](/about). + + + + ## [Terms of Service](#tos) + + Yes, legalese is boring, but we must protect ourselves – and by extension, you and your data – against unfriendly folks. We have a [Terms of Service](/tos) describing your (and our) behavior and rights related to content, privacy, and laws. To use this service, you must agree to abide by our [TOS](/tos). + + + tos_topic: + title: "Terms of Service" + body: | + The following terms and conditions govern all use of the %{company_domain} website and all content, services and products available at or through the website, including, but not limited to, %{company_domain} Forum Software, %{company_domain} Support Forums and the %{company_domain} Hosting service ("Hosting"), (taken together, the Website). The Website is owned and operated by %{company_full_name} ("%{company_name}"). The Website is offered subject to your acceptance without modification of all of the terms and conditions contained herein and all other operating rules, policies (including, without limitation, %{company_domain}’s [Privacy Policy](/privacy) and [Community Guidelines](/faq)) and procedures that may be published from time to time on this Site by %{company_name} (collectively, the "Agreement"). + + Please read this Agreement carefully before accessing or using the Website. By accessing or using any part of the web site, you agree to become bound by the terms and conditions of this agreement. If you do not agree to all the terms and conditions of this agreement, then you may not access the Website or use any services. If these terms and conditions are considered an offer by %{company_name}, acceptance is expressly limited to these terms. The Website is available only to individuals who are at least 13 years old. + + + + ## [1. Your %{company_domain} Account](#1) + + If you create an account on the Website, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account. You must immediately notify %{company_name} of any unauthorized uses of your account or any other breaches of security. %{company_name} will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. + + + + ## [2. Responsibility of Contributors](#2) + + If you post material to the Website, post links on the Website, or otherwise make (or allow any third party to make) material available by means of the Website (any such material, "Content"), You are entirely responsible for the content of, and any harm resulting from, that Content. That is the case regardless of whether the Content in question constitutes text, graphics, an audio file, or computer software. By making Content available, you represent and warrant that: + + * the downloading, copying and use of the Content will not infringe the proprietary rights, including but not limited to the copyright, patent, trademark or trade secret rights, of any third party; + * if your employer has rights to intellectual property you create, you have either (i) received permission from your employer to post or make available the Content, including but not limited to any software, or (ii) secured from your employer a waiver as to all rights in or to the Content; + * you have fully complied with any third-party licenses relating to the Content, and have done all things necessary to successfully pass through to end users any required terms; + * the Content does not contain or install any viruses, worms, malware, Trojan horses or other harmful or destructive content; + * the Content is not spam, is not machine- or randomly-generated, and does not contain unethical or unwanted commercial content designed to drive traffic to third party sites or boost the search engine rankings of third party sites, or to further unlawful acts (such as phishing) or mislead recipients as to the source of the material (such as spoofing); + * the Content is not pornographic, does not contain threats or incite violence, and does not violate the privacy or publicity rights of any third party; + * your content is not getting advertised via unwanted electronic messages such as spam links on newsgroups, email lists, blogs and web sites, and similar unsolicited promotional methods; + * your content is not named in a manner that misleads your readers into thinking that you are another person or company; and + * you have, in the case of Content that includes computer code, accurately categorized and/or described the type, nature, uses and effects of the materials, whether requested to do so by %{company_name} or otherwise. + + + + ## [3. User Content License](#3) + + User contributions are licensed under a [Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License](http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_US). Without limiting any of those representations or warranties, %{company_name} has the right (though not the obligation) to, in %{company_name}’s sole discretion (i) refuse or remove any content that, in %{company_name}’s reasonable opinion, violates any %{company_name} policy or is in any way harmful or objectionable, or (ii) terminate or deny access to and use of the Website to any individual or entity for any reason, in %{company_name}’s sole discretion. %{company_name} will have no obligation to provide a refund of any amounts previously paid. + + + + + ## [4. Payment and Renewal](#4) + + ### General Terms + + Optional paid services or upgrades may be available on the Website. When utilizing an optional paid service or upgrade, you agree to pay %{company_name} the monthly or annual subscription fees indicated. Payments will be charged on a pre-pay basis on the day you begin utilizing the service or upgrade and will cover the use of that service or upgrade for a monthly or annual subscription period as indicated. These fees are not refundable. + + ### Automatic Renewal + + Unless you notify %{company_name} before the end of the applicable subscription period that you want to cancel a service or upgrade, your subscription will automatically renew and you authorize us to collect the then-applicable annual or monthly subscription fee (as well as any taxes) using any credit card or other payment mechanism we have on record for you. Subscriptions can be canceled at any time. + + + + ## [5. Services](#5) + + ### Hosting, Support Services + + Optional Hosting and Support services may be provided by %{company_name} under the terms and conditions for each such service. By signing up for a Hosting/Support or Support services account, you agree to abide by such terms and conditions. + + + + ## [6. Responsibility of Website Visitors](#6) + + %{company_name} has not reviewed, and cannot review, all of the material, including computer software, posted to the Website, and cannot therefore be responsible for that material’s content, use or effects. By operating the Website, %{company_name} does not represent or imply that it endorses the material there posted, or that it believes such material to be accurate, useful or non-harmful. You are responsible for taking precautions as necessary to protect yourself and your computer systems from viruses, worms, Trojan horses, and other harmful or destructive content. The Website may contain content that is offensive, indecent, or otherwise objectionable, as well as content containing technical inaccuracies, typographical mistakes, and other errors. The Website may also contain material that violates the privacy or publicity rights, or infringes the intellectual property and other proprietary rights, of third parties, or the downloading, copying or use of which is subject to additional terms and conditions, stated or unstated. %{company_name} disclaims any responsibility for any harm resulting from the use by visitors of the Website, or from any downloading by those visitors of content there posted. + + + + ## [7. Content Posted on Other Websites](#7) + + We have not reviewed, and cannot review, all of the material, including computer software, made available through the websites and webpages to which %{company_domain} links, and that link to %{company_domain}. %{company_name} does not have any control over those non-%{company_domain} websites and webpages, and is not responsible for their contents or their use. By linking to a non-%{company_domain} website or webpage, %{company_name} does not represent or imply that it endorses such website or webpage. You are responsible for taking precautions as necessary to protect yourself and your computer systems from viruses, worms, Trojan horses, and other harmful or destructive content. %{company_name} disclaims any responsibility for any harm resulting from your use of non-%{company_domain} websites and webpages. + + + + ## [8. Copyright Infringement and DMCA Policy](#8) + + As %{company_name} asks others to respect its intellectual property rights, it respects the intellectual property rights of others. If you believe that material located on or linked to by %{company_domain} violates your copyright, and if this website resides in the USA, you are encouraged to notify %{company_name} in accordance with %{company_name}’s [Digital Millennium Copyright Act](http://en.wikipedia.org/wiki/Digital_Millennium_Copyright_Act) ("DMCA") Policy. %{company_name} will respond to all such notices, including as required or appropriate by removing the infringing material or disabling all links to the infringing material. %{company_name} will terminate a visitor’s access to and use of the Website if, under appropriate circumstances, the visitor is determined to be a repeat infringer of the copyrights or other intellectual property rights of %{company_name} or others. In the case of such termination, %{company_name} will have no obligation to provide a refund of any amounts previously paid to %{company_name}. + + + + ## [9. Intellectual Property](#9) + + This Agreement does not transfer from %{company_name} to you any %{company_name} or third party intellectual property, and all right, title and interest in and to such property will remain (as between the parties) solely with %{company_name}. %{company_name}, %{company_domain}, the %{company_domain} logo, and all other trademarks, service marks, graphics and logos used in connection with %{company_domain}, or the Website are trademarks or registered trademarks of %{company_name} or %{company_name}’s licensors. Other trademarks, service marks, graphics and logos used in connection with the Website may be the trademarks of other third parties. Your use of the Website grants you no right or license to reproduce or otherwise use any %{company_name} or third-party trademarks. + + + + ## [10. Advertisements](#10) + + %{company_name} reserves the right to display advertisements on your content unless you have purchased an Ad-free Upgrade or a Services account. + + + + ## [11. Attribution](#11) + + %{company_name} reserves the right to display attribution links such as ‘Powered by %{company_domain},’ theme author, and font attribution in your content footer or toolbar. Footer credits and the %{company_domain} toolbar may not be removed regardless of upgrades purchased. + + + + ## [12. Changes](#12) + + %{company_name} reserves the right, at its sole discretion, to modify or replace any part of this Agreement. It is your responsibility to check this Agreement periodically for changes. Your continued use of or access to the Website following the posting of any changes to this Agreement constitutes acceptance of those changes. %{company_name} may also, in the future, offer new services and/or features through the Website (including, the release of new tools and resources). Such new features and/or services shall be subject to the terms and conditions of this Agreement. + + + + ## [13. Termination](#13) + + %{company_name} may terminate your access to all or any part of the Website at any time, with or without cause, with or without notice, effective immediately. If you wish to terminate this Agreement or your %{company_domain} account (if you have one), you may simply discontinue using the Website. All provisions of this Agreement which by their nature should survive termination shall survive termination, including, without limitation, ownership provisions, warranty disclaimers, indemnity and limitations of liability. + + + + ## [14. Disclaimer of Warranties](#14) + + The Website is provided "as is". %{company_name} and its suppliers and licensors hereby disclaim all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement. Neither %{company_name} nor its suppliers and licensors, makes any warranty that the Website will be error free or that access thereto will be continuous or uninterrupted. If you’re actually reading this, here’s [a treat](http://www.newyorker.com/online/blogs/shouts/2012/12/the-hundred-best-lists-of-all-time.html). You understand that you download from, or otherwise obtain content or services through, the Website at your own discretion and risk. + + + + ## [15. Limitation of Liability](#15) + + In no event will %{company_name}, or its suppliers or licensors, be liable with respect to any subject matter of this agreement under any contract, negligence, strict liability or other legal or equitable theory for: (i) any special, incidental or consequential damages; (ii) the cost of procurement for substitute products or services; (iii) for interruption of use or loss or corruption of data; or (iv) for any amounts that exceed the fees paid by you to %{company_name} under this agreement during the twelve (12) month period prior to the cause of action. %{company_name} shall have no liability for any failure or delay due to matters beyond their reasonable control. The foregoing shall not apply to the extent prohibited by applicable law. + + + + ## [16. General Representation and Warranty](#16) + + You represent and warrant that (i) your use of the Website will be in strict accordance with the %{company_name} [Privacy Policy](/privacy), [Community Guidelines](/guidelines), with this Agreement and with all applicable laws and regulations (including without limitation any local laws or regulations in your country, state, city, or other governmental area, regarding online conduct and acceptable content, and including all applicable laws regarding the transmission of technical data exported from the country in which this website resides or the country in which you reside) and (ii) your use of the Website will not infringe or misappropriate the intellectual property rights of any third party. + + + + ## [17. Indemnification](#17) + + You agree to indemnify and hold harmless %{company_name}, its contractors, and its licensors, and their respective directors, officers, employees and agents from and against any and all claims and expenses, including attorneys’ fees, arising out of your use of the Website, including but not limited to your violation of this Agreement. + + + + ## [18. Miscellaneous](#18) + + This Agreement constitutes the entire agreement between %{company_name} and you concerning the subject matter hereof, and they may only be modified by a written amendment signed by an authorized executive of %{company_name}, or by the posting by %{company_name} of a revised version. Except to the extent applicable law, if any, provides otherwise, this Agreement, any access to or use of the Website will be governed by the laws of the state of California, U.S.A., excluding its conflict of law provisions, and the proper venue for any disputes arising out of or relating to any of the same will be the state and federal courts located in San Francisco County, California. Except for claims for injunctive or equitable relief or claims regarding intellectual property rights (which may be brought in any competent court without the posting of a bond), any dispute arising under this Agreement shall be finally settled in accordance with the Comprehensive Arbitration Rules of the Judicial Arbitration and Mediation Service, Inc. (“JAMS”) by three arbitrators appointed in accordance with such Rules. The arbitration shall take place in San Francisco, California, in the English language and the arbitral decision may be enforced in any court. The prevailing party in any action or proceeding to enforce this Agreement shall be entitled to costs and attorneys’ fees. If any part of this Agreement is held invalid or unenforceable, that part will be construed to reflect the parties’ original intent, and the remaining portions will remain in full force and effect. A waiver by either party of any term or condition of this Agreement or any breach thereof, in any one instance, will not waive such term or condition or any subsequent breach thereof. You may assign your rights under this Agreement to any party that consents to, and agrees to be bound by, its terms and conditions; %{company_name} may assign its rights under this Agreement without condition. This Agreement will be binding upon and will inure to the benefit of the parties, their successors and permitted assigns. + + This document is CC-BY-SA. It was last updated May 31, 2013. + + Originally adapted from the [WordPress Terms of Service](http://en.wordpress.com/tos/). + + privacy_topic: + title: "Privacy Policy" + body: | + + + ## [What information do we collect?](#collect) + + 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. + + 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. + + 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. + + + + ## [What do we use your information for?](#use) + + Any of the information we collect from you may be used in one of the following ways: + + * To personalize your experience — your information helps us to better respond to your individual needs. + * To improve our site — we continually strive to improve our site offerings based on the information and feedback we receive from you. + * To improve customer service — your information helps us to more effectively respond to your customer service requests and support needs. + * To send periodic emails — 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. + + + + ## [How do we protect your information?](#protect) + + We implement a variety of security measures to maintain the safety of your personal information when you enter, submit, or access your personal information. + + + + ## [What is your data retention policy?](#data-retention) + + We will make a good faith effort to: + + * Retain server logs containing the IP address of all requests to this server no more than 90 days. + * Retain the IP addresses associated with registered users and their posts no more than 5 years. + + + + ## [Do we use cookies?](#cookies) + + 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. + + 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. + + + + ## [Do we disclose any information to outside parties?](#disclose) + + 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. + + + + ## [Third party links](#third-party) + + 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. + + + + ## [Children's Online Privacy Protection Act Compliance](#coppa) + + Our site, products and services are all directed to people who are at least 13 years old or older. If this server is in the USA, and you are under the age of 13, per the requirements of COPPA ([Children's Online Privacy Protection Act](https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act)), do not use this site. + + + + ## [Online Privacy Policy Only](#online) + + This online privacy policy applies only to information collected through our site and not to information collected offline. + + + + ## [Your Consent](#consent) + + By using our site, you consent to our web site privacy policy. + + + + ## [Changes to our Privacy Policy](#changes) + + If we decide to change our privacy policy, we will post those changes on this page. + + This document is CC-BY-SA. It was last updated May 31, 2013. + + badges: + editor: + name: Editor + description: First post edit + long_description: | + This badge is granted the first time you edit one of your posts. While you won't be able to edit your posts forever, editing is always a good idea — you can improve your posts, fix small mistakes, or add anything you missed when you originally posted. Edit to make your posts even better! + basic_user: + name: Basic + description: Granted all essential community functions + long_description: | + This badge is granted when you reach trust level 1. Thanks for sticking around a little while and reading a few topics to learn what our community is about. Your new user restrictions have been lifted; you've been granted all essential community abilities, such as personal messaging, flagging, wiki editing, and the ability to post multiple images and links. + member: + name: Member + description: Granted invitations, group messaging, more likes + long_description: | + This badge is granted when you reach trust level 2. Thanks for participating over a period of weeks to truly join our community. You can now send invitations from your user page or individual topics, create group personal messages, and have a few more likes per day. + regular: + name: Regular + description: Granted recategorize, rename, followed links, wiki, more likes + long_description: | + This badge is granted when you reach trust level 3. Thanks for being a regular part of our community over a period of months. You're now one of the most active readers, and a reliable contributor that makes our community great. You can now recategorize and rename topics, take advantage of more powerful spam flags, access a private lounge area, and you'll also get lots more likes per day. + leader: + name: Leader + description: Granted global edit, pin, close, archive, split and merge, more likes + long_description: | + This badge is granted when you reach trust level 4. You're a leader in this community as selected by staff, and you set a positive example for the rest of the community in your actions and words here. You have the ability to edit all posts, take common topic moderator actions such as pin, close, unlist, archive, split, and merge, and you have tons of likes per day. + welcome: + name: Welcome + description: Received a like + long_description: | + This badge is granted when you receive your first like on a post. Congratulations, you've posted something that your fellow community members found interesting, cool, or useful! + autobiographer: + name: Autobiographer + description: Filled out profile information + long_description: | + This badge is granted for filling out your user profile and selecting a profile picture. Letting the community know a bit more about who you are and what you're interested in makes for a better, more connected community. Join us! + anniversary: + name: Anniversary + description: Active member for a year, posted at least once + long_description: | + This badge is granted when you've been a member for a year with at least one post in that year. Thank you for sticking around and contributing to our community. We couldn't do it without you. + nice_post: + name: Nice Reply + description: Received 10 likes on a reply + long_description: | + This badge is granted when your reply gets 10 likes. Your reply really made an impression on the community and helped move the conversation forward! + good_post: + name: Good Reply + description: Received 25 likes on a reply + long_description: | + This badge is granted when your reply gets 25 likes. Your reply was exceptional and made the conversation a whole lot better for everyone! + great_post: + name: Great Reply + description: Received 50 likes on a reply + long_description: | + This badge is granted when your reply gets 50 likes. Wow! Your reply was inspiring, fascinating, hilarious, or insightful and the community loved it. + nice_topic: + name: Nice Topic + description: Received 10 likes on a topic + long_description: | + This badge is granted when your topic gets 10 likes. Hey, you started an interesting conversation that the community enjoyed! + good_topic: + name: Good Topic + description: Received 25 likes on a topic + long_description: | + This badge is granted when your topic gets 25 likes. You launched a vibrant conversation that the community rallied around and loved! + great_topic: + name: Great Topic + description: Received 50 likes on a topic + long_description: | + This badge is granted when your topic gets 50 likes. You kicked off a fascinating conversation and the community enjoyed the dynamic discussion that resulted! + nice_share: + name: Nice Share + description: Shared a post with 25 unique visitors + long_description: | + This badge is granted for sharing a link that was clicked by 25 outside visitors. Thanks for spreading the word about our discussions, and this community. + good_share: + name: Good Share + description: Shared a post with 300 unique visitors + long_description: | + This badge is granted for sharing a link that was clicked by 300 outside visitors. Good work! You've shown off a great discussion to a bunch of new people and helped this community grow. + great_share: + name: Great Share + description: Shared a post with 1000 unique visitors + long_description: | + This badge is granted for sharing a link that was clicked by 1000 outside visitors. Wow! You've promoted an interesting discussion to a huge new audience, and helped us grow our community in a big way! + first_like: + name: First Like + description: Liked a post + long_description: | + This badge is granted the first time you like a post using the :heart: button. Liking posts is a great way to let your fellow community members know that what they posted was interesting, useful, cool, or fun. Share the love! + first_flag: + name: First Flag + description: Flagged a post + long_description: | + This badge is granted the first time you flag a post. Flagging is how we all help keep this a clean, well lit place for everyone. If you notice any posts that require moderator attention for any reason please don't hesitate to flag. You can also flag to send personal messages to fellow users if you see an issue with their post. If you see a problem, :flag_black: flag it! + promoter: + name: Promoter + description: Invited a user + long_description: | + This badge is granted when you invite someone to join the community via the invite button on your user page, or at the bottom of a topic. Inviting friends who might be interested in specific discussions is an great way to introduce new people to our community, so thanks! + campaigner: + name: Campaigner + description: Invited 3 basic users + long_description: | + This badge is granted when you've invited 3 people who subsequently spent enough time on the site to become basic users. A vibrant community needs a regular infusion of newcomers who regularly participate and add new voices to the conversations. + champion: + name: Champion + description: Invited 5 members + long_description: | + This badge is granted when you've invited 5 people who subsequently spent enough time on the site to become full members. Wow! Thanks for expanding the diversity of our community with new members! + first_share: + name: First Share + description: Shared a post + long_description: | + This badge is granted the first time you share a link to a reply or topic using the share button. Sharing links is a great way to show off interesting discussions with the rest of the world and grow your community. + first_link: + name: First Link + description: Added a link to another topic + long_description: | + This badge is granted the first time you add a link to another topic. Linking topics helps fellow readers find interesting related conversations, by showing the connections between topics in both directions. Link freely! + first_quote: + name: First Quote + description: Quoted a post + long_description: | + This badge is granted the first time you quote a post in your reply. Quoting relevant sections of earlier posts in your reply helps keep discussions connected together and on topic. The easiest way to quote is to highlight a section of a post, and then press any reply button. Quote generously! + read_guidelines: + name: Read Guidelines + description: Read the community guidelines + long_description: | + This badge is granted for reading the community guidelines. Following and sharing these simple guidelines helps build a safe, fun, and sustainable community for everyone. Always remember there's another human being, one very much like yourself, on the other side of that screen. Be nice! + reader: + name: Reader + description: Read every reply in a topic with more than 100 replies + long_description: | + This badge is granted the first time you read a long topic with more than 100 replies. Reading a conversation closely helps you follow the discussion, understand different viewpoints, and leads to more interesting conversations. The more you read, the better the conversation gets. As we like to say, Reading is Fundamental! :slight_smile: + popular_link: + name: Popular Link + description: Posted an external link with 50 clicks + long_description: | + This badge is granted when a link you shared gets 50 clicks. Thanks for posting a useful link that added interesting context to the conversation! + hot_link: + name: Hot Link + description: Posted an external link with 300 clicks + long_description: | + This badge is granted when a link you shared gets 300 clicks. Thanks for posting a fascinating link that drove the conversation forward and illuminated the discussion! + famous_link: + name: Famous Link + description: Posted an external link with 1000 clicks + long_description: | + This badge is granted when a link you shared gets 1000 clicks. Wow! You posted a link that significantly improved the conversation by adding essential detail, context, and information. Great work! + appreciated: + name: Appreciated + description: Received 1 like on 20 posts + long_description: | + This badge is granted when you receive at least one like on 20 different posts. The community is enjoying your contributions to the conversations here! + respected: + name: Respected + description: Received 2 likes on 100 posts + long_description: | + This badge is granted when you receive at least 2 likes on 100 different posts. The community is growing to respect your many contributions to the conversations here. + admired: + name: Admired + description: Received 5 likes on 300 posts + long_description: | + This badge is granted when you receive at least 5 likes on 300 different posts. Wow! The community admires your frequent, high quality contributions to the conversations here. + out_of_love: + name: Out of Love + description: Used 50 likes in a day + long_description: | + This badge is granted when you use all 50 of your daily likes. Remembering to take a moment and like the posts you enjoy and appreciate encourages your fellow community members to create even more great discussions in the future. + higher_love: + name: Higher Love + description: Used 50 likes in a day 5 times + long_description: | + This badge is granted when you use all 50 of your daily likes for 5 days. Thanks for taking the time actively encouraging the best conversations every day! + crazy_in_love: + name: Crazy in Love + description: Used 50 likes in a day 20 times + long_description: | + This badge is granted when you use all 50 of your daily likes for 20 days. Wow! You're a model of regularly encouraging your fellow community members! + thank_you: + name: Thank You + description: Has 20 liked posts and gave 10 likes + long_description: | + This badge is granted when you have 20 liked posts and give 10 or more likes in return. When someone likes your posts, you find the time to like what others are posting, too. + gives_back: + name: Gives Back + description: Has 100 liked posts and gave 100 likes + long_description: | + This badge is granted when you have 100 liked posts and give 100 or more likes in return. Thanks for paying it forward! + empathetic: + name: Empathetic + description: Has 500 liked posts and gave 1000 likes + long_description: | + This badge is granted when you have 500 liked posts and give 1000 or more likes in return. Wow! You're a model of generosity and mutual appreciation :two_hearts:. + first_emoji: + name: First Emoji + description: Used an Emoji in a Post + long_description: | + This badge is granted the first time you add an Emoji to your post :thumbsup:. Emoji let you convey emotion in your posts, from happiness :smiley: to sadness :anguished: to anger :angry: and everything in between :sunglasses: . Just type a : (colon) or press the Emoji toolbar button in the editor to select from hundreds of choices :ok_hand: + first_mention: + name: First Mention + description: Mentioned a user in a Post + long_description: This badge is granted the first time you mention someone's @username in your post. Each mention generates a notification to that person, so they know about your post. Just begin typing @ (at symbol) to mention any user or, if allowed, group – it's a convenient way to bring something to their attention. + first_onebox: + name: First Onebox + description: Posted a link that was oneboxed + long_description: This badge is granted the first time you post a link on a line by itself, which was then automatically expanded into a onebox with a brief summary of the link, a title, and (when available) a picture. + first_reply_by_email: + name: First Reply By Email + description: Replied to a Post via email + long_description: | + This badge is granted the first time you reply to a post via email :e-mail:. + + admin_login: + success: "Email Sent" + error: "Error!" + email_input: "Admin Email" + submit_button: "Send Email" + + discourse_hub: + access_token_problem: "Tell an admin: Please update the site settings to include the correct discourse_org_access_key." + + performance_report: + initial_post_raw: This topic includes daily performance reports for your site. + initial_topic_title: Website performance reports + + topic_invite: + user_exists: "Sorry, that user has already been invited. You may only invite a user to a topic once." + + tags: + title: "Tags" + staff_tag_disallowed: "The tag \"%{tag}\" may only be applied by staff." + staff_tag_remove_disallowed: "The tag \"%{tag}\" may only be removed by staff." + rss_by_tag: "Topics tagged %{tag}" + + finish_installation: + congratulations: "Congratulations, you installed Discourse!" + register: + button: "Register" + title: "Register Admin Account" + help: "register a new account to get started" + no_emails: "Unfortunately, no administrator emails were defined during setup, so finalizing the configuration may be difficult." + confirm_email: + title: "Confirm your Email" + message: "

We sent an activation mail to %{email}. Please follow the instructions in the email to activate your account.

If it doesn't arrive, ensure you have set up email correctly for your Discourse and check your spam folder.

" + resend_email: + title: "Resend Activation Email" + message: "

We've re-sent the activation email to %{email}" + + safe_mode: + title: "Enter safe mode" + description: "Safe mode allows you to test your site without loading plugins or site customizations." + no_customizations: "Disable all site customizations" + only_official: "Disable unofficial plugins" + no_plugins: "Disable all plugins" + enter: "Enter Safe Mode" + wizard: + title: "Discourse Setup" + step: + locale: + title: "Welcome to your Discourse!" + fields: + default_locale: + description: "What’s the default language for your community?" + + forum_title: + title: "Name" + description: "Your name is a sign visible in the distance, the first thing potential visitors will notice about your community. What does your name and title say about your community?" + + fields: + title: + label: "Your community’s name" + placeholder: "Jane’s Hangout" + site_description: + label: "Describe your community in one short sentence" + placeholder: "A place for Jane and her friends to discuss cool stuff" + + introduction: + title: "Introduction" + + fields: + welcome: + label: "Welcome Topic" + description: "

How would you describe your community to a stranger on an elevator in about 1 minute?

+ +

Your welcome topic is the first thing new visitors will see. Think of it as your one paragraph 'elevator pitch' or 'mission statement'.

" + one_paragraph: "Please restrict your welcome message to one paragraph." + + privacy: + title: "Access" + description: "

Is your community open to everyone, or is it restricted by membership, invitation, or approval? If you prefer, you can set things up privately, then switch over to public later.

+

Remember you can always send invites from topics, or from your user profile page, too.

" + + fields: + privacy: + choices: + open: + label: "Public" + description: "Anyone can access this community and sign up for an account" + restricted: + label: "Private" + description: "Only people I have invited or approved can access this community" + + contact: + title: "Contact" + fields: + contact_email: + label: "Mail" + placeholder: "name@example.com" + description: "Email address for the person or group responsible for this community. Used for critical notifications such as unhandled flags, security updates, and on your about page for urgent community contact." + contact_url: + label: "Web Page" + placeholder: "http://www.example.com/contact-us" + description: "General contact web page for you or your organization. Will be displayed on your about page." + site_contact: + label: "Automated Messages" + description: "All automated Discourse personal messages will be sent from this user. Most importantly, this user will be the designated sender of every welcome message automatically sent to new users." + + corporate: + title: "Organization" + description: "These names will be entered in your Privacy Policy and Terms of Service, which you can edit any time in the Staff category. If you don’t have a company, feel free to skip this step for now." + + fields: + company_short_name: + label: "Company Name (short)" + placeholder: "Initech" + company_full_name: + label: "Company Name (full)" + placeholder: "Initech, Inc." + company_domain: + label: "Company Domain Name" + placeholder: "initech.com" + + colors: + title: "Theme" + fields: + theme_id: + description: "Do you prefer a light or dark color scheme to start with? You can always further customize the look and feel of your site via Admin, Customize." + choices: + default: + label: "Simple Light" + dark: + label: "Simple Dark" + + logos: + title: "Logos" + fields: + logo_url: + label: "Primary Logo" + description: "The logo image at the top left of your site. Use a wide rectangle shape." + logo_small_url: + label: "Compact Logo" + description: "A compact version of your logo, shown at the top left of your site when scrolling down. Use a square shape." + + icons: + title: "Icons" + fields: + favicon_url: + label: "Small Icon" + description: "Icon image used to represent your site in web browsers that looks good at small sizes such as 32px by 32px." + apple_touch_icon_url: + label: "Large Icon" + description: "Icon image used to represent your site on modern devices that looks good at larger sizes. Recommended size is at least 144px by 144px." + + homepage: + description: "We recommend showing the latest topics on your homepage, but you can choose to show categories (groups of topics) on the homepage if you prefer." + title: "Homepage" + + fields: + homepage_style: + choices: + latest: + label: "Latest Topics" + categories: + label: "Categories" + + emoji: + title: "Emoji" + description: "Which Emoji style do you prefer for your community? You can always add more custom Emoji later via Admin, Customize, Emoji." + + invites: + title: "Invite Staff" + description: "You’re almost done! Let’s invite some staff members to help seed your discussions with interesting topics and replies to get your community started." + + finished: + title: "Your Discourse is Ready!" + description: | +

If you ever feel like changing these settings, visit your admin section; find it next to the wrench icon in the site menu.

+

Have fun, and good luck building your new community!

diff --git a/plugins/discourse-details/config/locales/client.ur.yml b/plugins/discourse-details/config/locales/client.ur.yml new file mode 100644 index 00000000000..8051af44458 --- /dev/null +++ b/plugins/discourse-details/config/locales/client.ur.yml @@ -0,0 +1,7 @@ +ur: + js: + details: + title: Hide Details + composer: + details_title: Summary + details_text: "This text will be hidden" diff --git a/plugins/discourse-details/config/locales/server.ur.yml b/plugins/discourse-details/config/locales/server.ur.yml new file mode 100644 index 00000000000..c97287e9c4a --- /dev/null +++ b/plugins/discourse-details/config/locales/server.ur.yml @@ -0,0 +1,3 @@ +ur: + site_settings: + details_enabled: "Enable the details plugin. If you change this, you must rebake all posts with: \"rake posts:rebake\"." diff --git a/plugins/discourse-nginx-performance-report/config/locales/server.ur.yml b/plugins/discourse-nginx-performance-report/config/locales/server.ur.yml new file mode 100644 index 00000000000..c9ce6b0c708 --- /dev/null +++ b/plugins/discourse-nginx-performance-report/config/locales/server.ur.yml @@ -0,0 +1,3 @@ +ur: + site_settings: + daily_performance_report: "Analyze NGINX logs daily and post a Staff Only topic with details" diff --git a/plugins/poll/config/locales/client.ur.yml b/plugins/poll/config/locales/client.ur.yml new file mode 100644 index 00000000000..7739827c863 --- /dev/null +++ b/plugins/poll/config/locales/client.ur.yml @@ -0,0 +1,89 @@ +# encoding: utf-8 +# This file contains content for the client portion of the poll plugin, sent out +# to the Javascript app. +# +# To work with us on translations, see: +# https://www.transifex.com/projects/p/discourse-org/ +# +# This is a "source" file, which is used by Transifex to get translations for other languages. +# After this file is changed, it needs to be pushed by a maintainer to Transifex: +# +# tx push -s +# +# Read more here: https://meta.discourse.org/t/contribute-a-translation-to-discourse/14882 +# +# To validate this YAML file after you change it, please paste it into +# http://yamllint.com/ + +ur: + js: + poll: + voters: + one: "voter" + other: "voters" + total_votes: + one: "total vote" + other: "total votes" + + average_rating: "Average rating: %{average}." + + public: + title: "Votes are public." + + multiple: + help: + at_least_min_options: + one: "Choose at least 1 option" + other: "Choose at least %{count} options" + up_to_max_options: + one: "Choose up to 1 option" + other: "Choose up to %{count} options" + x_options: + one: "Choose 1 option" + other: "Choose %{count} options" + between_min_and_max_options: "Choose between %{min} and %{max} options" + + cast-votes: + title: "Cast your votes" + label: "Vote now!" + + show-results: + title: "Display the poll results" + label: "Show results" + + hide-results: + title: "Back to your votes" + label: "Hide results" + + open: + title: "Open the poll" + label: "Open" + confirm: "Are you sure you want to open this poll?" + + close: + title: "Close the poll" + label: "Close" + confirm: "Are you sure you want to close this poll?" + + error_while_toggling_status: "Sorry, there was an error toggling the status of this poll." + error_while_casting_votes: "Sorry, there was an error casting your votes." + error_while_fetching_voters: "Sorry, there was an error displaying the voters." + + ui_builder: + title: Build Poll + insert: Insert Poll + help: + options_count: Enter at least 2 options + poll_type: + label: Type + regular: Single Choice + multiple: Multiple Choice + number: Number Rating + poll_config: + max: Max + min: Min + step: Step + poll_public: + label: Show who voted + poll_options: + label: Enter one poll option per line diff --git a/plugins/poll/config/locales/server.ur.yml b/plugins/poll/config/locales/server.ur.yml new file mode 100644 index 00000000000..051a9d61d85 --- /dev/null +++ b/plugins/poll/config/locales/server.ur.yml @@ -0,0 +1,65 @@ +# encoding: utf-8 +# This file contains content for the server portion of the poll plugin used by Ruby +# +# To work with us on translations, see: +# https://www.transifex.com/projects/p/discourse-org/ +# +# This is a "source" file, which is used by Transifex to get translations for other languages. +# After this file is changed, it needs to be pushed by a maintainer to Transifex: +# +# tx push -s +# +# Read more here: https://meta.discourse.org/t/contribute-a-translation-to-discourse/14882 +# +# To validate this YAML file after you change it, please paste it into +# http://yamllint.com/ + +ur: + site_settings: + poll_enabled: "Allow users to create polls?" + poll_maximum_options: "Maximum number of options allowed in a poll." + poll_edit_window_mins: "Number of minutes after post creation during which polls can be edited." + + poll: + multiple_polls_without_name: "There are multiple polls without a name. Use the 'name' attribute to uniquely identify your polls." + multiple_polls_with_same_name: "There are multiple polls with the same name: %{name}. Use the 'name' attribute to uniquely identify your polls." + + default_poll_must_have_at_least_2_options: "Poll must have at least 2 options." + named_poll_must_have_at_least_2_options: "Poll named %{name} must have at least 2 options." + + default_poll_must_have_less_options: + one: "Poll must have less than 1 option." + other: "Poll must have less than %{count} options." + named_poll_must_have_less_options: + one: "Poll named %{name} must have less than 1 option." + other: "Poll named %{name} must have less than %{count} options." + + default_poll_must_have_different_options: "Poll must have different options." + named_poll_must_have_different_options: "Poll named %{name} must have different options." + + default_poll_with_multiple_choices_has_invalid_parameters: "Poll with multiple choices has invalid parameters." + named_poll_with_multiple_choices_has_invalid_parameters: "Poll named %{name} with multiple choice has invalid parameters." + + requires_at_least_1_valid_option: "You must select at least 1 valid option." + + default_cannot_be_made_public: "Poll with votes cannot be made public." + named_cannot_be_made_public: "Poll named %{name} has votes cannot be made public." + + edit_window_expired: + cannot_change_polls: "You cannot add, remove or rename polls after the first %{minutes} minutes." + op_cannot_edit_options: "You cannot add or remove poll options after the first %{minutes} minutes. Please contact a moderator if you need to edit a poll option." + staff_cannot_add_or_remove_options: "You cannot add or remove poll options after the first %{minutes} minutes. You should close this topic and create a new one instead." + + no_polls_associated_with_this_post: "No polls are associated with this post." + no_poll_with_this_name: "No poll named %{name} associated with this post." + + post_is_deleted: "Cannot act on a deleted post." + + topic_must_be_open_to_vote: "The topic must be open to vote." + poll_must_be_open_to_vote: "Poll must be open to vote." + + topic_must_be_open_to_toggle_status: "The topic must be open to toggle status." + only_staff_or_op_can_toggle_status: "Only a staff member or the original poster can toggle a poll status." + + email: + link_to_poll: "Click to view the poll." diff --git a/public/403.ur.html b/public/403.ur.html new file mode 100644 index 00000000000..f1550135eed --- /dev/null +++ b/public/403.ur.html @@ -0,0 +1,28 @@ + + + + You can't do that (403) + + + + + +
+

403

+

You can't view that resource!

+ +

This will be replaced by a custom Discourse 403 page.

+
+ + diff --git a/public/422.ur.html b/public/422.ur.html new file mode 100644 index 00000000000..244e10b089b --- /dev/null +++ b/public/422.ur.html @@ -0,0 +1,27 @@ + + + + The change you wanted was rejected (422) + + + + + + +
+

The change you wanted was rejected.

+

Maybe you tried to change something you didn't have access to.

+
+ + diff --git a/public/500.ur.html b/public/500.ur.html new file mode 100644 index 00000000000..c22502737c8 --- /dev/null +++ b/public/500.ur.html @@ -0,0 +1,13 @@ + + + + Oops - Error 500 + + + +

Oops

+

The software powering this discussion forum encountered an unexpected problem. We apologize for the inconvenience.

+

Detailed information about the error was logged, and an automatic notification generated. We'll take a look at it.

+

No further action is necessary. However, if the error condition persists, you can provide additional detail, including steps to reproduce the error, by posting a discussion topic in the site's feedback category.

+ + diff --git a/public/503.ur.html b/public/503.ur.html new file mode 100644 index 00000000000..937e5bcda64 --- /dev/null +++ b/public/503.ur.html @@ -0,0 +1,12 @@ + + + + Site Is Undergoing Maintenance - Discourse.org + + + +

We are currently down for planned site maintenance

+

Please check back in a few minutes.

+

Sorry for the inconvenience!

+ + diff --git a/vendor/gems/discourse_imgur/lib/discourse_imgur/locale/server.ur.yml b/vendor/gems/discourse_imgur/lib/discourse_imgur/locale/server.ur.yml new file mode 100644 index 00000000000..34a02275ebb --- /dev/null +++ b/vendor/gems/discourse_imgur/lib/discourse_imgur/locale/server.ur.yml @@ -0,0 +1,22 @@ +# encoding: utf-8 +# +# This file contains content for the server portion of Discourse used by Ruby +# +# To work with us on translations, see: +# https://www.transifex.com/projects/p/discourse-org/ +# +# This is a "source" file, which is used by Transifex to get translations for other languages. +# After this file is changed, it needs to be pushed by a maintainer to Transifex: +# +# tx push -s +# +# Read more here: https://meta.discourse.org/t/contribute-a-translation-to-discourse/14882 +# +# To validate this YAML file after you change it, please paste it into +# http://yamllint.com/ + +ur: + site_settings: + enable_imgur: "Enable imgur api for uploading, don't host files locally" + imgur_client_id: "Your imgur.com client ID, required for image upload to function" + imgur_client_secret: "Your imgur.com client secret. Not currently required for image upload to function, but may be at some point."