diff --git a/.travis.yml b/.travis.yml index ed1f7d20b1..cb8c3c021c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,7 +24,7 @@ matrix: fast_finish: true rvm: - - 2.3.1 + - 2.3.3 services: - redis-server diff --git a/.tx/config b/.tx/config index 718e97b54c..a07dd5ad46 100644 --- a/.tx/config +++ b/.tx/config @@ -1,6 +1,6 @@ [main] host = https://www.transifex.com -lang_map = es_ES: es, fr_FR: fr, ko_KR: ko, pt_PT: pt, sk_SK: sk, vi_VN: vi +lang_map = el_GR: el, es_ES: es, fr_FR: fr, ko_KR: ko, pt_PT: pt, sk_SK: sk, vi_VN: vi [discourse-org.clientenyml] file_filter = config/locales/client..yml diff --git a/Gemfile b/Gemfile index 3d49f0dc3a..5a10c2a103 100644 --- a/Gemfile +++ b/Gemfile @@ -92,7 +92,7 @@ gem 'pry-rails', require: false gem 'r2', '~> 0.2.5', require: false gem 'rake' - +gem 'thor', require: false gem 'rest-client' gem 'rinku' gem 'sanitize' diff --git a/Gemfile.lock b/Gemfile.lock index 9bb4fd1c39..deec6ecc55 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -206,7 +206,7 @@ GEM omniauth-twitter (1.3.0) omniauth-oauth (~> 1.1) rack - onebox (1.8.1) + onebox (1.8.2) fast_blank (>= 1.0.0) htmlentities (~> 4.3.4) moneta (~> 0.8) @@ -470,6 +470,7 @@ DEPENDENCIES sinatra spork-rails stackprof + thor timecop uglifier unf diff --git a/app/assets/javascripts/admin/controllers/admin-backups-index.js.es6 b/app/assets/javascripts/admin/controllers/admin-backups-index.js.es6 index 558b9b4973..67b6c58d06 100644 --- a/app/assets/javascripts/admin/controllers/admin-backups-index.js.es6 +++ b/app/assets/javascripts/admin/controllers/admin-backups-index.js.es6 @@ -1,4 +1,3 @@ -import DiscourseURL from 'discourse/lib/url'; import { ajax } from 'discourse/lib/ajax'; export default Ember.Controller.extend({ @@ -39,7 +38,11 @@ export default Ember.Controller.extend({ }, download(backup) { - DiscourseURL.redirectTo(backup.get('link')); + let link = backup.get('filename'); + ajax("/admin/backups/" + link, { type: "PUT" }) + .then(() => { + bootbox.alert(I18n.t("admin.backups.operations.download.alert")); + }); } }, @@ -48,7 +51,7 @@ export default Ember.Controller.extend({ ajax("/admin/backups/readonly", { type: "PUT", data: { enable: enable } - }).then(function() { + }).then(() => { site.set("isReadOnly", enable); }); } diff --git a/app/assets/javascripts/admin/controllers/modals/admin-incoming-email.js.es6 b/app/assets/javascripts/admin/controllers/modals/admin-incoming-email.js.es6 index bc9cd2edd8..3d57d2a6c3 100644 --- a/app/assets/javascripts/admin/controllers/modals/admin-incoming-email.js.es6 +++ b/app/assets/javascripts/admin/controllers/modals/admin-incoming-email.js.es6 @@ -2,6 +2,7 @@ import ModalFunctionality from 'discourse/mixins/modal-functionality'; import IncomingEmail from 'admin/models/incoming-email'; import computed from 'ember-addons/ember-computed-decorators'; import { longDate } from 'discourse/lib/formatter'; +import { popupAjaxError } from 'discourse/lib/ajax-error'; export default Ember.Controller.extend(ModalFunctionality, { @@ -12,6 +13,15 @@ export default Ember.Controller.extend(ModalFunctionality, { load(id) { return IncomingEmail.find(id).then(result => this.set("model", result)); + }, + + loadFromBounced(id) { + return IncomingEmail.findByBounced(id) + .then(result => this.set("model", result)) + .catch(error => { + this.send("closeModal"); + popupAjaxError(error); + }); } }); diff --git a/app/assets/javascripts/admin/models/incoming-email.js.es6 b/app/assets/javascripts/admin/models/incoming-email.js.es6 index d0386b2bc4..470c3fa56f 100644 --- a/app/assets/javascripts/admin/models/incoming-email.js.es6 +++ b/app/assets/javascripts/admin/models/incoming-email.js.es6 @@ -19,6 +19,11 @@ IncomingEmail.reopenClass({ return ajax(`/admin/email/incoming/${id}.json`); }, + findByBounced(id) { + return ajax(`/admin/email/incoming_from_bounced/${id}.json`); + }, + + findAll(filter, offset) { filter = filter || {}; offset = offset || 0; diff --git a/app/assets/javascripts/admin/routes/admin-email-bounced.js.es6 b/app/assets/javascripts/admin/routes/admin-email-bounced.js.es6 index 027a6c0f30..40dbc5a75f 100644 --- a/app/assets/javascripts/admin/routes/admin-email-bounced.js.es6 +++ b/app/assets/javascripts/admin/routes/admin-email-bounced.js.es6 @@ -1,2 +1,14 @@ +import showModal from 'discourse/lib/show-modal'; import AdminEmailLogs from 'admin/routes/admin-email-logs'; -export default AdminEmailLogs.extend({ status: "bounced" }); + +export default AdminEmailLogs.extend({ + status: "bounced", + + actions: { + showIncomingEmail(id) { + showModal('admin-incoming-email', { admin: true }); + this.controllerFor("modals/admin-incoming-email").loadFromBounced(id); + } + } + +}); diff --git a/app/assets/javascripts/admin/routes/admin-flags-index.js.es6 b/app/assets/javascripts/admin/routes/admin-flags-index.js.es6 index d20793add2..c3f9a6d373 100644 --- a/app/assets/javascripts/admin/routes/admin-flags-index.js.es6 +++ b/app/assets/javascripts/admin/routes/admin-flags-index.js.es6 @@ -1,5 +1,5 @@ export default Discourse.Route.extend({ - redirect: function() { + redirect() { this.replaceWith('adminFlags.list', 'active'); } }); diff --git a/app/assets/javascripts/admin/routes/admin-logs-staff-action-logs.js.es6 b/app/assets/javascripts/admin/routes/admin-logs-staff-action-logs.js.es6 index 48d04abc5f..8b19ccb0dc 100644 --- a/app/assets/javascripts/admin/routes/admin-logs-staff-action-logs.js.es6 +++ b/app/assets/javascripts/admin/routes/admin-logs-staff-action-logs.js.es6 @@ -6,11 +6,6 @@ export default Discourse.Route.extend({ this.render('admin/templates/logs/staff-action-logs', {into: 'adminLogs'}); }, - setupController: function(controller) { - controller.resetFilters(); - controller.refresh(); - }, - actions: { showDetailsModal(model) { showModal('admin-staff-action-log-details', { model, admin: true }); diff --git a/app/assets/javascripts/admin/routes/admin-user-index.js.es6 b/app/assets/javascripts/admin/routes/admin-user-index.js.es6 index c10e5957d5..03053efeb9 100644 --- a/app/assets/javascripts/admin/routes/admin-user-index.js.es6 +++ b/app/assets/javascripts/admin/routes/admin-user-index.js.es6 @@ -28,6 +28,14 @@ export default Discourse.Route.extend({ showSuspendModal(model) { showModal('admin-suspend-user', { model, admin: true }); this.controllerFor('modal').set('modalClass', 'suspend-user-modal'); + }, + + viewActionLogs(username) { + const controller = this.controllerFor('adminLogs.staffActionLogs'); + this.transitionTo('adminLogs.staffActionLogs').then(() => { + controller.set('filters', Ember.Object.create()); + controller._changeFilters({ target_user: username }); + }); } } }); diff --git a/app/assets/javascripts/admin/templates/dashboard.hbs b/app/assets/javascripts/admin/templates/dashboard.hbs index fbb0eb46b1..c6c4487009 100644 --- a/app/assets/javascripts/admin/templates/dashboard.hbs +++ b/app/assets/javascripts/admin/templates/dashboard.hbs @@ -261,8 +261,8 @@ {{top_referrers.title}} ({{i18n 'admin.dashboard.reports.last_30_days'}}) - {{number top_referrers.ytitles.num_clicks}} - {{number top_referrers.ytitles.num_topics}} + {{top_referrers.ytitles.num_clicks}} + {{top_referrers.ytitles.num_topics}} {{#each top_referrers.data as |r|}} diff --git a/app/assets/javascripts/admin/templates/email-bounced.hbs b/app/assets/javascripts/admin/templates/email-bounced.hbs index e2df9e04bf..9ebbb7d316 100644 --- a/app/assets/javascripts/admin/templates/email-bounced.hbs +++ b/app/assets/javascripts/admin/templates/email-bounced.hbs @@ -28,7 +28,7 @@ {{/if}} {{l.to_address}} - {{l.email_type}} + {{l.email_type}} {{else}} {{i18n 'admin.email.logs.none'}} diff --git a/app/assets/javascripts/admin/templates/user-index.hbs b/app/assets/javascripts/admin/templates/user-index.hbs index 9cc35a3dce..923fb1c09b 100644 --- a/app/assets/javascripts/admin/templates/user-index.hbs +++ b/app/assets/javascripts/admin/templates/user-index.hbs @@ -7,6 +7,9 @@ {{i18n 'admin.user.show_public_profile'}} {{/link-to}} {{/if}} + {{#if model.can_view_action_logs}} + {{d-button action="viewActionLogs" actionParam=model.username icon="list-alt" label="admin.user.action_logs"}} + {{/if}} {{#if model.active}} {{#if model.can_impersonate}} {{d-button class="btn-danger" action="impersonate" icon="crosshairs" label="admin.impersonate.title" title="admin.impersonate.help"}} diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index d8cc43eb25..6f7f08f23b 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -9,6 +9,7 @@ // Stuff we need to load first //= require ./discourse/lib/utilities +//= require ./discourse/lib/page-visible //= require ./discourse/lib/ajax //= require ./discourse/lib/text //= require ./discourse/lib/hash diff --git a/app/assets/javascripts/discourse/components/composer-title.js.es6 b/app/assets/javascripts/discourse/components/composer-title.js.es6 index b664023aa1..91cdf7186c 100644 --- a/app/assets/javascripts/discourse/components/composer-title.js.es6 +++ b/app/assets/javascripts/discourse/components/composer-title.js.es6 @@ -68,7 +68,8 @@ export default Ember.Component.extend({ if (loadOnebox && loadOnebox.then) { loadOnebox.then( () => { - this._updatePost(lookupCache(this.get('composer.title'))); + const v = lookupCache(this.get('composer.title')); + this._updatePost(v ? v : link); }).finally(() => { this.set('composer.loading', false); Ember.run.schedule('afterRender', () => { this.$('input').putCursorAtEnd(); }); diff --git a/app/assets/javascripts/discourse/components/discourse-tag-bound.js.es6 b/app/assets/javascripts/discourse/components/discourse-tag-bound.js.es6 index 08f0143256..a16ccc8b18 100644 --- a/app/assets/javascripts/discourse/components/discourse-tag-bound.js.es6 +++ b/app/assets/javascripts/discourse/components/discourse-tag-bound.js.es6 @@ -8,6 +8,6 @@ export default Ember.Component.extend({ }.property('tagRecord.id'), href: function() { - return '/tags/' + this.get('tagRecord.id'); + return Discourse.getURL('/tags/' + this.get('tagRecord.id')); }.property('tagRecord.id'), }); diff --git a/app/assets/javascripts/discourse/components/edit-category-settings.js.es6 b/app/assets/javascripts/discourse/components/edit-category-settings.js.es6 index 41a4d2b20f..f1b089ac1a 100644 --- a/app/assets/javascripts/discourse/components/edit-category-settings.js.es6 +++ b/app/assets/javascripts/discourse/components/edit-category-settings.js.es6 @@ -21,5 +21,13 @@ export default buildCategoryPanel('settings', { {name: I18n.t('category.sort_ascending'), value: 'true'}, {name: I18n.t('category.sort_descending'), value: 'false'} ]; + }, + + @computed + availableViews() { + return [ + {name: I18n.t('filters.latest.title'), value: 'latest'}, + {name: I18n.t('filters.top.title'), value: 'top'} + ]; } }); diff --git a/app/assets/javascripts/discourse/components/navigation-bar.js.es6 b/app/assets/javascripts/discourse/components/navigation-bar.js.es6 index 7bc237c900..7a61c50cbc 100644 --- a/app/assets/javascripts/discourse/components/navigation-bar.js.es6 +++ b/app/assets/javascripts/discourse/components/navigation-bar.js.es6 @@ -1,11 +1,17 @@ import { default as computed, observes } from "ember-addons/ember-computed-decorators"; import DiscourseURL from 'discourse/lib/url'; +import { renderedConnectorsFor } from 'discourse/lib/plugin-connectors'; export default Ember.Component.extend({ tagName: 'ul', classNameBindings: [':nav', ':nav-pills'], id: 'navigation-bar', + init() { + this._super(); + this.set('connectors', renderedConnectorsFor("extra-nav-item", null, this)); + }, + @computed("filterMode", "navItems") selectedNavItem(filterMode, navItems){ var item = navItems.find(i => i.get('filterMode').indexOf(filterMode) === 0); diff --git a/app/assets/javascripts/discourse/components/plugin-outlet.js.es6 b/app/assets/javascripts/discourse/components/plugin-outlet.js.es6 index 91bf45560e..268e964eda 100644 --- a/app/assets/javascripts/discourse/components/plugin-outlet.js.es6 +++ b/app/assets/javascripts/discourse/components/plugin-outlet.js.es6 @@ -29,7 +29,7 @@ The list of disabled plugins is returned via the `Site` singleton. **/ -import { connectorsFor } from 'discourse/lib/plugin-connectors'; +import { renderedConnectorsFor } from 'discourse/lib/plugin-connectors'; export default Ember.Component.extend({ tagName: 'span', @@ -38,14 +38,9 @@ export default Ember.Component.extend({ init() { this._super(); const name = this.get('name'); - if (name) { const args = this.get('args'); - const connectors = connectorsFor(name).filter(con => { - return con.connectorClass.shouldRender(args, this); - }); - - this.set('connectors', connectors); + this.set('connectors', renderedConnectorsFor(name, args, this)); } } }); diff --git a/app/assets/javascripts/discourse/components/search-advanced-options.js.es6 b/app/assets/javascripts/discourse/components/search-advanced-options.js.es6 index 23bdac794b..4c658c6358 100644 --- a/app/assets/javascripts/discourse/components/search-advanced-options.js.es6 +++ b/app/assets/javascripts/discourse/components/search-advanced-options.js.es6 @@ -3,24 +3,26 @@ import { escapeExpression } from 'discourse/lib/utilities'; const REGEXP_BLOCKS = /(([^" \t\n\x0B\f\r]+)?(("[^"]+")?))/g; -const REGEXP_USERNAME_PREFIX = /(user:|@)/ig; -const REGEXP_CATEGORY_PREFIX = /(category:|#)/ig; -const REGEXP_GROUP_PREFIX = /group:/ig; -const REGEXP_BADGE_PREFIX = /badge:/ig; -const REGEXP_TAGS_PREFIX = /tags?:/ig; -const REGEXP_IN_PREFIX = /in:/ig; -const REGEXP_STATUS_PREFIX = /status:/ig; -const REGEXP_MIN_POST_COUNT_PREFIX = /min_post_count:/ig; -const REGEXP_POST_TIME_PREFIX = /(before|after):/ig; +const REGEXP_USERNAME_PREFIX = /^(user:|@)/ig; +const REGEXP_CATEGORY_PREFIX = /^(category:|#)/ig; +const REGEXP_GROUP_PREFIX = /^group:/ig; +const REGEXP_BADGE_PREFIX = /^badge:/ig; +const REGEXP_TAGS_PREFIX = /^(tags?:|#(?=[a-z0-9\-]+::tag))/ig; +const REGEXP_IN_PREFIX = /^in:/ig; +const REGEXP_STATUS_PREFIX = /^status:/ig; +const REGEXP_MIN_POST_COUNT_PREFIX = /^min_post_count:/ig; +const REGEXP_POST_TIME_PREFIX = /^(before|after):/ig; +const REGEXP_TAGS_REPLACE = /(^(tags?:|#(?=[a-z0-9\-]+::tag))|::tag\s?$)/ig; -const REGEXP_IN_MATCH = /in:(posted|watching|tracking|bookmarks|first|pinned|unpinned)/ig; -const REGEXP_SPECIAL_IN_LIKES_MATCH = /in:likes/ig; -const REGEXP_SPECIAL_IN_PRIVATE_MATCH = /in:private/ig; -const REGEXP_SPECIAL_IN_WIKI_MATCH = /in:wiki/ig; -const REGEXP_CATEGORY_SLUG = /(\#[a-zA-Z0-9\-:]+)/ig; -const REGEXP_CATEGORY_ID = /(category:[0-9]+)/ig; -const REGEXP_POST_TIME_WHEN = /(before|after)/ig; +const REGEXP_IN_MATCH = /^in:(posted|watching|tracking|bookmarks|first|pinned|unpinned)/ig; +const REGEXP_SPECIAL_IN_LIKES_MATCH = /^in:likes/ig; +const REGEXP_SPECIAL_IN_PRIVATE_MATCH = /^in:private/ig; +const REGEXP_SPECIAL_IN_WIKI_MATCH = /^in:wiki/ig; + +const REGEXP_CATEGORY_SLUG = /^(\#[a-zA-Z0-9\-:]+)/ig; +const REGEXP_CATEGORY_ID = /^(category:[0-9]+)/ig; +const REGEXP_POST_TIME_WHEN = /^(before|after)/ig; export default Em.Component.extend({ classNames: ['search-advanced-options'], @@ -48,8 +50,8 @@ export default Em.Component.extend({ init() { this._super(); + this._init(); Ember.run.scheduleOnce('afterRender', () => { - this._init(); this._update(); }); }, @@ -228,7 +230,7 @@ export default Em.Component.extend({ if (match.length !== 0) { const existingInput = _.isArray(tags) ? tags.join(',') : tags; - const userInput = match[0].replace(REGEXP_TAGS_PREFIX, ''); + const userInput = match[0].replace(REGEXP_TAGS_REPLACE, ''); if (existingInput !== userInput) { this.set('searchedTerms.tags', (userInput.length !== 0) ? userInput.split(',') : []); diff --git a/app/assets/javascripts/discourse/components/search-text-field.js.es6 b/app/assets/javascripts/discourse/components/search-text-field.js.es6 index a086a51f32..8554742579 100644 --- a/app/assets/javascripts/discourse/components/search-text-field.js.es6 +++ b/app/assets/javascripts/discourse/components/search-text-field.js.es6 @@ -1,6 +1,7 @@ import computed from 'ember-addons/ember-computed-decorators'; import { on } from 'ember-addons/ember-computed-decorators'; import TextField from 'discourse/components/text-field'; +import { applySearchAutocomplete } from "discourse/lib/search"; export default TextField.extend({ @computed('searchService.searchContextEnabled') @@ -10,10 +11,13 @@ export default TextField.extend({ @on("didInsertElement") becomeFocused() { + const $searchInput = this.$(); + applySearchAutocomplete($searchInput, this.siteSettings); + if (!this.get('hasAutofocus')) { return; } // iOS is crazy, without this we will not be // at the top of the page $(window).scrollTop(0); - this.$().focus(); + $searchInput.focus(); } }); diff --git a/app/assets/javascripts/discourse/components/topic-footer-mobile-dropdown.js.es6 b/app/assets/javascripts/discourse/components/topic-footer-mobile-dropdown.js.es6 index 07ab126998..d5370e416e 100644 --- a/app/assets/javascripts/discourse/components/topic-footer-mobile-dropdown.js.es6 +++ b/app/assets/javascripts/discourse/components/topic-footer-mobile-dropdown.js.es6 @@ -1,11 +1,15 @@ import { iconHTML } from 'discourse-common/helpers/fa-icon'; import Combobox from 'discourse-common/components/combo-box'; -import { on, observes } from 'ember-addons/ember-computed-decorators'; +import { observes } from 'ember-addons/ember-computed-decorators'; export default Combobox.extend({ none: "topic.controls", - @on('init') + init() { + this._super(); + this._createContent(); + }, + _createContent() { const content = []; const topic = this.get('topic'); diff --git a/app/assets/javascripts/discourse/controllers/composer.js.es6 b/app/assets/javascripts/discourse/controllers/composer.js.es6 index 9550ef0b82..13d3f291b9 100644 --- a/app/assets/javascripts/discourse/controllers/composer.js.es6 +++ b/app/assets/javascripts/discourse/controllers/composer.js.es6 @@ -404,13 +404,15 @@ export default Ember.Controller.extend({ disableSubmit: Ember.computed.or("model.loading", "isUploading"), save(force) { - const composer = this.get('model'); + if (this.get("disableSubmit")) return; // Clear the warning state if we're not showing the checkbox anymore if (!this.get('showWarning')) { this.set('model.isWarning', false); } + const composer = this.get('model'); + if (composer.get('cantSubmitPost')) { this.set('lastValidatedAt', Date.now()); return; @@ -561,14 +563,17 @@ export default Ember.Controller.extend({ return; } + this.setProperties({ showEditReason: false, editReason: null, scopedCategoryId: null }); + // If we show the subcategory list, scope the categories drop down to // the category we opened the composer with. - if (this.siteSettings.show_subcategory_list && opts.draftKey !== 'reply_as_new_topic') { - this.set('scopedCategoryId', opts.categoryId); + if (opts.categoryId && opts.draftKey !== 'reply_as_new_topic') { + const category = this.site.categories.findBy('id', opts.categoryId); + if (category && (category.get('show_subcategory_list') || category.get('parentCategory.show_subcategory_list'))) { + this.set('scopedCategoryId', opts.categoryId); + } } - this.setProperties({ showEditReason: false, editReason: null }); - // If we want a different draft than the current composer, close it and clear our model. if (composerModel && opts.draftKey !== composerModel.draftKey && diff --git a/app/assets/javascripts/discourse/controllers/create-account.js.es6 b/app/assets/javascripts/discourse/controllers/create-account.js.es6 index 3f0d180c29..d04a03821c 100644 --- a/app/assets/javascripts/discourse/controllers/create-account.js.es6 +++ b/app/assets/javascripts/discourse/controllers/create-account.js.es6 @@ -1,17 +1,15 @@ import { ajax } from 'discourse/lib/ajax'; -import debounce from 'discourse/lib/debounce'; import ModalFunctionality from 'discourse/mixins/modal-functionality'; import { setting } from 'discourse/lib/computed'; import { on } from 'ember-addons/ember-computed-decorators'; import { emailValid } from 'discourse/lib/utilities'; import InputValidation from 'discourse/models/input-validation'; import PasswordValidation from "discourse/mixins/password-validation"; +import UsernameValidation from "discourse/mixins/username-validation"; -export default Ember.Controller.extend(ModalFunctionality, PasswordValidation, { +export default Ember.Controller.extend(ModalFunctionality, PasswordValidation, UsernameValidation, { login: Ember.inject.controller(), - uniqueUsernameValidation: null, - globalNicknameExists: false, complete: false, accountPasswordConfirm: 0, accountChallenge: 0, @@ -24,8 +22,6 @@ export default Ember.Controller.extend(ModalFunctionality, PasswordValidation, { hasAuthOptions: Em.computed.notEmpty('authOptions'), canCreateLocal: setting('enable_local_logins'), showCreateForm: Em.computed.or('hasAuthOptions', 'canCreateLocal'), - maxUsernameLength: setting('max_username_length'), - minUsernameLength: setting('min_username_length'), resetForm() { // We wrap the fields in a structure so we can assign a value @@ -35,7 +31,6 @@ export default Ember.Controller.extend(ModalFunctionality, PasswordValidation, { accountUsername: '', accountPassword: '', authOptions: null, - globalNicknameExists: false, complete: false, formSubmitted: false, rejectedEmails: [], @@ -167,128 +162,6 @@ export default Ember.Controller.extend(ModalFunctionality, PasswordValidation, { } }.observes('emailValidation', 'accountEmail'), - fetchExistingUsername: debounce(function() { - const self = this; - Discourse.User.checkUsername(null, this.get('accountEmail')).then(function(result) { - if (result.suggestion && (Ember.isEmpty(self.get('accountUsername')) || self.get('accountUsername') === self.get('authOptions.username'))) { - self.set('accountUsername', result.suggestion); - self.set('prefilledUsername', result.suggestion); - } - }); - }, 500), - - usernameMatch: function() { - if (this.usernameNeedsToBeValidatedWithEmail()) { - if (this.get('emailValidation.failed')) { - if (this.shouldCheckUsernameMatch()) { - return this.set('uniqueUsernameValidation', InputValidation.create({ - failed: true, - reason: I18n.t('user.username.enter_email') - })); - } else { - return this.set('uniqueUsernameValidation', InputValidation.create({ failed: true })); - } - } else if (this.shouldCheckUsernameMatch()) { - this.set('uniqueUsernameValidation', InputValidation.create({ - failed: true, - reason: I18n.t('user.username.checking') - })); - return this.checkUsernameAvailability(); - } - } - }.observes('accountEmail'), - - basicUsernameValidation: function() { - this.set('uniqueUsernameValidation', null); - - if (this.get('accountUsername') === this.get('prefilledUsername')) { - return InputValidation.create({ - ok: true, - reason: I18n.t('user.username.prefilled') - }); - } - - // If blank, fail without a reason - if (Ember.isEmpty(this.get('accountUsername'))) { - return InputValidation.create({ - failed: true - }); - } - - // If too short - if (this.get('accountUsername').length < Discourse.SiteSettings.min_username_length) { - return InputValidation.create({ - failed: true, - reason: I18n.t('user.username.too_short') - }); - } - - // If too long - if (this.get('accountUsername').length > this.get('maxUsernameLength')) { - return InputValidation.create({ - failed: true, - reason: I18n.t('user.username.too_long') - }); - } - - this.checkUsernameAvailability(); - // Let's check it out asynchronously - return InputValidation.create({ - failed: true, - reason: I18n.t('user.username.checking') - }); - }.property('accountUsername'), - - shouldCheckUsernameMatch: function() { - return !Ember.isEmpty(this.get('accountUsername')) && this.get('accountUsername').length >= this.get('minUsernameLength'); - }, - - checkUsernameAvailability: debounce(function() { - const _this = this; - if (this.shouldCheckUsernameMatch()) { - return Discourse.User.checkUsername(this.get('accountUsername'), this.get('accountEmail')).then(function(result) { - _this.set('isDeveloper', false); - if (result.available) { - if (result.is_developer) { - _this.set('isDeveloper', true); - } - return _this.set('uniqueUsernameValidation', InputValidation.create({ - ok: true, - reason: I18n.t('user.username.available') - })); - } else { - if (result.suggestion) { - return _this.set('uniqueUsernameValidation', InputValidation.create({ - failed: true, - reason: I18n.t('user.username.not_available', result) - })); - } else if (result.errors) { - return _this.set('uniqueUsernameValidation', InputValidation.create({ - failed: true, - reason: result.errors.join(' ') - })); - } else { - return _this.set('uniqueUsernameValidation', InputValidation.create({ - failed: true, - reason: I18n.t('user.username.enter_email') - })); - } - } - }); - } - }, 500), - - // Actually wait for the async name check before we're 100% sure we're good to go - usernameValidation: function() { - const basicValidation = this.get('basicUsernameValidation'); - const uniqueUsername = this.get('uniqueUsernameValidation'); - return uniqueUsername ? uniqueUsername : basicValidation; - }.property('uniqueUsernameValidation', 'basicUsernameValidation'), - - usernameNeedsToBeValidatedWithEmail() { - return( this.get('globalNicknameExists') || false ); - }, - @on('init') fetchConfirmationValue() { return ajax('/users/hp.json').then(json => { diff --git a/app/assets/javascripts/discourse/controllers/discovery-sortable.js.es6 b/app/assets/javascripts/discourse/controllers/discovery-sortable.js.es6 index 276231067c..df055c0868 100644 --- a/app/assets/javascripts/discourse/controllers/discovery-sortable.js.es6 +++ b/app/assets/javascripts/discourse/controllers/discovery-sortable.js.es6 @@ -7,7 +7,9 @@ export const queryParams = { search: { replace: true, refreshModel: true }, max_posts: { replace: true, refreshModel: true }, q: { replace: true, refreshModel: true }, - tags: { replace: true } + tags: { replace: true }, + before: { replace: true, refreshModel: true}, + bumped_before: { replace: true, refreshModel: true} }; // Basic controller options @@ -19,4 +21,14 @@ const controllerOpts = { // Aliases for the values controllerOpts.queryParams.forEach(p => controllerOpts[p] = Ember.computed.alias(`discoveryTopics.${p}`)); -export default Ember.Controller.extend(controllerOpts); +const Controller = Ember.Controller.extend(controllerOpts); + +export const addDiscoveryQueryParam = function(p, opts) { + queryParams[p] = opts; + const cOpts = {}; + cOpts[p] = Ember.computed.alias(`discoveryTopics.${p}`); + cOpts["queryParams"] = Object.keys(queryParams); + Controller.reopen(cOpts); +}; + +export default Controller; diff --git a/app/assets/javascripts/discourse/controllers/discovery/topics.js.es6 b/app/assets/javascripts/discourse/controllers/discovery/topics.js.es6 index 4c92f6da87..516c53daf4 100644 --- a/app/assets/javascripts/discourse/controllers/discovery/topics.js.es6 +++ b/app/assets/javascripts/discourse/controllers/discovery/topics.js.es6 @@ -19,6 +19,10 @@ const controllerOpts = { expandGloballyPinned: false, expandAllPinned: false, + resetParams() { + this.setProperties({ order: "default", ascending: false }); + }, + actions: { changeSort(sortBy) { @@ -43,8 +47,7 @@ const controllerOpts = { refresh() { const filter = this.get('model.filter'); - - this.setProperties({ order: "default", ascending: false }); + this.resetParams(); // Don't refresh if we're still loading if (this.get('discovery.loading')) { return; } diff --git a/app/assets/javascripts/discourse/controllers/invites-show.js.es6 b/app/assets/javascripts/discourse/controllers/invites-show.js.es6 new file mode 100644 index 0000000000..f6f5fa8150 --- /dev/null +++ b/app/assets/javascripts/discourse/controllers/invites-show.js.es6 @@ -0,0 +1,66 @@ +import { default as computed } from 'ember-addons/ember-computed-decorators'; +import getUrl from 'discourse-common/lib/get-url'; +import DiscourseURL from 'discourse/lib/url'; +import { ajax } from 'discourse/lib/ajax'; +import PasswordValidation from "discourse/mixins/password-validation"; +import UsernameValidation from "discourse/mixins/username-validation"; +import { findAll as findLoginMethods } from 'discourse/models/login-method'; + +export default Ember.Controller.extend(PasswordValidation, UsernameValidation, { + invitedBy: Ember.computed.alias('model.invited_by'), + email: Ember.computed.alias('model.email'), + accountUsername: Ember.computed.alias('model.username'), + passwordRequired: Ember.computed.notEmpty('accountPassword'), + successMessage: null, + errorMessage: null, + inviteImageUrl: getUrl('/images/envelope.svg'), + + @computed + welcomeTitle() { + return I18n.t('invites.welcome_to', {site_name: this.siteSettings.title}); + }, + + @computed('email') + yourEmailMessage(email) { + return I18n.t('invites.your_email', {email: email}); + }, + + @computed + externalAuthsEnabled() { + return findLoginMethods(this.siteSettings, this.capabilities, this.site.isMobileDevice).length > 0; + }, + + @computed('usernameValidation.failed', 'passwordValidation.failed') + submitDisabled(usernameFailed, passwordFailed) { + return usernameFailed || passwordFailed; + }, + + actions: { + submit() { + ajax({ + url: `/invites/show/${this.get('model.token')}.json`, + type: 'PUT', + data: { + username: this.get('accountUsername'), + password: this.get('accountPassword') + } + }).then(result => { + if (result.success) { + this.set('successMessage', result.message || I18n.t('invites.success')); + this.set('redirectTo', result.redirect_to); + DiscourseURL.redirectTo(result.redirect_to || '/'); + } else { + if (result.errors && result.errors.password && result.errors.password.length > 0) { + this.get('rejectedPasswords').pushObject(this.get('accountPassword')); + this.get('rejectedPasswordsMessages').set(this.get('accountPassword'), result.errors.password[0]); + } + if (result.message) { + this.set('errorMessage', result.message); + } + } + }).catch(response => { + throw response; + }); + } + } +}); diff --git a/app/assets/javascripts/discourse/controllers/login.js.es6 b/app/assets/javascripts/discourse/controllers/login.js.es6 index 5c97bbbf82..38ea5f9d30 100644 --- a/app/assets/javascripts/discourse/controllers/login.js.es6 +++ b/app/assets/javascripts/discourse/controllers/login.js.es6 @@ -6,9 +6,13 @@ import { findAll } from 'discourse/models/login-method'; import { escape } from 'pretty-text/sanitizer'; // This is happening outside of the app via popup -const AuthErrors = - ['requires_invite', 'awaiting_approval', 'awaiting_confirmation', 'admin_not_allowed_from_ip_address', - 'not_allowed_from_ip_address']; +const AuthErrors = [ + 'requires_invite', + 'awaiting_approval', + 'awaiting_activation', + 'admin_not_allowed_from_ip_address', + 'not_allowed_from_ip_address' +]; export default Ember.Controller.extend(ModalFunctionality, { diff --git a/app/assets/javascripts/discourse/controllers/navigation/category.js.es6 b/app/assets/javascripts/discourse/controllers/navigation/category.js.es6 index c3bcae7a96..143812960b 100644 --- a/app/assets/javascripts/discourse/controllers/navigation/category.js.es6 +++ b/app/assets/javascripts/discourse/controllers/navigation/category.js.es6 @@ -1,11 +1,9 @@ import computed from "ember-addons/ember-computed-decorators"; import NavigationDefaultController from 'discourse/controllers/navigation/default'; -import { setting } from 'discourse/lib/computed'; export default NavigationDefaultController.extend({ - subcategoryListSetting: setting('show_subcategory_list'), showingParentCategory: Em.computed.none('category.parentCategory'), - showingSubcategoryList: Em.computed.and('subcategoryListSetting', 'showingParentCategory'), + showingSubcategoryList: Em.computed.and('category.show_subcategory_list', 'showingParentCategory'), @computed("showingSubcategoryList", "category", "noSubcategories") navItems(showingSubcategoryList, category, noSubcategories) { diff --git a/app/assets/javascripts/discourse/controllers/topic-bulk-actions.js.es6 b/app/assets/javascripts/discourse/controllers/topic-bulk-actions.js.es6 index ba5e6de179..7be180cc77 100644 --- a/app/assets/javascripts/discourse/controllers/topic-bulk-actions.js.es6 +++ b/app/assets/javascripts/discourse/controllers/topic-bulk-actions.js.es6 @@ -15,6 +15,7 @@ addBulkButton('showNotificationLevel', 'notification_level'); addBulkButton('resetRead', 'reset_read'); addBulkButton('unlistTopics', 'unlist_topics'); addBulkButton('showTagTopics', 'change_tags'); +addBulkButton('showAppendTagTopics', 'append_tags'); // Modal for performing bulk actions on topics export default Ember.Controller.extend(ModalFunctionality, { @@ -78,6 +79,9 @@ export default Ember.Controller.extend(ModalFunctionality, { actions: { showTagTopics() { this.set('tags', ''); + this.set('action', 'changeTags'); + this.set('label', 'change_tags'); + this.set('title', 'choose_new_tags'); this.send('changeBulkTemplate', 'bulk-tag'); }, @@ -85,6 +89,18 @@ export default Ember.Controller.extend(ModalFunctionality, { this.performAndRefresh({type: 'change_tags', tags: this.get('tags')}); }, + showAppendTagTopics() { + this.set('tags', ''); + this.set('action', 'appendTags'); + this.set('label', 'append_tags'); + this.set('title', 'choose_append_tags'); + this.send('changeBulkTemplate', 'bulk-tag'); + }, + + appendTags() { + this.performAndRefresh({type: 'append_tags', tags: this.get('tags')}); + }, + showChangeCategory() { this.send('changeBulkTemplate', 'modal/bulk-change-category'); this.set('modal.modalClass', 'topic-bulk-actions-modal full'); diff --git a/app/assets/javascripts/discourse/controllers/topic.js.es6 b/app/assets/javascripts/discourse/controllers/topic.js.es6 index ce128f9fdf..17996c23ef 100644 --- a/app/assets/javascripts/discourse/controllers/topic.js.es6 +++ b/app/assets/javascripts/discourse/controllers/topic.js.es6 @@ -313,6 +313,7 @@ export default Ember.Controller.extend(SelectedPostsCount, BufferedContent, { const quoteState = this.get('quoteState'); const postStream = this.get('model.postStream'); + if (!postStream) return; const quotedPost = postStream.findLoadedPost(quoteState.postId); const quotedText = Quote.build(quotedPost, quoteState.buffer); @@ -912,6 +913,7 @@ export default Ember.Controller.extend(SelectedPostsCount, BufferedContent, { if (data.reload_topic) { topic.reload().then(() => { this.send('postChangedRoute', topic.get('post_number') || 1); + this.appEvents.trigger('header:show-topic', topic); }); } else { if (topic.get('isPrivateMessage') && diff --git a/app/assets/javascripts/discourse/helpers/discourse-tags.js.es6 b/app/assets/javascripts/discourse/helpers/discourse-tags.js.es6 new file mode 100644 index 0000000000..7065a44f46 --- /dev/null +++ b/app/assets/javascripts/discourse/helpers/discourse-tags.js.es6 @@ -0,0 +1,6 @@ +import { registerUnbound } from 'discourse-common/lib/helpers'; +import renderTags from 'discourse/lib/render-tags'; + +export default registerUnbound('discourse-tags', function(topic, params) { + return new Handlebars.SafeString(renderTags(topic, params)); +}); diff --git a/app/assets/javascripts/discourse/initializers/localization.js.es6 b/app/assets/javascripts/discourse/initializers/localization.js.es6 index 6477c5e4f9..5d3ce55f98 100644 --- a/app/assets/javascripts/discourse/initializers/localization.js.es6 +++ b/app/assets/javascripts/discourse/initializers/localization.js.es6 @@ -4,10 +4,31 @@ export default { name: 'localization', after: 'inject-objects', - initialize: function(container) { + enableVerboseLocalization() { + let counter = 0; + let keys = {}; + let t = I18n.t; + + I18n.noFallbacks = true; + + I18n.t = I18n.translate = function(scope, value){ + let current = keys[scope]; + if (!current) { + current = keys[scope] = ++counter; + let message = "Translation #" + current + ": " + scope; + if (!_.isEmpty(value)) { + message += ", parameters: " + JSON.stringify(value); + } + Em.Logger.info(message); + } + return t.apply(I18n, [scope, value]) + " (#" + current + ")"; + }; + }, + + initialize(container) { const siteSettings = container.lookup('site-settings:main'); if (siteSettings.verbose_localization) { - I18n.enable_verbose_localization(); + this.enableVerboseLocalization(); } // Merge any overrides into our object @@ -16,24 +37,26 @@ export default { const v = overrides[k]; // Special case: Message format keys are functions - if (/\_MF$/.test(k)) { + if (/_MF$/.test(k)) { k = k.replace(/^[a-z_]*js\./, ''); I18n._compiledMFs[k] = new Function('transKey', `return (${v})(transKey);`); - return; } k = k.replace('admin_js', 'js'); + const segs = k.split('.'); + let node = I18n.translations[I18n.locale]; let i = 0; - for (; node && i n.notification_type !== 6 || n.read); diff --git a/app/assets/javascripts/discourse/initializers/url-redirects.js.es6 b/app/assets/javascripts/discourse/initializers/url-redirects.js.es6 index 4005acc77c..b0e9c79c10 100644 --- a/app/assets/javascripts/discourse/initializers/url-redirects.js.es6 +++ b/app/assets/javascripts/discourse/initializers/url-redirects.js.es6 @@ -15,7 +15,7 @@ export default { if (currentUser) { const username = currentUser.get('username'); - DiscourseURL.rewrite(new RegExp(`^/users/${username}/?$`, "i"), `/users/${username}/summary`); + DiscourseURL.rewrite(new RegExp(`^/users/${username}/?$`, "i"), `/users/${username}/activity`); } DiscourseURL.rewrite(/^\/users\/([^\/]+)\/?$/, "/users/$1/activity"); diff --git a/app/assets/javascripts/discourse/lib/ajax.js.es6 b/app/assets/javascripts/discourse/lib/ajax.js.es6 index 48f259fd4c..612d161499 100644 --- a/app/assets/javascripts/discourse/lib/ajax.js.es6 +++ b/app/assets/javascripts/discourse/lib/ajax.js.es6 @@ -1,3 +1,5 @@ +import pageVisible from 'discourse/lib/page-visible'; + let _trackView = false; let _transientHeader = null; @@ -14,6 +16,7 @@ export function viewTrackingRequired() { for performance reasons. Also automatically adjusts the URL to support installs in subfolders. **/ + export function ajax() { let url, args; let ajaxObj; @@ -47,6 +50,10 @@ export function ajax() { args.headers['Discourse-Track-View'] = "true"; } + if (pageVisible()) { + args.headers['Discourse-Visible'] = "true"; + } + args.success = (data, textStatus, xhr) => { if (xhr.getResponseHeader('Discourse-Readonly')) { Ember.run(() => Discourse.Site.currentProp('isReadOnly', true)); diff --git a/app/assets/javascripts/discourse/lib/autocomplete.js.es6 b/app/assets/javascripts/discourse/lib/autocomplete.js.es6 index 5e1d404bc9..bfaa65d49a 100644 --- a/app/assets/javascripts/discourse/lib/autocomplete.js.es6 +++ b/app/assets/javascripts/discourse/lib/autocomplete.js.es6 @@ -82,7 +82,7 @@ export default function(options) { let prevTerm = null; // input is handled differently - const isInput = this[0].tagName === "INPUT"; + const isInput = this[0].tagName === "INPUT" && !options.treatAsTextarea; let inputSelectedItems = []; function closeAutocomplete() { @@ -175,8 +175,10 @@ export default function(options) { wrap.width(width); } - if(options.single) { - this.css("width","100%"); + if(options.single && !options.width) { + this.css("width", "100%"); + } else if (options.width) { + this.css("width", options.width); } else { this.width(150); } @@ -238,6 +240,7 @@ export default function(options) { var pos = null; var vOffset = 0; var hOffset = 0; + if (isInput) { pos = { left: 0, @@ -250,7 +253,9 @@ export default function(options) { pos: completeStart, key: options.key }); + hOffset = 27; + if (options.treatAsTextarea) vOffset = -32; } div.css({ left: "-1000px" @@ -258,7 +263,7 @@ export default function(options) { me.parent().append(div); - if (!isInput) { + if (!isInput && !options.treatAsTextarea) { vOffset = div.height(); if ((window.innerHeight - me.outerHeight() - $("header.d-header").innerHeight()) < vOffset) { diff --git a/app/assets/javascripts/discourse/lib/page-visible.js.es6 b/app/assets/javascripts/discourse/lib/page-visible.js.es6 new file mode 100644 index 0000000000..e32e68d0d7 --- /dev/null +++ b/app/assets/javascripts/discourse/lib/page-visible.js.es6 @@ -0,0 +1,12 @@ +// for android we test webkit +var hiddenProperty = document.hidden !== undefined ? "hidden" : ( + document.webkitHidden !== undefined ? "webkitHidden" : undefined + ); + +export default function() { + if (hiddenProperty !== undefined){ + return !document[hiddenProperty]; + } else { + return document && document.hasFocus; + } +}; diff --git a/app/assets/javascripts/discourse/lib/plugin-api.js.es6 b/app/assets/javascripts/discourse/lib/plugin-api.js.es6 index 73ce8a4e9d..0b3e85739b 100644 --- a/app/assets/javascripts/discourse/lib/plugin-api.js.es6 +++ b/app/assets/javascripts/discourse/lib/plugin-api.js.es6 @@ -13,9 +13,14 @@ import { addFlagProperty } from 'discourse/components/site-header'; import { addPopupMenuOptionsCallback } from 'discourse/controllers/composer'; import { extraConnectorClass } from 'discourse/lib/plugin-connectors'; import { addPostSmallActionIcon } from 'discourse/widgets/post-small-action'; +import { addDiscoveryQueryParam } from 'discourse/controllers/discovery-sortable'; +import { addTagsHtmlCallback } from 'discourse/lib/render-tags'; +import { addUserMenuGlyph } from 'discourse/widgets/user-menu'; +import { addPostClassesCallback } from 'discourse/widgets/post'; +import { addPostTransformCallback } from 'discourse/widgets/post-stream'; // If you add any methods to the API ensure you bump up this number -const PLUGIN_API_VERSION = 0.8; +const PLUGIN_API_VERSION = '0.8.5'; class PluginApi { constructor(version, container) { @@ -377,12 +382,108 @@ class PluginApi { addPostSmallActionIcon(key, icon) { addPostSmallActionIcon(key, icon); } + + /** + * Register an additional query param with topic discovery, + * this allows for filters on the topic list + * + **/ + addDiscoveryQueryParam(param, options) { + addDiscoveryQueryParam(param, options); + } + + /** + * Register a callback to be called every time tags render + * highest priority callbacks are called first + * example: + * + * callback = function(topic, params) { + * if (topic.get("created_at") < "2000-00-01") { + * return "ANCIENT" + * } + * } + * + * api.addTagsHtmlCallback(callback, {priority: 100}); + * + **/ + addTagsHtmlCallback(callback, options) { + addTagsHtmlCallback(callback, options); + }; + + /** + * Adds a glyph to user menu after bookmarks + * WARNING: there is limited space there + * + * example: + * + * api.addUserMenuGlyph({ + * label: 'awesome.label', + * className: 'my-class', + * icon: 'my-icon', + * href: `/some/path` + * }); + * + */ + addUserMenuGlyph(glyph) { + addUserMenuGlyph(glyph); + }; + + /** + * Adds a callback to be called before rendering any post that + * that returns custom classes to add to the post + * + * Example: + * + * addPostClassesCallback((atts) => {if (atts.post_number == 1) return ["first"];}) + **/ + addPostClassesCallback(callback) { + addPostClassesCallback(callback); + } + + /** + * + * Adds a callback to be executed on the "transformed" post that is passed to the post + * widget. + * + * This allows you to apply transformations on the actual post that is about to be rendered. + * + * Example: + * + * addPostTransformCallback((t)=>{ + * // post number 7 is overrated, don't show it ever + * if (t.post_number === 7) { t.cooked = ""; } + * }) + */ + addPostTransformCallback(callback) { + addPostTransformCallback(callback); + } } let _pluginv01; + + +// from http://stackoverflow.com/questions/6832596/how-to-compare-software-version-number-using-js-only-number +function cmpVersions (a, b) { + var i, diff; + var regExStrip0 = /(\.0+)+$/; + var segmentsA = a.replace(regExStrip0, '').split('.'); + var segmentsB = b.replace(regExStrip0, '').split('.'); + var l = Math.min(segmentsA.length, segmentsB.length); + + for (i = 0; i < l; i++) { + diff = parseInt(segmentsA[i], 10) - parseInt(segmentsB[i], 10); + if (diff) { + return diff; + } + } + return segmentsA.length - segmentsB.length; +} + + + function getPluginApi(version) { - version = parseFloat(version); - if (version <= PLUGIN_API_VERSION) { + version = version.toString(); + if (cmpVersions(version,PLUGIN_API_VERSION) <= 0) { if (!_pluginv01) { _pluginv01 = new PluginApi(version, Discourse.__container__); } diff --git a/app/assets/javascripts/discourse/lib/plugin-connectors.js.es6 b/app/assets/javascripts/discourse/lib/plugin-connectors.js.es6 index 61cdbab255..d398031d81 100644 --- a/app/assets/javascripts/discourse/lib/plugin-connectors.js.es6 +++ b/app/assets/javascripts/discourse/lib/plugin-connectors.js.es6 @@ -92,6 +92,13 @@ export function connectorsFor(outletName) { return _connectorCache[outletName] || []; } +export function renderedConnectorsFor(outletName, args, context) { + return connectorsFor(outletName).filter(con => { + return con.connectorClass.shouldRender(args, context); + }); +} + + export function rawConnectorsFor(outletName) { if (!_rawConnectorCache) { buildRawConnectorCache(); } return _rawConnectorCache[outletName] || []; diff --git a/app/assets/javascripts/discourse/lib/render-tag.js.es6 b/app/assets/javascripts/discourse/lib/render-tag.js.es6 index 356ee4b2c2..127dc5c9fe 100644 --- a/app/assets/javascripts/discourse/lib/render-tag.js.es6 +++ b/app/assets/javascripts/discourse/lib/render-tag.js.es6 @@ -1,5 +1,3 @@ -import { h } from 'virtual-dom'; - export default function renderTag(tag, params) { params = params || {}; tag = Handlebars.Utils.escapeExpression(tag); @@ -19,19 +17,3 @@ export default function renderTag(tag, params) { return val; }; - -export function tagNode(tag, params) { - const classes = ['tag-' + tag, 'discourse-tag']; - const tagName = params.tagName || "a"; - - if (Discourse.SiteSettings.tag_style || params.style) { - classes.push(params.style || Discourse.SiteSettings.tag_style); - } - - if (tagName === 'a') { - const href = Discourse.getURL(`/tags/${tag}`); - return h(tagName, { className: classes.join(' '), attributes: { href } }, tag); - } else { - return h(tagName, { className: classes.join(' ') }, tag); - } -} diff --git a/app/assets/javascripts/discourse/lib/render-tags.js.es6 b/app/assets/javascripts/discourse/lib/render-tags.js.es6 new file mode 100644 index 0000000000..1389502f77 --- /dev/null +++ b/app/assets/javascripts/discourse/lib/render-tags.js.es6 @@ -0,0 +1,57 @@ +import renderTag from 'discourse/lib/render-tag'; + +let callbacks = null; +let priorities = null; + +export function addTagsHtmlCallback(callback, options) { + callbacks = callbacks || []; + priorities = priorities || []; + const priority = (options && options.priority) || 0; + + let i = 0; + while(i < priorities.length && priorities[i] > priority) { + i += 1; + } + + priorities.splice(i, 0, priority); + callbacks.splice(i, 0, callback); +}; + +export default function(topic, params){ + let tags = topic.tags; + let buffer = ""; + + if (params && params.mode === "list") { + tags = topic.get("visibleListTags"); + } + + let customHtml = null; + if (callbacks) { + callbacks.forEach((c) => { + const html = c(topic, params); + if (html) { + if (customHtml) { + customHtml += html; + } else { + customHtml = html; + } + } + }); + } + + if (customHtml || (tags && tags.length > 0)) { + buffer = "
"; + if (tags) { + for(let i=0; i v.username || v.name, + dataSource: term => userSearch({ term, includeGroups: true }), + afterComplete + }); +}; diff --git a/app/assets/javascripts/discourse/lib/url.js.es6 b/app/assets/javascripts/discourse/lib/url.js.es6 index 8f1b1d3e13..488123dfbb 100644 --- a/app/assets/javascripts/discourse/lib/url.js.es6 +++ b/app/assets/javascripts/discourse/lib/url.js.es6 @@ -326,6 +326,11 @@ const DiscourseURL = Ember.Object.extend({ if (opts.replaceURL) { this.replaceState(path); } else { + const discoveryTopics = this.controllerFor('discovery/topics'); + if (discoveryTopics) { + discoveryTopics.resetParams(); + } + router.router.updateURL(path); } diff --git a/app/assets/javascripts/discourse/mixins/username-validation.js.es6 b/app/assets/javascripts/discourse/mixins/username-validation.js.es6 new file mode 100644 index 0000000000..91e9554c9f --- /dev/null +++ b/app/assets/javascripts/discourse/mixins/username-validation.js.es6 @@ -0,0 +1,106 @@ +import InputValidation from 'discourse/models/input-validation'; +import debounce from 'discourse/lib/debounce'; +import { setting } from 'discourse/lib/computed'; +import { default as computed } from 'ember-addons/ember-computed-decorators'; + +export default Ember.Mixin.create({ + + uniqueUsernameValidation: null, + + maxUsernameLength: setting('max_username_length'), + minUsernameLength: setting('min_username_length'), + + fetchExistingUsername: debounce(function() { + const self = this; + Discourse.User.checkUsername(null, this.get('accountEmail')).then(function(result) { + if (result.suggestion && (Ember.isEmpty(self.get('accountUsername')) || self.get('accountUsername') === self.get('authOptions.username'))) { + self.set('accountUsername', result.suggestion); + self.set('prefilledUsername', result.suggestion); + } + }); + }, 500), + + @computed('accountUsername') + basicUsernameValidation(accountUsername) { + this.set('uniqueUsernameValidation', null); + + + if (accountUsername === this.get('prefilledUsername')) { + return InputValidation.create({ + ok: true, + reason: I18n.t('user.username.prefilled') + }); + } + + // If blank, fail without a reason + if (Ember.isEmpty(accountUsername)) { + return InputValidation.create({ + failed: true + }); + } + + // If too short + if (accountUsername.length < Discourse.SiteSettings.min_username_length) { + return InputValidation.create({ + failed: true, + reason: I18n.t('user.username.too_short') + }); + } + + // If too long + if (accountUsername.length > this.get('maxUsernameLength')) { + return InputValidation.create({ + failed: true, + reason: I18n.t('user.username.too_long') + }); + } + + this.checkUsernameAvailability(); + // Let's check it out asynchronously + return InputValidation.create({ + failed: true, + reason: I18n.t('user.username.checking') + }); + }, + + shouldCheckUsernameAvailability: function() { + return !Ember.isEmpty(this.get('accountUsername')) && this.get('accountUsername').length >= this.get('minUsernameLength'); + }, + + checkUsernameAvailability: debounce(function() { + if (this.shouldCheckUsernameAvailability()) { + return Discourse.User.checkUsername(this.get('accountUsername'), this.get('accountEmail')).then(result => { + this.set('isDeveloper', false); + if (result.available) { + if (result.is_developer) { + this.set('isDeveloper', true); + } + return this.set('uniqueUsernameValidation', InputValidation.create({ + ok: true, + reason: I18n.t('user.username.available') + })); + } else { + if (result.suggestion) { + return this.set('uniqueUsernameValidation', InputValidation.create({ + failed: true, + reason: I18n.t('user.username.not_available', result) + })); + } else { + return this.set('uniqueUsernameValidation', InputValidation.create({ + failed: true, + reason: result.errors ? result.errors.join(' ') : I18n.t('user.username.not_available_no_suggestion') + })); + } + } + }); + } + }, 500), + + // Actually wait for the async name check before we're 100% sure we're good to go + @computed('uniqueUsernameValidation', 'basicUsernameValidation') + usernameValidation() { + const basicValidation = this.get('basicUsernameValidation'); + const uniqueUsername = this.get('uniqueUsernameValidation'); + return uniqueUsername ? uniqueUsername : basicValidation; + } +}); diff --git a/app/assets/javascripts/discourse/models/category.js.es6 b/app/assets/javascripts/discourse/models/category.js.es6 index b31f715b81..1ac1a9ca0c 100644 --- a/app/assets/javascripts/discourse/models/category.js.es6 +++ b/app/assets/javascripts/discourse/models/category.js.es6 @@ -70,7 +70,7 @@ const Category = RestModel.extend({ @computed("topic_count") moreTopics(topicCount) { - return topicCount > Discourse.SiteSettings.category_featured_topics; + return topicCount > (this.get('num_featured_topics') || 2); }, save() { @@ -102,7 +102,10 @@ const Category = RestModel.extend({ allowed_tag_groups: this.get('allowed_tag_groups'), sort_order: this.get('sort_order'), sort_ascending: this.get('sort_ascending'), - topic_featured_link_allowed: this.get('topic_featured_link_allowed') + topic_featured_link_allowed: this.get('topic_featured_link_allowed'), + show_subcategory_list: this.get('show_subcategory_list'), + num_featured_topics: this.get('num_featured_topics'), + default_view: this.get('default_view') }, type: id ? 'PUT' : 'POST' }); @@ -148,7 +151,7 @@ const Category = RestModel.extend({ @computed("topics") featuredTopics(topics) { if (topics && topics.length) { - return topics.slice(0, Discourse.SiteSettings.category_featured_topics || 2); + return topics.slice(0, this.get('num_featured_topics') || 2); } }, diff --git a/app/assets/javascripts/discourse/models/topic-list.js.es6 b/app/assets/javascripts/discourse/models/topic-list.js.es6 index 6c90b31ab3..b9076f078d 100644 --- a/app/assets/javascripts/discourse/models/topic-list.js.es6 +++ b/app/assets/javascripts/discourse/models/topic-list.js.es6 @@ -98,13 +98,22 @@ TopicList.reopenClass({ if (!result) { return; } // Stitch together our side loaded data + const categories = Discourse.Category.list(), - users = Model.extractByKey(result.users, Discourse.User); + users = Model.extractByKey(result.users, Discourse.User), + groups = Model.extractByKey(result.primary_groups, Ember.Object); return result.topic_list.topics.map(function (t) { t.category = categories.findBy('id', t.category_id); t.posters.forEach(function(p) { p.user = users[p.user_id]; + p.extraClasses = p.extras; + if (p.primary_group_id) { + p.primary_group = groups[p.primary_group_id]; + if (p.primary_group) { + p.extraClasses = `${p.extraClasses||''} group-${p.primary_group.name}`; + } + } }); if (t.participants) { t.participants.forEach(function(p) { diff --git a/app/assets/javascripts/discourse/pre-initializers/dynamic-route-builders.js.es6 b/app/assets/javascripts/discourse/pre-initializers/dynamic-route-builders.js.es6 index 93eddde83c..6fef97d345 100644 --- a/app/assets/javascripts/discourse/pre-initializers/dynamic-route-builders.js.es6 +++ b/app/assets/javascripts/discourse/pre-initializers/dynamic-route-builders.js.es6 @@ -13,9 +13,9 @@ export default { app.DiscoveryCategoryNoneController = DiscoverySortableController.extend(); app.DiscoveryCategoryWithIDController = DiscoverySortableController.extend(); - app.DiscoveryCategoryRoute = buildCategoryRoute('latest'); - app.DiscoveryParentCategoryRoute = buildCategoryRoute('latest'); - app.DiscoveryCategoryNoneRoute = buildCategoryRoute('latest', {no_subcategories: true}); + app.DiscoveryCategoryRoute = buildCategoryRoute('default'); + app.DiscoveryParentCategoryRoute = buildCategoryRoute('default'); + app.DiscoveryCategoryNoneRoute = buildCategoryRoute('default', {no_subcategories: true}); const site = Discourse.Site.current(); site.get('filters').forEach(filter => { diff --git a/app/assets/javascripts/discourse/routes/app-route-map.js.es6 b/app/assets/javascripts/discourse/routes/app-route-map.js.es6 index 6ea5b9bd5b..99a2aa0886 100644 --- a/app/assets/javascripts/discourse/routes/app-route-map.js.es6 +++ b/app/assets/javascripts/discourse/routes/app-route-map.js.es6 @@ -142,4 +142,8 @@ export default function() { this.route('tagGroups', {path: '/tag_groups', resetNamespace: true}, function() { this.route('show', {path: '/:id'}); }); + + this.route('invites', { path: '/invites', resetNamespace: true }, function() { + this.route('show', { path: '/:token' }); + }); } diff --git a/app/assets/javascripts/discourse/routes/build-category-route.js.es6 b/app/assets/javascripts/discourse/routes/build-category-route.js.es6 index 14bc77f8a5..0f8fb98d39 100644 --- a/app/assets/javascripts/discourse/routes/build-category-route.js.es6 +++ b/app/assets/javascripts/discourse/routes/build-category-route.js.es6 @@ -6,7 +6,7 @@ import CategoryList from 'discourse/models/category-list'; import Category from 'discourse/models/category'; // A helper function to create a category route with parameters -export default (filter, params) => { +export default (filterArg, params) => { return Discourse.Route.extend({ queryParams, @@ -37,9 +37,13 @@ export default (filter, params) => { this._retrieveTopicList(model.category, transition)]); }, + filter(category) { + return filterArg === 'default' ? (category.get('default_view') || 'latest') : filterArg; + }, + _setupNavigation(category) { const noSubcategories = params && !!params.no_subcategories, - filterMode = `c/${Discourse.Category.slugFor(category)}${noSubcategories ? "/none" : ""}/l/${filter}`; + filterMode = `c/${Discourse.Category.slugFor(category)}${noSubcategories ? "/none" : ""}/l/${this.filter(category)}`; this.controllerFor('navigation/category').setProperties({ category, @@ -51,7 +55,7 @@ export default (filter, params) => { _createSubcategoryList(category) { this._categoryList = null; - if (Em.isNone(category.get('parentCategory')) && Discourse.SiteSettings.show_subcategory_list) { + if (Em.isNone(category.get('parentCategory')) && category.get('show_subcategory_list')) { return CategoryList.listForParent(this.store, category).then(list => this._categoryList = list); } @@ -60,7 +64,7 @@ export default (filter, params) => { }, _retrieveTopicList(category, transition) { - const listFilter = `c/${Discourse.Category.slugFor(category)}/l/${filter}`, + const listFilter = `c/${Discourse.Category.slugFor(category)}/l/${this.filter(category)}`, findOpts = filterQueryParams(transition.queryParams, params), extras = { cached: this.isPoppedState(transition) }; @@ -72,8 +76,8 @@ export default (filter, params) => { }, titleToken() { - const filterText = I18n.t('filters.' + filter.replace('/', '.') + '.title'), - category = this.currentModel.category; + const category = this.currentModel.category, + filterText = I18n.t('filters.' + this.filter(category).replace('/', '.') + '.title'); return I18n.t('filters.with_category', { filter: filterText, category: category.get('name') }); }, @@ -82,7 +86,8 @@ export default (filter, params) => { const topics = this.get('topics'), category = model.category, canCreateTopic = topics.get('can_create_topic'), - canCreateTopicOnCategory = category.get('permission') === PermissionType.FULL; + canCreateTopicOnCategory = category.get('permission') === PermissionType.FULL, + filter = this.filter(category); this.controllerFor('navigation/category').setProperties({ canCreateTopicOnCategory: canCreateTopicOnCategory, diff --git a/app/assets/javascripts/discourse/routes/invites-show.js.es6 b/app/assets/javascripts/discourse/routes/invites-show.js.es6 new file mode 100644 index 0000000000..9acc266ced --- /dev/null +++ b/app/assets/javascripts/discourse/routes/invites-show.js.es6 @@ -0,0 +1,13 @@ +import PreloadStore from 'preload-store'; + +export default Discourse.Route.extend({ + titleToken() { + return I18n.t('invites.accept_title'); + }, + + model(params) { + if (PreloadStore.get("invite_info")) { + return PreloadStore.getAndRemove("invite_info").then(json => _.merge(params, json)); + } + } +}); diff --git a/app/assets/javascripts/discourse/routes/user-index.js.es6 b/app/assets/javascripts/discourse/routes/user-index.js.es6 index 1301250006..02347f714f 100644 --- a/app/assets/javascripts/discourse/routes/user-index.js.es6 +++ b/app/assets/javascripts/discourse/routes/user-index.js.es6 @@ -4,7 +4,7 @@ export default Discourse.Route.extend({ const { currentUser } = this; const viewingMe = (currentUser && currentUser.get('username') === this.modelFor('user').get('username')); - const destination = viewingMe ? 'user.summary' : 'userActivity'; + const destination = viewingMe ? 'userActivity' : 'user.summary'; // HACK: Something with the way the user card intercepts clicks seems to break how the // transition into a user's activity works. This makes the back button work on mobile diff --git a/app/assets/javascripts/discourse/services/search.js.es6 b/app/assets/javascripts/discourse/services/search.js.es6 index dcaa600aa6..3a2062308f 100644 --- a/app/assets/javascripts/discourse/services/search.js.es6 +++ b/app/assets/javascripts/discourse/services/search.js.es6 @@ -1,7 +1,7 @@ import { default as computed, observes } from 'ember-addons/ember-computed-decorators'; export default Ember.Object.extend({ - searchContextEnabled: false, + searchContextEnabled: false, // checkbox to scope search searchContext: null, term: null, highlightTerm: null, diff --git a/app/assets/javascripts/discourse/templates/bulk-tag.hbs b/app/assets/javascripts/discourse/templates/bulk-tag.hbs index 636f83cb34..4ed48ddc2b 100644 --- a/app/assets/javascripts/discourse/templates/bulk-tag.hbs +++ b/app/assets/javascripts/discourse/templates/bulk-tag.hbs @@ -1,5 +1,5 @@ -

{{i18n "topics.bulk.choose_new_tags"}}

+

{{i18n (concat "topics.bulk." title)}}

{{tag-chooser tags=tags categoryId=categoryId}}

-{{d-button action="changeTags" disabled=emptyTags label="topics.bulk.change_tags"}} +{{d-button action=action disabled=emptyTags label=(concat "topics.bulk." label)}} diff --git a/app/assets/javascripts/discourse/templates/components/edit-category-settings.hbs b/app/assets/javascripts/discourse/templates/components/edit-category-settings.hbs index bf439c9e43..d3e6a73d3a 100644 --- a/app/assets/javascripts/discourse/templates/components/edit-category-settings.hbs +++ b/app/assets/javascripts/discourse/templates/components/edit-category-settings.hbs @@ -19,6 +19,15 @@ +{{#unless category.parent_category_id}} +
+ +
+{{/unless}} +
+
+ +
+ {{#if emailInEnabled}}
diff --git a/app/assets/javascripts/discourse/templates/invites.hbs b/app/assets/javascripts/discourse/templates/invites.hbs new file mode 100644 index 0000000000..e2147cab02 --- /dev/null +++ b/app/assets/javascripts/discourse/templates/invites.hbs @@ -0,0 +1 @@ +{{outlet}} \ No newline at end of file diff --git a/app/assets/javascripts/discourse/templates/invites/show.hbs b/app/assets/javascripts/discourse/templates/invites/show.hbs new file mode 100644 index 0000000000..3857017e37 --- /dev/null +++ b/app/assets/javascripts/discourse/templates/invites/show.hbs @@ -0,0 +1,55 @@ +
+ +

{{welcomeTitle}}

+ +
+
+ +
+ +
+

{{i18n 'invites.invited_by'}}

+ +

{{user-info user=invitedBy}}

+ + {{#if successMessage}} +

{{successMessage}}

+ {{else}} + +

{{{yourEmailMessage}}} + {{#if externalAuthsEnabled}} + {{i18n 'invites.social_login_available'}} + {{/if}} +

+ +
+ + +
+ {{input value=accountUsername id="new-account-username" name="username" maxlength=maxUsernameLength autocomplete="off"}} +  {{input-tip validation=usernameValidation id="username-validation"}} +
+ + + +
+ {{password-field value=accountPassword type="password" id="new-account-password" capsLockOn=capsLockOn}} +  {{input-tip validation=passwordValidation}} +
+ +
+
{{i18n 'login.caps_lock_warning'}}
+
+ + + + {{#if errorMessage}} +

+
{{errorMessage}}
+ {{/if}} + +
+ {{/if}} +
+
+
diff --git a/app/assets/javascripts/discourse/templates/list/posters-column.raw.hbs b/app/assets/javascripts/discourse/templates/list/posters-column.raw.hbs index 71317223b4..8a76f02191 100644 --- a/app/assets/javascripts/discourse/templates/list/posters-column.raw.hbs +++ b/app/assets/javascripts/discourse/templates/list/posters-column.raw.hbs @@ -1,5 +1,5 @@ {{#each posters as |poster|}} -{{avatar poster avatarTemplatePath="user.avatar_template" usernamePath="user.username" imageSize="small"}} +{{avatar poster avatarTemplatePath="user.avatar_template" usernamePath="user.username" imageSize="small"}} {{/each}} diff --git a/app/assets/javascripts/discourse/templates/list/topic-list-item.raw.hbs b/app/assets/javascripts/discourse/templates/list/topic-list-item.raw.hbs index 05b387b719..b88602c0a0 100644 --- a/app/assets/javascripts/discourse/templates/list/topic-list-item.raw.hbs +++ b/app/assets/javascripts/discourse/templates/list/topic-list-item.raw.hbs @@ -18,14 +18,7 @@ {{/if}} - {{#if topic.tags}} -
- {{#each topic.visibleListTags as |tag|}} - {{discourse-tag tag}} - {{/each}} -
- {{/if}} - {{raw-plugin-outlet name="topic-list-tags"}} + {{discourse-tags topic mode="list"}} {{#if expandPinned}} {{raw "list/topic-excerpt" topic=topic}} {{/if}} diff --git a/app/assets/javascripts/discourse/templates/mobile/list/topic-list-item.raw.hbs b/app/assets/javascripts/discourse/templates/mobile/list/topic-list-item.raw.hbs index 159d836b48..d0541cf791 100644 --- a/app/assets/javascripts/discourse/templates/mobile/list/topic-list-item.raw.hbs +++ b/app/assets/javascripts/discourse/templates/mobile/list/topic-list-item.raw.hbs @@ -32,15 +32,7 @@ {{/unless}} - {{#if topic.tags}} -
- {{#each topic.visibleListTags as |tag|}} - {{discourse-tag tag}} - {{/each}} -
- {{/if}} - - {{raw-plugin-outlet name="topic-list-tags"}} + {{discourse-tags topic mode="list"}}
diff --git a/app/assets/javascripts/discourse/templates/mobile/users.hbs b/app/assets/javascripts/discourse/templates/mobile/users.hbs index 96c80d023a..56417c588c 100644 --- a/app/assets/javascripts/discourse/templates/mobile/users.hbs +++ b/app/assets/javascripts/discourse/templates/mobile/users.hbs @@ -1,24 +1,26 @@ -
-
+{{#load-more selector=".directory .user" action="loadMore"}} +
+
+ +
+ {{period-chooser period=period}} + {{text-field value=nameInput placeholderKey="directory.filter_name" class="filter-name no-blur"}} +
+ + {{#conditional-loading-spinner condition=model.loading}} + {{#if model.length}} +
{{i18n "directory.total_rows" count=model.totalRows}}
+ {{#each model as |item|}} + {{directory-item tagName="div" class="user" item=item showTimeRead=showTimeRead}} + {{/each}} + + {{conditional-loading-spinner condition=model.loadingMore}} + {{else}} +
+

{{i18n "directory.no_results"}}

+ {{/if}} + {{/conditional-loading-spinner}} -
- {{period-chooser period=period}} - {{text-field value=nameInput placeholderKey="directory.filter_name" class="filter-name no-blur"}}
- - {{#conditional-loading-spinner condition=model.loading}} - {{#if model.length}} -
{{i18n "directory.total_rows" count=model.totalRows}}
- {{#each model as |item|}} - {{directory-item tagName="div" class="user" item=item showTimeRead=showTimeRead}} - {{/each}} - - {{conditional-loading-spinner condition=model.loadingMore}} - {{else}} -
-

{{i18n "directory.no_results"}}

- {{/if}} - {{/conditional-loading-spinner}} -
-
+{{/load-more}} diff --git a/app/assets/javascripts/discourse/templates/navigation/category.hbs b/app/assets/javascripts/discourse/templates/navigation/category.hbs index 2e9579cbf2..a4e9aebda1 100644 --- a/app/assets/javascripts/discourse/templates/navigation/category.hbs +++ b/app/assets/javascripts/discourse/templates/navigation/category.hbs @@ -15,7 +15,7 @@ noSubcategories=noSubcategories hideSubcategories=showingSubcategoryList}} - {{navigation-bar navItems=navItems filterMode=filterMode}} + {{navigation-bar navItems=navItems filterMode=filterMode category=category}} {{#if currentUser}} {{category-notifications-button category=category}} diff --git a/app/assets/javascripts/discourse/templates/user/messages.hbs b/app/assets/javascripts/discourse/templates/user/messages.hbs index ec37e6098a..d9be88452e 100644 --- a/app/assets/javascripts/discourse/templates/user/messages.hbs +++ b/app/assets/javascripts/discourse/templates/user/messages.hbs @@ -21,6 +21,7 @@ {{i18n 'user.messages.archive'}} {{/link-to}} + {{plugin-outlet name="user-messages-nav" connectorTagName='li' args=(hash model=model)}} {{#each model.groups as |group|}} {{#if group.has_messages}}
  • diff --git a/app/assets/javascripts/discourse/widgets/actions-summary.js.es6 b/app/assets/javascripts/discourse/widgets/actions-summary.js.es6 index e925ea9546..bf09613c73 100644 --- a/app/assets/javascripts/discourse/widgets/actions-summary.js.es6 +++ b/app/assets/javascripts/discourse/widgets/actions-summary.js.es6 @@ -26,7 +26,11 @@ createWidget('small-user-list', { users = users.concat(avatarAtts(currentUser)); } - let description = I18n.t(atts.description, { icons: '' }); + let description = null; + + if (atts.description) { + description = I18n.t(atts.description, { icons: '' }); + } // oddly post_url is on the user let postUrl; @@ -38,7 +42,13 @@ createWidget('small-user-list', { if (postUrl) { description = h('a', { attributes: { href: Discourse.getURL(postUrl) } }, description); } - return [icons, description, '.']; + + let buffer = [icons]; + if (description) { + buffer.push(description); + buffer.push("."); + } + return buffer; } } }); diff --git a/app/assets/javascripts/discourse/widgets/hamburger-menu.js.es6 b/app/assets/javascripts/discourse/widgets/hamburger-menu.js.es6 index 7bd5d30dd7..4bf8b257d0 100644 --- a/app/assets/javascripts/discourse/widgets/hamburger-menu.js.es6 +++ b/app/assets/javascripts/discourse/widgets/hamburger-menu.js.es6 @@ -36,7 +36,7 @@ export default createWidget('hamburger-menu', { const { currentUser } = this; const links = [{ route: 'admin', className: 'admin-link', icon: 'wrench', label: 'admin_title' }, - { route: 'adminFlags', + { href: '/admin/flags/active', className: 'flagged-posts-link', icon: 'flag', label: 'flags_title', @@ -117,11 +117,10 @@ export default createWidget('hamburger-menu', { listCategories() { const hideUncategorized = !this.siteSettings.allow_uncategorized_topics; - const showSubcatList = this.siteSettings.show_subcategory_list; const isStaff = Discourse.User.currentProp('staff'); const categories = Discourse.Category.list().reject((c) => { - if (showSubcatList && c.get('parent_category_id')) { return true; } + if (c.get('parentCategory.show_subcategory_list')) { return true; } if (hideUncategorized && c.get('isUncategorizedCategory') && !isStaff) { return true; } return false; }); diff --git a/app/assets/javascripts/discourse/widgets/header-topic-info.js.es6 b/app/assets/javascripts/discourse/widgets/header-topic-info.js.es6 index 20045a9371..9aca1e1638 100644 --- a/app/assets/javascripts/discourse/widgets/header-topic-info.js.es6 +++ b/app/assets/javascripts/discourse/widgets/header-topic-info.js.es6 @@ -1,15 +1,15 @@ -import { createWidget } from 'discourse/widgets/widget'; +import { applyDecorators, createWidget } from 'discourse/widgets/widget'; import { h } from 'virtual-dom'; import { iconNode } from 'discourse/helpers/fa-icon-node'; import DiscourseURL from 'discourse/lib/url'; import RawHtml from 'discourse/widgets/raw-html'; -import { tagNode } from 'discourse/lib/render-tag'; +import renderTags from 'discourse/lib/render-tags'; import { topicFeaturedLinkNode } from 'discourse/lib/render-topic-featured-link'; export default createWidget('header-topic-info', { tagName: 'div.extra-info-wrapper', - html(attrs) { + html(attrs, state) { const topic = attrs.topic; const heading = []; @@ -45,13 +45,14 @@ export default createWidget('header-topic-info', { title.push(this.attach('category-link', { category })); } - const extra = []; - if (this.siteSettings.tagging_enabled) { - const tags = topic.get('tags') || []; - if (tags.length) { - extra.push(h('div.list-tags', tags.map(tagNode))); - } + let extra = []; + const tags = renderTags(topic); + if (tags && tags.length > 0) { + extra.push(new RawHtml({html: tags})); } + + extra = extra.concat(applyDecorators(this, 'after-tags', attrs, state)); + if (this.siteSettings.topic_featured_link_enabled) { const featured = topicFeaturedLinkNode(attrs.topic); if (featured) { diff --git a/app/assets/javascripts/discourse/widgets/header.js.es6 b/app/assets/javascripts/discourse/widgets/header.js.es6 index 8dbb00349a..c74dac720f 100644 --- a/app/assets/javascripts/discourse/widgets/header.js.es6 +++ b/app/assets/javascripts/discourse/widgets/header.js.es6 @@ -3,6 +3,7 @@ import { iconNode } from 'discourse/helpers/fa-icon-node'; import { avatarImg } from 'discourse/widgets/post'; import DiscourseURL from 'discourse/lib/url'; import { wantsNewWindow } from 'discourse/lib/intercept-click'; +import { applySearchAutocomplete } from "discourse/lib/search"; import { h } from 'virtual-dom'; @@ -163,6 +164,8 @@ createWidget('header-buttons', { } }); +const forceContextEnabled = ['category', 'user', 'private_messages']; + export default createWidget('header', { tagName: 'header.d-header.clearfix', buildKey: () => `header`, @@ -172,7 +175,6 @@ export default createWidget('header', { searchVisible: false, hamburgerVisible: false, userVisible: false, - contextEnabled: false, ringBackdrop: true }; @@ -192,6 +194,19 @@ export default createWidget('header', { flagCount: attrs.flagCount })]; if (state.searchVisible) { + const contextType = this.searchContextType(); + + if (state.searchContextType !== contextType) { + state.contextEnabled = undefined; + state.searchContextType = contextType; + } + + if (state.contextEnabled === undefined) { + if (forceContextEnabled.includes(contextType)) { + state.contextEnabled = true; + } + } + panels.push(this.attach('search-menu', { contextEnabled: state.contextEnabled })); } else if (state.hamburgerVisible) { panels.push(this.attach('hamburger-menu')); @@ -244,7 +259,11 @@ export default createWidget('header', { this.updateHighlight(); if (this.state.searchVisible) { - Ember.run.schedule('afterRender', () => $('#search-term').focus().select()); + Ember.run.schedule('afterRender', () => { + const $searchInput = $('#search-term'); + $searchInput.focus().select(); + applySearchAutocomplete($searchInput, this.siteSettings, this.appEvents); + }); } }, @@ -289,6 +308,7 @@ export default createWidget('header', { }, searchMenuContextChanged(value) { + this.state.contextType = this.register.lookup('search-service:main').get('contextType'); this.state.contextEnabled = value; }, @@ -318,6 +338,16 @@ export default createWidget('header', { } break; } + }, + + searchContextType() { + const service = this.register.lookup('search-service:main'); + if (service) { + const ctx = service.get('searchContext'); + if (ctx) { + return Ember.get(ctx, 'type'); + } + } } }); diff --git a/app/assets/javascripts/discourse/widgets/post-stream.js.es6 b/app/assets/javascripts/discourse/widgets/post-stream.js.es6 index 9488cf7686..edc75be8f6 100644 --- a/app/assets/javascripts/discourse/widgets/post-stream.js.es6 +++ b/app/assets/javascripts/discourse/widgets/post-stream.js.es6 @@ -3,6 +3,21 @@ import transformPost from 'discourse/lib/transform-post'; import { Placeholder } from 'discourse/lib/posts-with-placeholders'; import { addWidgetCleanCallback } from 'discourse/components/mount-widget'; +let transformCallbacks = null; +function postTransformCallbacks(transformed) { + if (transformCallbacks === null) { + return; + } + + for(let i=0; i < transformCallbacks.length; i++) { + transformCallbacks[i].call(this, transformed); + } +} +export function addPostTransformCallback(callback){ + transformCallbacks = transformCallbacks || []; + transformCallbacks.push(callback); +}; + const CLOAKING_ENABLED = !window.inTestEnv; const DAY = 1000 * 60 * 60 * 24; @@ -96,6 +111,8 @@ export default createWidget('post-stream', { transformed.height = _heights[post.id]; transformed.cloaked = _cloaked[post.id]; + postTransformCallbacks(transformed); + if (transformed.isSmallAction) { result.push(this.attach('post-small-action', transformed, { model: post })); } else { diff --git a/app/assets/javascripts/discourse/widgets/post.js.es6 b/app/assets/javascripts/discourse/widgets/post.js.es6 index 5309768e58..c6c9f581f4 100644 --- a/app/assets/javascripts/discourse/widgets/post.js.es6 +++ b/app/assets/javascripts/discourse/widgets/post.js.es6 @@ -376,6 +376,12 @@ createWidget('post-article', { }); +let addPostClassesCallbacks = null; +export function addPostClassesCallback(callback) { + addPostClassesCallbacks = addPostClassesCallbacks || []; + addPostClassesCallbacks.push(callback); +} + export default createWidget('post', { buildKey: attrs => `post-${attrs.id}`, shadowTree: true, @@ -405,6 +411,14 @@ export default createWidget('post', { } else { classNames.push('regular'); } + if (addPostClassesCallbacks) { + for(let i=0; i 'search-term', + buildKey: (attrs) => `search-term-${attrs.id}`, + + defaultState() { + this.appEvents.on("search-autocomplete:after-complete", () => { + this.state.afterAutocomplete = true; + }); + + return { afterAutocomplete: false }; + }, buildAttributes(attrs) { return { type: 'text', @@ -14,7 +23,11 @@ createWidget('search-term', { keyUp(e) { if (e.which === 13) { - return this.sendWidgetAction('fullSearch'); + if (this.state.afterAutocomplete) { + this.state.afterAutocomplete = false; + } else { + return this.sendWidgetAction('fullSearch'); + } } const val = this.attrs.value; diff --git a/app/assets/javascripts/discourse/widgets/search-menu-results.js.es6 b/app/assets/javascripts/discourse/widgets/search-menu-results.js.es6 index 56ac661370..1d190fc7c8 100644 --- a/app/assets/javascripts/discourse/widgets/search-menu-results.js.es6 +++ b/app/assets/javascripts/discourse/widgets/search-menu-results.js.es6 @@ -46,7 +46,7 @@ function postResult(result, link, term) { } createSearchResult('user', 'path', function(u) { - return [ avatarImg('small', { template: u.avatar_template, username: u.username }), ' ', u.username ]; + return [ avatarImg('small', { template: u.avatar_template, username: u.username }), ' ', h('span.user-results', h('b', u.username)), ' ', h('span.user-results', u.name ? u.name : '') ]; }); createSearchResult('topic', 'url', function(result, term) { diff --git a/app/assets/javascripts/discourse/widgets/search-menu.js.es6 b/app/assets/javascripts/discourse/widgets/search-menu.js.es6 index 2e33e54d74..9f462a1205 100644 --- a/app/assets/javascripts/discourse/widgets/search-menu.js.es6 +++ b/app/assets/javascripts/discourse/widgets/search-menu.js.es6 @@ -148,7 +148,12 @@ export default createWidget('search-menu', { }, html(attrs) { - searchData.contextEnabled = attrs.contextEnabled; + if (searchData.contextEnabled !== attrs.contextEnabled) { + searchData.contextEnabled = attrs.contextEnabled; + this.triggerSearch(); + } else { + searchData.contextEnabled = attrs.contextEnabled; + } return this.attach('menu-panel', { maxWidth: 500, contents: () => this.panelContents() }); }, @@ -170,6 +175,7 @@ export default createWidget('search-menu', { }, searchContextChanged(enabled) { + // This indicates the checkbox has been clicked, NOT that the context has changed. searchData.typeFilter = null; this.sendWidgetAction('searchMenuContextChanged', enabled); searchData.contextEnabled = enabled; diff --git a/app/assets/javascripts/discourse/widgets/user-menu.js.es6 b/app/assets/javascripts/discourse/widgets/user-menu.js.es6 index 4a6f2b21c8..43a57c81d6 100644 --- a/app/assets/javascripts/discourse/widgets/user-menu.js.es6 +++ b/app/assets/javascripts/discourse/widgets/user-menu.js.es6 @@ -1,6 +1,13 @@ import { createWidget } from 'discourse/widgets/widget'; import { h } from 'virtual-dom'; +let extraGlyphs; + +export function addUserMenuGlyph(glyph) { + extraGlyphs = extraGlyphs || []; + extraGlyphs.push(glyph); +} + createWidget('user-menu-links', { tagName: 'div.menu-links-header', @@ -13,10 +20,18 @@ createWidget('user-menu-links', { isAnon; const path = attrs.path; - const glyphs = [{ label: 'user.bookmarks', + const glyphs = []; + + if (extraGlyphs) { + // yes glyphs.push(...extraGlyphs) is nicer, but pulling in + // _toConsumableArray seems totally uneeded here + glyphs.push.apply(glyphs, extraGlyphs); + } + + glyphs.push({ label: 'user.bookmarks', className: 'user-bookmarks-link', icon: 'bookmark', - href: `${path}/activity/bookmarks` }]; + href: `${path}/activity/bookmarks` }); if (siteSettings.enable_private_messages) { glyphs.push({ label: 'user.private_messages', diff --git a/app/assets/javascripts/locales/ar.js.erb b/app/assets/javascripts/locales/ar.js.erb index 9755d378a0..c39afcd204 100644 --- a/app/assets/javascripts/locales/ar.js.erb +++ b/app/assets/javascripts/locales/ar.js.erb @@ -1,12 +1,3 @@ //= depend_on 'client.ar.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:ar) %> - -I18n.pluralizationRules['ar'] = function (n) { - if (n == 0) return "zero"; - if (n == 1) return "one"; - if (n == 2) return "two"; - if (n%100 >= 3 && n%100 <= 10) return "few"; - if (n%100 >= 11 && n%100 <= 99) return "many"; - return "other"; -}; diff --git a/app/assets/javascripts/locales/cs.js.erb b/app/assets/javascripts/locales/cs.js.erb index 14a5e7623e..36dfbb499d 100644 --- a/app/assets/javascripts/locales/cs.js.erb +++ b/app/assets/javascripts/locales/cs.js.erb @@ -1,10 +1,3 @@ //= depend_on 'client.cs.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:cs) %> - -I18n.pluralizationRules['cs'] = function (n) { - if (n == 0) return ["zero", "none", "other"]; - if (n == 1) return "one"; - if (n >= 2 && n <= 4) return "few"; - return "other"; -}; diff --git a/app/assets/javascripts/locales/el.js.erb b/app/assets/javascripts/locales/el.js.erb new file mode 100644 index 0000000000..5f4d947b55 --- /dev/null +++ b/app/assets/javascripts/locales/el.js.erb @@ -0,0 +1,3 @@ +//= depend_on 'client.el.yml' +//= require locales/i18n +<%= JsLocaleHelper.output_locale(:el) %> \ No newline at end of file diff --git a/app/assets/javascripts/locales/fa_IR.js.erb b/app/assets/javascripts/locales/fa_IR.js.erb index ddad1cad48..9ce1c17cd5 100644 --- a/app/assets/javascripts/locales/fa_IR.js.erb +++ b/app/assets/javascripts/locales/fa_IR.js.erb @@ -1,7 +1,3 @@ //= depend_on 'client.fa_IR.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:fa_IR) %> - -I18n.pluralizationRules['fa_IR'] = function (n) { - return "other"; -}; diff --git a/app/assets/javascripts/locales/i18n.js b/app/assets/javascripts/locales/i18n.js index d5320f628d..ddf3fd55f1 100644 --- a/app/assets/javascripts/locales/i18n.js +++ b/app/assets/javascripts/locales/i18n.js @@ -1,48 +1,17 @@ /*global I18n:true */ -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf -if (!Array.prototype.indexOf) { - Array.prototype.indexOf = function (searchElement, fromIndex) { - if ( this === undefined || this === null ) { - throw new TypeError( '"this" is null or not defined' ); - } - - var length = this.length >>> 0; // Hack to convert object.length to a UInt32 - - fromIndex = +fromIndex || 0; - - if (Math.abs(fromIndex) === Infinity) { - fromIndex = 0; - } - - if (fromIndex < 0) { - fromIndex += length; - if (fromIndex < 0) { - fromIndex = 0; - } - } - - for (;fromIndex < length; fromIndex++) { - if (this[fromIndex] === searchElement) { - return fromIndex; - } - } - - return -1; - }; -} - // Instantiate the object var I18n = I18n || {}; // Set default locale to english I18n.defaultLocale = "en"; -// Set default handling of translation fallbacks to false -I18n.fallbacks = false; - -// Set default separator -I18n.defaultSeparator = "."; +// Set default pluralization rule +I18n.pluralizationRules = { + en: function(n) { + return n === 0 ? ["zero", "none", "other"] : n === 1 ? "one" : "other"; + } +}; // Set current locale to null I18n.locale = null; @@ -50,44 +19,10 @@ I18n.locale = null; // Set the placeholder format. Accepts `{{placeholder}}` and `%{placeholder}`. I18n.PLACEHOLDER = /(?:\{\{|%\{)(.*?)(?:\}\}?)/gm; -I18n.fallbackRules = {}; +I18n.SEPARATOR = "."; I18n.noFallbacks = false; -I18n.pluralizationRules = { - en: function(n) { - return n === 0 ? ["zero", "none", "other"] : n === 1 ? "one" : "other"; - }, - "zh_CN": function(n) { - return n === 0 ? ["zero", "none", "other"] : "other"; - }, - "zh_TW": function(n) { - return n === 0 ? ["zero", "none", "other"] : "other"; - }, - "ko": function(n) { - return n === 0 ? ["zero", "none", "other"] : "other"; - } -}; - -I18n.getFallbacks = function(locale) { - if (locale === I18n.defaultLocale) { - return []; - } else if (!I18n.fallbackRules[locale]) { - var rules = [], - components = locale.split("-"); - - for (var l = 1; l < components.length; l++) { - rules.push(components.slice(0, l).join("-")); - } - - rules.push(I18n.defaultLocale); - - I18n.fallbackRules[locale] = rules; - } - - return I18n.fallbackRules[locale]; -}; - I18n.isValidNode = function(obj, node, undefined) { return obj[node] !== null && obj[node] !== undefined; }; @@ -95,25 +30,24 @@ I18n.isValidNode = function(obj, node, undefined) { function checkExtras(origScope, sep, extras) { if (!extras || extras.length === 0) { return; } - for (var i=0; i 0) { currentScope = scope.shift(); messages = messages[currentScope]; } - if (messages !== undefined) { - return messages; - } + + if (messages !== undefined) { return messages; } } } I18n.lookup = function(scope, options) { options = options || {}; + var lookupInitialScope = scope, translations = this.prepareOptions(I18n.translations), locale = options.locale || I18n.currentLocale(), @@ -123,16 +57,16 @@ I18n.lookup = function(scope, options) { options = this.prepareOptions(options); if (typeof scope === "object") { - scope = scope.join(this.defaultSeparator); + scope = scope.join(this.SEPARATOR); } if (options.scope) { - scope = options.scope.toString() + this.defaultSeparator + scope; + scope = options.scope.toString() + this.SEPARATOR + scope; } var origScope = "" + scope; - scope = origScope.split(this.defaultSeparator); + scope = origScope.split(this.SEPARATOR); while (messages && scope.length > 0) { currentScope = scope.shift(); @@ -140,24 +74,11 @@ I18n.lookup = function(scope, options) { } if (messages === undefined) { - messages = checkExtras(origScope, this.defaultSeparator, this.extras); + messages = checkExtras(origScope, this.SEPARATOR, this.extras); } - if (messages === undefined) { - if (I18n.fallbacks) { - var fallbacks = this.getFallbacks(locale); - for (var fallback = 0; fallback < fallbacks.length; fallbacks++) { - messages = I18n.lookup(lookupInitialScope, this.prepareOptions({locale: fallbacks[fallback]}, options)); - if (messages !== undefined) { - break; - } - } - } - - if (messages === undefined && this.isValidNode(options, "defaultValue")) { - messages = options.defaultValue; - } + messages = options.defaultValue; } return messages; @@ -193,14 +114,13 @@ I18n.prepareOptions = function() { I18n.interpolate = function(message, options) { options = this.prepareOptions(options); + var matches = message.match(this.PLACEHOLDER), placeholder, value, name; - if (!matches) { - return message; - } + if (!matches) { return message; } for (var i = 0; placeholder = matches[i]; i++) { name = placeholder.replace(this.PLACEHOLDER, "$1"); @@ -219,24 +139,25 @@ I18n.interpolate = function(message, options) { }; I18n.translate = function(scope, options) { - options = this.prepareOptions(options); var translation = this.lookup(scope, options); - // Fallback to the default locale - if (!translation && this.currentLocale() !== this.defaultLocale && !this.noFallbacks) { - options.locale = this.defaultLocale; - translation = this.lookup(scope, options); - } - if (!translation && this.currentLocale() !== 'en' && !this.noFallbacks) { - options.locale = 'en'; - translation = this.lookup(scope, options); + + if (!this.noFallbacks) { + if (!translation && this.currentLocale() !== this.defaultLocale) { + options.locale = this.defaultLocale; + translation = this.lookup(scope, options); + } + if (!translation && this.currentLocale() !== 'en') { + options.locale = 'en'; + translation = this.lookup(scope, options); + } } try { if (typeof translation === "object") { if (typeof options.count === "number") { - return this.pluralize(options.count, scope, options); + return this.pluralize(translation, scope, options); } else { return translation; } @@ -248,158 +169,16 @@ I18n.translate = function(scope, options) { } }; -I18n.localize = function(scope, value) { - switch (scope) { - case "currency": - return this.toCurrency(value); - case "number": - scope = this.lookup("number.format"); - return this.toNumber(value, scope); - case "percentage": - return this.toPercentage(value); - default: - if (scope.match(/^(date|time)/)) { - return this.toTime(scope, value); - } else { - return value.toString(); - } - } -}; - -I18n.parseDate = function(date) { - var matches, convertedDate; - - // we have a date, so just return it. - if (typeof date === "object") { - return date; - } - - // it matches the following formats: - // yyyy-mm-dd - // yyyy-mm-dd[ T]hh:mm::ss - // yyyy-mm-dd[ T]hh:mm::ss - // yyyy-mm-dd[ T]hh:mm::ssZ - // yyyy-mm-dd[ T]hh:mm::ss+0000 - // - matches = date.toString().match(/(\d{4})-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2}):(\d{2}))?(Z|\+0000)?/); - - if (matches) { - for (var i = 1; i <= 6; i++) { - matches[i] = parseInt(matches[i], 10) || 0; - } - - // month starts on 0 - matches[2] -= 1; - - if (matches[7]) { - convertedDate = new Date(Date.UTC(matches[1], matches[2], matches[3], matches[4], matches[5], matches[6])); - } else { - convertedDate = new Date(matches[1], matches[2], matches[3], matches[4], matches[5], matches[6]); - } - } else if (typeof date === "number") { - // UNIX timestamp - convertedDate = new Date(); - convertedDate.setTime(date); - } else if (date.match(/\d+ \d+:\d+:\d+ [+-]\d+ \d+/)) { - // a valid javascript format with timezone info - convertedDate = new Date(); - convertedDate.setTime(Date.parse(date)); - } else { - // an arbitrary javascript string - convertedDate = new Date(); - convertedDate.setTime(Date.parse(date)); - } - - return convertedDate; -}; - -I18n.toTime = function(scope, d) { - var date = this.parseDate(d), - format = this.lookup(scope); - - if (date.toString().match(/invalid/i)) { - return date.toString(); - } - - if (!format) { - return date.toString(); - } - - return this.strftime(date, format); -}; - -I18n.strftime = function(date, format) { - var options = this.lookup("date"); - - if (!options) { - return date.toString(); - } - - options.meridian = options.meridian || ["AM", "PM"]; - - var weekDay = date.getDay(), - day = date.getDate(), - year = date.getFullYear(), - month = date.getMonth() + 1, - hour = date.getHours(), - hour12 = hour, - meridian = hour > 11 ? 1 : 0, - secs = date.getSeconds(), - mins = date.getMinutes(), - offset = date.getTimezoneOffset(), - absOffsetHours = Math.floor(Math.abs(offset / 60)), - absOffsetMinutes = Math.abs(offset) - (absOffsetHours * 60), - timezoneoffset = (offset > 0 ? "-" : "+") + (absOffsetHours.toString().length < 2 ? "0" + absOffsetHours : absOffsetHours) + (absOffsetMinutes.toString().length < 2 ? "0" + absOffsetMinutes : absOffsetMinutes); - - if (hour12 > 12) { - hour12 = hour12 - 12; - } else if (hour12 === 0) { - hour12 = 12; - } - - var padding = function(n) { - var s = "0" + n.toString(); - return s.substr(s.length - 2); - }; - - var f = format; - f = f.replace("%a", options.abbr_day_names[weekDay]); - f = f.replace("%A", options.day_names[weekDay]); - f = f.replace("%b", options.abbr_month_names[month]); - f = f.replace("%B", options.month_names[month]); - f = f.replace("%d", padding(day)); - f = f.replace("%e", day); - f = f.replace("%-d", day); - f = f.replace("%H", padding(hour)); - f = f.replace("%-H", hour); - f = f.replace("%I", padding(hour12)); - f = f.replace("%-I", hour12); - f = f.replace("%m", padding(month)); - f = f.replace("%-m", month); - f = f.replace("%M", padding(mins)); - f = f.replace("%-M", mins); - f = f.replace("%p", options.meridian[meridian]); - f = f.replace("%S", padding(secs)); - f = f.replace("%-S", secs); - f = f.replace("%w", weekDay); - f = f.replace("%y", padding(year)); - f = f.replace("%-y", padding(year).replace(/^0+/, "")); - f = f.replace("%Y", year); - f = f.replace("%z", timezoneoffset); - - return f; -}; - I18n.toNumber = function(number, options) { options = this.prepareOptions( options, this.lookup("number.format"), - {precision: 3, separator: ".", delimiter: ",", strip_insignificant_zeros: false} + {precision: 3, separator: this.SEPARATOR, delimiter: ",", strip_insignificant_zeros: false} ); var negative = number < 0, string = Math.abs(number).toFixed(options.precision).toString(), - parts = string.split("."), + parts = string.split(this.SEPARATOR), precision, buffer = [], formattedNumber; @@ -437,23 +216,6 @@ I18n.toNumber = function(number, options) { return formattedNumber; }; -I18n.toCurrency = function(number, options) { - options = this.prepareOptions( - options, - this.lookup("number.currency.format"), - this.lookup("number.format"), - {unit: "$", precision: 2, format: "%u%n", delimiter: ",", separator: "."} - ); - - number = this.toNumber(number, options); - number = options.format - .replace("%u", options.unit) - .replace("%n", number) - ; - - return number; -}; - I18n.toHumanSize = function(number, options) { var kb = 1024, size = number, @@ -488,18 +250,6 @@ I18n.toHumanSize = function(number, options) { return number; }; -I18n.toPercentage = function(number, options) { - options = this.prepareOptions( - options, - this.lookup("number.percentage.format"), - this.lookup("number.format"), - {precision: 3, separator: ".", delimiter: ""} - ); - - number = this.toNumber(number, options); - return number + "%"; -}; - I18n.pluralizer = function(locale) { var pluralizer = this.pluralizationRules[locale]; if (pluralizer !== undefined) return pluralizer; @@ -514,16 +264,11 @@ I18n.findAndTranslateValidNode = function(keys, translation) { return null; }; -I18n.pluralize = function(count, scope, options) { - var translation; - - try { translation = this.lookup(scope, options); } catch (error) {} - if (!translation) { return this.missingTranslation(scope); } - +I18n.pluralize = function(translation, scope, options) { options = this.prepareOptions(options); - options.count = count.toString(); + var count = options.count.toString(); - var pluralizer = this.pluralizer(this.currentLocale()); + var pluralizer = this.pluralizer(options.locale || this.currentLocale()); var key = pluralizer(Math.abs(count)); var keys = ((typeof key === "object") && (key instanceof Array)) ? key : [key]; @@ -534,52 +279,14 @@ I18n.pluralize = function(count, scope, options) { }; I18n.missingTranslation = function(scope, key) { - var message = '[' + this.currentLocale() + "." + scope; - if (key) { message += "." + key; } + var message = '[' + this.currentLocale() + this.SEPARATOR + scope; + if (key) { message += this.SEPARATOR + key; } return message + ']'; }; I18n.currentLocale = function() { - return (I18n.locale || I18n.defaultLocale); + return I18n.locale || I18n.defaultLocale; }; // shortcuts I18n.t = I18n.translate; -I18n.l = I18n.localize; -I18n.p = I18n.pluralize; - -I18n.enable_verbose_localization = function(){ - var counter = 0; - var keys = {}; - var t = I18n.t; - - I18n.noFallbacks = true; - - I18n.t = I18n.translate = function(scope, value){ - var current = keys[scope]; - if(!current) { - current = keys[scope] = ++counter; - var message = "Translation #" + current + ": " + scope; - if (!_.isEmpty(value)) { - message += ", parameters: " + JSON.stringify(value); - } - Em.Logger.info(message); - } - return t.apply(I18n, [scope, value]) + " (t" + current + ")"; - }; -}; - - -I18n.verbose_localization_session = function(){ - sessionStorage.setItem("verbose_localization", "true"); - I18n.enable_verbose_localization(); - return true; -} - -try { - if(sessionStorage && sessionStorage.getItem("verbose_localization")) { - I18n.enable_verbose_localization(); - } -} catch(e){ - // we don't care really, can happen if cookies disabled -} diff --git a/app/assets/javascripts/locales/ja.js.erb b/app/assets/javascripts/locales/ja.js.erb index b258ba577d..2bb653952a 100644 --- a/app/assets/javascripts/locales/ja.js.erb +++ b/app/assets/javascripts/locales/ja.js.erb @@ -1,7 +1,3 @@ //= depend_on 'client.ja.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:ja) %> - -I18n.pluralizationRules['ja'] = function (n) { - return n === 0 ? ["zero", "none", "other"] : "other"; -}; diff --git a/app/assets/javascripts/locales/ro.js.erb b/app/assets/javascripts/locales/ro.js.erb index 83dc45c46a..ff23513233 100644 --- a/app/assets/javascripts/locales/ro.js.erb +++ b/app/assets/javascripts/locales/ro.js.erb @@ -1,9 +1,3 @@ //= depend_on 'client.ro.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:ro) %> - -I18n.pluralizationRules['ro'] = function (n) { - if (n == 1) return "one"; - if (n === 0 || n % 100 >= 1 && n % 100 <= 19) return "few"; - return "other"; -}; diff --git a/app/assets/javascripts/locales/ru.js.erb b/app/assets/javascripts/locales/ru.js.erb index f65cbb63b6..1f54e50d8e 100644 --- a/app/assets/javascripts/locales/ru.js.erb +++ b/app/assets/javascripts/locales/ru.js.erb @@ -1,9 +1,3 @@ //= depend_on 'client.ru.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:ru) %> - -I18n.pluralizationRules['ru'] = function (n) { - if (n % 10 == 1 && n % 100 != 11) return "one"; - if (n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14)) return "few"; - return "other"; -}; diff --git a/app/assets/javascripts/locales/sk.js.erb b/app/assets/javascripts/locales/sk.js.erb index 42603f0b4f..0ea8866c6c 100644 --- a/app/assets/javascripts/locales/sk.js.erb +++ b/app/assets/javascripts/locales/sk.js.erb @@ -1,9 +1,3 @@ //= depend_on 'client.sk.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:sk) %> - -I18n.pluralizationRules['sk'] = function (n) { - if (n == 1) return "one"; - if (n >= 2 && n <= 4) return "few"; - return "other"; -}; diff --git a/app/assets/javascripts/locales/tr_TR.js.erb b/app/assets/javascripts/locales/tr_TR.js.erb index f5dc538644..1f7fa13c9b 100644 --- a/app/assets/javascripts/locales/tr_TR.js.erb +++ b/app/assets/javascripts/locales/tr_TR.js.erb @@ -1,5 +1,3 @@ //= depend_on 'client.tr_TR.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:tr_TR) %> - -I18n.pluralizationRules['tr_TR'] = function(n) { return "other"; } diff --git a/app/assets/javascripts/locales/uk.js.erb b/app/assets/javascripts/locales/uk.js.erb index c6aeb8a7ec..5422c46f96 100644 --- a/app/assets/javascripts/locales/uk.js.erb +++ b/app/assets/javascripts/locales/uk.js.erb @@ -1,10 +1,3 @@ //= depend_on 'client.uk.yml' //= require locales/i18n <%= JsLocaleHelper.output_locale(:uk) %> - -I18n.pluralizationRules['uk'] = function (n) { - if (n == 0) return ["zero", "none", "other"]; - if (n % 10 == 1 && n % 100 != 11) return "one"; - if (n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20)) return "few"; - return "other"; // TODO: should be "many" but is not defined in translations -}; diff --git a/app/assets/stylesheets/common/base/compose.scss b/app/assets/stylesheets/common/base/compose.scss index b47d4c385a..bf1c8ea5c5 100644 --- a/app/assets/stylesheets/common/base/compose.scss +++ b/app/assets/stylesheets/common/base/compose.scss @@ -148,34 +148,6 @@ div.ac-wrap { } } -.edit-auto-close-modal { - .btn.pull-right { - margin-right: 10px; - } - form { - margin: 0; - } - .auto-close-fields { - i.fa-clock-o { - font-size: 1.143em; - } - input { - margin: 0; - } - } -} - -.edit-category-modal { - .auto-close-fields { - input[type=text] { - width: 50px; - } - label { - font-size: .929em; - } - } -} - #reply-control { .composer-loading { position: absolute; diff --git a/app/assets/stylesheets/common/base/login.scss b/app/assets/stylesheets/common/base/login.scss index e8eb255b2a..3424a85579 100644 --- a/app/assets/stylesheets/common/base/login.scss +++ b/app/assets/stylesheets/common/base/login.scss @@ -72,6 +72,28 @@ $input-width: 220px; } } +.invites-show { + .two-col { + position: relative; + } + + .col-image { + position: absolute; + top: 0; + left: 0; + } + + form { + margin-top: 24px; + button.btn-primary { + margin-top: 10px; + } + label { + font-weight: bold; + } + } +} + // alternate login / create new account buttons should be de-emphasized diff --git a/app/assets/stylesheets/common/base/menu-panel.scss b/app/assets/stylesheets/common/base/menu-panel.scss index 64851b6bb4..deb79628d5 100644 --- a/app/assets/stylesheets/common/base/menu-panel.scss +++ b/app/assets/stylesheets/common/base/menu-panel.scss @@ -184,6 +184,10 @@ display: block; padding: 5px; transition: all linear .15s; + + .user-results { + color: dark-light-choose(scale-color($primary, $lightness: 30%), scale-color($secondary, $lightness: 70%)); + } } &:hover a:not(.badge-notification) { diff --git a/app/assets/stylesheets/common/base/modal.scss b/app/assets/stylesheets/common/base/modal.scss index 09b81cea1b..56198d9e16 100644 --- a/app/assets/stylesheets/common/base/modal.scss +++ b/app/assets/stylesheets/common/base/modal.scss @@ -300,3 +300,33 @@ margin-bottom: 10px; } } + +.edit-auto-close-modal { + .btn.pull-right { + margin-right: 10px; + } + form { + margin: 0; + } + .auto-close-fields { + i.fa-clock-o { + font-size: 1.143em; + } + input { + margin: 0; + } + } +} + +.edit-category-modal { + .auto-close-fields, .num-featured-topics-fields, .position-fields { + input[type=text] { + width: 50px; + } + } + + .auto-close-fields label { + font-size: .929em; + } +} + diff --git a/app/assets/stylesheets/common/base/onebox.scss b/app/assets/stylesheets/common/base/onebox.scss index d0b8d58e4f..5a4c6dd6f9 100644 --- a/app/assets/stylesheets/common/base/onebox.scss +++ b/app/assets/stylesheets/common/base/onebox.scss @@ -139,6 +139,12 @@ aside.onebox { margin-right: 10px; } + // tighten bottom margin on last para + p:last-child { + margin-bottom: 4px; + } + + // twitter fixes .tweet-images { display: block; clear: both; @@ -150,6 +156,7 @@ aside.onebox { float: none; } } + } } diff --git a/app/assets/stylesheets/common/base/rtl.scss b/app/assets/stylesheets/common/base/rtl.scss index bae997b469..045df633a6 100644 --- a/app/assets/stylesheets/common/base/rtl.scss +++ b/app/assets/stylesheets/common/base/rtl.scss @@ -15,7 +15,7 @@ -o-transform: rotate(#{$degrees}deg); transform: rotate(#{$degrees}deg); - filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=#{cos($degrees)}, M12=-#{sin($degrees)}, M21=#{sin($degrees)}, M22=#{cos($degrees)}); + filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=#{cos($degrees)}, M12=-#{sin($degrees)}, M21=#{sin($degrees)}, M22=#{cos($degrees)})"; -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=#{cos($degrees)}, M12=-#{sin($degrees)}, M21=#{sin($degrees)}, M22=#{cos($degrees)})"; zoom: 1; } diff --git a/app/assets/stylesheets/common/base/user.scss b/app/assets/stylesheets/common/base/user.scss index 0cdad17992..7ff8c83869 100644 --- a/app/assets/stylesheets/common/base/user.scss +++ b/app/assets/stylesheets/common/base/user.scss @@ -48,6 +48,8 @@ } .public-user-fields { + margin-top: 8px; + margin-bottom: 8px; .user-field-name { font-weight: bold; } diff --git a/app/assets/stylesheets/common/components/navs.css.scss b/app/assets/stylesheets/common/components/navs.css.scss index 51fb361261..44952bcf76 100644 --- a/app/assets/stylesheets/common/components/navs.css.scss +++ b/app/assets/stylesheets/common/components/navs.css.scss @@ -8,7 +8,7 @@ %nav { margin-left: 0; list-style: none; - li > a { + li a { display: block; text-decoration: none; } @@ -56,7 +56,7 @@ &:last-of-type { border-bottom: 0; } - > a { + a { margin: 0; padding: 13px 13px 13px 30px; font-size: 1.143em; diff --git a/app/assets/stylesheets/desktop/login.scss b/app/assets/stylesheets/desktop/login.scss index 0e349367ca..8eafec8f20 100644 --- a/app/assets/stylesheets/desktop/login.scss +++ b/app/assets/stylesheets/desktop/login.scss @@ -59,16 +59,46 @@ } -.password-reset { +.password-reset, .invites-show { .col-form { - padding-top: 40px; padding-left: 20px; } h2 { margin-bottom: 12px; } - .password-reset-img { + .col-image img { width: 200px; height: 200px; } } + +.password-reset { + .col-form { + padding-top: 40px; + } +} + +.invites-show { + padding-top: 20px; + + .two-col { + margin-top: 30px; + } + .col-image { + width: 200px; + img { + width: 200px; + } + } + .col-form { + margin-left: 200px; + .inline-invite-img { + display: none; + } + } + form { + label, .input { + margin-left: 20px; + } + } +} diff --git a/app/assets/stylesheets/desktop/topic.scss b/app/assets/stylesheets/desktop/topic.scss index 85e51b389d..ff8f81747a 100644 --- a/app/assets/stylesheets/desktop/topic.scss +++ b/app/assets/stylesheets/desktop/topic.scss @@ -83,7 +83,7 @@ border-top: 1px solid dark-light-diff($primary, $secondary, 90%, -75%); padding-top: 10px; height: 20px; - width: 757px; + max-width: 757px; } #topic-progress-wrapper { diff --git a/app/assets/stylesheets/desktop/user-card.scss b/app/assets/stylesheets/desktop/user-card.scss index 69f951077e..2d48ec8e00 100644 --- a/app/assets/stylesheets/desktop/user-card.scss +++ b/app/assets/stylesheets/desktop/user-card.scss @@ -117,6 +117,7 @@ $user_card_background: $secondary; width: 100%; clear: both; padding-top: 5px; + padding-bottom: 5px; h3 { display: inline; margin-right: 5px; diff --git a/app/assets/stylesheets/desktop/user.scss b/app/assets/stylesheets/desktop/user.scss index d8023c98cf..f330c73dc8 100644 --- a/app/assets/stylesheets/desktop/user.scss +++ b/app/assets/stylesheets/desktop/user.scss @@ -84,10 +84,6 @@ .user-table { margin-top: 30px; width: 100%; - display: table; - .wrapper { - display: table-row; - } } .user-navigation .nav-stacked .glyph { diff --git a/app/assets/stylesheets/mobile/login.scss b/app/assets/stylesheets/mobile/login.scss index aaf5cee0df..41ba55d67b 100644 --- a/app/assets/stylesheets/mobile/login.scss +++ b/app/assets/stylesheets/mobile/login.scss @@ -86,7 +86,7 @@ $input-width: 184px; } -.password-reset { +.password-reset, .invites-show { margin-top: 30px; .col-image { padding-top: 12px; @@ -104,12 +104,22 @@ $input-width: 184px; .tip { display: block; margin: 6px 0; - max-width: 180px; } } +.password-reset .tip { + max-width: 180px; +} + .discourse-touch .password-reset { .instructions { margin-bottom: 16px; } } + + +.invites-show { + .col-image { + display: none; + } +} \ No newline at end of file diff --git a/app/assets/stylesheets/vendor/font_awesome/_mixins.scss b/app/assets/stylesheets/vendor/font_awesome/_mixins.scss index f96719b6a0..02deee1818 100644 --- a/app/assets/stylesheets/vendor/font_awesome/_mixins.scss +++ b/app/assets/stylesheets/vendor/font_awesome/_mixins.scss @@ -12,14 +12,14 @@ } @mixin fa-icon-rotate($degrees, $rotation) { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); + filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; -webkit-transform: rotate($degrees); -ms-transform: rotate($degrees); transform: rotate($degrees); } @mixin fa-icon-flip($horiz, $vert, $rotation) { - filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); + filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; -webkit-transform: scale($horiz, $vert); -ms-transform: scale($horiz, $vert); transform: scale($horiz, $vert); diff --git a/app/assets/stylesheets/vendor/pikaday.scss b/app/assets/stylesheets/vendor/pikaday.scss index 646f08ed05..8465631879 100644 --- a/app/assets/stylesheets/vendor/pikaday.scss +++ b/app/assets/stylesheets/vendor/pikaday.scss @@ -56,8 +56,6 @@ $pd-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !default; // clear child float (pika-lendar), using the famous micro clearfix hack // http://nicolasgallagher.com/micro-clearfix-hack/ .pika-single { - *zoom: 1; - &:before, &:after { content: " "; @@ -91,7 +89,6 @@ $pd-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !default; .pika-label { display: inline-block; - *display: inline; position: relative; z-index: 9999; overflow: hidden; @@ -122,8 +119,6 @@ $pd-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !default; background-repeat: no-repeat; background-size: 75% 75%; opacity: .5; - *position: absolute; - *top: 0; &:hover { opacity: 1; @@ -139,19 +134,16 @@ $pd-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !default; .is-rtl .pika-next { float: left; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg=='); - *left: 0; } .pika-next, .is-rtl .pika-prev { float: right; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII='); - *right: 0; } .pika-select { display: inline-block; - *display: inline; } .pika-table { diff --git a/app/assets/stylesheets/vendor/select2.scss b/app/assets/stylesheets/vendor/select2.scss index 5bd68377de..bf7a9064ec 100644 --- a/app/assets/stylesheets/vendor/select2.scss +++ b/app/assets/stylesheets/vendor/select2.scss @@ -7,7 +7,6 @@ Version: @@ver@@ Timestamp: @@timestamp@@ display: inline-block; /* inline-block for ie7 */ zoom: 1; - *display: inline; vertical-align: middle; } @@ -591,7 +590,7 @@ html[dir="rtl"] .select2-search-choice-close { .select2-search-choice-close, .select2-container .select2-choice abbr, .select2-container .select2-choice .select2-arrow b { - background: asset-url('select2x2.png') !important no-repeat !important; + background: asset-url('select2x2.png') no-repeat !important; background-size: 60px 40px !important; } diff --git a/app/controllers/about_controller.rb b/app/controllers/about_controller.rb index 0d53930bcd..40608cc50d 100644 --- a/app/controllers/about_controller.rb +++ b/app/controllers/about_controller.rb @@ -5,8 +5,9 @@ class AboutController < ApplicationController before_filter :ensure_logged_in, only: [:live_post_counts] def index - @about = About.new + return redirect_to path('/login') if SiteSetting.login_required? && current_user.nil? + @about = About.new respond_to do |format| format.html do render :index diff --git a/app/controllers/admin/backups_controller.rb b/app/controllers/admin/backups_controller.rb index b0449ec606..d0922f8863 100644 --- a/app/controllers/admin/backups_controller.rb +++ b/app/controllers/admin/backups_controller.rb @@ -1,4 +1,5 @@ require "backup_restore/backup_restore" +require "email_backup_token" class Admin::BackupsController < Admin::AdminController @@ -44,14 +45,33 @@ class Admin::BackupsController < Admin::AdminController render json: success_json end - # download - def show + def email if backup = Backup[params.fetch(:id)] + token = EmailBackupToken.set(current_user.id) + download_url = "#{url_for(controller: 'backups', action: 'show')}?token=#{token}" + Jobs.enqueue(:download_backup_email, to_address: current_user.email, backup_file_path: download_url) + render nothing: true + else + render nothing: true, status: 404 + end + end + + def show + + if !EmailBackupToken.compare(current_user.id, params.fetch(:token)) + @error = I18n.t('download_backup_mailer.no_token') + end + if !@error && backup = Backup[params.fetch(:id)] + EmailBackupToken.del(current_user.id) StaffActionLogger.new(current_user).log_backup_download(backup) headers['Content-Length'] = File.size(backup.path).to_s send_file backup.path else - render nothing: true, status: 404 + if @error + render layout: 'no_ember', status: 422 + else + render nothing: true, status: 404 + end end end diff --git a/app/controllers/admin/badges_controller.rb b/app/controllers/admin/badges_controller.rb index 36e8a01a53..4c81ee1208 100644 --- a/app/controllers/admin/badges_controller.rb +++ b/app/controllers/admin/badges_controller.rb @@ -98,7 +98,7 @@ class Admin::BadgesController < Admin::AdminController def update_badge_from_params(badge, opts={}) errors = [] Badge.transaction do - allowed = Badge.column_names.map(&:to_sym) + allowed = Badge.column_names.map(&:to_sym) allowed -= [:id, :created_at, :updated_at, :grant_count] allowed -= Badge.protected_system_fields if badge.system? allowed -= [:query] unless SiteSetting.enable_badge_sql diff --git a/app/controllers/admin/email_controller.rb b/app/controllers/admin/email_controller.rb index 2d7798e6c2..077937e021 100644 --- a/app/controllers/admin/email_controller.rb +++ b/app/controllers/admin/email_controller.rb @@ -88,6 +88,26 @@ class Admin::EmailController < Admin::AdminController render_json_dump(serializer) end + def incoming_from_bounced + params.require(:id) + + begin + bounced = EmailLog.find_by(id: params[:id].to_i) + raise Discourse::InvalidParameters if bounced.nil? + + email_local_part, email_domain = SiteSetting.notification_email.split('@') + bounced_to_address = "#{email_local_part}+verp-#{bounced.bounce_key}@#{email_domain}" + + incoming_email = IncomingEmail.find_by(to_addresses: bounced_to_address) + raise Discourse::NotFound if incoming_email.nil? + + serializer = IncomingEmailDetailsSerializer.new(incoming_email, root: false) + render_json_dump(serializer) + rescue => e + render json: {errors: [e.message]}, status: 404 + end + end + private def filter_email_logs(email_logs, params) diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index 9f72667af0..8fdd4b9536 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -363,7 +363,7 @@ class Admin::UsersController < Admin::AdminController def reset_bounce_score guardian.ensure_can_reset_bounce_score!(@user) - @user.user_stat.update_columns(bounce_score: 0, reset_bounce_score_after: nil) + @user.user_stat&.reset_bounce_score! render json: success_json end diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index cec61bf9d6..0eae8c24ba 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -66,6 +66,12 @@ class ApplicationController < ActionController::Base refresh_session(current_user) end + def immutable_for(duration) + response.cache_control[:max_age] = duration.to_i + response.cache_control[:public] = true + response.cache_control[:extras] = ["immutable"] + end + def dont_cache_page if !response.headers["Cache-Control"] && response.cache_control.blank? response.headers["Cache-Control"] = "no-store, must-revalidate, no-cache, private" @@ -111,29 +117,8 @@ class ApplicationController < ActionController::Base end end - def self.last_ar_cache_reset - @last_ar_cache_reset - end - - def self.last_ar_cache_reset=(val) - @last_ar_cache_reset - end - rescue_from ActiveRecord::StatementInvalid do |e| - - last_cache_reset = ApplicationController.last_ar_cache_reset - - if e.message =~ /UndefinedColumn/ && (last_cache_reset.nil? || last_cache_reset < 30.seconds.ago) - Rails.logger.warn "Clear Active Record cache cause schema appears to have changed!" - - ApplicationController.last_ar_cache_reset = Time.zone.now - - ActiveRecord::Base.connection.query_cache.clear - (ActiveRecord::Base.connection.tables - %w[schema_migrations]).each do |table| - table.classify.constantize.reset_column_information rescue nil - end - end - + Discourse.reset_active_record_cache_if_needed(e) raise e end @@ -441,7 +426,7 @@ class ApplicationController < ActionController::Base json = ApplicationController.banner_json_cache["json"] unless json - topic = Topic.where(archetype: Archetype.banner).limit(1).first + topic = Topic.where(archetype: Archetype.banner).first banner = topic.present? ? topic.banner : {} ApplicationController.banner_json_cache["json"] = json = MultiJson.dump(banner) end diff --git a/app/controllers/categories_controller.rb b/app/controllers/categories_controller.rb index 742ac3973b..d11a8ad57b 100644 --- a/app/controllers/categories_controller.rb +++ b/app/controllers/categories_controller.rb @@ -242,6 +242,9 @@ class CategoriesController < ApplicationController :sort_order, :sort_ascending, :topic_featured_link_allowed, + :show_subcategory_list, + :num_featured_topics, + :default_view, :custom_fields => [params[:custom_fields].try(:keys)], :permissions => [*p.try(:keys)], :allowed_tags => [], diff --git a/app/controllers/extra_locales_controller.rb b/app/controllers/extra_locales_controller.rb index 98f10352e8..a3055b2add 100644 --- a/app/controllers/extra_locales_controller.rb +++ b/app/controllers/extra_locales_controller.rb @@ -5,25 +5,30 @@ class ExtraLocalesController < ApplicationController def show bundle = params[:bundle] - raise Discourse::InvalidAccess.new unless bundle =~ /^[a-z]+$/ + raise Discourse::InvalidAccess.new unless bundle =~ /^(admin|wizard)$/ locale_str = I18n.locale.to_s + bundle_str = "#{bundle}_js" + translations = JsLocaleHelper.translations_for(locale_str) - for_key = translations[locale_str]["#{bundle}_js"] + + for_key = {} + translations.values.each { |v| for_key.deep_merge!(v[bundle_str]) if v.has_key?(bundle_str) } + js = "" if for_key.present? - if plugin_for_key = JsLocaleHelper.plugin_translations(locale_str)["#{bundle}_js"] + if plugin_for_key = JsLocaleHelper.plugin_translations(locale_str)[bundle_str] for_key.deep_merge!(plugin_for_key) end - js = <<~JS - (function() { - if (window.I18n) { - window.I18n.extras = window.I18n.extras || []; - window.I18n.extras.push(#{for_key.to_json}); - } - })(); + js = <<~JS.squish + (function() { + if (window.I18n) { + window.I18n.extras = window.I18n.extras || []; + window.I18n.extras.push(#{for_key.to_json}); + } + })(); JS end diff --git a/app/controllers/highlight_js_controller.rb b/app/controllers/highlight_js_controller.rb index b815a49f62..86137be56e 100644 --- a/app/controllers/highlight_js_controller.rb +++ b/app/controllers/highlight_js_controller.rb @@ -20,7 +20,7 @@ class HighlightJsController < ApplicationController response.headers["Last-Modified"] = 10.years.ago.httpdate response.headers["Content-Length"] = highlight_js.bytesize.to_s - expires_in 1.year, public: true + immutable_for 1.year render text: highlight_js, disposition: nil, content_type: 'application/javascript' end diff --git a/app/controllers/invites_controller.rb b/app/controllers/invites_controller.rb index ca2aaa3a6a..e4990e0af1 100644 --- a/app/controllers/invites_controller.rb +++ b/app/controllers/invites_controller.rb @@ -2,8 +2,8 @@ require_dependency 'rate_limiter' class InvitesController < ApplicationController - # TODO tighten this, why skip check on everything? - skip_before_filter :check_xhr, :preload_json + skip_before_filter :check_xhr, except: [:perform_accept_invitation] + skip_before_filter :preload_json, except: [:show] skip_before_filter :redirect_to_login_if_required before_filter :ensure_logged_in, only: [:destroy, :create, :create_invite_link, :resend_invite, :resend_all_invites, :upload_csv] @@ -12,31 +12,49 @@ class InvitesController < ApplicationController def show expires_now - render layout: 'no_ember' + + invite = Invite.find_by(invite_key: params[:id]) + + if invite.present? + store_preloaded("invite_info", MultiJson.dump({ + invited_by: UserNameSerializer.new(invite.invited_by, scope: guardian, root: false), + email: invite.email, + username: UserNameSuggester.suggest(invite.email) + })) + render layout: 'application' + else + flash.now[:error] = I18n.t('invite.not_found') + render layout: 'no_ember' + end end def perform_accept_invitation invite = Invite.find_by(invite_key: params[:id]) if invite.present? - user = invite.redeem - if user.present? - log_on_user(user) + begin + user = invite.redeem(username: params[:username], password: params[:password]) + if user.present? + log_on_user(user) - # Send a welcome message if required - user.enqueue_welcome_message('welcome_invite') if user.send_welcome_message - - topic = invite.topics.first - if topic.present? - redirect_to path("#{topic.relative_url}") - return + # Send a welcome message if required + user.enqueue_welcome_message('welcome_invite') if user.send_welcome_message end - end - redirect_to path("/") + topic = user.present? ? invite.topics.first : nil + + render json: { + success: true, + redirect_to: topic.present? ? path("#{topic.relative_url}") : path("/") + } + rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved => e + render json: { + success: false, + errors: e.record&.errors&.to_hash || {} + } + end else - flash.now[:error] = I18n.t('invite.not_found') - render layout: 'no_ember' + render json: { success: false, message: I18n.t('invite.not_found') } end end diff --git a/app/controllers/list_controller.rb b/app/controllers/list_controller.rb index f5f2f8fb01..431b68f143 100644 --- a/app/controllers/list_controller.rb +++ b/app/controllers/list_controller.rb @@ -6,6 +6,7 @@ class ListController < ApplicationController skip_before_filter :check_xhr before_filter :set_category, only: [ + :category_default, # filtered topics lists Discourse.filters.map { |f| :"category_#{f}" }, Discourse.filters.map { |f| :"category_none_#{f}" }, @@ -29,6 +30,7 @@ class ListController < ApplicationController Discourse.anonymous_filters, Discourse.anonymous_filters.map { |f| "#{f}_feed" }, # anonymous categorized filters + :category_default, Discourse.anonymous_filters.map { |f| :"category_#{f}" }, Discourse.anonymous_filters.map { |f| :"category_none_#{f}" }, Discourse.anonymous_filters.map { |f| :"parent_category_category_#{f}" }, @@ -106,19 +108,47 @@ class ListController < ApplicationController end end - [:topics_by, :private_messages, :private_messages_sent, :private_messages_unread, :private_messages_archive, :private_messages_group, :private_messages_group_archive].each do |action| + def category_default + if @category.default_view == 'top' + top(category: @category.id) + else + self.send(@category.default_view || 'latest') + end + end + + def topics_by + list_opts = build_topic_list_options + target_user = fetch_user_from_params({ include_inactive: current_user.try(:staff?) }, [:user_stat, :user_option]) + list = generate_list_for("topics_by", target_user, list_opts) + list.more_topics_url = url_for(construct_url_with(:next, list_opts)) + list.prev_topics_url = url_for(construct_url_with(:prev, list_opts)) + respond_with_list(list) + end + + def self.generate_message_route(action) define_method("#{action}") do list_opts = build_topic_list_options target_user = fetch_user_from_params({ include_inactive: current_user.try(:staff?) }, [:user_stat, :user_option]) - guardian.ensure_can_see_private_messages!(target_user.id) unless action == :topics_by + guardian.ensure_can_see_private_messages!(target_user.id) list = generate_list_for(action.to_s, target_user, list_opts) - url_prefix = "topics" unless action == :topics_by + url_prefix = "topics" list.more_topics_url = url_for(construct_url_with(:next, list_opts, url_prefix)) list.prev_topics_url = url_for(construct_url_with(:prev, list_opts, url_prefix)) respond_with_list(list) end end + %i{ + private_messages + private_messages_sent + private_messages_unread + private_messages_archive + private_messages_group + private_messages_group_archive + }.each do |action| + generate_message_route(action) + end + def latest_feed discourse_expires_in 1.minute @@ -274,30 +304,22 @@ class ListController < ApplicationController @description_meta = @category.description_text raise Discourse::NotFound unless guardian.can_see?(@category) + + if use_crawler_layout? + @subcategories = @category.subcategories.select { |c| guardian.can_see?(c) } + end end def build_topic_list_options - options = { - page: params[:page], - topic_ids: param_to_integer_list(:topic_ids), - exclude_category_ids: params[:exclude_category_ids], - category: params[:category], - order: params[:order], - ascending: params[:ascending], - min_posts: params[:min_posts], - max_posts: params[:max_posts], - status: params[:status], - filter: params[:filter], - state: params[:state], - search: params[:search], - q: params[:q], - group_name: params[:group_name], - tags: params[:tags], - match_all_tags: params[:match_all_tags], - no_tags: params[:no_tags] - } - options[:no_subcategories] = true if params[:no_subcategories] == 'true' - options[:slow_platform] = true if slow_platform? + options = {} + TopicQuery.public_valid_options.each do |key| + options[key] = params[key] + end + + # hacky columns get special handling + options[:topic_ids] = param_to_integer_list(:topic_ids) + options[:no_subcategories] = options[:no_subcategories] == 'true' + options[:slow_platform] = slow_platform? options end diff --git a/app/controllers/session_controller.rb b/app/controllers/session_controller.rb index 7ac3749f46..0a18b3c539 100644 --- a/app/controllers/session_controller.rb +++ b/app/controllers/session_controller.rb @@ -158,8 +158,8 @@ class SessionController < ApplicationController return end - RateLimiter.new(nil, "login-hr-#{request.remote_ip}", 30, 1.hour).performed! - RateLimiter.new(nil, "login-min-#{request.remote_ip}", 6, 1.minute).performed! + RateLimiter.new(nil, "login-hr-#{request.remote_ip}", SiteSetting.max_logins_per_ip_per_hour, 1.hour).performed! + RateLimiter.new(nil, "login-min-#{request.remote_ip}", SiteSetting.max_logins_per_ip_per_minute, 1.minute).performed! params.require(:login) params.require(:password) diff --git a/app/controllers/static_controller.rb b/app/controllers/static_controller.rb index 6fa864c268..e91bda504c 100644 --- a/app/controllers/static_controller.rb +++ b/app/controllers/static_controller.rb @@ -10,6 +10,7 @@ class StaticController < ApplicationController def show return redirect_to(path '/') if current_user && (params[:id] == 'login' || params[:id] == 'signup') + return redirect_to path('/login') if SiteSetting.login_required? && current_user.nil? && (params[:id] == 'faq' || params[:id] == 'guidelines') map = { "faq" => {redirect: "faq_url", topic_id: "guidelines_topic_id"}, @@ -117,7 +118,7 @@ class StaticController < ApplicationController response.headers["Content-Length"] = @@default_favicon.bytesize.to_s render text: @@default_favicon, content_type: "image/png" else - expires_in 1.year, public: true + immutable_for 1.year response.headers["Expires"] = 1.year.from_now.httpdate response.headers["Content-Length"] = data.bytesize.to_s response.headers["Last-Modified"] = Time.new('2000-01-01').httpdate @@ -147,12 +148,11 @@ class StaticController < ApplicationController return end - response.headers["Expires"] = 1.year.from_now.httpdate - response.headers["Cache-Control"] = 'max-age=31557600, public' response.headers["Content-Encoding"] = 'br' - expires_in 1.year, public: true, must_revalidate: false - + # disable NGINX mucking with transfer + request.env['sendfile.type'] = '' + immutable_for 1.year send_file(path, opts) end @@ -163,7 +163,7 @@ class StaticController < ApplicationController # SECURITY what if path has /../ raise Discourse::NotFound unless path.start_with?(Rails.root.to_s + "/public/assets") - expires_in 1.year, public: true + immutable_for 1.year response.headers["Expires"] = 1.year.from_now.httpdate response.headers["Access-Control-Allow-Origin"] = params[:origin] if params[:origin] @@ -178,6 +178,8 @@ class StaticController < ApplicationController opts = { disposition: nil } opts[:type] = "application/javascript" if path =~ /\.js$/ + immutable_for(1.year) + # we must disable acceleration otherwise NGINX strips # access control headers request.env['sendfile.type'] = '' diff --git a/app/controllers/stylesheets_controller.rb b/app/controllers/stylesheets_controller.rb index 2d3df8b3a3..55c5166d4f 100644 --- a/app/controllers/stylesheets_controller.rb +++ b/app/controllers/stylesheets_controller.rb @@ -41,7 +41,7 @@ class StylesheetsController < ApplicationController end response.headers['Last-Modified'] = stylesheet_time.httpdate if stylesheet_time - expires_in 1.year, public: true unless Rails.env == "development" + immutable_for(1.year) unless Rails.env == "development" send_file(location, disposition: :inline) end diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 92973a9dbf..0af8be70a6 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -127,7 +127,7 @@ class TagsController < ::ApplicationController category = params[:categoryId] ? Category.find_by_id(params[:categoryId]) : nil tags_with_counts = DiscourseTagging.filter_allowed_tags( - self.class.tags_by_count(guardian, params.slice(:limit)), + Tag.tags_by_count_query(params.slice(:limit)), guardian, { for_input: params[:filterForInput], diff --git a/app/controllers/topics_controller.rb b/app/controllers/topics_controller.rb index f5bddc8981..e3f70dc40b 100644 --- a/app/controllers/topics_controller.rb +++ b/app/controllers/topics_controller.rb @@ -497,7 +497,7 @@ class TopicsController < ApplicationController params.require(:topic_id) params.permit(:category_id) - topic = Topic.find_by(id: params[:topic_id]) + topic = Topic.with_deleted.find_by(id: params[:topic_id]) guardian.ensure_can_move_posts!(topic) dest_topic = move_posts_to_destination(topic) diff --git a/app/controllers/uploads_controller.rb b/app/controllers/uploads_controller.rb index 5c14146928..d33adb32ee 100644 --- a/app/controllers/uploads_controller.rb +++ b/app/controllers/uploads_controller.rb @@ -39,8 +39,12 @@ class UploadsController < ApplicationController return render_404 if SiteSetting.login_required? && db == "default" && current_user.nil? if upload = Upload.find_by(sha1: params[:sha]) || Upload.find_by(id: params[:id], url: request.env["PATH_INFO"]) - opts = { filename: upload.original_filename } - opts[:disposition] = 'inline' if params[:inline] + opts = { + filename: upload.original_filename, + content_type: Rack::Mime.mime_type(File.extname(upload.original_filename)), + } + opts[:disposition] = "inline" if params[:inline] + opts[:disposition] ||= "attachment" unless FileHelper.is_image?(upload.original_filename) send_file(Discourse.store.path_for(upload), opts) else render_404 diff --git a/app/controllers/user_avatars_controller.rb b/app/controllers/user_avatars_controller.rb index b0d0b4ea7e..de49789cb6 100644 --- a/app/controllers/user_avatars_controller.rb +++ b/app/controllers/user_avatars_controller.rb @@ -40,7 +40,7 @@ class UserAvatarsController < ApplicationController response.headers["Last-Modified"] = File.ctime(image).httpdate response.headers["Content-Length"] = File.size(image).to_s - expires_in 1.year, public: true + immutable_for(1.year) send_file image, disposition: nil end @@ -57,7 +57,7 @@ class UserAvatarsController < ApplicationController response.headers["Last-Modified"] = File.ctime(image).httpdate response.headers["Content-Length"] = File.size(image).to_s - expires_in 1.year, public: true + immutable_for(1.year) send_file image, disposition: nil end @@ -112,7 +112,7 @@ class UserAvatarsController < ApplicationController if image response.headers["Last-Modified"] = File.ctime(image).httpdate response.headers["Content-Length"] = File.size(image).to_s - expires_in 1.year, public: true + immutable_for 1.year send_file image, disposition: nil else render_blank @@ -139,7 +139,7 @@ class UserAvatarsController < ApplicationController # putting a bogus date cause download is not retaining the data response.headers["Last-Modified"] = DateTime.parse("1-1-2000").httpdate response.headers["Content-Length"] = File.size(path).to_s - expires_in 1.year, public: true + immutable_for(1.year) send_file path, disposition: nil end diff --git a/app/controllers/users/omniauth_callbacks_controller.rb b/app/controllers/users/omniauth_callbacks_controller.rb index 5295b3a3fb..190c22924f 100644 --- a/app/controllers/users/omniauth_callbacks_controller.rb +++ b/app/controllers/users/omniauth_callbacks_controller.rb @@ -111,10 +111,8 @@ class Users::OmniauthCallbacksController < ApplicationController def user_found(user) # automatically activate/unstage any account if a provider marked the email valid - if @auth_result.email_valid - user.staged = false - user.active = true - user.save + if @auth_result.email_valid && @auth_result.email == user.email + user.update!(staged: false, active: true) end if ScreenedIpAddress.should_block?(request.remote_ip) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index cc8ef2860f..b06e6721ef 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -438,11 +438,11 @@ class UsersController < ApplicationController format.json do if request.put? - if @error || @user&.errors&.any? + if @error || @user.errors&.any? render json: { success: false, message: @error, - errors: @user&.errors&.to_hash, + errors: @user.errors.to_hash, is_developer: UsernameCheckerService.is_developer?(@user.email) } else diff --git a/app/controllers/users_email_controller.rb b/app/controllers/users_email_controller.rb index da4ce69234..a61fd57819 100644 --- a/app/controllers/users_email_controller.rb +++ b/app/controllers/users_email_controller.rb @@ -36,8 +36,10 @@ class UsersEmailController < ApplicationController updater = EmailUpdater.new @update_result = updater.confirm(params[:token]) - # Log in the user if the process is complete (and they're not logged in) - log_on_user(updater.user) if @update_result == :complete + if @update_result == :complete + updater.user.user_stat.reset_bounce_score! + log_on_user(updater.user) + end render layout: 'no_ember' end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 6e32e866ba..a9e4ed40e8 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -188,8 +188,9 @@ module ApplicationHelper [:url, :title, :description].each do |property| if opts[property].present? escape = (property != :image) - result << tag(:meta, { property: "og:#{property}", content: opts[property] }, nil, escape) - result << tag(:meta, { name: "twitter:#{property}", content: opts[property] }, nil, escape) + content = (property == :url ? opts[property] : gsub_emoji_to_unicode(opts[property])) + result << tag(:meta, { property: "og:#{property}", content: content }, nil, escape) + result << tag(:meta, { name: "twitter:#{property}", content: content }, nil, escape) end end @@ -217,6 +218,12 @@ module ApplicationHelper content_tag(:script, MultiJson.dump(json).html_safe, type: 'application/ld+json'.freeze) end + def gsub_emoji_to_unicode(str) + if str + str.gsub(/:([\w\-+]*):/) { |name| Emoji.lookup_unicode($1) || name } + end + end + def application_logo_url @application_logo_url ||= (mobile_view? && SiteSetting.mobile_logo_url) || SiteSetting.logo_url end diff --git a/app/jobs/regular/bulk_grant_trust_level.rb b/app/jobs/regular/bulk_grant_trust_level.rb new file mode 100644 index 0000000000..9302dc6bc1 --- /dev/null +++ b/app/jobs/regular/bulk_grant_trust_level.rb @@ -0,0 +1,17 @@ +module Jobs + + class BulkGrantTrustLevel < Jobs::Base + + def execute(args) + trust_level = args[:trust_level] + user_ids = args[:user_ids] + + raise Discourse::InvalidParameters.new(:trust_level) if trust_level.blank? + raise Discourse::InvalidParameters.new(:user_ids) if user_ids.blank? + + User.where(id: user_ids).find_each do |user| + TrustLevelGranter.grant(trust_level, user) + end + end + end +end diff --git a/app/jobs/regular/download_backup_email.rb b/app/jobs/regular/download_backup_email.rb new file mode 100644 index 0000000000..dbf12cdd13 --- /dev/null +++ b/app/jobs/regular/download_backup_email.rb @@ -0,0 +1,22 @@ +require_dependency 'email/sender' + +module Jobs + + class DownloadBackupEmail < Jobs::Base + + sidekiq_options queue: 'critical' + + def execute(args) + to_address = args[:to_address] + backup_file_path = args[:backup_file_path] + + raise Discourse::InvalidParameters.new(:to_address) if to_address.blank? + raise Discourse::InvalidParameters.new(:backup_file_path) if backup_file_path.blank? + + message = DownloadBackupMailer.send_email(to_address, backup_file_path) + Email::Sender.new(message, :download_backup_message).send + end + + end + +end diff --git a/app/jobs/regular/user_email.rb b/app/jobs/regular/user_email.rb index 3214055563..500f8cddb4 100644 --- a/app/jobs/regular/user_email.rb +++ b/app/jobs/regular/user_email.rb @@ -56,7 +56,7 @@ module Jobs quoted } - CRITICAL_EMAIL_TYPES = Set.new %i{ + CRITICAL_EMAIL_TYPES ||= Set.new %w{ account_created admin_login confirm_new_email @@ -135,7 +135,7 @@ module Jobs return skip_message(I18n.t('email_log.exceeded_emails_limit')) end - if !CRITICAL_EMAIL_TYPES.include?(type) && user.user_stat.bounce_score >= SiteSetting.bounce_score_threshold + if !CRITICAL_EMAIL_TYPES.include?(type.to_s) && user.user_stat.bounce_score >= SiteSetting.bounce_score_threshold return skip_message(I18n.t('email_log.exceeded_bounces_limit')) end diff --git a/app/jobs/scheduled/pending_users_reminder.rb b/app/jobs/scheduled/pending_users_reminder.rb index 8069a57336..c2e392d65a 100644 --- a/app/jobs/scheduled/pending_users_reminder.rb +++ b/app/jobs/scheduled/pending_users_reminder.rb @@ -7,7 +7,7 @@ module Jobs def execute(args) if SiteSetting.must_approve_users && SiteSetting.pending_users_reminder_delay >= 0 - query = AdminUserIndexQuery.new({query: 'pending'}).find_users_query # default order is: users.created_at DESC + query = AdminUserIndexQuery.new({query: 'pending', stats: false}).find_users_query # default order is: users.created_at DESC if SiteSetting.pending_users_reminder_delay > 0 query = query.where('users.created_at < ?', SiteSetting.pending_users_reminder_delay.hours.ago) end diff --git a/app/mailers/download_backup_mailer.rb b/app/mailers/download_backup_mailer.rb new file mode 100644 index 0000000000..1eb47e7222 --- /dev/null +++ b/app/mailers/download_backup_mailer.rb @@ -0,0 +1,9 @@ +require_dependency 'email/message_builder' + +class DownloadBackupMailer < ActionMailer::Base + include Email::BuildEmailHelper + + def send_email(to_address, backup_file_path) + build_email(to_address, template: 'download_backup_mailer', backup_file_path: backup_file_path) + end +end diff --git a/app/models/admin_dashboard_data.rb b/app/models/admin_dashboard_data.rb index 5ac4bd55c3..b4113d609e 100644 --- a/app/models/admin_dashboard_data.rb +++ b/app/models/admin_dashboard_data.rb @@ -169,7 +169,7 @@ class AdminDashboardData def sidekiq_check last_job_performed_at = Jobs.last_job_performed_at - I18n.t('dashboard.sidekiq_warning') if Jobs.queued > 0 and (last_job_performed_at.nil? or last_job_performed_at < 2.minutes.ago) + I18n.t('dashboard.sidekiq_warning') if Jobs.queued > 0 && (last_job_performed_at.nil? || last_job_performed_at < 2.minutes.ago) end def queue_size_check @@ -178,7 +178,7 @@ class AdminDashboardData end def ram_check - I18n.t('dashboard.memory_warning') if MemInfo.new.mem_total and MemInfo.new.mem_total < 1_000_000 + I18n.t('dashboard.memory_warning') if MemInfo.new.mem_total && MemInfo.new.mem_total < 1_000_000 end def google_oauth2_config_check @@ -190,23 +190,23 @@ class AdminDashboardData end def twitter_config_check - I18n.t('dashboard.twitter_config_warning') if SiteSetting.enable_twitter_logins and (SiteSetting.twitter_consumer_key.blank? or SiteSetting.twitter_consumer_secret.blank?) + I18n.t('dashboard.twitter_config_warning') if SiteSetting.enable_twitter_logins && (SiteSetting.twitter_consumer_key.blank? || SiteSetting.twitter_consumer_secret.blank?) end def github_config_check - I18n.t('dashboard.github_config_warning') if SiteSetting.enable_github_logins and (SiteSetting.github_client_id.blank? or SiteSetting.github_client_secret.blank?) + I18n.t('dashboard.github_config_warning') if SiteSetting.enable_github_logins && (SiteSetting.github_client_id.blank? || SiteSetting.github_client_secret.blank?) end def s3_config_check - bad_keys = (SiteSetting.s3_access_key_id.blank? or SiteSetting.s3_secret_access_key.blank?) and !SiteSetting.s3_use_iam_profile + bad_keys = (SiteSetting.s3_access_key_id.blank? || SiteSetting.s3_secret_access_key.blank?) && !SiteSetting.s3_use_iam_profile - return I18n.t('dashboard.s3_config_warning') if SiteSetting.enable_s3_uploads and (bad_keys or SiteSetting.s3_upload_bucket.blank?) - return I18n.t('dashboard.s3_backup_config_warning') if SiteSetting.enable_s3_backups and (bad_keys or SiteSetting.s3_backup_bucket.blank?) + return I18n.t('dashboard.s3_config_warning') if SiteSetting.enable_s3_uploads && (bad_keys || SiteSetting.s3_upload_bucket.blank?) + return I18n.t('dashboard.s3_backup_config_warning') if SiteSetting.enable_s3_backups && (bad_keys || SiteSetting.s3_backup_bucket.blank?) nil end def image_magick_check - I18n.t('dashboard.image_magick_warning') if SiteSetting.create_thumbnails and !system("command -v convert >/dev/null;") + I18n.t('dashboard.image_magick_warning') if SiteSetting.create_thumbnails && !system("command -v convert >/dev/null;") end def failing_emails_check diff --git a/app/models/badge.rb b/app/models/badge.rb index 13e7916f1b..ae554c4d40 100644 --- a/app/models/badge.rb +++ b/app/models/badge.rb @@ -4,6 +4,11 @@ class Badge < ActiveRecord::Base # NOTE: These badge ids are not in order! They are grouped logically. # When picking an id, *search* for it. + BasicUser = 1 + Member = 2 + Regular = 3 + Leader = 4 + Welcome = 5 NicePost = 6 GoodPost = 7 @@ -100,7 +105,7 @@ class Badge < ActiveRecord::Base # fields that can not be edited on system badges def self.protected_system_fields [ - :badge_type_id, :multiple_grant, + :name, :badge_type_id, :multiple_grant, :target_posts, :show_posts, :query, :trigger, :auto_revoke, :listable ] @@ -121,6 +126,18 @@ class Badge < ActiveRecord::Base } end + def self.ensure_consistency! + exec_sql <<-SQL.squish + DELETE FROM user_badges + USING user_badges ub + LEFT JOIN users u ON u.id = ub.user_id + WHERE u.id IS NULL + AND user_badges.id = ub.id + SQL + + Badge.find_each(&:reset_grant_count!) + end + def awarded_for_trust_level? id <= 4 end @@ -137,14 +154,10 @@ class Badge < ActiveRecord::Base def default_icon=(val) unless self.image self.icon ||= val - self.icon = val if self.icon = "fa-certificate" + self.icon = val if self.icon == "fa-certificate" end end - def default_name=(val) - self.name ||= val - end - def default_allow_title=(val) self.allow_title ||= val end @@ -156,17 +169,6 @@ class Badge < ActiveRecord::Base end end - def self.ensure_consistency! - exec_sql < actions} end - ft.posters = ft.posters_summary(avatar_lookup: avatar_lookup) + ft.posters = ft.posters_summary( + avatar_lookup: avatar_lookup, + primary_group_lookup: primary_group_lookup + ) + ft.participants = ft.participants_summary(avatar_lookup: avatar_lookup, user: @current_user) ft.topic_list = self end @@ -116,7 +123,7 @@ class TopicList Topic.preload_custom_fields(@topics, preloaded_custom_fields) end - TopicList.preload(@topics) + TopicList.preload(@topics, self) @topics end diff --git a/app/models/topic_participants_summary.rb b/app/models/topic_participants_summary.rb index f72a5fb6cd..424e203c48 100644 --- a/app/models/topic_participants_summary.rb +++ b/app/models/topic_participants_summary.rb @@ -1,3 +1,4 @@ +# This is used on a topic page class TopicParticipantsSummary attr_reader :topic, :options diff --git a/app/models/topic_poster.rb b/app/models/topic_poster.rb index 7e32aa83db..ec3a88e2a2 100644 --- a/app/models/topic_poster.rb +++ b/app/models/topic_poster.rb @@ -1,14 +1,15 @@ class TopicPoster < OpenStruct include ActiveModel::Serialization - attr_accessor :user, :description, :extras, :id + attr_accessor :user, :description, :extras, :id, :primary_group def attributes { 'user' => user, 'description' => description, 'extras' => extras, - 'id' => id + 'id' => id, + 'primary_group' => primary_group } end diff --git a/app/models/topic_posters_summary.rb b/app/models/topic_posters_summary.rb index c000505ead..7723bf338c 100644 --- a/app/models/topic_posters_summary.rb +++ b/app/models/topic_posters_summary.rb @@ -1,3 +1,4 @@ +# This is used in topic lists class TopicPostersSummary attr_reader :topic, :options @@ -16,6 +17,7 @@ class TopicPostersSummary TopicPoster.new.tap do |topic_poster| topic_poster.user = user topic_poster.description = descriptions_for(user) + topic_poster.primary_group = primary_group_lookup[user.id] if topic.last_post_user_id == user.id topic_poster.extras = 'latest' topic_poster.extras << ' single' if user_ids.uniq.size == 1 @@ -74,4 +76,8 @@ class TopicPostersSummary def avatar_lookup @avatar_lookup ||= options[:avatar_lookup] || AvatarLookup.new(user_ids) end + + def primary_group_lookup + @primary_group_lookup ||= options[:primary_group_lookup] || PrimaryGroupLookup.new(user_ids) + end end diff --git a/app/models/user.rb b/app/models/user.rb index 6ce3ce4d1e..f6c297da9b 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -162,7 +162,7 @@ class User < ActiveRecord::Base lower = username.downcase User.where(username_lower: lower).blank? && - !SiteSetting.reserved_usernames.split("|").any? { |reserved| reserved.casecmp(username) == 0 } + SiteSetting.reserved_usernames.split("|").all? { |reserved| !lower.match('^' + Regexp.escape(reserved).gsub('\*', '.*') + '$') } end def self.plugin_staff_user_custom_fields @@ -274,7 +274,7 @@ class User < ActiveRecord::Base self.approved_by = approved_by end - self.approved_at = Time.now + self.approved_at = Time.zone.now if result = save send_approval_email if send_mail @@ -354,7 +354,7 @@ class User < ActiveRecord::Base TRACK_FIRST_NOTIFICATION_READ_DURATION = 1.week.to_i def read_first_notification? - if (trust_level > TrustLevel[0] || + if (trust_level > TrustLevel[1] || created_at < TRACK_FIRST_NOTIFICATION_READ_DURATION.seconds.ago) return true @@ -985,7 +985,6 @@ class User < ActiveRecord::Base end end - def hash_password(password, salt) raise StandardError.new("password is too long") if password.size > User.max_password_length Pbkdf2.hash_password(password, salt, Rails.configuration.pbkdf2_iterations, Rails.configuration.pbkdf2_algorithm) diff --git a/app/models/user_archived_message.rb b/app/models/user_archived_message.rb index 0617c76f0b..1cb45c8165 100644 --- a/app/models/user_archived_message.rb +++ b/app/models/user_archived_message.rb @@ -10,14 +10,24 @@ class UserArchivedMessage < ActiveRecord::Base ).exists?) UserArchivedMessage.where(user_id: user_id, topic_id: topic_id).destroy_all + trigger(:move_to_inbox, user_id, topic_id) MessageBus.publish("/topic/#{topic_id}", {type: "move_to_inbox"}, user_ids: [user_id]) end def self.archive!(user_id, topic_id) UserArchivedMessage.where(user_id: user_id, topic_id: topic_id).destroy_all UserArchivedMessage.create!(user_id: user_id, topic_id: topic_id) + trigger(:archive_message, user_id, topic_id) MessageBus.publish("/topic/#{topic_id}", {type: "archived"}, user_ids: [user_id]) end + + def self.trigger(event, user_id, topic_id) + user = User.find_by(id: user_id) + topic = Topic.find_by(id: topic_id) + if user && topic + DiscourseEvent.trigger(event, {user: user, topic: topic}) + end + end end # == Schema Information diff --git a/app/models/user_auth_token.rb b/app/models/user_auth_token.rb index 23acf4360d..d9139d88b2 100644 --- a/app/models/user_auth_token.rb +++ b/app/models/user_auth_token.rb @@ -10,6 +10,12 @@ class UserAuthToken < ActiveRecord::Base attr_accessor :unhashed_auth_token + def self.log(info) + if SiteSetting.verbose_auth_token_logging + UserAuthTokenLog.create!(info) + end + end + def self.generate!(info) token = SecureRandom.hex(16) hashed_token = hash_token(token) @@ -23,16 +29,13 @@ class UserAuthToken < ActiveRecord::Base ) user_auth_token.unhashed_auth_token = token - if SiteSetting.verbose_auth_token_logging - UserAuthTokenLog.create!( - action: 'generate', + log(action: 'generate', user_auth_token_id: user_auth_token.id, user_id: info[:user_id], user_agent: info[:user_agent], client_ip: info[:client_ip], - auth_token: hashed_token - ) - end + path: info[:path], + auth_token: hashed_token) user_auth_token end @@ -46,49 +49,59 @@ class UserAuthToken < ActiveRecord::Base user_token = find_by("(auth_token = :token OR prev_auth_token = :token OR - (auth_token = :unhashed_token AND legacy)) AND created_at > :expire_before", + (auth_token = :unhashed_token AND legacy)) AND rotated_at > :expire_before", token: token, unhashed_token: unhashed_token, expire_before: expire_before) - token_expired = - user_token && - user_token.auth_token_seen && - user_token.prev_auth_token == token && - user_token.prev_auth_token != user_token.auth_token && - user_token.rotated_at > 1.minute.ago + if !user_token - if token_expired || !user_token - - if SiteSetting.verbose_auth_token_logging - UserAuthTokenLog.create( - action: "miss token", + log(action: "miss token", user_id: user_token&.user_id, auth_token: token, user_agent: opts && opts[:user_agent], - client_ip: opts && opts[:client_ip] - ) - end + path: opts && opts[:path], + client_ip: opts && opts[:client_ip]) return nil end + if user_token.auth_token != token && user_token.prev_auth_token == token && user_token.auth_token_seen + changed_rows = UserAuthToken + .where("rotated_at < ?", 1.minute.ago) + .where(id: user_token.id, prev_auth_token: token) + .update_all(auth_token_seen: false) + + # not updating AR model cause we want to give it one more req + # with wrong cookie + UserAuthToken.log( + action: changed_rows == 0 ? "prev seen token unchanged" : "prev seen token", + user_auth_token_id: user_token.id, + user_id: user_token.user_id, + auth_token: user_token.auth_token, + user_agent: opts && opts[:user_agent], + path: opts && opts[:path], + client_ip: opts && opts[:client_ip] + ) + end + if mark_seen && user_token && !user_token.auth_token_seen && user_token.auth_token == token # we must protect against concurrency issues here - changed_rows = UserAuthToken.where(id: user_token.id, auth_token: token).update_all(auth_token_seen: true) + changed_rows = UserAuthToken + .where(id: user_token.id, auth_token: token) + .update_all(auth_token_seen: true, seen_at: Time.zone.now) + if changed_rows == 1 # not doing a reload so we don't risk loading a rotated token user_token.auth_token_seen = true + user_token.seen_at = Time.zone.now end - if SiteSetting.verbose_auth_token_logging - UserAuthTokenLog.create( - action: changed_rows == 0 ? "seen wrong token" : "seen token", + log(action: changed_rows == 0 ? "seen wrong token" : "seen token", user_auth_token_id: user_token.id, user_id: user_token.user_id, auth_token: user_token.auth_token, user_agent: opts && opts[:user_agent], - client_ip: opts && opts[:client_ip] - ) - end + path: opts && opts[:path], + client_ip: opts && opts[:client_ip]) end user_token @@ -120,6 +133,7 @@ class UserAuthToken < ActiveRecord::Base UPDATE user_auth_tokens SET auth_token_seen = false, + seen_at = null, user_agent = :user_agent, client_ip = :client_ip, prev_auth_token = case when auth_token_seen then auth_token else prev_auth_token end, @@ -138,16 +152,15 @@ class UserAuthToken < ActiveRecord::Base reload self.unhashed_auth_token = token - if SiteSetting.verbose_auth_token_logging - UserAuthTokenLog.create( - action: "rotate", - user_auth_token_id: id, - user_id: user_id, - auth_token: auth_token, - user_agent: user_agent, - client_ip: client_ip - ) - end + UserAuthToken.log( + action: "rotate", + user_auth_token_id: id, + user_id: user_id, + auth_token: auth_token, + user_agent: user_agent, + client_ip: client_ip, + path: info && info[:path] + ) true else diff --git a/app/models/user_history.rb b/app/models/user_history.rb index ee667213c3..a6677de389 100644 --- a/app/models/user_history.rb +++ b/app/models/user_history.rb @@ -62,7 +62,8 @@ class UserHistory < ActiveRecord::Base change_readonly_mode: 44, backup_download: 45, backup_destroy: 46, - notified_about_get_a_room: 47) + notified_about_get_a_room: 47, + change_name: 48) end # Staff actions is a subset of all actions, used to audit actions taken by staff users. diff --git a/app/models/user_stat.rb b/app/models/user_stat.rb index 7898a2e57b..50761737e3 100644 --- a/app/models/user_stat.rb +++ b/app/models/user_stat.rb @@ -77,6 +77,10 @@ class UserStat < ActiveRecord::Base cache_last_seen(Time.now.to_f) end + def reset_bounce_score! + update_columns(reset_bounce_score_after: nil, bounce_score: 0) + end + protected def trigger_badges diff --git a/app/serializers/admin_detailed_user_serializer.rb b/app/serializers/admin_detailed_user_serializer.rb index b6a2072f97..563ae1821e 100644 --- a/app/serializers/admin_detailed_user_serializer.rb +++ b/app/serializers/admin_detailed_user_serializer.rb @@ -22,7 +22,8 @@ class AdminDetailedUserSerializer < AdminUserSerializer :warnings_received_count, :user_fields, :bounce_score, - :reset_bounce_score_after + :reset_bounce_score_after, + :can_view_action_logs has_one :approved_by, serializer: BasicUserSerializer, embed: :objects has_one :api_key, serializer: ApiKeySerializer, embed: :objects @@ -86,4 +87,8 @@ class AdminDetailedUserSerializer < AdminUserSerializer object.user_stat.reset_bounce_score_after end + def can_view_action_logs + scope.can_view_action_logs?(object) + end + end diff --git a/app/serializers/basic_category_serializer.rb b/app/serializers/basic_category_serializer.rb index d79f06c4be..ab1cbac4a0 100644 --- a/app/serializers/basic_category_serializer.rb +++ b/app/serializers/basic_category_serializer.rb @@ -19,7 +19,10 @@ class BasicCategorySerializer < ApplicationSerializer :topic_template, :has_children, :sort_order, - :sort_ascending + :sort_ascending, + :show_subcategory_list, + :num_featured_topics, + :default_view has_one :uploaded_logo, embed: :object, serializer: CategoryUploadSerializer has_one :uploaded_background, embed: :object, serializer: CategoryUploadSerializer diff --git a/app/serializers/grouped_search_result_serializer.rb b/app/serializers/grouped_search_result_serializer.rb index 721567d3d5..ff216c8a23 100644 --- a/app/serializers/grouped_search_result_serializer.rb +++ b/app/serializers/grouped_search_result_serializer.rb @@ -1,6 +1,6 @@ class GroupedSearchResultSerializer < ApplicationSerializer has_many :posts, serializer: SearchPostSerializer - has_many :users, serializer: BasicUserSerializer + has_many :users, serializer: SearchResultUserSerializer has_many :categories, serializer: BasicCategorySerializer attributes :more_posts, :more_users, :more_categories end diff --git a/app/serializers/primary_group_serializer.rb b/app/serializers/primary_group_serializer.rb new file mode 100644 index 0000000000..c9f7130e4e --- /dev/null +++ b/app/serializers/primary_group_serializer.rb @@ -0,0 +1,3 @@ +class PrimaryGroupSerializer < ApplicationSerializer + attributes :id, :name, :flair_url, :flair_bg_color, :flair_color +end diff --git a/app/serializers/search_result_user_serializer.rb b/app/serializers/search_result_user_serializer.rb new file mode 100644 index 0000000000..bf4d4bae8e --- /dev/null +++ b/app/serializers/search_result_user_serializer.rb @@ -0,0 +1,3 @@ +class SearchResultUserSerializer < BasicUserSerializer + attributes :name +end diff --git a/app/serializers/topic_poster_serializer.rb b/app/serializers/topic_poster_serializer.rb index a3c3f2864e..9d182b9121 100644 --- a/app/serializers/topic_poster_serializer.rb +++ b/app/serializers/topic_poster_serializer.rb @@ -1,4 +1,5 @@ class TopicPosterSerializer < ApplicationSerializer attributes :extras, :description has_one :user, serializer: BasicUserSerializer + has_one :primary_group, serializer: PrimaryGroupSerializer end diff --git a/app/services/random_topic_selector.rb b/app/services/random_topic_selector.rb index 003dcc629e..9446c4fcbb 100644 --- a/app/services/random_topic_selector.rb +++ b/app/services/random_topic_selector.rb @@ -10,7 +10,7 @@ class RandomTopicSelector user = category ? CategoryFeaturedTopic.fake_admin : nil options = { - per_page: SiteSetting.category_featured_topics, + per_page: category ? category.num_featured_topics : 3, visible: true, no_definitions: true } diff --git a/app/services/staff_action_logger.rb b/app/services/staff_action_logger.rb index 2bd24889fe..71734ab2e2 100644 --- a/app/services/staff_action_logger.rb +++ b/app/services/staff_action_logger.rb @@ -146,7 +146,7 @@ class StaffActionLogger def log_site_text_change(subject, new_text=nil, old_text=nil, opts={}) raise Discourse::InvalidParameters.new(:subject) unless subject.present? - UserHistory.create( params(opts).merge({ + UserHistory.create!( params(opts).merge({ action: UserHistory.actions[:change_site_text], subject: subject, previous_value: old_text, @@ -164,6 +164,16 @@ class StaffActionLogger })) end + def log_name_change(user_id, old_name, new_name, opts={}) + raise Discourse::InvalidParameters.new(:user) unless user_id + UserHistory.create( params(opts).merge({ + action: UserHistory.actions[:change_name], + target_user_id: user_id, + previous_value: old_name, + new_value: new_name + })) + end + def log_user_suspend(user, reason, opts={}) raise Discourse::InvalidParameters.new(:user) unless user UserHistory.create( params(opts).merge({ diff --git a/app/services/trust_level_granter.rb b/app/services/trust_level_granter.rb new file mode 100644 index 0000000000..1a826ba18d --- /dev/null +++ b/app/services/trust_level_granter.rb @@ -0,0 +1,18 @@ +class TrustLevelGranter + + def initialize(trust_level, user) + @trust_level, @user = trust_level, user + end + + def self.grant(trust_level, user) + TrustLevelGranter.new(trust_level, user).grant + end + + def grant + if @user.trust_level < @trust_level + @user.change_trust_level!(@trust_level) + @user.trust_level_locked = true + @user.save! + end + end +end diff --git a/app/services/user_updater.rb b/app/services/user_updater.rb index 762a0cd0b9..4d1f6f4498 100644 --- a/app/services/user_updater.rb +++ b/app/services/user_updater.rb @@ -39,6 +39,7 @@ class UserUpdater def initialize(actor, user) @user = user @guardian = Guardian.new(actor) + @actor = actor end def update(attributes = {}) @@ -52,7 +53,9 @@ class UserUpdater user_profile.profile_background = attributes.fetch(:profile_background) { user_profile.profile_background } user_profile.card_background = attributes.fetch(:card_background) { user_profile.card_background } + old_user_name = user.name.present? ? user.name : "" user.name = attributes.fetch(:name) { user.name } + user.locale = attributes.fetch(:locale) { user.locale } user.date_of_birth = attributes.fetch(:date_of_birth) { user.date_of_birth } @@ -99,7 +102,16 @@ class UserUpdater end saved = (!save_options || user.user_option.save) && user_profile.save && user.save - DiscourseEvent.trigger(:user_updated, user) if saved + if saved + DiscourseEvent.trigger(:user_updated, user) + + # log name changes + if attributes[:name].present? && old_user_name.downcase != attributes.fetch(:name).downcase + StaffActionLogger.new(@actor).log_name_change(user.id, old_user_name, attributes.fetch(:name)) + elsif attributes[:name].blank? && old_user_name.present? + StaffActionLogger.new(@actor).log_name_change(user.id, old_user_name, "") + end + end saved end end diff --git a/app/services/username_changer.rb b/app/services/username_changer.rb index 00a1df62b4..990534e282 100644 --- a/app/services/username_changer.rb +++ b/app/services/username_changer.rb @@ -11,7 +11,7 @@ class UsernameChanger end def change - if @actor && @actor != @user + if @actor && @user.username != @new_username StaffActionLogger.new(@actor).log_username_change(@user, @user.username, @new_username) end diff --git a/app/views/admin/backups/show.html.erb b/app/views/admin/backups/show.html.erb new file mode 100644 index 0000000000..1171e689dc --- /dev/null +++ b/app/views/admin/backups/show.html.erb @@ -0,0 +1,7 @@ +
    + <%if @error%> +
    + <%= @error %> +
    + <%end%> +
    diff --git a/app/views/exceptions/not_found.html.erb b/app/views/exceptions/not_found.html.erb index c7030dec48..1298ec5449 100644 --- a/app/views/exceptions/not_found.html.erb +++ b/app/views/exceptions/not_found.html.erb @@ -11,7 +11,7 @@
  • <% end %>
    - " class="btn"><%= t 'page_not_found.see_more' %>… + " class="btn"><%= t 'page_not_found.see_more' %>…

    <%= t 'page_not_found.recent_topics' %>

    diff --git a/app/views/invites/show.html.erb b/app/views/invites/show.html.erb index 1fdd39e3ee..cc4b0acc1e 100644 --- a/app/views/invites/show.html.erb +++ b/app/views/invites/show.html.erb @@ -3,11 +3,5 @@
    <%=flash[:error]%>
    - <%else%> -

    <%= t 'activation.welcome_to', site_name: SiteSetting.title %>

    -
    - <%= button_to(perform_accept_invite_path, method: :put, class: 'btn btn-primary') do %> - <%= t 'invite.accept_invite' %> - <% end %> <%end%>
    diff --git a/app/views/list/list.erb b/app/views/list/list.erb index 92d76d635e..ba4b1dff31 100644 --- a/app/views/list/list.erb +++ b/app/views/list/list.erb @@ -13,16 +13,34 @@ <% if @category %>

    <% if @category.parent_category %> - <%= link_to @category.parent_category.url, itemprop: 'item' do %> - <%= @category.parent_category.name %> - <% end %> -   + <%= link_to @category.parent_category.url, itemprop: 'item' do %> + <%= @category.parent_category.name %> + <% end %> +   <% end %> + <%= link_to @category.url, itemprop: 'item' do %> <%= @category.name %> <% end %>


    + + <% if params[:page].to_i == 0 && @subcategories.present? %> +
    + <% @subcategories.each do |subcategory| %> +
    + + + <%= subcategory.name %> + + <% if subcategory.description.present? %> + <%= subcategory.description %> + <% end %> +
    + <% end %> +
    +
    + <% end %> <% end %>
    @@ -58,7 +76,7 @@ <% end %> <% end %> -<%- end %> +<%- end %> <% if @rss %> <% content_for :head do %> diff --git a/app/views/static/show.html.erb b/app/views/static/show.html.erb index 7716a69645..ba7592c959 100644 --- a/app/views/static/show.html.erb +++ b/app/views/static/show.html.erb @@ -1,12 +1,14 @@
    +
    + <% if @topic_view.link_counts[post.id] && @topic_view.link_counts[post.id].length > 0 %> + <% @topic_view.link_counts[post.id].each do |link| %> + <% if link[:reflection] && link[:title].present? %> + <%=link[:title]%> +
    + <% end %> + <% end %> + <% end %> <% end %>
    <% end %> diff --git a/app/views/user_notifications/digest.html.erb b/app/views/user_notifications/digest.html.erb index 66e5930732..6cee3a4e7e 100644 --- a/app/views/user_notifications/digest.html.erb +++ b/app/views/user_notifications/digest.html.erb @@ -279,7 +279,6 @@ body, table, td, th, h1, h2, h3 {font-family: Helvetica, Arial, sans-serif !impo

    - <%=t 'user_notifications.digest.from_topic_label' %> <%= post.topic.title.truncate(60, separator: /\s/) -%>

    diff --git a/app/views/user_notifications/digest.text.erb b/app/views/user_notifications/digest.text.erb index e657050854..ec9278df89 100644 --- a/app/views/user_notifications/digest.text.erb +++ b/app/views/user_notifications/digest.text.erb @@ -29,7 +29,7 @@ ### <%=t 'user_notifications.digest.popular_posts' %> <%- @popular_posts.each_with_index do |post,i| %> -<%= post.user.username -%> <%=t 'user_notifications.digest.from_topic_label' -%> <%= raw(@markdown_linker.create(post.topic.title, post.topic.relative_url)) %> +<%= post.user.username -%> - <%= raw(@markdown_linker.create(post.topic.title, post.topic.relative_url)) %> <%= raw(post.excerpt(1000, strip_links: true, text_entities: true, markdown_images: true)) %> -------------------------------------------------------------------------------- diff --git a/bin/docker/sidekiq b/bin/docker/sidekiq index ba39edb531..8c90d5e98d 100755 --- a/bin/docker/sidekiq +++ b/bin/docker/sidekiq @@ -1,5 +1,5 @@ #!/bin/bash PARAMS="$@" -CMD="cd /src && RAILS_ENV=${RAILS_ENV:=development} bundle exec sidekiq -q critical,low,default" +CMD="cd /src && RAILS_ENV=${RAILS_ENV:=development} bundle exec sidekiq -q critical -q low -q default" docker exec -it -u discourse:discourse discourse_dev /bin/bash -c "$CMD" diff --git a/config/initializers/004-message_bus.rb b/config/initializers/004-message_bus.rb index 5e28ebaa51..5faf89f9e8 100644 --- a/config/initializers/004-message_bus.rb +++ b/config/initializers/004-message_bus.rb @@ -27,7 +27,7 @@ def setup_message_bus_env(env) { "Access-Control-Allow-Origin" => Discourse.base_url_no_prefix, "Access-Control-Allow-Methods" => "GET, POST", - "Access-Control-Allow-Headers" => "X-SILENCE-LOGGER, X-Shared-Session-Key, Dont-Chunk" + "Access-Control-Allow-Headers" => "X-SILENCE-LOGGER, X-Shared-Session-Key, Dont-Chunk, Discourse-Visible" }, user_id: user_id, group_ids: group_ids, diff --git a/config/initializers/008-rack-cors.rb b/config/initializers/008-rack-cors.rb index 83f77d44c1..4864b961f6 100644 --- a/config/initializers/008-rack-cors.rb +++ b/config/initializers/008-rack-cors.rb @@ -29,7 +29,7 @@ if GlobalSetting.enable_cors end headers['Access-Control-Allow-Origin'] = origin || cors_origins[0] - headers['Access-Control-Allow-Headers'] = 'X-Requested-With, X-CSRF-Token' + headers['Access-Control-Allow-Headers'] = 'X-Requested-With, X-CSRF-Token, Discourse-Visible' headers['Access-Control-Allow-Credentials'] = 'true' end @@ -37,5 +37,5 @@ if GlobalSetting.enable_cors end end - Rails.configuration.middleware.use Discourse::Cors + Rails.configuration.middleware.insert_before ActionDispatch::Flash, Discourse::Cors end diff --git a/config/initializers/100-sidekiq.rb b/config/initializers/100-sidekiq.rb index 3940cdd4c8..fee9a68ca0 100644 --- a/config/initializers/100-sidekiq.rb +++ b/config/initializers/100-sidekiq.rb @@ -49,6 +49,7 @@ class SidekiqLogsterReporter < Sidekiq::ExceptionHandler::Logger def call(ex, context = {}) return if Jobs::HandledExceptionWrapper === ex + Discourse.reset_active_record_cache_if_needed(ex) # Pass context to Logster fake_env = {} diff --git a/config/locales/client.ar.yml b/config/locales/client.ar.yml index be52c0a93f..ea06c24722 100644 --- a/config/locales/client.ar.yml +++ b/config/locales/client.ar.yml @@ -61,19 +61,19 @@ ar: many: "%{count}ث" other: "%{count}ث" x_minutes: - zero: "%{count}دق" - one: "%{count}دق" - two: "%{count}دق" - few: "%{count}دق" - many: "%{count}دق" - other: "%{count}دق" + zero: "1m" + one: "1m" + two: "%{count}m" + few: "%{count}m" + many: "%{count}m" + other: "%{count}m " about_x_hours: - zero: "%{count}سا" - one: "%{count}سا" - two: "%{count}سا" - few: "%{count}سا" - many: "%{count}سا" - other: "%{count}سا" + zero: "%{count}h" + one: "%{count}h" + two: "%{count}h" + few: "%{count}h" + many: "%{count}h" + other: "%{count}h" x_days: zero: "%{count}ي" one: "%{count}ي" @@ -234,9 +234,9 @@ ar: generic_error: "آسفون، حدث خطأ ما." generic_error_with_reason: "حدث خطأ ما: %{error}" sign_up: "سجّل حسابا" - log_in: "لِج" + log_in: "تسجيل الدخول " age: "العمر" - joined: "انضم في" + joined: "انضم" admin_title: "المدير" flags_title: "بلاغات" show_more: "أظهر المزيد" @@ -294,7 +294,7 @@ ar: like_count: "الإعجابات" topic_count: "المواضيع" post_count: "المشاركات" - user_count: "المستخدمون الجدد" + user_count: "المستخدمون" active_user_count: "المستخدمون النشطون" contact: "اتصل بنا" contact_info: "في حال حدوث مشكلة حرجة أو أمر عاجل يؤثّر على الموقع، من فضلك راسلنا على %{contact_info}." @@ -305,7 +305,7 @@ ar: bookmark: "انقر لإضافة أول منشور في هذا الموضوع إلى المفضّلة" unbookmark: "انقر لإزالة كل المفضّلات في هذا الموضوع" bookmarks: - not_logged_in: "آسفون، عليك تسجيل الدخول لتفضيل المنشورات" + not_logged_in: "عذراً، عليك تسجيل الدخول أولاً لتفضيل المشاركات" created: "لقد أضفت هذا المنشور إلى المفضّلة" not_bookmarked: "لقد قرأت هذا المنشور، انقر لإضافته إلى المفضّلة" last_read: "هذا آخر منشور قرأته، انقر لإضافته إلى المفضّلة" @@ -540,16 +540,16 @@ ar: '13': "البريد الوارد" '14': "قيد الانتظار" categories: - all: "كل الفئات" + all: "كل الأقسام" all_subcategories: "جميع" no_subcategory: "لا شيء" - category: "الفئة" + category: "القسم" category_list: "أعرض قائمة الأقسام." reorder: - title: "إعادة ترتيب الفئات" - title_long: "إعادة تنظيم قائمة الفئة" + title: "إعادة ترتيب الأقسام" + title_long: "إعادة تنظيم الأقسام" fix_order: "تثبيت الأماكن" - fix_order_tooltip: "ليس كل الفئات لديها رقم مكان فريد، ربما يسبب نتيجة غير متوقعة." + fix_order_tooltip: "ليس كل الأقسام لديها رقم مكان فريد، ربما يسبب نتيجة غير متوقعة." save: "حفظ الترتيب" apply_all: "تطبيق" position: "مكان" @@ -558,11 +558,11 @@ ar: latest: "آخر" latest_by: "الاحدث بـ" toggle_ordering: "تبديل التحكم في الترتيب" - subcategories: "تصنيفات فرعية" + subcategories: "أقسام فرعية" topic_sentence: zero: "%{count} موضوع" - one: "1 موضوع" - two: "موضوعين" + one: "موضوع" + two: "موضوعان" few: "%{count} مواضيع" many: "%{count} موضوع" other: "%{count} موضوع" @@ -584,7 +584,7 @@ ar: delete_other_accounts: "حذف %{count}" username: "إسم المستخدم" trust_level: "TL" - read_time: "وقت القراءة" + read_time: "اجمالي وقت القراءة" topics_entered: " مواضيع شوهدت" post_count: "# مشاركات" confirm_delete_other_accounts: "أمتأكد من حذف هذه الحسابات؟" @@ -601,30 +601,30 @@ ar: success: "بدأ التحميل, سيتم إعلامك برسالة عند اكتمال العملية." rate_limit_error: "المشاركات يمكن تحميلها لمرة واحدة في اليوم , الرجاء المحاولة غدا." new_private_message: "رسالة جديدة" - private_message: "رسالة" + private_message: "رسالة خاصة" private_messages: "الرسائل" - activity_stream: "النشاط" - preferences: " التفضيلات" + activity_stream: "اخر تحديث" + preferences: " الإعدادات" expand_profile: "توسيع" bookmarks: "المفضلة" bio: "معلومات عنّي" invited_by: "مدعو بواسطة" trust_level: "مستوى الثقة" - notifications: "الاشعارات" + notifications: "التنبيهات" statistics: "احصائيات" desktop_notifications: - label: "إشعارات سطح المكتب" - not_supported: "آسفون، لا يدعم المتصفح الإشعارات." - perm_default: "تفعيل الإشعارات" + label: "تنبيهات سطح المكتب" + not_supported: "عذراً , التنبيهات غير مدعومة على هذا المتصفح" + perm_default: "تفعيل التنبيهات" perm_denied_btn: "الوصول مرفوض" perm_denied_expl: "لقد رفضت صلاحية عرض الإشعارات. اسمح بظهور الإشعارات وذلك من إعدادات المتصفح." - disable: "عطّل الإشعارات" - enable: "فعّل الإشعارات" + disable: "إيقاف التنبيهات " + enable: "تفعيل التنبيهات" each_browser_note: "ملاحظة: عليك تغيير هذا الإعداد في كل متصفح تستخدمه." dismiss_notifications: "تجاهل الكل" - dismiss_notifications_tooltip: "جعل جميع اشعارات غيرمقروء الى مقروء" - first_notification: "إشعارك الأول! قم بإختياره للبدء." - disable_jump_reply: "لا تنتقل إلى مشاركتي بعد ما أردّ" + dismiss_notifications_tooltip: "جعل جميع التنبيهات الغيرة مقروءة الى مقروءة. " + first_notification: "إشعارك الأول! قم بالضغط عليه للبدء." + disable_jump_reply: "لاتذهب إلى مشاركتي بعد الرد" dynamic_favicon: "إعرض عدد المواضيع الجديدة والمحدثة في أيقونة المتصفح" external_links_in_new_tab: "فتح الروابط الخارجية في ألسنة جديدة" enable_quoting: "فعل خاصية إقتباس النصوص المظللة" @@ -703,15 +703,17 @@ ar: success: "(تم ارسال الرسالة)" in_progress: "(يتم ارسال رسالة)" error: "(خطأ)" - action: "ارسال اعادة ضبط كلمة المرور على البريد الالكتروني" + action: "ارسل اعادة ضبط الرمز السري على بريدي الالكتروني" set_password: " إعادة تعين الرمز السري" + choose_new: "ادخل رمز سري جديد" + choose: "ادخل رمز سري" change_about: - title: "تعديل معلومات عنّي" + title: "تعديل ملفي الشخصي" error: "حدث خطأ عند تغيير هذه القيمة." change_username: title: "تغيير اسم المستخدم" - confirm: "إن غيّرت اسم المستخدم فستعطب كلّ اقتباسات مشاركاتك إضافة إلى الإشارات إلى @اسمك. أواثق تمام الثقة من ذلك؟" - taken: "نأسف، اسم المستخدم مأخوذ." + confirm: "عند تغييرك أسم المستخدم, جميع الاقتباسات السابقة من مشاركاتك و ذكر اسم المستخدم الخاص بك ستصبح غير صحيحة ولا تشير الى ملفك الشخصي. هل انت متأكد تماماً من اختيارك؟" + taken: "عذراً، هذا الإسم مُستخدم مسبقاً." error: "حدث خطأ عند تغيير اسم المستخدم." invalid: "اسم المستخدم غير صالح. يجب ان يحتوي على ارقام وحروف فقط " change_email: @@ -723,14 +725,14 @@ ar: title: "غير صورتك الشخصية" gravatar: "غرافاتار/Gravatar، من" gravatar_title: "غير صورتك الشخصية على موقع Gravatar's." - refresh_gravatar_title: "أنعش صورة غرافاتار" + refresh_gravatar_title: "حدث صورتك الشخصية" letter_based: "الصورة الافتراضية " uploaded_avatar: "تخصيص صورة" uploaded_avatar_empty: "اضافة صورة " upload_title: "رفع صورتك " upload_picture: "رفع الصورة" image_is_not_a_square: "تحذير: لقد قصصنا الصورة، إذ أن عرضها وارتفاعها لا يتطابقان." - cache_notice: "لقد غيّرت صورة ملفك بنجاح، ولكنه قد تأخذ وقتا حتى تظهر بسبب خبيئة المتصفح." + cache_notice: "لقد غيّرت صورة ملفك بنجاح، قد تستغرق العملية بعض الوقت حتى تظهر الصورة الجديدة. " change_profile_background: title: "لون خلفية الحساب" instructions: "سيتم وضع خلفية الحساب في المنتصف بعرض 850px" @@ -739,18 +741,18 @@ ar: instructions: "سيتم وضع الخلفية في المنتصف بعرض 590px" email: title: "البريد الإلكتروني" - instructions: "لا يظهر للعموم" + instructions: "سيكون مخفي عن الجميع" ok: "سنرسل لك بريدا للتأكيد" invalid: "من فضلك أدخل بريدا إلكترونيا صالحا" authenticated: "تم توثيق بريدك الإلكتروني بواسطة {{provider}}" - frequency_immediately: "سيتم ارسال رسالة الكترونية فورا في حال أنك لم الرسائل السابقة" + frequency_immediately: "سنرسل لك تذكير في حالة انك لم تقراً المشاركات التي ارسلناها لك سابقاً." frequency: - zero: "سنراسلك على بريدك فقط في حال لم تكن متصلا على الموقع في آخر {{count}} دقيقة ." - one: "سنراسلك على بريدك فقط في حال لم تكن متصلا على الموقع في آخر دقيقة ." - two: "سنراسلك على بريدك فقط في حال لم تكن متصلا على الموقع في آخر دقيقتين ." - few: "سنراسلك على بريدك فقط في حال لم تكن متصلا على الموقع في {{count}} دقائق ." - many: "سنراسلك على بريدك فقط في حال لم تكن متصلا على الموقع في {{count}} دقيقة ." - other: "سنراسلك على بريدك فقط في حال لم تكن متصلا على الموقع في {{count}} دقيقة ." + zero: "سنراسلك على بريدك فقط في حال لم تزر الموقع منذ {{count}} دقيقة." + one: "سنراسلك على بريدك فقط في حال لم تزر الموقع منذ {{count}} دقيقة." + two: "سنراسلك على بريدك فقط في حال لم تزر الموقع منذ {{count}} دقيقة." + few: "سنراسلك على بريدك فقط في حال لم تزر الموقع منذ {{count}} دقيقة." + many: "سنراسلك على بريدك فقط في حال لم تزر الموقع منذ {{count}} دقيقة." + other: "سنراسلك على بريدك فقط في حال لم تزر الموقع منذ {{count}} دقيقة." name: title: "الاسم" instructions: "اسمك الكامل (اختياري)" @@ -759,27 +761,25 @@ ar: ok: "يبدو اسمك جيدا" username: title: "اسم المستخدم" - instructions: "فريد دون مسافات وقصير" + instructions: "غير مكرر , بدون مسافات , قصير" short_instructions: "يمكن للغير الإشارة إليك ب‍@{{username}}" available: "اسم المستخدم متاح." - global_match: "البريد الالكتروني مطابق لـ اسم المستخدم المسّجل." - global_mismatch: "مسجل مسبقا ، جرّب {{suggestion}} ؟" not_available: "غير متاح. جرّب {{suggestion}} ؟" + not_available_no_suggestion: "غير متاح" too_short: "اسم المستخدم قصير جداً" too_long: "اسم المستخدم طويل جداً" checking: "يتم التاكد من توفر اسم المستخدم..." - enter_email: 'تم العثور على اسم المستخدم. ادخل البريد الالكتروني المطابق.' prefilled: "البريد الالكتروني مطابق لـ اسم المستخدم المسّجل." locale: - title: "لغة الواجهة" - instructions: "لغة الواجهة الرسومية. ستتغير عندما تنعش الصفحة." + title: "لغة الموقع." + instructions: "اللغة المستخدمة تغيرت. لتفعيل اللغة الجديدة قم بتحديث الصفحة. " default: "(الافتراضية)" any: "أي" password_confirmation: title: "اعد كلمة المرور" - last_posted: " أخر موضوع" + last_posted: " آخر رد منذ " last_emailed: "أخر مراسلة" - last_seen: "شوهد" + last_seen: "آخر تواجد مُنذ " created: "إنضم" log_out: "تسجيل الخروج" location: "الموقع" @@ -806,17 +806,17 @@ ar: every_three_days: "كل ثلاثة أيام" weekly: "أسبوعيا" every_two_weeks: "كل أسبوعين" - include_tl0_in_digests: "ارفق المشاركات للاعضاء الجدد في ملخص المراسلات" - email_in_reply_to: "ارفق مقتبسات الرد على المنشور في رسائل البريد" + include_tl0_in_digests: "في إيميلات تلخيص المحتوى إرفق مشاركات الأعضاء الجدد." + email_in_reply_to: " بالإشعار الألكتروني إرفق مقتطفات من الردود." email_direct: "تلقي رسالة إلكترونية عند اقتباس مشاركة لك أو الرد على عليها أو في حالة ذكر اسمك @username" - email_private_messages: "إرسال إشعار بالبريد الإلكتروني عندما يرسل لك شخصاً رسالة خاصة" - email_always: "نبهني بوجود رسائل جديدة حتى لو كنت متصل على الموقع ." + email_private_messages: "إرسل إشعار بالبريد الإلكتروني عندما يرسل لك شخصاً رسالة خاصة." + email_always: "إرسل التنبيهات على بريدي الإلكتروني حتى وإن كنت متواجد في الموقع ." other_settings: "اخرى" - categories_settings: "الفئات" + categories_settings: "الأقسام" new_topic_duration: - label: "اعتبر المواضيع جديدة إن" - not_viewed: "لم أراها بعد" - last_here: "أُنشئت مذ كنت هنا" + label: " \nإعتبر المواضيع جديدة في حال" + not_viewed: "لم أشاهدها بعد. " + last_here: "تم إنشائها منذ اخر زيارة لي. " after_1_day: "أُنشئت في اليوم الماضي" after_2_days: "أُنشئت في اليومين الماضيين" after_1_week: "أُنشئت في الأسبوع الماضي" @@ -853,8 +853,8 @@ ar: pending: "دعوات قيد الإنتضار" pending_tab: "قيد الانتظار" pending_tab_with_count: "معلق ({{count}})" - topics_entered: " مواضيع شوهدت" - posts_read_count: "مشاركات شوهدت" + topics_entered: " مواضيع شُوهِدت" + posts_read_count: "مشاركات شُوهِدت" expired: "الدعوة انتهت صلاحيتها " rescind: "حذف" rescinded: "الدعوة حذفت" @@ -870,71 +870,94 @@ ar: link_generated: "تم إنشاء رابط الدعوة بنجاح!" valid_for: "رابط الدعوة صحيح فقط للبريد الإلكتروني %{email}" bulk_invite: + none: "لم تقم بدعوة احد الى هنا حتى الآن، يمكنك إرسال دعوه واحدة او مجموعة دعوات عن طريق ملف CSV." text: "الدعوة من ملف" success: "رُفع الملف بنجاح. سيصلك إشعارا عبر رسالة عند اكتمال العملية." + error: "عذراً، الملف يجب ان يكون على صيغة CSV." password: - title: "كلمة المرور" - too_short: "كلمة المرور قصيرة جدا." - common: "كلمة المرور هذه شائعة." - same_as_username: "كلمة المرور مطابقة لاسم المستخدم." - same_as_email: "كلمة المرور مطابقة للبريد الإلكتروني." - ok: "تبدو كلمة المرور جيدة." - instructions: "على الاقل %{count} حرف" + title: "الرمز السري. " + too_short: "الرمز السري قصير جداً." + common: "الرمز السري ضعيف!" + same_as_username: "الرمز السري مُطابق لاسم المستخدم." + same_as_email: "الرمز السري مطابق للبريد الإلكتروني." + ok: "الرمز السري جيّد. " + instructions: "يجب أن تكون على الأقل %{count} أحرف او أرقام" summary: title: "ملخص" - stats: "إحصائيات" - time_read: "وقت القراءة" + stats: "إحصائيات العضو:" + time_read: "< الوقت الذي امضاه في الموقع" topic_count: - zero: "تم إنشاء المواضيع" - one: "تم إنشاء الموضوع" - two: "تم إنشاء المواضيع" - few: "تم إنشاء المواضيع" - many: "تم إنشاء المواضيع" - other: "تم إنشاء المواضيع" + zero: "< إجمالي المواضيع" + one: "< إجمالي المواضيع" + two: "< إجمالي المواضيع" + few: "< إجمالي المواضيع" + many: "< إجمالي المواضيع" + other: "< إجمالي المواضيع" post_count: - zero: "تم إنشاء المشاركات" - one: "تم إنشاء المشاركة" - two: "تم إنشاء المشاركات" - few: "تم إنشاء المشاركات" - many: "تم إنشاء المشاركات" - other: "تم إنشاء المشاركات" + zero: "< إجمالي المواضيع" + one: " < اجمالي المشاركات" + two: " < اجمالي المشاركات" + few: " < اجمالي المشاركات" + many: " < اجمالي المشاركات" + other: " < اجمالي المشاركات" likes_given: - zero: " معطاة" - one: " معطاة" - two: " معطاة" - few: " معطاة" - many: " معطاة" - other: " معطاة" + zero: "لم يعطي اي إعجاب. " + one: "أعطى " + two: "أعطى " + few: "أعطى " + many: "أعطى " + other: "أعطى " likes_received: - zero: " حصّلت" - one: " حصّلت" - two: " حصّلت" - few: " حصّلت" - many: " حصّلت" - other: " حصّلت" + zero: " لم يتلقى أي اعجاب." + one: "تلقى " + two: "تلقى " + few: "تلقى " + many: "تلقى " + other: "تلقى " + days_visited: + zero: "اجمالي الأيام التي زار فيها الموقع" + one: "اجمالي الأيام التي زار فيها الموقع" + two: "اجمالي الأيام التي زار فيها الموقع" + few: "اجمالي الأيام التي زار فيها الموقع" + many: "اجمالي الأيام التي زار فيها الموقع" + other: "اجمالي الأيام التي زار فيها الموقع" + posts_read: + zero: "لم يشاهد اي مشاركة بعد. " + one: "مشاركة مقروءة" + two: "مشاركة مقروءة" + few: "مشاركات مقروءة" + many: "مشاركة مقروءة" + other: "مشاركة مقروءة" + bookmark_count: + zero: "لا المفضلة" + one: "المفضلة" + two: "المفضلتان" + few: "المفضلة" + many: "المفضلة" + other: "المفضلة" top_replies: "أفضل الردود" - no_replies: "لا ردود بعد." - more_replies: "ردود أخرى" + no_replies: "لَم ينشر أي رد بعد." + more_replies: "المزيد من الردود" top_topics: "أفضل المواضيع" - no_topics: "لا مواضيع بعد." - more_topics: "مواضيع أخرى" + no_topics: "لَم ينشر أي موضوع بعد. " + more_topics: "المزيد من المواضيع" top_badges: "افضل الاوسمه" - no_badges: "لا شارات بعد." - more_badges: "شارات أخرى" - top_links: "أفضل الروابط" - no_links: "لا روابط بعد." - most_liked_by: "أكثر المعجبين به" - most_liked_users: "أكثر من أعجبهم" - most_replied_to_users: "أكثر من رد عليهم" - no_likes: "لا إعجابات بعد." - associated_accounts: "جلسات الولوج" + no_badges: "لم يحصل على اي وسام بعد. " + more_badges: "أوسمة أخرى .. " + top_links: "أفضل الروابط التي اضافها:" + no_links: "ليس هناك اي روابط بعد." + most_liked_by: "الأعضاء المُعجبين بمشاركاتِه:" + most_liked_users: "الأعضاء الذين تعجبهُ مشاركاتِهم:" + most_replied_to_users: "الأعضاء الذين يتفاعل معهم غالباً:" + no_likes: "لم يتلقى أي إعجاب بعد." + associated_accounts: "الحسابات المرتبطة" ip_address: title: "عنوان IP الأخير" registration_ip_address: title: "عنوان IP التسجيل" avatar: title: "صورة الملف الشخصي" - header_title: "الملف الشخصي، والرسائل، والعناوين والتفضيلات" + header_title: "الملف الشخصي، والرسائل، والعناوين والإعدادت" title: title: "عنوان" filters: @@ -955,27 +978,30 @@ ar: not_found: "الصفحة غير متوفرة" desc: network: "من فضلك تحقق من اتصالك." - network_fixed: "يبدوا أنه رجع" + network_fixed: "أنت الآن متصل بالانترنت" server: "رمز الخطأ: {{status}}" - forbidden: "ليس لديك الصلاحية" - not_found: "آخ! حاول التطبيق تحميل عنوان غير موجود." + forbidden: "انت غير مُصّرح لدخول هذه الصفحة" + not_found: "عفواً، الرابط الذي تحاول تحميله غير موجود." unknown: "حدث خطب ما." buttons: back: "الرجوع" again: "أعد المحاولة" fixed: "تحميل" close: "اغلاق" - assets_changed_confirm: "حُدّث الموقع لتوّه. أتريد إنعاشه ورؤية أحدث إصدارة؟" - logout: "لقد خرجت." + assets_changed_confirm: "لقد تم تحديث الموقع قبل قليل، هل تريد تحديث الصفحة لتصفح الموقع بآخر نسخة؟ " + logout: "لقد تم تسجيل خروجك" refresh: "تحديث" read_only_mode: - enabled: "هذا الموقع في وضع القراءة فقط. نأمل أن تتابع تصفّحه، ولكن الرد، والإعجاب والإجراءات الأخرى معطلة الآن." - login_disabled: "الولوج معطّل في حال كان الموقع في وضع القراءة فقط." - logout_disabled: "الخروج معطّل في حال كان الموقع في وضع القراءة فقط." + enabled: "الموقع حالياً في وضع القراءة فقط، هذا يعني انه لا يمكنك الآن إنشاء مواضيع او إضافة ردود او تقديم إعجاب بمشاركة. " + login_disabled: "تسجيل الدخول معطّل عندما يكون الموقع في حالة القراءة فقط" + logout_disabled: "تسجيل الخروج معطّل عندما يكون الموقع في حاله القراءة فقط" too_few_topics_and_posts_notice: "دعونا الحصول على هذه المناقشة بدأت! يوجد حاليا%{currentTopics} / %{requiredTopics} المواضيع و %{currentPosts} / %{requiredPosts} المشاركات. الزوار الجدد بحاجة إلى بعض الأحاديث لقراءة والرد على." too_few_topics_notice: "دعونا الحصول على هذه المناقشة التي! وهناك حاليا %{currentTopics} / %{requiredTopics} المواضيع. الزوار الجديدة بحاجة إلى بعض الأحاديث قراءة والرد عليها." too_few_posts_notice: "دعونا الحصول على هذه المناقشة التي بدأت! يوجد حاليا %{currentPosts} / %{requiredPosts} مشاركات. الزوار الجديدة بحاجة إلى بعض الأحاديث قراءة والرد عليها." - learn_more: "تعلم المزيد..." + logs_error_rate_notice: + reached: "%{relativeAge}%{rate} وصل الحد الأعلى لإعدادت الموقع %{siteSettingRate}." + exceeded: "%{relativeAge}%{rate} يتجاوز الحد الأعلى لإعدادت الموقع %{siteSettingRate}." + learn_more: "اقرأ اكثر .." all_time: 'المجموع' all_time_desc: 'عدد المواضيع المنشأة' year: 'عام' @@ -1001,13 +1027,13 @@ ar: sign_up: "إشترك" hide_session: "ذكرني غدا" hide_forever: "لا شكرا" - hidden_for_session: "لا بأس، سأسلك غدا. يمكنك دوما استخدام 'لِج' لإنشاء حساب." - intro: "يا مرحبا! :heart_eyes: يبدو أنك مستمتع بقراءة هذا النقاش، ولكنك لم تسجل حسابا بعد." - value_prop: "عندما تنتهي من إنشاء الحساب، سترجع إلى حيث توقفت، فنحن نتذكر المكان الذي توقفت عنده دائما. يمكنك أيضا استقبال الإشعارات عبر الموقع والبريد الإلكتروني متى ما نُشرت مشاركات جديدة. يمكنك أيضا إبداء إعجابك بالمشاركات لمشاركة ما تحبّ. :heartbeat:" + hidden_for_session: "لا بأس، سنقوم بسؤالك غداً، يمكنك دائماً استخدام التسجيل في أعلى الصفحة إن غيرت رأيك. " + intro: "أهلاً وسهلاً! :heart_eyes: يَبدو أنك مُهتم بقراءة هذا النقاش، شاركنا برأيك!" + value_prop: "عندما تقوم بالتسجيل سيُمكنك المشاركة مع بقية الأعضاء و سيقوم الموقع بحفظ آخر مكان توقفت عنده لتصل إليه مباشرة عند عودتك، سيكون لديك نظام تنبيهات كامل لتتلقى الإشعارات عندما يتم نشر مواضيع ومشاركات جديدة او يرسل اليك أحد رسالة خاصة او عندما تُقتبس ويعجب أحد بردودك. :heartbeat: " summary: - enabled_description: "أنت تطالع ملخصا لهذا الموضوع: أكثر المشاركات المهمة حسب تقييم المجتمع." - description: "يوجد {{replyCount}} مشاركة." - description_time: "يوجد {{replyCount}} مشاركة, والوقت المقدر للقراءة {{readingTime}} minutes دقيقة." + enabled_description: "أنت تُشاهد الآن أهم الردود في هذا الموضوع بحسب تقييم الأعضاء." + description: "عدد الردود {{replyCount}} ." + description_time: "عدد الردود {{replyCount}} , والوقت المُقدر للقراءة {{readingTime}} minutes دقيقة." enable: 'لخّص هذا الموضوع' disable: 'أظهر كل المشاركات' deleted_filter: @@ -1024,7 +1050,7 @@ ar: username: 'إسم المستخدم' last_seen: 'شوهدت' created: 'مكتوبة' - created_lowercase: 'أُنشئ في' + created_lowercase: 'نُشر منذ' trust_level: 'مستوى التقة' search_hint: 'اسم مستخدم او بريد الكتروني او عنوان ايبي' create_account: @@ -1032,7 +1058,7 @@ ar: failed: "حدث خطأ ما, ربما بريدك الالكتروني مسجل مسبقا, جرب رابط نسيان كلمة المرور " forgot_password: title: " إعادة تعيين كلمة المرور" - action: "نسيت كلمة المرور" + action: "لقد نسيت رمزي السري" invite: "ادخل اسم مستخدمك او بريدك الالكتروني وسنقوم بإرسال اعاذة ضبط كلمة المرور على بريدك" reset: " إعادة تعين الرمز السري" complete_username: "اذا كان اسم المسنخدم موجود %{username}, سيتم ارسال رسالة لبريدك لإعادة ضبط كلمة المرور " @@ -1042,50 +1068,62 @@ ar: complete_username_not_found: "لايوجد حساب متطابق مع هذا المستخدم %{username}" complete_email_not_found: "لايوجد حساب متطابق مع %{email}" login: - title: "لِج" + title: "تسجيل الدخول" username: "المستخدم" password: "كلمة المرور" email_placeholder: "البريد الإلكتروني أو اسم المستخدم" - caps_lock_warning: "قافل الحالة يعمل" + caps_lock_warning: "حساسية الأحرف الإنقليزية Caps Lock في وضع التشغيل" error: "خطأ مجهول" - rate_limit: "من فضلك انتظر قبل أن تلج مرة أخرى." + rate_limit: "الرجاء اﻹنتظارقبل محاولة تسجيل الدخول مجدداً." blank_username_or_password: "من فضلك أدخل اسم المستخدم أو البريد الإلكتروني وكلمة المرور." reset_password: 'صفّر كلمة المرور' logging_in: "...تسجيل الدخول " or: "أو " - authenticating: "يستوثق..." + authenticating: "جارِ التحقق .. " awaiting_confirmation: "ما زال حسابك غير مفعّل، استخدم رابط نسيان كلمة المرور لإرسال بريد إلكتروني تفعيلي آخر." awaiting_approval: "لم يوافق أحد أعضاء الطاقم على حسابك بعد. سيُرسل إليك بريد حالما يتم ذلك." - requires_invite: "آسفون، التسجيل في هذا المنتدى يتم بالدعوة فقط." - not_activated: "لا يمكنك تسجيل الدخول. لقد سبق و أن أرسلنا بريد إلكتروني إلى {{sentTo}} لتفعيل حسابك. الرجاء اتباع التعليمات المرسلة لتفعيل الحساب." - not_allowed_from_ip_address: "لا يمكنك الولوج من عنوان IP هذا." - admin_not_allowed_from_ip_address: "لا يمكنك الولوج كمدير من عنوان IP هذا." + requires_invite: "المَعذرة، الوصول لهذا الموقع خاص بالمدعويين فقط." + not_activated: "لا يُمكنك تسجيل الدخول حتى تقوم بتفعيل الحساب. لقد سبق و أن أرسلنا بريد إلكتروني إلى {{sentTo}} لتفعيل حسابك. الرجاء اتباع التعليمات المرسلة لتفعيل الحساب." + not_allowed_from_ip_address: "لا يمكنك تسجيل الدخول من خلال هذا العنوان الرقمي - IP." + admin_not_allowed_from_ip_address: "لا يمكنك تسجيل الدخول كمدير من خلال هذا العنوان الرقمي - IP." resend_activation_email: "اضغط هنا لإرسال رسالة إلكترونية أخرى لتفعيل الحساب." - sent_activation_email_again: "لقد سبق وأن تم إرسال رسالة إلكترونية إلى {{currentEmail}} لتفعيل حسابك. تأكد من مجلد السبام في بريدك." - to_continue: "من فضلك لِج" - preferences: "عليك الولوج لتغيير تفضيلاتك الشخصية." + sent_activation_email_again: "لقد قمنا بإرسال رسالة التفعيل مرة أُخرى إلى {{currentEmail}} قد يستغرق وصول الإيميل عدة دقائق. لاتنسى أن تتأكد من مجلد Spam أيضاً. " + to_continue: "من فضلك قم بتسجيل دُخولك" + preferences: "يتوجب عليك تسجيل الدخول لتغيير إعداداتك الشخصية." forgot: "لا أذكر معلومات حسابي" + not_approved: "لم يتم الموافقة على حسابك بعد. سيتم تنبيهك عن طريق الإيميل عندما تتم الموافقة." google: - title: "مع غوغل" - message: "يستوثق مع غوغل (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة Google" + message: "التحقق من خلال حساب قوقل ( الرجاء التأكد من عدم تشغيل مانع الاعلانات المنبثقة في المتصفح)" google_oauth2: - title: "مع غوغل" - message: "يستوثق مع غوغل (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة Google" + message: "تسجيل الدخول باستخدام حسابك في Google ( تأكد أن النوافذ المنبثقة غير ممنوعة في متصفحك)" twitter: - title: "مع تويتر" - message: "يستوثق مع تويتر (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة Twitter" + message: "التحقق من خلال حساب تويتر ( الرجاء التأكد من عدم تشغيل مانع الاعلانات المنبثقة في المتصفح)" instagram: - title: "مع إنستغرام" - message: "يستوثق مع إنستغرام (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة Instagram " + message: "التحقق من خلال حساب الإنستقرام ( الرجاء التأكد من عدم تشغيل مانع الاعلانات المنبثقة في المتصفح)" facebook: - title: "مع فيس‌بوك" - message: "يستوثق مع فيس‌بوك (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة Facebook" + message: "التحقق من خلال حساب الفيس بوك ( الرجاء التأكد من عدم تشغيل مانع الاعلانات المنبثقة في المتصفح)" yahoo: - title: "مع ياهو" - message: "يستوثق مع ياهو (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة Yahoo" + message: "التحقق من خلال حساب ياهو ( الرجاء التأكد من عدم تشغيل مانع الاعلانات المنبثقة في المتصفح)" github: - title: "مع غِت‌هَب" - message: "يستوثق مع غِت‌هَب (تأكد من أن مانعات المنبثقات معطلة)" + title: "بواسطة GetHub" + message: "التحقق من خلال حساب جيتهب ( الرجاء التأكد من عدم تشغيل مانع الاعلانات المنبثقة في المتصفح)" + invites: + accept_title: "دعوة" + welcome_to: "مرحباً بك في %{site_name}!" + invited_by: "لقد تمت دعوتك بواسطة" + social_login_available: "سيمكنك ايضاً تسجيل دخولك باستخدام الشبكات الإجتماعية بواسطة هذا الإيميل" + your_email: "بريدك الإلكتروني %{email}." + accept_invite: "قُبول الدعوة " + success: "لقد تم انشاء حسابك وتسجيل دخولك" + password_label: "تعيين رمز سري (اختياري)" + password_reset: + continue: "الإستمرار الى Continue to %{site_name} " emoji_set: apple_international: "آبل/عالمي" google: "غوغل" @@ -1093,8 +1131,9 @@ ar: emoji_one: "إموجي واحد" win10: "وندوز10" category_page_style: - categories_only: "الفئات فقط" - categories_with_featured_topics: "فئات ذات مواضيع متميزة" + categories_only: "الأقسام فقط" + categories_with_featured_topics: "أقسام ذات مواضيع متميزة" + categories_and_latest_topics: "الأقسام والمواضيع الاخيرة" shortcut_modifier_key: shift: 'Shift' ctrl: 'Ctrl' @@ -1122,7 +1161,7 @@ ar: post_missing: "لا يمكن للمشاركة أن تكون خالية" post_length: "التعليق يجب أن يكون أكثر {{min}} حرف" try_like: 'هل جربت زر ؟' - category_missing: "عليك اختيار فئة" + category_missing: "يجب اختيار احد الأقسام" save_edit: "حفظ التحرير" reply_original: "التعليق على الموضوع الاصلي" reply_here: "الرد هنا" @@ -1140,7 +1179,7 @@ ar: saving: "يحفظ" saved: "حُفظ!" saved_draft: "جاري إضافة المسودة. اضغط للاستئناف" - uploading: "يرفع..." + uploading: "جارِ التحميل..." show_preview: 'أظهر المعاينة »' hide_preview: '« أخفِ المعاينة' quote_post_title: "اقتبس كامل المشاركة" @@ -1187,8 +1226,8 @@ ar: notifications: title: "الإشعار عندما يتم ذكر @name , أو الردود على مواضيعك أو مشاركاتك أو الرسالة الخاصة ...إلخ" none: "تعذر تحميل الإشعارات الآن." - empty: "لا إشعارات." - more: "اعرض الإشعارات الأقدم من هذه" + empty: "لم يتم العثور على تنبيهات" + more: "اعرض التنبيهات الأقدم من هذه" total_flagged: "مجموع المشاركات المعلّم عليها" mentioned: "

    {{username}} {{description}}

    " group_mentioned: "

    {{username}} {{description}}

    " @@ -1211,7 +1250,7 @@ ar: replied: "مجاب" posted: "مشاركة بواسطة" edited: "تم تعديل مشاركتك بواسطة" - liked: "تم الإعجاب بمشاركتك" + liked: "أُعجب بمشاركتك" private_message: "رسالة خاصة من" invited_to_private_message: "تمت الدعوة لرسالة خاصة من " invited_to_topic: "تمت الدعوة لموضوع من " @@ -1271,7 +1310,7 @@ ar: advanced: title: البحث التفصيلي posted_by: - label: المشارك + label: نُشرت بواسطة in_category: label: في الفئة in_group: @@ -1284,8 +1323,8 @@ ar: label: استرجع فقط المواضيع/المشاركات التي... likes: أعجبني posted: شاركت في - watching: أنا اراقب - tracking: أنا اتابع + watching: التي أراقبها + tracking: التي اتابعها private: من ضمن رسائلي bookmarks: أضفت للمفضلات first: تلك المشاركة الاولى @@ -1311,6 +1350,7 @@ ar: topics: new_messages_marker: "آخر مشاهدة" bulk: + select_all: "تحديد الكُل" clear_all: "مسح الكل" unlist_topics: "ازالة المواضيع من القائمة" reset_read: "تصفير القراءات" @@ -1327,7 +1367,7 @@ ar: close_topics: "إغلاق المواضيع" archive_topics: "أرشفة المواضيع" notification_level: "غيّر مستوى الإشعار" - choose_new_category: "اختر الفئة الجديدة للمواضيع:" + choose_new_category: "اختر القسم الجديد للمواضيع:" selected: zero: "لم تحدد شيئا." one: "حددت موضوع واحد." @@ -1343,10 +1383,10 @@ ar: new: "ليست هناك مواضيع جديدة." read: "لم تقرأ أيّ موضوع بعد." posted: "لم تشارك في أيّ موضوع بعد." - latest: "لا مواضيع حديثة. يا للأسف." - hot: "الهدوء يعم المكان." + latest: "لا توجد مواضيع جديدة! " + hot: "لايُوجد مواضيع نَشطة" bookmarks: "لا مواضيع مفضّلة بعد." - category: "لا مواضيع في الفئة \"{{category}}\"." + category: "لا يوجد مواضيع في قسم \"{{category}}\"." top: "لا يوجد مواضيع تستحق أن تكون ضمن الأفضل مع الأسف." search: "لا نتائج للبحث." educate: @@ -1367,6 +1407,13 @@ ar: unsubscribe: stop_notifications: "ستستقبل الأن إشعارات أقل لـ{{title}}" change_notification_state: "حالة إشعارك الحالي هي " + filter_to: + zero: "عدد الردود في الموضوع" + one: "رد في الموضوع" + two: "الردود في الموضوع" + few: "الردود في الموضوع" + many: "الردود في الموضوع " + other: "الردود في الموضوع " create: 'موضوع جديد' create_long: 'كتابة موضوع جديد' private_message: 'أرسل رسالة خاصة' @@ -1393,7 +1440,7 @@ ar: few: '{{count}} مواضيع غير مقروءة' many: '{{count}} موضوعًا غير مقروء' other: '{{count}} موضوع غير مقروء' - title: 'موضوع' + title: 'الموضوع' invalid_access: title: "الموضوع خاص" description: "لا تملك صلاحيات للوصول لهذا الموضوع" @@ -1402,7 +1449,7 @@ ar: title: "فشل تحميل الموضوع" description: "آسفون، تعذر علينا تحميل هذا الموضوع، قد يرجع ذلك إلى مشكلة بالاتصال. من فضلك حاول مجددا. أخبرنا بالمشكلة إن استمر حدوثها." not_found: - title: "لم يوجد الموضوع" + title: "لم يتم العثور على الموضوع" description: "آسفون، لم نجد هذا الموضوع. ربما أزاله أحد المشرفين؟" total_unread_posts: zero: "لا مشاركات غير مقروءة في هذا الموضوع" @@ -1439,13 +1486,13 @@ ar: read_more_in_category: "أتريد قراءة المزيد؟ تصفح المواضيع الأخرى في {{catLink}} أو {{latestLink}}." read_more: "أتريد قراءة المزيد؟ {{catLink}} أو {{latestLink}}." read_more_MF: "{UNREAD, plural, zero {} one {تبقى {BOTH, select, true {موضوع واحد غير مقروء و} false {موضوع واحد غير مقروء} other {}}} two {تبقى {BOTH, select, true {موضوعان غير مقروءان و} false {موضوعان غير مقروءان} other {}}} few {تبقت {BOTH, select, true {# مواضيع غير مقروءة و} false {# مواضيع غير مقروءة} other {}}} many {تبقى {BOTH, select, true {# موضوعا غير مقروء و} false {# موضوعا غير مقروء} other {}}} other {تبقى {BOTH, select, true {# موضوع غير مقروء و} false {# موضوع غير مقروء} other {}}}}{NEW, plural, zero {} one {{UNREAD, plural, zero {تبقى } one {} two {} few {} many {} other {}}موضوع واحد جديد} two {{UNREAD, plural, zero {تبقى } one {} two {} few {} many {} other {}}موضوعان جديدان} few {{UNREAD, plural, zero {تبقت } one {} two {} few {} many {} other {}}# مواضيع جديدة} many {{UNREAD, plural, zero {تبقى } one {} two {} few {} many {} other {}}# موضوعا جديدا} other {{UNREAD, plural, zero {تبقى } one {} two {} few {} many {} other {}}# موضوع جديد}}، أو {CATEGORY, select, true {تصفّح المواضيع الأخرى في {catLink}} false {{latestLink}} other {}}" - browse_all_categories: تصفّح كل الفئات + browse_all_categories: تصفّح كل الأقسام view_latest_topics: اعرض أحدث المواضيع suggest_create_topic: لمَ لا تكتب موضوعًا؟ jump_reply_up: انتقل إلى أول رد jump_reply_down: انتقل إلى آخر رد deleted: "الموضوع محذوف" - auto_close_notice: "سيُغلق الموضوع آليا %{timeLeft}." + auto_close_notice: "سيُغلق الموضوع آليا بعد %{timeLeft}." auto_close_notice_based_on_last_post: "سيُغلق الموضوع بعد %{duration} من آخر رد." auto_close_title: 'إعدادات الإغلاق الآلي' auto_close_save: "احفظ" @@ -1460,6 +1507,7 @@ ar: go_bottom: "أسفل" go: "اذهب" jump_bottom: "انتقل لآخر مشاركة" + jump_prompt: "الذهاب الى" jump_prompt_long: "إلى أي مشاركة تريد الانتقال؟" jump_bottom_with_number: "انتقل إلى المشاركة %{post_number}" total: مجموع المشاركات @@ -1469,20 +1517,20 @@ ar: reasons: mailing_list_mode: "وضع القائمة البريدية لديك مفعّل، لذلك ستصلك إشعارات الردود على هذا الموضوع عبر البريد الإلكتروني." '3_10': 'ستصلك إشعارات لأنك تراقب وسما وُسم به هذا الموضوع.' - '3_6': 'ستصلك إشعارات لأنك تراقب هذه الفئة.' + '3_6': 'ستصلك إشعارات لأنك تراقب هذا القسم.' '3_5': 'ستصلك إشعارات لأنك بدأت بمراقبة هذا الموضوع آليا.' '3_2': 'ستصلك إشعارات لأنك تراقب هذا الموضوع.' '3_1': 'ستصلك إشعارات لأنك أنشأت هذا الموضوع.' '3': 'ستصلك إشعارات لأنك تراقب هذا الموضوع.' - '2_8': 'ستصلك إشعارات لأنك تتابع هذه الفئة.' + '2_8': 'ستصلك إشعارات لأنك تتابع هذا القسم.' '2_4': 'ستصلك إشعارات لأنك نشرت ردا في هذا الموضوع.' '2_2': 'ستصلك إشعارات لأنك تتابع هذا الموضوع.' '2': 'ستصلك إشعارات لأنك قرأت هذا الموضوع.' '1_2': 'سيصلك إشعار إن أشار أحد إلى @اسمك أو رد عليك.' '1': 'سيصلك إشعار إن أشار أحد إلى @اسمك أو رد عليك.' - '0_7': 'أنت تتجاهل إشعارات هذه الفئة.' - '0_2': 'أنت تتجاهل إشعارات هذا الموضوع.' - '0': 'أنت تتجاهل إشعارات هذا الموضوع.' + '0_7': 'لن يصلك أي إشعار يخص هذا القسم بناء على طلبك.' + '0_2': 'لن يصلك أي إشعار يخص هذا الموضوع بناء على طلبك.' + '0': 'لن يصلك أي إشعار يخص هذا الموضوع بناء على طلبك.' watching_pm: title: "مُراقب" description: "سيصلك إشعار لكل رد جديد لهذه الرسالة، وسيظهر عدد الردود الجديدة." @@ -1496,10 +1544,10 @@ ar: title: "مُتابع" description: "سيظهر عدد الردود الجديدة لهذا الموضوع. سيصلك إشعار إن أشار أحد إلى @اسمك أو رد عليك." regular: - title: "منتظم" + title: "الوضع العادي" description: "سيصلك إشعارا إن أشار أحد إلى @اسمك أو رد عليك." regular_pm: - title: "منتظم" + title: "الوضع العادي" description: "سيصلك إشعارا إن أشار أحد إلى @اسمك أو رد عليك." muted_pm: title: "كتم" @@ -1530,18 +1578,19 @@ ar: make_banner: "موضوع دعائي" remove_banner: "إزالة موضوع دعائي" reply: - title: 'ردّ' - help: 'ابدأ بكتابة رد على هذا الموضوع' + title: 'إضافة رد' clear_pin: title: "إلغاء التثبيت" help: "إلغاء تثبيت الموضوع حتى لا يظهر في أعلى القائمة" share: title: 'مشاركة' help: 'شارك برابط يشير لهذا الموضوع' + print: + title: 'طباعة' flag_topic: title: 'إبلاغ' - help: 'قم بمتابعة هذا الموضوع بشكل خاص حيث سيصلك تنبيهات عليها ' - success_message: 'تم الإبلاغ عن الموضوع' + help: 'بلَغ عن هذا الموضوع او ارسل تنبيه خاص لأدارة الموقع.' + success_message: 'تم الإشتراك عن الموضوع' feature_topic: title: "ترشيح هذا الموضوع" pin: "اجعل هذا الموضوع يظهر أعلى فئة {{categoryLink}} حتى" @@ -1603,7 +1652,7 @@ ar: success_email: "قمنا بإرسال دعوة بالبريد لـ {{emailOrUsername}} . سيتم تنبيهك عند قبول الدعوة , تحقق من تبويب الدعوات في صفحتك الشخصية لمتابعة دعوتك." success_username: "دعونا عضو للمشاركة في هذا الموضوع." error: "نأسف لا يمكنك دعوة هذا المُستَخدم , ربما لأنه مُسَجِل لدينا مسبقاً (الدعوات محدودة)" - login_reply: 'لِج لترد' + login_reply: 'يجب عليك تسجيل الدخول للرد' filters: n_posts: zero: "لا مشاركات" @@ -1614,9 +1663,9 @@ ar: other: "{{count}} مشاركة" cancel: "حذف التخصيص" split_topic: - title: "موضوع جديد" - action: "موضوع جديد" - topic_name: "اسم الموضوع" + title: "نقل الى موضوع جديد" + action: "نقل الى موضوع جديد" + topic_name: "اسم الموضوع الجديد" error: "هناك مشكلة في نقل المشاركات الى الموضوع الجديد" instructions: zero: "أنت على وشك انشاء موضوع جديد, ولم يتم اختيار أي مشاركة لتعبئته." @@ -1678,6 +1727,7 @@ ar: post: reply: " {{replyAvatar}} {{usernameLink}}" reply_topic: " {{link}}" + quote_reply: "اقتباس" edit: "أنت تعدّل {{link}} {{replyAvatar}} {{username}} ." edit_reason: "السبب:" post_number: "المشاركة {{number}}" @@ -1694,7 +1744,7 @@ ar: few: "(المشاركة سحبت بواسطة الكاتب, سوف تحذف تلقائياً خلال %{count} ساعات مالم يُشار اليها)" many: "(المشاركة سحبت بواسطة الكاتب, سوف تحذف تلقائياً خلال %{count} ساعة مالم يُشار اليها)" other: "(المشاركة سحبت بواسطة الكاتب, سوف تحذف تلقائياً خلال %{count} ساعة مالم يُشار اليها)" - expand_collapse: "وسّع/اطو" + expand_collapse: "عرض/إخفاء" gap: zero: "لا ردود مخفية" one: "اعرض الرد المخفي" @@ -1723,15 +1773,15 @@ ar: two: "أعجبت هذه المشاركة شخصين" few: "أعجبت هذه المشاركة {{count}} أشخاص" many: "أعجبت هذه المشاركة {{count}} شخصا" - other: "أعجبت هذه المشاركة {{count}} شخص" - has_likes_title_only_you: "أعجبتك هذه المشاركة" + other: "{{count}} أشخاص أعجبوا بهذه المشاركة" + has_likes_title_only_you: "أنت أعجبت بهذه المشاركة" has_likes_title_you: zero: "أعجبتك هذه المشاركة" one: "أعجبت هذه المشاركة شخصا واحدا غيرك" two: "أعجبت هذه المشاركة شخصين غيرك" few: "أعجبت هذه المشاركة {{count}} أشخاص غيرك" many: "أعجبت هذه المشاركة {{count}} شخصا غيرك" - other: "أعجبت هذه المشاركة {{count}} شخص غيرك" + other: "أنت و {{count}} شخص أخرون أعجبتم بهذه المشاركة ." errors: create: "آسفون، حدثت مشكلة في إنشاء المشاركة. من فضلك حاول مجددا." edit: "آسفون، حدثت مشكلة في تعديل المشاركة. من فضلك حاول مجددا." @@ -1741,7 +1791,7 @@ ar: too_many_dragged_and_dropped_files: "آسفون، يمكنك فقط رفع 10 ملفّات كلّ مرة." image_upload_not_allowed_for_new_user: "آسفون، لا يمكن للمستخدمين الجدد رفع الصور." attachment_upload_not_allowed_for_new_user: "آسفون، لا يمكن للمستخدمين الجدد رفع المرفقات." - attachment_download_requires_login: "آسفون، عليك الولوج لتنزيل المرفقات." + attachment_download_requires_login: "يجب أن تسجل دخولك لتنزيل المرفق." abandon: confirm: "أمتأكد من التخلي عن المشاركة؟" no_value: "لا، أبقها" @@ -1749,8 +1799,6 @@ ar: via_email: "وصلت هذه المشاركة من خلال الإيميل" via_auto_generated_email: "هذه المشاركة وصلت عبر بريد الكتروني منشىء تلقائياً" whisper: "هذه المشاركة همسة خاصة للمشرفين" - wiki: - about: "هذه مشاركة ويكي" archetypes: save: 'حفظ الخيارات' few_likes_left: "نشكرك على مشاركة حبّك! تبقّت لديك بضعة إعجابات لليوم فقط." @@ -1761,7 +1809,7 @@ ar: undo_like: "ألغِ الإعجاب" edit: "عدّل المشاركة" edit_anonymous: "آسفون، عليك الولوج لتعديل المشاركة." - flag: "قم بمتابعة هذا الموضوع بشكل خاص حيث سيصلك تنبيهات عليها " + flag: "بلَغ عن هذا الموضوع او ارسل تنبيه خاص لأدارة الموقع." delete: "احذف المشاركة" undelete: "التراجع عن حذف المشاركة" share: "شارك رابط هذه المشاركة" @@ -1957,24 +2005,24 @@ ar: hide: "أخفِ المراجعة" show: "أظهر المراجعة" revert: "اعكس إلى هذه المراجعة" + edit_post: "عدل المنشور" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: - button: ' HTML' + button: 'HTML' side_by_side: title: "أظهر فروقات الخرج المصيّر جنبًا إلى جنب" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "أظهر فروقات المصدر الخامّ جنبًا إلى جنب" - button: ' الخامّ' category: can: 'يمكنها…' none: '(غير مصنف)' - all: 'كل الفئات' + all: 'كل الأقسام' choose: 'اختر فئة…' edit: 'تعديل' edit_long: "تعديل" - view: 'اظهار المواضيع في الصنف' + view: 'اظهار المواضيع في القسم' general: 'عام' settings: 'اعدادات' topic_template: "إطار الموضوع" @@ -1983,10 +2031,10 @@ ar: tags_allowed_tag_groups: "مجموعات العلامات الوصفية التي تستخدم فقط في هذا القسم:" tags_placeholder: "(اختياري) قائمة العلامات الوصفية المسموح بها" tag_groups_placeholder: "(اختياري) قائمة مجموعات العلامات الوصفية المسموح بها" - delete: 'احذف الفئة' - create: 'فئة جديدة' - create_long: 'أنشئ فئة جديدة' - save: 'احفظ الفئة' + delete: 'احذف القسم' + create: 'قسم جديد' + create_long: 'أنشء قسم جديدة' + save: 'احفظ القسم' slug: 'عنوان التصنيف/Slug' slug_placeholder: '(اختياري) خط تحت عنوان الموقع' creation_error: حدثت مشكلة أثناء إنشاء الفئة. @@ -1994,19 +2042,19 @@ ar: name: "اسم الفئة" description: "الوصف" topic: "موضوع التصنيف" - logo: "شعار الفئة" - background_image: "خلفية الفئة" + logo: "صورة القسم" + background_image: "خلفية القسم" badge_colors: "ألوان الشارة" background_color: "لون الخلفية" foreground_color: "لون المقدمة" name_placeholder: "كلمة أو كلمتين على الأكثر" color_placeholder: "أي لون " - delete_confirm: "أمتأكد من حذف هذه الفئة؟" - delete_error: "حدث خطأ في حذف الفئة." - list: "عرض التصنيفات" - no_description: "من فضلك أضف وصفا لهذه الفئة." + delete_confirm: "هل تريد فعلاً حذف هذا القسم؟" + delete_error: "حدث خطأ في حذف القسم." + list: "عرض الأقسام" + no_description: "من فضلك أضف وصفا لهذه القسم." change_in_category_topic: "عدّل الوصف" - already_used: 'استُخدم هذا اللون لفئة أخرى' + already_used: 'هذا اللون تم استخدامه سابقا في قسم آخر' security: "الأمن" special_warning: "تحذير: هذه الفئة هي فئة قبل التصنيف وإعدادات الحماية لا يمكن تعديلها. إذا لم تكن تريد استخدام هذه الفئة، احذفها بدلا من تطويعها لأغراض أخرى." images: "الصور" @@ -2042,6 +2090,17 @@ ar: muted: title: "مكتومة" description: "لن يتم إشعارك بأي مشاركات جديدة في هذه التصنيفات ولن يتم عرضها في قائمة المواضيع المنشورة مؤخراً." + sort_options: + default: "افترضى" + likes: "اعجاب" + op_likes: "الاعجابات الاساسية للمنشور" + views: "المشاهدات" + posts: "المنشورات" + activity: "النشاط" + posters: "البوستر" + category: "التصنيف" + created: "انشئ " + sort_ascending: 'تنازلى' flagging: title: 'شكرا لمساعدتك في إبقاء مجتمعنا نظيفاً.' action: 'التبليغ عن مشاركة' @@ -2055,21 +2114,29 @@ ar: submit_tooltip: "إرسال تبليغ" take_action_tooltip: "الوصول إلى الحد الأعلى للتبليغات دون انتظار تبليغات أكثر من أعضاء الموقع." cant: "المعذرة، لا يمكنك التبليغ عن هذه المشاركة في هذه اللحظة." - notify_staff: 'اشعر الطاقم سرياً' + notify_staff: 'بلغ احد المراقبين بشكل سري' formatted_name: off_topic: "خارج عن الموضوع" inappropriate: "غير لائق" spam: "هذا سبام" custom_placeholder_notify_user: "كن محدد, استدلالي ودائما حسن الاخلاق" custom_placeholder_notify_moderators: "ممكن تزودنا بمعلومات أكثر عن سبب عدم ارتياحك حول هذه المشاركة؟ زودنا ببعض الروابط و الأمثلة قدر الإمكان." + custom_message: + at_least: + zero: "عدد الأحرف يجب ان لا يقل عن {{count}} حرف" + one: "عدد الأحرف يجب ان لا يقل عن {{count}} حرف" + two: "عدد الأحرف يجب ان لا يقل عن {{count}} حرف" + few: "عدد الأحرف يجب ان لا يقل عن {{count}} حروف" + many: "عدد الأحرف يجب ان لا يقل عن {{count}} حرف" + other: "عدد الأحرف يجب ان لا يقل عن {{count}} حرف" flagging_topic: title: "شكرا لمساعدتنا في ابقاء مجتمعنا نضيفا" action: "التبليغ عن الموضوع" notify_action: "رسالة" topic_map: title: "ملخص الموضوع" - participants_title: "مشاركين معتادين" - links_title: "روابط شائعة" + participants_title: "المُشاركين بالنقاش:" + links_title: "روابط ذات علاقة:" links_shown: "أظهر روابط أخرى..." clicks: zero: "لا نقرات" @@ -2103,7 +2170,7 @@ ar: help: "هذا الموضوع غير مثبت بالنسبة لك, سيتم عرضه بالترتيب العادي" pinned_globally: title: "تثبيت عام" - help: "هذا الموضوع مثبت بشكل عام, سوف يظهر في مقدمة المواضيع بآخر المشاركات وفي الفئة الخاصة به" + help: "هذا الموضوع مثبت بشكل عام, سوف يظهر في مقدمة المواضيع بآخر المشاركات وفي الأقسام الخاصة به" pinned: title: "مثبت" help: "هذا الموضوع مثبت لك, سوف يتم عرضه في اول القسم" @@ -2139,13 +2206,13 @@ ar: likes_long: "هناك {{number}} اعجابات في هذا الموضوع" users: "المستخدمون" users_lowercase: - zero: "المستخدمون" - one: "المستخدمون" - two: "المستخدمون" - few: "المستخدمون" - many: "المستخدمون" - other: "المستخدمون" - category_title: "الفئة" + zero: "المشاركون" + one: "المشاركون" + two: "المشاركون" + few: "المشاركون" + many: "المشاركون" + other: "المشاركون" + category_title: "قسم" history: "تاريخ" changed_by: "الكاتب {{author}}" raw_email: @@ -2156,7 +2223,7 @@ ar: with_topics: "المواضيع %{filter}" with_category: "المواضيع %{filter} في %{category}" latest: - title: "الأخيرة" + title: "نشطة حالياً" title_with_count: zero: "الأخيرة ({{count}})" one: "الأخيرة ({{count}})" @@ -2164,9 +2231,9 @@ ar: few: "الأخيرة ({{count}})" many: "الأخيرة ({{count}})" other: "الأخيرة ({{count}})" - help: "مواضيع بآخر المشاركات" + help: "المواضيع التي أضيفت لها ردود مؤخراً" hot: - title: "ساخن" + title: "نَشط" help: "مختارات من مواضيع ساخنة" read: title: "المقروءة" @@ -2175,7 +2242,7 @@ ar: title: "بحث" help: "بحث في كل المواضيع" categories: - title: "الفئات" + title: "الأقسام" title_in: "قسم - {{categoryName}}" help: "جميع المواضيع تتبع القسم" unread: @@ -2212,7 +2279,7 @@ ar: few: "الجديدة ({{count}})" many: "الجديدة ({{count}})" other: "الجديدة ({{count}})" - help: "مواضيع جديد في الايام السابقة" + help: "مواضيع تمت إضافتها مؤخراً" posted: title: "مشاركاتي" help: "مواضيع شاركت بها " @@ -2230,8 +2297,8 @@ ar: other: "{{categoryName}} ({{count}})" help: "آخر المواضيع في {{categoryName}} قسم" top: - title: "أعلى" - help: "أكثر المواضيع نشاطا خلال سنة, شهر, اسبوع او يوم" + title: "الأكثر مُشاهدة" + help: "أكثر المواضيع نشاطاً خلال الأيام,الأشهر، او السنة الماضية" all: title: "كل الأوقات" yearly: @@ -2266,7 +2333,7 @@ ar: latest: 'g, l الاحدث' new: 'g، n الجديد' unread: 'g، u غير المقروء' - categories: 'g، c الفئات' + categories: 'g، c الأقسام' top: 'g, t الأعلى' bookmarks: 'g، b العلامات' profile: 'g, p ملف التعريف' @@ -2322,6 +2389,13 @@ ar: few: "%{count} شارات" many: "%{count} شارة" other: "%{count} شارة" + granted: + zero: "%{count} مونحَ." + one: "1 مونحَ." + two: "%{count} مونحَ." + few: "%{count} مونحَ." + many: "%{count} مونحَ." + other: "%{count} مونحَ." select_badge_for_title: حدد وسام لتستخدمه كعنوانك none: "لا شئ" badge_grouping: @@ -2421,6 +2495,8 @@ ar: custom_message_placeholder: "ادخل رسالتك المخصصة" custom_message_template_forum: "مرحبا. عليك الانضمام إلى هذا المنتدى!" custom_message_template_topic: "مرحبا. أظن أن هذا الموضوع سيسعدك!" + safe_mode: + enabled: "الوضع الامن مفعل، لكي تخرج من الوضع الامن أغلق نافذة المتصفح" admin_js: type_to_filter: "اكتب للتّرشيح..." admin: @@ -2455,6 +2531,8 @@ ar: backups: "النسخ الاحتياطية" traffic_short: "المرور" traffic: "طلبات تطبيقات الويب" + page_views: "زيارات الصفحة" + page_views_short: "زيارات الصفحة" show_traffic_report: "عرض تقرير مرور مفصل" reports: today: "اليوم" @@ -2601,10 +2679,37 @@ ar: all_users: "جميع المستخدمين" note_html: "حافظ على سرية هذا المفتاح، اي شخص يحصل عليه يستطيع انشاء مواضيع باسم اي مستخدم اخر" web_hooks: + create: "أنشئ" + save: "حفظ" + destroy: "مسح" + description: "الوصف" + controls: "التحكم" + content_type: "نوع المحتوى" + secret: "سر" + wildcard_event: "ارسل إلى أى شئ." + active: "فعل" + user_event: + name: "أحداث المستخدم" + details: "عندما مستخدم ينشئ، يؤكد او يُحدث." + delivery_status: + title: "حالة التوصيل" + inactive: "قيد التفعيل" + failed: "فشل" + successful: "نجاح" events: + none: "لا يوجد أحداث مماثلة" + request: "طلب" + response: "الرد" + headers: "الرؤوس" + body: "المحتوى" go_list: "اذهب إلى القائمة" go_events: "اذهب إلى الحدث" + ping: "سرعة الاتصال" + status: "كود الوضع" event_id: "الرقم التعريفي" + timestamp: "أنشئ" + completion: "وقت الاكتمال" + actions: "الإجراءات" plugins: title: "الإضافات" installed: "الإضافات المثبتة" @@ -2621,7 +2726,7 @@ ar: title: "النسخ الاحتياطية" menu: backups: "النسخ الاحتياطية" - logs: "Logs" + logs: "السجلات" none: "لا نسخ احتياطية." read_only: enable: @@ -2782,10 +2887,14 @@ ar: delivery_method: "طريقة التسليم" preview_digest_desc: "معاينة محتوى رسائل البريد الإلكتروني الملخص المرسلة للأعضاء الغير متاحين." refresh: "تحديث" + send_digest_label: "ارسل النتائج إلى:" + send_digest: "أرسل" + sending_email: "يرسل رسالة إلكترونية..." format: "التنسيق" html: "html" text: "نص" last_seen_user: "آخر مستخدم تواجد:" + no_result: "لا نتائج وجدت فى الخلاصة." reply_key: "مفتاح الرد" skipped_reason: "تجاوز السبب" incoming_emails: @@ -2877,10 +2986,17 @@ ar: revoke_admin: "سحب الصلاحيات الادارية" grant_moderation: "عين كمشرف" revoke_moderation: "سحب صلاحيات المشرف" - backup_operation: "عمليه النسخ الاحتياطي" + backup_create: "أنشئ نسخة احتياطية" deleted_tag: "علامة وصفية محذوفة" renamed_tag: "اعادة تسمية العلامة الوصفية" revoke_email: "حذف البريد الالكتروني" + lock_trust_level: "قفل مستوى الثقة" + unlock_trust_level: "فتح مستوى الثقة " + activate_user: "نشط امستخدم" + deactivate_user: "عطل المستخدم" + change_readonly_mode: "غير وضع القراءة فقط" + backup_download: "حَمل النسخة الاحتياطية" + backup_destroy: "دمر النسخة الاحتياطية" screened_emails: title: "عناوين بريد إلكتروني محجوبة." description: "عندما يحاول أحدهم إنشاء حساب جديد، ستُفحص عناوين البريد الإلكتروني وسيُمنع التسجيل إن تطابق إحداها، أو أن يُتّخذ أي إجراء آخر." @@ -3005,6 +3121,7 @@ ar: refresh_browsers_message: "الرسالة أُرسلت إلى كل الأعضاء!" show_public_profile: "عرض الملف العام." impersonate: 'انتحال شخصية' + action_logs: "سجلات الاجراء" ip_lookup: "جدول \"IP\"" log_out: "تسجيل الخروج" logged_out: "أخرجنا العضو من كل أجهزته" @@ -3203,6 +3320,7 @@ ar: user_preferences: "تفضيلات العضو" tags: "الوسوم" search: "البحث" + groups: "مجموعات" badges: title: الشارات new_badge: شعار جديد @@ -3332,11 +3450,11 @@ ar: quit: "ربما لاحقا" staff_count: zero: "شركتك لديها %{count} من الموظفين" - one: "شركتك لديها 1 موظف فقط" - two: "شركتك لديها %{count} من الموظفين" - few: "شركتك لديها %{count} من الموظفين" - many: "شركتك لديها %{count} من الموظفين" - other: "شركتك لديها %{count} من الموظفين" + one: "مجموعتك لديها 1 موظف فقط" + two: "مجموعتك لديها %{count} من الموظفين" + few: "مجموعتك لديها %{count} من الموظفين" + many: "مجموعتك لديها %{count} من الموظفين" + other: "مجموعتك لديها %{count} من الموظفين" invites: add_user: "أضف" none_added: "لم تقم بدعوة أي موظفين. هل أنت متأكد انك تريد المتابعة؟" diff --git a/config/locales/client.bs_BA.yml b/config/locales/client.bs_BA.yml index 3b7b069119..efec736c69 100644 --- a/config/locales/client.bs_BA.yml +++ b/config/locales/client.bs_BA.yml @@ -139,6 +139,7 @@ bs_BA: us_east_1: "SAD Istok (Sjeverna Virdžinija)" us_west_1: "SAD Zapad (Sjeverna Kalifornija)" us_west_2: "SAD Zapad (Oregon)" + us_gov_west_1: "AWS GovCloud (US)" eu_west_1: "EU (Irska)" eu_central_1: "EU (Frankfurt)" ap_southeast_1: "Azija Pacifik (Singapur)" @@ -307,7 +308,7 @@ bs_BA: likes_given: "Dato" likes_received: "Primljeno" topics_entered: "Pregledano" - topics_entered_long: "Pregledano tema" + topics_entered_long: "Pregledano Tema" time_read: "Pročitano puta" topic_count: "Teme" topic_count_long: "Kreirano Temi" @@ -584,6 +585,8 @@ bs_BA: error: "(greška)" action: "Pošalji Email za Resetovanje Šifre" set_password: "Namjesti Šifru" + choose_new: "Zaberite novu šifru" + choose: "Izaberite šifru" change_about: title: "Promjeni o Meni" error: "Desila se greška prilikom promjene." @@ -634,13 +637,11 @@ bs_BA: instructions: "unikatno, bez tipke praznog prostora, kratko" short_instructions: "Ljudi vas mogu spomenuti preko @{{username}}." available: "Vaš nadimak je dostupan." - global_match: "Email već postoji kao član foruma." - global_mismatch: "Već ste registrovani. Probajte {{suggestion}}?" not_available: "Nije dostupan. Pokušaj {{suggestion}}?" + not_available_no_suggestion: "Nedostupno" too_short: "Vaš nadimak je prekratak." too_long: "Vaš nadima je predugačak." checking: "Provjeravamo dostupnost..." - enter_email: 'Nadimak nađen. Unesite vaš email.' prefilled: "Email je registrovan na ovaj nadimak." locale: title: "Interface language" @@ -735,10 +736,8 @@ bs_BA: link_generated: "Link pozivnice je uspješno generisan!" valid_for: "Link pozvinice je validan jedino za ovu e-mail adresu: %{email}" bulk_invite: - none: "Još uvijek niste ovdje pozvali nikoga. Možete slati individualne pozivnice, ili pozvati mnogo ljudi od jednom koristeći se dizanjem CSV datoteke." text: "Bulk Invite from File" success: "File uploaded successfully, you will be notified shortly with progress." - error: "Neuspješno, datoteka bi trebala biti u .csv formatu." password: title: "Šifra" too_short: "Vaša šifra je prekratka." @@ -994,6 +993,7 @@ bs_BA: link_description: "ubaci opis linka" link_dialog_title: "Unesi Link" link_optional_text: "naslov neobavezan" + link_url_placeholder: "http://example.com" quote_title: "Blok Citat" quote_text: "citat u bloku" code_title: "Formatiran Tekst" @@ -1004,11 +1004,13 @@ bs_BA: olist_title: "Numbered List" ulist_title: "Bulleted List" list_item: "List item" + heading_label: "H" heading_title: "Naslov" heading_text: "Naslov" hr_title: "Horizontalna Crta" help: "Markdown Editing Help" toggler: "sakrij ili pokaži komposer" + modal_ok: "OK" modal_cancel: "Otkaži" cant_send_pm: "Neuspješno, ne možete slati poruke ka %{username}." yourself_confirm: @@ -1315,12 +1317,6 @@ bs_BA: pin_globally: "Okači temu globalno" make_banner: "Banner tema" remove_banner: "Odstrani Banner temu" - reply: - post: - title: 'Odgovori' - topic: - title: 'Odgovori' - help: 'odpočni odgovor na ovu temu' 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" @@ -1487,13 +1483,10 @@ bs_BA: 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)' diff --git a/config/locales/client.cs.yml b/config/locales/client.cs.yml index 9f69874786..3d172de817 100644 --- a/config/locales/client.cs.yml +++ b/config/locales/client.cs.yml @@ -353,14 +353,31 @@ cs: add_user_to_group: "Přidat uživatele" remove_user_from_group: "Odebrat uživatele" groups: + logs: + title: "Logy" + when: "Když" + action: "Akce" + target_user: "Cílový uživatel" + subject: "Předmět" + details: "Detail" + from: "Od" + to: "Komu" + edit: + title: 'Editovat skupinu' + full_name: 'Celé jméno' add: "Přidat" + bio: "O skupině" selector_placeholder: "Přidat členy" owner: "Vlastník" visible: "Skupina je viditelná pro všechny uživatele" + index: + title: "Skupiny" + empty: "Žádné viditelné skupiny." title: one: "skupina" few: "skupiny" other: "skupiny" + activity: "Aktivita" members: "Členové" topics: "Témata" posts: "Odpovědi" @@ -392,6 +409,8 @@ cs: muted: title: "Ztišený" description: "Nikdy nedostanete oznámení o nových tématech v této skupině." + flair_preview_icon: "Náhled ikony" + flair_preview_image: "Náhled obrázku" user_action_groups: '1': "Rozdaných 'líbí se'" '2': "Obdržených 'líbí se'" @@ -455,6 +474,8 @@ cs: profile: "Profil" mute: "Ignorovat" edit: "Upravit nastavení" + download_archive: + button_text: "Download mých příspěvků" new_private_message: "Nová zpráva" private_message: "Zpráva" private_messages: "Zprávy" @@ -593,7 +614,6 @@ cs: instructions: "Obrázky pozadí jsou zarovnány a mají výchozí šířku 590px. " email: title: "Emailová adresa" - instructions: "Nebude zveřejněno" ok: "Pro potvrzení vám pošleme email." invalid: "Zadejte prosím správnou emailovou adresu" authenticated: "Vaše emailová adresa byla autorizována přes službu {{provider}}." @@ -604,27 +624,24 @@ cs: other: "Email vám zašleme pouze pokud jste se neukázali během posledních {{count}} minut." name: title: "Jméno" - instructions: "Celé jméno (volitelně)" + instructions: "vaše celé jméno (nepovinné)" instructions_required: "Vaše celé jméno" too_short: "Máte moc krátké jméno" ok: "Parádní jméno" username: title: "Uživatelské jméno" - instructions: "Unikátní, bez mezer, radši kratší" short_instructions: "Lidé vás mohou zmínit pomocí @{{username}}" available: "Vaše uživatelské jméno je volné" - global_match: "Email odpovídá registrovanému uživatelskému jménu." - global_mismatch: "již zaregistrováno. Co třeba {{suggestion}}?" not_available: "Není k dispozici. Co třeba {{suggestion}}?" too_short: "Uživatelské jméno je moc krátké" too_long: "Uživatelské jméno je moc dlouhé" checking: "Zjišťuji, zda je uživatelské jméno volné..." - enter_email: 'Uživatelské jméno nalezeno; vyplňte propojený email' prefilled: "Email je propojen s tímto uživatelským jménem" locale: title: "Jazyk rozhraní" instructions: "Jazyk uživatelského prostředí. Změna obnoví stránku." default: "(výchozí)" + any: "jakýkoliv" password_confirmation: title: "Heslo znovu" last_posted: "Poslední příspěvek" @@ -724,7 +741,6 @@ cs: same_as_username: "Vaše heslo je stejné jako Vaše uživatelské jméno." same_as_email: "Vaše heslo je stejné jako váš e-mail." ok: "Vaše heslo je v pořádku." - instructions: "Alespo %{count} znaků." summary: title: "Souhrn" stats: "Statistiky" @@ -932,6 +948,9 @@ cs: github: title: "přes GitHub" message: "Autentizuji přes GitHub (ujistěte se, že nemáte zablokovaná popup okna)" + invites: + accept_title: "Pozvání" + invited_by: "Pozvání od:" emoji_set: apple_international: "Apple/Mezinárodní" google: "Google" @@ -1378,9 +1397,6 @@ cs: pin_globally: "Připnout téma globálně" make_banner: "Banner Topic" remove_banner: "Remove Banner Topic" - reply: - title: 'Odpovědět' - help: 'začněte psát odpověď na toto téma' clear_pin: title: "Odstranit připnutí" help: "Odebere připnutí tohoto tématu, takže se již nebude zobrazovat na vrcholu seznamu témat" @@ -1562,8 +1578,6 @@ cs: via_email: "tento příspěvek byl přijat přes email" via_auto_generated_email: "tento příspěvek byl přijat přes automaticky generovaný email" whisper: "tento příspěvek je soukromé šeptání pro moderátory" - wiki: - about: "toto je wiki příspěvek" archetypes: save: 'Uložit nastavení' few_likes_left: "Díky za šíření lásky! Zbývá ti pro dnešek už jen několi \"líbí se\"." @@ -1714,13 +1728,10 @@ cs: displays: inline: title: "Vykreslený příspěvek se změnami zobrazenými v textu" - button: ' HTML' side_by_side: title: "Rozdíli mezi vykreslenými příspěveky vedle sebe" - button: ' HTML' side_by_side_markdown: title: "Show the raw source diffs side-by-side" - button: ' Kód' category: can: 'smí… ' none: '(bez kategorie)' @@ -2640,7 +2651,6 @@ cs: revoke_admin: "odebrat administrátorská práva" grant_moderation: "udělit moderátorská práva" revoke_moderation: "odebrat moderátorská práva" - backup_operation: "zálohování" deleted_tag: "smazaný štítek" renamed_tag: "přejmenovaný štítek" revoke_email: "Odebrat email" diff --git a/config/locales/client.da.yml b/config/locales/client.da.yml index df1ab54745..0ce1caef54 100644 --- a/config/locales/client.da.yml +++ b/config/locales/client.da.yml @@ -214,7 +214,7 @@ da: like_count: "Synes godt om" topic_count: "Emner" post_count: "Indlæg" - user_count: "Nye brugere" + user_count: "Brugere" active_user_count: "Aktive brugere" contact: "Kontakt os" contact_info: "I tilfælde af kritiske situationer eller vigtige spørgsmål angående denne side, kontakt os venligst på %{contact_info}." @@ -334,6 +334,19 @@ da: when: "Når" action: "Handling" acting_user: "Fungerende bruger" + subject: "Emne" + details: "Detaljer" + from: "Fra" + to: "Til" + edit: + title: 'Redigér Gruppe' + full_name: 'Fulde Navn' + add_members: "Tilføj Medlemmer" + delete_member_confirm: "Fjern '%{username}' fra '%{group}' gruppen?" + request_membership_pm: + title: "Medlemskabsanmodning" + body: "Jeg vil gerne ansøge om medlemskab i @%{groupName}." + name_placeholder: "Gruppe navn, ingen mellemrum, samme som reglen for brugernavn" add: "Tilføj" selector_placeholder: "Tilføj medlemmer" owner: "ejer" @@ -570,7 +583,6 @@ da: instructions: "Baggrunds billeder vil blive centreret og have en standard bredde på 590px." email: title: "E-mail" - instructions: "Aldrig vist offentligt" ok: "Vi vil sende dig en bekræftelses email" invalid: "Indtast venligst en gyldig email adresse" authenticated: "Din email er blevet bekræftet af {{provider}}" @@ -580,22 +592,17 @@ da: other: "Vi sender dig kun email. hvis vi ikke har set dig i de sidste {{count}} minutter." name: title: "Navn" - instructions: "Dit fulde navn (valgfrit)" instructions_required: "Dit fulde navn" too_short: "Dit navn er for kort" ok: "Dit navn ser fint ud" username: title: "Brugernavn" - instructions: "Unikt, ingen mellemrum, kort" short_instructions: "Folk kan benævne dig som @{{username}}" available: "Dit brugernavn er tilgængeligt" - global_match: "E-mail svarer til det registrerede brugernavn" - global_mismatch: "Allerede registreret. Prøv {{suggestion}}?" not_available: "Ikke ledigt. Prøv {{suggestion}}?" too_short: "Dit brugernavn er for kort" too_long: "Dit brugernavn er for langt" checking: "Kontrollerer om brugernavnet er ledigt…" - enter_email: 'Brugernavn fundet; indtast tilsvarende e-mail' prefilled: "E-mail svarer til dette registrerede brugernavn" locale: title: "sprog" @@ -698,7 +705,6 @@ da: same_as_username: "Dit password er det samme som dit brugernavn." same_as_email: "Dit password er det samme som din email adresse." ok: "Din adgangskode ser fin ud." - instructions: "Mindst %{count} tegn" summary: title: "Statistik" stats: "Statistik" @@ -1275,9 +1281,6 @@ da: pin_globally: "Fastgør emne globalt" make_banner: "Gør emnet til en banner" remove_banner: "Emnet skal ikke være banner længere" - reply: - title: 'Svar' - help: 'begynd at skrive et svar til dette emne' clear_pin: title: "Fjern tegnestift" help: "Fjern tegnestiften på dette emne så det ikke længere vises i toppen af emnelisten" @@ -1443,8 +1446,6 @@ da: via_email: "dette indlæg blev oprettet via email" via_auto_generated_email: "dette indlæg blev oprettet af en auto genereret e-mail" whisper: "dette indlæg er en privat hvisken for moderatorer" - wiki: - about: "dette indlæg er en wiki" archetypes: save: 'Gem indstillinger' few_likes_left: "Tak fordi du liker! Du har kun få likes tilbage i dag." @@ -1575,13 +1576,10 @@ da: displays: inline: title: "Vis det renderede output med tilføjelser og ændringer indlejret" - button: ' HTML' side_by_side: title: "Vis de renderede output-diffs ved siden af hinanden" - button: ' HTML' side_by_side_markdown: title: "Vis forskellen på den rå kildekode side om side" - button: ' Kildekode' category: can: 'kan… ' none: '(ingen kategori)' @@ -2389,7 +2387,6 @@ da: revoke_admin: "fjern admin" grant_moderation: "tildel moderation" revoke_moderation: "fjern moderation" - backup_operation: "backup operation" deleted_tag: "slettet tag" renamed_tag: "omdøbt tag" revoke_email: "tilbagekald email" diff --git a/config/locales/client.de.yml b/config/locales/client.de.yml index 8e00731bde..ab1b365875 100644 --- a/config/locales/client.de.yml +++ b/config/locales/client.de.yml @@ -589,6 +589,8 @@ de: error: "(Fehler)" action: "Sende eine E-Mail zum Zurücksetzen des Passworts" set_password: "Passwort ändern" + choose_new: "Wähle ein neues Passwort" + choose: "Wähle ein Passwort" change_about: title: "„Über mich“ ändern" error: "Beim Ändern dieses Wertes ist ein Fehler aufgetreten." @@ -623,7 +625,7 @@ de: instructions: "Hintergrundbilder werden zentriert und haben eine Standardbreite von 590px." email: title: "E-Mail" - instructions: "Wird niemals öffentlich angezeigt" + instructions: "wird nicht öffentlich angezeigt" ok: "Wir senden dir zur Bestätigung eine E-Mail" invalid: "Bitte gib eine gültige E-Mail-Adresse ein" authenticated: "Deine E-Mail-Adresse wurde von {{provider}} bestätigt" @@ -633,22 +635,20 @@ de: other: "Wir werden dir nur dann eine E-Mail senden, wenn wir dich nicht innerhalb der letzten {{count}} Minuten gesehen haben." name: title: "Name" - instructions: "Dein vollständiger Name (optional)" + instructions: "dein vollständiger Name (optional)" instructions_required: "Dein vollständiger Name" too_short: "Dein Name ist zu kurz" ok: "Dein Name sieht in Ordnung aus" username: title: "Benutzername" - instructions: "Eindeutig, keine Leerzeichen, kurz" + instructions: "einzigartig, keine Leerzeichen, kurz" short_instructions: "Leute können dich mit @{{username}} erwähnen" available: "Dein Benutzername ist verfügbar" - global_match: "E-Mail-Adresse entspricht dem registrierten Benutzernamen" - global_mismatch: "Bereits registriert. Wie wäre es mit {{suggestion}}?" not_available: "Nicht verfügbar. Wie wäre es mit {{suggestion}}?" + not_available_no_suggestion: "Nicht verfügbar" too_short: "Dein Benutzername ist zu kurz" too_long: "Dein Benutzername ist zu lang" checking: "Verfügbarkeit wird geprüft…" - enter_email: 'Benutzername gefunden; gib die zugehörige E-Mail-Adresse ein' prefilled: "E-Mail-Adresse entspricht diesem registrierten Benutzernamen" locale: title: "Oberflächensprache" @@ -746,10 +746,10 @@ de: link_generated: "Der Einladungslink wurde erfolgreich generiert!" valid_for: "Der Einladungslink ist nur für die Adresse %{email} gültig" bulk_invite: - none: "Du hast hier noch niemanden eingeladen. Du kannst einzelne Einladungen versenden, oder eine Reihe von Leuten auf einmal einladen, indem du eine CSV-Datei hochlädst." + none: "Du hast noch niemanden eingeladen. Verschicke eine individuelle Einladung, oder lade gleich mehrere Leute auf einmal durch Hochladen einer CSV-Dateiein." text: "Masseneinladung aus Datei" success: "Die Datei wurde erfolgreich hochgeladen. Du erhältst eine Nachricht, sobald der Vorgang abgeschlossen ist." - error: "Entschuldige, die Datei sollte im CSV-Format sein." + error: "Die Datei sollte im CSV Format vorliegen." password: title: "Passwort" too_short: "Dein Passwort ist zu kurz." @@ -757,7 +757,7 @@ de: same_as_username: "Dein Passwort entspricht deinem Benutzernamen." same_as_email: "Dein Passwort entspricht deiner E-Mail-Adresse." ok: "Dein Passwort sieht in Ordnung aus." - instructions: "Mindestens %{count} Zeichen." + instructions: "mindestens %{count} Zeichen" summary: title: "Übersicht" stats: "Statistiken" @@ -939,6 +939,7 @@ de: to_continue: "Melde dich bitte an" preferences: "Du musst angemeldet sein, um deine Benutzereinstellungen bearbeiten zu können." forgot: "Ich kann mich nicht an meine Zugangsdaten erinnern" + not_approved: "Dein Benutzerkonto wurde noch nicht genehmigt. Du wirst per E-Mail benachrichtigt, sobald du dich anmelden kannst." google: title: "mit Google" message: "Authentifiziere mit Google (stelle sicher, dass keine Pop-up-Blocker aktiviert sind)" @@ -960,6 +961,16 @@ de: github: title: "mit GitHub" message: "Authentifiziere mit GitHub (stelle sicher, dass keine Pop-up-Blocker aktiviert sind)" + invites: + accept_title: "Einladung" + welcome_to: "Willkommen bei %{site_name}!" + invited_by: "Du wurdest eingeladen von: " + your_email: "Die E-Mail-Adresse deines Benutzerkontos ist %{email}" + accept_invite: "Einladung annehmen" + success: "Dein Konto wurde erstellt und du bist jetzt angemeldet." + password_label: "Passwort setzen (optional)" + password_reset: + continue: "Weiter zu %{site_name}" emoji_set: apple_international: "Apple" google: "Google" @@ -1004,7 +1015,7 @@ de: post_length: "Beitrag muss mindestens {{min}} Zeichen lang sein" try_like: 'Hast du schon die Schaltfläche ausprobiert?' category_missing: "Du musst eine Kategorie auswählen" - save_edit: "Änderungen speichern" + save_edit: "Speichern" reply_original: "Auf das ursprünglichen Thema antworten" reply_here: "Hier antworten" reply: "Antworten" @@ -1403,10 +1414,8 @@ de: make_banner: "Ankündigungsbanner" remove_banner: "Ankündigungsbanner entfernen" reply: - post: - title: 'Antworten' - topic: - title: 'Antworten' + title: 'Antworten' + help: 'beginne damit eine Antwort auf dieses Thema zu verfassen' clear_pin: title: "Loslösen" help: "Dieses Thema von der Themenliste loslösen, sodass es nicht mehr am Anfang der Liste steht." @@ -1535,6 +1544,7 @@ de: wiki_last_edited_on: "Wiki zuletzt bearbeitet am" last_edited_on: "Beitrag zuletzt bearbeitet am" reply_as_new_topic: "Mit verknüpftem Thema antworten" + reply_as_new_private_message: "Antworte als neue Nachricht an die gleichen Empfänger" continue_discussion: "Fortsetzung der Diskussion von {{postLink}}:" follow_quote: "springe zum zitierten Beitrag" show_full: "Zeige ganzen Beitrag" @@ -1706,17 +1716,19 @@ de: hide: "Überarbeitung verstecken" show: "Überarbeitung anzeigen" revert: "Diese Überarbeitung wiederherstellen" + edit_wiki: "Bearbeite Wiki" + edit_post: "Bearbeite Beitrag" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: title: "Zeige die Änderungen inline an" - button: ' HTML' + button: 'HTML' side_by_side: title: "Zeige die Änderungen nebeneinander an" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "Zeige die Originaltexte zum Vergleich nebeneinander an" - button: ' Original' + button: 'Quelltext' category: can: 'kann… ' none: '(keine Kategorie)' @@ -2688,6 +2700,7 @@ de: deactivate_user: "Benutzer deaktivieren" change_readonly_mode: "Nur-Lesen-Modus ändern" backup_download: "Backup herunterladen" + backup_destroy: "Backup löschen" screened_emails: title: "Gefilterte E-Mails" description: "Wenn jemand ein Konto erstellt, werden die folgenden E-Mail-Adressen überprüft und es wird die Anmeldung blockiert oder eine andere Aktion ausgeführt." @@ -2696,7 +2709,7 @@ de: allow: "Erlauben" screened_urls: title: "Gefilterte URLs" - description: "Die aufgelisteten URLs wurden in Beiträgen verwendet, die von Spammen erstellt wurden." + description: "Die aufgelisteten URLs wurden in Beiträgen verwendet, die von Spammern erstellt wurden." url: "URL" domain: "Domain" screened_ips: diff --git a/config/locales/client.el.yml b/config/locales/client.el.yml new file mode 100644 index 0000000000..95f2f97fc0 --- /dev/null +++ b/config/locales/client.el.yml @@ -0,0 +1,3149 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +el: + js: + number: + format: + separator: "." + delimiter: "," + human: + storage_units: + format: '%n %u' + units: + byte: + one: Byte + other: Byte + gb: GB + kb: KB + mb: MB + tb: TB + short: + thousands: "{{number}}k" + millions: "{{number}}M" + dates: + time: "ΗΗ:mm" + timeline_date: "MMM YYYY" + long_no_year: "DD MMM HH:mm" + long_no_year_no_time: "DD MMM" + full_no_year_no_time: "Do MMMM" + long_with_year: "DD MMM YYYY h:mm a" + long_with_year_no_time: "D, MMM YYYY" + full_with_year_no_time: "Do MMMM, YYYY" + long_date_with_year: "DD, MMM 'YY HH:mm" + long_date_without_year: "MMM D, LT" + long_date_with_year_without_time: "D MMM, 'YY" + long_date_without_year_with_linebreak: "MMM D
    LT" + long_date_with_year_with_linebreak: "MMM D, 'YY
    LT" + wrap_ago: "%{date} πριν" + tiny: + half_a_minute: "< 1λ" + less_than_x_seconds: + one: "< 1δ" + other: "< %{count}δ" + x_seconds: + one: "1δ" + other: "%{count}δ" + x_minutes: + one: "1λ" + other: "%{count}λ" + about_x_hours: + one: "1ώ" + other: "%{count}ώ" + x_days: + one: "1η" + other: "%{count}η" + about_x_years: + one: "1χ" + other: "%{count}έ" + over_x_years: + one: "> 1χ" + other: "> %{count}έ" + almost_x_years: + one: "1χ" + other: "%{count}έ" + date_month: "DD ΜΜΜ" + date_year: "ΜΜΜ 'ΕΕ" + medium: + x_minutes: + one: "1 λεπτό" + other: "%{count} λεπτά" + x_hours: + one: "1 ώρα" + other: "%{count} ώρες" + x_days: + one: "1 ημέρα" + other: "%{count} ημέρες" + date_year: "ΜΜΜ Η, 'ΕΕ" + medium_with_ago: + x_minutes: + one: "πριν από 1 λεπτό " + other: "πριν από %{count} λεπτά" + x_hours: + one: "πριν από 1 ώρα" + other: "πριν από %{count} ώρες" + x_days: + one: "πριν από 1 ημέρα" + other: "πριν από %{count} ημέρες" + later: + x_days: + one: "1 μέρα μετά" + other: "%{count} μέρες μετά" + x_months: + one: "ένα μήνα μετά" + other: "%{count} μήνες μετά" + x_years: + one: "ενα χρόνο μετά" + other: "%{count} χρόνια μετά" + previous_month: 'Προηγούμενος μήνας' + next_month: 'Επόμενος μήνας' + share: + topic: 'κοινοποίησε έναν σύνδεσμο προς αυτό το νήμα' + post: 'Ανάρτηση #%{postNumber}' + close: 'κλείσιμο' + twitter: 'κοινοποίησε τον σύνδεσμο στο Twitter' + facebook: 'κοινοποίησε τον σύνδεσμο στο Facebook' + google+: 'κοινοποίησε τον σύνδεσμο στο Google+' + email: 'στείλε αυτόν τον σύνδεσμο με ένα μήνυμα ηλεκτρονικού ταχυδρομείου' + action_codes: + public_topic: "έκανε το θέμα δημόσιο στις ${when}" + private_topic: "έκανε το θέμα ιδιωτικό στις %{when}" + split_topic: "διαχώρισε αυτό το θέμα στις %{when}" + invited_user: "προσκάλεσε τον χρήστη %{who} στις %{when}" + invited_group: "προσκάλεσε τον χρήστη %{who} στις %{when}" + removed_user: "αφαίρεσε τον χρήστη %{who} στις %{when}" + removed_group: "αφαίρεσε τον χρήστη %{who} στις %{when}" + autoclosed: + enabled: 'έκλεισε στις %{when}' + disabled: 'άνοιξε στις %{when}' + closed: + enabled: 'έκλεισε στις %{when}' + disabled: 'άνοιξε στις %{when}' + archived: + enabled: 'αρχειοθετήθηκε στις %{when}' + disabled: 'βγήκε από το αρχείο στις %{when}' + pinned: + enabled: 'καρφιτσώθηκε στις %{when}' + disabled: 'ξεκαρφιτσώθηκε στις %{when}' + pinned_globally: + enabled: 'καρφιτσώθηκε παντού %{when}' + disabled: 'ξεκαρφιτσώθηκε %{when}' + visible: + enabled: 'καταχωρήθηκε %{when}' + disabled: 'μη καταχωρημένο %{when}' + topic_admin_menu: "Διαχείριση νήματος" + wizard_required: "είναι ωρα να διαμορφώσετε το φόρουμ σας Ξεκινήστε τον οδηγό εγκατάστασης" + emails_are_disabled: "Τα εξερχόμενα μηνύματα ηλεκτρονικού ταχυδρομείου έχουν απενεργοποιηθεί από κάποιον διαχειριστή. Δε θα σταλεί κανένα μήνυμα ηλεκτρονικού ταχυδρομείου." + bootstrap_mode_enabled: "Για να κάνουμε την έναρξη της νέα σας ιστοσελίδας ευκολότερη, βρίσκεστε σε λειτουργία εκκίνησης. Όλοι οι νέοι χρήστες θα χορηγούνται επίπεδο εμπιστοσύνης 1 και θα έχουν τις ενημερώσεις από καθημερινή συνοπτική συλλογή email ενεργοποιημένες. Αυτό θα απενεργοποιηθεί αυτόματα όταν ο συνολικός αριθμός των χρηστών ξεπεράσει τους %{min_users} χρήστες." + bootstrap_mode_disabled: "Η λειτουργία εκκίνησης θα απενεργοποιηθεί αυτόματα στις επόμενες 24 ώρες." + s3: + regions: + us_east_1: "Ανατολικές ΗΠΑ (Β. Βιρτζίνια)" + us_west_1: "Δυτικές ΗΠΑ (Β. Καλιφόρνια)" + us_west_2: "Δυτικές ΗΠΑ (Όρεγκον)" + us_gov_west_1: "AWS GovCloud (ΗΠΑ)" + eu_west_1: "ΕΕ (Ιρλανδία)" + eu_central_1: "ΕΕ (Φρανκφούρτη)" + ap_southeast_1: "Ασία-Ειρηνικός (Σιγκαπούρη)" + ap_southeast_2: "Ασία-Ειρηνικός (Σίδνεϊ)" + ap_south_1: "Ασία - Ειρηνικός (Μομβάη)" + ap_northeast_1: "Ασία-Ειρηνικός (Τόκιο)" + ap_northeast_2: "Ασία-Ειρηνικός (Σεούλ)" + sa_east_1: "Ασία-Ειρηνικός (Σάο Πάολο)" + cn_north_1: "Κίνα(Πεκίνο)" + edit: 'αλλαγή του τίτλου και την κατηγορίας του νήματος' + not_implemented: "Λυπούμαστε! Αυτή η λειτουργία δεν έχει υλοποιηθεί ακόμα." + no_value: "Όχι" + yes_value: "Ναι" + generic_error: "Λυπούμαστε, προέκυψε κάποιο σφάλμα." + generic_error_with_reason: "Προέκυψε ένα σφάλμα: %{error}" + sign_up: "Εγγραφείτε" + log_in: "Συνδεθείτε" + age: "Ηλικία" + joined: "Έγινε μέλος" + admin_title: "Διαχειριστής" + flags_title: "Σημάνσεις" + show_more: "περισσότερα" + show_help: "επιλογές" + links: "Σύνδεσμοι" + links_lowercase: + one: "Σύνδεσμος" + other: "Σύνδεσμοι" + faq: "Συχνές ερωτήσεις" + guidelines: "Οδηγίες" + privacy_policy: "Πολιτική προστασίας δεδομένων" + privacy: "Προστασία δεδομένων" + terms_of_service: "Όροι χρήσης" + mobile_view: "Προβολή για κινητό" + desktop_view: "Προβολή για σταθερό υπολογιστή" + you: "Εσύ" + or: "ή" + now: "μόλις τώρα" + read_more: 'διάβασε περισσότερα' + more: "περισσότερα" + less: "λιγότερα" + never: "ποτέ" + every_30_minutes: "κάθε 30 λεπτά" + every_hour: "κάθε ώρα" + daily: "καθημερινά" + weekly: "κάθε εβδομάδα" + every_two_weeks: "κάθε 2 εβδομάδες" + every_three_days: "κάθε τρεις μέρες" + max_of_count: "μέγιστο {{count}}" + alternation: "ή" + character_count: + one: "{{count}} χαρακτήρα" + other: "{{count}} χαρακτήρες" + suggested_topics: + title: "Προτεινόμενα νήματα" + pm_title: "Προτεινόμενα μηνύματα" + about: + simple_title: "Σχετικά" + title: "Σχετικά με %{title}" + stats: "Στατιστικές ιστοσελίδας" + our_admins: "Οι διαχειριστές μας" + our_moderators: "Οι συντονιστές μας" + stat: + all_time: "Συνολικά" + last_7_days: "Τελευταίες 7 ημέρες" + last_30_days: "Τελευταίες 30 ημέρες" + like_count: "«Μου αρέσει»" + topic_count: "Νήματα" + post_count: "Αναρτήσεις" + user_count: "Χρήστες" + active_user_count: "Ενεργός χρήστης" + contact: "Επικοινώνησε μαζί μας" + contact_info: "Σε περίπτωση που προκύψει κάποιο κρίσιμο πρόβλημα ή κάποιο επείγον θέμα που αφορά αυτόν τον ιστότοπο, παρακαλούμε να επικοινωνήσεις μαζί μας στο %{contact_info}." + bookmarked: + title: "Σελιδοδείκτης" + clear_bookmarks: "Διαγραφή σελιδοδεικτών" + help: + bookmark: "Πάτα εδώ για να μπεί σελιδοδείκτης στην πρώτη ανάρτηση του νήματος." + unbookmark: "Πάτα εδώ να αφαιρεθούν όλοι οι σελιδοδείκτες από αυτό το θέμα." + bookmarks: + not_logged_in: "Λυπούμαστε, για να τοποθετήσεις έναν σελιδοδείκτη θα πρέπει να συνδεθείς πρώτα" + created: "έχεις προσθέσει σελιδοδείκτη σε αυτή την ανάρτηση" + not_bookmarked: "έχεις διαβάσει αυτή την ανάρτηση. Πάτησε για να προστεθεί σελιδοδείκτης" + last_read: "αυτή είναι η τελευταία ανάρτηση που διάβασες. Πάτησε για να προστεθεί σελιδοδείκτης" + remove: "Αφαίρεση σελιδοδείκτη" + confirm_clear: "Είστε σίγουρος ότι θέλετε να σβηστούν όλα τα αγαπημένα από αυτό το θέμα;" + topic_count_latest: + one: "{{count}} νέο ενημερωμένο νήμα" + other: "{{count}} νέα ή ενημερωμένα νήματα." + topic_count_unread: + one: "{{count}} μη αναγνωσμένο νήμα." + other: "{{count}} αδιάβαστα νήματα." + topic_count_new: + one: "{{count}} νέο νήμα." + other: "{{count}} νέα νήματα." + click_to_show: "Κάνε κλικ για να δείς." + preview: "προεπισκόπιση" + cancel: "ακύρωση" + save: "Αποθήκευση αλλαγών" + saving: "Αποθήκευση σε εξέλιξη..." + saved: "Αποθηκεύτηκε!" + upload: "Ανέβασμα" + uploading: "Ανεβαίνει..." + uploading_filename: "Ανέβασμα {{filename}}..." + uploaded: "Ανέβηκε!" + enable: "Ενεργοποίηση" + disable: "Απενεργοποίηση" + undo: "Αναίρεση" + revert: "Επαναφορά" + failed: "Απέτυχε" + switch_to_anon: "Έναρξη κατάστασης ανωνυμίας" + switch_from_anon: "Τερματισμός κατάστασης ανωνυμίας" + banner: + close: "Απομάκρυνε αυτή την εικόνα" + edit: "Επεξεργάσου αυτό το banner >>" + choose_topic: + none_found: "Δεν βρέθηκαν νήματα." + title: + search: "Ψάξε για νήμα με το όνομά του, το url ή το id του:" + placeholder: "δώσε τον τίτλο του νήματος" + queue: + topic: "Νήμα:" + approve: 'Έγκριση' + reject: 'Απόρριψη' + delete_user: 'Διαγραφή χρήστη' + title: "Χρειάζεται έγκριση" + none: "Δεν υπάρχουν αναρτήσεις για έλεγχο." + edit: "Επεξεργασία" + cancel: "Ακύρωση" + view_pending: "προβολή εκκρεμών αναρτήσεων" + has_pending_posts: + one: "Αυτό το θέμα έχει 1 ανάρτηση που αναμένει έγκριση" + other: "Αυτό το θέμα έχει {{count}} αναρτήσεις που αναμένουν έγκριση" + confirm: "Αποθήκευση αλλαγών" + delete_prompt: "Είστε σίγουρος πως θέλετε να διαγράψετε τον/την %{username}? Αυτό θα διαγράψει όλες τους τις αναρτήσεις και θα μπλοκάρει την διεύθυνση ηλεκτρονικού ταχυδρομείου τους και την IP διεύθυνσή τους." + approval: + title: "Η ανάρτηση χρειάζεται έγκριση" + description: "Η νέα σου ανάρτηση καταχωρήθηκε αλλά χρειάζεται να εγκριθεί από έναν συντονιστή. Παρακαλώ περιμένετε." + pending_posts: + one: "Έχεις 1 εκκρεμή ανάρτηση." + other: "Έχετε {{count}} εκκρεμείς αναρτήσεις." + ok: "OK" + user_action: + user_posted_topic: "{{user}} ανάρτησε το νήμα " + you_posted_topic: "Ανάρτησες αυτό το νήμα" + user_replied_to_post: "Ο/Η {{user}} απάντησε στο {{post_number}}" + you_replied_to_post: "Απάντησες στο νήμα {{post_number}}" + user_replied_to_topic: "Ο/Η {{user}} απάντησε στο νήμα" + you_replied_to_topic: "Απάντησες σε αυτό το νήμα" + user_mentioned_user: "Ο/Η {{user}} αναφέρθηκε στον χρήστη {{another_user}}" + user_mentioned_you: "Ο/Η {{user}} αναφέρθηκε σε εσένα" + you_mentioned_user: "Ανέφερες τον χρήστη {{another_user}}" + posted_by_user: "Αναρτήθηκε από τον/την {{user}}" + posted_by_you: "Αναρτήθηκε από εσένα" + sent_by_user: "Στάλθηκε από τον/την {{user}}" + sent_by_you: "Στάλθηκε από εσένα" + directory: + filter_name: "φιλτράρισμα με βάση το όνομα χρήστη" + title: "Χρήστες" + likes_given: "Δόθηκαν" + likes_received: "Λήφθηκαν" + topics_entered: "Προβλήθηκαν" + topics_entered_long: "Θέματα που προβλήθηκαν" + time_read: "Ωρα ανάγνωσης" + topic_count: "Θέματα" + topic_count_long: "Νήματα που δημιουργήθηκαν" + post_count: "Απαντήσεις" + post_count_long: "Απαντήσεις που δημοσιεύθηκαν" + no_results: "Δεν βρέθηκαν αποτελέσματα" + days_visited: "Επισκέψεις" + days_visited_long: "Μέρες επίσκεψης" + posts_read: "Διαβασμένο" + posts_read_long: "Διαβασμένες αναρτήσεις" + total_rows: + one: "1 χειριστής" + other: "%{count} χειριστές" + group_histories: + actions: + change_group_setting: "Αλλαγή ρυθμίσεων ομάδας" + add_user_to_group: "Προσθήκη χρήστη" + remove_user_from_group: "Αφαίρεση χρήστη" + make_user_group_owner: "Κάνε ιδιοκτήτη" + remove_user_as_group_owner: "Απόσυρε ιδιοκτήτη" + groups: + logs: + title: "Αρχεία καταγραφής" + when: "Όταν" + action: "Δράση" + acting_user: "Δραστήριοι χρήστες" + target_user: "Χρήστης στόχος" + subject: "Θέμα" + details: "Λεπτομέρειες" + from: "Από" + to: "Προς" + edit: + title: 'Επεξεργασία ομάδας' + full_name: 'Ονοματεπώνυμο' + add_members: "Προσθήκη μελών" + delete_member_confirm: "Ναι αφαιρεθεί ο/η '%{username}' από την '%{group}' ομάδα;" + request_membership_pm: + title: "Αίτηση μέλους" + body: "Θα ήθελα να κάνω αίτηση για να γίνω μέλος στο @% {groupname}" + name_placeholder: "Όνομα ομάδας, χωρίς κενά, ίδιοι κανόνες με τους κανόνες για το όνομα χρήστη" + public: "'Ολοι οι χρήστες μπορούν να συμετάσχουν/ αποχωρίσουν απο την ομάδα ελεύθερα. (Η ομάδα πρέπει να είναι φανερή)" + empty: + posts: "Δεν υπάρχουν δημοσιεύσεις από μέλη της ομάδας." + members: "Δεν υπάρχουν μέλη σε αυτή την ομάδα." + mentions: "Δεν υπάρχει καμία αναφορά για αυτή την ομάδα." + messages: "Δεν υπάρχουν μηνύματα για αυτή την ομάδα." + topics: "Δεν υπάρχουν θέματα από μέλη της ομάδας." + logs: "Δεν υπάρχουν αρχεία καταγραφής για αυτή την ομάδα." + add: "Προσθήκη" + join: "Συμμετοχή στην ομάδα" + leave: "Απομάκρυνση από την ομάδα" + request: "Αίτημα για συμμετοχή στην ομάδα" + automatic_group: Αυτόματη ομάδα + closed_group: Κλειστή ομάδα + is_group_user: "Είσαι μέλος αυτής της ομάδας" + allow_membership_requests: "Επίτρεψε στους χρήστες να στέλνουν αίτημα στους ιδιοκτήτες των ομάδων για να γίνουν μέλη (Απαιτείται όλοι να είναι ικανοί να αναφέρουν την ομάδα)" + membership: "Ιδιότητα μέλους" + name: "Όνομα" + user_count: "Αριθμός μελών" + bio: "Σχετικά με την ομάδα" + selector_placeholder: "Προσθήκη μελών" + owner: "ιδιοκτήτης" + visible: "Η ομάδα είναι ορατή σε όλους τους χρήστες" + index: + title: "Ομάδες" + empty: "Δεν υπάρχουν ορατές ομάδες." + title: + one: "ομάδα" + other: "ομάδες" + activity: "Δραστηριότητα" + members: "Μέλη" + topics: "Θέματα" + posts: "Αναρτήσεις" + mentions: "Αναφορές" + messages: "Μηνύματα" + alias_levels: + title: "Ποιός μπορεί να στείλει μήνυμα και να @αναφέρει αυτή την ομάδα?" + nobody: "Κανένας" + only_admins: "Μόνο διαχειριστές" + mods_and_admins: "Μόνο συντονιστές και διαχειριστές" + members_mods_and_admins: "Μόνο τα μέλη μιας ομάδας, οι συντονιστές και οι διαχειριστές" + everyone: "Όλοι" + trust_levels: + title: "Επίπεδο εμπιστοσύνης που δίνεται αυτόματα στα μέλη όταν προστίθενται:" + none: "Κανένα" + notifications: + watching: + title: "Παρατηρείται" + description: "Θα λαμβάνεις ειδοποιήσεις για κάθε καινούρια δημοσίευση σε κάθε μήνυμα, και η καταμέτρηση των καινούριων απαντήσεων θα εμφανίζεται." + watching_first_post: + title: "Παρακολούθηση της πρώτης ανάρτησης" + description: "Θα ειδοποιήστε μόνο για την πρώτη ανάρτηση σε κάθε νέο θέμα σε αυτή την ομάδα." + tracking: + title: "Παρακολουθείται" + description: "Θα λαμβάνεις ειδοποιήσεις εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα, και η καταμέτρηση των καινούριων απαντήσεων θα εμφανίζεται." + regular: + title: "Κανονικό" + description: "Θα ειδοποιηθείτε αν κάποιος αναφέρει το @name σας ή σας απαντήσει" + muted: + title: "Σε σιγή" + description: "Δε θα λαμβάνεις ποτέ ειδοποιήσεις για οτιδήποτε σχετικά με τις καινούριες δημοσιεύσεις της ομάδας." + flair_url: "Avatar Flair εικόνα" + flair_url_placeholder: "( προαιρετικό) Εικόνα URL ή Font Awesome κατηγορία " + flair_bg_color: "Avatar Flair χρώμα φόντου" + flair_bg_color_placeholder: "(Προαιρετικό) Τιμή χρώματος Hex" + flair_color: "Avatar Flair χρώμα" + flair_color_placeholder: "(Προαιρετικό) Τιμή χρώματος Hex" + flair_preview_icon: "Προεπισκόπηση εικονίσματος" + flair_preview_image: "Προεπισκόπηση εικόνας" + flair_note: "Σημείωση: Το Flair θα εμφανιστεί μονο για την κύρια ομάδα του χρήστη" + user_action_groups: + '1': "«Μου αρέσει» που έδωσα" + '2': "«Μου αρέσει» που πήρα" + '3': "Σελιδοδείκτες" + '4': "Νήματα" + '5': "Απαντήσεις" + '6': "Αποκρίσεις" + '7': "Αναφορές" + '9': "Παραθέσεις" + '11': "Επεξεργασίες" + '12': "Απεσταλμένα" + '13': "Εισερχόμενα" + '14': "Εκκρεμή" + categories: + all: "όλες οι κατηγορίες" + all_subcategories: "όλα" + no_subcategory: "κανένα" + category: "Κατηγορία" + category_list: "Εμφάνισε τη λίστα κατηγοριών" + reorder: + title: "Επαναταξινόμησε τις κατηγορίες" + title_long: "Αναδιοργάνωση της λίστας κατηγοριών" + fix_order: "Σταθερές θέσεις" + fix_order_tooltip: "Δε έχουν όλες οι κατηγορίες μοναδικό νούμερο θέσης, το οποίο ίσως προκαλέσει αναπάντεχα αποτελέσματα." + save: "Αποθήκευση εντολής" + apply_all: "Εφαρμογή" + position: "Θέση" + posts: "Αναρτήσεις" + topics: "Νήματα" + latest: "Τελευταία νήματα" + latest_by: "τελευταία ανάρτηση από τον/την" + toggle_ordering: "Αλλαγή ταξινόμησης" + subcategories: "Υποκατηγορίες" + topic_sentence: + one: "1 θέμα" + other: "%{count} θέματα" + topic_stat_sentence: + one: "%{count} νέο νήμα στα τελευταία %{unit}." + other: "%{count} νέα νήματα στα τελευταία %{unit}." + ip_lookup: + title: Αναζήτηση διεύθυνσης IP + hostname: Όνομα εξυπηρετητή + location: Διεύθυνση + location_not_found: (άγνωστο) + organisation: Οργάνωση + phone: Τηλέφωνο + other_accounts: "Άλλοι λογαριασμοί με αυτή την IP διεύθυνση:" + delete_other_accounts: "Διαγραφή %{count}" + username: "Όνομα χρήστη" + trust_level: "TL" + read_time: "χρόνος ανάγνωσης" + topics_entered: "νήματα που είδες" + post_count: "# αναρτήσεις" + confirm_delete_other_accounts: "Είσε σίγουρος ότι θέλεις να διαγράψεις αυτούς τους λογαριασμούς;" + user_fields: + none: "(διαλέξτε μία επιλογή)" + user: + said: "{{username}}:" + profile: "Προφίλ" + mute: "Σίγαση" + edit: "Επεξεργασία ρυθμίσεων" + download_archive: + button_text: "Κάνω λήψη των δημοσιεύσεων μου" + confirm: "Είσαι σίγουρος πως θέλεις να κάνεις λήψη των δημοσιεύσεων σου;" + success: "Όταν θα αρχίσει να κατεβαίνει το αρχείο, θα ειδοποιηθείται μέσω μυνήματος μόλις ολοκληρωθεί η διαδικασία." + rate_limit_error: "Μπορείς να κάνεις λήψη των δημοσιεύσεών σου μια φορά την ημέρα, προσπάθησε ξανά αύριο." + new_private_message: "Νέο Μήνυμα" + private_message: "Μήνυμα" + private_messages: "Μηνύματα" + activity_stream: "Δραστηριότητα" + preferences: "Προτιμήσεις" + expand_profile: "Επέκτεινε" + bookmarks: "Σελιδοδείκτες" + bio: "Σχετικά με εμένα" + invited_by: "Προσκλήθηκε από τον/την" + trust_level: "Επίπεδο εμπιστοσύνης" + notifications: "Ειδοποιήσεις" + statistics: "Αναλυτικά στοιχεία" + desktop_notifications: + label: "Ειδοποιήσεις στην επιφάνεια εργασίας" + not_supported: "Οι ειδοποιήσεις δεν υποστηρίζονται από αυτό το πρόγραμμα περιήγησης. Λυπάμαι." + perm_default: "Ενεργοποίησε τις ειδοποιήσεις" + perm_denied_btn: "Η άδεια απορρίφθηκε" + perm_denied_expl: "Απορρίψατε την άδεια για ειδοποιήσεις. Επιτρέψτε τις ειδοποιήσεις μέσω των ρυθμίσεων του φυλλομετρητή σας." + disable: "Απενεργοποίηση ειδοποιήσεων" + enable: "Ενεργοποίηση ειδοποιήσεων" + each_browser_note: "Σημείωση: Έχετε αλλάξει αυτή τη ρύθμιση σε κάθε φυλλομετρητή που χρησιμοποιείτε." + dismiss_notifications: "Διώξτα όλα" + dismiss_notifications_tooltip: "Όλες οι αδιάβαστες ειδοποιήσεις να χαρακτηριστούν διαβασμένες" + first_notification: "Η πρώτη σου ειδοποίηση! Επίλεξε την για να ξεκινήσεις." + disable_jump_reply: "Να μην εστιάζεται η ανάρτηση μου αφ' ότου απαντήσω" + dynamic_favicon: "Δείξε τον αριθμό νέων/ενημερωμένων αναρτήσεων στο εικονίδιο του προγράμματος περιήγησης" + external_links_in_new_tab: "Άνοιγε όλους τους εξωτερικούς συνδέσμους σε νέα καρτέλα" + enable_quoting: "Το κείμενο που επισημαίνεται να παρατίθεται στην απάντηση " + change: "αλλαγή" + moderator: "Ο/Η {{user}} είναι συντονιστής" + admin: "Ο/Η {{user}} είναι διαχειριστής" + moderator_tooltip: "Αυτός ο χρήστης είναι συντονιστής" + admin_tooltip: "Αυτός ο χρήστης είναι διαχειριστής" + blocked_tooltip: "Ο χρήστης είναι μπλοκαρισμένος" + suspended_notice: "Αυτός ο χρήστης είναι αποκλεισμένος μέχρι τις {{date}}." + suspended_reason: "Αιτιολογία:" + github_profile: "Github" + email_activity_summary: "Περίληψη ενεργειών" + mailing_list_mode: + label: "Λειτουργία ταχυδρομικής λίστας" + enabled: "Ενεργοποίησε λειτουργία ταχυδρομικής λίστας" + instructions: | + Η ρύθμιση παρακάμπτει την περίληψη δραστηριότητας.
    + Τα νήματα σε σίγαση και οι κατηγορίες δεν συμπεριλαμβάνονται σε αυτά τα ηλεκτρονικά μηνύματα. + daily: "Στείλε καθημερινές ειδοποιήσεις" + individual: "Στείλε ένα email για κάθε νέα ανάρτηση" + individual_no_echo: "Στείλε ένα email για κάθε νέα ανάρτηση, εκτός από τις δικές μου." + many_per_day: "Στείλε μου ένα email για κάθε νέα ανάρτηση (περίπου {{dailyEmailEstimate}} τη μέρα)" + few_per_day: "Στείλε μου ένα email για κάθε νέα ανάρτηση (περίπου 2 τη μέρα)" + tag_settings: "Ετικέτες" + watched_tags: "Εθεάθη" + watched_tags_instructions: "Θα παρακολουθείς αυτόματα όλα τα νήματα με αυτές τις ετικέτες. Θα λαμβάνεις ειδοποιήσεις για όλες τις καινούριες δημοσιεύσεις και νήματα, και η καταμέτρηση των καινούριων δημοσιεύσεων θα εμφανίζεται επίσης δίπλα στο νήμα." + tracked_tags: "Παρακολουθείται" + tracked_tags_instructions: "Θα παρακολουθείς αυτόματα όλα τα νήματα με αυτές τις ετικέτες. Η καταμέτρηση των καινούριων δημοσιεύσεων θα εμφανίζεται δίπλα σε αυτό το νήμα." + muted_tags: "Σίγαση" + muted_tags_instructions: "Δε θα λαμβάνεις ειδοποιήσεις για τίποτα σχετικά με τα καινούρια νήματα, και δε θα εμφανίζονται στα τελευταία. " + watched_categories: "Παρατηρείται" + watched_categories_instructions: "Θα παρακολουθείς αυτόματα όλα τα νήματα σε αυτές τις κατηγορίες. Θα λαμβάνεις ειδοποιήσεις για όλες τις καινούριες δημοσιεύσεις και νήματα, και η καταμέτρηση των δημοσιεύσεων θα εμφανίζεται επίσης δίπλα στο νήμα." + tracked_categories: "Παρακολουθείται" + tracked_categories_instructions: "Θα παρακολουθείς αυτόματα όλα τα νήματα σε αυτές τις κατηγορίες. Η καταμέτρηση των καινούριων δημοσιεύσεων θα εμφανίζεται δίπλα στο νήμα." + watched_first_post_categories: "Παρακολούθηση πρώτης δημοσίευσης" + watched_first_post_categories_instructions: "Θα ειδοποιηθείς για την πρώτη δημοσίευση του κάθε καινούριου θέματος αυτών των κατηγοριών." + watched_first_post_tags: "Παρακολούθηση πρώτης δημοσίευσης" + watched_first_post_tags_instructions: "Θα ειδοποιηθείς για την πρώτη δημοσίευση του κάθε καινούριου θέματος με αυτές τις ετικέτες. " + muted_categories: "Σε σίγαση" + muted_categories_instructions: "Δε θα λαμβάνεις ειδοποιήσεις για τίποτα σχετικά με τις καινούριες δημοσιεύσεις σε αυτές τις κατηγορίες, και δε θα εμφανίζονται στα τελευταία." + delete_account: "Διαγραφή του λογαριασμού μου " + delete_account_confirm: "Είσαι σίγουρος πως θέλεις να διαγράψεις μόνιμα τον λογαριασμό σου; Αυτή η πράξη είναι μη αναστρέψιμη." + deleted_yourself: "Ο λογαριασμός σου διαγράφηκε." + delete_yourself_not_allowed: "Δεν μπορείς να διαγράψεις τον λογαριασμό σου αυτή την στιγμή. Επικοινώνησε με έναν διαχειριστή για να τον διαγράψει αυτός για σένα." + unread_message_count: "Μηνύματα" + admin_delete: "Διαγραφή" + users: "χειριστές" + muted_users: "Σε σίγαση" + muted_users_instructions: "Αποσιώπησε όλες τις ειδοποιήσεις από αυτούς τους χειριστές" + muted_topics_link: "Δείξε τα νήματα που είναι σε σίγαση" + watched_topics_link: "Δείξε τα νήματα που παρακολουθούνται" + automatically_unpin_topics: "Τα νήματα ξεκαρφιτσώνονται αυτόματα όταν φτάνω στο κάτω μέρος." + apps: "Εφαρμογές" + revoke_access: "Ανάκληση πρόσβασης" + undo_revoke_access: "Απενεργοποίηση ανάκλησης πρόσβασης" + api_approved: "Εγκεκριμένο:" + staff_counters: + flags_given: "χρήσιμες σημάνσεις" + flagged_posts: "Επισημασμένες αναρτήσεις" + deleted_posts: "σβησμένες αναρτήσεις" + suspensions: "αποκλεισμοί" + warnings_received: "προειδοποιήσεις" + messages: + all: "Όλα" + inbox: "Εισερχόμενα" + sent: "Απεσταλμένα" + archive: "Αρχείο" + groups: "Οι ομάδες μου" + bulk_select: "Επιλογή μηνυμάτων" + move_to_inbox: "Μετακίνηση στα Εισερχόμενα" + move_to_archive: "Αρχείο" + failed_to_move: "Αποτυχία μετακίνησης των επιλεγμένων μηνυμάτων (πιθανόν δεν υπάρχει σύνδεση στο δίκτυο)" + select_all: "Επιλογή όλων" + change_password: + success: "(το μήνυμα ηλεκτρονικού ταχυδρομείου στάλθηκε)" + in_progress: "(αποστολή μηνύματος ηλεκτρονικού ταχυδρομείου)" + error: "(σφάλμα)" + action: "Αποστολή μηνύματος ηλεκτρονικού ταχυδρομείου για την δημιουργία καινούργιου συνθηματικού" + set_password: "Ορισμός συνθηματικού" + choose_new: "Επιλέξτε νέο κωδικό πρόσβασης" + choose: "Επιλέξτε έναν κωδικό πρόσβασης" + change_about: + title: "Άλλαξε τα «σχετικά με εμένα»" + error: "Προέκυψε σφάλμα στην αλλαγή της αξίας." + change_username: + title: "Αλλαγή χρηστώνυμου" + confirm: "Εάν αλλάξεις το όνομα χρήστη σου, όλες οι προηγούμενες παραθέσεις των δημοσιεύσεων σου και οι αναφορές στο @όνομά σου θα χαθούν. Είσαι απόλυτα βέβαιος πως θέλεις;" + taken: "Λυπούμαστε, αυτό το χρηστώνυμο χρησιμοποιείται ήδη." + error: "Παρουσιάστηκε σφάλμα κατά την αλλαγή του χρηστώνυμου." + invalid: "Αυτό το χρηστώνυμο δεν είναι έγκυρο. Θα πρέπει να αποτελείται μόνο από αριθμούς και γράμματα" + change_email: + title: "Αλλαγή διεύθυνσης ηλεκτρονικού ταχυδρομείου" + taken: "Λυπούμαστε, αυτή η διεύθυνση ηλεκτρονικού ταχυδρομείου δεν είναι διαθέσιμη." + error: "Υπήρξε ένα σφάλμα κατά την αλλαγή της διεύθυνσης ηλεκτρονικού ταχυδρομείου σου. Ίσως αυτή η διεύθυνση είναι ήδη σε χρήση;" + success: "Έχουμε στείλει ένα μήνυμα ηλεκτρονικού ταχυδρομείου σε αυτή τη διεύθυνση. Παρακαλούμε ακολούθησε τις οδηγίες επιβεβαίωσης που περιέχει." + change_avatar: + title: "Αλλαγή της φωτογραφίας του προφίλ σου" + gravatar: "Gravatar, που βασίζεται σε" + gravatar_title: "Άλλαξε το άβατάρ σου στην ιστοσελίδα Gravatar " + refresh_gravatar_title: "Ανανέωσε το Gravatar σου" + letter_based: "Εικόνα προφίλ που ανέθεσε το σύστημα" + uploaded_avatar: "Δική μου εικόνα" + uploaded_avatar_empty: "Πρόσθεσε μια δική σου εικόνα" + upload_title: "Ανέβασε την εικόνα σου" + upload_picture: "Ανέβασμα εικόνας" + image_is_not_a_square: "Προσοχή: Περικόψαμε την εικόνα σου γιατί το ύψος και το πλάτος δεν ήταν ίσα." + cache_notice: "Έχεις αλλάξει επιτυχώς την εικόνα του προφίλ σου αλλά ίσως πάρει λίγο χρόνο μέχρι να εμφανιστεί εξαιτίας της κρυφής μνήμης του προγράμματος περιήγησης." + change_profile_background: + title: "Φόντο προφίλ" + instructions: "Οι εικόνες που μπαίνουν στο φόντο του προφίλ σου θα κεντραρίζονται και το προκαθορισμένο πλάτος τους είναι 850px." + change_card_background: + title: "Φόντο της καρτέλας χρήστη" + instructions: "Οι εικόνες στο φόντο θα κεντραρίζονται και το προκαθορισμένο πλάτος τους είναι 590px." + email: + title: "Διεύθυνση ηλεκτρονικού ταχυδρομείου" + instructions: "Να μην εμφανίζεται ποτέ δημόσια" + ok: "Για επιβεβαίωση θα σου στείλουμε ένα μήνυμα ηλεκτρονικού ταχυδρομείου" + invalid: "Παρακαλώ δώσε μία έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου" + authenticated: "Η διεύθυνση ηλεκτρονικού ταχυδρομείου σου ταυτοποιήθηκε από τον πάροχο {{provider}}" + frequency_immediately: "Θα σου στείλουμε αμέσως ηλεκτρονικό μήνυμα, εάν δεν έχεις διαβάσει το θέμα για το οποίο σου στέλνουμε το μήνυμα." + frequency: + one: "Θα σου στείλουμε ηλεκτρονικό μήνυμα μόνο εάν δε σε έχουμε δει το τελευταίο λεπτό." + other: "Θα σου στείλουμε ηλεκτρονικό μήνυμα μόνο εάν δεν σε έχουμε δει τα τελευταία {{count}} λεπτά." + name: + title: "Όνομα" + instructions: "Το ονοματεπώνυμό σου (προαιρετικό)" + instructions_required: "Το πλήρες όνομά σου" + too_short: "Το όνομά σου είναι πολύ μικρό" + ok: "Το όνομά σου είναι καλό" + username: + title: "Χρηστώνυμο" + instructions: "Μοναδικό, χωρίς κενά, σύντομο" + short_instructions: "Οι άλλοι μπορούν να αναφερθούν σε σένα με το @{{username}} " + available: "Το χρηστώνυμο είναι διαθέσιμο" + not_available: "Δεν είναι διαθέσιμο. Τι θα έλεγες για {{suggestion}};" + not_available_no_suggestion: "Μη διαθέσιμο " + too_short: "Το χρηστώνυμο είναι μικρό" + too_long: "Το χρηστώνυμο είναι μεγάλο" + checking: "Έλεγχεται αν είναι διαθέσιμο το χρηστώνυμο..." + prefilled: "Η διεύθυνση ηλεκτρονικού ταχυδρομείου ταιριάζει με το εγγεγραμμένο χρηστώνυμο" + locale: + title: "Γλώσσα διεπαφής" + instructions: "Η γλώσσα της διεπαφής. Θα αλλάξει μόλις ανανεωθεί η σελίδα" + default: "(προεπιλογή)" + any: "καθένα" + password_confirmation: + title: "Επανάληψη του κωδικού πρόσβασης" + last_posted: "Τελευταία ανάρτηση" + last_emailed: "Τελευταίο μήνυμα ηλεκτρονικού ταχυδρομείου" + last_seen: "Ειδώθηκε" + created: "Μέλος από" + log_out: "Αποσύνδεση" + location: "Διεύθυνση" + card_badge: + title: "Παράσημο καρτέλας χρήστη" + website: "Ιστοσελίδα" + email_settings: "Διεύθυνση ηλεκτρονικού ταχυδρομείου" + like_notification_frequency: + title: "Ειδοποίησε με όταν έχω \"μου αρέσει\"" + always: "Πάντα" + first_time_and_daily: "Πρώτη φορά που η δημοσίευση έχει \"μου αρέσει\" και καθημερινά" + first_time: "Πρώτη φορά που η δημοσίευση έχει \"μου αρέσει\"" + never: "Ποτέ" + email_previous_replies: + title: "Συμπερίλαβε προηγούμενες απαντήσεις στο κάτω μέρος των ηλεκτρονικών μηνυμάτων" + unless_emailed: "Εάν δεν έχει σταλεί προηγουμένως" + always: "πάντα" + never: "ποτέ" + email_digests: + title: "Όταν δεν επισκέπτομαι αυτή τη σελίδα, στείλε μου με ηλεκτρονικό μήνυμα την περίληψη των δημοφιλών νημάτων και απαντήσεων" + every_30_minutes: "κάθε 30 λεπτά" + every_hour: "ωριαία" + daily: "καθημερινά" + every_three_days: "Κάθε τρεις μέρες" + weekly: "εβδομαδιαία" + every_two_weeks: "Κάθε τρεις μέρες" + include_tl0_in_digests: "Συμπεριλάμβανε περιεχόμενο από νέους χρήστες σε περιληπτικά μηνύματα" + email_in_reply_to: "Συμπερίλαβε ένα απόσπασμα της απάντησης για να το δημοσιεύσεις σέ ηλεκτρονικό μήνυμα" + email_direct: "Στείλε μου ένα μήνυμα ηλεκτρονικού ταχυδρομείου όταν κάποιος παραθέσει ανάρτησή μου, απαντήσει σε ανάρτησή μου, αναφέρει το @username μου ή με προσκαλεί σε ένα νήμα." + email_private_messages: "Στείλε μου ένα μήνυμα ηλεκτρονικού ταχυδρομείου όταν κάποιος που στείλει προσωπικό μήνυμα." + email_always: "Στείλε μου ειδοποιήσεις μέσω ηλεκτρονικού μηνύματος όταν είμαι ενεργός στην ιστοσελίδα" + other_settings: "Διάφορα" + categories_settings: "Κατηγορίες" + new_topic_duration: + label: "Τα νήματα να θεωρούνται νέα όταν" + not_viewed: "Δεν τα έχω δει αυτά ακόμη" + last_here: "δημιουργήθηκαν από την τελευταία επίσκεψή μου" + after_1_day: "δημιουργήθηκε την τελευταία ημέρα" + after_2_days: "δημιουργήθηκε τις 2 τελευταίες ημέρες" + after_1_week: "δημιουργήθηκαν την τελευταία εβδομάδα" + after_2_weeks: "δημιουργήθηκε τις 2 τελευταίες εβδομάδες" + auto_track_topics: "Τα νήματα που βλέπω να παρακολουθούνται αυτόματα " + auto_track_options: + never: "ποτέ" + immediately: "αμέσως" + after_30_seconds: "μετά από 30 δευτερόλεπτα" + after_1_minute: "μετά από 1 λεπτό" + after_2_minutes: "μετά από 2 λεπτά" + after_3_minutes: "μετά από 3 λεπτά" + after_4_minutes: "μετά από 4 λεπτά" + after_5_minutes: "μετά από 5 λεπτά" + after_10_minutes: "μετά από 10 λεπτά" + notification_level_when_replying: "Όταν δημοσιοποιώ ένα νήμα, τοποθέτησε αυτό το νήμα σε" + invited: + search: "γράψε για να αναζητήσεις προσκλήσεις..." + title: "Προσκλήσεις" + user: "Προσκεκλημένος χρήστης" + sent: "Απεσταλμένα" + none: "Δεν υπάρχουν προσκλήσεις σε εκκρεμότητα να σου δείξω." + truncated: + one: "Δείχνοντας την πρώτη πρόσκληση." + other: "Δείχνοντας την πρώτη {{count}} προσκλήσεις." + redeemed: "Προσκλήσεις που έγιναν αποδεκτές" + redeemed_tab: "Εξοφλήθηκε" + redeemed_tab_with_count: "Εξοφλήθηκε ({{count}})" + redeemed_at: "Αποδεκτές" + pending: "Εκρεμείς προσκλήσεις" + pending_tab: "Σε εκκρεμότητα" + pending_tab_with_count: "Σε εκκρεμότητα ({{count}})" + topics_entered: "Νήματα που ειδώθηκαν" + posts_read_count: "Διαβασμένες αναρτήσεις" + expired: "Αυτή η πρόσκληση έχει λήξει." + rescind: "Αναίρεση πρόσκλησης" + rescinded: "Η πρόσκληση αναιρέθηκε" + reinvite: "Επαναποστολή πρόσκλησης" + reinvite_all: "Αποστολή ξανά όλων των προσκλήσεων" + reinvited: "Η πρόσκληση στάλθηκε ξανά" + reinvited_all: "Όλες οι προσκλήσεις ξανά-εστάλησαν!" + time_read: "Χρόνος ανάγνωσης" + days_visited: "Μέρες επίσκεψης" + account_age_days: "Ηλικία λογαριασμού σε μέρες" + create: "Αποστολή πρόσκλησης" + generate_link: "Αντιγραφή Πρόσκληση Σύνδεσμος" + link_generated: "Η πρόσκληση του συνδέσμου έγινε επιτυχώς!" + valid_for: "Η πρόσκληση συνδέσμου είναι έγκυρη μόνο για τη διεύθυνση ηλεκτρονικού μηνύματος: %{email}" + bulk_invite: + none: "Δεν έχετε προσκαλέσει κανέναν ακόμα. Στείλτε ατομικές προσκλήσεις, ή καλέστε πολλά άτομα με τη μία μεταφορτώνοντας ένα αρχείο CSV ." + text: "Ομαδική πρόσκληση από αρχείο" + success: "Το αρχείο ανέβηκε. Θα ενημερωθείς με ένα μήνυμα όταν ολοκληρωθεί η διαδικασία." + error: "Λυπούμαστε, το αρχείο πρέπει να έχει την μορφή CSV." + password: + title: "Κωδικός πρόσβασης" + too_short: "Ο κωδικός πρόσβασης είναι μικρός." + common: "Ο κωδικός πρόσβασης είναι πολύ κοινός." + same_as_username: "Ο κωδικός πρόσβασης που έδωσες είναι ο ίδιος με το χρηστώνυμο." + same_as_email: "Ο κωδικός πρόσβασής σου είναι ίδιος με τη διεύθυνση ηλεκτρονικού ταχυδρομείου σου." + ok: "Ο κωδικός πρόσβασης φαίνεται καλός." + instructions: "τουλάχιστον %{count} χαρακτήρες" + summary: + title: "Περίληψη" + stats: "Στατιστικά" + time_read: "χρόνος ανάγνωσης" + topic_count: + one: "τα θέματα" + other: "τα θέματα δημιουργήθηκαν" + post_count: + one: "οι δημοσιεύσεις" + other: "οι δημοσιεύσεις δημιουργήθηκαν" + likes_given: + one: " δεδομένο" + other: " δεδομένο" + likes_received: + one: " ελήφθη" + other: " ελήφθη" + days_visited: + one: "ημέρα που επισκέφτηκες" + other: "ημέρες που επισκέφτηκες" + posts_read: + one: "η δημοσίευση διαβάστηκε" + other: "οι δημοσιεύσεις διαβάστηκαν" + bookmark_count: + one: "σελιδοδείκτης" + other: "σελιδοδείκτες" + top_replies: "Κορυφαίες απαντήσεις" + no_replies: "Καμία απάντηση ακόμα." + more_replies: "Περισσότερες Απαντήσεις" + top_topics: "Κορυφαία Θέματα" + no_topics: "Κανένα θέμα ακόμα." + more_topics: "Περισσότερα Θέματα" + top_badges: "Κορυφαία Παράσημα" + no_badges: "Κανένα παράσημο ακόμα." + more_badges: "Περισσότερα Παράσημα" + top_links: "Κορυφαίοι Σύνδεσμοι" + no_links: "Κανένας σύνδεσμος ακόμα." + most_liked_by: "Περισσότερα \"μου αρέσει\" από" + most_liked_users: "Περισσότερα μου αρέσει" + most_replied_to_users: "Περισσότερα απαντήθηκαν προς" + no_likes: "Κανένα μου αρέσει ακόμα." + associated_accounts: "Συνδέσεις χρηστών" + ip_address: + title: "Τελευταία διεύθυνση IP" + registration_ip_address: + title: "Καταχώρηση διεύθυνσης IP" + avatar: + title: "Εικόνα προφίλ" + header_title: "προφίλ, μηνύματα, σελιδοδείκτες και προτιμήσεις" + title: + title: "Τίτλος" + filters: + all: "Όλα" + stream: + posted_by: "Αναρτήθηκε από" + sent_by: "Στάλθηκε από" + private_message: "Μήνυμα" + the_topic: "το νήμα" + loading: "Φόρτωση... " + errors: + prev_page: "στο ανέβασμα" + reasons: + network: "Σφάλμα δικτύου" + server: "Σφάλμα διακομιστή" + forbidden: "Άρνηση πρόβασης" + unknown: "Σφάλμα" + not_found: "Η σελίδα δεν βρέθηκε" + desc: + network: "Παρακαλώ έλεγξε την σύνδεση." + network_fixed: "Μοιάζει να επανήλθε." + server: "Κωδικός σφάλματος: {{status}}" + forbidden: "Δεν επιτρέπεται να το δείς αυτό." + not_found: "Ουπς, η εφαρμογή προσπάθησε να φορτώσει μια διεύθυνση URL που δεν υπάρχει." + unknown: "Κάτι δεν πήγε καλά." + buttons: + back: "Πίσω" + again: "Δοκίμασε ξανά" + fixed: "Φόρτωση σελίδας" + close: "Κλείσιμο" + assets_changed_confirm: "Αυτή η ιστοσελίδα μόλις ενημερώθηκε. Να ανανεωθεί τώρα για να φανεί η τελευταία έκδοση;" + logout: "Αποσυνδέθηκες." + refresh: "Ανανέωση" + read_only_mode: + enabled: "Αυτή η ιστοσελίδα είναι σε λειτουργία μόνο ανάγνωσης. Παρακαλώ συνέχισε να κάνεις περιήγηση, όμως το να απαντάς να πατάς \"μου αρέσει\" και κάποιες άλλες λειτουργίες δεν είναι διαθέσιμες τώρα." + login_disabled: "Η δυνατότητα σύνδεσης έχει απενεργοποιηθεί για όσο το φόρουμ είναι σε κατάσταση μόνο ανάγνωσης." + logout_disabled: "Η αποσύνδεση δεν είναι διαθέσιμη ενώ η ιστοσελίδα είναι σε λειτουργία μόνο ανάγνωσης." + too_few_topics_and_posts_notice: "Ας αρχίσουμε αυτή την συζήτηση! Υπάρχουν %{currentTopics} / %{requiredTopics} νήματα και %{currentPosts} / %{requiredPosts} δημοσιεύεις. Οι νέοι επισκέπτες χρειάζονται κάποιες συνομιλίες για να τις διαβάσουν και να απαντήσουν σε αυτές." + too_few_topics_notice: "Ας αρχίσουμε αυτή την συζήτηση! Υπάρχουν %{currentTopics} / %{requiredTopics} νήματα και %{currentPosts} / %{requiredPosts} δημοσιεύεις. Οι νέοι επισκέπτες χρειάζονται κάποιες συνομιλίες για να τις διαβάσουν και να απαντήσουν σε αυτές." + too_few_posts_notice: "Ας ξεκινήσουμε αυτή τη συζήτηση! Υπάρχουν προσωρινά %{currentPosts} / %{requiredPosts} δημοσιεύσεις. Οι καινούριοι επισκέπτες χρειάζοντε να διαβάσουν και να απαντήσουν σε μερικές συζητήσεις." + logs_error_rate_notice: + reached: "%{relativeAge}%{rate} έχει φτάσει το ορισμένο όριο της ιστοσελίδας των %{siteSettingRate}." + exceeded: "&{relativeAge} - %{rate} υπερβαίνει το όριο των ρυθμίσεων της ιστοσελίδας %{siteSettingRate}. " + rate: + one: "1 σφάλματα/%{duration}" + other: "%{count} σφάλματα/%{duration}" + learn_more: "μάθε περισσότερα..." + all_time: 'σύνολο' + all_time_desc: 'δημιουργήθηκαν συνολικά νήματα' + year: 'έτος' + year_desc: 'νήματα που έχουν δημιουργηθεί τις τελευταίες 365 ημέρες' + month: 'μήνας' + month_desc: 'νήματα που έχουν δημιουργηθεί τις τελευταίες 30 ημέρες' + week: 'εβδομάδα' + week_desc: 'νήματα που έχουν δημιουργηθεί τις τελευταίες 7 ημέρες' + day: 'ημέρα' + first_post: Πρώτη ανάρτηση + mute: Σίγαση + unmute: Αναίρεση σίγασης + last_post: Τελευταία ανάρτηση + last_reply_lowercase: τελευταία απάντηση + replies_lowercase: + one: απάντηση + other: απαντήσεις + signup_cta: + sign_up: "Εγγραφή" + hide_session: "Υπενθύμιση αύριο" + hide_forever: "όχι ευχαριστώ" + hidden_for_session: "Εντάξει, θα σε ρωτήσω αύριο. Μπορείς πάντα να χρησιμοποιείς τη \"Σύνδεση\" και για να δημιουργήσεις ένα λογαριασμό." + intro: "Γεια σου! :heart_eyes: Φαίνεται να απολαμβάνεις τη συζήτηση, όμως δεν έχεις εγγραφεί σε ένα λογαριασμό." + value_prop: "Όταν δημιουργείς έναν λογαριασμό, θυμόμαστε ακριβώς τι έχεις διαβάσει, έτσι ώστε πάντα να επιστρέφεις όπου είχες μείνει. Επίσης, λαμβάνεις ειδοποιήσεις, εδώ και μέσω ηλεκτρονικού μηνύματος, κάθε φορά που δημιουργούνται καινούριες δημοσιεύσεις. Και μπορείς να πατήσεις \"μου αρέσει\" στις δημοσιεύσεις για να μοιραστείς την αγάπη. :heartbeat:" + summary: + enabled_description: "Βλέπεις μια περίληψη αυτού του νήματος: οι πιο ενδιαφέρουσες αναρτήσεις όπως αυτές καθορίστηκαν από την κοινότητα." + description: "Υπάρχουν {{replyCount}} απαντήσεις." + description_time: "Υπάρχουν {{replyCount}} απαντήσεις με εκτιμώμενο χρόνο ανάγνωσης {{readingTime}} λεπτών." + enable: 'Κάνε μια σύνοψη αυτού του νήματος' + disable: 'Εμφάνιση όλων των αναρτήσεων' + deleted_filter: + enabled_description: "Αυτό το νήμα περιέχει σβησμένες αναρτήσεις, οι οποίες αποκρύπτονται." + disabled_description: "Σε αυτό το νήμα εμφανίζονται oι σβησμένες αναρτήσεις." + enable: "Κρύψε τις σβησμένες αναρτήσεις" + disable: "Εμφάνισε τις σβησμένες αναρτήσεις" + private_message_info: + title: "Μήνυμα" + invite: "Προσκάλεσε άλλους..." + remove_allowed_user: "Θες στ' αλήθεια να αφαιρέσεις τον/την {{name}} από αυτή τη συζήτηση;" + remove_allowed_group: "Θέλεις πραγματικά να απομακρύνεις {{name}} από αυτό το μήνυμα;" + email: 'Διεύθυνση ηλεκτρονικού ταχυδρομείου' + username: 'Χρηστώνυμο' + last_seen: 'Ειδώθηκε' + created: 'Δημιουργήθηκε' + created_lowercase: 'δημιουργήθηκε' + trust_level: 'Επίπεδο εμπιστοσύνης' + search_hint: 'χρηστώνυμο, διεύθυνση ηλεκτρονικού ταχυδρομείου ή IP διεύθυνση' + create_account: + disclaimer: "Κάνοντας εγγραφή συμφωνείς με την πολιτική προστασίας προσωπικών δεδομένων και με τους όρους υπηρεσίας." + title: "Δημιουργία νέου λογαριασμού" + failed: "Κάτι πήγε στραβά. Ίσως αυτή η διεύθυνση ηλεκτρονικού ταχυδρομείου να είναι ήδη δηλωμένη. Δοκίμασε το σύνδεσμο «ξέχασα τον κωδικό μου»." + forgot_password: + title: "Επαναφορά Κωδικού" + action: "Ξέχασα τον κωδικό πρόσβασής μου" + invite: "Δώσε το χρηστώνυμό σου ή την διεύθυνση ηλεκτρονικού ταχυδρομείου σου, και θα σου στείλουμε ένα μήνυμα ηλεκτρονικού ταχυδρομείου για να ορίσεις νέο κωδικό πρόσβασης." + reset: "Επαναφορά κωδικού πρόσβασης" + complete_username: "Αν υπάρχει λογαριασμός με το χρηστώνυμο %{username}, σε λίγο θα λάβεις ένα μήνυμα ηλεκτρονικού ταχυδρομείου με οδηγίες για το πως να ορίσεις νέο κωδικό πρόσβασης." + complete_email: "Αν υπάρχει λογαριασμός με τη διεύθυνση %{email}, σε λίγο θα λάβεις ένα μήνυμα ηλεκτρονικού ταχυδρομείου με οδηγίες για το πως να ορίσεις νέο κωδικό πρόσβασης." + complete_username_found: "Βρήκαμε έναν λογαριασμό με το χρηστώνυμο %{username}. Σε λίγο θα λάβεις ένα μήνυμα ηλεκτρονικού ταχυδρομείου με οδηγίες για το πως να ορίσεις νέο κωδικό πρόσβασης." + complete_email_found: "Βρήκαμε έναν λογαριασμό με τη διεύθυνση %{email}. Σε λίγο θα λάβεις ένα μήνυμα ηλεκτρονικού ταχυδρομείου με οδηγίες για το πως να ορίσεις νέο κωδικό πρόσβασης." + complete_username_not_found: "Δεν υπάρχει λογαριασμός με το χρηστώνυμο %{username}" + complete_email_not_found: "Δεν υπάρχει λογαριασμός με τη διεύθυνση %{email}" + login: + title: "Σύνδεση" + username: "Χρηστώνυμο" + password: "Κωδικός πρόσβασης" + email_placeholder: "διεύθυνση ηλεκτρονικού ταχυδρομείου ή χρηστώνυμο" + caps_lock_warning: "Είναι ενεργά τα ΚΕΦΑΛΑΙΑ" + error: "Άγνωστο σφάλμα" + rate_limit: "Παρακαλώ περιμένετε προτού προσπαθήσετε ξανά να συνδεθείτε." + blank_username_or_password: "Παρακαλώ δώσε την διεύθυνση ηλεκτρονικού ταχυδρομείου σου ή το χρηστώνυμό σου και τον κωδικό πρόσβασής σου." + reset_password: 'Επαναφορά κωδικού πρόσβασης' + logging_in: "Συνδέεσε..." + or: "Ή" + authenticating: "Ταυτοποιώ..." + awaiting_confirmation: "Ο λογαριασμός σου δεν έχει ενεργοποιηθεί ακόμη. Χρησιμοποίησε το σύνδεσμο «ξέχασα τον κωδικό μου» για να λάβεις άλλο ένα μήνυμα με οδηγίες για την ενεργοποίηση." + awaiting_approval: "Ο λογαριασμός σου δεν έχει εγκριθεί από κανέναν συνεργάτη ακόμη. Θα λάβεις ένα μήνυμα ηλεκτρονικού ταχυδρομείου όταν γίνει αυτό." + requires_invite: "Λυπούμαστε, αλλά η πρόσβαση σε αυτό το φόρουμ είναι δυνατή μόνο με πρόσκληση." + not_activated: "Δεν γίνεται να συνδεθείς ακόμη. Έχουμε ήδη στείλει ένα μήνυμα με οδηγίες στη διεύθυνση {{sentTo}}. Ακολούθησε τις οδηγίες σε αυτό το μήνυμα για να ενεργοποιήσεις το λογαριασμό σου." + not_allowed_from_ip_address: "Δεν μπορείς να συνδεθείς από αυτή τη διεύθυνση IP." + admin_not_allowed_from_ip_address: "Από αυτή τη διεύθυνση IP δεν επιτρέπεται να συνδεθείς ως διαχειριστής." + resend_activation_email: "Πάτησε εδώ για να σταλεί ξανά το μήνυμα ενεργοποίησης." + sent_activation_email_again: "Στάλθηκε ένα ακόμα μήνυμα ενεργοποίησης στο {{currentEmail}}. Θα χρειαστούν κάποια λεπτά για να το λάβεις, βεβαιώσου ότι έλεγξες και το φάκελο ανεπιθύμητης αλληλογραφίας." + to_continue: "Παρακαλώ συνδεθείτε" + preferences: "Πρέπει να συνδεθείς για να αλλάξεις τις προτιμήσεις χρήστη." + forgot: "Δεν θυμάμαι τις λεπτομέρειες του λογαριασμού μου" + not_approved: "Ο λογαριασμός σας δεν έχει εγκριθεί ακόμα. Θα ειδοποιηθείτε με email όταν είστε έτοιμοι να συνδεθείτε." + google: + title: "μέσω της Google" + message: "Ταυτοποίηση μέσω της Google (βεβαιώσου πως δεν έχει ενεργοποιηθεί το μπλοκάρισμα των αναδυόμενων παραθύρων)" + google_oauth2: + title: "μέσω της Google" + message: "Ταυτοποίηση μέσω της Google (βεβαιώσου πως δεν έχει ενεργοποιηθεί το μπλοκάρισμα των αναδυόμενων παραθύρων)" + twitter: + title: "μέσω του Twitter" + message: "Ταυτοποίηση μέσω του Twitter (βεβαιώσου πως δεν έχει ενεργοποιηθεί το μπλοκάρισμα των αναδυόμενων παραθύρων)" + instagram: + title: "με το Instagram" + message: "Πιστοποίηση της αυθεντικότητας μέσω του Instagram (βεβαίωσε ότι το μπλοκάρισμα αναδυόμενων παραθύρων δεν είναι ενεργό)" + facebook: + title: "μέσω του Facebook" + message: "Ταυτοποίηση μέσω του Facebook (βεβαιώσου πως δεν έχει ενεργοποιηθεί το μπλοκάρισμα των αναδυόμενων παραθύρων)" + yahoo: + title: "μέσω της Yahoo" + message: "Ταυτοποίηση μέσω της Yahoo (βεβαιώσου πως δεν έχει ενεργοποιηθεί το μπλοκάρισμα των αναδυόμενων παραθύρων)" + github: + title: "μέσω του GitHub" + message: "Ταυτοποίηση μέσω του Github (βεβαιώσου πως δεν έχει ενεργοποιηθεί το μπλοκάρισμα των αναδυόμενων παραθύρων)" + invites: + accept_title: "Πρόσκληση" + welcome_to: "Καλώς ήλθατε στο %{site_name}!" + invited_by: "Προσκληθήκατε από:" + social_login_available: "Θα μπορούσατε επίσεις να συνδεθείτε μέσω οποιοδήποτε μέσoυ κοινωνικής δικτύωσης χρησημοποιώντας αυτή την διεύθυνση ηλεκτρονικού ταχυδρομείου." + your_email: "Η διεύθυνση ηλεκτρονικού ταχυδρομείου του λογαριασμού σας είναι %{email}." + accept_invite: "Αποδοχή πρόσκλησης" + success: "Ο λογαριασμός σας έχει δημιουργηθεί και έχετε συνδεθεί. " + password_label: "Ορισμός κωδικού πρόσβασης (προαιρετικό) " + password_reset: + continue: "Συνεχίστε σε %{όνομα_ιστοσελίδας}" + emoji_set: + apple_international: "Apple/Διεθνής" + google: "Google" + twitter: "Twitter" + emoji_one: "Emoji ένα" + win10: "Κερδισαι10" + category_page_style: + categories_only: "Μόνο Κατηγορίες" + categories_with_featured_topics: "Κατηγορίες με Προτεινόμενα Θέματα" + categories_and_latest_topics: "Κατηγορίες και Τελευταία Θέματα" + shortcut_modifier_key: + shift: ' Shift' + ctrl: 'Ctrl' + alt: 'Alt' + composer: + emoji: "Emoji :)" + more_emoji: "περισσότερα..." + options: "Επιλογές" + whisper: "ψιθυρίζω" + unlist: "μη καταχωρημένος" + add_warning: "Αυτή είναι μια επίσημη προειδοποίηση." + toggle_whisper: "Ανταλλαγή ψιθύρων" + toggle_unlisted: "Μεταβάλλω ακαταχώριστα" + posting_not_on_topic: "Σε ποιο νήμα θέλεις να απαντήσεις;" + saving_draft_tip: "αποθήκευση..." + saved_draft_tip: "αποθηκεύτηκε" + saved_local_draft_tip: "αποθηκεύτηκε τοπικά" + similar_topics: "Το νήμα σας είναι παρόμοιο με ..." + drafts_offline: "τοπικά πρόχειρα" + group_mentioned: + one: "Αναφέροντας {{group}}, πρόκειται να λάβει ειδοποίηση 1 άτομο - είσαι βέβαιος;" + other: "Αναφέροντας το {{group}}, πρόκειται να ειδοποίησεις {{count}} άνθρωποι - είσαι σίγουρος;" + cannot_see_mention: + category: "Ανέφερες το {{username}} αλλά δε θα λάβουν ειδοποίηση, επειδή δεν έχουν πρόσβαση σε αυτή την κατηγορία. Θα πρέπει να τους προσθέσεις σε μια ομάδα που έχει πρόσβαση σε αυτή την κατηγορία." + private: "Ανέφερες {{username}} αλλά δεν θα λάβουν ειδοποίηση, επειδή δεν μπορούν να δουν αυτό το προσωπικό μήνυμα. Πρέπει να τους προσκαλέσεις σε αυτό το ιδιωτικό μήνυμα." + duplicate_link: "Φαίνεται ότι ο σύνδεσμός σου στο {{domain}} έχει ήδη δημοσιευθεί στο θέμα από @{{username}} σε μια απάντηση {{ago}}- είσαι σίγουρος πως θέλεις να το δημοσιεύσεις ξανά;" + error: + title_missing: "Απαιτείται τίτλος" + title_too_short: "Ο τίτλος πρέπει να έχει τουλάχιστον {{min}} χαρακτήρες" + title_too_long: "Ο τίτλος δεν μπορεί να έχει πάνω από {{max}} χαρακτήρες" + post_missing: "Μία ανάρτηση δεν μπορεί να είναι κενή" + post_length: "Κάθε ανάρτηση πρέπει να περιέχει τουλάχιστον {{min}} χαρακτήρες" + try_like: 'Έχεις δοκιμάσει το κουμπί ;' + category_missing: "Πρέπει να διαλέξεις μια κατηγορία" + save_edit: "Αποθήκευση Επεξεργασίας" + reply_original: "Απάντηση στο αρχικό νήμα" + reply_here: "Απάντησε εδώ" + reply: "Απάντηση" + cancel: "Ακύρωση" + create_topic: "Δημιουργία Θέματος" + create_pm: "Μήνυμα" + title: "Ή πάτα Ctrl+Enter" + users_placeholder: "Προσθήκη χρήστη" + title_placeholder: "Ποίο είναι το περιεχόμενο της συζήτησης σε μία σύντομη πρόταση;" + title_or_link_placeholder: "Πληκτρολόγησε τίτλο, ή κάνε επικόλληση ένα σύνδεσμο εδώ" + edit_reason_placeholder: "γιατί αναθεωρείς;" + show_edit_reason: "(δώσε αιτιολόγηση για την επεξεργασία) " + topic_featured_link_placeholder: "Εισάγετε τον συνδέσμο που εμφανίζεται με τον τίτλο" + reply_placeholder: "Πληκτρολόγισε εδώ. Χρησιμοποίησε την μορφή Markdown, BBCode, ή HTML. Σύρε ή κόλλησε εικόνες." + view_new_post: "Δες τη νέα σου ανάρτηση." + saving: "Αποθηκεύεται" + saved: "Αποθηκεύτηκε!" + saved_draft: "Μια ανάρτηση είναι σε φάση επεξεργασίας. Πάτα εδώ για να συνεχίσεις." + uploading: "Ανεβαίνει..." + show_preview: 'εμφάνιση της προεπισκόπησης »' + hide_preview: '« απόκρυψη της προεπισκόπησης' + quote_post_title: "Παράθεση ολόκληρης την ανάρτησης" + bold_label: "Β" + bold_title: "Έντονα" + bold_text: "Έντονη γραφή" + italic_label: "Ι" + italic_title: "Έμφαση" + italic_text: "κείμενο σε έμφαση" + link_title: "Σύνδεσμος" + link_description: "δώσε εδώ μια περιγραφή για το σύνδεσμο" + link_dialog_title: "Εισαγωγή υπερσύνδεσμου" + link_optional_text: "προαιρετικός τίτλος" + link_url_placeholder: "http://example.com" + quote_title: "Παράθεση" + quote_text: "Παράθεση" + code_title: "Προ-διαμορφωμένο κείμενο" + code_text: "το προ-διαμορφωμένο κείμενο να μπει σε εσοχή με 4 κενά" + paste_code_text: "Πληκτρολογήστε ή επικολλήστε τον κώδικα εδώ" + upload_title: "Ανέβασμα" + upload_description: "δώσε μια περιγραφή του ανεβάσματος" + olist_title: "Αριθμημένη λίστα" + ulist_title: "Κουκίδες" + list_item: "Στοιχείο Λίστας" + heading_label: "Η" + heading_title: "Επικεφαλίδα" + heading_text: "Επικεφαλίδα" + hr_title: "Οριζόντια γραμμή" + help: "Βοήθεια για το Markdown" + toggler: "Εμφάνιση ή απόκρυψη του παραθύρου συγγραφής" + modal_ok: "Εντάξει" + modal_cancel: "Ακύρωση" + cant_send_pm: "Λυπούμαστε, δεν μπορείτε να στείλετε μήνυμα στο χρήστη %{username}." + yourself_confirm: + title: "Ξεχάσατε να προσθέσετε αποδέκτες;" + body: "Αυτή τη στιγμή το ηλεκτρονικό μήνυμα στέλνεται μόνο σε εσάς!" + admin_options_title: "Προαιρετικές ρυθμίσεις προσωπικού για αυτό το θέμα" + auto_close: + label: "Χρόνος Αυτόματου Κλεισίματος νήματος:" + error: "Παρακαλώ δώσε μια έγκυρη τιμή." + based_on_last_post: "Η τελευταία ανάρτηση στο νήμα να κλείσει μόνο εφόσον είναι τόσο παλιά." + all: + examples: 'Δώσε τον αριθμό των ωρών (24), την ακριβή ώρα (17:30) ή μια χρονοσήμανση (2013-11-22 14:00).' + limited: + units: "(# ωρών)" + examples: 'Δώσε το πλήθος των ωρών (24).' + notifications: + title: "ειδοποιήσεις για αναφορές στο @name, απαντήσεις στις αναρτήσεις σου και στα νήματά σου, προσωπικά μηνύματα, κλπ." + none: "Αυτή τη στιγμή δεν είναι δυνατόν να φορτωθούν οι ειδοποιήσεις." + empty: "Δεν βρέθηκαν ειδοποιήσεις." + more: "Εμφάνιση παλιότερων ειδοποιήσεων" + total_flagged: "σύνολο επισημασμένων αναρτήσεων" + 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}} και 1 άλλος {{description}}

    " + other: "

    {{username}}, {{username2}} και {{count}}άλλους {{description}}

    " + private_message: "

    {{username}} {{description}}

    " + invited_to_private_message: "

    {{username}} {{description}}

    " + invited_to_topic: "

    {{username}} {{description}}

    " + invitee_accepted: "

    ο χρήστης {{username}} αποδέχτηκε την πρόσκληση

    " + moved_post: "

    ο χρήστης {{username}} μετέφερε το {{description}}

    " + linked: "

    {{username}} {{description}}

    " + granted_badge: "

    Κέρδισες το παράσημο '{{description}}'

    " + watching_first_post: "

    Νέο θέμα {{description}}

    " + group_message_summary: + one: "

    {{count}} μηνύματα στα {{group_name}} εισερχόμενά σου

    " + other: "

    {{count}} μηνύματα στα {{group_name}} εισερχόμενά σου

    " + alt: + mentioned: "Αναφέρθηκε από" + quoted: "Απόσπασμα από " + replied: "Απαντήθηκε" + posted: "Δημοσίευση από" + edited: "Επεξεργασία της δημοσίευσης από" + liked: "Η δημοσίευσή σου έχει \"μου αρέσει\"" + private_message: "Προσωπικό μήνυμα από" + invited_to_private_message: "Πρόσκληση σε προσωπικό μήνυμα από" + invited_to_topic: "Πρόσκληση σε θέμα από" + invitee_accepted: "Η πρόσκληση έγινε δεκτή από" + moved_post: "Η δημοσίευση σου μετακινήθηκε από" + linked: "Σύνδεση στη δημοσίευσή σου" + granted_badge: "Χορηγήθηκε σήμα" + group_message_summary: "Μηνύματα στα εισερχόμενα ομάδας" + popup: + mentioned: 'Ο/Η {{username}} σε ανέφερε στο "{{topic}}" - {{site_title}}' + group_mentioned: '{{username}} ανέφερε εσένα σε "{{topic}}" - {{site_title}}' + quoted: 'Ο/Η {{username}} σε παράθεσε στο "{{topic}}" - {{site_title}}' + replied: 'Ο/Η {{username}} σου απάντησε στο "{{topic}}" - {{site_title}}' + posted: 'Ο/Η {{username}} ανάρτησε στο "{{topic}}" - {{site_title}}' + private_message: 'Ο/Η {{username}} σου έστειλε ένα προσωπικό μήνυμα στο "{{topic}}" - {{site_title}}' + linked: 'Ο/Η {{username}} έκανε μια σύνδεση στην ανάρτηση που έκανες στο νήμα "{{topic}}" - {{site_title}}' + upload_selector: + title: "Προσθήκη εικόνας" + title_with_attachments: "Προσθήκη εικόνας ή αρχείου" + from_my_computer: "Από τη συσκευή μου" + from_the_web: "Από το διαδίκτυο" + remote_tip: "υπερσύνδεσμος προς μια εικόνα" + remote_tip_with_attachments: "σύνδεσμος σε μια εικόνα ή ένα φάκελο {{authorized_extensions}}" + local_tip: "επιλογή εικόνων από τη συσκευή σου" + local_tip_with_attachments: "επίλεξε εικόνες ή φακέλους από τη συσκευή σου {{authorized_extensions}}" + hint: "(μπορείς να τα σύρεις με το ποντίκι στην περιοχή για να τα ανεβάσεις)" + hint_for_supported_browsers: "μπορείς επίσης να μεταφέρεις ή να επικόλλησεις εικόνες από τον συντάκτη" + uploading: "Ανεβαίνει" + select_file: "Επιλογή Φακέλου" + image_link: "υπερσύνδεσμος στον οποίο θα δείχνει η εικόνα σου" + search: + sort_by: "Ταξινόμηση κατά" + relevance: "συνάφεια" + latest_post: "Τελευταίες Δημοσιεύσεις" + most_viewed: "Περισσότερες εμφανίσεις" + most_liked: "Περισσότερα \"μου αρέσει\"" + select_all: "Επιλογή όλων" + clear_all: "Καθαρισμός όλων" + too_short: "Ο όρος στην αναζήτησή σου είναι πολύ μικρός." + result_count: + one: "1 αποτέλεσμα για \"{{term}}\"" + other: "{{count}} αποτελέσματα για \"{{term}}\"" + title: "ψάξε σε νήματα, αναρτήσεις, χρήστες ή κατηγορίες" + no_results: "Δε βρέθηκε κάτι." + no_more_results: "Δε βρέθηκαν αποτελέσματα" + searching: "Ψάχνω ..." + post_format: "#{{post_number}} από {{username}}" + context: + user: "Ψάξε στις αναρτήσεις του χρήστη @{{username}}" + category: "Αναζήτηση στην #{{category}} κατηγορία" + topic: "Ψάξε σε αυτό το νήμα" + private_messages: "Αναζήτηση στα μηνύματα" + advanced: + title: Προηγμένη Αναζήτηση + posted_by: + label: Δημοσιεύθηκε από + in_category: + label: Σε κατηγορία + in_group: + label: Σε ομάδα + with_badge: + label: Με σήμα + with_tags: + label: Με ετικέτες + filters: + label: Να επιστρέψεις μόνο νήματα/δημοσιεύσεις που... + likes: Μου αρέσει + posted: Δημοσίευσα σε + watching: Παρακολουθώ + tracking: Παρακολουθώ + private: είναι στα μηνύματα μου + bookmarks: Έχω βάλει σελιδοδείκτη + first: είναι η πρώτη πρώτη δημοσίευση + pinned: καρφιτσώθηκαν + unpinned: δεν καρφιτσώθηκαν + wiki: ' είναι βίκι' + statuses: + label: όπου θέματα + open: είναι ανοιχτά + closed: είναι κλειστά + archived: είναι αρχειοθετημένα + noreplies: έχουν μηδέν απαντήσεις + single_user: περιέχει ένα μόνο χρήστη + post: + count: + label: Ελάχιστη καταμέτρηση δημοσιεύσεων + time: + label: Δημοσιεύθηκε + before: πριν + after: μετά + hamburger_menu: "πήγαινε σε άλλη καταχώρηση νήματος ή κατηγορία" + new_item: "καινούριο" + go_back: 'επιστροφή' + not_logged_in_user: 'σελίδα λογαριασμού που περιέχει σύνοψη της τρέχουσας δραστηριότητας και τις προτιμήσεις' + current_user: 'πήγαινε στη σελίδα του λογαριασμού σου' + topics: + new_messages_marker: "τελευταία επίσκεψη" + bulk: + select_all: "Επιλογή όλων" + clear_all: "Καθαρισμός όλων" + unlist_topics: "Μη καταχωρημένα θέματα" + reset_read: "Επαναφορά διαβασμένων" + delete: "Διαγραφή νημάτων" + dismiss: "Απόρριψη" + dismiss_read: "Απόρριψη όλων των μη αναγνωσμένων" + dismiss_button: "Απόρριψη..." + dismiss_tooltip: "Απόρριψη μόνο των καινούριων δημοσιεύσεων ή διακοπή των νημάτων που παρακολουθούνται" + also_dismiss_topics: "Διακοπή παρακολούθησης αυτών των νημάτων ώστε να μην εμφανιστούν ξανά ως μη αναγνωσμένα σε εμένα" + dismiss_new: "Αγνόησε τα νέα" + toggle: "μαζική επιλογή νημάτων" + actions: "Μαζικές ενέργειες" + change_category: "Αλλαγή κατηγορίας" + close_topics: "Κλείσιμο νημάτων" + archive_topics: "Αρχειοθέτηση νημάτων" + notification_level: "Αλλαγή του επιπέδου ειδοποιήσεων" + choose_new_category: "Διάλεξε τη νέα κατηγορία για τα νήματα:" + selected: + one: "Έχεις διαλέξει 1 νήμα." + other: "Έχεις διαλέξει {{count}} νήματα." + change_tags: "Αντικατάσταση ετικετών " + append_tags: "Προσάρτηση ετικετών " + choose_new_tags: "Επίλεξε καινούριες ετικέτες από αυτά τα θέματα:" + choose_append_tags: "Επιλογή νέων ετικετών για την προσάρτηση τους σε αυτά τα νήματα" + changed_tags: "Οι ετικέτες αυτών των θεμάτων έχουν αλλάξει." + none: + unread: "Έχεις διαβάσει όλα τα νήματα." + new: "Δεν υπάρχουν νέα νήματα." + read: "Δεν έχεις διαβάσει κανένα νήμα ακόμη." + posted: "Δεν έχεις αναρτήσει τίποτε ακόμη." + latest: "Δεν υπάρχουν νεότερα νήματα. Αυτό είναι λυπηρό." + hot: "Δεν υπάρχουν δημοφιλή νήματα." + bookmarks: "Δεν έχεις βάλει σελιδοδείκτη σε κανένα νήμα." + category: "Δεν υπάρχουν νήματα στην κατηγορία {{category}}." + top: "Δεν υπάρχουν κορυφαία νήματα." + search: "Δεν υπάρχουν αποτελέσματα σε αυτή την αναζήτηση." + educate: + new: '

    Τα νέα σου θέματα εμφανίζονται εδώ.

    Από προεπιλογή, τα θέματα θεωρούνται καινούρια και θα δείχνουν ένα καινούριο δείκτη εαν έχουν δημιουργηθεί τις τελευταίες 2 μέρες.

    Επισκέψου τις προτιμήσεις σου για να το αλλάξεις αυτό.

    ' + unread: '

    Τα αδιάβαστα νήματά σου εμφανίζονται εδώ.

    Από προεπιλογή, τα νήματα θεωρούνται αδιάβαστα και θα δείχνουν αδιάβαστα 1 έαν:

    • Δημιούργησες το νήμα
    • Απάντησεσ στο νήμα
    • Διάβασεσ το νήμα για περισσότερα από 4 λεπτά

    Ή εάν έχεις ορίσει το νήμα να παρακολουθήται μέσω έλεγχο ειδοποιήσης στο κάτω μέρος του κάθε νήματος.

    Επισκέψου τις προτιμήσεις σου για να το αλλάξεις αυτό.

    ' + bottom: + latest: "Αυτά ήταν τα πρόσφατα νήματα." + hot: "Αυτά ήταν όλα τα δημοφιλή νήματα." + posted: "Αυτά ήταν όλα τα νήματα." + read: "Αυτά ήταν όλα τα διαβασμένα νήματα." + new: "Αυτά ήταν όλα τα νέα νήματα." + unread: "Αυτά ήταν όλα τα αδιάβαστα νήματα." + category: "Αυτά ήταν όλα τα νήματα στην κατηγορία {{category}}." + top: "Αυτά ήταν όλα τα κορυφαία νήματα." + bookmarks: "Αυτά ήταν όλα τα νήματα με σελιδοδείκτη." + search: "Δεν υπάρχουν άλλα αποτελέσματα σε αυτή την αναζήτηση." + topic: + unsubscribe: + stop_notifications: "Τώρα θα λαμβάνεις λιγότερες ειδοποιήσεις για {{title}}" + change_notification_state: "Η τρέχουσα κατάσταση των ειδοποιήσεων σου είναι" + filter_to: + one: "1 δημοσίευση σε νήματα" + other: "{{count}} δημοσιεύσεις σε νήματα" + create: 'Νέο νήμα' + create_long: 'Δημιουργία νέου νήματος' + private_message: 'Ξεκίνα ένα προσωπικό μήνυμα' + archive_message: + help: 'Μετακίνηση μηνύματος στα αρχεία' + title: 'Αρχεία' + move_to_inbox: + title: 'Μετακίνηση στα Εισερχόμενα' + help: 'Μετακίνηση μηνύματος πίσω στα Εισερχόμενα' + list: 'Νήματα' + new: 'νέο νήμα' + unread: 'αδιάβαστο' + new_topics: + one: '1 νέο νήμα' + other: '{{count}} νέα νήματα' + unread_topics: + one: '1 μη αναγνωσμένο νήμα' + other: '{{count}} μη αναγνωσμένα νήματα' + title: 'Νήμα' + invalid_access: + title: "Το νήμα είναι ιδιωτικό" + description: "Λυπούμαστε, αλλά δεν έχεις πρόσβαση σε αυτό το νήμα!" + login_required: "Θα πρέπει να συνδεθείς για να δείς αυτό το νήμα." + server_error: + title: "Το νήμα δεν ήταν δυνατό να φορτωθεί" + description: "Λυπούμαστε, δεν μπορέσαμε να φορτώσουμε αυτό το νήμα, πιθανότατα λόγω προβλήματος στη σύνδεση. Παρακαλούμε δοκίμασε ξανά. Εάν το πρόβλημα επιμείνει ενημερώσέ μας." + not_found: + title: "Το νήμα δεν βρέθηκε." + description: "Συγνώμη, δεν μπορέσαμε να βρούμε αυτό το νήμα συζήτησης. Μήπως έχει αφαιρεθεί από κάποιον συντονιστή;" + total_unread_posts: + one: "έχεις 1 αδιάβαστη ανάρτηση σε αυτό το νήμα" + other: "έχεις {{count}} αδιάβαστες αναρτήσεις σε αυτό το νήμα" + unread_posts: + one: "έχεις 1 αδιάβαστη παλιά ανάρτηση σε αυτό το νήμα" + other: "έχεις {{count}} αδιάβαστες παλιές αναρτήσεις σε αυτό το νήμα" + new_posts: + one: "υπάρχει 1 νέα ανάρτηση σε αυτό το νήμα από την τελευταία φορά που το διάβασες" + other: "υπάρχουν {{count}} νέες αναρτήσεις σε αυτό το νήμα από την τελευταία φορά που το διάβασες" + likes: + one: "υπάρχει 1 «Μου αρέσει» σε αυτό το νήμα" + other: "υπάρχουν {{count}} «μου αρέσει» σε αυτό το νήμα" + back_to_list: "Επιστροφή στη λίστα νημάτων" + options: "Ρυθμίσεις νήματος" + show_links: "Εμφάνιση συνδέσμων εντός του νήματος" + toggle_information: "Εμφάνιση ή απόκρυψη λεπτομερειών νήματος" + read_more_in_category: "Θέλεις να διαβάσεις περισσότερα; Βρες άλλα νήματα στο {{catLink}} ή {{latestLink}}." + read_more: "Θέλεις να διαβασεις περισσότερα; {{catLink}} ή {{latestLink}}." + read_more_MF: "Έχεις { UNREAD, plural, =0 {} one { is 1 αδιάβαστο } other { are # αδιάβαστα } } { NEW, plural, =0 {} one { {BOTH, select, true{and } false {έχεις } other{}} 1 νέο νήμα} other { {BOTH, select, true{and } false {έχεις } other{}} # νέα νήματα} } ακόμη, ή {CATEGORY, select, true {περιηγήσου σε άλλα νήματα {catLink}} false {{latestLink}} other {}}" + browse_all_categories: Περιήγηση σε όλες τις κατηγορίες + view_latest_topics: δες τα πρόσφατα νήματα + suggest_create_topic: Γιατί δεν φτιάχνεις ένα νέο νήμα; + jump_reply_up: μετάβαση στην απάντηση που προηγείται + jump_reply_down: μετάβαση στην απάντηση που ακολουθεί + deleted: "Το νήμα έχει διαγραφεί " + auto_close_notice: "Το νήμα αυτό θα κλείσει αυτόματα σε %{timeLeft}." + auto_close_notice_based_on_last_post: "Το νήμα αυτό θα κλείσει %{duration} μετά την τελευταία απάντηση." + auto_close_title: 'Ρυθμίσεις για το αυτόματο κλείσιμο' + auto_close_save: "Αποθήκευση" + auto_close_remove: "Αυτό το νήμα να μην κλείσει αυτόματα " + auto_close_immediate: + one: "Η τελευταία δημοσίευση στο νήμα είναι ήδη 1 ώρα παλιό, έτσι το νήμα θα κλείσει αμέσως." + other: "Η τελευταία δημοσίευση είναι ήδη %{count} ώρες παλιό, έτσι το νήμα θα κλείσει αμέσως." + timeline: + back: "Πίσω" + back_description: "Πήγαινε πίσω στην τελευταία μη αναγνωσμένη δημοσιεύση" + replies_short: "%{current} / %{total}" + progress: + title: πρόοδος νήματος + go_top: "αρχή" + go_bottom: "τέλος" + go: "πάμε" + jump_bottom: "μεταπήδηση στην τελευταία δημοσίευση" + jump_prompt: "μεταπήδηση σε..." + jump_prompt_of: "των %{count} δημοσιεύσεων" + jump_prompt_long: "Σε ποια δημοσίευση θα ήθελες να μεταπηδήσεις;" + jump_bottom_with_number: "μετάβαση στην ανάρτηση %{post_number}" + total: σύνολο αναρτήσεων + current: τρέχουσα ανάρτηση + notifications: + title: άλλαξε το πόσο συχνά ειδοποιείσαι για αυτό το θέμα + reasons: + mailing_list_mode: "Έχεις ενεργοποιημένη τη λειτουργία λίστας αποδεκτών αλληλογραφίας, έτσι θα λαμβάνεις ενημερώσεις για τις απαντήσεις για το νήμα μέσω ηλεκτρονικών μηνυμάτων." + '3_10': 'Θα λάβεις ειδοποιήσεις, επειδή παρακολουθείς μια ετικέτα πάνω σε αυτό το θέμα.' + '3_6': 'Θα λαμβάνεις ειδοποιήσεις επειδή παρακολουθείς αυτή την κατηγορία.' + '3_5': 'Θα λαμβάνεις ειδοποιήσεις επειδή ξεκίνησες να παρακολουθείς αυτόματα αυτό το νήμα.' + '3_2': 'Θα λαμβάνεις ειδοποιήσεις επειδή παρακολουθείς αυτό το νήμα.' + '3_1': 'Θα λαμβάνεις ειδοποιήσεις επειδή δημιούργησες αυτό το νήμα.' + '3': 'Θα λαμβάνεις ειδοποιήσεις επειδή παρακολουθείς αυτό το νήμα.' + '2_8': 'Θα λαμβάνεις ειδοποιήσεις επειδή παρακολουθείς αυτή την κατηγορία.' + '2_4': 'Θα λαμβάνεις ειδοποιήσεις επειδή ανάρτησες μια απάντηση σε αυτό το νήμα.' + '2_2': 'Θα λαμβάνεις ειδοποιήσεις επειδή παρακολουθείς αυτό το νήμα.' + '2': 'Θα λαμβάνεις ειδοποιήσεις επειδή διάβασες αυτό το νήμα.' + '1_2': 'Θα λαμβάνεις ειδοποιήσεις εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα.' + '1': 'Θα λαμβάνεις ειδοποιήσεις, εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα.' + '0_7': 'Θα αγνοούνται όλες οι ειδοποιήσεις από αυτή την κατηγορία.' + '0_2': 'Αγνοείς όλες τις ειδοποιήσεις αυτού του νήματος.' + '0': 'Αγνοείς όλες τις ειδοποιήσεις αυτού του νήματος.' + watching_pm: + title: "Παρατηρείται" + description: "Θα λαμβάνεις ειδοποιήσεις για κάθε καινούρια απάντηση σε αυτό το μήνυμα, και το πλήθος των καινούριων απαντήσεων θα εμφανίζεται." + watching: + title: "Παρατηρείται" + description: "Θα λαμβάνεις ειδοποιήσεις για κάθε καινούρια απάντηση σε αυτό το νήμα, και καταμέτρηση καινούριων απαντήσεων θα εμφανίζεται." + tracking_pm: + title: "Παρακολουθείται" + description: "Το πλήθος των καινούριων απαντήσεων θα εμφανίζεται για αυτό το μήνυμα. Θα λαμβάνεις ειδοποιήσεις εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα." + tracking: + title: "Παρακολουθείται" + description: "Το πλήθος των καινούριων απαντήσεων γι αυτό το νήμα θα εμφανίζεται. Θα λαμβάνεις ειδοποιήσεις, εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα." + regular: + title: "Φυσιολογικό" + description: "Θα ειδοποιηθείς εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα." + regular_pm: + title: "Φυσιολογικό" + description: "Θα ειδοποιηθείς εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα." + muted_pm: + title: "Σε σίγαση" + description: "Δε θα ειδοποιείσαι ποτέ για οτιδήποτε σχετικά με αυτό το μήνυμα." + muted: + title: "Σε σίγαση" + description: "Δε θα ειδοποιείσαι ποτέ για οτιδήποτε σχετικά με αυτό το θέμα, και δε θα εμφανίζεται στα τελευταία." + actions: + recover: "Επαναφορά του νήματος" + delete: "Σβήσε το νήμα" + open: "Νέο νήμα" + close: "Κλείσε το νήμα" + multi_select: "Διάλεξε αναρτήσεις..." + auto_close: "Αυτόματο κλείσιμο..." + pin: "Καρφίτσωσε το νήμα..." + unpin: "Ξεκαρφίτσωσε το νήμα..." + unarchive: "Επανέφερε το νήμα από το αρχείο" + archive: "Βάλε το νήμα στο αρχείο" + invisible: "Κάντο αόρατο" + visible: "Κάντο ορατό" + reset_read: "Επαναφορά «διαβασμένων»" + make_public: "Κάνε Δημόσιο το θέμα" + make_private: "Γράψε προσωπικό μήνυμα" + feature: + pin: "Καρφίτσωσε το νήμα" + unpin: "Ξεκαρφίτσωσε το νήμα" + pin_globally: "Καρφίτσωσε το νήμα καθολικά" + make_banner: "Νήμα ανακοίνωσης" + remove_banner: "Να αφαιρεθεί η ιδιότητα του νήματος ανακοίνωσης" + reply: + title: 'Απάντηση' + help: 'Ξεκινήστε να συνθέτετε μια απάντηση σε αυτό το θέμα' + clear_pin: + title: "Ξεκαρφίτσωμα" + help: "Ξεκαρφίτσωσε αυτό το νήμα ώστε να μην εμφανίζεται πια στην κορυφή της λίστας." + share: + title: 'Κοινοποίηση' + help: 'κοινοποίησε έναν σύνδεσμο προς αυτό το νήμα' + print: + title: 'Εκτύπωση' + help: 'Άνοιξε μια φιλική έκδοση εκτυπωτή αυτού του νήματος' + flag_topic: + title: 'Σήμανση' + help: 'Επισήμανε αυτό το νήμα στους συντονιστές ή στείλε ένα προσωπικό μήνυμα για αυτό.' + success_message: 'Σήμανες αυτό το νήμα.' + feature_topic: + title: "Το νήμα να γίνει προεξέχον" + pin: "Το νήμα αυτό να εμφανίζεται στην κορυφή της {{categoryLink}} κατηγορίας μέχρι" + confirm_pin: "Υπάρχουν ήδη {{count}} καρφιτσωμένα νήματα. Τόσα πολλά καρφιτσωμένα νήματα μπορεί να είναι υπερβολικός φόρτος για νέους και ανώνυμους χρήστες. Θες στ' αλήθεια να καρφιτσώσεις ακόμη ένα νήμα σε αυτή την κατηγορία;" + unpin: "Απομάκρυνε το νήμα από την κορυφή της κατηγορίας {{categoryLink}}." + unpin_until: "Απομάκρυνε το νήμα από την κορυφή της {{categoryLink}} κατηγορίας ή περίμενε μέχρι %{until}." + pin_note: "Οι χρήστες μπορούν να ξεκαρφιτσώσουν αυτό το νήμα ο καθένας για τον εαυτό του." + pin_validation: "Απαιτείται ημερομηνία για να καρφιτσώσεις το θέμα." + not_pinned: "Δεν υπάρχουν νήματα καρφιτσωμένα σε {{categoryLink}}." + already_pinned: + one: "Νήματα προσωρινά καρφιτσωμένα σε {{categoryLink}}: 1" + other: "Νήματα προσωρινά καρφιτσωμένα σε {{categoryLink}}: {{count}}" + pin_globally: "Εμφάνισε αυτό το νήμα στην κορυφή όλων των καταχωρήσεων νημάτων μέχρι" + confirm_pin_globally: "Υπάρχουν ήδη {{count}} καθολικά καρφιτσωμένα νήματα. Τόσα πολλά καρφιτσωμένα νήματα μπορεί να είναι υπερβολικός φόρτος για νέους και ανώνυμους χρήστες. Θες στ' αλήθεια να καρφιτσώσεις καθολικά ακόμη ένα νήμα;" + unpin_globally: "Αφαίρεσε αυτό το θέμα από την κορυφή όλων των λίστων θεμάτων" + unpin_globally_until: "Απομάκρυνε το νήμα από την κορυφή όλων των καταχωρήσεων των νημάτων ή περίμενε μέχρι %{until}." + global_pin_note: "Οι χρήστες μπορούν να ξεκαρφιτσώσουν το νήμα ο καθένας για τον εαυτό του." + not_pinned_globally: "Δεν υπάρχουν καρφιτσωμένα θέματα παγκοσμίως." + already_pinned_globally: + one: "Τα νήματα πρόσφατα καρφιτσώθηκαν παγκοσμίως:1" + other: "Τα νήματα πρόσφατα καρφιτσώθηκαν παγκοσμίως: {{count}}" + make_banner: "Αυτό το νήμα να γίνει νήμα ανακοίνωσης που θα φαίνεται στην αρχή όλων των σελίδων." + remove_banner: "Απομακρύνει το νήμα ανακοίνωσης από την αρχή όλων των σελίδων." + banner_note: "Οι χρήστες μπορούν να κλείσουν την ανακοίνωση έτσι ώστε να μην εμφανίζεται σε αυτούς. Ένα μόνο νήμα μπορεί να είναι νήμα ανακοίνωσης κάθε φορά." + no_banner_exists: "Δεν υπάρχει νήμα ανακοίνωσης." + banner_exists: "Υπάρχει προς το παρόν ένα νήμα ανακοίνωσης." + inviting: "Οι προσκλήσεις αποστέλλονται..." + automatically_add_to_groups: "Αυτή η πρόσκληση συμπεριλαμβάνει επίσης και πρόσβαση σε αυτές τις ομάδες:" + invite_private: + title: 'Πρόσκληση σε προσωπική συζήτηση' + email_or_username: "Διεύθυνση ηλεκτρονικού ταχυδρομείου ή χρηστώνυμο του προσκεκλημένου" + email_or_username_placeholder: "διεύθυνση ηλεκτρονικού ταχυδρομείου ή χρηστώνυμο" + action: "Πρόσκληση" + success: "Προσκαλέσαμε το χρήστη να συμμετέχει σε αυτή την προσωπική συζήτηση." + success_group: "Έχουμε προσκαλέσει αυτή την ομάδα να συμμετάσχει σε αυτό το μήνυμα." + error: "Συγγνώμη, παρουσιάστηκε σφάλμα κατά την πρόσκληση αυτού του χρήστη." + group_name: "όνομα ομάδας" + controls: "Έλεγχοι νήματος" + invite_reply: + title: 'Πρόσκληση' + username_placeholder: "χρηστώνυμο" + action: 'Αποστολή πρόσκλησης' + help: 'να προσκληθούν και άλλοι σε αυτό το νήμα με ηλεκτρονικό ταχυδρομείο ή με ειδοποίηση' + to_forum: "Θα στείλουμε ένα σύντομο μήνυμα ηλεκτρονικού ταχυδρομείου στον φίλο σας για να μπορέσει να απαντήσει σε αυτό το νήμα κάνοντας κλικ σε ένα σύνδεσμο. Δεν θα χρειαστεί να συνδεθεί." + sso_enabled: "Δώσε το χρηστώνυμο του προσώπου που θα ήθελες να προσκαλέσεις σε αυτό το νήμα." + to_topic_blank: "Δώσε το χρηστώνυμο ή τη διεύθυνση ηλεκτρονικού ταχυδρομείου του προσώπου που θα ήθελες να προσκαλέσεις σε αυτό το νήμα." + to_topic_email: "Έδωσες μια διεύθυνση ηλεκτρονικού ταχυδρομείου. Θα στείλουμε μια πρόσκληση που θα επιτρέπει στον παραλήπτη να απαντήσει απευθείας σε αυτό το νήμα." + to_topic_username: "Έχεις εισαγάγει όνομα χρήστη. Θα σου στείλουμε ειδοποίηση με ένα σύνδεσμο προσκαλώντας τους σε αυτό το νήμα." + to_username: "Δώσε το όνομα χρήστη του ατόμου που θα ήθελες να προσκαλέσεις. Θα σου στείλουμε ειδοποίηση με ένα σύνδεσμο προσκαλώντας τους σε αυτό το νήμα." + email_placeholder: 'name@example.com' + success_email: "Στείλαμε μια πρόσκληση στον/στην {{emailOrUsername}}. Θα σε ειδοποιήσουμε όταν η πρόσκληση γίνει αποδεκτή. Στη σελίδα του προφίλ σου μπορείς να παρακολουθήσεις την εξέλιξη όλων των προσκλήσεών σου." + success_username: "Προσκαλέσαμε τον χρήστη να συμμετέχει σε αυτό το νήμα." + error: "Λυπούμαστε αλλά δεν μπορέσαμε να προσκαλέσουμε αυτό το πρόσωπο. Μήπως έχει ήδη προσκληθεί; (ο ρυθμός αποστολής προσκλήσεων είναι περιορισμένος)" + login_reply: 'Συνδέσου για να απαντήσεις' + filters: + n_posts: + one: "1 ανάρτηση" + other: "{{count}} αναρτήσεις" + cancel: "Αφαίρεση φίλτρου" + split_topic: + title: "Μεταφορά σε νέο νήμα " + action: "μεταφορά σε νέο νήμα " + topic_name: "Τίτλος νέου νήματος" + error: "Παρουσιάστηκε σφάλμα κατά τη μεταφορά των αναρτήσεων στο νέο νήμα." + instructions: + one: "Ετοιμάζεσαι να δημιουργήσεις ένα νέο νήμα και να μεταφέρεις σε αυτό την επιλεγμένη ανάρτηση." + other: "Ετοιμάζεσαι να δημιουργήσεις ένα νέο νήμα και να μεταφέρεις σε αυτό τις {{count}} επιλεγμένες αναρτήσεις." + merge_topic: + title: "Μεταφορά σε υφιστάμενο νήμα" + action: "μεταφορά σε ένα υφιστάμενο νήμα" + error: "Παρουσιάστηκε σφάλμα κατά τη μεταφορά των αναρτήσεων σε αυτό το νήμα. " + instructions: + one: "Παρακαλώ επίλεξε το νήμα στο οποίο θέλεις να μεταφέρεις την ανάρτηση." + other: "Παρακαλώ επίλεξε το νήμα στο οποίο θέλεις να μεταφέρεις τις {{count}} αυτές αναρτήσεις." + merge_posts: + title: "Συγχώνευσε επιλεγμένες δημοσιεύσεις" + action: "συγχώνευσε επιλεγμένες δημοσιεύσεις" + error: "Προέκυψε σφάλμα κατά τη συγχώνευση των επιλεγμένων δημοσιεύσεων." + change_owner: + title: "Άλλαξε τους ιδιοκτήτες των αναρτήσεων" + action: "Αλλαγή ιδιοκτήτη" + error: "Παρουσιάστηκε ένα σφάλμα κατά την αλλαγή του ιδιοκτήτη των αναρτήσεων." + label: "Νέος ιδιοκτήτης των αναρτήσεων" + placeholder: "Χρηστώνυμο του νέου ιδιοκτήτη" + instructions: + one: "Παρακαλώ επίλεξε τον νέο ιδιοκτήτη της ανάρτησης του {{old_user}}." + other: "Παρακαλώ επίλεξε τον νέο ιδιοκτήτη των {{count}} αναρτήσεων του {{old_user}}." + instructions_warn: "Έχε υπόψη πως δεν θα μεταφερθούν αναδρομικά όλες οι ειδοποιήσεις για αυτή την ανάρτηση στο νέο χρήστη.
    Προειδοποίηση: Τώρα κανένα δεδομένο σχετικό με την ανάρτηση δε θα μεταφερθεί στο νέο χρήστη. Χρησιμοποίησέ το με προσοχή." + change_timestamp: + title: "Αλλαγή Χρονοσήμανσης" + action: "αλλαγή χρονοσήμανσης" + invalid_timestamp: "Η χρονοσήμανση δεν μπορεί να υπάρξει στο μέλλον." + error: "Προέκυψε σφάλμα κατά την αλλαγή χρονοσήμανσης του νήματος." + instructions: "Παρακαλώ επίλεξε τη νέα χρονοσήμανση του νήματος. Οι δημοσιεύσεις του νήματος θα ενημερωθούν να έχουν την ίδια διαφορά ώρας." + multi_select: + select: 'επίλεξε' + selected: 'επιλεγμένες ({{count}})' + select_replies: 'επίλεξε και συμπερίλαβε τις απαντήσεις' + delete: διαγραφή επιλεγμένων + cancel: ακύρωση επιλογής + select_all: επιλογή όλων + deselect_all: απεπιλογή όλων + description: + one: Έχεις επιλέξει 1 ανάρτηση. + other: Έχεις επιλέξει {{count}} αναρτήσεις. + post: + reply: " {{replyAvatar}} {{usernameLink}}" + reply_topic: " {{link}}" + quote_reply: "Φράση" + edit: "Επεξεργασία του {{link}} {{replyAvatar}} {{username}}" + edit_reason: "Αιτία:" + post_number: "ανάρτηση {{number}}" + wiki_last_edited_on: "το βίκι επεξεργάστηκε τελευταία φορά στις" + last_edited_on: "Η τελευταία φορά που άλλαξε η ανάρτηση ήταν " + reply_as_new_topic: "Απάντηση με διασυνδεδεμένο νήμα" + reply_as_new_private_message: "Απάντηση ως νέο μήνυμα στον ίδιο παραλήπτη" + continue_discussion: "Συνέχιση της συζήτησης από το {{postLink}}:" + follow_quote: "πήγαινε στην παρατεθιμένη ανάρτηση" + show_full: "Δείξε όλη την ανάρτηση " + show_hidden: 'Δείξε το κρυφό περιεχόμενο.' + deleted_by_author: + one: "(η ανάρτηση ανακλήθηκε από το συγγραφέα της και θα σβηστεί αυτόματα σε %{count} ώρα, εκτός και αν κάποιος την επισημάνει στους συντοντιστές)" + other: "(η ανάρτηση ανακλήθηκε από το συγγραφέα της και θα σβηστεί αυτόματα σε %{count} ώρες, εκτός και αν κάποιος την επισημάνει στους συντοντιστές)" + expand_collapse: "επέκταση/σύμπτηξη" + gap: + one: "δες 1 κρυφή απάντηση" + other: "δες {{count}} κρυφές απαντήσεις" + unread: "Η ανάρτηση δεν έχει διαβαστεί" + has_replies: + one: "{{count}} Απάντηση" + other: "{{count}} Απαντήσεις" + has_likes: + one: "{{count}} \"Μου αρέσουν\"" + other: "{{count}} \"Μου αρέσει\"" + has_likes_title: + one: "1 άτομο πάτησε \"μου αρέσει\" στη δημοσίευση" + other: "{{count}} άτομα που πάτησαν \"Μου αρέσει\" στη δημοσίευση" + has_likes_title_only_you: "Σου αρέσει αυτή η δημοσίευση" + has_likes_title_you: + one: "εσύ και 1 άλλο άτομο πάτησε \"Μου αρέσει\" στη δημοσίευση" + other: "εσύ και {{count}} άλλα άτομα πατήσατε \"Μου αρέσει\" στη δημοσίευση" + errors: + create: "Λυπούμαστε, παρουσιάστηκε σφάλμα κατά την δημιουργία της ανάρτησης. Προσπάθησε πάλι." + edit: "Λυπούμαστε, παρουσιάστηκε σφάλμα κατά την επεξεργασία της ανάρτησης. Προσπάθησε πάλι." + upload: "Λυπούμαστε, παρουσιάστηκε σφάλμα κατά το ανέβασμα του αρχείου. Προσπάθησε πάλι." + file_too_large: "Λυπούμαστε, αυτός ο φάκελος είναι πολύ μεγάλος (το μέγιστο μέγεθος είναι {{max_size_kb}}kb). Γιατί δεν μεταφορτώνεις τον μεγάλο σου φάκελο σε μια υπηρεσία ανταλλαγής cloud κι έπειτα να μοιραστείς τον σύνδεσμο;" + too_many_uploads: "Λυπούμαστε, μπορείς να ανεβάζεις μόνο ένα αρχείο τη φορά." + too_many_dragged_and_dropped_files: "Λυπούμαστε, μπορείς να ανεβάσεις μόνο 10 φακέλους τη φορά." + upload_not_authorized: "Λυπούμαστε, ο φάκελος που προσπαθείς να ανεβάσεις δεν επιτρέπεται (επιτρεπόμενες επεκτάσεις:{{authorized_extensions}})" + image_upload_not_allowed_for_new_user: "Λυπούμαστε, οι νέοι χρήστες δεν μπορούν να ανεβάζουν εικόνες." + attachment_upload_not_allowed_for_new_user: "Λυπούμαστε, οι νέοι χρήστες δεν μπορούν να ανεβάζουν συννημένα." + attachment_download_requires_login: "Λυπούμαστε, για να κατεβάζεις συνημμένα πρέπει πρώτα να συνδεθείς." + abandon: + confirm: "Σίγουρα θέλεις να απορρίψεις την ανάρτησή σου;" + no_value: "Όχι, κράτησέ τη" + yes_value: "Ναί, απέρριψέ τη" + via_email: "αυτή η ανάρτηση έγινε μέσω ηλεκτρονικού ταχυδρομείου" + via_auto_generated_email: "αυτή η δημοσίευση έφτασε μέσω ενός ηλεκτρονικού μηνύματος που δημιουργήθηκε αυτόματα" + whisper: "αυτή η δημοσίευση λέγεται εμπιστευτικά στους συντονιστές" + wiki: + about: "αυτή η δημοσίευση είναι βίκι" + archetypes: + save: 'Αποθήκευση επιλογών' + few_likes_left: "Ευχαριστούμε που μοιράστηκες την αγάπη σου! Έχεις μόνο μερικά \"μου αρέσει\" ακόμα να χρησιμοποιήσεις σήμερα." + controls: + reply: "απάντησε σε αυτή την ανάρτηση" + like: "αυτή η ανάρτηση μου αρέσει" + has_liked: "αυτή η ανάρτηση σου αρέσει" + undo_like: "δεν «μου αρέσει» πια" + edit: "επεξεργασία ανάρτησης" + edit_anonymous: "Λυπούμαστε, αλλά για να επεξεργαστείς αυτή την ανάρτηση πρέπει πρώτα να συνδεθείς." + flag: "Ανάφερε αυτή την ανάρτηση στους συντονιστές ή στείλε ένα προσωπικό μήνυμα" + delete: "Σβήσε αυτή την ανάρτηση" + undelete: "επανάφερε αυτή την ανάρτηση " + share: "κοινοποίησε έναν σύνδεσμο προς αυτή την ανάρτηση " + more: "Περισσότερα" + delete_replies: + confirm: + one: "Θέλεις επίσης να σβήσεις την άμεση απάντηση σε αυτή την ανάρτηση;" + other: "Θέλεις επίσης να σβήσεις τις {{count}} άμεσες απαντήσεις σε αυτή την ανάρτηση;" + yes_value: "Ναι, σβήσε και τις απαντήσεις" + no_value: "Όχι, μόνο αυτή την ανάρτηση" + admin: "Δράσεις διαχειριστών" + wiki: "Δημιουργία βίκι" + unwiki: "Αφαίρεση βίκι" + convert_to_moderator: "Πρόσθεσε χρωματισμό στους συνεργάτες" + revert_to_regular: "Αφαίρεσε το χρωματισμό από τους συνεργάτες" + rebake: "Ανανέωση HTML" + unhide: "Επανεμφάνιση" + change_owner: "Αλλαγή ιδιοκτησίας" + actions: + flag: 'Επισήμανση' + defer_flags: + one: "Αγνόησε την επισήμανση" + other: "Αγνόησε τις επισημάνσεις" + undo: + off_topic: "Αναίρεση σήμανσης" + spam: "Αναίρεση σήμανσης" + inappropriate: "Αναίρεση σήμανσης" + bookmark: "Αφαίρεση σελιδοδείκτη" + like: "δεν «μου αρέσει» πια" + vote: "Αναίρεση ψήφου" + people: + off_topic: "μαρκαρισμένο σαν εκτός θέματος" + spam: "μαρκαρισμένο σαν ανεπιθύμητη αλληλογραφία" + inappropriate: "μαρκαρισμένο σαν ακατάλληλο" + notify_moderators: "ειδοποιήθηκαν οι συντονιστές" + notify_user: "έστειλε ένα μήνυμα" + bookmark: "του έβαλαν σελιδοδείκτη" + like: "Σου άρεσε αυτό" + vote: "Ψήφισες για αυτό" + by_you: + off_topic: "Το επισήμανες σαν εκτός θέματος" + spam: "Το επισήμανες σαν ανεπιθύμητο" + inappropriate: "Το επισήμανες σαν ανάρμοστο" + notify_moderators: "Το επισήμανες στους συντονιστές" + notify_user: "Έστειλες ένα μήνυμα σε αυτόν τον χρήστη" + bookmark: "Τοποθέτησες σελιδοδείκτη σε αυτή την ανάρτηση" + like: "«Σου άρεσε» η ανάρτηση" + vote: "Ψήφισες για αυτή την ανάρτηση" + by_you_and_others: + off_topic: + one: "Εσύ και άλλος ένας το επισημάνατε σαν εκτός θέματος " + other: "Εσύ και άλλοι {{count}} το επισημάνατε σαν εκτός θέματος " + spam: + one: "Εσύ και άλλος ένας το επισημάνατε ως ανεπιθύμητο " + other: "Εσύ και άλλοι {{count}} το επισημάνατε ως ανεπιθύμητο " + inappropriate: + one: "Εσύ και άλλος ένας το επισημάνατε ως ανάρμοστο" + other: "Εσύ και άλλοι {{count}} το επισημάνατε ως ανάρμοστο" + notify_moderators: + one: "Εσύ και άλλος ένας το επισημάνατε στους συντονιστές" + other: "Εσύ και άλλοι {{count}} το επισημάνατε στους συντονιστές" + notify_user: + one: "Εσύ και ένα ακόμη πρόσωπο στείλατε ένα μήνυμα σε αυτόν τον χρήστη" + other: "Εσύ και {{count}} άλλοι στείλατε ένα μήνυμα σε αυτόν τον χρήστη" + bookmark: + one: "Εσύ και άλλος ένας τοποθετήσατε σελιδοδείκτη στην ανάρτηση" + other: "Εσύ και άλλοι {{count}} τοποθετήσατε σελιδοδείκτη στην ανάρτηση" + like: + one: "Εσένα και ενός άλλου «σας άρεσε»" + other: "Εσένα και {{count}} άλλων «σας άρεσε»" + vote: + one: "Εσύ και άλλος ένας ψηφίσατε για την ανάρτηση" + other: "Εσύ και άλλοι {{count}} ψηφίσατε για την ανάρτηση" + by_others: + off_topic: + one: "Ένα άτομο το επισήμανε σαν εκτός θέματος" + other: "{{count}} άτομα το επισημάνανε σαν εκτός θέματος" + spam: + one: "Ένα άτομο το επισήμανε σαν ανεπιθύμητο" + other: "{{count}} άτομα το επισημάνανε σαν ανεπιθύμητο" + inappropriate: + one: "Ένα άτομο το επισήμανε σαν ανάρμοστο" + other: "{{count}} άτομα το επισημάνανε σαν ανάρμοστο" + notify_moderators: + one: "Ένα άτομο το επισήμανε στους συντονιστές" + other: "{{count}} άτομα το επισημάνανε στους συντονιστές" + notify_user: + one: "1 πρόσωπο έστειλε ένα μήνυμα σε αυτόν τον χρήστη" + other: "{{count}} πρόσωπα έστειλαν ένα μήνυμα σε αυτόν τον χρήστη" + bookmark: + one: "Ένα άτομο τοποθέτησε σελιδοδείκτη στην ανάρτηση" + other: "{{count}} άτομα τοποθέτησαν σελιδοδείκτη στην ανάρτηση" + like: + one: "Σε ένα άτομο άρεσε η ανάρτηση" + other: "Σε {{count}} άτομα άρεσε η ανάρτηση" + vote: + one: "Ένα άτομο ψήφισε για την ανάρτηση" + other: "{{count}} άτομα ψήφισαν για την ανάρτηση" + delete: + confirm: + one: "Είσαι σίγουρος ότι θέλεις να σβήσεις αυτή την ανάρτηση;" + other: "Είσαι σίγουρος ότι θέλεις να σβήσεις όλες αυτές τις αναρτήσεις;" + merge: + confirm: + one: "Είσαι βέβαιος πως θέλεις να συγχωνεύσεις αυτές τις δημοσιεύσεις;" + other: "Είσαι βέβαιος πως θέλεις να συγχωνεύσεις αυτές {{count}} τις δημοσιεύσεις;" + revisions: + controls: + first: "Πρώτη αναθεώρηση" + previous: "Προηγούμενη αναθεώρηση" + next: "Επόμενη αναθεώρηση" + last: "Τελευταία αναθεώρηση" + hide: "Κρύψε την αναθεώρηση" + show: "Εμφάνισε την αναθεώρηση" + revert: "Επιστροφή στην αναθεώρηση" + edit_wiki: "Επεξεργασία της Wiki" + edit_post: "Επεξεργασία δημοσίευσης" + comparing_previous_to_current_out_of_total: "{{previous}} {{current}} /{{total}}" + displays: + inline: + title: "Δείξε τις αλλαγές ανάμεσα στο κείμενο" + button: 'HTML' + side_by_side: + title: "Δείξε τις αλλαγές δίπλα στο κείμενο" + button: 'HTML' + side_by_side_markdown: + title: "Δείξε τα αρχικά κείμενα δίπλα-δίπλα για σύγκριση" + button: 'Ακατέργαστο' + category: + can: 'μπορεί… ' + none: '(χωρίς κατηγορία)' + all: 'Όλες οι κατηγορίες' + choose: 'Επιλογή κατηγορίας…' + edit: 'επεξεργασία' + edit_long: "Επεξεργασία" + view: 'Δείξε τα νήματα αυτής της κατηγορίας' + general: 'Γενικά' + settings: 'Ρυθμίσεις' + topic_template: "Δείγμα νήματος" + tags: "Ετικέτες" + tags_allowed_tags: "Ετικέτες που μπορούν να χρησιμοποιηθούν μόνο σε αυτή την κατηγορία:" + tags_allowed_tag_groups: "Βάλε ετικέτα σε ομάδες που μπορούν να χρησιμοποιηθούν μόνο σε αυτή την κατηγορία:" + tags_placeholder: "(Προαιρετική) λίστα επιτρεπόμενων ετικετών" + tag_groups_placeholder: "(Προαιρετική) λίστα επιτρεπόμενων ετικετών σε ομάδες" + topic_featured_link_allowed: "Επίτρεψε προτεινόμενους συνδέσμους σε αυτή την κατηγορία" + delete: 'Διαγραφή κατηγορίας' + create: 'Νέα κατηγορία' + create_long: 'Δημιουργία καινούριας κατηγορίας' + save: 'Αποθήκευση κατηγορίας' + slug: 'Μνημονικό για το URL' + slug_placeholder: '(Προαιρετικά) με λέξεις ενωμένες με παύλα για το URL' + creation_error: Παρουσιάστηκε κάποιο σφάλμα κατά την δημιουργία της κατηγορίας + save_error: Παρουσιάστηκε κάποιο σφάλμα κατά την αποθήκευση της κατηγορίας. + name: "Όνομα κατηγορίας" + description: "Περιγραφή" + topic: "Κατηγορία νήματος" + logo: "Εικονίδιο κατηγορίας" + background_image: "Εικόνα φόντου κατηγορίας" + badge_colors: "Χρώματα παράσημου" + background_color: "Χρώμα φόντου" + foreground_color: "Χρώμα στο προσκήνιο" + name_placeholder: "Μια ή δύο λέξεις το πολύ" + color_placeholder: "Οποιοδήποτε χρώμα" + delete_confirm: "Είσαι σίγουρος ότι θέλεις να διαγράψεις αυτή την κατηγορία;" + delete_error: "Παρουσιάστηκε κάποιο σφάλμα κατά τη διαγραφή της κατηγορίας." + list: "Λίστα κατηγοριών" + no_description: "Παρακαλώ δώσε μια περιγραφή για την κατηγορία" + change_in_category_topic: "Επεξεργασία περιγραφής" + already_used: 'Αυτό το χρώμα έχει χρησιμοποιηθεί για άλλη κατηγορία' + security: "Ασφάλεια" + special_warning: "Προσοχή: Αυτή η κατηγορία είναι pre-seeded και οι ρυθμίσεις προστασίας δεν μπορούν να επεξεργαστούν. Εάν δεν επιθυμείτε να χρησιμοποιήσετε αυτήν την κατηγορία, διαγράψτε την αντί να τη επαναχρησιμοποιήσετε για άλλο σκοπό. " + images: "Εικόνες" + auto_close_label: "Αυτόματο κλείσιμο νήματος έπειτα:" + auto_close_units: "ώρες" + email_in: "Προσαρμοσμένη διεύθυνση για εισερχόμενα μηνύματα ηλεκτρονικού ταχυδρομείου:" + email_in_allow_strangers: "Αποδοχή μηνυμάτων ηλεκτρονικού ταχυδρομείου από ανώνυμους χρήστες, χωρίς λογαριασμούς" + email_in_disabled: "Η δημιουργία νέων νημάτων μέσω ηλεκτρονικού ταχυδρομείου είναι απενεργοποιημένη στις ρυθμίσεις. Για να επιτραπεί η δημιουργία νέων νημάτων μέσω ηλεκτρονικού ταχυδρομείου," + email_in_disabled_click: 'ενεργοποίσε τη ρύθμιση «είσοδος με ηλ. ταχυδρομείο»' + suppress_from_homepage: "Αποσιώπηση αυτής της κατηγορίας από την αρχική σελίδα." + show_subcategory_list: "Προβολή υποκατηγοριών κάτω απο τα νήματα αυτής της κατηγορίας " + all_topics_wiki: "Φτιάξε καινούρια νήματα βίκι από προεπιλογή. " + sort_order: "Ταξινόμηση κατά Προεπιλογή:" + allow_badges_label: "Να επιτρέπεται η απονομή παράσημων σε αυτή την κατηγορία" + edit_permissions: "Επεξεργασία δικαιωμάτων" + add_permission: "Προσθήκη δικαιώματος" + this_year: "φέτος" + position: "θέση" + default_position: "Προκαθορισμένη θέση" + position_disabled: "Οι κατηγορίες εμφανίζονται ανάλογα με το πόσο ενεργές είναι. Για να αλλάξει η σειρά εμφάνισης των κατηγοριών, " + position_disabled_click: 'ενεργοποίησε τη ρύθμιση «σταθερές θεσεις κατηγοριών»' + parent: "Μητρική κατηγορία" + notifications: + watching: + title: "Παρατηρείται" + description: "Θα παρακολουθείς αυτόματα όλα τα νήματα σε αυτές τις κατηγορίες. Θα λαμβάνεις ειδοποιήσεις για κάθε καινούρια δημοσίευση, και το πλήθος των νέων απαντήσεων θα εμφανίζεται." + watching_first_post: + title: "Παρακολούθηση πρώτης δημοσίευσης" + description: "Θα λαμβάνεις ειδοποίηση μόνο για την πρώτη δημοσίευση των καινούριων θεμάτων σε αυτές τις κατηγορίες." + tracking: + title: "Παρακολουθείται" + description: "Θα παρακολουθείς αυτόματα όλα τα νήματα σε αυτές τις κατηγορίες. Θα λαμβάνεις ειδοποιήσεις, εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε εσένα, και το πλήθος των νέων απαντήσεων θα εμφανίζεται." + regular: + title: "Φυσιολογικά" + description: "Θα ειδοποιείσαι εάν κάποιος αναφέρει το @όνομά σου ή απαντά σε εσένα." + muted: + title: "Σε σιγή" + description: "Δε θα λαμβάνεις ποτέ ειδοποιήσεις για οτιδήποτε σχετικό με τα νέα νήματα σε αυτές τις κατηγορίες, και δε θα εμφανίζονται στα τελευταία." + sort_options: + default: "προεπιλογή" + likes: "Αρέσει" + op_likes: "Πρωτότυπο Δημοσίευση \"Μου αρέσει\"" + views: "Προβολές" + posts: "Δημοσιεύσεις" + activity: "Δραστηριότητα" + posters: "Αφίσες" + category: "Κατηγορία" + created: "Δημιουργήθηκε" + sort_ascending: 'Αύξουσα' + sort_descending: 'Φθίνουσα' + flagging: + title: 'Ευχαριστούμε για τη συνεισφορά σου!' + action: 'Επισήμανση ανάρτησης' + take_action: "Κάνε κάτι" + notify_action: 'Μήνυμα' + official_warning: 'Επίσημη Προειδοποίηση' + delete_spammer: "Διαγραφή του ανεπιθύμητου χρήστη" + delete_confirm_MF: "Πρόκειται να διαγράψεις {POSTS, plural, one {1 post} άλλα {# δημοσιεύσεις}} και{TOPICS,plural, one {1 topic} άλλα {# topics}} από το χρήστη, αφαίρεσε το λογαριασμό τους, μπλόκαρε τις εγγραφές από τη διεύθυνση IP {ip_address}, και πρόσθεσε τη διεύθυνση του ηλεκτρονικού ταχυδρομείου τους {email} σε μια μόνιμη καταχώρηση μπλοκαρισμένων. Είσαι βέβαιος πως αυτός ο χρήστης είναι ανεπιθύμητος;" + yes_delete_spammer: "Ναι, σβήσε τον ανεπιθύμητο χρήστη" + ip_address_missing: "(μη διαθέσιμο)" + hidden_email_address: "(κρυφό)" + submit_tooltip: "Στείλε την κρυφή επισήμανση" + take_action_tooltip: "Να φτάσει αμέσως στο όριο των απαραίτητων ειδοποιήσεων, αντί να περιμένει και άλλες ειδοποιήσεις από την κοινότητα." + cant: "Λυπούμαστε, αυτή τη στιγμή δεν γίνεται να επισημάνεις την ανάρτηση." + notify_staff: 'Ειδοποίηση του προσωπικού ιδιωτικά' + formatted_name: + off_topic: "Είναι εκτός θέματος" + inappropriate: "Είναι ανάρμοστο" + spam: "Είναι ανεπιθύμητο" + custom_placeholder_notify_user: "Να είσαι συγκεκριμένος, εποικοδομητικός και πάντα φιλικός." + custom_placeholder_notify_moderators: "Παρακαλούμε πες τι ακριβως είναι αυτό που σε ανησυχεί. Αν είναι δυνατό, παράπεμψε σε σχετικούς συνδέσμους και παραδείγματα." + custom_message: + at_least: + one: "βάλε τουλάχιστον 1 χαρακτήρα" + other: "βάλε τουλάχιστον {{count}} χαρακτήρες" + more: + one: "1 να πας..." + other: "{{count}} να πας..." + left: + one: "1 απομένει" + other: "{{count}} απομένει" + flagging_topic: + title: "Ευχαριστούμε για τη συνεισφρορά σου..." + action: "Επισήμανση του νήματος" + notify_action: "Μήνυμα" + topic_map: + title: "Περίληψη νήματος" + participants_title: "Συχνές δημοσιεύσεις" + links_title: "Δημοφιλείς Σύνδεσμοι" + links_shown: "εμφάνισε περισσότερες συνδέσεις" + clicks: + one: "1 κλικ" + other: "%{count} κλικ" + post_links: + about: "επέκτεινε περισσότερους συνδέσμους για αυτή τη δημοσίευση" + title: + one: "1 περισσότερο" + other: "%{count} περισσότερα" + topic_statuses: + warning: + help: "Αυτή είναι μια επίσημη προειδοποίηση." + bookmarked: + help: "Τοποθέτησες σελιδοδείκτη σε αυτό το νήμα" + locked: + help: "Αυτό το νήμα είναι πια κλειστό. Οι απαντήσεις δεν είναι πλέον δυνατές" + archived: + help: "Αυτό το νήμα είναι αρχικοποιημένο. Έχει παγώσει και δεν μπορεί πλέον να τροποποιηθεί" + locked_and_archived: + help: "Αυτό το θέμα είναι κλειστό και αρχειοθετημένο. Δε δέχεται πια καινούριες απαντήσεις και δεν μπορεί να αλλάξει." + unpinned: + title: "Ξεκαρφιτσωμένο" + help: "Για σένα αυτό το νήμα είναι ξεκαρφιτσωμένο. Θα εμφανίζεται στην κανονική του σειρά." + pinned_globally: + title: "Παντού καρφιτσωμένο" + help: "Αυτό το νήμα είναι καρφιτσωμένο παγκοσμίως. Θα εμφανίζεται στην κορυφή των τελευταίων και στην κατηγορία του" + pinned: + title: "Καρφιτσωμένο" + help: "Αυτό το νήμα είναι καρφιτσωμένο για σένα. Θα εμφανίζεται πάντα στην κορυφή της κατηγορίας του " + invisible: + help: "Αυτό το νήμα είναι αόρατο. Δε θα εμφανίζεται σε καμια λίστα νημάτων και μπορεί να φάνε μόνο αν ακολουθήσεις ένα άμεσο σύνδεσμο προς αυτό." + posts: "Αναρτήσεις" + posts_long: "υπάρχουν {{number}} αναρτήσεις σε αυτό το νήμα" + posts_likes_MF: | + Αυτό το νήμα έχει {count, plural, one {1 απάντηση} other {# απαντήσεις}} {ratio, select, + χαμηλό {με μεγάλη αναλογία «μου αρέσει» στις αναρτήσεις} + μέτριο {με πολύ μεγάλη αναλογία «μου αρέσει» στις αναρτήσεις} + ψηλό + {με εξαιρετικά μεγάλη αναλογία «μου αρέσει» στις αναρτήσεις} other {}} + original_post: "Αρχική ανάρτηση" + views: "Προβολές" + views_lowercase: + one: "προβολή" + other: "προβολές" + replies: "Απαντήσεις" + views_long: + one: "αυτό το νήμα έχει προβληθεί 1 φορά" + other: "αυτό το νήμα έχει προβληθεί {{number}} φορές" + activity: "Δραστηριότητα" + likes: "«Μου αρέσει»" + likes_lowercase: + one: "μου αρέσει" + other: "μου αρέσει" + likes_long: "υπάρχουν {{number}} «μου αρέσει» σε αυτό το νήμα" + users: "Χρήστες" + users_lowercase: + one: "χρήστης" + other: "χρήστες" + category_title: "Κατηγορία" + history: "Ιστορικό" + changed_by: "του/της {{author}}" + raw_email: + title: "Μήνυμα (προβολή πηγαίου κώδικα)" + not_available: "Μη διαθέσιμο!" + categories_list: "Λίστα κατηγοριών" + filters: + with_topics: "%{filter} νήματα" + with_category: "%{filter}ε νήματα στην %{category}" + latest: + title: "Τελευταία" + title_with_count: + one: "Τελευταία (1)" + other: "Τελευταία ({{count}})" + help: "νήματα με πρόσφατες αναρτήσεις" + hot: + title: "Δημοφιλές" + help: "μια επιλογή από δημοφιλή νήματα" + read: + title: "Διαβασμένο" + help: "νήματα που έχεις διαβάσει, με τη σειρά που τα έχεις διαβάσει" + search: + title: "Αναζήτηση" + help: "αναζήτηση σε όλα τα νήματα" + categories: + title: "Κατηγορίες" + title_in: "Κατηγορία - {{categoryName}}" + help: "όλα τα νήματα ομαδοποιημένα ανά κατηγορία" + unread: + title: "Μη αναγνωσμένο" + title_with_count: + one: "Μη αναγνωσμένα (1)" + other: "Μη αναγνωσμένα ({{count}})" + help: "νήματα που παρακολουθείς και που έχουν αδιάβαστες αναρτήσεις" + lower_title_with_count: + one: "1 μη αναγνωσμένο" + other: "{{count}} μη αναγνωσμένα" + new: + lower_title_with_count: + one: "1 νέο" + other: "{{count}} νέα" + lower_title: "νέο" + title: "Καινούριο" + title_with_count: + one: "Νέα (1)" + other: "Νέα ({{count}})" + help: "νήματα που δημιουργήθηκαν τις προηγούμενες μέρες" + posted: + title: "Οι αναρτήσεις μου" + help: "νήματα στα οποία έχεις αναρτήσεις" + bookmarks: + title: "Σελιδοδείκτες" + help: "νήματα όπου έχεις σελιδοδείκτη" + category: + title: "{{categoryName}}" + title_with_count: + one: "{{categoryName}} (1)" + other: "{{categoryName}} ({{count}})" + help: "τελευταία νήματα στην κατηγορία {{categoryName}} " + top: + title: "Κορυφαία" + help: "τα πιο ενεργά νήματα τον τελευταίο χρόνο, μήνα, εβδομάδα ή μέρα" + all: + title: "Από πάντα" + yearly: + title: "Ανά έτος" + quarterly: + title: "Τριμηνιαία έκδοση" + monthly: + title: "Ανά μήνα" + weekly: + title: "Ανά εβδομάδα" + daily: + title: "Ανά μέρα" + all_time: "Από πάντα" + this_year: "Χρόνος" + this_quarter: "Τέταρτο" + this_month: "Μήνας" + this_week: "εβδομάδα" + today: "Σήμερα" + other_periods: "δες τα κορυφαία" + browser_update: 'Δυστυχώς, το πρόγραμμα περιήγησής σου είναι πολύ παλιό για να δουλέψει σε αυτό τον ιστότοπο. Παρακαλώ ενημέρωσέ το.' + permission_types: + full: "Δημιούργησε / Απάντησε / Δες" + create_post: "Απάντησε / Δες" + readonly: "Δες" + lightbox: + download: "λήψη" + keyboard_shortcuts_help: + title: 'Συντόμευση Πληκτρολογίου' + jump_to: + title: 'Μεταπήδηση σε' + home: 'g, h Αρχική' + latest: 'g, I Τελευταία' + new: 'g, n Νέα' + unread: 'g, u Μη αναγνωσμένα' + categories: 'g, c Κατηγορίες' + top: 'g, t Κορυφαία' + bookmarks: 'g, b Σελιδοδείκτες' + profile: 'g, p Προφίλ' + messages: 'g, m Μηνύματα' + navigation: + title: 'Πλοήγηση' + jump: '# Πήγαινε στη δημοσίευση #' + back: 'u Πίσω' + up_down: 'kj Μετακίνηση επιλογής ↑ ↓' + open: 'o ή Εισαγωγή Άνοιξε το επιλεγμένο νήμα' + next_prev: 'shift+j/shift+k Επόμενη/Προηγούμενη ενότητα' + application: + title: 'Εφαρμογή' + create: 'Δημιουργία νέου νήματος' + notifications: 'n Άνοιγμα ειδοποιήσεων' + hamburger_menu: '=''Ανοιξε το μενού χάμπουρκερ' + user_profile_menu: 'p Άνοιγμα του μενού του χρήστη' + show_incoming_updated_topics: '. Εμφάνιση ενημερωμένων νημάτων' + search: '/ Αναζήτηση' + help: '? Εμβάνισε τη βοήθεια πληκτρολογίου' + dismiss_new_posts: 'x, r Αγνόησε νέα νήματα/αναρτήσεεις' + dismiss_topics: 'x, t Απόρριψη νημάτων' + log_out: 'shift+z shift+z Αποσύνδεση' + actions: + title: 'Δράσεις' + bookmark_topic: 'Τοποθέτηση σελιδοδείκτη στο νήμα' + pin_unpin_topic: 'shift+p Καρφίτσωμα/Ξεκαρφίτσωμα νήματος' + share_topic: 'shift+s Κοινοποίηση νήματος' + share_post: 's Κοινοποίηση δημοσίευσης' + reply_as_new_topic: 't Απάντηση σαν συνδεδεμένο νήμα' + reply_topic: 'shift+r Απάντηση στο νήμα' + reply_post: 'r Απάντηση στη δημοσίευση' + quote_post: 'q Παράθεση δημοσίευσης' + like: 'I "Μου αρέσει" η δημοσίευση' + flag: '! Επισήμανση δημοσίευσης' + bookmark: 'b Τοποθέτηση σελιδοδείκτη στη δημοσίευση' + edit: 'e Επεξεργασία δημοσίευσης' + delete: 'd Διαγραφή ανάρτησης' + mark_muted: 'm, m Σίγαση νήματος' + mark_regular: 'm, r Κανονικό (προεπιλογμένο) νήμα' + mark_tracking: 'm, t Παρακολούθηση νήματος' + mark_watching: 'm, w Παρατήρηση νήματος' + print: 'ctrl+p Εκτύπωση νήματος' + badges: + earned_n_times: + one: "Κέρδισε αυτό το παράσημο 1 φορά" + other: "Κέρδισε αυτό το παράσημο %{count} φορές" + granted_on: "Χορηγήθηκε στις %{date}" + others_count: "Άλλοι με αυτό το παράσημο (%{count})" + title: Παράσημα + allow_title: "Διαθέσιμος τίτλος" + multiple_grant: "απονεμήθηκε πολλές φορές" + badge_count: + one: "1 Παράσημο" + other: "%{count} Παράσημα" + more_badges: + one: "+1 Περισσότερα" + other: "+%{count} Περισσότερα" + granted: + one: "1 χορηγήθηκε" + other: "%{count} χορηγήθηκε" + select_badge_for_title: Επίλεξε ένα παράσημο για να χρησιμοποιήσεις ως τίτλο + none: "" + badge_grouping: + getting_started: + name: Ξεκινώντας + community: + name: Κοινότητα + trust_level: + name: Επίπεδο Εμπιστοσύνης + other: + name: Άλλο + posting: + name: Δημοσιεύεται + google_search: | +

    Αναζήτηση στο Google

    +

    +

    +

    + tagging: + all_tags: "Όλες οι Ετικέτες" + selector_all_tags: "όλες οι ετικέτες" + selector_no_tags: "καμία ετικέτα" + changed: "οι ετικέτες άλλαξαν" + tags: "Ετικέτες" + choose_for_topic: "επίλεξε προαιρετικές ετικέτες για αυτό το νήμα" + delete_tag: "Αφαίρεση Ετικέτας" + delete_confirm: "Είσαι σίγουρος πως θέλεις να αφαιρέσεις την ετικέτα;" + rename_tag: "Μετονομασία Ετικέτας" + rename_instructions: "Επίλεξε ένα καινούριο όνομα για την ετικέτα:" + sort_by: "Ταξινόμηση κατά" + sort_by_count: "μετρώ" + sort_by_name: "όνομα" + manage_groups: "Διαχείριση Ομάδων Ετικέτας" + manage_groups_description: "Καθορισμός ομάδων για την οργάνωση ετικετών" + filters: + without_category: "%{filter} %{tag} νήματα" + with_category: "%{filter} %{tag} θέματα στην %{category}" + untagged_without_category: "%{filter} νήματα χωρίς ετικέτες" + untagged_with_category: "%{filter} νήματα χωρίς ετικέτες σε %{category}" + notifications: + watching: + title: "Παρακολούθηση" + description: "Θα παρακολουθείς αυτόματα όλα τα νήματα με αυτή την ετικέτα. Θα λαμβάνεις ειδοποιήσεις όλων των καινούριων δημοσιεύσεων και νημάτων, και το πλήθος των μη αναγνωσμένων και καινούριων δημοσιεύσεων θα εμφανίζεται επίσης δίπλα στο νήμα." + watching_first_post: + title: "Παρακολούθηση πρώτης δημοσίευσης" + description: "Θα λαμβάνεις ειδοποιήσεις μόνο για την πρώτη δημοσίευση του κάθε καινούριου νήματος με αυτή την ετικέτα." + tracking: + title: "Παρακολουθείται" + description: "Θα παρακολουθείς αυτόματα όλα τα νήματα με αυτή την ετικέτα. Το πλήθος των μη αναγνωσμένων δημοσιεύσεων θα εμφανίζεται δίπλα στο νήμα." + regular: + title: "Κανονικός" + description: "Θα λαμβάνεις ειδοποίηση εάν κάποιος αναφέρει το @όνομά σου ή απαντήσει σε αυτή τη δημοσίευση." + muted: + title: "Σίγαση" + description: "Δε θα λαμβάνεις ειδοποιήσεις για οτιδήποτε σχετικά με τα καινούρια νήματα με αυτή την ετικέτα, και δε θα εμφανίζονται στην καρτέλα με τα μη αναγνωσμένα." + groups: + title: "Ομάδες ετικέτας" + about: "Πρόσθεσε ετικέτες στις ομάδες για να τις διαχειριστείς με περισσότερη ευκολία." + new: "Καινούρια ομάδα" + tags_label: "Ετικέτες σε αυτή την ομάδα:" + parent_tag_label: "Μητρική Ετικέτα:" + parent_tag_placeholder: "Προαιρετικό" + parent_tag_description: "Οι ετικέτες από αυτή την ομάδα δεν μπορούν να χρησιμοποιηθούν αν δεν είναι παρούσα η μητρική ετικέτα." + one_per_topic_label: "Περιορισμός μιας ετικέτας για κάθε νήμα από αυτή την ομάδα" + new_name: "Νέα ομαδική ετικέτα" + save: "Αποθήκευση" + delete: "Διαγραφή" + confirm_delete: "Είσαι βέβαιος πως θέλεις να διαγράψεις αυτή την ομαδική ετικέτα;" + topics: + none: + unread: "Δεν υπάρχουν μη αναγνωσμένα νήματα." + new: "Δεν υπάρχουν νέα νήματα." + read: "Δεν έχεις διαβάσει κανένα νήμα ακόμα." + posted: "Δεν έχεις δημοσιεύσει σε κανένα νήμα ακόμα." + latest: "Δεν υπάρχουν τελευταία νήματα." + hot: "Δεν υπάρχουν δημοφιλή νήματα." + bookmarks: "Δεν υπάρχουν νήματα με σελιδοδείκτη ακόμα." + top: "Δεν υπάρχουν κορυφαία νήματα." + search: "Δεν υπάρχουν αποτελέσματα από την αναζήτηση." + bottom: + latest: "Δεν υπάρχουν πια τελευταία νήματα." + hot: "Δεν υπάρχουν άλλα κορυφαία μυνήματα" + posted: "Δεν υπάρχουν πια νήματα που έχουν δημοσιευθεί." + read: "Δεν υπάρχουν πια διαβασμένα νήματα." + new: "Αυτά ήταν όλα τα νέα νήματα." + unread: "Δεν υπάρχουν πια μη αναγνωσμένα νήματα." + top: "Δεν υπάρχουν πια κορυφαία νήματα." + bookmarks: "Δεν υπάρχουν πια νήματα με σελιδοδείκτη." + search: "Δεν υπάρχουν αποτελέσματα για αυτή την αναζήτηση." + invite: + custom_message: "Κάνε την πρόσκλησή σου λίγο πιο προσωπική γράφοντας ένα/μια" + custom_message_link: "προσαρμοσμένο μήνυμα" + custom_message_placeholder: "Πρόσθεσε το προσαρμοσμένο μήνυμά σου" + custom_message_template_forum: "Γεια, θα πρέπει να λάβεις μέρος σε αυτό το φόρουμ/χώρο συζητήσεων!" + custom_message_template_topic: "Γεια, νομίζω ότι θα απολαύσεις αυτό το νήμα!" + safe_mode: + enabled: "Η λειτουργία ασφαλείας είναι ενεργοποιημένη, για να εξέλθεις από τη λειτουργία ασφαλείας κλείσε το παράθυρο περιήγησης" + admin_js: + type_to_filter: "γράψε εδώ για φιλτράρισμα..." + admin: + title: 'Διαχειριστής του Discourse' + moderator: 'Συντονιστής' + dashboard: + title: "Πίνακας ελέγχου" + last_updated: "Ο πίνακας ελέγχου ενημερώθηκε:" + version: "Έκδοση" + up_to_date: "Είσαι ενήμερος!" + critical_available: "Μια κρίσιμη ενημέρωση είναι διαθέσιμη" + updates_available: "Υπάρχουν διαθέσιμες ενημερώσεις" + please_upgrade: "Παρακαλώ κάνε αναβάθμιση!" + no_check_performed: "Δεν έγινε έλεγχος για ενημερώσεις. Βεβαιώσου πως το sidekiq τρέχει." + stale_data: "Δεν έγινε έλεγχος για ενημερώσεις εδώ και αρκετό καιρό. Βεβαιώσου πως το sidekiq τρέχει." + version_check_pending: "Φαίνεται πως πρόσφατα έκανες ενημέρωση. Τέλεια!" + installed_version: "Εγκατεστημένα" + latest_version: "Τελευταία" + problems_found: "Υπάρχουν προβλήματα με την εγκατάσταση του Discourse:" + last_checked: "Τελευταίος έλεγχος" + refresh_problems: "Ανανέωση" + no_problems: "Δεν βρέθηκε κανένα πρόβλημα." + moderators: 'Συντονιστές: ' + admins: 'Διαχειριστές:' + blocked: 'Αποκλεισμένοι:' + suspended: 'Αποκλεισμένα:' + private_messages_short: "Μνμτ." + private_messages_title: "Μηνύματα" + mobile_title: "Κινητό" + space_free: "{{size}} ελεύθερα" + uploads: "ανεβάσματα" + backups: "αντίγραφα ασφαλείας" + traffic_short: "Κίνηση" + traffic: "Web requests της εφαρμογής" + page_views: "Προβολές σελίδας" + page_views_short: "Προβολές σελίδας" + show_traffic_report: "Δείξε λεπτομερή αναφορά κίνησης" + reports: + today: "Σήμερα" + yesterday: "Χτες" + last_7_days: "Τελευταίες 7 μέρες" + last_30_days: "Τελευταίες 30 μέρες" + all_time: "Συνολικά" + 7_days_ago: "Πριν από 7 μέρες" + 30_days_ago: "Πριν από 30 μέρες" + all: "Όλα" + view_table: "πίνακας" + view_graph: "Γραφική παράσταση" + refresh_report: "Ανανέωση αναφοράς" + start_date: "Ημερομηνία έναρξης" + end_date: "Ημερομηνία λήξης" + groups: "Όλες οι ομάδες" + commits: + latest_changes: "Τελευταίες αλλαγές: παρακαλούμε ανανεώνεται συχνά τη σελίδα σας!!!" + by: "από" + flags: + title: "Σημάνσεις" + old: "Παλιά" + active: "Ενεργά" + agree: "Συμφωνώ" + agree_title: "Επιβεβαίωσε αυτή τη σήμανση ως έγκυρη και σωστή" + agree_flag_modal_title: "Συμφωνώ και..." + agree_flag_hide_post: "Συμφωνώ (κρύψε την ανάρτηση και στείλε ΠΜ)" + agree_flag_hide_post_title: "Κρύψε αυτή την ανάρτηση και ειδοποίησε το χρήστη με ένα αυτόματο μήνυμα που τον προτρέπει να το επεξεργαστεί" + agree_flag_restore_post: "Συμφωνώ (επανάφερε την ανάρτηση)" + agree_flag_restore_post_title: "Επανάφερε την ανάρτηση" + agree_flag: "Συμφωνώ με τη επισήμανση " + agree_flag_title: "Συμφωνώ με την επισήμανση και κρατάω την ανάρτηση αμετάβλητη" + defer_flag: "Παρέπεμψέ το" + defer_flag_title: "Αφαίρεσε αυτή την επισήμανση. Δεν χρειάζεται να γίνει κάποια ενέργεια αυτή τη στιγμή" + delete: "Σβήστη" + delete_title: "Σβήσε την ανάρτηση στην οποία αναφέρεται αυτή η επισήμανση." + delete_post_defer_flag: "Σβήσε την ανάρτηση και αγνόησε την επισήμανση" + delete_post_defer_flag_title: "Σβήσε την ανάρτηση. Αν είναι η πρώτη στο νήμα, σβήστο και αυτό" + delete_post_agree_flag: "Σβήσε την ανάρτηση και συμφώνησε με την επισήμανση" + delete_post_agree_flag_title: "Σβήσε την ανάρτηση. Αν είναι η πρώτη, σβήστο και αυτό" + delete_flag_modal_title: "Σβήσε και..." + delete_spammer: "Διαγραφή ανεπιθύμητου χρήστη" + delete_spammer_title: "Διέγραψε το χρήστη και όλες τις αναρτήσεις και τα νήματά του" + disagree_flag_unhide_post: "Διαφωνώ (εμφάνισε την ανάρτηση)" + disagree_flag_unhide_post_title: "Απόρριψε όλες τις επισημάνσεις για την ανάρτηση και κάντη και πάλι ορατή" + disagree_flag: "Απόρριψη" + disagree_flag_title: "Απόρριψε την επισήμανση ως άκυρη ή εσφαλμένη" + clear_topic_flags: "Έγινε" + clear_topic_flags_title: "Το νήμα ελέγχθηκε και τα προβλήματα επιλύθηκαν. Κάνε κλίκ στο «έγινε» για να αφαιρέσεις τις επισημάνσεις." + more: "(περισσότερες απαντήσεις...)" + dispositions: + agreed: "συμφωνώ" + disagreed: "απορρίπτω" + deferred: "αγνοώ" + flagged_by: "Επισημάνθηκε από τον" + resolved_by: "Επιλύθηκα από τον" + took_action: "Αντέδρασε" + system: "Σύστημα" + error: "Κάτι πήγε λάθος" + reply_message: "Απάντηση" + no_results: "Δεν υπάρχουν επισημάνσεις." + topic_flagged: "Αυτό το νήμα έχει επισημανθεί." + visit_topic: "Επισκέψου το νήμα για να αντιδράσεις" + was_edited: "Η ανάρτηση έχει υποστεί επεξεργασία μετά την πρώτη επισήμανση" + previous_flags_count: "Αυτό το νήμα έχει επισημανθεί ήδη {{count}} φορές" + summary: + action_type_3: + one: "εκτός θέματος" + other: "εκτός θέματος x{{count}}" + action_type_4: + one: "ανάρμοστο" + other: "ανάρμοστο x{{count}}" + action_type_6: + one: "προσπαρμοσμένο" + other: "προσαρμοσμένο x{{count}}" + action_type_7: + one: "προσαρμοσμένο" + other: "προσαρμοσμένο x{{count}}" + action_type_8: + one: "ανεπιθύμητο" + other: "ανεπιθύμητο x{{count}}" + groups: + primary: "Κύρια ομάδα" + no_primary: "(καμια κύρια ομάδα)" + title: "Ομάδες" + edit: "Επεξεργασία ομάδων" + refresh: "Ανανέωση " + new: "Νέα" + selector_placeholder: "εισαγωγή χρηστώνυμου" + about: "Επεξεργασία των μελών και των ονομάτων της ομάδας εδώ" + group_members: "Μέλη ομάδας" + delete: "Διαγραφή" + delete_confirm: "Θέλεις να διαγράψεις αυτή την ομάδα;" + delete_failed: "Δεν είναι δυνατή η διαγραφή της ομάδας. Αν αυτή είναι μια αυτόματη ομάδα, δεν μπορεί να σβηστεί." + delete_owner_confirm: "Αφαίρεσε το προνόμιο του ιδιοκτήτη για '%{username}';" + add: "Προσθήκη" + add_members: "Προσθήκη μελών" + custom: "Προσαρμοσμένο" + bulk_complete: "Οι χρήστες έχουν προστεθεί στην ομάδα." + bulk: "Προσθήκη ομαδικής αποστολής αλληλογραφίας σε ομάδα" + bulk_paste: "Κάνε επικόλληση μια λίστα με ονόματα χρηστών η διευθύνσεις ηλεκτρονικών μηνυμάτων, ένα σε κάθε σειρά:" + bulk_select: "(επέλεξε μια ομάδα)" + automatic: "Αυτόματα" + automatic_membership_email_domains: "Οι χρήστης των οποίων το ηλεκτρονικό ταχυδρομείο ταιριάζει με κάποιο από αυτά της λίστας, θα προστίθενται αυτόματα σε αυτή την ομάδα:" + automatic_membership_retroactive: "Εφάρμοσε αυτόν τον κανόνα και σε υπάρχοντες χρήστες, για να τους προσθέσεις στην ομάδα:" + default_title: "Προκαθορισμένος τίτλος για όλους τους χρήστες αυτής της ομάδας" + primary_group: "Να οριστεί αυτόματα σαν η κύρια ομάδα" + group_owners: Ιδιοκτήτες + add_owners: Προσθήκη ιδιοκτητών + incoming_email: "Προσαρμοσμένη διεύθυνση ηλεκτρονικού ταχυδρομείου για εισερχόμενα μηνύματα" + incoming_email_placeholder: "πρόσθεσε διεύθυνση ηλεκτρονικού ταχυδρομείου" + api: + generate_master: "Δημιουγία κλειδιού Master API" + none: "Δεν υπάρχουν ενεργά κλειδιά API αυτή την στιγμή." + user: "Χρήστης" + title: "API" + key: "Κλειδί API" + generate: "Δημιουργία" + regenerate: "Αναδημιουγία" + revoke: "Ανάκληση" + confirm_regen: "Θες στ' αλήθεια να αντικαταστήσεις το κλειδί API με ένα καινούργιο;" + confirm_revoke: "Θες στ' αλήθεια να ανακαλέσεις το κλειδί API;" + info_html: "Το κλειδί API σου δίνει τη δυνατότητα να δημιουργήσεις και να επεξεργαστείς νήματα μέσω κλήσεων JSON." + all_users: "Όλοι οι χρήστες" + note_html: "Αυτό το κλειδί κράτα το κρυφό. Όλοι οι χρήστες που το κατέχουν μπορούν να δημιουργήσουν αναρτήσεις υποδυόμενοι οποιονδήποτε χρήστη χωρίς κανέναν περιορισμό." + web_hooks: + title: "Webhooks" + none: "Δεν υπάρχουν Webhooks αυτή τη στιγμή." + instruction: "Τα \"Webhooks\" επιτρέπουν στην Discourse να ειδοποιεί εξωτερικές υπηρεσίες όταν ένα συμβάν λαμβάνει χώρα στον ιστότοπό σας. Όταν το \"webhook\" τεθεί σε λειτουργία θα στείλει ένα αίτημα τύπου POST στα URLs τα οποία δόθηκαν. " + detailed_instruction: "Ένα αίτημα δημοσίευσης θα σταλεί στο παρεχόμενο URL όταν συμβεί η εκδήλωση που έχει επιλεγεί." + new: "Νέο Webhook" + create: "Δημιουργία" + save: "Αποθήκευση" + destroy: "Διαγραφή" + description: "Περιγραφή" + controls: "Έλεγχοι" + go_back: "Πίσω στη λίστα" + payload_url: "Φορτίο URL" + payload_url_placeholder: "https://example.com/postreceive" + warn_local_payload_url: "Φαίνεται ότι προσπαθείς να εγκαταστήσεις το webhook σε ένα τοπικό url. Η εκδήλωση που διανέμεται σε μια τοπική διεύθυνση ενδέχεται να προκαλέσει παρενέργειες ή απρόσμενες συμπεριφορές. Συνέχεια;" + secret_invalid: "Ο μυστικός κωδικός δεν πρέπει να έχει κενούς χαρακτήρες." + secret_too_short: "Ο μυστικός κωδικός πρέπει να έχει τουλάχιστον 12 χαρακτήρες." + secret_placeholder: "Χρήση ενός προαιρετικού string, για τη δημιουργία υπογραφής. " + event_type_missing: "Πρέπει να εγκαταστήσεις τουλάχιστον ένα είδος εκδήλωσης." + content_type: "Είδος περιεχομένου" + secret: "Μυστικός κωδικός" + event_chooser: "Ποιο συμβάν θα θέλατε να θέσετε σε λειτουργία με αυτό το webhook;" + wildcard_event: "Στείλε μου τα πάντα." + individual_event: "Επίλεξε ατομικές εκδηλώσεις." + verify_certificate: "Έλεγχος TLS για το πιστοποιητικό του URL του payload. " + active: "Ενργός" + active_notice: "Θα διανέμουμε λεπτομέρεις για την εκδήλωση όταν αυτή θα λαμβάνει μέρος" + categories_filter_instructions: "Τα σχετικά webhooks θα τεθούν σε λειτουργεία μόνο εαν το συμβάν σχετίζεται με τις προσδιορισμένες κατηγορίες. Για να ενεργοποιήσετε τα webhooks για όλες της κατηγορίες, αφήστε κενό. " + categories_filter: "Ενεργοποιημένες Κατηγορίες" + groups_filter_instructions: "Τα σχετικά webhooks θα τεθούν σε λειτουργεία μόνο εαν το συμβάν σχετίζεται με τις προσδιορισμένες όμάδες. Για να ενεργοποιήσετε τα webhooks για όλες της ομάδες, αφήστε κενό. " + groups_filter: "Ενεργοποιημένες Ομάδες" + delete_confirm: "Διαγραφή αυτού του webhook;" + topic_event: + name: "Εκδήλωση νήματος" + details: "Όταν υπάρχει ένα καινούριο νήμα, αναθεωρημένο, αλλαγμένο ή διαγραμμένο." + post_event: + name: "Δημοσίευση Εκδήλωσης" + details: "Όταν υπάρχει μια καινούρια απάντηση, επεξεργασμένη, διαγραμμένη ή ανακτημένη." + user_event: + name: "Εκδήλωση Χρήστη" + details: "Όταν ένας χρήστης δημιουργείται, εγκρίνεται ή ενημερώνεται." + delivery_status: + title: "Κατάσταση διανομής" + inactive: "Ανενεργός" + failed: "Απέτυχε" + successful: "Επιτυχής" + events: + none: "Δεν υπάρχουν σχετικές εκδηλώσεις." + redeliver: "Διανομή ξανά" + incoming: + one: "Υπάρχει μία καινούρια εκδήλωση." + other: "Υπάρχουν {{count}} καινούριες εκδηλώσεις." + completed_in: + one: "Ολοκληρώνεται σε 1 δευτερόλεπτο." + other: "Ολοκληρώνεται σε {{count}} δευτερόλεπτα." + request: "Αίτημα" + response: "Απάντηση" + redeliver_confirm: "Είστε σιγουρος/η ότι θέλετε να παραδώσετε εκ νέου το ίδιο payload;" + headers: "Επικεφαλίδες" + payload: "Φορτίο επί πληρωμή" + body: "Σώμα" + go_list: "Πήγαινε στη λίστα" + go_details: "Επεξεργασία Webhook" + go_events: "Πήγαινε στις εκδηλώσεις" + ping: "Ping" + status: "Κωδικός κατάστασης" + event_id: "Ταυτότητα" + timestamp: "Δημιουργήθηκε" + completion: "Ώρα ολοκλήρωσης" + actions: "Δράσεις" + plugins: + title: "Πρόσθετα" + installed: "Εγκατεστημένα πρόσθετα" + name: "Όνομα" + none_installed: "Δεν έχεις εγκαταστήσει πρόσθετα" + version: "Έκδοση" + enabled: "Ενεργοποιημένο;" + is_enabled: "Υ" + not_enabled: "Ν" + change_settings: "Αλλαγή ρυθμίσεων" + change_settings_short: "Ρυθμίσεις" + howto: "Πως εγκαθιστώ πρόσθετα;" + backups: + title: "Αντίγραφα ασφαλείας" + menu: + backups: "Αντίγραφα ασφαλείας" + logs: "Αρχεία καταγραφής" + none: "Δεν υπάρχει διαθέσιμο αντίγραφο ασφαλείας" + read_only: + enable: + title: "Ενεργοποίηση της λειτουργίας \"μόνο-ανάγνωση\"" + label: "Ενεργοποίηση \"μόνο-ανάγνωση\"" + confirm: "Είσαι βέβαιος ότι θέλεις να ενεργοποιήσεις τη λειτουργία \"μόνο-ανάγνωση\";" + disable: + title: "Απενεργοποίηση της λειτουργίας \"μόνο-ανάγνωση\"" + label: "Απενεργοποίηση \"μόνο-ανάγνωση\"" + logs: + none: "Δεν υπάρχουν καταγραφές ακόμη..." + columns: + filename: "Όνομα αρχείου" + size: "Μέγεθος" + upload: + label: "Ανέβασμα" + title: "Ανέβασε ένα αντίγραφο ασφαλείας για αυτό το στιγμιότυπο" + uploading: "Ανεβαίνει..." + success: "Το '{{filename}}' ανέβηκε επιτυχώς." + error: "Παρουσιάστηκε ένα σφάλμα κατά το ανέβασμα του '{{filename}}': {{message}}" + operations: + is_running: "Αυτή τη στιγμή εκτελείται μια λειτουργία..." + failed: "Η λειτουργία '{{operation}}' απέτυχε. Έλεγξε τα αρχεία καταγραφής." + cancel: + label: "Άκυρο" + title: "Ακύρωση της τρέχουσας λειτουργίας" + confirm: "Είσαι σίγουρος ότι θέλεις να διακόψεις την τρέχουσα λειτουργία;" + backup: + label: "Αντίγραφο ασφαλείας" + title: "Δημιουργία αντίγραφου ασφαλείας" + confirm: "Θέλεις να ξεκινήσεις τη δημιουργία ενός νέου αντίγραφου ασφαλείας;" + without_uploads: "Ναι (χωρίς τα αρχεία)" + download: + label: "Κατέβασμα" + title: "Λήψη αντιγράφου ασφαλείας" + destroy: + title: "Σβήσιμο αντίγραφου ασφαλείας" + confirm: "Είσαι σίγουρος ότι θέλεις να σβήσεις αυτό το αντίγραφο ασφαλείας;" + restore: + is_disabled: "Η επαναφορά είναι απενεργοποιημένη στις ρυθμίσεις του ιστότοπου." + label: "Επαναφορά" + title: "Επαναφορά αντίγραφου ασφαλείας" + confirm: "Είσαι βέβαιος πως θέλεις να επαναφέρεις αυτό το αντίγραφο;" + rollback: + label: "Επαναφορά" + title: "Επανάφερε τη βάση δεδομένων στην τελευταία λειτουργούσα κατάσταση" + confirm: "Είσαι βέβαιος πως θέλεις να επαναφέρεις τη βάση δεδομένων στην προηγούμενη λειτουργούσα κατάσταση;" + export_csv: + success: "Η εξαγωγή ξεκίνησε. Θα ειδοποιηθείς με ένα μήνυμα όταν τελειώσει αυτή η διαδικασία." + failed: "Η εξαγωγή απέτυχε. Παρακαλώ έλεγξε τα αρχεία καταγραφής." + button_text: "Εξαγωγή" + button_title: + user: "Εξαγωγή όλης της λίστας χρηστών σε μορφή CSV." + staff_action: "Εξαγωγή όλου του αρχείου καταγραφής των δράσεων των συντονιστών σε αρχείο CSV." + screened_email: "Εξαγωγή όλων των ελεγμένων διευθύνσεων ηλεκτρονικού ταχυδρομείου σε αρχείο CSV." + screened_ip: "Εξαγωγή όλων των ελεγμένων διευθύνσεων IP σε αρχείο CSV." + screened_url: "Εξαγωγή όλων των ελεγμένων URL σε αρχείο CSV." + export_json: + button_text: "Εξαγωγή" + invite: + button_text: "Αποστολή προσκλήσεων" + button_title: "Αποστολή προσκλήσεων" + customize: + title: "Προσαρμογή" + long_title: "Προσαρμογές ιστότοπου" + css: "CSS" + header: "Κεφαλίδα" + top: "Κορυφή" + footer: "Υποσέλιδο" + embedded_css: "Ενσωματωμένο CSS" + head_tag: + text: "" + title: "HTML που θα μπει πριν από την ετικέτα " + body_tag: + text: "" + title: "HTML που θα μπει πριν από την ετικέτα " + override_default: "Να μη χρησιμοποιηθεί το προκαθορισμένο αρχείο στυλ" + enabled: "Ενεργοποιημένο;" + preview: "προεπισκόπηση " + undo_preview: "αφαίρεση προεπισκόπησης" + rescue_preview: "Προκαθορισμένο στυλ" + explain_preview: "Δείξε τον ιστότοπο με αυτό το προσαρμοσμένο αρχείο στυλ" + explain_undo_preview: "Επιστροφή στο τρέχον προσαρμοσμένο αρχείο στυλ" + explain_rescue_preview: "Δείξε τον ιστότοπο με το προκαθορισμένο αρχείο στυλ" + save: "Αποθήκευση" + new: "Νέο" + new_style: "Νέο στυλ" + import: "Εισαγωγή" + import_title: "Επίλεξε ένα φάκελο ή κάνε επικόλληση κείμενο" + delete: "Σβήσιμο" + delete_confirm: "Να σβηστεί αυτή η προσαρμογή;" + about: "Προσάρμοσε τα αρχεία στυλ CSS και την κεφαλίδα HTML του ιστότοπου. Πρόσθεσε μια προσαρμογή για να ξεκινήσεις." + color: "Χρώμα" + opacity: "Αδιαφάνεια" + copy: "Αντιγραφή" + email_templates: + title: "Τύπος ηλεκτρονικού ταχυδρομείου" + subject: "Θέμα" + multiple_subjects: "Αυτό το πρότυπο ηλεκτρονικού μηνύματος έχει πολλά θέματα." + body: "Σώμα" + none_selected: "Επίλεξε ένα πρότυπο ηλεκτρονικού μηνύματος να ξεκινήσεις την επεξεργασία." + revert: "Επαναφορά αλλαγών" + revert_confirm: "Είσαι βέβαιος πως θέλεις να επαναφέρεις τις αλλαγές;" + css_html: + title: "CSS/HTML" + long_title: "Προσαρμογές CSS και HTML" + colors: + title: "Χρώματα" + long_title: "Χρωματικά σύνολα" + about: "Προσάρμοσε τα χρώματα του ιστότοπου χωρίς να γράψεις CSS. Πρόσθεσε ένα χρωματικό σύνολο για να ξεκινήσεις." + new_name: "Νέο χρωματικό σύνολο" + copy_name_prefix: "Αντίγραφο του" + delete_confirm: "Να διαγραφεί αυτό το χρωματικό σύνολο;" + undo: "αναίρεση" + undo_title: "Να αναιρεθούν οι αλλαγές που έγιναν σε αυτό το χρώμα από την τελευταία αποθήκευσή του και έπειτα." + revert: "απόρριψη" + revert_title: "Επανέφερε αυτό το χρώμα στο προκαθορισμένο χρωματικό σύνολο του Discourse." + primary: + name: 'κύριο' + description: 'Τα περισσότερα κείμενα, εικονίδια και πλαίσια.' + secondary: + name: 'δεύτερο' + description: 'Το κύριο χρώμα φόντου και το χρώμα κειμένου για μερικά κουμπιά.' + tertiary: + name: 'τρίτο' + description: 'Σύνδεσμοι, μερικά κουμπιά, ειδοποιήσεις και χρώματα έμφασης.' + quaternary: + name: "τέταρτο" + description: "Σύνδεσμοι πλοήγησης" + header_background: + name: "φόντο κεφαλίδας" + description: "Χρώμα στο φόντο της κεφαλίδας του ιστότοπου." + header_primary: + name: "Κύρια περιοχή κεφαλίδας" + description: "Κείμενο και σύμβολα στην κεφαλίδα του ιστότοπου." + highlight: + name: 'τονισμός' + description: 'Το χρώμα φόντου των στοιχείων που τονίζονται, όπως οι αναρτήσεις και τα νήματα.' + danger: + name: 'κίνδυνος ' + description: 'Χρώμα τονισμού για πράξεις όπως σβήσιμο αναρτήσεων και νημάτων.' + success: + name: 'επιτυχία' + description: 'Υποδεικνύει πως μια πράξη ήταν επιτυχημένη.' + love: + name: 'αγάπη' + description: "Το χρώμα του κουμπιού «μου αρέσει»." + email: + title: "Μήνυμα Ηλεκτρονικού Ταχυδρομείου" + settings: "Ρυθμίσεις" + templates: "Πρότυπα" + preview_digest: "Προεπισκόπηση σύνοψης" + sending_test: "Στέλνω δοκιμαστικό μήνυμα ηλεκτρονικού ταχυδρομείου..." + error: "ΣΦΑΛΜΑ - %{server_error}" + test_error: "Υπήρξε πρόβλημα με την αποστολή του δοκιμαστικού μηνύματος ηλεκτρονικού ταχυδρομείου. Έλεγξε τις ρυθμίσεις ηλεκτρονικού ταχυδρομείου, βεβαιώσου πως ο πάροχός σου δεν μπλοκάρει τις συνδέσεις ηλεκτρονικού ταχυδρομείου και δοκίμασε πάλι." + sent: "Αποστολή" + skipped: "Παραβλέφθηκε" + bounced: "Επιστρεφόμενα μηνύματα" + received: "Ελήφθη" + rejected: "Απορρίφθηκε" + sent_at: "Στάλθηκε στις" + time: "Ώρα" + user: "Χρήστης" + email_type: "Τύπος ηλεκτρονικού ταχυδρομείου" + to_address: "Παραλήπτης" + test_email_address: "Διεύθυνση ηλεκτρονικού ταχυδρομείου για δοκιμή" + send_test: "Στείλε δοκιμαστικό μήνυμα" + sent_test: "στάλθηκε!" + delivery_method: "Τρόπος αποστολής" + preview_digest_desc: "Προεπισκόπηση του περιεχομένου της σύνοψης των ηλεκτρονικών μηνυμάτων που στάλθηκε στους χρήστες που δεν ήταν ενεργοί." + refresh: "Ανανέωση" + send_digest_label: "Στείλε αυτό το αποτέλεσμα στον/στην:" + send_digest: "Αποστολή" + sending_email: "Αποστολή ηλεκτρονικού μηνύματος..." + format: "Μορφή" + html: "html" + text: "κείμενο" + last_seen_user: "Τελευταίος χρήστης:" + no_result: "Δεν βρέθηκαν αποτελέσματα για περίληψη." + reply_key: "Κλειδί απάντησης" + skipped_reason: "Λόγος παράβλεψης" + incoming_emails: + from_address: "Από" + to_addresses: "Προς" + cc_addresses: "Cc" + subject: "Θέμα" + error: "Λάθος" + none: "Δε βρέθηκε κανένα εισερχόμενο μήνυμα." + modal: + title: "Λεπτομέρειες εισερχόμενων μηνυμάτων" + error: "Σφάλμα" + headers: "Επικεφαλίδες" + subject: "Θέμα" + body: "Σώμα" + rejection_message: "Μήνυμα απόρριψης" + filters: + from_placeholder: "from@example.com" + to_placeholder: "to@example.com" + cc_placeholder: "cc@example.com" + subject_placeholder: "Θέμα..." + error_placeholder: "Σφάλμα" + logs: + none: "Δεν βρέθηκαν αρχεία καταγραφής" + filters: + title: "Φίλτρο" + user_placeholder: "χρηστώνυμο" + address_placeholder: "name@example.com" + type_placeholder: "σύνοψη, εγγραφή..." + reply_key_placeholder: "κλειδί απάντησης" + skipped_reason_placeholder: "λόγος" + logs: + title: "Αρχεία καταγραφής" + action: "Δράση" + created_at: "Δημιουργήθηκε" + last_match_at: "Τελευταίο αποτέλεσμα" + match_count: "Αποτελέσματα" + ip_address: "IP" + topic_id: "Ταυτότητα νήματος" + post_id: "Ταυτότητα ανάρτησης" + category_id: "Ταυτότητα Κατηγορίας" + delete: 'Σβήσιμο' + edit: 'Επεξεργασία' + save: 'Αποθήκευση' + screened_actions: + block: "αποκλεισμός" + do_nothing: "μην κάνεις τίποτα" + staff_actions: + title: "Δράσεις συνεργατών" + instructions: "Κάνε κλικ στα χρηστώνυμα και τις δράσεις για να φιλτράρεις τη λίστα. Κάνε κλικ στις εικόνες προφίλ για να πας στις σελίδες των χρηστών. " + clear_filters: "Δείξτα όλα" + staff_user: "Συνεργάτης" + target_user: "Χρήστη που τον αφορά" + subject: "Αντικείμενο" + when: "Πότε" + context: "Πλαίσιο αναφοράς" + details: "Λεπτομέρειες" + previous_value: "Παλιότερο" + new_value: "Νέο" + diff: "Σύγκριση" + show: "Δείξε" + modal_title: "Λεπτομέρειες" + no_previous: "Δεν υπάρχει προηγούμενη τιμή." + deleted: "Καμία νέα τιμή. Η εγγραφή σβήστηκε." + actions: + delete_user: "διαγραφή χρήστη" + change_trust_level: "αλλαγή επιπέδου εμπιστοσύνης" + change_username: "αλλαγή χρηστώνυμου" + change_site_setting: "αλλαγή ρυθμίσεων ιστότοπου" + change_site_customization: "αλλαγή των προσαρμογών του ιστότοπου" + delete_site_customization: "σβήσιμο των προσαρμογών του ιστότοπου" + change_site_text: "αλλαγή θέσης κειμένου" + suspend_user: "Αποκλεισμός του χρήστη" + unsuspend_user: "Αναίρεση αποκλεισμού χρήστη" + grant_badge: "Απονομή παράσημου" + revoke_badge: "απόσυρση παράσημου" + check_email: "Κοίτα στο ηλεκτρονικό σου ταχυδρομείο" + delete_topic: "Σβήσε το νήμα" + delete_post: "Σβήσε την ανάρτηση" + impersonate: "υποδύσου" + anonymize_user: "ανωνυμοποίηση χρήστη" + roll_up: "Τυλιγμένα IP εμπόδια" + change_category_settings: "αλλαγή ρυθμίσεων κατηγορίας" + delete_category: "διαγραφή κατηγορίας" + create_category: "δημιουργία κατηγορίας" + block_user: "αποκλεισμός χρήστη" + unblock_user: "κατάργηση αποκλεισμού χρήστη" + grant_admin: "χορήγηση διαχειριστή" + revoke_admin: "ανάκληση διαχειριστή" + grant_moderation: "χορήγηση συντονιστή" + revoke_moderation: "ανάκληση συντονιστή" + backup_create: "δημιουργία αντίγραφου" + deleted_tag: "η ετικέτα διαγράφηκε" + renamed_tag: "η ετικέτα μετονομάστηκε" + revoke_email: "Ανακάλεσε το email" + lock_trust_level: "κλείδωσε το επίπεδο εμπιστοσύνης" + unlock_trust_level: "ξεκλείδωσε το επίπεδο εμπιστοσύνης" + activate_user: "ενεργοποίηση χρήστη" + deactivate_user: "απενεργοποίηση χρήστη" + change_readonly_mode: "αλλαγή λειτουργίας \"μόνο-ανάγνωση\"" + backup_download: "λήψη αντίγραφου" + backup_destroy: "καταστροφή αντίγραφου" + screened_emails: + title: "Ελεγμένες διευθύνσεις ηλεκτρονικού ταχυδρομείου" + description: "Όταν κάποιος φτιάξει έναν λογαριασμό, οι παρακάτω διευθύνσεις ηλεκτρονικού ταχυδρομείου θα ελεγχθούν και η εγγραφή θα αποκλειστεί, ή θα συμβεί κάποια άλλη πράξη." + email: "Διεύθυνση ηλεκτρονικού ταχυδρομείου" + actions: + allow: "Επίτρεψε" + screened_urls: + title: "Ελεγμένα URL" + description: "Τα URL της λίστας χρησιμοποιήθηκαν σε αναρτήσεις από χρήστες που έχουν εντοπιστεί πως αναρτούν ανεπιθύμητα μηνύματα." + url: "URL" + domain: "Domain" + screened_ips: + title: "Ελεγμένες IP" + description: 'Διευθύνσεις IP που παρακολουθούνται. Χρησιμοποίησε το «επίτρεψε» για να τις βάλεις στη λίστα επιτρεπόμενων.' + delete_confirm: "Σίγουρα θέλεις να αφαιρέσεις τον κανόνα για τη διεύθυνση %{ip_address};" + roll_up_confirm: "Σίγουρα θες να συνοψίσεις σε υποδίκτυα τις συχνά αποκλεισμένες διευθύνσεις IP;" + rolled_up_some_subnets: "Οι αποκλεισμένες διευθύνσεις IP συνοψίστηκαν επιτυχώς στα παρακάτω υποδίκτυα: %{subnets}." + rolled_up_no_subnet: "Δεν υπήρχε κάτι για να συνοψιστεί." + actions: + block: "Αποκλεισμός" + do_nothing: "Επιτρέπεται" + allow_admin: "Να επιτρέπεται στο διαχειριστή" + form: + label: "Νέο:" + ip_address: "διεύθυνση IP" + add: "Προσθήκη" + filter: "Αναζήτηση" + roll_up: + text: "Σύνοψη" + title: "Δημιουργεί νέες εγγραφές για τον αποκλεισμό υποδικτύων αν υπάρχουν τουλάχιστον 'min_ban_entries_for_roll_up' εγγραφές." + logster: + title: "Αρχεία καταγραφής σφαλμάτων" + impersonate: + title: "Να υποδυθώ" + help: "Χρησιμοποίησε αυτό το εργαλείο για να εντοπίσεις λάθη υποδυόμενος κάποιον άλλο χρήστη. Θα πρέπει να αποσυνδεθείς όταν τελειώσεις." + not_found: "Ο χρήστης δεν μπορεί να βρεθεί" + invalid: "Συγγνώμη, δεν μπορείς να εκπροσωπήσεις αυτό τον χρήστη" + users: + title: 'Χρήστες' + create: 'Προσθήκη διαχειριστή' + last_emailed: "Τελευταίο μήνυμα ηλεκτρονικού ταχυδρομείου" + not_found: "Λυπούμαστε αλλά αυτό το χρηστώνυμο δεν υπάρχει στο σύστημα." + id_not_found: "Λυπούμαστε αλλά αυτή η ταυτότητα χρήστη δεν υπάρχει στο σύστημα." + active: "Ενεργά" + show_emails: "Δείξε τα μηνύματα ηλεκτρονικού ταχυδρομείου" + nav: + new: "Νέο" + active: "Ενεργό" + pending: "Εκκρεμεί" + staff: 'Προσωπικό' + suspended: 'Αποκλεισμένοι' + blocked: 'Αποκλεισμένο' + suspect: 'Ύποπτο' + approved: "Εγκεκριμένο;" + approved_selected: + one: "έγκριση χρήστη" + other: "έγκριση χρηστών ({{count}})" + reject_selected: + one: "απόρριψη χρήστη" + other: "απόρριψη χρηστών ({{count}})" + titles: + active: 'Ενεργοί χρήστες' + new: 'Νέοι χρήστες' + pending: 'Χρήστες που πρέπει να ελεχθούν' + newuser: 'Χρήστες με επίπεδο εμπιστοσύνης 0 (Νέος χρήστης)' + basic: 'Χρήστες με επίπεδο εμπιστοσύνης 1 (Αρχάριος)' + member: 'Χρήστες με επίπεδο εμπιστοσύνης 2 (Μέλος)' + regular: 'Χρήστες με επίπεδο εμπιστοσύνης 3 (Κανονικός)' + leader: 'Χρήστες με επίπεδο εμπιστοσύνης 4 (Αρχηγός)' + staff: "Προσωπικό" + admins: 'Διαχειριστές' + moderators: 'Συντονιστές' + blocked: 'Αποκλεισμένοι χρήστες' + suspended: 'Απενεργοποιημένοι Χρήστες' + suspect: 'Ύποπτοι χρήστες' + reject_successful: + one: "Επιτυχώς απορρίφθηκε 1 χρήστης." + other: "Επιτυχώς απορρίφθησαν %{count} χρήστες." + reject_failures: + one: "Αποτυχία απόρριψης 1 χρήστη." + other: "Αποτυχία απόρριψης %{count} χρηστών." + not_verified: "Μη επαληθευμένος" + check_email: + title: "Εμφάνισε το email αυτού του χρήστη" + text: "Εμφάνιση" + user: + suspend_failed: "Κάποιο λάθος εμφανίστηκε κατά την αναστολή αυτού του χρήστη {{error}}" + unsuspend_failed: "Κάτι πήγε στραβά κατά την αναίρεση του αποκλεισμού αυτού του χρήστη {{error}}" + suspend_duration: "Για πόσο χρονικό διάστημα θα γίνει αναστολή του συγκεκριμένου χρήστη;" + suspend_duration_units: "(ημέρες)" + suspend_reason_label: "Γιατί απενεργοποιείες; Αυτό το κείμενο θα είναι ορατό σε όλους στη σελίδα προφίλ αυτού του χρήστη και θα εμφανίζεται στο χρήστη όταν αυτός προσπαθήσει να συνδεθεί. Φρόντισε να είναι σύντομο." + suspend_reason: "Αιτία" + suspended_by: "Απενεργοποιήθηκε από τον/την" + delete_all_posts: "Σβήσε όλες τις αναρτήσεις" + delete_all_posts_confirm_MF: "Είσαι έτοιμος να σβήσεις %{posts} αναρτήσεις και %{topics} νήματα. Επιβεβαίωση;" + suspend: "Απενεργοποίηση" + unsuspend: "Αναίρεση απενεργοποίησης" + suspended: "Απενεργοποιημένος;" + moderator: "Συντονιστής;" + admin: "Διαχειριστής;" + blocked: "Αποκλείστηκε; " + staged: "Σταδιακή?" + show_admin_profile: "Διαχείριση" + edit_title: "Επεξεργασία τίτλου" + save_title: "Αποθήκευση τίτλου" + refresh_browsers: "Να ανανεωθεί αναγκαστικά η σελίδα" + refresh_browsers_message: "Το μήνυμα στάλθηκε σε όλους τους πελάτες!" + show_public_profile: "Εμφάνισε το Δημόσιο Προφίλ" + impersonate: 'Να υποδυθώ' + action_logs: "Καταγραφές ενεργειών" + ip_lookup: "Αναζήτηση διεύθυνσης IP" + log_out: "Αποσύνδεση" + logged_out: "Ο χρήστης αποσυνδέθηκε από όλες τις συσκευές" + revoke_admin: 'Ανάκληση δικαιωμάτων διαχειριστή' + grant_admin: 'Απόδοση δικαιωμάτων διαχειριστή' + revoke_moderation: 'Ανάκληση δικαιωμάτων συντονιστή' + grant_moderation: 'Ανάκληση δικαιωμάτων συντονιστή' + unblock: 'Αναίρεση αποκλεισμού' + block: 'Αποκλεισμός' + reputation: Φήμη + permissions: Δικαιώματα + activity: Δραστηριότητα + like_count: Μου αρέσει που έδωσα / πήρα + last_100_days: 'τις τελευταίες 100 ημέρες' + private_topics_count: Ιδιωτικά νήματα + posts_read_count: Αναρτήσεις που διάβασες + post_count: Αναρτήσεις που δημιούργησες + topics_entered: Νήματα που προβλήθηκαν + flags_given_count: Σημάνσεις που έδωσες + flags_received_count: Σημάνσεις που έλαβες + warnings_received_count: Προειδοποιήσεις που έλαβες + flags_given_received_count: 'Σημάνσεις που έλαβες / έδωσες' + approve: 'Έγκριση' + approved_by: "εγκρίθηκε από τον/την" + approve_success: "Ο χρήστης εγκρίθηκε και του αποστάλθηκε ένα μήνυμα ηλεκτρονικού ταχυδρομείου με οδηγίες για την ενεργοποίηση του λογαριασμού του." + approve_bulk_success: "Επιτυχία! Όλοι οι επιλεγμένοι χρήστες εγκρίθηκαν και ειδοποιήθηκαν." + time_read: "Χρόνος διαβάσματος" + anonymize: "Ανωνυμοποίηση χρήστη" + anonymize_confirm: "Είσαι ΣΙΓΟΥΡΟΣ πως θέλεις να ανωνυμοποιήσεις αυτό το λογαριασμό; Αυτό θα αλλάξει το χρηστώνυμο και τη διεύθυνση ηλεκτρονικού ταχυδρομείου και θα αφαιρέσει όλες τις πληροφορίες στο προφίλ." + anonymize_yes: "Ναι, ανωνυμοποίησε αυτόν τον λογαριασμό" + anonymize_failed: "Παρουσιάστηκε ένα σφάλμα κατά την ανωνυμοποίηση του λογαριασμού." + delete: "Διαγραφή χρήστη" + delete_forbidden_because_staff: "Οι διαχειριστές και οι συντονιστές δεν μπορούν να διαγραφούν." + delete_posts_forbidden_because_staff: "Δεν μπορείς να διαγράψεις όλες τις αναρτήσεις διαχειριστών και συντονιστών." + delete_forbidden: + one: "Οι χρήστες δεν γίνεται να διαγραφούν εάν έχουν αναρτήσεις. Σβήσε όλες τις αναρτήσεις του πριν διαγράψεις το χρήστη. (Δεν γίνεται να σβηστούν αναρτήσεις που είναι παλαιότερες από %{count} ημέρα)" + other: "Οι χρήστες δεν γίνεται να διαγραφούν εάν έχουν αναρτήσεις. Σβήσε όλες τις αναρτήσεις του πριν διαγράψεις το χρήστη. (Δεν γίνεται να σβηστούν αναρτήσεις που είναι παλαιότερες από %{count} ημέρες)" + cant_delete_all_posts: + one: "Δεν γίνεται να σβήσεις όλες τις αναρτήσεις. Κάποιες αναρτήσεις είναι παλαιότερες από %{count} ημέρα. (Η ρύθμιση «delete_user_max_post_age setting»)" + other: "Δεν γίνεται να σβήσεις όλες τις αναρτήσεις. Κάποιες αναρτήσεις είναι παλαιότερες από %{count} ημέρες. (Η ρύθμιση «delete_user_max_post_age setting»)" + cant_delete_all_too_many_posts: + one: "Δεν γίνεται να σβήσεις όλες τις αναρτήσεις επειδή ο χρήστης έχει περισσότερες από %{count} αναρτήσεις. (Η ρύθμιση «delete_all_posts_max»)" + other: "Δεν γίνεται να σβήσεις όλες τις αναρτήσεις επειδή ο χρήστης έχει περισσότερες από %{count} αναρτήσεις. (Η ρύθμιση «delete_all_posts_max»)" + delete_confirm: "Είσαι ΣΙΓΟΥΡΟΣ ότι θέλεις να διαγράψεις αυτό το χρήστη; Αυτό δεν μπορεί να αναιρεθεί!" + delete_and_block: "Σβήσε και απόκλεισε αυτή την διεύθυνση ηλεκτρονικού ταχυδρομείου και τη διεύθυνση IP " + delete_dont_block: "Μόνο διαγραφή" + deleted: "Ο χρήστης διαγράφτηκε." + delete_failed: "Παρουσιάστηκε ένα σφάλμα κατά τη διαγραφή αυτού του χρήστη. Βεβαιώσου πρώτα πως έχουν σβηστεί όλες οι αναρτήσεις του." + send_activation_email: "Αποστολή μηνύματος ενεργοποίησης" + activation_email_sent: "Στάλθηκε ένα μήνυμα ενεργοποίησης." + send_activation_email_failed: "Παρουσιάστηκε ένα σφάλμα κατά την αποστολή του μηνύματος ενεργοποίησης. %{error}" + activate: "Ενεργοποίηση λογαριασμού" + activate_failed: "Παρουσιάστηκε πρόβλημα κατά την ενεργοποίηση του χρήστη." + deactivate_account: "Απενεργοποίηση του λογαριασμού" + deactivate_failed: "Παρουσιάστηκε πρόβλημα κατά την απενεργοποίηση του χρήστη." + unblock_failed: 'Παρουσιάστηκε πρόβλημα κατά την ενεργοποίηση του χρήστη.' + block_failed: 'Παρουσιάστηκε πρόβλημα κατά την απενεργοποίηση του χρήστη.' + block_confirm: 'Είσαι βέβαιος πως θέλεις να αποκλείσεις αυτόν τον χρήστη; Δε θα μπορεί να δημιουργήσει καινούρια νήματα ή δημοσιεύσεις.' + block_accept: 'Ναι, αποκλεισμός του χρήστη' + bounce_score: "Βαθμολόγηση επιστρεφόμενων" + reset_bounce_score: + label: "Επαναφορά" + title: "Επαναφορά βαθμολόγησης επιστρεφόμενων πίσω στο 0" + deactivate_explanation: "Ένας απενεργοποιημένος χρήστης πρέπει να επιβεβαιώσει ξανά τη διεύθυνση του ηλεκτρονικού του ταχυδρομείου." + suspended_explanation: "Ένας χρήστης που έχει απενεργοποιηθεί δεν γίνεται να συνδεθεί." + block_explanation: "Ένας απενεργοποιημένος χρήστης δεν μπορεί να δημοσιεύει ή να δημιουργεί νήματα" + staged_explanation: "Ένας staged χρήστης μπορεί να κάνει αναρτήσεις μέσω ηλεκτρονικου ταχυδρομίου και σε συγκεκριμένα θέματα. " + bounce_score_explanation: + none: "Κανένα επιστρεφόμενο μήνυμα δεν ελήφθη από αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου." + some: "Μερικά επιστρεφόμενα μηνύματα ελήφθησαν πρόσφατα από αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου." + threshold_reached: "Ελήφθησαν πολλά επιστρεφόμενα μηνύματα από αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου." + trust_level_change_failed: "Παρουσιάστηκε πρόβλημα κατά την αλλαγή του επιπέδου εμπιστοσύνης του χρήστη." + suspend_modal_title: "Απενεργοποίηση χρήστη." + trust_level_2_users: "Χρήστες στο επιπέδου εμπιστοσύνης 2" + trust_level_3_requirements: "Χρήστες στο επιπέδου εμπιστοσύνης 3" + trust_level_locked_tip: "το επίπεδο εμπιστοσύνης κλειδώθηκε, το σύστημα δεν θα προβιβάσει ή υποβιβάσει τον χρήστη" + trust_level_unlocked_tip: "το επίπεδο εμπιστοσύνης ξεκλειδώθηκε, το σύστημα μπορεί να προβιβάσει ή υποβιβάσει τον χρήστη" + lock_trust_level: "Κλείδωσε το επίπεδο εμπιστοσύνης" + unlock_trust_level: "Ξεκλείδωσε το επίπεδο εμπιστοσύνης" + tl3_requirements: + title: "Προϋποθέσεις για το επίπεδο εμπιστοσύνης 3" + table_title: + one: "Την τελευταία μέρα:" + other: "Τις τελευταίες %{count} μέρες:" + value_heading: "Τιμή" + requirement_heading: "Προϋποθέσεις" + visits: "Επισκέψεις" + days: "ημέρες" + topics_replied_to: "Τα νήματα όπου απάντησες" + topics_viewed: "Τα νήματα που είδες" + topics_viewed_all_time: "Νήματα που ιδώθηκαν (συνολικά)" + posts_read: "Αναρτήσεις που διαβάστηκαν" + posts_read_all_time: "Αναρτήσεις που διαβάστηκαν (συνολικά)" + flagged_posts: "Αναρτήσεις που επισημάνθηκαν" + flagged_by_users: "Χρήστες που επισήμαναν" + likes_given: "Μου αρέσει που αποδόθηκαν" + likes_received: "«Μου αρέσει» που δεχτήκες." + likes_received_days: "Μου αρέσει που έλαβα: ξεχωριστές μέρες" + likes_received_users: "Μου αρέσει που έλαβα: ξεχωριστοί χρήστες" + qualifies: "Πληροί τις προϋποθέσεις για το επίπεδο εμπιστοσύνης 3." + does_not_qualify: "Δεν πληροί τις προϋποθέσεις για το επίπεδο εμπιστοσύνης 3." + will_be_promoted: "Θα προβιβαστεί σύντομα." + will_be_demoted: "Θα υποβιβαστεί σύντομα." + on_grace_period: "Δεν θα υποβιβαστεί. Ισχύει ακόμη η περίοδος χάριτος του τελευταίου προβιβασμού." + locked_will_not_be_promoted: "Το επίπεδο εμπιστοσύνης είναι κλειδωμένο. Δε θα προβιβαστεί ποτέ." + locked_will_not_be_demoted: "Το επίπεδο εμπιστοσύνης κλειδώθηκε. Δεν πρόκειται ποτέ να υποβιβαστεί. " + sso: + title: "Single Sign On" + external_id: "Εξωτερικό ID" + external_username: "Χρηστώνυμο" + external_name: "Όνομα" + external_email: "Διεύθυνση ηλεκτρονικού ταχυδρομείου" + external_avatar_url: "URL για την εικόνα προφίλ" + user_fields: + title: "Πεδία Χρήστη" + help: "Προσθέστε πεδία που οι χρήστες μπορουν να συμπληρώσουν." + create: "Δημιούργησε πεδίο χρήστη" + untitled: "Χωρίς τίτλο" + name: "Όνομα πεδίου" + type: "Τύπος πεδίου" + description: "Περιγραφή πεδίου" + save: "Αποθήκευση" + edit: "Επεξεργασία" + delete: "Διαγραφή" + cancel: "Ακύρωση" + delete_confirm: "Είσαι σίγουρος πως θέλεις να διαγράψεις αυτό το πεδίο χρήστη;" + options: "Επιλογές" + required: + title: "Απαιτείται κατά την εγγραφή;" + enabled: "απαραίτητο" + disabled: "δεν είναι απαραίτητο" + editable: + title: "Μπορεί να αλλάξει μετά την εγγραφή;" + enabled: "επεξεργάσιμο" + disabled: "μη επεξεργάσιμο" + show_on_profile: + title: "Εμφάνιση στο δημόσιο προφίλ;" + enabled: "εμφάνιση στο προφίλ" + disabled: "να μην εμφανίζεται στο προφίλ" + show_on_user_card: + title: "Εμφάνιση στην κάρτα του χρήστη;" + enabled: "να εμφανίζεται στην κάρτα του χρήστη" + disabled: "να μην εμφανίζεται στην κάρτα του χρήστη" + field_types: + text: 'Πεδίο κειμένου' + confirm: 'Επιβεβαίωση' + dropdown: "Άνοιγμα" + site_text: + description: "Μπορείς να προσαρμόσεις οποιοδήποτε κείμενο στο χώρο συζητήσεων σου. Παρακαλώ ξεκίνησε κάνοντας αναζήτηση παρακάτω:" + search: "Αναζήτησε το κείμενο που θα ήθελες να επεξεργαστείς" + title: 'Περιεχόμενο κειμένου' + edit: 'επεξεργασία' + revert: "Επαναφορά αλλαγών" + revert_confirm: "Είσαι βέβαιος πως θέλεις να επαναφέρεις τις αλλαγές;" + go_back: "Πίσω στην αναζήτηση" + recommended: "Σου προτείνουμε να προσαρμόσεις το ακόλουθο κείμενο στις ανάγκες σου:" + show_overriden: 'Δείξε μόνο τα πιο σημαντικά' + site_settings: + show_overriden: 'Δείξε μόνο αυτά που άλλαξαν' + title: 'Ρυθμίσεις' + reset: 'επαναφορά' + none: 'κανένα' + no_results: "Δεν βρέθηκαν αποτελέσματα." + clear_filter: "Καθάρισμα φίλτρου" + add_url: "δώσε URL" + add_host: "προσθήκη host" + categories: + all_results: 'Όλα' + required: 'Απαιτείται' + basic: 'Βασική εγκατάσταση' + users: 'Χρήστες' + posting: 'Αναρτήσεις' + email: 'Ηλεκτρονικό ταχυδρομείο' + files: 'Αρχεία' + trust: 'Επίπεδα εμπιστοσύνης' + security: 'Ασφάλεια' + onebox: "Onebox" + seo: 'SEO' + spam: 'Ανεπιθύμητο' + rate_limits: 'Περιορισμοί' + developer: 'Κατασκευαστής λογισμικού' + embedding: "Ενσωμάτωση" + legal: "Νομικά" + user_api: 'Χρήστης API' + uncategorized: 'Άλλα' + backups: "Αντίγραφα ασφαλέιας" + login: "Σύνδεση" + plugins: "Πρόσθετα" + user_preferences: "Προτημήσεις χρήστη" + tags: "Ετικέτες" + search: "Αναζήτηση" + groups: "Ομάδες" + badges: + title: Παράσημα + new_badge: Νέο παράσημο + new: Νέο + name: Όνομα + badge: Παράσημο + display_name: Όνομα που θα φαίνεται + description: Περιγραφή + long_description: Μακρά Περιγραφή + badge_type: Τύπος παράσημου + badge_grouping: Ομάδα + badge_groupings: + modal_title: Ομαδοποίηση παράσημων + granted_by: Απονεμήθηκε από + granted_at: Απονεμήθηκε στις + reason_help: (ένας σύνδεσμος προς μια ανάρτηση ή ένα νήμα) + save: Αποθήκευση + delete: Διαγραφή + delete_confirm: Είσαι σίγουρος πως θέλεις να διαγράψεις αυτό το παράσημο; + revoke: Ανακάλεσε + reason: Αιτία + expand: Επέκταση … + revoke_confirm: Είσαι σίγουρος πως θέλεις να ανακαλέσεις αυτό το παράσημο; + edit_badges: Επεξεργασία παράσημου + grant_badge: Απονομή παράσημου + granted_badges: Απονεμηθέντα παράσημα + grant: Απόνεμε + no_user_badges: "Στο χρήστη %{name} δεν έχουν απονεμηθεί παράσημα." + no_badges: Δεν υπάρχουν παράσημα που να μπορούν να απονεμηθούν. + none_selected: "Διάλεξε ένα παράσημο για να ξεκινήσεις" + allow_title: Το παράσημο μπορεί να χρησιμοποιηθεί σαν τίτλος + multiple_grant: Μπορεί να απονεμηθεί πολλές φορές + listable: Εμφάνιση του παράσημου στη δημόσια σελίδα παρασήμων + enabled: Ενεργοποίηση παράσημου + icon: Σύμβολο + image: Εικόνα + icon_help: "Χρησιμοποίησε είτε μια κλάση Font Awesome ή το URL μιας εικόνας" + query: Ερώτηση παράσημου (SQL) + target_posts: Το ερώτημα αφορά αναρτήσεις + auto_revoke: Τρέξε καθημερινά το ερώτημα για την ανάκληση + show_posts: Δείξε στη σελίδα παρασήμων την ανάρτηση στην οποία οφείλεται η απονομή του παρασήμου + trigger: Έναυσμα + trigger_type: + none: "Καθημερινή ενημέρωση" + post_action: "Όταν ένας χρήστης δρα σε μία ανάρτηση" + post_revision: "Όταν ένας χρήστης επεξεργάζεται ή δημιουργεί μια ανάρτηση" + trust_level_change: "Όταν το επίπεδο εμπιστοσύνης ενός χρήστη αλλάξει" + user_change: "Όταν ένας χρήστης δημιουργείται ή υφίσταται επεξεργασία " + post_processed: "Αφού μια δημοσίευση έχει δεχτεί επεξεργασία" + preview: + link_text: "Προεπισκόπηση απονεμηθέντων παράσημων" + plan_text: "Προεπισκόπηση του ερωτήματος" + modal_title: "Προεπισκόπηση ερώτησης παράσημων" + sql_error_header: "Υπήρξε ένα σφάλμα με το ερώτημα." + error_help: "Σε αυτούς τους συνδέσμους θα βρεις βοήθεια για τα ερωτήματα παρασήμων." + bad_count_warning: + header: "ΠΡΟΣΟΧΗ!" + text: "Λείπουν δεδομένα για το υπόδειγμα. Αυτό συμβαίνει όταν το ερώτημα παρασήμων επιστρέφει δεδομένα για αναρτήσεις ή χρήστες που δεν υπάρχουν. Αυτό μπορεί να έχει ανεπιθύμητα αποτελέσματα αργότερα. Παρακαλούμε έλεγξε ξανά το ερώτημά σου." + no_grant_count: "Δεν θα αποδοθεί κανένα έμβλημα/παράσημο" + grant_count: + one: "1 παράσημο να κατανεμηθεί" + other: "%{count} παράσημα να κατανεμηθούν" + sample: "Δείγμα:" + grant: + with: %{username} + with_post: %{username} για την ανάρτηση στο %{link} + with_post_time: %{username} για την ανάρτηση στο %{link} σε %{time} + with_time: %{username} σε %{time} + emoji: + title: "Emoji" + help: "Πρόσθεσε ένα νέο emoji που θα είναι διαθέσιμο σε όλους. (Συμβουλή: μπορείς να σύρεις πολλά αρχεία ταυτόχρονα)" + add: "Προσθήκη νέου emoji" + name: "Όνομα" + image: "Εικόνα" + delete_confirm: "Είσαι σίγουρος ότι θέλεις να διαγράψεις το emoji :%{name}:;" + embedding: + get_started: "Εάν θέλεις να ενσωματώσεις το Discourse σε μια άλλη ιστοσελίδα, ξεκίνα με το να προσθέσεις το host του." + confirm_delete: "Είσαι βέβαιος πως θέλεις να διαγράψεις το host;" + sample: "Χρησιμοποιήστε τον ακόλουθο HTML κώδικα στον ιστότοπό σας για να ενθέσετε θέματα. Αντικαταστήστε REPLACE_ME με το κανονικό URL της σελίδας στην οποία θα ενθέσετε το θέμα. " + title: "Ενσωμάτωση" + host: "Επιτρεπόμενα hosts" + path_whitelist: "Μονοπάτι Λίστας Επιτρεπομένων" + edit: "επεξεργασία" + category: "Δημοσίευση στην κατηγορία" + add_host: "Προσθήκη host" + settings: "Ενσωματωμένες ρυθμίσεις" + feed_settings: "Ρυθμίσεις τροφοδοσίας" + feed_description: "Με το να συμπεριλαμβάνετε ένα RSS/ATOM feed για τον ιστότοπό σας βελτιώνετε την δυνατότητα του Discourse να εισάγει τα περιεχόμενά σας. " + crawling_settings: "Ρυθμίσεις ανίχνευσης" + crawling_description: "Όταν η ομιλία δημιουργεί νήματα για τις δημοσιεύσεις σου, εάν δεν είναι κανένα από τα RSS/ATOM παρούσα θα προσπαθήσει να αναλύσει το περιεχόμενο του HTML σου. Κάποιες φορές μπορεί να αποτελεί πρόκληση το να εξάγεις το περιεχόμενο σου, έτσι σου παρέχουμε την ικανότητα να προσδιορίσεις τους νόμους CSS για να κάνεις την εξαγωγή σου ευκολότερη." + embed_by_username: "Όνομα χρήστη για δημιουργία νήματος" + embed_post_limit: "Μέγιστος αριθμός δημοσιεύσεων για συγχώνευση" + embed_username_key_from_feed: "Κλειδή για έλξη του ονόματος χρήστη του discource από τη τροφή" + embed_title_scrubber: "Κανονική έκφραση χρησιμοποιείται για τον τίτλο της δημοσίευσης" + embed_truncate: "Κόψιμο των ενσωματωμένων δημοσιεύσεων" + embed_whitelist_selector: "CSS διαλογέας για στοιχεία που επιτρέπονται στα συγχωνευμένα" + embed_blacklist_selector: "CSS διαλογέας για στοιχεία που έχουν απομακρυνθεί από τα συγχωνευμένα" + embed_classname_whitelist: "Επιτρεπόμενα CSS ονόματα τάξης" + feed_polling_enabled: "Εισαγωγή δημοσιεύσεων μέσω RSS/ATOM" + feed_polling_url: "Η διεύθυνση URL του RSS/ATOM τροφοδοτεί την ανιχνεύση" + save: "Αποθήκευση ενσωματωμένων αλλαγών" + permalink: + title: "Μόνιμοι Σύνδεσμοι" + url: "διεύθυνση URL" + topic_id: "Ταυτότητα νήματος" + topic_title: "Νήμα" + post_id: "Ταυτότητα δημοσίευσης" + post_title: "Δημοσίευση" + category_id: "Ταυτότητα Κατηγορίας" + category_title: "Κατηγορία" + external_url: "Εξωτερική διεύθυνση URL" + delete_confirm: Είσαι βέβαιος πως θέλεις να διαγράψεις αυτόν τον μόνιμο σύνδεσμο; + form: + label: "Καινούριο:" + add: "Προσθήκη" + filter: "Αναζήτηση (διεύθυνση URL ή εξωτερική διεύθυνση URL)" + wizard_js: + wizard: + done: "Ολοκληρώθηκε" + back: "Πίσω" + next: "Επόμενο" + step: "%{current} του %{total}" + upload: "Μεταφόρτωση" + uploading: "Μεταφορτώνεται..." + quit: "Ίσως αργότερα" + staff_count: + one: "Η κοινότητά σου έχει 1 μέλος του προσωπικού." + other: "Η κοινότητά σου έχει %{count} μέλη του προσωπικού." + invites: + add_user: "προσθέτω" + none_added: "Δεν έχεις προσκαλέσει το προσωπικό. Είσαι βέβαιος πως θέλεις να συνεχίσεις;" + roles: + admin: "Διαχειριστής" + moderator: "Μεσολαβιτής" + regular: "Τακτικός χρήστης" diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml index adced32c71..59e857c30d 100644 --- a/config/locales/client.en.yml +++ b/config/locales/client.en.yml @@ -165,7 +165,7 @@ en: topic_admin_menu: "topic admin actions" - wizard_required: "It's time to configure your forum! Start the Setup Wizard!" + wizard_required: "Welcome to your new Discourse! Let’s get started with 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." @@ -718,13 +718,11 @@ en: 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}}?" + not_available_no_suggestion: "Not available" 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: @@ -832,10 +830,10 @@ en: 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 CSV file." + none: "You haven't invited anyone here yet. Send individual invites, or invite many people at once by uploading a CSV file." text: "Bulk Invite from File" success: "File uploaded successfully, you will be notified via message when the process is complete." - error: "Sorry, file should be of csv format." + error: "Sorry, file should be CSV format." password: title: "Password" @@ -1032,7 +1030,7 @@ en: 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_activation: "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." @@ -1065,6 +1063,15 @@ en: github: title: "with GitHub" message: "Authenticating with GitHub (make sure pop up blockers are not enabled)" + invites: + accept_title: "Invitation" + welcome_to: "Welcome to %{site_name}!" + invited_by: "You were invited by:" + social_login_available: "You'll also be able to sign in with any social login using that email." + your_email: "Your account email address is %{email}." + accept_invite: "Accept Invitation" + success: "Your account has been created and you're now logged in." + password_label: "Set Password (optional)" password_reset: continue: "Continue to %{site_name}" @@ -1355,8 +1362,10 @@ en: selected: one: "You have selected 1 topic." other: "You have selected {{count}} topics." - change_tags: "Change Tags" + change_tags: "Replace Tags" + append_tags: "Append Tags" choose_new_tags: "Choose new tags for these topics:" + choose_append_tags: "Choose new tags to append for these topics:" changed_tags: "The tags of those topics were changed." none: @@ -1960,8 +1969,12 @@ en: 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." + show_subcategory_list: "Show subcategory list above topics in this category." + num_featured_topics: "Number of topics shown on the categories page:" + subcategory_num_featured_topics: "Number of featured topics on parent category's page:" all_topics_wiki: "Make new topics wikis by default." sort_order: "Default Sort:" + default_view: "Default View:" allow_badges_label: "Allow badges to be awarded in this category" edit_permissions: "Edit Permissions" add_permission: "Add Permission" @@ -2679,7 +2692,8 @@ en: without_uploads: "Yes (do not include files)" download: label: "Download" - title: "Download the backup" + title: "Send email with download link" + alert: "A link to download this backup has been emailed to you." destroy: title: "Remove the backup" confirm: "Are you sure you want to destroy this backup?" @@ -3046,6 +3060,7 @@ en: refresh_browsers_message: "Message sent to all clients!" show_public_profile: "Show Public Profile" impersonate: 'Impersonate' + action_logs: "Action Logs" ip_lookup: "IP Lookup" log_out: "Log Out" logged_out: "User was logged out on all devices" diff --git a/config/locales/client.es.yml b/config/locales/client.es.yml index adaae064d9..3e9da2b399 100644 --- a/config/locales/client.es.yml +++ b/config/locales/client.es.yml @@ -589,6 +589,8 @@ es: error: "(error)" action: "Enviar email para restablecer la contraseña" set_password: "Establecer contraseña" + choose_new: "Escoge una nueva contraseña" + choose: "Escoge una contraseña" change_about: title: "Cambiar 'Acerca de mí'" error: "Hubo un error al cambiar este valor." @@ -642,13 +644,11 @@ es: instructions: "único, sin espacios y corto" short_instructions: "Los demás usuarios pueden mencionarte como @{{username}}" available: "Tu nombre de usuario está disponible" - global_match: "La dirección coincide con la del nombre de usuario registrado" - global_mismatch: "Ya está registrado. ¿Prueba {{suggestion}}?" not_available: "No disponible. ¿Prueba {{suggestion}}?" + not_available_no_suggestion: "No disponible" too_short: "Tu nombre de usuario es demasiado corto" too_long: "Tu nombre de usuario es demasiado largo" checking: "Comprobando la disponibilidad del nombre de usuario..." - enter_email: 'Nombre de usuario encontrado; introduce la dirección de correo correspondiente' prefilled: "El email coincide con el nombre de usuario registrado" locale: title: "Idioma de la interfaz" @@ -746,10 +746,10 @@ es: link_generated: "¡Enlace de invitación generado satisfactoriamente!" valid_for: "El enlace de invitación sólo es válido para esta dirección: %{email}" bulk_invite: - none: "Aún no has invitado a nadie aquí. Puedes enviar invitaciones individuales, o invitar varias personas a la vez subiendo un archivo CSV." + none: "No has invitado a nadie aún. Puedes enviar invitaciones individuales o invitar a varias personas a la vez subiendo un archivo de invitación en masa." text: "Archivo de Invitación en Masa" success: "Archivo subido correctamente, se te notificará con un mensaje cuando se complete el proceso." - error: "Lo sentimos, el archivo debería tener formato csv." + error: "Lo siento, el archivo debe tener formato CSV. " password: title: "Contraseña" too_short: "Tu contraseña es demasiada corta." @@ -939,6 +939,7 @@ es: to_continue: "Por favor, inicia sesión" preferences: "Debes tener una sesión iniciada para cambiar tus preferencias de usuario." forgot: "No me acuerdo de los detalles de mi cuenta." + not_approved: "Tu cuenta aún no ha sido aprobada. Se te notificará por email cuando todo esté listo para iniciar sesión." google: title: "con Google" message: "Autenticando con Google (asegúrate de desactivar cualquier bloqueador de pop ups)" @@ -960,6 +961,17 @@ es: github: title: "con GitHub" message: "Autenticando con GitHub (asegúrate de desactivar cualquier bloqueador de pop ups)" + invites: + accept_title: "Invitación" + welcome_to: "Bienvenido a %{site_name}!" + invited_by: "Has sido invitado por:" + social_login_available: "También serás capaz de loguearte usando cualquier red social usando ese email." + your_email: "Tu cuenta de correo electrónico es %{email}." + accept_invite: "Aceptar invitación" + success: "Tu nueva cuenta está confirmada y ahora estás logueado/a." + password_label: "Establecer contraseña (opcional)" + password_reset: + continue: "Continuar a %{site_name}" emoji_set: apple_international: "Apple/Internacional" google: "Google" @@ -1225,7 +1237,9 @@ es: one: "Has seleccionado 1 tema." other: "Has seleccionado {{count}} temas." change_tags: "Cambiar etiquetas" + append_tags: "Añadir etiquetas" choose_new_tags: "Elige nuevas etiquetas para estos temas:" + choose_append_tags: "Elige nuevas etiquetas a añadir para estos temas:" changed_tags: "Las etiquetas de esos temas fueron cambiadas." none: unread: "No hay temas que sigas y que no hayas leído ya." @@ -1403,11 +1417,8 @@ es: make_banner: "Tema de encabezado" remove_banner: "Remover tema de encabezado" reply: - post: - title: 'Respuesta' - topic: - title: 'Respuesta' - help: 'empieza a escribir una respuesta a este tema' + title: 'Responder' + help: 'comienza a escribir una respuesta a este tema' clear_pin: title: "Eliminar Destacado" help: "Elimina el estado 'Destacado' de este tema para que no aparezca más en lo más alto de tu lista de temas" @@ -1536,6 +1547,7 @@ es: wiki_last_edited_on: "wiki editada por última vez" last_edited_on: "post editado por última ven en" reply_as_new_topic: "Responder como tema enlazado" + reply_as_new_private_message: "Responder como mensaje nuevo a los mismos destinatarios" continue_discussion: "Continuando la discusión desde {{postLink}}:" follow_quote: "ir al post citado" show_full: "Mostrar todo el post" @@ -1707,7 +1719,8 @@ es: hide: "Ocultar revisión." show: "Mostrar revisión." revert: "Volver a esta revisión" - edit_wiki: "Editar wiki" + edit_wiki: "Editar Wiki" + edit_post: "Editar post" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1770,6 +1783,7 @@ es: email_in_disabled: "La posibilidad de publicar nuevos temas por email está deshabilitada en los ajustes del sitio. Para habilitar la publicación de nuevos temas por email," email_in_disabled_click: 'activa la opción "email in".' suppress_from_homepage: "Ocultar categoría de la página de inicio." + show_subcategory_list: "Mostrar la lista de subcategorías encima de los temas en esta categoría." all_topics_wiki: "Hacer todos los temas wiki por defecto" sort_order: "Orden por defecto:" allow_badges_label: "Permitir conceder distintivos en esta categoría" @@ -2804,6 +2818,7 @@ es: refresh_browsers_message: "¡Mensaje enviado a todos los clientes!" show_public_profile: "Ver perfil público" impersonate: 'Impersonar a' + action_logs: "Registro de acciones" ip_lookup: "Búsqueda de IP" log_out: "Cerrar sesión" logged_out: "El usuario ha cerrado sesión desde todos los dispositivos" diff --git a/config/locales/client.et.yml b/config/locales/client.et.yml index ce8595abe5..2b928b360b 100644 --- a/config/locales/client.et.yml +++ b/config/locales/client.et.yml @@ -214,7 +214,6 @@ et: like_count: "Meeldimisi" topic_count: "Teemad" post_count: "Postitused" - user_count: "Uued kasutajad" active_user_count: "Aktiivsed kasutajad" contact: "Võta meiega ühendust" contact_info: "Kriitilise vea või edasilükkamatu probleemi korral võta palun meiega ühendust aadressil %{contact_info}." @@ -589,6 +588,8 @@ et: error: "(viga)" action: "Saada parooli uuendamise meil" set_password: "Määra parool" + choose_new: "Vali uus parool" + choose: "Vali parool" change_about: title: "Muuda minu andmeid" error: "Välja muutmisel tekkis viga." @@ -623,7 +624,6 @@ et: instructions: "Taustapildidd tsentreeritakse ja on vaikimisi 590 pikslit laiad." email: title: "Meiliaadress" - instructions: "Avalikkusele ei näidata kunagi" ok: "Saadame sulle kinnituseks meili" invalid: "Sisesta palun korrektne meiliaadress" authenticated: "Sinu meil on autenditud {{provider}} poolt" @@ -633,22 +633,17 @@ et: other: "Saadame meili vaid siis, kui pole Sind viimase {{count}} minuti jooksul näinud." name: title: "Nimi" - instructions: "Sinu täisnimi (vabatahtlik)" instructions_required: "Sinu täisnimi" too_short: "Sinu antud nimi on liiga lühike" ok: "Paistab, et nimega on asjad korras" username: title: "Kasutajanimi" - instructions: "Unikaalne, tühikuteta ja lühikene" short_instructions: "Inimesed võivad sind mainda nimega @{{username}}" available: "Sinu poolt valitud kasutajanimi on vaba" - global_match: "Meiliaadress kattub registreeritud kasutajanimega" - global_mismatch: "Juba registreeritud. Proovime {{suggestion}}?" not_available: "Pole saadaval. Proovime {{suggestion}}?" too_short: "Sinu poolt valitud kasutajanimi on liiga lühike" too_long: "Sinu poolt valitud kasutajanimi on liiga pikk" checking: "Teen kindlaks, kas kasutajanimi on vaba..." - enter_email: 'Kasutajanimi leitud; sisesta vastav meil' prefilled: "Meiliaadress kattub registreeritud kasutajanimega" locale: title: "Kasutujaliidese keel" @@ -746,7 +741,6 @@ et: link_generated: "Kutse link edukalt genereeritud!" valid_for: "Kutse link kehtib vaid meiliaadressile: %{email}" bulk_invite: - none: "Sa ei ole kedagi veel siia kutsunud. Võid saata kutsed personaalselt või korraga tervele nimekirjale laadides üles CSV faili." text: "Masskutse Failist" success: "Fail edukalt üles laetud. Sulle saabub teade, kui protsess on lõpule jõudnud." password: @@ -756,7 +750,6 @@ et: same_as_username: "Parool ühtib sinu kasutajanimega." same_as_email: "Parool ühtib sinu meiliaadressiga." ok: "See parool on sobilik." - instructions: "Vähemalt %{count} sümbolit." summary: title: "Kokkuvõte" stats: "Statistika" @@ -1400,9 +1393,6 @@ et: pin_globally: "Tõsta teema esile igal pool" make_banner: "Tee teema bänneriks" remove_banner: "Eemalda teema bännerist" - reply: - title: 'vasta' - help: 'alusta selle teema vastuse koostamist' clear_pin: title: "Kustuta esiletõstmine" help: "Eemalda sellelt teemalt esiletõstetu staatus nii, et ta enam ei ilmuks teemade loetelu tipus" @@ -1572,8 +1562,6 @@ et: via_email: "see postitus saabus meili teel" via_auto_generated_email: "see postitus saabus automaatselt genereeritud meili teel" whisper: "see postitus on vaikne sosin moderaatoritele" - wiki: - about: "see postitus on wiki" archetypes: save: 'Salvesta suvandid' few_likes_left: "Aitäh poolehoiu jagamise eest! Tänaseks on vaid mõned meeldimised jäänud jagada." @@ -1704,13 +1692,10 @@ et: displays: inline: title: "Näita renderdatud väljundit koos lisamiste ja eemaldamistega tekstisiseselt" - button: ' HTML' side_by_side: title: "Näita renderdatud väljundi erinevusi kõrvuti" - button: ' HTML' side_by_side_markdown: title: "Näita töötlemata lähteandmete erinevusi kõrvuti" - button: ' Toores' category: can: 'saab… ' none: '(foorum puudub)' @@ -2672,7 +2657,6 @@ et: revoke_admin: "võta admin-õigus ära" grant_moderation: "anna modereerimisõigus" revoke_moderation: "võta modereerimisõigus ära" - backup_operation: "varundustoiming" deleted_tag: "kustutatud silt" renamed_tag: "ümbernimetatud silt" revoke_email: "kutsu meil tagasi" diff --git a/config/locales/client.fa_IR.yml b/config/locales/client.fa_IR.yml index a7af2fce1c..a1a732edcc 100644 --- a/config/locales/client.fa_IR.yml +++ b/config/locales/client.fa_IR.yml @@ -167,7 +167,6 @@ fa_IR: like_count: "لایک ها " topic_count: "موضوعات" post_count: "پست ها" - user_count: "کاربران جدید" active_user_count: "کاربران فعال" contact: "ارتباط با ما" contact_info: "در شرایط حساس و مسائل اضطراری مربوط به سایت٬‌ لطفا با تماس بگیرید از طریق %{contact_info}." @@ -456,7 +455,6 @@ fa_IR: instructions: "تصاویر پس زمینه در مرکز قرار خواهند گرفت و عرض پیشفرض آن 590 پیکسل است" email: title: "ایمیل" - instructions: "هرگز بصورت عمومی نشان نده" ok: "ایمیلی برای تایید برایتان می‌فرستیم" invalid: "لطفا یک آدرس ایمیل معتبر وارد کنید" authenticated: "ایمیل شما تصدیق شد توسط {{provider}}" @@ -465,22 +463,17 @@ fa_IR: other: "ما فقط در صورتی برای شما ایمیل میفرستیم که شما را در {{count}} دقیقه آخر ندیده باشیم." name: title: "نام" - instructions: "نام کامل (اختیاری)" instructions_required: "نام کامل شما" too_short: "نام انتخابی شما خیلی کوتاه است" ok: "نام انتخابی شما به نطر می رسد خوب است" username: title: "نام کاربری" - instructions: "منحصر به فرد،بدون فاصله،کوتاه" short_instructions: "می توانید به کاربران دیگر اشاره کنید با@{{username}}" available: "نام کاربری شما موجود است" - global_match: "ایمیل منطبق نام کاربری ثبت شد." - global_mismatch: "از پیش ثبت شده.این را امتحان کن {{suggestion}} ؟" not_available: "فراهم نیست. این را امتحان کن {{suggestion}} ؟" too_short: "نام کاربری انتخابی شما خیلی کوتاه است" too_long: "نام کاربری انتخابی شما بسیار بلند است" checking: "بررسی فراهمی نام‌کاربری..." - enter_email: 'نام کاربری پیدا شد; ایمیل منطبق را وارد کن' prefilled: "ایمیل منطبق است با این نام کاربری ثبت شده " locale: title: "زبان رابط کاربر" @@ -564,7 +557,6 @@ fa_IR: same_as_username: "رمز عبورتان با نام کاربری شما برابر است." same_as_email: "رمز عبورتان با ایمیل شما برابر است. " ok: "گذرواژهٔ خوبی است." - instructions: "در آخرین %{count} کاراکتر" summary: top_badges: "مدال های برتر" no_badges: "هنوز مدالی نیست." @@ -1034,9 +1026,6 @@ fa_IR: pin_globally: "سنجاق کردن موضوع در سطح سراسری" make_banner: "اعلان موضوع" remove_banner: "حذف اعلان موضوع" - reply: - title: 'پاسخ' - help: 'آغاز ارسال یک پاسخ به این موضوع' clear_pin: title: "برداشتن سنجاق" help: "سنجاق استاتوس این موضوع را بردارید که پس از آن دیگر این موضوع در بالای فهرست موضوعات شما دیده نمی‌شود." @@ -1276,13 +1265,10 @@ fa_IR: displays: inline: title: "نمایش خروجی رندر با اضافات و از بین بردن درون خطی" - button: ' HTML' side_by_side: title: "نمایش تفاوت های خروجی رندر شده سو به سو" - button: ' HTML' side_by_side_markdown: title: "نمایش تفاوت های خروجی منبع اولیه سو به سو" - button: ' Raw' category: can: 'can… ' none: '(بدون دسته)' diff --git a/config/locales/client.fi.yml b/config/locales/client.fi.yml index 0017a95ccf..af1c9b86d7 100644 --- a/config/locales/client.fi.yml +++ b/config/locales/client.fi.yml @@ -423,7 +423,7 @@ fi: '2': "Saadut tykkäykset" '3': "Kirjanmerkit" '4': "Ketjut" - '5': "Vastauksia" + '5': "Vastaukset" '6': "Vastaukset" '7': "Maininnat" '9': "Lainaukset" @@ -458,13 +458,13 @@ fi: one: "%{count} uusi ketju viimeisen %{unit} aikana." other: "%{count} uutta ketjua viimeisen %{unit} aikana." ip_lookup: - title: IP osoitteen haku + title: IP-osoitteen haku hostname: Isäntänimi location: Sijainti location_not_found: (tuntematon) organisation: Yritys phone: Puhelin - other_accounts: "Muut tilit samasta IP osoitteesta:" + other_accounts: "Muut tilit samasta IP-osoitteesta:" delete_other_accounts: "Poista %{count}" username: "käyttäjätunnus" trust_level: "LT" @@ -590,6 +590,8 @@ fi: error: "(virhe)" action: "Lähetä sähköposti salasanan uusimista varten" set_password: "Aseta salasana" + choose_new: "Valitse uusi salasana" + choose: "Valitse salasana" change_about: title: "Muokkaa kuvaustasi" error: "Arvon muuttamisessa tapahtui virhe." @@ -643,13 +645,11 @@ fi: instructions: "uniikki, ei välilyöntejä, lyhyt" short_instructions: "Muut käyttäjät voivat viitata sinuun nimellä @{{username}}" available: "Käyttäjätunnus on vapaana" - global_match: "Sähköposti vastaa rekisteröityä käyttäjänimeä" - global_mismatch: "Nimi on jo käytössä. Kokeile {{suggestion}}?" not_available: "Ei saatavilla. Kokeile {{suggestion}}?" + not_available_no_suggestion: "Ei saatavilla" too_short: "Käyttäjätunnus on liian lyhyt" too_long: "Käyttäjätunnus on liian pitkä" checking: "Tarkistetaan käyttäjätunnusta..." - enter_email: 'Käyttäjänimi löydetty; kirjoita sitä vastaava sähköpostiosoite.' prefilled: "Sähköposti vastaa tätä käyttäjänimeä" locale: title: "Käyttöliittymän kieli" @@ -803,7 +803,7 @@ fi: ip_address: title: "Viimeinen IP-osoite" registration_ip_address: - title: "IP osoite rekisteröityessä" + title: "IP-osoite rekisteröityessä" avatar: title: "Profiilikuva" header_title: "profiili, viestit, kirjanmerkit ja asetukset" @@ -940,6 +940,7 @@ fi: to_continue: "Ole hyvä ja kirjaudu sisään" preferences: "Sinun täytyy olla kirjautuneena sisään muokataksesi tilisi asetuksia" forgot: "En muista käyttäjätilini tietoja" + not_approved: "Tiliäsi ei ole vielä hyväksytty. Saat ilmoituksen sähköpostilla, kun voit kirjautua sisään." google: title: "Googlella" message: "Todennetaan Googlen kautta (varmista, että ponnahdusikkunoiden esto ei ole päällä)" @@ -961,6 +962,17 @@ fi: github: title: "GitHubilla" message: "Todennetaan Githubin kautta (varmista, että ponnahdusikkunoiden esto ei ole päällä)" + invites: + accept_title: "Kutsu" + welcome_to: "Tervetuloa sivustolle %{site_name}!" + invited_by: "Sinut kutsui" + social_login_available: "Voit myös kirjautua some-tilin avulla, joka on saman sähköpostiosoitteen alainen." + your_email: "Tilisi sähköpostiosoite on %{email}." + accept_invite: "Hyväksy kutsu" + success: "Tili luotiin, ja olet nyt kirjautunut sisään." + password_label: "Aseta salasana (valinnainen)" + password_reset: + continue: "Jatka sivustolle %{site_name}" emoji_set: apple_international: "Apple/Kansainvälinen" google: "Google" @@ -1225,8 +1237,10 @@ fi: selected: one: "Olet valinnut yhden ketjun." other: "Olet valinnut {{count}} ketjua." - change_tags: "Muuta tunnisteita" + change_tags: "Korvaa tunnisteet" + append_tags: "Lisää tunnisteita" choose_new_tags: "Valitse tunnisteet näille ketjuille:" + choose_append_tags: "Valitse ketjuille lisättävät uudet tunnisteet:" changed_tags: "Ketjujen tunnisteet muutettiin." none: unread: "Sinulla ei ole ketjuja lukematta." @@ -1404,11 +1418,8 @@ fi: make_banner: "Tee ketjusta banneri" remove_banner: "Poista banneri" reply: - post: - title: 'Vastaa' - topic: - title: 'Vastaa' - help: 'aloita kirjoittamaan vastausta tähän ketjuun' + title: 'Vastaa' + help: 'aloita kirjoittamaan vastausta tähän ketjuun' clear_pin: title: "Poista kiinnitys" help: "Poista kiinnitys, jotta ketju ei enää pysy listauksen ylimpänä" @@ -1537,6 +1548,7 @@ fi: wiki_last_edited_on: "wikiä muokattiin viimeksi" last_edited_on: "viestin viimeisin muokkausaika" reply_as_new_topic: "Vastaa aihetta sivuavassa ketjussa" + reply_as_new_private_message: "Vastaa samoille vastaanottajille uudessa yksityisviestiketjussa" continue_discussion: "Jatkoa ketjulle {{postLink}}:" follow_quote: "siirry lainattuun viestiin" show_full: "Näytä koko viesti" @@ -1709,6 +1721,7 @@ fi: show: "Näytä revisio" revert: "Palaa tähän revisioon" edit_wiki: "Muokkaa wikiä" + edit_post: "Muokkaa viestiä" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1771,6 +1784,7 @@ fi: email_in_disabled: "Uusien ketjujen luominen sähköpostitse on otettu pois käytöstä sivuston asetuksissa. Salliaksesi uusien ketjujen luomisen sähköpostilla, " email_in_disabled_click: 'ota käyttöön "email in" asetus.' suppress_from_homepage: "Vaimenna alue kotisivulta." + show_subcategory_list: "Näytä lista tytäralueista ketjujen yläpuolella tällä alueella." all_topics_wiki: "Tee uusista ketjuista wiki-viestejä oletuksena." sort_order: "Oletusjärjestys:" allow_badges_label: "Salli ansiomerkkien myöntäminen tältä alueelta" @@ -2651,7 +2665,7 @@ fi: description: 'IP-osoitteet joita tarkkaillaan. Valitse "Salli" lisätäksesi osoitteen ohitettavien listalle.' delete_confirm: "Oletko varma, että haluat poistaa tämän säännön osoitteelle %{ip_address}?" roll_up_confirm: "Oletko varma, että haluat yhdistää seulottavat IP-osoitteet aliverkoiksi?" - rolled_up_some_subnets: "Porttikieltojen IP osoitteet käärittiin onnistuneesti näiksi aliverkoiksi: %{subnets}." + rolled_up_some_subnets: "Porttikieltojen IP-osoitteet käärittiin onnistuneesti näiksi aliverkoiksi: %{subnets}." rolled_up_no_subnet: "Mitään käärittävää ei ollut." actions: block: "Estä" diff --git a/config/locales/client.fr.yml b/config/locales/client.fr.yml index ecf718d945..9b697292a2 100644 --- a/config/locales/client.fr.yml +++ b/config/locales/client.fr.yml @@ -589,6 +589,8 @@ fr: error: "(erreur)" action: "Envoyer un courriel de réinitialisation du mot de passe" set_password: "Définir le mot de passe" + choose_new: "Choisissez un nouveau mot de passe" + choose: "Choisissez un mot de passe" change_about: title: "Modifier À propos de moi" error: "Il y a eu une erreur lors de la modification de cette valeur." @@ -642,13 +644,11 @@ fr: instructions: "unique, sans espaces, court" short_instructions: "Les gens peuvent vous mentionner avec @{{username}}" available: "Votre pseudo est disponible" - global_match: "L'adresse de courriel correspond au pseudo enregistré" - global_mismatch: "Déjà enregistré. Essayez {{suggestion}} ?" not_available: "Indisponible. Essayez {{suggestion}} ?" + not_available_no_suggestion: "Non disponible" too_short: "Votre pseudo est trop court" too_long: "Votre pseudo est trop long" checking: "Vérification de la disponibilité du pseudo…" - enter_email: 'Pseudo trouvé ; entrez l''adresse de courriel correspondante' prefilled: "L'adresse de courriel correspond à ce pseudo enregistré" locale: title: "Langue de l'interface" @@ -746,7 +746,7 @@ fr: link_generated: "Lien d'invitation généré avec succés !" valid_for: "Le lien d'invitation est seulement valide pour cette adresse courriel : %{email}" bulk_invite: - none: "Vous n'avez invité personne pour le moment. Vous pouvez envoyer des invitations individuelles ou inviter plusieurs personnes à la fois en envoyant un fichier CSV." + none: "Vous n'avez encore invité personne. Envoyez des invitations individuelles ou à plusieurs personnes en même temps en envoyant un fichier CSV." text: "Invitation massive depuis un fichier" success: "Le fichier a été correctement importé. Vous serez notifié par message privé lorsque le traitement sera terminé." error: "Désolé, le fichier doit être au format CSV." @@ -939,6 +939,7 @@ fr: to_continue: "Veuillez vous connecter" preferences: "Vous devez être connecté pour modifier vos préférences utilisateur." forgot: "J'ai oublié les détails de mon compte" + not_approved: "Votre compte n'a pas encore été approuvé. Vous serez notifié par mail lorsque vous pourrez vous connecter." google: title: "via Google" message: "Authentification via Google (assurez-vous que les popups ne soient pas bloquées)" @@ -960,6 +961,17 @@ fr: github: title: "via GitHub" message: "Authentification via GitHub (assurez-vous que les popups ne soient pas bloquées)" + invites: + accept_title: "Invitation" + welcome_to: "Bienvenue sur %{site_name} !" + invited_by: "Vous avez été invité par :" + social_login_available: "Vous pourrez aussi vous connecter avec un réseau social utilisant cette adresse." + your_email: "L'adresse courriel de votre compte est %{email}." + accept_invite: "Accepter l'invitation" + success: "Votre compte a été créé et vous êtes maintenant connecté." + password_label: "Définir le mot de passe (facultatif)" + password_reset: + continue: "Continuer vers %{site_name}" emoji_set: apple_international: "Apple/International" google: "Google" @@ -1225,7 +1237,9 @@ fr: one: "Vous avez sélectionné 1 sujet." other: "Vous avez sélectionné {{count}} sujets." change_tags: "Changer les tags" + append_tags: "Ajouter les tags" choose_new_tags: "Choisir les nouveaux tags pour ces sujets :" + choose_append_tags: "Choisissez de nouveaux tags à ajouter à ces sujets :" changed_tags: "Les tags de ces sujets ont été modifiés." none: unread: "Vous n'avez aucun sujet non lu." @@ -1403,11 +1417,8 @@ fr: make_banner: "Sujet à la une" remove_banner: "Retirer le sujet à la une" reply: - post: - title: 'Répondre' - topic: - title: 'Répondre' - help: 'commencez à répondre à ce sujet' + title: 'Répondre' + help: 'commencez à répondre à ce sujet' clear_pin: title: "Désépingler" help: "Retirer l'épingle de ce sujet afin qu'il n'apparaisse plus en tête de votre liste de sujet" @@ -1536,6 +1547,7 @@ fr: wiki_last_edited_on: "Wiki dernièrement modifié le" last_edited_on: "message dernièrement modifié le" reply_as_new_topic: "Répondre par un nouveau sujet" + reply_as_new_private_message: "Répondre par un nouveau message direct adressé aux mêmes destinataires" continue_discussion: "Suite du sujet {{postLink}} :" follow_quote: "aller au message cité" show_full: "Afficher le message complet" @@ -1708,6 +1720,7 @@ fr: show: "Afficher la révision" revert: "Revenir à cette révision" edit_wiki: "Modifier le wiki" + edit_post: "Modifier le message" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1770,6 +1783,7 @@ fr: email_in_disabled: "La possibilité de créer des nouveaux sujets via courriel est désactivé dans les Paramètres. Pour l'activer," email_in_disabled_click: 'activer le paramètre "email in".' suppress_from_homepage: "Retirer cette catégorie de la page d'accueil" + show_subcategory_list: "Afficher la liste des sous-catégories au dessus des sujets dans cette catégorie." all_topics_wiki: "Faire des nouveaux sujets des Wikis par défaut" sort_order: "Tri par défaut :" allow_badges_label: "Autoriser les badges à être accordé dans cette catégorie" @@ -2804,6 +2818,7 @@ fr: refresh_browsers_message: "Message envoyé à tous les clients !" show_public_profile: "Afficher le profil public" impersonate: 'Incarner' + action_logs: "Journaux d'actions" ip_lookup: "IP de consultation" log_out: "Déconnecter l'utilisateur" logged_out: "L'utilisateur s'est déconnecté de tous les appareils" diff --git a/config/locales/client.gl.yml b/config/locales/client.gl.yml index 08373c1cbe..fbae93e99c 100644 --- a/config/locales/client.gl.yml +++ b/config/locales/client.gl.yml @@ -210,7 +210,6 @@ gl: like_count: "Gústames" topic_count: "Temas" post_count: "Publicacións" - user_count: "Novos usuarios" active_user_count: "Usuarios activos" contact: "Contacta connosco" contact_info: "No caso dunha incidencia crítica ou asunto urxente que afecte este sitio, contacta connosco en %{contact_info}." @@ -512,7 +511,6 @@ gl: instructions: "As imaxes dos fondos centraranse e terán unha largura predeterminada de 590px." email: title: "Correo electrónico" - instructions: "Non se verá nunca en público" ok: "Enviarémosche un correo electrónico para confirmar" invalid: "Introduce un enderezo de correo electrónico correcto" authenticated: "O teu enderezo de correo electrónico foi autenticado por {{provider}}" @@ -522,22 +520,17 @@ gl: other: "Só che eviaremos un correo-e se non te vimos nos últimos {{count}} minutos." name: title: "Nome" - instructions: "Nome completo (opcional)" instructions_required: "Nome completo" too_short: "O nome é curto de mais" ok: "O nome parece correcto" username: title: "Nome do usuario" - instructions: "Único, sen espazos, curto" short_instructions: "A xente pode mencionarte como @{{username}}" available: "O nome de usuario está dispoñíbel" - global_match: "O correo electrónico correspóndese co nome do usuario rexistrado" - global_mismatch: "Xa rexistrado. Tentar {{suggestion}}?" not_available: "Non dispoñíbel. Tentar {{suggestion}}?" too_short: "O nome do usuario é curto de máis" too_long: "O nome do usuario é longo de máis" checking: "Comprobando a dispoñibilidade do nome do usuario..." - enter_email: 'Atopouse o nome do usuario; introduce o correo electrónico' prefilled: "O correo electrónico coincide co nome do usuario rexistrado" locale: title: "Idioma da interface" @@ -636,7 +629,6 @@ gl: same_as_username: "O contrasinal é igual ao nome do usuario." same_as_email: "O contrasinal é igual ao correo electrónico." ok: "O contrasinal semella bo." - instructions: "Como mínimo %{count} caracteres." summary: title: "Resumo" stats: "Estatísticas" @@ -1144,9 +1136,6 @@ gl: pin_globally: "Pegar tema globalmente" make_banner: "Tema do báner" remove_banner: "Eliminar o tema do báner" - reply: - title: 'Responder' - help: 'responder a este tema' clear_pin: title: "Borrar o estado Pegar" help: "Borra o estado Pegado deste tema para que non apareza na banda superior da lista de temas." @@ -1303,8 +1292,6 @@ gl: yes_value: "Si, abandonar" via_email: "esta publicación chegou por correo-e" whisper: "este é un bisbar privado para moderadores" - wiki: - about: "esta publicación é unha wiki" archetypes: save: 'Gardar opcións' controls: @@ -1430,13 +1417,10 @@ gl: displays: inline: title: "Amosar o resultado coas adicións e eliminacións inseridas" - button: ' HTML' side_by_side: title: "Amosar o resultado coas diferenzas comparadas" - button: ' HTML' side_by_side_markdown: title: "Amosar a fonte crúa coas diferenzas comparadas" - button: ' Crúa' category: can: 'podes… ' none: '(sen categoría)' @@ -2096,7 +2080,6 @@ gl: revoke_admin: "revogar administración" grant_moderation: "conceder moderación" revoke_moderation: "revogar moderación" - backup_operation: "operación de copia de seguranza" screened_emails: title: "Correos-e controlados" description: "Cando alguén tente crear unha nova conta, comprobaranse os seguintes enderezos de correo electrónico e bloquearase o rexistro ou se tomará outra medida." diff --git a/config/locales/client.he.yml b/config/locales/client.he.yml index 681909284a..d595569fce 100644 --- a/config/locales/client.he.yml +++ b/config/locales/client.he.yml @@ -589,6 +589,8 @@ he: error: "(שגיאה)" action: "שלח דואר אלקטרוני לשחזור סיסמה" set_password: "הזן סיסמה" + choose_new: "בחרו סיסמה חדשה" + choose: "בחרו סיסמה" change_about: title: "שינוי בנוגע אליי" error: "ארעה שגיאה בשינוי ערך זה." @@ -642,13 +644,11 @@ he: instructions: "ייחודי, ללא רווחים, קצר" short_instructions: "אנשים יכולים לאזכר אותך כ @{{username}}" available: "שם המשתמש שלך פנוי" - global_match: "הדואר האלקטרוני תואם את שם המשתמש הרשום" - global_mismatch: "כבר רשום. נסו {{suggestion}}?" not_available: "לא זמין. נסו {{suggestion}}?" + not_available_no_suggestion: "לא זמין" too_short: "שם המשתמש שלך קצר מידי" too_long: "שם המשתמש שלך ארוך מידי" checking: "בודק זמינות שם משתמש..." - enter_email: 'נמצא שם משתמש - הכנס דואר אלקטרוני תואם' prefilled: "הדואר האלקטרוני תואם לשם משתמש זה" locale: title: "שפת ממשק" @@ -746,10 +746,10 @@ he: link_generated: "קישור הזמנה יוצר בהצלחה!" valid_for: "קישור הזמנה תקף רק לכתובת המייל הזו: %{email}" bulk_invite: - none: "עדיין לא הזמנתם לכאן אף אחד. תוכלו לשלוח הזמנות פרטניות, או להזמין כמה אנשים יחד על ידי העלאת קובץ CSV." + none: "עדיין לא הזמנתם לכאן אף אחד. שילחו הזמנות אישיות, או הזמינו הרבה אנשים ביחד על ידי העלאת קובץ CSV." text: "הזמנה קבוצתית מקובץ" success: "העלאת הקובץ החלה בהצלחה, תקבלו התראה באמצעות מסר כאשר התהליך יושלם." - error: "מצטערים, הקובץ צריך להיות בפורמט csv." + error: "מצטערים, לקובץ צריך להיות פורמט CSV" password: title: "סיסמה" too_short: "הסיסמה שלך קצרה מידי." @@ -939,6 +939,7 @@ he: to_continue: "התחברו בבקשה" preferences: "אתם צריכים להיות מחוברים כדי לשנות את העדפות המשתמש שלכם." forgot: "אין לי את פרטי החשבון שלי" + not_approved: "החשבון שלכם עדיין לא אושר. אתם תיודעו במייל כשתוכלו להתחבר." google: title: "עם גוגל" message: "התחברות עם גוגל (יש לוודא שחוסם חלונות קופצים אינו פעיל)" @@ -960,6 +961,17 @@ he: github: title: "עם GitHub" message: "התחברות עם GitHub (יש לוודא שחוסם חלונות קופצים אינו פעיל)" + invites: + accept_title: "הזמנה" + welcome_to: "ברוכים הבאים ל-%{site_name}!" + invited_by: "הוזמנתם על ידי:" + social_login_available: "תוכלו גם להתחבר עם כל התחברות חברתית באמצעות כתובת מייל זו." + your_email: "כתובת המייל של החשבון שלכם היא %{email}." + accept_invite: "קבלת הזמנה" + success: "החשבון שלכם נוצר ואתם מחוברים עכשיו." + password_label: "קביעת סיסמה (אופציונלי)" + password_reset: + continue: "המשיכו ל-%{site_name}" emoji_set: apple_international: "אפל/בינלאומי" google: "גוגל" @@ -1224,8 +1236,10 @@ he: selected: one: "בחרתם נושא אחד." other: "בחרתם {{count}} נושאים." - change_tags: "שנו תגיות" + change_tags: "החלפת תגים" + append_tags: "הוספת תגים" choose_new_tags: "בחרו בתגיות חדשות עבור נושאים אלו:" + choose_append_tags: "בחרו תגים חדשים להוסיף לנושאים הללו:" changed_tags: "התגיות של נושאים אלו השתנו." none: unread: "אין לכם נושאים שלא נקראו." @@ -1405,11 +1419,8 @@ he: make_banner: "נושא באנר" remove_banner: "הסרת נושא באנר" reply: - post: - title: 'תגובה' - topic: - title: 'תגובה' - help: 'התחילו לחבר תגובה לנושא זה' + title: 'תגובה' + help: 'התחילו לערוך תגובה לנושא זה' clear_pin: title: "נקה נעיצה" help: "נקה סטטוס נעוץ של נושא זה כדי שהוא לא יופיע עוד בראש רשימת הנושאים שלכם" @@ -1538,6 +1549,7 @@ he: wiki_last_edited_on: "וויקי נערך לאחרונה ב" last_edited_on: "הפוסט נערך לאחרונה ב" reply_as_new_topic: "תגובה כנושא מקושר" + reply_as_new_private_message: "תגובה כהודעה חדשה לאותם נמענים" continue_discussion: "ממשיך את הדיון מ {{postLink}}:" follow_quote: "מעבר לפוסט המצוטט" show_full: "הצגת פוסט מלא" @@ -1709,7 +1721,8 @@ he: hide: "הסתרת שינויים" show: "הצגת שינויים" revert: "חזרה לגרסה זו" - edit_wiki: "עריכת ויקי" + edit_wiki: "עריכת וויקי" + edit_post: "עריכת פוסט" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1772,6 +1785,7 @@ he: email_in_disabled: "אפשרות הפרסום של נושאים חדשים דרך דוא\"ל נוטרלה בהגדרות האתר. כדי לאפשר פרסום באמצעות משלוח דוא\"ל," email_in_disabled_click: 'אפשרו את את ההגדרה "דוא"ל נכנס"' suppress_from_homepage: "הרחיקו קטגוריה זו מהעמוד הראשי." + show_subcategory_list: "הצגת רשימת קטגוריות משנה מעל נושאים בקטגוריה זו." all_topics_wiki: "כברירת מחדל נושאים חדשים יהיו וויקי." sort_order: "סידור ברירת מחדל:" allow_badges_label: "הרשו לעיטורים להיות מוענקים בקטגוריה זו" @@ -2806,6 +2820,7 @@ he: refresh_browsers_message: "ההודעה נשלחה לכל הלקוחות!" show_public_profile: "הצג פרופיל פומבי" impersonate: 'התחזה' + action_logs: "יומני פעולות" ip_lookup: "חיפוש IP" log_out: "התנתקות" logged_out: "המשתמש/ת התנתקו בכל המכשירים" diff --git a/config/locales/client.id.yml b/config/locales/client.id.yml index ec61709eea..c7bcccae92 100644 --- a/config/locales/client.id.yml +++ b/config/locales/client.id.yml @@ -191,7 +191,6 @@ id: like_count: "Suka" topic_count: "Topik" post_count: "Pos" - user_count: "Pengguna Baru" active_user_count: "Pengguna Aktif" contact: "Kontak kami" contact_info: "Pada kegiatan dari sebuah isu kritikal atau penting terjadi pada situs ini, silahkan kontak kami di %{contact_info}." @@ -495,7 +494,6 @@ id: instructions: "Gambar latar belakang akan ditengahkan dan mempunyai lebar standar 590px" email: title: "Surel" - instructions: "Tidak pernah ditampilkan ke publik" ok: "Kami akan mengirimkan surel kepada anda untuk konfirmasi" invalid: "Silahkan masukkan alamat email yang valid" authenticated: "Email anda sudah dikonfirmasi oleh {{provider}}" @@ -503,22 +501,17 @@ id: other: "Kami akan mengirimkan email kepada anda jika kami tidak melihat anda selama {{count}} menit." name: title: "Name" - instructions: "Nama lengkap anda (pilihan)" instructions_required: "Nama lengkap anda" too_short: "Nama anda terlalu pendek" ok: "Nama anda terlihat bagus" username: title: "Nama Pengguna" - instructions: "Unik, tanpa spasi, pendek" short_instructions: "Orang dapat menyebut anda sebagai @{{username}}" available: "Nama pengguna anda tersedia" - global_match: "Surel cocok dengan nama pengguna yang terdaftar" - global_mismatch: "Sudah terdaftar. Coba {{suggestion}}?" not_available: "Tidak tersedia. Coba {{suggestion}}?" too_short: "Nama pengguna anda terlalu pendek" too_long: "Nama pengguna anda terlalu panjang" checking: "Memeriksa ketersediaan nama pengguna..." - enter_email: 'Nama pengguna ditemukan; masukkan surel yang cocok' prefilled: "Surel cocok dengan nama pengguna yang terdaftar" locale: title: "Bahasa antarmuka" @@ -591,7 +584,6 @@ id: same_as_username: "Password dan nama pengguna kamu sama" same_as_email: "Password dan email kamu sama" ok: "Kata sandi Anda terlihat baik." - instructions: "Setidaknya %{count} karakter." summary: title: "Ringkasan" stats: "Statistik" diff --git a/config/locales/client.it.yml b/config/locales/client.it.yml index 3dfb95ce04..4f0bb74a80 100644 --- a/config/locales/client.it.yml +++ b/config/locales/client.it.yml @@ -411,13 +411,13 @@ it: description: "Non verrai mai avvertito per i nuovi argomenti in questo gruppo." flair_url: "Immagine Avatar Flair" flair_url_placeholder: "(Facoltativo) URL Immagine o classe Font Awesome" - flair_bg_color: "Colore di background Avatar Flair" + flair_bg_color: "Colore Sfondo Avatar Flair" flair_bg_color_placeholder: "(Facoltativo) Codice esadecimale del colore" flair_color: "Colore Avatar Flair" flair_color_placeholder: "(Facoltativo) Codice esadecimale del colore" flair_preview_icon: "Anteprima Icona" flair_preview_image: "Anteprima Immagine" - flair_note: "Nota: Flair sarà mostrato solo per i primary group dell'utente." + flair_note: "Nota: Flair sarà mostrato solo per i gruppi primari dell'utente." user_action_groups: '1': "Mi piace - Assegnati" '2': "Mi piace - Ricevuti" @@ -589,6 +589,8 @@ it: error: "(errore)" action: "Invia l'email per il ripristino della password" set_password: "Imposta Password" + choose_new: "Scegli una nuova password" + choose: "Scegli una password" change_about: title: "Modifica i dati personali" error: "Si è verificato un errore durante la modifica del valore." @@ -623,7 +625,7 @@ it: instructions: "Le immagini di sfondo saranno centrate e per difetto avranno un'ampiezza di 590px." email: title: "Email" - instructions: "mai mostrare al pubblico" + instructions: "mai mostrato pubblicamente" ok: "Ti invieremo una email di conferma" invalid: "Inserisci un indirizzo email valido" authenticated: "{{provider}} ha autenticato la tua email" @@ -639,16 +641,13 @@ it: ok: "Il nome sembra adeguato" username: title: "Nome utente" - instructions: "deve essere unico, senza spazi e breve" + instructions: "univoco, senza spazi, breve" short_instructions: "Gli utenti possono citarti scrivendo @{{username}}" available: "Il nome utente è disponibile" - global_match: "L'email corrisponde al nome utente registrato" - global_mismatch: "Già registrato. Prova {{suggestion}}?" not_available: "Non disponibile. Prova {{suggestion}}?" too_short: "Il nome utente è troppo corto" too_long: "Il nome utente è troppo lungo" checking: "Controllo la disponibilità del nome utente..." - enter_email: 'Nome utente trovato; inserisci l''email corrispondente' prefilled: "L'email corrisponde al nome utente registrato" locale: title: "Lingua dell'interfaccia" @@ -746,10 +745,8 @@ it: link_generated: "Collegamento di invito generato con successo!" valid_for: "Questo collegamento di invito è valido solamente per il seguente indirizzo email: %{email}" bulk_invite: - none: "Non hai ancora invitato nessuno. Puoi invitare persone singole, o più persone insieme caricando un file CSV." text: "Invito di Massa da File" success: "Il file è stato caricato con successo, riceverai un messaggio di notifica quando il processo sarà completato." - error: "Spiacenti, il file dovrebbe essere in formato CSV." password: title: "Password" too_short: "La password è troppo breve." @@ -757,7 +754,7 @@ it: same_as_username: "La tua password è uguale al tuo nome utente." same_as_email: "La password coincide con l'email." ok: "La password è adeguata" - instructions: "Minimo %{count} caratteri" + instructions: "almeno %{count} caratteri" summary: title: "Riepilogo" stats: "Statistiche" @@ -939,6 +936,7 @@ it: to_continue: "Per favore Connettiti" preferences: "Devi essere connesso per cambiare le tue impostazioni." forgot: "Non ricordo i dettagli del mio account" + not_approved: "Il tuo account non è ancora stato approvato. Verrai avvertito via email quando potrai collegarti." google: title: "con Google" message: "Autenticazione tramite Google (assicurati che il blocco pop up non sia attivo)" @@ -960,6 +958,8 @@ it: github: title: "con GitHub" message: "Autenticazione con GitHub (assicurati che il blocco pop up non sia attivo)" + password_reset: + continue: "Procedi su %{site_name}" emoji_set: apple_international: "Apple/Internazionale" google: "Google" @@ -1403,7 +1403,6 @@ it: remove_banner: "Rimuovi Argomento Annuncio" reply: title: 'Rispondi' - help: 'inizia a scrivere una risposta a questo argomento' clear_pin: title: "Spunta" help: "Rimuovi la spunta da questo argomento, così non comparirà più in cima alla lista degli argomenti" @@ -1529,6 +1528,7 @@ it: edit: "Modifica in corso {{link}} {{replyAvatar}} {{username}}" edit_reason: "Motivo:" post_number: "messaggio {{number}}" + wiki_last_edited_on: "ultima modifica alla wiki" last_edited_on: "ultima modifica al messaggio:" reply_as_new_topic: "Rispondi come Argomento collegato" continue_discussion: "Continua la discussione da {{postLink}}:" @@ -1575,7 +1575,7 @@ it: via_auto_generated_email: "questo messaggio è arrivato tramite una email auto generata" whisper: "questo messaggio è un sussurro privato per i moderatori" wiki: - about: "questo messaggio è una guida" + about: "questo messaggio è una wiki" archetypes: save: 'Opzioni di salvataggio' few_likes_left: "Grazie per aver condiviso l'amore! Hai ancora pochi \"Mi piace\" rimasti per oggi." @@ -1702,17 +1702,19 @@ it: hide: "Nascondi revisione" show: "Mostra revisione" revert: "Ritorna a questa revisione" + edit_wiki: "Modifica Wiki" + edit_post: "Modifica Messaggio" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: title: "Mostra il risultato con le aggiunte e le rimozioni in linea" - button: ' HTML' + button: 'HTML' side_by_side: title: "Mostra le differenze del risultato fianco a fianco" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "Mostra le differenze nei sorgenti fianco-a-fianco" - button: ' Raw' + button: 'Sorgente' category: can: 'può…' none: '(nessuna categoria)' @@ -1783,6 +1785,7 @@ it: description: "Riceverai una notifica soltanto per il primo messaggio di ogni nuovo argomento in queste categorie." tracking: title: "Seguendo" + description: "Seguirai automaticamente tutti gli argomenti in tali categorie. Ti verrà inviata una notifica se qualcuno menziona il tuo @nome o ti risponde, e apparirà un conteggio delle nuove risposte." regular: title: "Normale" description: "Riceverai una notifica se qualcuno menziona il tuo @nome o ti risponde." @@ -1879,6 +1882,9 @@ it: one: "visita" other: "visite" replies: "Risposte" + views_long: + one: "questo argomento è stato visto 1 volta" + other: "questo argomento è stato visto {{number}} volte" activity: "Attività" likes: "Mi piace" likes_lowercase: @@ -2183,6 +2189,8 @@ it: backups: "backup" traffic_short: "Traffico" traffic: "Richieste web dell'applicazione" + page_views: "Visualizzazioni di pagina" + page_views_short: "Visualizzazioni di pagina" show_traffic_report: "Mostra rapporto di traffico dettagliato" reports: today: "Oggi" @@ -3068,7 +3076,7 @@ it: embed_truncate: "Tronca i messaggi incorporati" embed_whitelist_selector: "Selettore CSS per gli elementi da permettere negli embed" embed_blacklist_selector: "Selettore CSS per gli elementi da rimuovere dagli embed" - embed_classname_whitelist: "Classi CSS autorizzate" + embed_classname_whitelist: "Classi CSS permesse" feed_polling_enabled: "Importa i messaggi via RSS/ATOM" feed_polling_url: "URL del feed RSS/ATOM da recuperare" save: "Salva Impostazioni Inclusione" diff --git a/config/locales/client.ja.yml b/config/locales/client.ja.yml index 17527c9036..486c8e07e6 100644 --- a/config/locales/client.ja.yml +++ b/config/locales/client.ja.yml @@ -188,7 +188,6 @@ ja: like_count: "いいね!" topic_count: "トピック" post_count: "投稿" - user_count: "新規ユーザー" active_user_count: "アクティブユーザー" contact: "お問い合わせ" contact_info: "このサイトに影響を与える重要な問題や緊急の問題が発生した場合は、 %{contact_info}までご連絡ください" @@ -498,7 +497,6 @@ ja: instructions: "背景画像は、幅590pxで中央揃えになります" email: title: "メールアドレス" - instructions: "外部に公開されることはありません" ok: "確認用メールを送信します" invalid: "正しいメールアドレスを入力してください" authenticated: "あなたのメールアドレスは {{provider}} によって認証されています" @@ -506,22 +504,17 @@ ja: other: "最後に利用されてから{{count}}分以上経過した場合にメールを送ります。" name: title: "名前" - instructions: "フルネーム(任意)" instructions_required: "氏名" too_short: "名前が短いです" ok: "問題ありません" username: title: "ユーザー名" - instructions: "空白を含まず、被らない名前を入力してください" short_instructions: "@{{username}} であなたにメンションを送ることができます" available: "ユーザ名は利用可能です" - global_match: "メールアドレスが登録済みのユーザ名と一致しました" - global_mismatch: "既に利用されています。{{suggestion}} などはどうでしょうか?" not_available: "利用出来ない名前です。 {{suggestion}} などはどうでしょうか?" too_short: "ユーザ名が短すぎます" too_long: "ユーザ名が長すぎます" checking: "ユーザ名が利用可能か確認しています..." - enter_email: 'ユーザ名が見つかりました; 正しいメールアドレスを入力してください' prefilled: "この登録ユーザにマッチするメールアドレスが見つかりました" locale: title: "表示する言語" @@ -610,7 +603,6 @@ ja: same_as_username: "パスワードがユーザ名と一致しています" same_as_email: "パスワードとメールアドレスが一致しています" ok: "パスワード OK。" - instructions: "%{count} 文字以上の長さにしてください。" summary: title: "情報" stats: "統計" @@ -1109,9 +1101,6 @@ ja: pin_globally: "トピックを全サイト的にピン留めする" make_banner: "バナートピック" remove_banner: "バナートピックを削除" - reply: - title: '返信' - help: 'このトピックに返信する' clear_pin: title: "ピンを解除する" help: "このトピックのピンを外し、トピックリストの先頭に表示されないようにする" @@ -1343,13 +1332,10 @@ ja: displays: inline: title: "追加・削除箇所をインラインで表示" - button: ' HTML' side_by_side: title: "差分を横に並べて表示" - button: ' HTML' side_by_side_markdown: title: "ソース文書で表示する" - button: 'ソース文書' category: can: 'can… ' none: '(カテゴリなし)' diff --git a/config/locales/client.ko.yml b/config/locales/client.ko.yml index 7112865775..7388d6e9be 100644 --- a/config/locales/client.ko.yml +++ b/config/locales/client.ko.yml @@ -94,7 +94,7 @@ ko: action_codes: public_topic: "이 토픽을 %{when} 에 공개" private_topic: "이 토픽을 %{when} 에 비공개" - split_topic: "이 주제를 ${when} 분리" + split_topic: "이 주제를 ${when}에 분리" invited_user: "%{who}이(가) %{when}에 초대됨" invited_group: "%{who} 이(가) %{when} 에 초대됨" removed_user: "%{who}이(가) %{when}에 삭제됨" @@ -120,7 +120,7 @@ ko: topic_admin_menu: "주제 관리자 기능" wizard_required: "포럼을 설정하세요! 설치 마법사를 시작하세요!" emails_are_disabled: "관리자가 이메일 송신을 전체 비활성화 했습니다. 어떤 종류의 이메일 알림도 보내지지 않습니다." - bootstrap_mode_enabled: "쉬운 시작을 위해 부트스트랩 모드로 구동 되었습니다. 모든 새로운 사용자에게 신뢰 수준 1이 부여되고 매일 이메일 다이제스트가 보내집니다. 이 기능은 총 사용자 수가% {min_users} 를 초과 할 때 자동으로 꺼집니다." + bootstrap_mode_enabled: "쉬운 시작을 위해 부트스트랩 모드로 구동 되었습니다. 모든 새로운 사용자에게 신뢰 수준 1이 부여되고 매일 이메일 다이제스트가 보내집니다. 이 기능은 총 사용자 수가 %{min_users}를 초과 할 때 자동으로 꺼집니다." bootstrap_mode_disabled: "부트스트랩 모드는 24시간 뒤 비활성화 될 것입니다." s3: regions: @@ -194,7 +194,7 @@ ko: like_count: "좋아요" topic_count: "주제" post_count: "게시글" - user_count: "새로운 사용자" + user_count: "사용자" active_user_count: "활성화된 사용자" contact: "문의" contact_info: "사이트 운영과 관련된 사항이나 요청이 있으시다면 이메일 %{contact_info}로 연락주시기 바랍니다." @@ -529,7 +529,6 @@ ko: instructions: "배경 이미지는 가운데를 기준으로 표시되며 590px이 기본 가로 사이즈 입니다." email: title: "이메일" - instructions: "절대로 공개되지 않습니다." ok: "내 이메일로 확인 메일이 전송됩니다." invalid: "유효한 이메일 주소를 입력해주세요." authenticated: "내 이메일이 {{provider}}에 의해 인증되었습니다." @@ -538,22 +537,17 @@ ko: other: "최근 {{count}}분 동안접속하지 않을 경우에만 메일이 전송됩니다." name: title: "이름" - instructions: "이름을 적어주세요. (선택사항)" instructions_required: "이름" too_short: "이름이 너무 짧습니다." ok: "사용 가능한 이름입니다." username: title: "아이디" - instructions: "중복될 수 없으며 띄어쓰기 사용이 불가합니다. 짧을 수록 좋아요." short_instructions: "@{{username}}으로 멘션이 가능합니다." available: "아이디\x1D로 사용가능합니다." - global_match: "이메일이 등록된 아이디와 연결되어 있습니다." - global_mismatch: "이미 등록된 아이디입니다. 다시 시도해보세요. {{suggestion}}" not_available: "사용할 수 없는 아이디입니다. 다시 시도해보세요. {{suggestion}}" too_short: "아이디가 너무 짧습니다" too_long: "아이디가 너무 깁니다." checking: "사용가능한지 확인 중..." - enter_email: '아이디를 찾았습니다. 일치하는 이메일을 입력해주세요.' prefilled: "이메일이 등록된 아이디와 연결되어 있습니다." locale: title: "인터페이스 언어" @@ -649,7 +643,6 @@ ko: same_as_username: "비밀번호가 아이디와 동일합니다." same_as_email: "비밀번호가 이메일과 동일합니다." ok: "적절한 암호입니다." - instructions: "글자 수가 %{count}자 이상이어야 합니다." summary: title: "요약" stats: "통계" @@ -1150,9 +1143,6 @@ ko: pin_globally: "전체 공지글로 설정하기" make_banner: "배너 주제" remove_banner: "배너 주제 제거" - reply: - title: '답글' - help: '이 주제에 대한 답글 작성 시작' clear_pin: title: "고정 취소" help: "더 이상 목록의 맨 위에 표시하지 않도록 이 주제의 고정 상태를 해제합니다." @@ -1294,8 +1284,6 @@ ko: yes_value: "예" via_email: "이 주제는 이메일을 통해 등록되었습니다." whisper: "이 포스트는 운영자를 위한 비공개 귓말입니다." - wiki: - about: "이 글은 위키(wiki) 입니다." archetypes: save: '옵션 저장' controls: @@ -1401,13 +1389,10 @@ ko: 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: "Raw source diff를 양쪽으로 보기" - button: ' Raw' category: can: '허용' none: '(카테고리 없음)' @@ -2050,7 +2035,6 @@ ko: revoke_admin: "관리자권한 회수" grant_moderation: "운영자권한 부여" revoke_moderation: "운영자권한 회수" - backup_operation: "백업 작업" screened_emails: title: "블락된 이메일들" description: "누군가가 새로운 계정을 만들면 아래 이메일 주소는 체크되고 등록은 블락됩니다, 또는 다른 조치가 취해집니다." diff --git a/config/locales/client.nb_NO.yml b/config/locales/client.nb_NO.yml index 9febbf3398..de4c618e26 100644 --- a/config/locales/client.nb_NO.yml +++ b/config/locales/client.nb_NO.yml @@ -282,7 +282,7 @@ nb_NO: delete_prompt: "Er du sikker du ønsker å slette %{username}? Dette vil fjerne alle brukerens innlegg og blokkere brukerens epost- og IP-adresse." approval: title: "Innlegg trenger godkjenning" - description: "Vi har mottatt ditt nye innlegg men det krever godkjenning av en moderator før det vises. Ha tolmod." + description: "Vi har mottatt ditt nye innlegg men det krever godkjenning av en moderator før det vises. Ha tålmod." pending_posts: one: "Du har 1 innlegg som venter på godkjenning." other: "Du har {{count}} innlegg som venter på godkjenning." @@ -589,6 +589,8 @@ nb_NO: error: "(feil)" action: "Send e-post for nullstilling av passord" set_password: "Sett passord" + choose_new: "Velg et nytt passord" + choose: "Velg et passord" change_about: title: "Rediger om meg" error: "Det oppstod en feil ved endring av denne verdien." @@ -642,13 +644,11 @@ nb_NO: instructions: "unikt, ingen mellomrom, kort" short_instructions: "Folk kan nevne deg som @{{username}}." available: "Ditt brukernavn er tilgjengelig." - global_match: "E-post stemmer med det registrerte brukernavnet" - global_mismatch: "Allerede registrert. Prøv {{suggestion}}?" not_available: "Ikke tilgjengelig. Prøv {{suggestion}}?" + not_available_no_suggestion: "Ikke tilgjengelig" too_short: "Ditt brukernavn er for kort." too_long: "Ditt brukernavn er for langt." checking: "Sjekker brukernavnets tilgjengelighet…" - enter_email: 'Brukernavn funnet; oppgi samsvarende e-post' prefilled: "E-post stemmer med dette registrerte brukernavnet" locale: title: "Språk for grensesnitt" @@ -657,7 +657,7 @@ nb_NO: any: "hvilken som helst" password_confirmation: title: "Passord igjen" - last_posted: "Siste Innlegg" + last_posted: "Siste innlegg" last_emailed: "Sist kontaktet" last_seen: "Sist sett" created: "Medlem fra" @@ -746,10 +746,10 @@ nb_NO: link_generated: "Invitasjonslenke har blitt generert!" valid_for: "Invitasjonslenke er kun gyldig for denne e-postadressen: %{email}" bulk_invite: - none: "Du har ikke invitert noen hit enda. Du kan sende individuelle invitasjoner, eller du kan invitere flere personer samtidig ved å laste opp en CSV-fil." + none: "Du har ikke invitert noen enda. Sende enkeltsående invitasjoner, eller inviter mange samtidig ved å laste opp ei CSV-fil." text: "Masseinvitasjon fra fil" success: "Filen er lastet opp, du vil motta en melding når prosessesen er ferdig" - error: "Beklager, filen skal være i CSV-format." + error: "Beklager, fila må være i CSV-format." password: title: "Passord" too_short: "Passordet ditt er for kort" @@ -939,6 +939,7 @@ nb_NO: to_continue: "Logg inn" preferences: "Du må være innlogget for å endre brukerinnstillinger." forgot: "I husker ikke mine kontodetaljer" + not_approved: "Kontoen din har ikke blitt godkjent enda. Du vil få beskjed via e-post når du er klar til å logge inn." google: title: "med Google" message: "Autentiserer med Google (sørg for at du tillater pop-up vindu)" @@ -960,6 +961,17 @@ nb_NO: github: title: "med GitHub" message: "Autentiserer med GitHub (sørg for at du tillater pop-up vindu)" + invites: + accept_title: "Invitasjon" + welcome_to: "Velkommen til %{site_name}!" + invited_by: "Du ble invitert av:" + social_login_available: "Du vil også kunne logge inn med enhver annen sosial innloggingstjeneste ved bruk av den e-posten." + your_email: "E-postadressen tilknyttet din konto er %{email}." + accept_invite: "Godta invitasjon" + success: "Kontoen din har blitt opprettet og du er nå logget inn." + password_label: "Sett passord (valgfritt)" + password_reset: + continue: "Fortsett til %{site_name}" emoji_set: apple_international: "Apple/Internasjonalt" google: "Google" @@ -1103,7 +1115,7 @@ nb_NO: quoted: "Sitert av" replied: "Svart" posted: "Innlegg av" - edited: "Rediger din melding innen" + edited: "Rediger ditt innlegg innen" liked: "Likte innlegget ditt" private_message: "Privat melding fra" invited_to_private_message: "Invitert til privat korrespondanse av" @@ -1333,7 +1345,7 @@ nb_NO: jump_bottom: "Hopp til nyeste innlegg" jump_prompt: "hopp til…" jump_prompt_of: "av %{count} innlegg" - jump_prompt_long: "Hvilken melding vil du gå til?" + jump_prompt_long: "Hvilket innlegg vil du gå til?" jump_bottom_with_number: "hopp til innlegg %{post_number}" total: innlegg totalt current: gjeldende innlegg @@ -1403,11 +1415,8 @@ nb_NO: make_banner: "Banneremne" remove_banner: "Fjern banneremne" reply: - post: - title: 'Svar' - topic: - title: 'Svar' - help: 'begynn å skrive et svar til dette emnet' + title: 'Svar' + help: 'begynn å forfatte et svar i dette emnet' clear_pin: title: "Løsne emne" help: "Løsne feste-statusen til dette emnet slik at det ikke lenger vises på toppen av din emneliste" @@ -1536,6 +1545,7 @@ nb_NO: wiki_last_edited_on: "wikien sist redigert" last_edited_on: "innlegg sist redigert" reply_as_new_topic: "Svar med lenket emne" + reply_as_new_private_message: "Svar som ny melding til de samme mottakerne" continue_discussion: "Fortsetter diskusjonen fra {{postLink}}:" follow_quote: "gå til det siterte innlegget" show_full: "Vis hele innlegget" @@ -1598,8 +1608,8 @@ nb_NO: more: "Mer" delete_replies: confirm: - one: "Vil du òg slette det direkte svaret til dette innlegget?" - other: "Vil du òg slette de {{count}} direkte svarene til dette innlegget?" + one: "Vil du også slette det direkte svaret til dette innlegget?" + other: "Vil du også slette de {{count}} direkte svarene til dette innlegget?" yes_value: "Ja, slett svarene også." no_value: "Nei, kun dette innlegget." admin: "Innleggsadministrasjon" @@ -1708,6 +1718,7 @@ nb_NO: show: "Vis versjon" revert: "Gå tilbake til denne versjonen" edit_wiki: "Rediger wiki" + edit_post: "Rediger innlegg" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: diff --git a/config/locales/client.nl.yml b/config/locales/client.nl.yml index 6c1558488b..2295401f49 100644 --- a/config/locales/client.nl.yml +++ b/config/locales/client.nl.yml @@ -9,8 +9,8 @@ nl: js: number: format: - separator: "." - delimiter: "," + separator: "," + delimiter: "." human: storage_units: format: '%n %u' @@ -26,19 +26,19 @@ nl: thousands: "{{number}}k" millions: "{{number}}M" dates: - time: "h:mm a" + time: "HH:mm" timeline_date: "MMM YYYY" - long_no_year: "MMM D h:mm a" - long_no_year_no_time: "MMM D" - full_no_year_no_time: "MMMM Do" - long_with_year: "MMM D, YYYY h:mm a" - long_with_year_no_time: "MMM D, YYYY" - full_with_year_no_time: "MMMM Do, YYYY" - long_date_with_year: "MMM D, 'YY LT" - long_date_without_year: "MMM D, LT" - long_date_with_year_without_time: "MMM D, 'YY" - long_date_without_year_with_linebreak: "MMM D
    LT" - long_date_with_year_with_linebreak: "MMM D, 'YY
    LT" + long_no_year: "D MMM [om] HH:mm" + long_no_year_no_time: "D MMM" + full_no_year_no_time: "D MMMM" + long_with_year: "D MMM YYYY [om] HH:mm" + long_with_year_no_time: "D MMM YYYY" + full_with_year_no_time: "D MMMM YYYY" + long_date_with_year: "D MMM 'YY [om] HH:mm" + long_date_without_year: "D MMM [om] HH:mm" + long_date_with_year_without_time: "D MMM 'YY" + long_date_without_year_with_linebreak: "D MMM
    HH:mm" + long_date_with_year_with_linebreak: "D MMM 'YY
    HH:mm" wrap_ago: "%{date} geleden" tiny: half_a_minute: "< 1m" @@ -87,7 +87,7 @@ nl: one: "1 uur geleden" other: "%{count} uur geleden" x_days: - one: "1 day geleden" + one: "1 dag geleden" other: "%{count} dagen geleden" later: x_days: @@ -143,7 +143,7 @@ nl: s3: regions: us_east_1: "VS Oost (N. Virginia)" - us_west_1: "VS West (N. California)" + us_west_1: "VS West (N. Californië)" us_west_2: "VS West (Oregon)" us_gov_west_1: "AWS GovCloud (VS)" eu_west_1: "EU (Ierland)" @@ -238,7 +238,7 @@ nl: one: "{{count}} ongelezen topic." other: "{{count}} ongelezen topics." topic_count_new: - one: "{{count}} nieuw topic. " + one: "{{count}} nieuw topic." other: "{{count}} nieuwe topics." click_to_show: "Klik om te bekijken." preview: "voorbeeld" @@ -589,6 +589,8 @@ nl: error: "(fout)" action: "E-mail voor wachtwoordherinitialisatie verzenden" set_password: "Wachtwoord instellen" + choose_new: "Kies een nieuw wachtwoord" + choose: "Kies een wachtwoord" change_about: title: "Over mij wijzigen" error: "Er is een fout opgetreden bij het wijzigen van deze waarde." @@ -614,7 +616,7 @@ nl: upload_title: "Uw afbeelding uploaden" upload_picture: "Afbeelding uploaden" image_is_not_a_square: "Waarschuwing: we hebben uw afbeelding bijgesneden; breedte en hoogte waren niet gelijk." - cache_notice: "U hebt uw profielfoto met succes gewijzigd, maar door bufferwerking van uw browser kan het even duren voordat deze overal zichtbaar is." + cache_notice: "U hebt uw profielafbeelding met succes gewijzigd, maar door bufferwerking van uw browser kan het even duren voordat deze overal zichtbaar is." change_profile_background: title: "Profielachtergrond" instructions: "Profielachtergronden worden gecentreerd en hebben een standaardbreedte van 850px." @@ -642,13 +644,11 @@ nl: instructions: "uniek, geen spaties, kort" short_instructions: "Mensen kunnen u vermelden als @{{username}}" available: "Uw gebruikersnaam is beschikbaar" - global_match: "E-mailadres hoort bij de geregistreerde gebruikersnaam" - global_mismatch: "Al geregistreerd. {{suggestion}} proberen?" not_available: "Niet beschikbaar. {{suggestion}} proberen?" + not_available_no_suggestion: "Niet beschikbaar" too_short: "Uw gebruikersnaam is te kort" too_long: "Uw gebruikersnaam is te lang" checking: "Beschikbaarheid van gebruikersnaam controleren..." - enter_email: 'Gebruikersnaam gevonden; voer het bijbehorende e-mailadres in' prefilled: "E-mailadres komt overeen met deze geregistreerde gebruikersnaam" locale: title: "Taal van interface" @@ -668,10 +668,10 @@ nl: website: "Website" email_settings: "E-mail" like_notification_frequency: - title: "Melden wanneer geliked" + title: "Melden wanneer geliket" always: "Altijd" - first_time_and_daily: "De eerste keer dat een bericht is geliked en dagelijks" - first_time: "De eerste keer dat een bericht is geliked" + first_time_and_daily: "De eerste keer dat een bericht is geliket en dagelijks" + first_time: "De eerste keer dat een bericht is geliket" never: "Nooit" email_previous_replies: title: "Vorige antwoorden onder e-mails bijvoegen" @@ -746,7 +746,7 @@ nl: link_generated: "Uitnodigingskoppeling is met succes aangemaakt!" valid_for: "De uitnodigingskoppeling is alleen geldig voor dit e-mailadres: %{email}" bulk_invite: - none: "U hebt hier nog niemand uitgenodigd. U kunt individuele uitnodigingen sturen, of een groep mensen tegelijk uitnodigen door een CSV-bestand te uploaden." + none: "U hebt hier nog niemand uitgenodigd. Stuur individuele uitnodigingen of nodig meerdere mensen tegelijk uit door een CSV-bestand te uploaden." text: "Groepsuitnodiging via bestand" success: "Het bestand is met succes geüpload. U ontvangt een melding via een bericht zodra het proces is voltooid." error: "Sorry, bestand dient de CSV-indeling te hebben." @@ -794,8 +794,8 @@ nl: more_badges: "Meer badges" top_links: "Topkoppelingen" no_links: "Nog geen koppelingen." - most_liked_by: "Meest geliked door" - most_liked_users: "Meest geliked" + most_liked_by: "Meest geliket door" + most_liked_users: "Meest geliket" most_replied_to_users: "Meest geantwoord op" no_likes: "Nog geen likes." associated_accounts: "Aanmeldingen" @@ -817,7 +817,7 @@ nl: the_topic: "het topic" loading: "Laden..." errors: - prev_page: "tijdens het laden" + prev_page: "tijdens het laden van" reasons: network: "Netwerkfout" server: "Serverfout" @@ -878,7 +878,7 @@ nl: intro: "Hallo daar! :heart_eyes: Zo te zien beleeft u plezier aan deze discussie, maar hebt u zich niet voor een account geregistreerd." value_prop: "Als u een account aanmaakt, houden we precies bij wat u hebt gelezen, zodat u direct kunt verdergaan waar u was gebleven. U ontvangt dan ook meldingen bij nieuwe berichten, hier en via e-mail, en u kunt ook nog berichten liken. :heartbeat:" summary: - enabled_description: "U bekijkt een samenvatting van dit topic: de meeste interessante berichten zoals bepaald door de gemeenschap. " + enabled_description: "U bekijkt een samenvatting van dit topic: de meeste interessante berichten zoals bepaald door de gemeenschap." description: "Er zijn {{replyCount}} antwoorden." description_time: "Er zijn {{replyCount}} antwoorden met een geschatte leestijd van{{readingTime}} minuten." enable: 'Samenvatting van dit topic maken' @@ -934,11 +934,12 @@ nl: not_activated: "U kunt zich nog niet aanmelden. We hebben een activeringsmail naar {{sentTo}} gestuurd. Volg de instructies in dat e-mailbericht om uw account te activeren." not_allowed_from_ip_address: "U kunt zich niet aanmelden vanaf dat IP-adres." admin_not_allowed_from_ip_address: "U kunt zich niet aanmelden als beheerder vanaf dat IP-adres." - resend_activation_email: "Klik hier om de activeringsmail opnieuw te ontvangen." + resend_activation_email: "Klik hier om de activeringsmail opnieuw te versturen." sent_activation_email_again: "We hebben een nieuwe activeringsmail naar {{currentEmail}} gestuurd. Het kan een aantal minuten duren voor deze aankomt; controleer ook uw spammap." to_continue: "Meld u aan" preferences: "U dient aangemeld te zijn om uw gebruikersvoorkeuren te wijzigen." forgot: "Ik kan me de details van mijn gebruikersaccount niet herinneren." + not_approved: "Uw account is nog niet goedgekeurd. U ontvangt een melding via e-mail zodra u zich kunt aanmelden." google: title: "met Google" message: "Authenticeren met Google (zorg ervoor dat pop-upblokkeringen zijn uitgeschakeld)" @@ -960,6 +961,17 @@ nl: github: title: "met Github" message: "Authenticeren met GitHub (zorg ervoor dat pop-upblokkeringen zijn uitgeschakeld)" + invites: + accept_title: "Uitnodiging" + welcome_to: "Welkom bij %{site_name}!" + invited_by: "U bent uitgenodigd door:" + social_login_available: "U kunt zich ook aanmelden met een willekeurige sociale aanmelding die dat e-mailadres gebruikt." + your_email: "Het e-mailadres van uw account is %{email}." + accept_invite: "Uitnodiging accepteren" + success: "Uw account is gemaakt en u bent nu aangemeld." + password_label: "Wachtwoord instellen (optioneel)" + password_reset: + continue: "Doorgaan naar %{site_name}" emoji_set: apple_international: "Apple/International" google: "Google" @@ -1082,11 +1094,11 @@ nl: replied: "

    {{username}} {{description}}

    " posted: "

    {{username}} {{description}}

    " edited: "

    {{username}} {{description}}

    " - liked: "

    {{username}} {{description}}

    " - liked_2: "

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

    " + liked: "

    {{username}} {{description}}

    " + liked_2: "

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

    " liked_many: - one: "

    {{username}}, {{username2}} en 1 ander {{description}}

    " - other: "

    {{username}}, {{username2}} en {{count}} anderen {{description}}

    " + one: "

    {{username}}, {{username2}} en 1 ander {{description}}

    " + other: "

    {{username}}, {{username2}} en {{count}} anderen {{description}}

    " private_message: "

    {{username}} {{description}}

    " invited_to_private_message: "

    {{username}} {{description}}

    " invited_to_topic: "

    {{username}} {{description}}

    " @@ -1104,7 +1116,7 @@ nl: replied: "Beantwoord" posted: "Geplaatst door" edited: "Uw bericht bewerkt door" - liked: "Heeft uw bericht geliked" + liked: "Heeft uw bericht geliket" private_message: "Privébericht van" invited_to_private_message: "Uitgenodigd voor een privébericht van" invited_to_topic: "Uitgenodigd voor een topic door" @@ -1140,7 +1152,7 @@ nl: relevance: "Relevantie" latest_post: "Laatste bericht" most_viewed: "Meest bekeken" - most_liked: "Meest geliked" + most_liked: "Meest geliket" select_all: "Alles selecteren" clear_all: "Alles wissen" too_short: "Uw zoekterm is te kort." @@ -1171,7 +1183,7 @@ nl: label: Met tags filters: label: Alleen topics/berichten tonen... - likes: die ik heb geliked + likes: die ik heb geliket posted: waarin ik iets heb geplaatst watching: die ik in de gaten houd tracking: die ik volg @@ -1224,8 +1236,10 @@ nl: selected: one: "U hebt 1 topic geselecteerd." other: "U hebt {{count}} topics geselecteerd." - change_tags: "Tags wijzigen" + change_tags: "Tags vervangen" + append_tags: "Tags toevoegen" choose_new_tags: "Kies nieuwe tags voor deze topics:" + choose_append_tags: "Kies nieuwe tags om voor deze topics toe te voegen:" changed_tags: "De tags van deze topics zijn gewijzigd." none: unread: "U hebt geen ongelezen topics." @@ -1304,11 +1318,11 @@ nl: options: "Topic-opties" show_links: "koppelingen binnen dit topic tonen" toggle_information: "topicdetails in-/uitschakelen" - read_more_in_category: "Wilt u meer lezen? Bekijk dan andere topics in {{catLink}} of {{latestLink}}." + read_more_in_category: "Wilt u meer lezen? Blader dan door andere topics in {{catLink}} of {{latestLink}}." read_more: "Wilt u meer lezen? {{catLink}} of {{latestLink}}." read_more_MF: "Er { UNREAD, plural, =0 {} one { is 1 ongelezen } other { zijn # ongelezen } } { NEW, plural, =0 {} one { {BOTH, select, true{and } false {is } other{}} 1 nieuw topic} other { {BOTH, select, true{and } false {zijn } other{}} # nieuwe topics} } over, of {CATEGORY, select, true {blader door andere topics in {catLink}} false {{latestLink}} other {}}" browse_all_categories: Alle categorieën bekijken - view_latest_topics: recente topics bekijken + view_latest_topics: bekijk recente topics suggest_create_topic: Waarom maakt u geen topic aan? jump_reply_up: naar eerder antwoord springen jump_reply_down: naar later antwoord springen @@ -1403,11 +1417,8 @@ nl: make_banner: "Bannertopic maken" remove_banner: "Bannertopic verwijderen" reply: - post: - title: 'Antwoorden' - topic: - title: 'Antwoorden' - help: 'beginnen met opstellen van een antwoord op dit topic' + title: 'Antwoorden' + help: 'beginnen met opstellen van een antwoord op dit topic' clear_pin: title: "Losmaken" help: "De vastgezette status van dit topic wissen, zodat het niet meer bovenaan uw topiclijst verschijnt." @@ -1536,6 +1547,7 @@ nl: wiki_last_edited_on: "wiki laatst bewerkt op" last_edited_on: "bericht gewijzigd op" reply_as_new_topic: "Antwoorden als gekoppeld topic" + reply_as_new_private_message: "Antwoorden als nieuw bericht naar dezelfde ontvangers" continue_discussion: "Voortzetting van de discussie {{postLink}}:" follow_quote: "naar het geciteerde bericht" show_full: "Volledige bericht tonen" @@ -1555,12 +1567,12 @@ nl: one: "{{count}} like" other: "{{count}} likes" has_likes_title: - one: "1 persoon heeft dit bericht geliked" - other: "{{count}} personen hebben dit bericht geliked" - has_likes_title_only_you: "u hebt dit bericht geliked" + one: "1 persoon heeft dit bericht geliket" + other: "{{count}} personen hebben dit bericht geliketd" + has_likes_title_only_you: "u hebt dit bericht geliket" has_likes_title_you: - one: "u en 1 andere persoon hebben dit bericht geliked" - other: "u en {{count}} andere personen hebben dit bericht geliked" + one: "u en 1 andere persoon hebben dit bericht geliket" + other: "u en {{count}} andere personen hebben dit bericht geliket" errors: create: "Sorry, er is een fout opgetreden bij het plaatsen van uw bericht. Probeer het opnieuw." edit: "Sorry, er is een fout opgetreden bij het bewerken van uw bericht. Probeer het opnieuw." @@ -1587,7 +1599,7 @@ nl: controls: reply: "beginnen met opstellen van een antwoord op dit bericht" like: "dit bericht liken" - has_liked: "u hebt dit bericht geliked" + has_liked: "u hebt dit bericht geliket" undo_like: "like ongedaan maken" edit: "dit bericht bewerken" edit_anonymous: "Sorry, maar u dient aangemeld te zijn om dit bericht te bewerken." @@ -1629,7 +1641,7 @@ nl: notify_moderators: "heeft moderators ingelicht" notify_user: "heeft een bericht gestuurd" bookmark: "heeft dit aan bladwijzers toegevoegd" - like: "heeft dit geliked" + like: "heeft dit geliket" vote: "heeft hiervoor gestemd" by_you: off_topic: "U hebt dit als off-topic gemarkeerd" @@ -1638,7 +1650,7 @@ nl: notify_moderators: "U hebt dit voor moderatie gemarkeerd" notify_user: "U hebt een bericht naar deze gebruiker gestuurd" bookmark: "U hebt een bladwijzer voor dit bericht gemaakt" - like: "U hebt dit geliked" + like: "U hebt dit geliket" vote: "U hebt op dit bericht gestemd" by_you_and_others: off_topic: @@ -1660,8 +1672,8 @@ nl: one: "U en 1 andere persoon hebben een bladwijzer voor dit bericht gemaakt" other: "U en {{count}} andere personen hebben een bladwijzer voor dit bericht gemaakt" like: - one: "U en 1 andere persoon hebben dit geliked" - other: "U en {{count}} andere personen hebben dit geliked" + one: "U en 1 andere persoon hebben dit geliket" + other: "U en {{count}} andere personen hebben dit geliket" vote: one: "U en 1 andere persoon hebben op dit bericht gestemd" other: "U en {{count}} andere personen hebben op dit bericht gestemd" @@ -1685,8 +1697,8 @@ nl: one: "1 persoon heeft een bladwijzer voor dit bericht gemaakt" other: "{{count}} personen hebben een bladwijzer voor dit bericht gemaakt" like: - one: "1 persoon heeft dit geliked" - other: "{{count}} personen hebben dit geliked" + one: "1 persoon heeft dit geliket" + other: "{{count}} personen hebben dit geliket" vote: one: "1 persoon heeft op dit bericht gestemd" other: "{{count}} personen hebben op dit bericht gestemd" @@ -1708,6 +1720,7 @@ nl: show: "Revisie tonen" revert: "Terugkeren naar deze revisie" edit_wiki: "Wiki bewerken" + edit_post: "Bericht bewerken" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1770,6 +1783,7 @@ nl: email_in_disabled: "Het plaatsen van nieuwe topics via e-mail is uitgeschakeld in de webite-instellingen. Om het plaatsen van nieuwe topics via e-mail mogelijk te maken, " email_in_disabled_click: 'schakelt u de instelling ''e-mail in'' in.' suppress_from_homepage: "Deze categorie op de homepage negeren" + show_subcategory_list: "Subcategorielijsten boven topics tonen in deze categorie" all_topics_wiki: "Standaard wiki's van nieuwe topics maken" sort_order: "Standaardsortering:" allow_badges_label: "Badges laten toekennen in deze categorie" @@ -2215,7 +2229,7 @@ nl: view_table: "tabel" view_graph: "grafiek" refresh_report: "Rapport vernieuwen" - start_date: "Startdatum" + start_date: "Begindatum" end_date: "Einddatum" groups: "Alle groepen" commits: @@ -2227,7 +2241,7 @@ nl: active: "Actief" agree: "Akkoord" agree_title: "Bevestig dat deze melding geldig en correct is" - agree_flag_modal_title: "Akkoord en ... " + agree_flag_modal_title: "Akkoord en ..." agree_flag_hide_post: "Akkoord (bericht verbergen en privébericht sturen)" agree_flag_hide_post_title: "Dit bericht verbergen en de gebruiker automatisch een bericht sturen met het dringende verzoek om het te bewerken" agree_flag_restore_post: "Akkoord (bericht herstellen)" @@ -2239,18 +2253,18 @@ nl: delete: "Verwijderen" delete_title: "Het bericht waarnaar deze melding verwijst verwijderen." delete_post_defer_flag: "Bericht verwijderen en melding negeren" - delete_post_defer_flag_title: "Verwijder bericht en als dit het eerste bericht is; de hele topic" - delete_post_agree_flag: "Ga akkoord met de melding en verwijder het bericht" - delete_post_agree_flag_title: "Verwijder bericht en als dit het eerste bericht is; de hele topic" - delete_flag_modal_title: "Verwijder en ... " - delete_spammer: "Verwijder spammer" - delete_spammer_title: "Verwijder de gebruiker en alle door deze gebruiker geplaatste berichten en topics." - disagree_flag_unhide_post: "Niet akkoord (toon bericht)" - disagree_flag_unhide_post_title: "Verwijder alle meldingen over dit bericht en maak het bericht weer zichtbaar" + delete_post_defer_flag_title: "Bericht verwijderen; als dit het eerste bericht is, het topic verwijderen" + delete_post_agree_flag: "Bericht verwijderen en akkoord gaan met melding" + delete_post_agree_flag_title: "Bericht verwijderen; als dit het eerste bericht is, het topic verwijderen" + delete_flag_modal_title: "Verwijderen en ..." + delete_spammer: "Spammer verwijderen" + delete_spammer_title: "De gebruiker en alle geplaatste berichten en topics van deze gebruiker verwijderen." + disagree_flag_unhide_post: "Niet akkoord (bericht tonen)" + disagree_flag_unhide_post_title: "Alle meldingen over dit bericht verwijderen en het bericht weer zichtbaar maken" disagree_flag: "Niet akkoord" - disagree_flag_title: "Deze melding is ongeldig of niet correct" - clear_topic_flags: "Gedaan" - clear_topic_flags_title: "De topic is onderzocht en problemen zijn opgelost. Klik op Gedaan om de meldingen te verwijderen." + disagree_flag_title: "Deze melding is ongeldig of onjuist" + clear_topic_flags: "Gereed" + clear_topic_flags_title: "Het topic is onderzocht en problemen zijn opgelost. Klik op Gereed om de meldingen te verwijderen." more: "(meer antwoorden...)" dispositions: agreed: "akkoord" @@ -2260,13 +2274,13 @@ nl: resolved_by: "Opgelost door" took_action: "Heeft actie ondernomen" system: "Systeem" - error: "Er ging iets mis" - reply_message: "Reageer" - no_results: "Er zijn geen markeringen" - topic_flagged: "Deze topic is gemarkeerd." - visit_topic: "Ga naar de topic om te zien wat er aan de hand is en om actie te ondernemen" - was_edited: "Bericht is gewijzigd na de eerste melding" - previous_flags_count: "Er is al {{count}} keer melding gemaakt over dit bericht." + error: "Er is iets misgegaan" + reply_message: "Antwoorden" + no_results: "Er zijn geen markeringen." + topic_flagged: "Dit topic is gemarkeerd." + visit_topic: "Bezoek het topic om actie te ondernemen" + was_edited: "Bericht is na de eerste melding bewerkt" + previous_flags_count: "Dit bericht is al {{count}} keer gemarkeerd." summary: action_type_3: one: "off-topic" @@ -2275,11 +2289,11 @@ nl: one: "ongepast" other: "ongepast x{{count}}" action_type_6: - one: "custom" - other: "custom x{{count}}" + one: "aangepast" + other: "aangepast x{{count}}" action_type_7: - one: "custom" - other: "custom x{{count}}" + one: "aangepast" + other: "aangepast x{{count}}" action_type_8: one: "spam" other: "spam x{{count}}" @@ -2288,83 +2302,83 @@ nl: no_primary: "(geen primaire groep)" title: "Groepen" edit: "Groepen bewerken" - refresh: "Opnieuw laden" + refresh: "Vernieuwen" new: "Nieuw" selector_placeholder: "voer gebruikersnaam in" - about: "Wijzig hier je deelname aan groepen en je namen" + about: "Bewerk hier uw groepslidmaatschap en namen" group_members: "Groepsleden" - delete: "Verwijder" - delete_confirm: "Verwijder deze groepen?" - delete_failed: "Kan groep niet verwijderen. Als dit een automatische groep is, kan deze niet verwijderd worden." - delete_owner_confirm: "Verwijder eigenaarsprivileges van '% {username}'?" - add: "Voeg toe" - add_members: "Voeg leden toe" + delete: "Verwijderen" + delete_confirm: "Deze groepen verwijderen?" + delete_failed: "Kan groep niet verwijderen. Als dit een automatische groep is, kan deze niet worden verwijderd." + delete_owner_confirm: "Eigenaarsprivileges van '% {username}' verwijderen?" + add: "Toevoegen" + add_members: "Leden toevoegen" custom: "Aangepast" - bulk_complete: "De gebruikers zijn toegevoegd aan de groep." + bulk_complete: "De gebruikers zijn aan de groep toegevoegd." bulk: "Bulk toevoegen aan groep" bulk_paste: "Plak een lijst van gebruikersnamen of e-mailadressen, één per regel:" bulk_select: "(selecteer een groep)" automatic: "Automatisch" - automatic_membership_email_domains: "Gebruikers die zich registeren met een e-mailadres bij een domein dat exact overeenkomt met de domeinen in deze lijst worden automatisch toegevoegd aan deze groep:" - automatic_membership_retroactive: "Pas deze e-mail domeinregel toe op reeds geregistreerde gebruikers" + automatic_membership_email_domains: "Gebruikers die zich met een e-maildomein registeren dat precies overeenkomt met een domein in deze lijst worden automatisch aan deze groep toegevoegd:" + automatic_membership_retroactive: "Dezelfde e-maildomeinregel toepassen voor het toevoegen van bestaande geregistreerde gebruikers" default_title: "Standaardtitel voor alle gebruikers in deze groep" - primary_group: "Automatisch ingesteld als primaire groep" + primary_group: "Automatisch instellen als primaire groep" group_owners: Eigenaren add_owners: Eigenaren toevoegen - incoming_email: "Aangepaste inkomende e-mailadressen " - incoming_email_placeholder: "Voer je e-mailadres in" + incoming_email: "Aangepast adres voor inkomende e-mail" + incoming_email_placeholder: "voer e-mailadres in" api: - generate_master: "Genereer Master API Key" - none: "Er zijn geen actieve API keys" + generate_master: "Master-API-sleutel genereren" + none: "Er zijn op dit moment geen actieve API-sleutels." user: "Gebruiker" title: "API" - key: "API Key" - generate: "Genereer" - regenerate: "Genereer opnieuw" + key: "API-sleutel" + generate: "Genereren" + regenerate: "Opnieuw genereren" revoke: "Intrekken" - confirm_regen: "Weet je zeker dat je die API Key wilt vervangen door een nieuwe?" - confirm_revoke: "Weet je zeker dat je die API Key wilt intrekken?" - info_html: "Met deze API-key kun je met behulp van JSON-calls topics maken en bewerken." + confirm_regen: "Weet u zeker dat u die API-sleutel door een nieuwe wilt vervangen?" + confirm_revoke: "Weet u zeker dat u die API-sleutel wilt intrekken?" + info_html: "Met deze API-sleutel kunt u topics maken en bijwerken met behulp van JSON-aanroepen." all_users: "Alle gebruikers" - note_html: "Houd deze key geheim, alle gebruikers die hierover beschikken kunnen berichten plaatsen als elke andere gebruiker." + note_html: "Houd deze sleutel geheim; alle gebruikers die hierover beschikken, kunnen willekeurige berichten plaatsen als een andere gebruiker." web_hooks: title: "Webhooks" - none: "Er zijn geen actieve webhooks." - instruction: "Webhooks laten Discourse externe services notificeren wanneer bepaalde gebeurtenissen plaatsvinden in je site. Wanneer een webhook afgevuurd wordt zal een POST-verzoek gestuurd worden naar de opgegeven URL." - detailed_instruction: "Wanneer de gekozen gebeurtenis plaatsvindt zal er een POST-verzoek gestuurd worden naar de opgegeven URL." + none: "Er zijn op dit moment geen webhooks." + instruction: "Via webhooks kan Discourse externe services waarschuwen wanneer bepaalde gebeurtenissen op uw website plaatsvinden. Zodra de webhook wordt geactiveerd, wordt een POST-aanvraag naar opgegeven URL's verstuurd." + detailed_instruction: "Zodra de gekozen gebeurtenis plaatsvindt, wordt een POST-aanvraag naar de opgegeven URL verstuurd." new: "Nieuwe webhook" create: "Aanmaken" save: "Opslaan" - destroy: "Verwijder" + destroy: "Verwijderen" description: "Omschrijving" controls: "Controlepaneel" go_back: "Terug naar lijst" - payload_url: "Payload URL" + payload_url: "Payload-URL" payload_url_placeholder: "https://example.com/postreceive" - warn_local_payload_url: "Zo te zien probeer je een webhook naar een lokale URL te laten wijzen. Gebeurtenissen die hierheen gestuurd worden kunnen mogelijk resulteren in onverwacht gedrag. Doorgaan?" - secret_invalid: "Secret mag geen lege tekens bevatten." - secret_too_short: "Secret moet uit minimaal 12 tekens bestaan." + warn_local_payload_url: "Zo te zien probeert u een webhook naar een lokale URL te laten wijzen. Een gebeurtenis die naar een lokaal adres wordt gestuurd, kan neveneffecten of onverwacht gedrag veroorzaken. Doorgaan?" + secret_invalid: "Geheim mag geen lege tekens bevatten." + secret_too_short: "Geheim dient uit minimaal 12 tekens te bestaan." secret_placeholder: "Een optionele tekenreeks, gebruikt voor het aanmaken van een ondertekening" - event_type_missing: "Stel minstens één event type in." - content_type: "Type inhoud" - secret: "Secret" - event_chooser: "Welke gebeurtenissen moeten deze webhook afvuren?" - wildcard_event: "Stuur mij alles." - individual_event: "Selecteer individuele gebeurtenissen." - verify_certificate: "Controleer het TLS-certificaat van de payload URL" + event_type_missing: "U dient minstens één gebeurtenistype in te stellen." + content_type: "Inhoudstype" + secret: "Geheim" + event_chooser: "Welke gebeurtenissen wilt u deze webhook laten activeren?" + wildcard_event: "Alles sturen" + individual_event: "Afzonderlijke gebeurtenissen selecteren" + verify_certificate: "TLS-certificaat van payload-URL controleren" active: "Actief" active_notice: "We sturen details over de gebeurtenis wanneer deze plaatsvindt." - categories_filter_instructions: "Alleen als de gebeurtenis bij specifieke categorieën hoort worden de relevante webhooks afgevuurd. Laat leeg om webhooks bij alle categorieën af te vuren." - categories_filter: "Vuur af bij categorieën " - groups_filter_instructions: "Alleen als de gebeurtenis bij specifieke groepen hoort worden de relevante webhooks afgevuurd. Laat leeg om webhooks bij alle groepen af te vuren." - groups_filter: "Vuur af bij groepen" + categories_filter_instructions: "Relevante webhooks worden alleen geactiveerd als de gebeurtenis bij opgegeven categorieën hoort. Laat leeg om webhooks voor alle categorieën te activeren." + categories_filter: "Geactiveerde categorieën" + groups_filter_instructions: "Relevante webhooks worden alleen geactiveerd als de gebeurtenis bij opgegeven groepen hoort. Laat leeg om webhooks voor alle groepen te activeren." + groups_filter: "Geactiveerde groepen" delete_confirm: "Deze webhook verwijderen?" topic_event: name: "Topicgebeurtenis" - details: "Wanneer een nieuwe topic geplaatst, gereviseerd, veranderd of verwijderd wordt." + details: "Wanneer een nieuw topic wordt geplaatst, gereviseerd, gewijzigd of verwijderd." post_event: name: "Berichtgebeurtenis" - details: "Wanneer een nieuw bericht geplaatst, bewerkt, verwijderd of hersteld wordt." + details: "Wanneer een (nieuw) bericht wordt geplaatst, bewerkt, verwijderd of hersteld." user_event: name: "Gebruikersgebeurtenis" details: "Wanneer een gebruiker wordt aangemaakt, goedgekeurd of bijgewerkt." @@ -2372,7 +2386,7 @@ nl: title: "Afleveringsstatus" inactive: "Inactief" failed: "Mislukt" - successful: "Succesvol " + successful: "Gelukt" events: none: "Er zijn geen verwante gebeurtenissen." redeliver: "Opnieuw afleveren" @@ -2382,9 +2396,9 @@ nl: completed_in: one: "Voltooid in 1 seconde." other: "Voltooid in {{count}} seconden." - request: "Verzoek" - response: "Reactie" - redeliver_confirm: "Weet je zeker dat je dezelfde payload opnieuw wilt afleveren?" + request: "Aanvraag" + response: "Antwoord" + redeliver_confirm: "Weet u zeker dat u dezelfde payload opnieuw wilt afleveren?" headers: "Koppen" payload: "Payload" body: "Inhoud" @@ -2395,90 +2409,90 @@ nl: status: "Statuscode" event_id: "ID" timestamp: "Gemaakt" - completion: "Verstreken tijd" + completion: "Voltooiingstijd" actions: "Acties" plugins: - title: "Plugins" - installed: "Geïnstalleerde plugins" + title: "Plug-ins" + installed: "Geïnstalleerde plug-ins" name: "Naam" - none_installed: "Je hebt geen plugins geïnstalleerd." + none_installed: "U hebt geen plug-ins geïnstalleerd." version: "Versie" enabled: "Ingeschakeld?" is_enabled: "J" not_enabled: "N" - change_settings: "Wijzig instellingen" + change_settings: "Instellingen wijzigen" change_settings_short: "Instellingen" - howto: "Hoe kan ik plugins installeren" + howto: "Hoe kan ik plug-ins installeren?" backups: - title: "Backups" + title: "Back-ups" menu: - backups: "Backups" - logs: "Logs" - none: "Geen backup beschikbaar." + backups: "Back-ups" + logs: "Logboeken" + none: "Geen back-up beschikbaar." read_only: enable: - title: "Schakel alleen-lezen modus in" - label: "Schakel alleen-lezen in" - confirm: "Weet je zeker dat je de alleen-lezen modus wilt inschakelen?" + title: "Alleen-lezenmodus inschakelen" + label: "Alleen-lezen inschakelen" + confirm: "Weet u zeker dat u de alleen-lezenmodus wilt inschakelen?" disable: - title: "Schakel alleen-lezen modus uit" - label: "Schakel alleen-lezen uit" + title: "Alleen-lezenmodus uitschakelen" + label: "Alleen-lezen uitschakelen" logs: - none: "Nog geen logs..." + none: "Nog geen logboeken..." columns: filename: "Bestandsnaam" size: "Grootte" upload: - label: "Upload" - title: "Upload een backup naar deze instantie" + label: "Uploaden" + title: "Een back-up naar deze instantie uploaden" uploading: "Uploaden..." success: "'{{filename}}' is geupload." - error: "Er ging iets fout bij het uploaden van '{{filename}}': {{message}}" + error: "Er is een fout opgetreden bij het uploaden van '{{filename}}': {{message}}" operations: - is_running: "Er wordt al een actie uitgevoerd..." - failed: "De actie {{operation}} is mislukt. Kijk in de logs." + is_running: "Er wordt al een bewerking uitgevoerd..." + failed: "De bewerking {{operation}} is mislukt. Controleer de logboeken." cancel: - label: "Annuleer" - title: "Annuleer de huidige actie" - confirm: "Weet je zeker dat je de huidige actie wilt annuleren?" + label: "Annuleren" + title: "De huidige bewerking annuleren" + confirm: "Weet u zeker dat u de huidige bewerking wilt annuleren?" backup: - label: "Backup" - title: "Maak een backup" - confirm: "Wil je een nieuwe backup starten? " - without_uploads: "Ja (bestanden niet invoegen)" + label: "Back-up maken" + title: "Een back-up maken" + confirm: "Wilt u een nieuwe back-up starten?" + without_uploads: "Ja (geen bestanden bijvoegen)" download: - label: "Download" - title: "Download de backup" + label: "Downloaden" + title: "De back-up downloaden" destroy: - title: "Verwijder de backup" - confirm: "Weet je zeker dat je deze backup wilt verwijderen?" + title: "De back-up verwijderen" + confirm: "Weet u zeker dat u deze back-up wilt verwijderen?" restore: - is_disabled: "Herstellen is uitgeschakeld in de instellingen." - label: "Herstel" - title: "Herstel van deze backup" - confirm: "Weet je zeker dat je deze backup wilt terugzetten? " + is_disabled: "Terugzetten is uitgeschakeld in de website-instellingen." + label: "Terugzetten" + title: "De back-up terugzetten" + confirm: "Weet u zeker dat u deze back-up wilt terugzetten?" rollback: - label: "Herstel" - title: "Herstel de database naar de laatst werkende versie" - confirm: "Weet je zeker dat je de database wilt terugzetten naar de vorige werkende staat?" + label: "Terugdraaien" + title: "De database naar de vorige werkende status terugzetten" + confirm: "Weet u zeker dat u de database naar de vorige werkende status wilt terugzetten?" export_csv: - success: "Exporteren is gestart, je zult een bericht ontvangen als het proces is afgerond." - failed: "Exporteren is mislukt. Controleer de logbestanden." + success: "Exporteren is gestart; u ontvangt een bericht zodra het proces is voltooid." + failed: "Exporteren is mislukt. Controleer de logboeken." button_text: "Exporteren" button_title: - user: "Exporteer volledige gebruikerslijst in CSV-formaat" + user: "Volledige gebruikerslijst exporteren in CSV-indeling" staff_action: "Volledig stafactielogboek exporteren in CSV-indeling" - screened_email: "Exporteer volledige gescreende e-maillijst in CSV-formaat." - screened_ip: "Exporteer volledige gescreende IP-lijst in CSV-formaat." - screened_url: "Exporteerd volledige gescreende URL-lijst in CSV-formaat." + screened_email: "Volledige gescreende e-maillijst exporteren in CSV-indeling" + screened_ip: "Volledige gescreende IP-lijst exporteren in CSV-indeling" + screened_url: "Volledige gescreende URL-lijst exporteren in CSV-indeling" export_json: - button_text: "Exporteer" + button_text: "Exporteren" invite: - button_text: "Verstuur uitnodigingen" - button_title: "Verstuur uitnodigingen" + button_text: "Uitnodigingen versturen" + button_title: "Uitnodigingen versturen" customize: - title: "Aanpassingen" - long_title: "Aanpassingen aan de site" + title: "Aanpassen" + long_title: "Websiteaanpassingen" css: "CSS" header: "Koptekst" top: "Top" @@ -2486,89 +2500,89 @@ nl: embedded_css: "Embedded CSS" head_tag: text: "" - title: "HTML dat ingevoegd wordt voor de tag" + title: "HTML die voor de -tag wordt ingevoegd" body_tag: text: "" - title: "HTML dat ingevoegd wordt voor de tag" - override_default: "Sluit de standaard stylesheet uit" + title: "HTML die voor de -tag wordt ingevoegd" + override_default: "Standaardstylesheet uitsluiten" enabled: "Ingeschakeld?" preview: "voorbeeld" - undo_preview: "verwijder voorbeeld" - rescue_preview: "standaard stijl" - explain_preview: "Bekijk de site met deze aangepaste stylesheet" - explain_undo_preview: "Keer terug naar de aangepaste stylesheet die op dit moment ingesteld is" - explain_rescue_preview: "Bekijk de site met de standaard stylesheet" + undo_preview: "voorbeeld verwijderen" + rescue_preview: "standaardstijl" + explain_preview: "De website bekijken met deze aangepaste stylesheet" + explain_undo_preview: "Terug naar de momenteel ingeschakelde aangepaste stylesheet" + explain_rescue_preview: "De website bekijken met de standaardstylesheet" save: "Opslaan" new: "Nieuw" new_style: "Nieuwe stijl" - import: "Importeer" + import: "Importeren" import_title: "Selecteer een bestand of plak tekst" - delete: "Verwijder" - delete_confirm: "Verwijder deze aanpassing?" - about: "Pas CSS-stylesheets en HTML-kopteksten aan op de site. Voeg een aanpassing toe om te beginnen." + delete: "Verwijderen" + delete_confirm: "Deze aanpassing verwijderen?" + about: "Pas CSS-stylesheets en HTML-kopteksten aan op de website. Voeg een aanpassing toe om te beginnen." color: "Kleur" - opacity: "Doorzichtigheid" - copy: "Kopieër" + opacity: "Ondoorzichtigheid" + copy: "Kopiëren" email_templates: - title: "E-mailsjabloon" + title: "E-mailsjablonen" subject: "Onderwerp" multiple_subjects: "Deze e-mailsjabloon heeft meerdere onderwerpen." body: "Body" - none_selected: "Kies een e-mailsjabloon om te beginnen met bewerken." - revert: "Maak wijzigingen ongedaan" - revert_confirm: "Weet je zeker dat je je wijzigingen ongedaan wilt maken?" + none_selected: "Selecteer een e-mailsjabloon om met bewerken te beginnen." + revert: "Wijzigingen ongedaan maken" + revert_confirm: "Weet u zeker dat u uw wijzigingen ongedaan wilt maken?" css_html: title: "CSS/HTML" - long_title: "CSS en HTML aanpassingen" + long_title: "CSS- en HTML-aanpassingen" colors: title: "Kleuren" long_title: "Kleurenschema's" - about: "Met kleurenschema's kun je de kleuren in de site aanpassen zonder CSS te hoeven gebruiken. Kies er één of voeg er één toe om te beginnen." + about: "Met kleurenschema's kunt u de kleuren op de website aanpassen zonder CSS te hoeven gebruiken. Voeg een schema toe om te beginnen." new_name: "Nieuw kleurenschema" copy_name_prefix: "Kopie van" delete_confirm: "Dit kleurenschema verwijderen?" - undo: "herstel" - undo_title: "Draai je wijzigingen aan deze kleur terug tot de laatste keer dat het opgeslagen is." - revert: "Zet terug" - revert_title: "Zet deze kleur terug naar het standaard kleurenschema van Discourse." + undo: "ongedaan maken" + undo_title: "Uw wijzigingen aan deze kleur sinds de laatste keer dat deze is opgeslagen ongedaan maken" + revert: "terugzetten" + revert_title: "Deze kleur naar het standaard kleurenschema van Discourse terugzetten" primary: name: 'primaire' - description: 'Meeste teksten, iconen en randen.' + description: 'Meeste tekst, pictogrammen en randen.' secondary: name: 'secundaire' - description: 'De achtergrond- en tekstkleur van sommige knoppen.' + description: 'De hoofdachtergrondkleur, en tekstkleur van sommige knoppen.' tertiary: name: 'tertiaire' - description: 'Links, knoppen, notificaties en accentkleur.' + description: 'Koppelingen, sommige knoppen, meldingen en accentkleur.' quaternary: name: "quaternaire" - description: "Navigatie." + description: "Navigatiekoppelingen." header_background: name: "koptekstachtergrond" - description: "Achtergrondkleur van de koptekst." + description: "Achtergrondkleur van de koptekst van de website." header_primary: name: "eerste koptekst" - description: "Tekst en iconen in de koptekst." + description: "Tekst en pictogrammen in de koptekst van de website." highlight: - name: 'opvallen' + name: 'markeren' description: 'De achtergrondkleur van gemarkeerde elementen op de pagina, zoals berichten en topics. ' danger: name: 'gevaar' - description: 'Opvallende kleuren voor acties als verwijderen van berichten en topics' + description: 'Markeringskleur voor acties zoals het verwijderen van berichten en topics.' success: name: 'succes' - description: 'Gebruikt om aan te geven dat een actie gelukt is.' + description: 'Gebruikt om aan te geven dat een actie is gelukt.' love: name: 'liefde' - description: "De kleur van de likeknop" + description: "De kleur van de likeknop." email: title: "E-mails" settings: "Instellingen" templates: "Sjablonen " - preview_digest: "Voorbeeld digestmail" + preview_digest: "Voorbeeld van samenvatting" sending_test: "Testmail wordt verstuurd..." error: "FOUT - %{server_error}" - test_error: "Er ging iets mis bij het versturen van de testmail. Kijk nog eens naar je mailinstellinen, controleer of je host mailconnecties niet blokkeert. Probeer daarna opnieuw." + test_error: "Er is een probleem opgetreden bij het versturen van de testmail. Controleer uw mailinstellingen, controleer of uw host geen mailverbindingen blokkeert, en probeer het daarna opnieuw." sent: "Verzonden" skipped: "Overgeslagen" bounced: "Gebounced" @@ -2580,72 +2594,72 @@ nl: email_type: "E-mailtype" to_address: "Ontvangeradres" test_email_address: "e-mailadres om te testen" - send_test: "Verstuur testmail" + send_test: "Testmail verzenden" sent_test: "verzonden!" delivery_method: "Verzendmethode" - preview_digest_desc: "Bekijk een voorbeeld van de digest e-mails die gestuurd worden naar inactieve leden." - refresh: "Verniew" - send_digest_label: "Stuur dit resultaat naar:" + preview_digest_desc: "Een voorbeeld bekijken van de samenvattingsmails die naar inactieve leden worden verstuurd." + refresh: "Vernieuwen" + send_digest_label: "Dit resultaat verzenden naar:" send_digest: "Verzenden" sending_email: "E-mail wordt verzonden..." - format: "Formaat" + format: "Indeling" html: "html" - text: "text" - last_seen_user: "Laatste online:" + text: "tekst" + last_seen_user: "Laatst geziene gebruiker:" no_result: "Geen resultaten gevonden voor samenvatting." - reply_key: "Reply key" + reply_key: "Antwoordtoets" skipped_reason: "Reden van overslaan" incoming_emails: - from_address: "From" - to_addresses: "To" + from_address: "Van" + to_addresses: "Aan" cc_addresses: "Cc" - subject: "Subject" + subject: "Onderwerp" error: "Fout" none: "Geen inkomende e-mails gevonden." modal: - title: "Details inkomende e-mail" + title: "Details van inkomende e-mail" error: "Fout" - headers: "Headers" - subject: "Subject" - body: "Body" - rejection_message: "Afwijzingsmail" + headers: "Kopregels" + subject: "Onderwerp" + body: "Tekst" + rejection_message: "Weigeringsmail" filters: - from_placeholder: "van@voorbeeld.nl" - to_placeholder: "aan@voorbeeld.nl" - cc_placeholder: "cc@voorbeeld.nl" + from_placeholder: "van@example.com" + to_placeholder: "aan@example.com" + cc_placeholder: "cc@example.com" subject_placeholder: "Onderwerp..." error_placeholder: "Fout" logs: - none: "Geen logs gevonden." + none: "Geen logboeken gevonden." filters: title: "Filter" user_placeholder: "gebruikersnaam" - address_placeholder: "naam@voorbeeld.nl" - type_placeholder: "digest, inschijving" - reply_key_placeholder: "antwoordsleutel" + address_placeholder: "naam@example.com" + type_placeholder: "samenvatting, registratie" + reply_key_placeholder: "antwoordtoets" skipped_reason_placeholder: "reden" logs: - title: "Logs" + title: "Logboeken" action: "Actie" created_at: "Gemaakt" - last_match_at: "Laatste match" - match_count: "Matches" + last_match_at: "Laatste overeenkomst" + match_count: "Overeenkomsten" ip_address: "IP" topic_id: "Topic-ID" - post_id: "Bericht ID" - category_id: "Categorie ID" - delete: 'Verwijder' - edit: 'Wijzig' + post_id: "Bericht-ID" + category_id: "Categorie-ID" + delete: 'Verwijderen' + edit: 'Bewerken' save: 'Opslaan' screened_actions: - block: "blokkeer" - do_nothing: "doe niets" + block: "blokkeren" + do_nothing: "niets doen" staff_actions: title: "Stafacties" - instructions: "Klik op gebruikersnamen en acties om de lijst te filteren. Klik op profielfoto's om naar de gebruikerspagina te gaan." - clear_filters: "Bekijk alles" + instructions: "Klik op gebruikersnamen en acties om de lijst te filteren. Klik op profielafbeeldingen om naar gebruikerspagina's te gaan." + clear_filters: "Alles tonen" staff_user: "Staflid" - target_user: "Selecteer gebruiker" + target_user: "Doelgebruiker" subject: "Onderwerp" when: "Wanneer" context: "Context" @@ -2653,41 +2667,41 @@ nl: previous_value: "Vorige" new_value: "Nieuw" diff: "Verschil" - show: "Bekijk" + show: "Tonen" modal_title: "Details" no_previous: "Er is geen vorige waarde" deleted: "Geen nieuwe waarde. De record was verwijderd." actions: - delete_user: "verwijder gebruiker" - change_trust_level: "verander trustlevel" - change_username: "wijzig gebruikersnaam" - change_site_setting: "verander instellingen" - change_site_customization: "verander site-aanpassingen" - delete_site_customization: "verwijder site-aanpassingen" - change_site_text: "verander tekst van site" - suspend_user: "schors gebruiker" - unsuspend_user: "hef schorsing op" - grant_badge: "ken badge toe" - revoke_badge: "trek badge in" - check_email: "check e-mail" - delete_topic: "verwijder topic" - delete_post: "verwijder bericht" - impersonate: "Log in als gebruiker" - anonymize_user: "maak gebruiker anoniem" - roll_up: "voeg IP-adressen samen in blokken" - change_category_settings: "verander categorie-instellingen" + delete_user: "gebruiker verwijderen" + change_trust_level: "vertrouwensniveau wijzigen" + change_username: "gebruikersnaam wijzigen" + change_site_setting: "website-instelling wijzigen" + change_site_customization: "website-aanpassing wijzigen" + delete_site_customization: "website-aanpassing verwijderen" + change_site_text: "tekst van website wijzigen" + suspend_user: "gebruiker schorsen" + unsuspend_user: "schorsing opheffen" + grant_badge: "badge toekennen" + revoke_badge: "badge intrekken" + check_email: "e-mail controleren" + delete_topic: "topic verwijderen" + delete_post: "bericht verwijderen" + impersonate: "aanmelden als gebruiker" + anonymize_user: "gebruiker anonimiseren" + roll_up: "IP-adresblokken samenvoegen" + change_category_settings: "categorie-instellingen wijzigen" delete_category: "categorie verwijderen" - create_category: "nieuwe categorie" - block_user: "blokkeer gebruiker" - unblock_user: "deblokkeer gebruiker" - grant_admin: "geef beheerdersrechten" - revoke_admin: "ontneem beheerdersrechten" - grant_moderation: "geef modereerrechten" - revoke_moderation: "ontneem modereerrechten" + create_category: "categorie maken" + block_user: "gebruiker blokkeren" + unblock_user: "gebruiker deblokkeren" + grant_admin: "beheerdersrechten toekennen" + revoke_admin: "beheerdersrechten intrekken" + grant_moderation: "moderatierechten toekennen" + revoke_moderation: "moderatierechten intrekken" backup_create: "back-up maken" deleted_tag: "verwijderde tag" renamed_tag: "hernoemde tag" - revoke_email: "trek e-mail in" + revoke_email: "e-mailadres intrekken" lock_trust_level: "vertrouwensniveau vergrendelen" unlock_trust_level: "vertrouwensniveau ontgrendelen" activate_user: "gebruiker activeren" @@ -2697,312 +2711,313 @@ nl: backup_destroy: "back-up verwijderen" screened_emails: title: "Gescreende e-mails" - description: "Nieuwe accounts met een van deze e-mailadressen worden geblokkeerd of een andere actie wordt ondernomen." + description: "Als iemand een nieuwe account probeert aan te maken, worden de volgende e-mailadressen gecontroleerd en de registratie geblokkeerd, of een andere actie uitgevoerd." email: "E-mailadres" actions: - allow: "Sta toe" + allow: "Toestaan" screened_urls: - title: "Gescreende urls" - description: "Deze urls zijn gebruikt door gebruikers die als spammer gemarkeerd zijn." + title: "Gescreende URL's" + description: "De hier vermelde URL's zijn gebruikt in berichten van gebruikers die als spammer zijn gemarkeerd." url: "URL" domain: "Domein" screened_ips: - title: "Gescreende ip-adressen" - description: 'IP-adressen die in de gaten worden gehouden. Kies ''sta toe'' om deze op een witte lijst te zetten.' - delete_confirm: "Weet je zeker dat je de regel voor %{ip_address} wilt verwijderen?" - roll_up_confirm: "Weet je zeker dat je regelmatig gescreende IP-adressen wilt samenvoegen tot subnets?" - rolled_up_some_subnets: "Verbannen IP-adressen zijn zojuist samengevoegd tot deze subnets: %{subnets}." + title: "Gescreende IP-adressen" + description: 'IP-adressen die in de gaten worden gehouden. Gebruik ''Toestaan'' om IP-adressen op een witte lijst te zetten.' + delete_confirm: "Weet u zeker dat u de regel voor %{ip_address} wilt verwijderen?" + roll_up_confirm: "Weet u zeker dat u regelmatig gescreende IP-adressen in subnetten wilt samenvoegen?" + rolled_up_some_subnets: "Verbannen IP-adressen zijn zojuist tot deze subnetten samengevoegd: %{subnets}." rolled_up_no_subnet: "Er was niets om samen te voegen." actions: - block: "Blokkeer" - do_nothing: "Sta toe" - allow_admin: "Sta Beheerder Toe" + block: "Blokkeren" + do_nothing: "Toestaan" + allow_admin: "Beheerder toestaan" form: label: "Nieuw:" ip_address: "IP-adres" - add: "Voeg toe" - filter: "Zoek" + add: "Toevoegen" + filter: "Zoeken" roll_up: - text: "Groepeer IP-adressen" - title: "Creëer nieuwe subnet ban entries als er tenminste 'min_ban_entries_for_roll_up' entries zijn." + text: "Samenvoegen" + title: "Maakt nieuwe subnet-banvermeldingen als er minstens 'min_ban_entries_for_roll_up'-vermeldingen zijn." logster: - title: "Foutlogs" + title: "Foutlogboeken" impersonate: - title: "Log in als gebruiker" + title: "Aanmelden als gebruiker" help: "Gebruik dit hulpmiddel om een gebruikersaccount voor debugdoeleinden te imiteren. U moet zich afmelden als u klaar bent." - not_found: "Die gebruiker is niet gevonden" - invalid: "Sorry, maar als deze gebruiker mag je niet inloggen." + not_found: "Die gebruiker kan niet worden gevonden." + invalid: "Sorry, u mag zich niet aanmelden als die gebruiker." users: - title: 'Leden' - create: 'Voeg beheerder toe' - last_emailed: "Laatste e-mail verstuurd" - not_found: "Sorry, deze gebruikersnaam bestaat niet in ons systeem." - id_not_found: "Sorry, deze gebruikersnaam bestaat niet in ons systeem." + title: 'Gebruikers' + create: 'Beheerder toevoegen' + last_emailed: "Laatst gemaild" + not_found: "Sorry, die gebruikersnaam bestaat niet in ons systeem." + id_not_found: "Sorry, die gebruikers-ID bestaat niet in ons systeem." active: "Actief" - show_emails: "Bekijk e-mails" + show_emails: "E-mails tonen" nav: new: "Nieuw" active: "Actief" pending: "Te beoordelen" staff: 'Stafleden' suspended: 'Geschorst' - blocked: 'Geblokt' + blocked: 'Geblokkeerd' suspect: 'Verdacht' approved: "Goedgekeurd?" approved_selected: - one: "accepteer lid" - other: "accepteer {{count}} leden" + one: "gebruiker goedkeuren" + other: "gebruikers goedkeuren ({{count}})" reject_selected: - one: "weiger lid" - other: "weiger {{count}} leden" + one: "gebruiker weigeren" + other: "gebruikers weigeren ({{count}})" titles: - active: 'Actieve leden' - new: 'Nieuwe leden' - pending: 'Nog niet geaccepteerde leden' - newuser: 'Leden op trustlevel 0 (Nieuw lid)' - basic: 'Leden op trustlevel 1 (Basislid)' - member: 'Leden op trustlevel 2 (Lid)' - regular: 'Leden op trustlevel 3 (Vaste bezoeker)' - leader: 'Leden op trustlevel 4 (Leider)' + active: 'Actieve gebruikers' + new: 'Nieuwe gebruikers' + pending: 'Nog niet goedgekeurde gebruikers' + newuser: 'Gebruikers op vertrouwensniveau 0 (Nieuwe gebruiker)' + basic: 'Gebruikers op vertrouwensniveau 1 (Basisgebruiker)' + member: 'Gebruikers op vertrouwensniveau 2 (Lid)' + regular: 'Gebruikers op vertrouwensniveau 3 (Vaste bezoeker)' + leader: 'Gebruikers op vertrouwensniveau 4 (Leider)' staff: "Stafleden" - admins: 'Administrators' + admins: 'Beheerders' moderators: 'Moderators' - blocked: 'Geblokkeerde leden' - suspended: 'Geschorste leden' - suspect: 'Verdachte Gebruikers' + blocked: 'Geblokkeerde gebruikers' + suspended: 'Geschorste gebruikers' + suspect: 'Verdachte gebruikers' reject_successful: - one: "1 Gebruiker met succes geweigerd" - other: "%{count} Gebruikers met succes geweigerd" + one: "Er is 1 gebruiker geweigerd." + other: "Er zijn %{count} gebruikers geweigerd." reject_failures: - one: "Weigering van 1 gebruiker is niet gelukt" - other: "Weigering van %{count} gebruikers is niet gelukt" + one: "Het weigeren van 1 gebruiker is niet gelukt." + other: "Het weigeren van %{count} gebruikers is niet gelukt." not_verified: "Niet geverifieerd" check_email: - title: "Laat e-mail adres van gebruiker zien" - text: "Bekijk" + title: "E-mailadres van deze gebruiker tonen" + text: "Tonen" user: - suspend_failed: "Er ging iets fout met het blokkeren van deze gebruiker: {{error}}" - unsuspend_failed: "Er ging iets fout bij het deblokkeren van deze gebruiker: {{error}}" - suspend_duration: "Hoe lang wil je deze gebruiker blokkeren?" + suspend_failed: "Er is iets misgegaan bij het schorsen van deze gebruiker: {{error}}" + unsuspend_failed: "Er is iets misgegaan bij het opheffen van de schorsing van deze gebruiker: {{error}}" + suspend_duration: "Hoe lang wilt u deze gebruiker schorsen?" suspend_duration_units: "(dagen)" suspend_reason_label: "Waarom schorst u deze gebruiker? Deze tekst zal voor iedereen zichtbaar zijn op de profielpagina van deze gebruiker, en zal aan de gebruiker worden getoond als deze zich probeert aan te melden. Houd het kort." suspend_reason: "Reden" suspended_by: "Geschorst door" - delete_all_posts: "Verwijder alle berichten" - delete_all_posts_confirm_MF: "Je staat op het punt om {POSTS, plural, one {1 bericht} other {# berichten}} en {TOPICS, plural, one {1 topic} other {# topics}} te verwijderen. Weet je het zeker?" - suspend: "Schors" - unsuspend: "Herstel schorsing" + delete_all_posts: "Alle berichten verwijderen" + delete_all_posts_confirm_MF: "U gaat {POSTS, plural, one {1 bericht} other {# berichten}} en {TOPICS, plural, one {1 topic} other {# topics}} verwijderen. Weet u het zeker?" + suspend: "Schorsen" + unsuspend: "Schorsing opheffen" suspended: "Geschorst?" moderator: "Moderator?" admin: "Beheerder?" blocked: "Geblokkeerd?" staged: "Staged?" show_admin_profile: "Beheerder" - edit_title: "Wijzig titel" - save_title: "Bewaar titel" - refresh_browsers: "Forceer browser refresh" + edit_title: "Titel bewerken" + save_title: "Titel opslaan" + refresh_browsers: "Vernieuwen in browser forceren" refresh_browsers_message: "Bericht verstuurd aan alle gebruikers!" - show_public_profile: "Bekijk openbaar profiel" - impersonate: 'Log in als gebruiker' - ip_lookup: "Zoek IP-adres op" - log_out: "Uitloggen" - logged_out: "Gebruiker is uitgelogd op alle apparaten" - revoke_admin: 'Ontneem beheerdersrechten' - grant_admin: 'Geef Beheerdersrechten' - revoke_moderation: 'Ontneem modereerrechten' - grant_moderation: 'Geef modereerrechten' - unblock: 'Deblokkeer' - block: 'Blokkeer' + show_public_profile: "Openbaar profiel tonen" + impersonate: 'Aanmelden als gebruiker' + action_logs: "Actielogboeken" + ip_lookup: "IP-adres zoeken" + log_out: "Afmelden" + logged_out: "Gebruiker is op alle apparaten afgemeld" + revoke_admin: 'Beheerdersrechten intrekken' + grant_admin: 'Beheerdersrechten toekennen' + revoke_moderation: 'Moderatierechten intrekken' + grant_moderation: 'Moderatierechten toekennen' + unblock: 'Deblokkeren' + block: 'Blokkeren' reputation: Reputatie permissions: Toestemmingen activity: Activiteit - like_count: Likes gegeven / ontvangen + like_count: Gegeven / ontvangen likes last_100_days: 'in de laatste 100 dagen' - private_topics_count: Privé-topics - posts_read_count: Berichten gelezen - post_count: Berichten gemaakt - topics_entered: Topics bekeken - flags_given_count: Meldingen gedaan - flags_received_count: Meldigen ontvangen - warnings_received_count: Waarschuwingen Ontvangen - flags_given_received_count: 'Meldingen gedaan / ontvangen' - approve: 'Accepteer' - approved_by: "Geaccepteerd door" - approve_success: "Gebruiker geaccepteerd en e-mail verzonden met instructies voor activering." - approve_bulk_success: "Alle geselecteerde gebruikers zijn geaccepteerd en een e-mail met instructies voor activering is verstuurd." + private_topics_count: Privétopics + posts_read_count: Gelezen berichten + post_count: Gemaakte berichten + topics_entered: Bekeken topics + flags_given_count: Gegeven markeringen + flags_received_count: Ontvangen markeringen + warnings_received_count: Ontvangen waarschuwingen + flags_given_received_count: 'Gegeven / ontvangen markeringen' + approve: 'Goedkeuren' + approved_by: "goedgekeurd door" + approve_success: "Gebruiker goedgekeurd en e-mail met instructies voor activering verzonden." + approve_bulk_success: "Gelukt! Alle geselecteerde gebruikers zijn goedgekeurd en op de hoogte gebracht." time_read: "Leestijd" - anonymize: "Anonimiseer Gebruiker" - anonymize_confirm: "Weet je ZEKER dat je dit account wilt anonimiseren? Dit zal de gebruikersnaam en e-mailadres veranderen en alle profielinformatie resetten." - anonymize_yes: "Ja, anonimiseer dit account" - anonymize_failed: "Er was een probleem bij het anonimiseren van het account." - delete: "Verwijder gebruiker" - delete_forbidden_because_staff: "Admins en moderatoren kunnen niet verwijderd worden." + anonymize: "Gebruiker anonimiseren" + anonymize_confirm: "Weet u ZEKER dat u deze account wilt anonimiseren? Hierdoor worden de gebruikersnaam en het e-mailadres gewijzigd, en alle profielgegevens opnieuw ingesteld." + anonymize_yes: "Ja, deze account anonimiseren" + anonymize_failed: "Er is een probleem opgetreden bij het anonimiseren van de account." + delete: "Gebruiker verwijderen" + delete_forbidden_because_staff: "Beheerders en moderatoren kunnen niet worden verwijderd." delete_posts_forbidden_because_staff: "Kan niet alle berichten van beheerders en moderatoren verwijderen." delete_forbidden: - one: "Gebruikers kunnen niet worden verwijderd als ze berichten geplaatst hebben. Verwijder alle berichten voordat je een gebruiker probeert te verwijderen. (Berichten ouder dan %{count} dag kunnen niet verwijderd worden)" - other: "Gebruikers kunnen niet worden verwijderd als ze berichten geplaatst hebben. Verwijder alle berichten voordat je een gebruiker probeert te verwijderen. (Berichten ouder dan %{count} dagen kunnen niet verwijderd worden)" + one: "Gebruikers kunnen niet worden verwijderd als ze berichten hebben geplaatst. Verwijder alle berichten voordat u een gebruiker probeert te verwijderen. (Berichten ouder dan %{count} dag kunnen niet worden verwijderd.)" + other: "Gebruikers kunnen niet worden verwijderd als ze berichten hebben geplaatst. Verwijder alle berichten voordat u een gebruiker probeert te verwijderen. (Berichten ouder dan %{count} dagen kunnen niet worden verwijderd.)" cant_delete_all_posts: - one: "Kan niet alle berichten verwijderen. Sommige berichten zijn ouder dan %{count} dag (de delete_user_max_post_age instelling)." - other: "Kan niet alle berichten verwijderen. Sommige berichten zijn ouder dan %{count} dagen (de delete_user_max_post_age instelling)." + one: "Kan niet alle berichten verwijderen. Sommige berichten zijn ouder dan %{count} dag. (De instelling delete_user_max_post_age.)" + other: "Kan niet alle berichten verwijderen. Sommige berichten zijn ouder dan %{count} dagen. (De instelling delete_user_max_post_age.)" cant_delete_all_too_many_posts: - one: "Kan niet alle berichten verwijderen omdat de gebruiker meer dan 1 bericht heeft (delete_all_posts_max)." - other: "Kan niet alle berichten verwijderen omdat de gebruiker meer dan %{count} berichten heeft (delete_all_posts_max)." - delete_confirm: "Weet je zeker dat je deze gebruiker definitief wilt verwijderen? Deze handeling kan niet ongedaan worden gemaakt! " - delete_and_block: "Verwijder en blokkeer dit e-mail- en IP-adres" + one: "Kan niet alle berichten verwijderen, omdat de gebruiker meer dan 1 bericht heeft geplaatst. (delete_all_posts_max)" + other: "Kan niet alle berichten verwijderen, omdat de gebruiker meer dan %{count} berichten heeft geplaatst. (delete_all_posts_max)" + delete_confirm: "Weet u ZEKER dat u deze gebruiker wilt verwijderen? Dit is definitief!" + delete_and_block: "Dit e-mail- en IP-adres verwijderen en blokkeren" delete_dont_block: "Alleen verwijderen" deleted: "De gebruiker is verwijderd." - delete_failed: "Er ging iets mis bij het verwijderen van deze gebruiker. Zorg er voor dat alle berichten van deze gebruiker eerst verwijderd zijn." + delete_failed: "Er is een fout opgetreden bij het verwijderen van die gebruiker. Zorg ervoor dat alle berichten zijn verwijderd voordat u de gebruiker probeert te verwijderen." send_activation_email: "Activeringsmail versturen" activation_email_sent: "Er is een activeringsmail verstuurd." send_activation_email_failed: "Er is een probleem opgetreden bij het versturen van de activeringsmail. %{error}" - activate: "Activeer account" - activate_failed: "Er ging iets mis bij het activeren van deze gebruiker." - deactivate_account: "Deactiveer account" - deactivate_failed: "Er ging iets mis bij het deactiveren van deze gebruiker." - unblock_failed: 'Er ging iets mis bij het deblokkeren van deze gebruiker.' - block_failed: 'Er ging iets mis bij het blokkeren van deze gebruiker.' - block_confirm: 'Weet je zeker dat je deze gebruiker wilt blokkeren? Deze gebruiker is dan niet meer in staat om nieuwe topics of berichten te plaatsen.' - block_accept: 'Ja, blokkeer deze gebruiker' + activate: "Account activeren" + activate_failed: "Er is een probleem opgetreden bij het activeren van de gebruiker." + deactivate_account: "Account deactiveren" + deactivate_failed: "Er is een probleem opgetreden bij het deactiveren van de gebruiker." + unblock_failed: 'Er is een probleem opgetreden bij het deblokkeren van de gebruiker.' + block_failed: 'Er is een probleem opgetreden bij het blokkeren van de gebruiker.' + block_confirm: 'Weet u zeker dat u deze gebruiker wilt blokkeren? De gebruiker zal dan geen nieuwe topics of berichten kunnen plaatsen.' + block_accept: 'Ja, deze gebruiker blokkeren' bounce_score: "Bouncescore" reset_bounce_score: - label: "Reset" - title: "Reset bouncescore naar 0" - deactivate_explanation: "Een gedeactiveerde gebruiker moet zijn e-mailadres opnieuw bevestigen." + label: "Terugzetten" + title: "Bouncescore terugzetten naar 0" + deactivate_explanation: "Een gedeactiveerde gebruiker moet zijn of haar e-mailadres opnieuw valideren." suspended_explanation: "Een geschorste gebruiker kan zich niet aanmelden." - block_explanation: "Een geblokkeerde gebruiker kan geen topics maken of reageren op topics." - staged_explanation: "Een staged gebruiker kan alleen via e-mail in specifieke topics berichten plaatsen." + block_explanation: "Een geblokkeerde gebruiker kan geen berichten plaatsen of topics maken." + staged_explanation: "Een staged gebruiker kan alleen in bepaalde topics berichten plaatsen via e-mail." bounce_score_explanation: - none: "Er zijn onlangs geen bounceberichten ontvangen van dit e-mailadres." - some: "Er zijn onlangs enkele bounceberichten ontvangen van dit e-mailadres." - threshold_reached: "Er zijn te veel bounceberichten ontvangen van dit e-mailadres." - trust_level_change_failed: "Er ging iets mis bij het wijzigen van het trustlevel van deze gebruiker." - suspend_modal_title: "Schors gebruiker" - trust_level_2_users: "Trustlevel 2 leden" - trust_level_3_requirements: "Trustlevel 3 vereisten" - trust_level_locked_tip: "trustlevel is vrijgegeven, het systeem zal geen gebruiker bevorderen of degraderen" - trust_level_unlocked_tip: "trustlevel is vrijgegeven, het systeem zal gebruiker bevorderen of degraderen" - lock_trust_level: "Zet trustlevel vast" - unlock_trust_level: "Geef trustlevel vrij" + none: "Er zijn onlangs geen bounceberichten van dat e-mailadres ontvangen." + some: "Er zijn onlangs enkele bounceberichten van dat e-mailadres ontvangen." + threshold_reached: "Er zijn te veel bounceberichten van dat e-mailadres ontvangen." + trust_level_change_failed: "Er is een probleem opgetreden bij het wijzigen van het vertrouwensniveau van de gebruiker." + suspend_modal_title: "Gebruiker schorsen" + trust_level_2_users: "Gebruikers met vertrouwensniveau 2" + trust_level_3_requirements: "Vereisten voor vertrouwensniveau 3" + trust_level_locked_tip: "vertrouwensniveau is vergrendeld; het systeem zal geen gebruikers promoveren of degraderen" + trust_level_unlocked_tip: "vertrouwensniveau is ontgrendeld; het systeem kan gebruikers promoveren of degraderen" + lock_trust_level: "Vertrouwensniveau vergrendelen" + unlock_trust_level: "Vertrouwensniveau ontgrendelen" tl3_requirements: - title: "Vereisten voor trustlevel 3" + title: "Vereisten voor vertrouwensniveau 3" table_title: - one: "In de laatste dag:" - other: "In de laatste %{count} dagen:" + one: "De afgelopen dag:" + other: "In de afgelopen %{count} dagen:" value_heading: "Waarde" requirement_heading: "Vereiste" visits: "Bezoeken" days: "dagen" - topics_replied_to: "Topics waarin gereageerd is" - topics_viewed: "Topics bekeken" - topics_viewed_all_time: "Topics bekeken (sinds begin)" + topics_replied_to: "Beantwoorde topics" + topics_viewed: "Bekeken topics" + topics_viewed_all_time: "Bekeken topics (sinds begin)" posts_read: "Gelezen berichten" - posts_read_all_time: "Berichten gelezen (ooit)" + posts_read_all_time: "Gelezen berichten (sinds begin)" flagged_posts: "Gemarkeerde berichten" - flagged_by_users: "Gebruikers die gemarkeerd hebben" - likes_given: "Likes gegeven" - likes_received: "Likes ontvangen" + flagged_by_users: "Gebruikers die hebben gemarkeerd" + likes_given: "Gegeven likes" + likes_received: "Ontvangen likes" likes_received_days: "Ontvangen likes: unieke dagen" likes_received_users: "Ontvangen likes: unieke gebruikers" - qualifies: "Komt in aanmerking voor trustlevel 3" - does_not_qualify: "Komt niet in aanmerking voor trustlevel 3" - will_be_promoted: "Zal binnenkort gepromoot worden." - will_be_demoted: "Zal binnenkort gedegradeerd worden." - on_grace_period: "Op dit moment in promotiegratieperiode, zal niet worden gedegradeerd." - locked_will_not_be_promoted: "Trustlevel vastgezet. Zal nooit bevorderd worden." - locked_will_not_be_demoted: "Trustlevel vastgezet. Zal nooit gedegradeerd worden." + qualifies: "Komt in aanmerking voor vertrouwensniveau 3." + does_not_qualify: "Komt niet in aanmerking voor vertrouwensniveau 3." + will_be_promoted: "Zal binnenkort worden gepromoveerd." + will_be_demoted: "Zal binnenkort worden gedegradeerd." + on_grace_period: "Op dit moment in promotiewachtperiode, zal niet worden gedegradeerd." + locked_will_not_be_promoted: "Vertrouwensniveau vergrendeld. Zal nooit worden gepromoveerd." + locked_will_not_be_demoted: "Vertrouwensniveau vergrendeld. Zal nooit worden gedegradeerd." sso: title: "Single Sign On" external_id: "Externe ID" external_username: "Gebruikersnaam" external_name: "Naam" - external_email: "E-mail" - external_avatar_url: "URL van profielfoto" + external_email: "E-mailadres" + external_avatar_url: "URL van profielafbeelding" user_fields: title: "Gebruikersvelden" - help: "Voeg velden toe die je gebruikers in kunnen vullen." - create: "Maak gebruikersveld" + help: "Voeg velden toe die uw gebruikers kunnen invullen." + create: "Gebruikersveld maken" untitled: "Geen titel" name: "Veldnaam" type: "Veldtype" description: "Veldomschrijving" save: "Opslaan" - edit: "Wijzig" - delete: "Verwijder" - cancel: "Annuleer" - delete_confirm: "Weet je zeker dat je dat gebruikersveld wilt verwijderen?" + edit: "Bewerken" + delete: "Verwijderen" + cancel: "Annuleren" + delete_confirm: "Weet u zeker dat u dat gebruikersveld wilt verwijderen?" options: "Opties" required: - title: "Verplicht bij inschrijven?" - enabled: "verplicht" - disabled: "niet verplicht" + title: "Vereist bij registratie?" + enabled: "vereist" + disabled: "niet vereist" editable: title: "Bewerkbaar na registratie?" enabled: "bewerkbaar" disabled: "niet bewerkbaar" show_on_profile: - title: "Laat zien op openbaar profiel?" - enabled: "wordt getoond op profiel" - disabled: "wordt niet getoond op profiel" + title: "Tonen in openbaar profiel?" + enabled: "getoond in profiel" + disabled: "niet getoond in profiel" show_on_user_card: - title: "Toon op gebruikersprofiel?" - enabled: "getoond op gebruikersprofiel" + title: "Tonen op gebruikerskaart?" + enabled: "getoond op gebruikerskaart" disabled: "niet getoond op gebruikerskaart" field_types: text: 'Tekstveld' confirm: 'Bevestiging' - dropdown: "Uitklapmenu" + dropdown: "Vervolgkeuzelijst" site_text: - description: "Je kunt alle tekst op dit forum aanpassen. Begin met zoeken hieronder:" - search: "Zoek naar de tekst die je wil aanpassen" - title: 'Tekst Inhoud' - edit: 'bewerk' - revert: "Maak wijzigingen ongedaan" - revert_confirm: "Weet je zeker dat je je wijzigingen ongedaan wilt maken?" + description: "U kunt alle tekst op uw forum aanpassen. Begin door hieronder te zoeken:" + search: "Zoek de tekst die u wilt bewerken" + title: 'Tekstinhoud' + edit: 'bewerken' + revert: "Wijzigingen ongedaan maken" + revert_confirm: "Weet u zeker dat u uw wijzigingen ongedaan wilt maken?" go_back: "Terug naar Zoeken" - recommended: "We adviseren je de volgende tekst aan te passen naar je eigen smaak: " - show_overriden: 'Bekijk alleen bewerkte instellingen' + recommended: "We raden aan de volgende tekst naar wens aan te passen:" + show_overriden: 'Alleen overschreven tekst tonen' site_settings: - show_overriden: 'Bekijk alleen bewerkte instellingen' + show_overriden: 'Alleen overschreven instellingen tonen' title: 'Instellingen' - reset: 'herstel' + reset: 'standaardinstellingen' none: 'geen' - no_results: "Geen resultaten." - clear_filter: "Wis" - add_url: "voeg URL toe" + no_results: "Geen resultaten gevonden." + clear_filter: "Wissen" + add_url: "URL toevoegen" add_host: "host toevoegen" categories: all_results: 'Alle' required: 'Vereist' - basic: 'Basissetup' + basic: 'Basisinstellingen' users: 'Gebruikers' posting: 'Schrijven' email: 'E-mail' files: 'Bestanden' - trust: 'Trustlevels' + trust: 'Vertrouwensniveaus' security: 'Beveiliging' onebox: "Onebox" seo: 'SEO' spam: 'Spam' - rate_limits: 'Rate limits' + rate_limits: 'Frequentielimieten' developer: 'Ontwikkelaar' embedding: "Embedden" legal: "Juridisch" user_api: 'Gebruikers-API' uncategorized: 'Overige' - backups: "Backups" - login: "Gebruikersnaam" - plugins: "Plugins" + backups: "Back-ups" + login: "Aanmelding" + plugins: "Plug-ins" user_preferences: "Gebruikersvoorkeuren" tags: "Tags" - search: "Zoek" + search: "Zoeken" groups: "Groepen" badges: title: Badges new_badge: Nieuwe badge new: Nieuw name: Naam - badge: Embleem - display_name: Lange naam + badge: Badge + display_name: Weergavenaam description: Omschrijving long_description: Lange omschrijving badge_type: Badgetype @@ -3012,52 +3027,52 @@ nl: granted_by: Toegekend door granted_at: Toegekend op reason_help: (een link naar een bericht of topic) - save: Bewaar - delete: Verwijder - delete_confirm: Weet je zeker dat je deze badge wilt verwijderen? + save: Opslaan + delete: Verwijderen + delete_confirm: Weet u zeker dat u deze badge wilt verwijderen? revoke: Intrekken reason: Reden - expand: Uitklappen... - revoke_confirm: Weet je zeker dat je deze badge in wilt trekken? - edit_badges: Wijzig badges - grant_badge: Ken badge toe + expand: Uitvouwen … + revoke_confirm: Weet u zeker dat u deze badge wilt intrekken? + edit_badges: Badges bewerken + grant_badge: Badge toekennen granted_badges: Toegekende badges grant: Toekennen no_user_badges: "%{name} heeft nog geen badges toegekend gekregen." - no_badges: Er zijn geen badges die toegekend kunnen worden. - none_selected: "Selecteer een badge om aan de slag te gaan" - allow_title: Embleem mag als titel gebruikt worden + no_badges: Er zijn geen badges die kunnen worden toegekend. + none_selected: "Selecteer een badge om te beginnen" + allow_title: Badge mag als titel worden gebruikt multiple_grant: Kan meerdere malen worden toegekend listable: Badge op de openbare badgespagina tonen - enabled: Badge aanzetten - icon: Icoon + enabled: Badge inschakelen + icon: Pictogram image: Afbeelding - icon_help: "Gebruik ofwel een Font Awesome class of een URL naar een afbeelding" - query: Badge query (SQL) + icon_help: "Gebruik ofwel een Font Awesome-klasse of een URL naar een afbeelding" + query: Badgequery (SQL) target_posts: Geassocieerde berichten opvragen auto_revoke: Intrekkingsquery dagelijks uitvoeren - show_posts: Toon bericht waarmee de badge is verdiend op badgepagina + show_posts: Bericht met badgetoekenning op badgepagina tonen trigger: Trigger trigger_type: none: "Dagelijks bijwerken" post_action: "Wanneer een gebruiker handelt op een bericht" - post_revision: "Wanneer een gebruiker een bericht wijzigt of creëert" - trust_level_change: "Wanneer een gebruiker van trustlevel verandert" - user_change: "Wanneer een gebruiker is gewijzigd of gecreëerd" + post_revision: "Wanneer een gebruiker een bericht bewerkt of aanmaakt" + trust_level_change: "Wanneer een gebruiker van vertrouwensniveau verandert" + user_change: "Wanneer een gebruiker wordt bewerkt of aangemaakt" post_processed: "Nadat een bericht is verwerkt" preview: - link_text: "Voorbeeld toegekende badges" - plan_text: "Voorbeeld met uitvoeringsplan" - modal_title: "Preview badge query" - sql_error_header: "Er ging iets fout met de query." - error_help: "Bekijk de volgende links voor hulp met badge queries." + link_text: "Voorbeeld van toegekende badges" + plan_text: "Voorbeeld met queryplan" + modal_title: "Voorbeeld van badgequery" + sql_error_header: "Er is een fout opgetreden bij de query." + error_help: "Bekijk de volgende koppelingen voor hulp bij badgequery's." bad_count_warning: - header: "LET OP!" - text: "Er ontbreken toekenningsvoorbeelden. Dit gebeurt als de badge query gebruikers- of bericht-ID's retourneert die niet bestaan. Dit kan onverwachte resultaten veroorzaken op een later tijdstip - kijk a.u.b. je query goed na." + header: "WAARSCHUWING!" + text: "Er ontbreken toekenningsvoorbeelden. Dit gebeurt als de badgequery gebruikers- of bericht-ID's retourneert die niet bestaan. Dit kan later tot onverwachte resultaten leiden - controleer uw query." no_grant_count: "Geen badges om toe te wijzen." grant_count: - one: "1 badge toe te wijzen." - other: "%{count} badges zullen worden toegewezen." + one: "Er is 1 badge om toe te wijzen." + other: "Er zijn %{count} badges om toe te wijzen." sample: "Voorbeeld:" grant: with: %{username} @@ -3066,15 +3081,15 @@ nl: with_time: %{username} om %{time} emoji: title: "Emoji" - help: "Voeg nieuwe emoji toe die beschikbaar zullen zijn voor iedereen. (PROTIP: drag & drop meerdere bestanden tegelijk)" - add: "Voeg nieuw emoji toe" + help: "Nieuwe emoji toevoegen die voor iedereen beschikbaar zal zijn. (PROTIP: versleep meerdere bestanden tegelijk)" + add: "Nieuwe emoji toevoegen" name: "Naam" image: "Afbeelding" - delete_confirm: "Weet je zeker dat je de :%{name}: emoji wilt verwijderen?" + delete_confirm: "Weet u zeker dat u de emoji :%{name}: wilt verwijderen?" embedding: - get_started: "Als je Discourse wilt embedden in een andere website, begin met het toevoegen van de host van die website." - confirm_delete: "Weet je zeker dat je die host wilt verwijderen?" - sample: "Gebruik de volgende HTML-code om discourse topics te maken en te embedden in je website. Vervang REPLACE_ME met de volledige URL van de pagina waarin je het topic wilt embedden." + get_started: "Als u Discourse in een andere website wilt embedden, begin dan door de host ervan toe te voegen." + confirm_delete: "Weet u zeker dat u die host wilt verwijderen?" + sample: "Gebruik de volgende HTML-code in uw website om Discourse-topics te maken en te embedden. Vervang REPLACE_ME door de canonieke URL van de pagina waarin u het topic wilt embedden." title: "Embedden" host: "Toegestane hosts" path_whitelist: "Toegestane paden" @@ -3083,17 +3098,17 @@ nl: add_host: "Host toevoegen" settings: "Embeddingsinstellingen" feed_settings: "Feedinstellingen" - feed_description: "Een RSS- of ATOM-feed van je site kan de import van content naar Discourse verbeteren." + feed_description: "Door een RSS/ATOM-feed voor uw website beschikbaar te stellen, kan het importeren van uw content door Discourse worden verbeterd." crawling_settings: "Crawlerinstellingen" - crawling_description: "Als Discourse topics maakt voor je berichten, zonder dat er gebruik gemaakt wordt van de RSS/ATOM feed, dan zal Discourse proberen je content vanuit je HTML te parsen. Soms kan het complex zijn om je content af te leiden, daarom voorziet Discourse in de mogelijkheid voor het specificeren van CSS-regels om het afleiden gemakkelijker te maken." + crawling_description: "Als Discourse topics voor uw berichten maakt en er geen RSS/ATOM-feed aanwezig is, zal Discourse proberen uw content vanuit uw HTML te parsen. Omdat het soms een uitdaging is om uw content af te leiden, bieden we de mogelijkheid voor het opgeven van CSS-regels om het afleiden makkelijker te maken." embed_by_username: "Gebruikersnaam voor het maken van topics" - embed_post_limit: "Maximaal aantal berichten om te embedden" - embed_username_key_from_feed: "Key om de discourse gebruikersnaam uit de feed te halen" + embed_post_limit: "Maximale aantal berichten om te embedden" + embed_username_key_from_feed: "Sleutel om Discourse-gebruikersnaam uit feed te halen" embed_title_scrubber: "Reguliere expressie voor het afleiden van de titels van berichten" embed_truncate: "Embedde berichten inkorten" - embed_whitelist_selector: "CSS selector voor elementen die worden toegestaan bij embedding" - embed_blacklist_selector: "CSS selector voor elementen die worden verwijderd bij embedding" - embed_classname_whitelist: "Toegestane CSS-classnamen" + embed_whitelist_selector: "CSS-selector voor elementen die bij embedding worden toegestaan" + embed_blacklist_selector: "CSS-selector voor elementen die bij embedding worden verwijderd" + embed_classname_whitelist: "Toegestane CSS-klassenamen" feed_polling_enabled: "Berichten importeren via RSS/ATOM" feed_polling_url: "URL van RSS/ATOM-feed voor crawlen" save: "Embeddingsinstellingen opslaan" diff --git a/config/locales/client.pl_PL.yml b/config/locales/client.pl_PL.yml index 0d743bb421..4c53e13304 100644 --- a/config/locales/client.pl_PL.yml +++ b/config/locales/client.pl_PL.yml @@ -395,7 +395,7 @@ pl_PL: title: 'Edytuj grupę' full_name: 'Pełna nazwa' add_members: "Dodaj użytkowników" - delete_member_confirm: "Usuń '%{username}' z grupy '%{group}'?" + delete_member_confirm: "Czy usunąć użytkownika '%{username}' z grupy '%{group}'?" request_membership_pm: title: "Prośba o członkostwo" body: "Chciałbym(-am) poprosić o członkostwo w grupie @%{groupName}." @@ -646,6 +646,8 @@ pl_PL: error: "(błąd)" action: "Wyślij wiadomość email resetującą hasło" set_password: "Ustaw hasło" + choose_new: "Wyberz nowe hasło" + choose: "Wybierz hasło" change_about: title: "Zmień O mnie" error: "Wystąpił błąd podczas zmiany tej wartości." @@ -701,13 +703,11 @@ pl_PL: instructions: "unikalna, bez spacji, krótka" short_instructions: "Inni mogą o tobie wspomnieć pisząc @{{username}}" available: "Nazwa użytkownika jest dostępna" - global_match: "Email zgadza się z zarejestrowaną nazwą użytkownika" - global_mismatch: "Zajęta. Może spróbuj {{suggestion}}?" not_available: "Niedostępna. Może spróbuj {{suggestion}}?" + not_available_no_suggestion: "Niedostępne" too_short: "Nazwa użytkownika jest zbyt krótka" too_long: "Nazwa użytkownika jest zbyt długa" checking: "Sprawdzanie, czy nazwa jest dostępna…" - enter_email: 'Nazwa użytkownika znaleziona – wpisz przypisany adres email' prefilled: "Email zgadza się z zarejestrowaną nazwą użytkownika" locale: title: "Język interfejsu" @@ -807,10 +807,10 @@ pl_PL: link_generated: "Link z zaproszenie został poprawnie wygenerowany!" valid_for: "Link do zaproszenia jest ważny tylko dla tego adresu: %{email}" bulk_invite: - none: "Jeszcze nikogo nie zaprosiłeś. Możesz wysłać pojedyncze zaproszenie lub zaprosić wiele osób na raz poprzez wysłanie pliku CSV." + none: "Jeszcze nikogo nie zaprosiłeś. Możesz wysłać pojedyncze zaproszenia lub zaprosić wiele osób na raz poprzez wysłanie pliku CSV." text: "Zaproszenia hurtowe z pliku" success: "Plik został przesłany pomyślnie: otrzymasz prywatną wiadomość, gdy proces zostanie zakończony." - error: "Przepraszam, plik powinien być w formacie csv." + error: "Przykro nam, ale wymagany format pliku to CSV." password: title: "Hasło" too_short: "Hasło jest za krótkie." @@ -1017,6 +1017,7 @@ pl_PL: to_continue: "Zaloguj się" preferences: "Musisz się zalogować, aby zmieniać swoje ustawienia." forgot: "Nie pamiętam konta" + not_approved: "Twoje konto nie zostało jeszcze aktywowane. Zostaniesz powiadomiony emailem gdy będziesz mógł się zalogować." google: title: "przez Google" message: "Uwierzytelnianie przy pomocy konta Google (upewnij się, że blokada wyskakujących okienek nie jest włączona)" @@ -1038,6 +1039,16 @@ pl_PL: github: title: "przez GitHub" message: "Uwierzytelnianie przez GitHub (upewnij się, że blokada wyskakujących okienek nie jest włączona)" + invites: + accept_title: "Zaproszenie" + welcome_to: "Witaj na %{site_name}!" + invited_by: "Zostałeś zaproszony przez:" + your_email: "Adres e-mail przypisany do twojego konta to %{email}." + accept_invite: "Akceptuj zaproszenie" + success: "Twje konto zostało utworzone i zostałeś zalogowany." + password_label: "Ustaw hasło (opcjonalne)" + password_reset: + continue: "Przejdź do %{site_name}" emoji_set: apple_international: "Apple/Międzynarodowy" google: "Google" @@ -1312,7 +1323,9 @@ pl_PL: many: "Zaznaczono {{count}} tematów." other: "Zaznaczono {{count}} tematów." change_tags: "Zmień tagi" + append_tags: "Dodaj tagi" choose_new_tags: "Wybierz nowe tagi dla tych tematów:" + choose_append_tags: "Wybierz nowe tagi dla tych tematów:" changed_tags: "Tagi tych tematów były zmieniane." none: unread: "Nie masz nieprzeczytanych tematów." @@ -1504,11 +1517,8 @@ pl_PL: make_banner: "Ustaw jako baner" remove_banner: "Wyłącz baner" reply: - post: - title: 'Odpowiedz' - topic: - title: 'Odpowiedz' - help: 'zacznij tworzyć odpowiedź na ten temat' + title: 'Odpowiedz' + help: 'zacznij tworzyć odpowiedź do tego tematu' clear_pin: title: "Odepnij" help: "Odepnij ten temat. Przestanie wyświetlać się na początku listy tematów." @@ -1651,6 +1661,7 @@ pl_PL: wiki_last_edited_on: "wiki ostatnio edytowane w" last_edited_on: "ostatnia edycja wpisu" reply_as_new_topic: "Odpowiedz w nowym temacie" + reply_as_new_private_message: "Odpowiedź w nowej wiadomości do tego samego odbiorcy" continue_discussion: "Kontynuując dyskusję z {{postLink}}:" follow_quote: "idź do cytowanego wpisu" show_full: "Pokaż pełny wpis" @@ -1874,7 +1885,8 @@ pl_PL: hide: "Ukryj tę wersję" show: "Pokaż tę wersję" revert: "Przywróć do tej wersji" - edit_wiki: "Edytuj wiki" + edit_wiki: "Edytuj Wiki" + edit_post: "Edytuj wpis" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1937,6 +1949,7 @@ pl_PL: email_in_disabled: "Tworzenie nowych tematów emailem jest wyłączone w ustawieniach serwisu. " email_in_disabled_click: 'Kliknij tu, aby włączyć.' suppress_from_homepage: "Nie wyświetlaj tej kategorii na stronie głównej." + show_subcategory_list: "Pokaż listę subkategorii powyżej tematów w tej kategorii." all_topics_wiki: "Stwórz nowe tematy domyślnie jako wiki" sort_order: "Domyślnie sortuj:" allow_badges_label: "Włącz przyznawanie odznak na podstawie aktywności w tej kategorii" @@ -3024,6 +3037,7 @@ pl_PL: refresh_browsers_message: "Wiadomość wysłana do wszystkich klientów!" show_public_profile: "Pokaż profil publiczny" impersonate: 'Zaloguj się na to konto' + action_logs: "Logi akcji" ip_lookup: "Wyszukiwanie IP" log_out: "Wyloguj" logged_out: "Użytkownik został wylogowany na wszystkich urządzeniach." diff --git a/config/locales/client.pt.yml b/config/locales/client.pt.yml index c65fe3099f..cb0411b209 100644 --- a/config/locales/client.pt.yml +++ b/config/locales/client.pt.yml @@ -214,7 +214,7 @@ pt: like_count: "Gostos" topic_count: "Tópicos" post_count: "Publicações" - user_count: "Novos Utilizadores" + user_count: "Utilizadores" active_user_count: "Utilizadores Activos" contact: "Contacte-nos" contact_info: "No caso de um problema crítico ou de algum assunto urgente que afecte este sítio, por favor contacte-nos em %{contact_info}." @@ -348,13 +348,32 @@ pt: title: "Pedido de Adesão" body: "Eu gostaria de aderir a @%{groupName}." name_placeholder: "Nome do grupo, sem espaços, com as mesmas regras do nome de utilizador" + empty: + posts: "Não existem publicações por membros deste grupo." + members: "Não existem membros neste grupo." + mentions: "Não há menções deste grupo." + messages: "Não existem mensagens para este grupo." + topics: "Não existem tópicos por membros deste grupo." + logs: "Não existem registos para este grupo." add: "Adicionar" + join: "Juntar ao Grupo" + leave: "Sair do Grupo" + request: "Pedir para Entrar no Grupo." + closed_group: Grupo fechado + is_group_user: "Você é membro deste grupo" + name: "Nome" + user_count: "Numero de Membros" + bio: "Acerca do Grupo" selector_placeholder: "Adicionar membros" owner: "proprietário" visible: "O grupo é visível para todos os utilizadores" + index: + title: "Grupos" + empty: "Não existem grupos visíveis." title: one: "grupo" other: "grupos" + activity: "Actividade" members: "Membros" topics: "Tópicos" posts: "Publicações" @@ -557,6 +576,8 @@ pt: error: "(erro)" action: "Enviar email de recuperação de palavra-passe" set_password: "Definir Palavra-passe" + choose_new: "Escolha uma nova palavra-passe" + choose: "Escolha uma palavra-passe" change_about: title: "Modificar Sobre Mim" error: "Ocorreu um erro ao modificar este valor." @@ -591,7 +612,7 @@ pt: instructions: "As imagens de fundo serão centradas e terão por defeito uma largura de 590px." email: title: "Email" - instructions: "Nunca mostrado ao público" + instructions: "nunca mostrar publicamente" ok: "Enviar-lhe-emos um email para confirmar" invalid: "Por favor introduza um endereço de email válido" authenticated: "O seu email foi autenticado por {{provider}}" @@ -601,22 +622,19 @@ pt: other: "Só iremos enviar-lhe um email se não o tivermos visto nos últimos {{count}} minutos." name: title: "Nome" - instructions: "O seu nome completo (opcional)" + instructions: "o seu nome completo (opcional)" instructions_required: "O seu nome completo" too_short: "O seu nome é demasiado curto" ok: "O seu nome parece adequado" username: title: "Nome de Utilizador" - instructions: "Único, sem espaços, curto" + instructions: "único, sem espaços, curto" short_instructions: "Podem mencioná-lo como @{{username}}" available: "O seu nome de utilizador está disponível" - global_match: "O email coincide com o nome de utilizador no registo" - global_mismatch: "Já está registado. Tente {{suggestion}}?" not_available: "Não está disponível. Tente {{suggestion}}?" too_short: "O seu nome de utilizador é demasiado curto" too_long: "O seu nome de utilizador é demasiado longo" checking: "A verificar a disponibilidade do nome de utilizador..." - enter_email: 'Nome de utilizador encontrado, introduza o email correspondente' prefilled: "Email corresponde com o nome de utilizador registado" locale: title: "Idioma da Interface" @@ -714,7 +732,6 @@ pt: link_generated: "Ligação de convite gerada com sucesso!" valid_for: "Ligação de convite é válida apenas para este endereço de email: %{email}" bulk_invite: - none: "Ainda não convidou ninguém. Pode enviar convites individuais, ou convidar um grupo de pessoas de uma única vez carregando um ficheiro CSV." text: "Convite em massa a partir de ficheiro" success: "Ficheiro carregado corretamente, será notificado via mensagem assim que o processo esteja concluído." password: @@ -724,7 +741,6 @@ pt: same_as_username: "A sua palavra-passe é a mesma que o seu nome de utilizador." same_as_email: "A sua palavra-passe é a mesma que o seu email." ok: "A sua palavra-passe parece correta." - instructions: "Pelo menos %{count} caracteres." summary: title: "Sumário" stats: "Estatísticas" @@ -1297,6 +1313,8 @@ pt: go_bottom: "fim" go: "ir" jump_bottom: "ir para a última publicação" + jump_prompt: "saltar para..." + jump_prompt_of: "de %{count} publicações" jump_prompt_long: "Para que publicação gostaria de ir?" jump_bottom_with_number: "ir para a publicação %{post_number}" total: total de publicações @@ -1368,7 +1386,6 @@ pt: remove_banner: "Remover Tópico de Faixa" reply: title: 'Responder' - help: 'começa a compor uma resposta a este tópico' clear_pin: title: "Remover destaque" help: "Remover destaque deste tópico para que o mesmo deixe de aparecer no topo da sua lista de tópicos" @@ -1538,8 +1555,6 @@ pt: via_email: "esta publicação chegou por email" via_auto_generated_email: "esta publicação chegou via um email gerado automaticamente" whisper: "esta publicação é um susurro privado para os moderadores" - wiki: - about: "esta publicação é uma wiki" archetypes: save: 'Guardar as Opções' few_likes_left: "Obrigado por partilhar o amor! Restam-lhe apenas um gostos para hoje." @@ -1666,17 +1681,19 @@ pt: hide: "Esconder revisão" show: "Mostrar revisão" revert: "Reverter para esta revisão" + edit_wiki: "Editar Wiki" + edit_post: "Editar publicação" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: title: "Mostrar o resultado renderizado com inserções e remoções em-linha." - button: ' HTML' + button: 'HTML' side_by_side: title: "Mostrar o resultado renderizado das diferenças lado-a-lado" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "Mostrar em bruto a fonte das diferenças lado-a-lado" - button: ' Em bruto' + button: 'Em bruto' category: can: 'pode… ' none: '(sem categoria)' @@ -2633,7 +2650,7 @@ pt: revoke_admin: "revogar administração" grant_moderation: "conceder moderação" revoke_moderation: "revogar moderação" - backup_operation: "operação de cópia de segurança" + backup_create: "criar cópia de segurança" deleted_tag: "etiqueta removida" renamed_tag: "etiqueta renomeada" revoke_email: "revogar email" diff --git a/config/locales/client.pt_BR.yml b/config/locales/client.pt_BR.yml index 991f4d564c..5e78321bd4 100644 --- a/config/locales/client.pt_BR.yml +++ b/config/locales/client.pt_BR.yml @@ -323,11 +323,18 @@ pt_BR: other: "%{count} usuários" group_histories: actions: + change_group_setting: "Alterar configurações do grupo" add_user_to_group: "Adicionar usuário" remove_user_from_group: "Remover usuário" + make_user_group_owner: "Tornar proprietário" + remove_user_as_group_owner: "Revogar proprietário" groups: logs: title: "Registros" + when: "Quando" + action: "Ação" + acting_user: "Usuário atuando" + target_user: "Usuário destino" subject: "Assunto" details: "Detalhes" from: "De" @@ -337,13 +344,40 @@ pt_BR: full_name: 'Nome Completo' add_members: "Adicionar Membros" delete_member_confirm: "Remover '%{username}' do grupo '%{group}'?" + request_membership_pm: + title: "Pedido de adesão" + body: "Eu gostaria de solicitar a adesão no grupo @%{groupName}." + name_placeholder: "Nome do grupo, sem espaços, regras iguais ao nome de usuário" + public: "Permitir que usuários entrem e saiam do grupo livremente (Requer que o grupo seja visível)" + empty: + posts: "Não há publicações de membros deste grupo." + members: "Não há membros neste grupo." + mentions: "Não há menções a este grupo." + messages: "Não há mensagens para este grupo." + topics: "Não há tópicos de membros deste grupo." + logs: "Não há registros para este grupo." add: "Adicionar" + join: "Entrar no Grupo" + leave: "Sair do Grupo" + request: "Pedir para Entrar no Grupo" + automatic_group: Grupo Automático + closed_group: Grupo Fechado + is_group_user: "Você é membro deste grupo" + allow_membership_requests: "Permitir que usuários enviem pedidos de adesão a donos do grupo (Requer que todos possam mencionar o grupo)" + membership: "Adesão" + name: "Nom" + user_count: "Número de Membros" + bio: "Sobre o Grupo" selector_placeholder: "Adicionar membros" owner: "proprietário" visible: "Grupo é visível para todos os usuários" + index: + title: "Grupos" + empty: "Não há grupos visíveis." title: one: "grupo" other: "grupos" + activity: "Atividade" members: "Membros" topics: "Tópicos" posts: "Mensagens" @@ -375,6 +409,15 @@ pt_BR: muted: title: "Silenciado" description: "Você nunca será notificado sobre novos tópicos nesse grupo." + flair_url: "Imagem do Avatar Flair" + flair_url_placeholder: "(Opcional) URL da imagem ou classe do Font Awesome" + flair_bg_color: "Cor de Fundo do Avatar Flair" + flair_bg_color_placeholder: "(Opcional) Valor em hexadecimal da cor" + flair_color: "Cor do Avatar Flair" + flair_color_placeholder: "(Opcional) Valor em hexadecimal da cor" + flair_preview_icon: "Pré-visualizar Ícone" + flair_preview_image: "Pré-visualizar Imagem" + flair_note: "Nota: o Flair somente será exibido para o grupo primário do usuário." user_action_groups: '1': "Curtidas dadas" '2': "Curtidas recebidas" @@ -439,6 +482,7 @@ pt_BR: download_archive: button_text: "Baixar Minhas Publicações" confirm: "Você tem certeza de que quer baixar as suas publicações?" + success: "Download iniciado, você será notificado por mensagem quando o processo estiver completo." rate_limit_error: "Publicações podem ser baixadas somente uma vez por dia, por favor tente novamente amanhã." new_private_message: "Nova Mensagem" private_message: "Mensagem" @@ -545,6 +589,8 @@ pt_BR: error: "(erro)" action: "alterar" set_password: "Definir Senha" + choose_new: "Escolha uma nova senha" + choose: "Escolha uma senha" change_about: title: "Modificar Sobre Mim" error: "Houve um erro ao alterar esse valor." @@ -579,7 +625,7 @@ pt_BR: instructions: "As Imagens de fundo serão centralizadas e deverão ter largura de 590px" email: title: "Email" - instructions: "Nunca mostrar ao público" + instructions: "nunca é exibido publicamente" ok: "Nós vamos pedir confirmação por email" invalid: "Insira um endereço de email" authenticated: "Seu email foi autenticado por {{provider}}" @@ -589,22 +635,19 @@ pt_BR: other: "Nós apenas te enviaremos email se não o tivermos visto nos últimos {{count}} minutos." name: title: "Nome" - instructions: "Seu nome completo (opcional)" + instructions: "seu nome completo (opcional)" instructions_required: "Seu nome completo" too_short: "Seu nome é muito curto" ok: "Seu nome parece bom" username: title: "Nome de Usuário" - instructions: "Únicos, sem espaços e curto" + instructions: "único, sem espaços, curto" short_instructions: "As pessoas podem mencionar você usando @{{username}}." available: "Seu nome de usuário está disponível" - global_match: "O email corresponde ao nome de usuário registrado" - global_mismatch: "Já está registado. Tente {{suggestion}}?" not_available: "Não está disponível. Tente {{suggestion}}?" too_short: "Seu nome de usuário é muito curto" too_long: "Seu nome de usuário é muito longo" checking: "Verificando disponibilidade do Nome de Usuário..." - enter_email: 'Nome de usuário encontrado, insira o email correspondente. ' prefilled: "Email corresponde a esse nome de usuário registrado" locale: title: "idioma de interface" @@ -711,7 +754,7 @@ pt_BR: same_as_username: "Sua senha é a mesma que o seu nome de usuário." same_as_email: "Sua senha é a mesma que o seu email." ok: "A sua senha parece boa." - instructions: "Deve ter pelo menos %{count} caracteres." + instructions: "pelo menos %{count} caracteres" summary: title: "Resumo" stats: "Estatísticas" @@ -893,6 +936,7 @@ pt_BR: to_continue: "Por favor efetue o login" preferences: "Você precisa estar logado para mudar suas preferências de usuário." forgot: "Não me recordo dos detalhes da minha conta." + not_approved: "Sua conta ainda não foi aprovada. Você será notificado por email quando estiver tudo pronto para realizar seu login." google: title: "Entrar com Google" message: "Autenticando com Google (certifique-se de que os bloqueadores de popup estejam desativados)" @@ -914,6 +958,8 @@ pt_BR: github: title: "com GitHub" message: "Autenticando com GitHub (certifique-se de que os bloqueadores de popup estejam desativados)" + password_reset: + continue: "Continuar para %{site_name}" emoji_set: apple_international: "Apple/Internacional" google: "Google" @@ -968,6 +1014,7 @@ pt_BR: title: "Ou pressione Ctrl+Enter" users_placeholder: "Adicionar um usuário" title_placeholder: "Sobre o que é esta discussão em uma pequena frase?" + title_or_link_placeholder: "Digite o título, ou cole um link aqui" edit_reason_placeholder: "por que você está editando?" show_edit_reason: "(adicione motivo da edição)" topic_featured_link_placeholder: "Entre com o link mostrado no título." @@ -1133,7 +1180,9 @@ pt_BR: first: são a primeira publicação pinned: está fixado unpinned: não está fixado + wiki: é uma wiki statuses: + label: Onde os tópicos open: está aberto closed: está fechado archived: está arquivado @@ -1282,6 +1331,8 @@ pt_BR: go_bottom: "último" go: "ir" jump_bottom: "ir para a última mensagem" + jump_prompt: "pular para..." + jump_prompt_of: "de %{count} publicações" jump_prompt_long: "Gostaria de ir para qual mensagem?" jump_bottom_with_number: "ir para a mensagem %{post_number}" total: total de mensagens @@ -1479,8 +1530,10 @@ pt_BR: edit: "Em resposta a {{link}} por {{replyAvatar}} {{username}}" edit_reason: "Motivo:" post_number: "resposta {{number}}" + wiki_last_edited_on: "wiki última vez editada em" last_edited_on: "resposta editada pela última vez em" reply_as_new_topic: "Responder como um Tópico linkado" + reply_as_new_private_message: "Responder como nova mensagem aos mesmos destinatários" continue_discussion: "Continuando a discussão do {{postLink}}:" follow_quote: "ir para a resposta citada" show_full: "Exibir mensagem completa" @@ -1513,6 +1566,7 @@ pt_BR: file_too_large: "Desculpe, o arquivo que você está tentando enviar é muito grande (o tamanho máximo permitido é {{max_size_kb}}kb). Que tal enviar o seu arquivo grande para um serviço de hospedagem na nuvem e depois compartilhar o link?" too_many_uploads: "Desculpe, você pode enviar apenas um arquivos por vez." too_many_dragged_and_dropped_files: "Desculpe, você só pode subir até 10 arquivos de cada vez." + upload_not_authorized: "Desculpe, o arquivo que você está tentando enviar não é permitido (extensões permitidas: {{authorized_extensions}})." image_upload_not_allowed_for_new_user: "Desculpe, novos usuário não podem enviar imagens." attachment_upload_not_allowed_for_new_user: "Desculpe, usuários novos não podem enviar anexos." attachment_download_requires_login: "Desculpe, você precisa estar logado para baixar arquivos anexos." @@ -1651,17 +1705,19 @@ pt_BR: hide: "Esconder revisão" show: "Exibir revisão" revert: "Reverter para esta revisão" + edit_wiki: "Editar Wiki" + edit_post: "Editar Postagem" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: title: "Exibir a saída renderizada com adições e remoções em linha" - button: ' HTML' + button: 'HTML' side_by_side: title: "Exibir as diferentes saídas renderizadas lado a lado" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "Mostrar a diferença da fonte crua lado-a-lado" - button: ' Cru' + button: 'Texto Bruto' category: can: 'pode… ' none: '(sem categoria)' @@ -1678,6 +1734,7 @@ pt_BR: tags_allowed_tag_groups: "Grupos de etiquetas que só podem ser usados nesta categoria:" tags_placeholder: "(Opcional) lista de etiquetas permitidas" tag_groups_placeholder: "(Opcional) lista de grupos de etiquetas permitidos" + topic_featured_link_allowed: "Permitir links em destaque nesta categoria" delete: 'Apagar categoria' create: 'Nova categoria' create_long: 'Criar uma nova categoria' @@ -1712,6 +1769,7 @@ pt_BR: email_in_disabled: "Postar novos tópicos via email está desabilitado nas Configurações do Site. Para habilitar respostas em novos tópicos via email," email_in_disabled_click: 'habilitar a configuração de "email em".' suppress_from_homepage: "Suprimir esta categoria da página inicial." + all_topics_wiki: "Tornar novos tópicos wikis por padrão." sort_order: "Ordenação Padrão:" allow_badges_label: "Permitir a concessão de emblemas nessa categoria" edit_permissions: "Editar Permissões" @@ -1757,6 +1815,7 @@ pt_BR: notify_action: 'Mensagem' official_warning: 'Aviso Oficial' delete_spammer: "Apagar Spammer" + delete_confirm_MF: "Você está prestes a remover {POSTS, plural, one {1 postagem} other {# postagens}} e {TOPICS, plural, one {1 tópico} other {# tópicos}} deste usuário, removendo a conta, bloqueando cadastro a partir do endereço IP {ip_address}, e adicionando o email dele {email} em uma lista de bloqueio permanente. Você tem certeza que este usuário é realmente um spammer?" yes_delete_spammer: "Sim, Apagar Spammer" ip_address_missing: "(N/D)" hidden_email_address: "(escondido)" @@ -1833,6 +1892,9 @@ pt_BR: one: "visualizar" other: "visualizações" replies: "Respostas" + views_long: + one: "este tópico foi visto uma vez" + other: "este tópico foi visto {{number}} vezes" activity: "Atividade" likes: "Curtidas" likes_lowercase: @@ -2101,6 +2163,8 @@ pt_BR: custom_message_placeholder: "Insira a sua mensagem personalizada" custom_message_template_forum: "Ei, você devia entrar neste fórum!" custom_message_template_topic: "Ei, eu acho que você vai gostar deste tópico!" + safe_mode: + enabled: "O modo seguro está habilitado. Para sair do modo seguro feche esta janela do navegador" admin_js: type_to_filter: "escreva para filtrar..." admin: @@ -2135,6 +2199,8 @@ pt_BR: backups: "backups" traffic_short: "Tráfego" traffic: "Solicitações do aplicativo pela web" + page_views: "Visualizações" + page_views_short: "Visualizações" show_traffic_report: "Mostrar Relatório de Tráfego Detalhado" reports: today: "Hoje" @@ -2277,6 +2343,7 @@ pt_BR: warn_local_payload_url: "Parece que você está tentando configurar um webhook para uma URL local. Eventos entregues a endereços locais podem causar efeitos colaterais ou comportamentos inesperados. Continuar?" secret_invalid: "O segredo não deve conter caracteres em branco." secret_too_short: "O segredo deve ter pelo menos 12 caracteres." + secret_placeholder: "Um texto opcional, usado para gerar assinatura" event_type_missing: "Você deve configurar apenas um tipo de evento." content_type: "Tipo de Conteúdo" secret: "Segredo" @@ -2292,12 +2359,14 @@ pt_BR: groups_filter: "Grupos Desencadeados" delete_confirm: "Deletar esse webhook?" topic_event: + name: "Evento do Tópico" details: "Quando existir um tópico novo, revisado, modificado ou deletado." post_event: name: "Publicar Evento" details: "Quando existir uma nova resposta, edição, deleção ou recuperação." user_event: name: "Evento de Usuário" + details: "Quando um usuário é criado, aprovado ou atualizado." delivery_status: title: "Status de Entrega" inactive: "Inativo" @@ -2522,6 +2591,7 @@ pt_BR: html: "html" text: "texto" last_seen_user: "Último Usuário Visto:" + no_result: "Nenhum resultado encontrado." reply_key: "Chave de Resposta" skipped_reason: "Ignorar Motivo" incoming_emails: @@ -2613,10 +2683,17 @@ pt_BR: revoke_admin: "revogar admin" grant_moderation: "conceder moderação" revoke_moderation: "revogar moderação" - backup_operation: "operação de backup" + backup_create: "criar backup" deleted_tag: "etiqueta removida" renamed_tag: "etiqueta renomeada" revoke_email: "revogar email" + lock_trust_level: "travar nível de confiança" + unlock_trust_level: "destravar nível de confiança" + activate_user: "ativar usuário" + deactivate_user: "desativar usuário" + change_readonly_mode: "alterar modo \"somente leitura\"" + backup_download: "Fazer download do backup" + backup_destroy: "destruir backup" screened_emails: title: "Emails Filtrados" description: "Quando alguém tenta cria uma nova conta, os seguintes endereços de email serão verificados e o registro será bloqueado, ou outra ação será executada." @@ -2917,6 +2994,7 @@ pt_BR: user_preferences: "Preferências de Usuário" tags: "Marcações" search: "Procurar" + groups: "Grupos" badges: title: Emblemas new_badge: Novo Emblema diff --git a/config/locales/client.ro.yml b/config/locales/client.ro.yml index a556f3b4a9..8eae67c914 100644 --- a/config/locales/client.ro.yml +++ b/config/locales/client.ro.yml @@ -234,7 +234,6 @@ ro: like_count: "Aprecieri" topic_count: "Subiecte" post_count: "Postări" - user_count: "Utilizatori noi" active_user_count: "Utilizatori activi" contact: "Contactează-ne" contact_info: "În cazul în care o problemă critică sau alt aspect urgent afectează site-ul, contactează-ne la %{contact_info}." @@ -651,7 +650,6 @@ ro: instructions: "Fundalul va fi centrat şi va avea o dimensiune standard de 590px." email: title: "Email" - instructions: "Emailul nu va fi făcut public." ok: "Îți vom trimite un email pentru confirmare." invalid: "Introduceți o adresă de email validă." authenticated: "Emailul a fost autentificat de către {{provider}}." @@ -662,22 +660,17 @@ ro: other: "Vom trimite un email doar dacă nu te-am văzut în ultimele {{count}} de minute." name: title: "Nume" - instructions: "Nume complet (opțional)" instructions_required: "Numele tău complet" too_short: "Numele este prea scurt." ok: "Numele tău este OK." username: title: "Nume utilizator" - instructions: "Unic, fără spații, scurt." short_instructions: "Ceilalți te pot menționa ca @{{username}}." available: "Numele de utilizator este disponibil." - global_match: "Emailul se potrivește numelui de utilizator înregistrat." - global_mismatch: "Numele este deja înregistrat. Încerci {{suggestion}}?" not_available: "Nu este disponibil. Încerci {{suggestion}}?" too_short: "Numele de utilizator este prea scurt." too_long: "Numele de utilizator este prea lung." checking: "Verifică disponibilitatea numelui de utilizator..." - enter_email: 'Nume de utilizator găsit. Introduceți adresa de email corespunzătoare.' prefilled: "Emailul se potrivește cu numele de utilizator înregistrat." locale: title: "Limba interfeței" @@ -776,7 +769,6 @@ ro: link_generated: "Link de invitare generat cu succes!" valid_for: "Link-ul de invitare este valid doar pentru următoarele adrese de email: %{email}" bulk_invite: - none: "Nu ai invitat încă pe nimeni aici. Poți trimite invitații individuale sau poți invita mai multe persoane odată încărcând un fișier CSV." text: "Invitație multiplă din fișier" success: "Fișier încărcat cu succes, vei fi înștiințat printr-un mesaj când procesarea este completă." password: @@ -786,7 +778,6 @@ ro: same_as_username: "Parolă identică cu numele de utilizator" same_as_email: "Parolă identică cu adresa de email" ok: "Parola dumneavoastră este OK." - instructions: "Trebuie minim %{count} (de) caractere." summary: title: "Sumar" stats: "Statistici" @@ -1451,9 +1442,6 @@ ro: pin_globally: "Promovează discuţia global" make_banner: "Adaugă statutul de banner" remove_banner: "Șterge statutul de banner" - reply: - title: 'Răspunde' - help: 'începe să scrii un răspuns la acest subiect' clear_pin: title: "Anulează subiect fixat" help: "Elimină subiectul fixat pentru a nu mai apărea la începutul listei de subiecte." @@ -1636,8 +1624,6 @@ ro: via_email: "această postare a sosit via email" via_auto_generated_email: "Această postare a sosit prin intermediul unui email auto-generat" whisper: "această postare este doar pentru moderatori (modul discret)" - wiki: - about: "această postare este un wiki" archetypes: save: 'Opțiuni de salvare' few_likes_left: "Îți mulțumim că împărtășești aprecierea! Mai ai doar câteva aprecieri pentru azi." @@ -1788,13 +1774,10 @@ ro: displays: inline: title: "Arată output-ul randat, cu adăugiri și ștergeri intercalate" - button: ' HTML' side_by_side: title: "Arată una lângă alta diferențele din output-ul randat" - button: ' HTML' side_by_side_markdown: title: "Arată una lângă alta diferențele din sursa brută" - button: ' Markdown' category: can: 'can… ' none: '(nicio categorie)' @@ -2779,7 +2762,6 @@ ro: revoke_admin: "Revocă titlul de Admin" grant_moderation: "Acordă titlul de Moderator" revoke_moderation: "Revocă titlul de Moderator" - backup_operation: "operație de backup" deleted_tag: "etichetă ștearsă" renamed_tag: "etichetă redenumită" revoke_email: "revoca email" diff --git a/config/locales/client.ru.yml b/config/locales/client.ru.yml index 6f639bddd7..f66164e948 100644 --- a/config/locales/client.ru.yml +++ b/config/locales/client.ru.yml @@ -572,7 +572,7 @@ ru: change: "изменить" moderator: "{{user}} - модератор" admin: "{{user}} - админ" - moderator_tooltip: "{{user}} - модератор" + moderator_tooltip: "Этот пользователь модератор" admin_tooltip: "{{user}} - админ" blocked_tooltip: "Этот пользователь заблокирован" suspended_notice: "Пользователь заморожен до {{date}}." @@ -646,6 +646,8 @@ ru: error: "(ошибка)" action: "Отправить письмо для сброса пароля" set_password: "Установить пароль" + choose_new: "Выберите новый пароль" + choose: "Выберите пароль" change_about: title: "Изменить информацию обо мне" error: "При изменении значения произошла ошибка." @@ -701,13 +703,11 @@ ru: instructions: "Уникальный, без пробелов и покороче" short_instructions: "Пользователи могут упоминать вас по псевдониму @{{username}}" available: "Псевдоним доступен" - global_match: "Адрес электронной почты совпадает с зарегистрированным псевдонимом" - global_mismatch: "Уже занято. Попробуйте {{suggestion}}?" not_available: "Недоступно. Попробуйте {{suggestion}}?" + not_available_no_suggestion: "Не доступно" too_short: "Псевдоним слишком короткий" too_long: "Псевдоним слишком длинный" checking: "Проверяю доступность псевдонима..." - enter_email: 'Псевдоним найден; введите адрес электронной почты' prefilled: "Адрес электронной почты совпадает с зарегистрированным псевдонимом" locale: title: "Язык интерфейса" @@ -807,10 +807,9 @@ ru: link_generated: "Пригласительная ссылка успешно создана!" valid_for: "Пригласительная ссылка действительна только для этого адреса электропочты: %{email}" bulk_invite: - none: "Вы еще никого не приглашали сюда. Вы можете отправить индивидуальные приглашения или пригласить группу людей сразу загрузив CSV файл." text: "Пригласить всех из файла" success: "Файл успешно загружен, вы получите сообщение, когда процесс будет завершен." - error: "Извините, но файл должен быть в csv формате." + error: "Извините, но файл должен быть в формате CSV." password: title: "Пароль" too_short: "Пароль слишком короткий." @@ -1011,33 +1010,44 @@ ru: requires_invite: "К сожалению, доступ к этому форуму только по приглашениям." not_activated: "Прежде, чем вы сможете войти на форум, вам необходимо активировать свою учетную запись. Мы отправили на почту {{sentTo}} подробные инструкции, как это cделать." not_allowed_from_ip_address: "С этого IP адреса вход запрещен." - admin_not_allowed_from_ip_address: "Вы не можете войти в качестве админа с этого IP адреса." + admin_not_allowed_from_ip_address: "Вы не можете войти в качестве администратора с этого IP адреса." resend_activation_email: "Щелкните здесь, чтобы мы повторно выслали вам письмо для активации учетной записи." sent_activation_email_again: "По адресу {{currentEmail}} повторно отправлено письмо с инструкциями по активации вашей учетной записи. Доставка сообщения может занять несколько минут. Имейте в виду, что иногда по ошибке письмо может попасть в папку Спам." - to_continue: "Войдите пожалуйста" + to_continue: "Пожалуйста, войдите" preferences: "Вам необходимо войти на сайт для редактирования настроек пользователя" - forgot: "Я не помню данные моего аккаунта" + forgot: "Я не помню данные моей учетной записи" + not_approved: "Ваша учетная запись еще не прошла проверку. После успешной проверки мы отправим вам письмо с уведомлением, и вы сможете входить в свою учетную запись." google: - title: "С помощью Google" + title: "Через Google" message: "Вход с помощью учетной записи Google (убедитесь, что блокировщик всплывающих окон отключен)" google_oauth2: - title: "С помощью Google" + title: "Через Google" message: "Вход с помощью учетной записи Google (убедитесь, что блокировщик всплывающих окон отключен)" twitter: - title: "С помощью Twitter" + title: "Через Twitter" message: "Вход с помощью учетной записи Twitter (убедитесь, что блокировщик всплывающих окон отключен)" instagram: - title: "через Instagram" + title: "Через Instagram" message: "Вход с помощью учетной записи Instagram (убедитесь, что блокировщик всплывающих окон отключен)" facebook: - title: "С помощью Facebook" + title: "Через Facebook" message: "Вход с помощью учетной записи Facebook (всплывающие окна должны быть разрешены)" yahoo: - title: "С помощью Yahoo" + title: "Через Yahoo" message: "Вход с помощью учетной записи Yahoo (убедитесь, что блокировщик всплывающих окон отключен)" github: - title: "С помощью GitHub" + title: "Через GitHub" message: "Вход с помощью учетной записи GitHub (убедитесь, что блокировщик всплывающих окон отключен)" + invites: + accept_title: "Приглашение" + welcome_to: "Добро пожаловать на %{site_name}!" + invited_by: "Вы были приглашены:" + your_email: "Ваш электронный адрес аккаунта %{email}." + accept_invite: "Принять приглашение" + success: "Ваш аккаунт создан и вы можете теперь войти." + password_label: "Установить пароль (опционально)" + password_reset: + continue: "Далее на %{site_name}" emoji_set: apple_international: "Apple/International" google: "Google" @@ -1312,8 +1322,10 @@ ru: few: "Вы выбрали {{count}} темы." many: "Вы выбрали {{count}} тем." other: "Вы выбрали {{count}} тем." - change_tags: "Изменить тэги" + change_tags: "Заменить теги" + append_tags: "Добавить теги" choose_new_tags: "Выбрать новые тэги для выбранных тем:" + choose_append_tags: "Выберите новые теги для добавления к этим темам:" changed_tags: "Теги этой темы были изменены." none: unread: "У вас нет непрочитанных тем." @@ -1507,11 +1519,8 @@ ru: make_banner: "Создать объявление" remove_banner: "Удалить объявление" reply: - post: - title: 'Ответить' - topic: - title: 'Ответить' - help: 'начать составление ответа к этой теме' + title: 'Ответить' + help: 'начать составление ответа к этой теме' clear_pin: title: "Открепить" help: "Открепить тему, чтобы она более не показывалась в самом начале списка тем" @@ -1875,7 +1884,8 @@ ru: hide: "Скрыть редакцию" show: "Показать редакцию" revert: "Откат до этой версии" - edit_wiki: "Редактирование вики" + edit_wiki: "Редактировать Wiki" + edit_post: "Редактировать запись" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -3029,6 +3039,7 @@ ru: refresh_browsers_message: "Сообщение отправлено всем клиентам!" show_public_profile: "Показать публичный профиль" impersonate: 'Представиться как пользователь' + action_logs: "Журнал действий" ip_lookup: "Поиск IP" log_out: "Выйти" logged_out: "Пользователь вышел с сайта на всех устройствах" diff --git a/config/locales/client.sk.yml b/config/locales/client.sk.yml index 27df271ba9..8ab7a4ac57 100644 --- a/config/locales/client.sk.yml +++ b/config/locales/client.sk.yml @@ -228,7 +228,6 @@ sk: like_count: "Páči sa mi" topic_count: "Témy" post_count: "Príspevky" - user_count: "Noví používatelia" active_user_count: "Aktívni používatelia" contact: "Kontaktujte nás" contact_info: "V prípade kritickej chyby alebo naliehavej záležitosti nás prosím konaktujte na %{contact_info}." @@ -574,7 +573,6 @@ sk: instructions: "Obrázky pozadia budú vystredené a s predvolenou šírkou 590px." email: title: "Email" - instructions: "Nikdy verejne nezobrazené" ok: "Pošleme vám email pre potvrdenie" invalid: "Zadajte prosím platný email" authenticated: "Váš email bude autentifikovaný pomocou {{provider}}" @@ -585,22 +583,17 @@ sk: other: "Odošleme vám email iba ak sme vás nevideli posledných {{count}} minút" name: title: "Meno" - instructions: "Vaše celé meno (nepovinné)" instructions_required: "Vaše celé meno" too_short: "Vaše meno je prikrátke" ok: "Vaše meno je v poriadku" username: title: "Používateľské meno" - instructions: "Unikátne, bez medzier, krátke" short_instructions: "Ostatní vás môžu zmieniť ako @{{username}}" available: "Vaše používateľské meno je voľné" - global_match: "Email zodpovedá registrovanému používateľskému menu" - global_mismatch: "Už zaregistrované. Skúste {{suggestion}}?" not_available: "Nie je k dispozícii. Skúste {{suggestion}}?" too_short: "Vaše používateľské meno je prikrátke" too_long: "Vaše používateľské meno je pridlhé" checking: "Kontrolujeme dostupnosť používateľského meno" - enter_email: 'Používateľské meno nájdené, zadajte zodpovedajúci email' prefilled: "Email zodpovedá tomuto registrovanému používateľskému menu" locale: title: "Jazyk rozhrania" @@ -697,7 +690,6 @@ sk: same_as_username: "Vaše heslo je rovnaké ako používateľské meno." same_as_email: "Vaše heslo je rovnaké ako e-mail." ok: "Vaše heslo je v poriadku." - instructions: "Minimálne %{count} znakov." summary: title: "Zhrnutie" stats: "Štatistiky" @@ -1287,9 +1279,6 @@ sk: pin_globally: "Pripni tému globálne" make_banner: "Banerová téma" remove_banner: "Odstrániť banerovú tému" - reply: - title: 'Odpovedať' - help: 'vytvor odpoveď k tejto téme' clear_pin: title: "Zruš pripnutie" help: "Zruší pripnutie tejto témy takže sa už viac nebude objavovať na vrchu Vášho zoznamu tém" @@ -1464,8 +1453,6 @@ sk: yes_value: "Áno, zahodiť." via_email: "tento príspevok prišiel emailom" whisper: "tento príspevok je súkromným šepotom pre moderátorov" - wiki: - about: "tento príspevok je wiki" archetypes: save: 'Uložiť možnosti' controls: @@ -1602,13 +1589,10 @@ sk: displays: inline: title: "Zobraz výstup vrátane pridaného a zmazaného v riadku" - button: ' HTML' side_by_side: title: "Zobraziť rozdiely v generovanom výstupe vedľa seba" - button: ' HTML' side_by_side_markdown: title: "Zobraziť rozdiely v pôvodnom zdroji vedľa seba" - button: ' Neupravený' category: can: 'môže … ' none: '(Bez kategórie)' diff --git a/config/locales/client.sq.yml b/config/locales/client.sq.yml index 43574895d4..04af490fe7 100644 --- a/config/locales/client.sq.yml +++ b/config/locales/client.sq.yml @@ -212,7 +212,7 @@ sq: like_count: "Pëlqime" topic_count: "Tema" post_count: "Postime" - user_count: "Përdorues të Rinj" + user_count: "Anëtarët" active_user_count: "Përdorues Aktivë" contact: "Na kontaktoni" contact_info: "Në rast të një problemi madhor ose të një çështjeje urgjente që prek faqen, ju lutemi të kontaktoni %{contact_info}." @@ -319,7 +319,33 @@ sq: total_rows: one: "1 anëtar" other: "%{count} anëtarë" + group_histories: + actions: + change_group_setting: "Ndrysho parametrin e grupit" + add_user_to_group: "Shto anëtar" + remove_user_from_group: "Hiq anëtar" + make_user_group_owner: "Bëje autor" + remove_user_as_group_owner: "Hiq autorin" groups: + logs: + title: "Ditari" + when: "Kur" + action: "Veprimi" + acting_user: "Anëtari veprues" + target_user: "Anëtari i prekur" + subject: "Subjekti" + details: "Detaje" + from: "Nga" + to: "Për" + edit: + title: 'Redakto Grupin' + full_name: 'Emri i plotë' + add_members: "Shto anëtarë" + delete_member_confirm: "Do të heqësh '%{username}' nga grupi '%{group}'?" + request_membership_pm: + title: "Kërkesë për anëtarësim" + body: "Do të doja të aplikoja për t'u bërë anëtar i grupit @%{groupName}." + name_placeholder: "Emri i grupit, pa hapësira, si username-t" add: "Shto" selector_placeholder: "Shto anëtarë" owner: "autori" @@ -550,7 +576,6 @@ sq: instructions: "Sfondi do të vendoset në qendër dhe do të ketë një gjerësi prej 590px." email: title: "Email" - instructions: "Nuk do të shfaqet asnjëherë publikisht" ok: "Do ju nisim emailin e konfirmimit" invalid: "Ju lutemi të vendosni një email të vlefshëm" authenticated: "Emaili juaj është verifikuar nga {{provider}}" @@ -560,22 +585,17 @@ sq: other: "Do t'ju dërgojmë një email vetëm nëse nuk të kemi parë në faqe në {{count}} minutat e fundit." name: title: "Emri juaj" - instructions: "Emri i plotë (fakultativ)" instructions_required: "Emri i plotë" too_short: "Emri juaj është shumë i shkurtër" ok: "Emri duket në rregull" username: title: "Emri i përdoruesit" - instructions: "Unik, pa hapësira, i shkurtër" short_instructions: "Anëtarët e tjerë mund t'ju përmendin si @{{username}}" available: "Emri është i disponueshëm" - global_match: "Email gjendet në emrin e përdoruesit të regjistruar" - global_mismatch: "Jeni regjistruar më parë. Provoni {{suggestion}}?" not_available: "Nuk është i disponueshëm. Provoni {{suggestion}}?" too_short: "Emri juaj është shumë i shkurtër" too_long: "Emri juaj është shumë i gjatë" checking: "Duke verifikuar disponibilitetin e emrit të përdoruesit...." - enter_email: 'Emri i përdoruesit u gjet; vendosni emailin përkatës' prefilled: "Emaili u gjet në këtë përdorues të regjistruar" locale: title: "Gjuha e faqes" @@ -678,7 +698,6 @@ sq: same_as_username: "Fjalëkalimi është i njëjtë me emrin e përdoruesit." same_as_email: "Fjalëkalimi është i njëjtë me adresën email." ok: "Fjalëkalimi është i pranueshëm." - instructions: "Të paktën %{count} shkronja." summary: title: "Përmbledhja" stats: "Statistikat" @@ -1267,12 +1286,6 @@ sq: pin_globally: "Ngjite temën globalisht" make_banner: "Temë banderolë" remove_banner: "Çaktivizo temën banderolë" - reply: - post: - title: 'Përgjigju' - topic: - title: 'Përgjigju' - help: 'nis shkrimin e një përgjigjeje në këtë temë' clear_pin: title: "Clear pin" help: "Hiqeni statusin \"e ngjitur\" të kësaj teme që të mos afishohet më në majë të listës së temave" @@ -1427,8 +1440,6 @@ sq: via_email: "ky postim u dërgua me email" via_auto_generated_email: "ky postim u krijua nga një email automatik" whisper: "ky postim është një pëshpëritje private për moderatorët" - wiki: - about: "kjo temë është wiki" archetypes: save: 'Ruaj opsionet' few_likes_left: "Ju falenderojmë! Ju kanë ngelur edhe disa pëlqime për sot." @@ -1555,13 +1566,10 @@ sq: 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: 'mund… ' none: '(pa kategori)' @@ -2304,25 +2312,70 @@ sq: skipped_reason_placeholder: "arsye" logs: title: "Ditari" + action: "Veprimi" created_at: "Krijuar" ip_address: "IP" + topic_id: "ID e temës" + post_id: "ID e postimit" + category_id: "ID e kategorisë" delete: 'Fshij' edit: 'Redakto' save: 'Ruaj' screened_actions: block: "blloko" + do_nothing: "mos bëj asgjë" staff_actions: title: "Veprime Stafi" + instructions: "Kliko emrat e anëtarëve apo veprimet për të filtruar listën. Kliko foton e profilit për të shkuar tek faqla e anëtarit. " + clear_filters: "Trego gjithshka" + staff_user: "Anëtari i stafit" + target_user: "Anëtari i prekur" + subject: "Subjekti" when: "Kur" + context: "Konteksti" details: "Detaje" + previous_value: "I kaluar" new_value: "I Ri" + diff: "Diff" + show: "Shfaq" modal_title: "Detaje" + no_previous: "Nuk ka vlerë të kaluar." + deleted: "Nuk ka vlerë të re. E dhëna u fshi." actions: + delete_user: "fshi anëtarin" change_trust_level: "ndrysho nivelin e besimit" + change_username: "ndrysho emrin e përdoruesit" + change_site_setting: "ndrysho parametrin e faqes" + change_site_customization: "ndrysho personalizimin e faqes" + delete_site_customization: "fshi personalizimin e faqes" + change_site_text: "ndrysho tekstin e faqes" + suspend_user: "pezullo anëtarin" + unsuspend_user: "çpezullo anëtarin" grant_badge: "dhuro stemë" revoke_badge: "tërhiq stemë" + check_email: "kontrollo emailin" + delete_topic: "fshi temën" + delete_post: "fshi postimin" + impersonate: "personifiko" + anonymize_user: "anonimizo përdoruesin" + roll_up: "roll up IP blocks" + change_category_settings: "ndrysho parametrat e kategorisë" + delete_category: "fshi kategorinë" + create_category: "krijo një kategori" + block_user: "blloko anëtarin" + unblock_user: "çblloko anëtarin" + grant_admin: "jepi rolin admin" + revoke_admin: "hiq rolin admin" + grant_moderation: "jepi rolin moderator" + revoke_moderation: "hiq rolin moderator" + backup_create: "krijo kopje" deleted_tag: "etiketë e fshirë" renamed_tag: "etiketë e riemëruar" + revoke_email: "hiq email" + lock_trust_level: "kyç nivelin e besimit" + unlock_trust_level: "çkyç nivelin e besimit" + activate_user: "aktivizo anëtarin" + deactivate_user: "çaktivizo anëtarin" screened_emails: title: "Kontroll Email-ash" actions: @@ -2395,7 +2448,11 @@ sq: title: "Shfaq adresën email të këtij përdoruesi." text: "Shfaq" user: + suspend_failed: "Pati një problem gjatë pezullimit të anëtarit. {{error}}" + unsuspend_failed: "Pati një problem gjatë çpezullimit të anëtarit. {{error}}" + suspend_duration: "Për sa kohë do të pezullohet anëtari?" suspend_duration_units: "(ditë)" + suspend_reason_label: "Pse po e pezulloni? Ky tekst do të shfaqet publikisht në profilin e këtij anëtari, dhe do t'i shfaqet vetë anëtarit si mesazh kur ky i fundit do tentojë të futet në faqe. Shkruani shkurt." suspend_reason: "Arsye" suspended_by: "Përjashtuar nga:" delete_all_posts: "Fshi gjithë postimet" @@ -2450,28 +2507,70 @@ sq: deleted: "Anëtari u fshi." send_activation_email: "Dërgo Emailin e Aktivizimit" activation_email_sent: "Një email aktivizimi u dërgua. " + send_activation_email_failed: "Pati një problem gjatë dërgimit të një mesazhi të ri email për aktivizimin e llogarisë. %{error}" activate: "Aktivizoni llogarinë" + activate_failed: "Pati një problem gjatë aktivizimit të anëtarit." + deactivate_account: "Çaktivizo llogarinë" + deactivate_failed: "Pati një problem gjatë çaktivizimit të anëtarit." + unblock_failed: 'Pati një problem gjatë çbllokimit të anëtarit.' + block_failed: 'Pati një problem gjatë bllokimit të anëtarit.' block_confirm: 'A jeni të sigurtë që doni të bllokoni këtë anëtar? Anëtari nuk do të ketë më të drejtën të krijojë postime ose tema të reja.' block_accept: 'Po, blloko anëtarin' + bounce_score: "Rezultati \"bounce\"" reset_bounce_score: label: "Rivendos" + title: "Rivendos në 0 rezultatin \"bounce\"" + deactivate_explanation: "Një anëtar i çaktivizuar duhet të ri-verifikojë adresën email." + suspended_explanation: "Një anëtar i pezulluar nuk ka të drejtë të identifikohet. " + block_explanation: "Një anëtar i bllokuar nuk mund të përgjigjet apo të hapë tema të reja. " + staged_explanation: "Një anëtar \"staged\" mund të postojë vetëm me email në tema të caktuara. " + bounce_score_explanation: + none: "Nuk ka patur mesazhe email të kthyera për këtë anëtar." + some: "Ka patur disa mesazhe emaili të kthyera për këtë adresë. " + threshold_reached: "Ka patur shumë mesazhe të kthyera për këtë adresë emaili. " trust_level_change_failed: "Nuk e ndryshuam dot nivelin e këtij anëtari. " + suspend_modal_title: "Pezullo anëtarin" + trust_level_2_users: "Përdorues me Nivel Besimi 2" + trust_level_3_requirements: "Kërkesat për përdorues me Nivel Besimi 3" + lock_trust_level: "Kyç nivelin e besimit" + unlock_trust_level: "Çkyç nivelin e besimit" tl3_requirements: + title: "Kërkesat për përdorues me Nivel Besimi 3" + table_title: + one: "gjatë ditës së fundit:" + other: "Në %{count} ditët e fundit:" value_heading: "Vlera" + requirement_heading: "Kërkesë" visits: "Vizita" days: "ditë" + topics_replied_to: "Përgjigje në kaq tema" + topics_viewed: "Tema të shikuara" + topics_viewed_all_time: "Temat e shikuara (total)" + posts_read: "Postimet e lexuara" + posts_read_all_time: "Postimet e lexuara (total)" flagged_posts: "Postimet e sinjalizuara" flagged_by_users: "Përdoruesit që sinjalizuan" likes_given: "Pëlqime të dhëna" likes_received: "Pëlqime të marra" likes_received_days: "Pëlqime të marra: ditë unike" likes_received_users: "Pëlqime të Marra: përdorues unikë" + qualifies: "I kualifikuar për nivelin e besimit 3" + does_not_qualify: "Nuk është i kualifikuar për nivelin e besimit 3" + will_be_promoted: "Do të promovohet së shpejti." + will_be_demoted: "Do të rikthehet së shpejti." + locked_will_not_be_promoted: "Niveli i besimit i kyçur. Nuk do të promovohet kurrë. " + locked_will_not_be_demoted: "Niveli i besimit i kyçur. Nuk do të rikthehet kurrë. " sso: title: "Single Sign On" + external_id: "ID i jashtëm" external_username: "Emri i përdoruesit" external_name: "Emri" external_email: "Email" + external_avatar_url: "URL e fotos së profilit" user_fields: + title: "Fushat e përdoruesit" + help: "Shto fusha që përdoruesit mund të plotësojnë." + create: "Krijo fushë përdoruesi" untitled: "Pa Titull" save: "Ruaj" edit: "Redakto" diff --git a/config/locales/client.sv.yml b/config/locales/client.sv.yml index 7a9800a447..b4e93048cc 100644 --- a/config/locales/client.sv.yml +++ b/config/locales/client.sv.yml @@ -326,14 +326,57 @@ sv: change_group_setting: "Ändra gruppinställningar" add_user_to_group: "Lägg till användare" remove_user_from_group: "Ta bort användare" + make_user_group_owner: "Gör till ägare" + remove_user_as_group_owner: "Återkalla ägare" groups: + logs: + title: "Loggar" + when: "När" + action: "Handling" + acting_user: "Agerar användare" + target_user: "Specifik användare" + subject: "Ämne" + details: "Detaljer" + from: "Från" + to: "Till" + edit: + title: 'Redigera grupp' + full_name: 'Fullständigt namn' + add_members: "Lägg till medlemmar" + request_membership_pm: + title: "Begäran om medlemskap" + body: "Jag skulle vilja ansöka om medlemskap i @%(namn på gruppen)." + name_placeholder: "Gruppnamn, inga mellanslag, samma regler som för användarnamn" + public: "Tillåt användare att delta/lämna gruppen av egen vilja (Kräver gruppen att vara synlig)" + empty: + posts: "Det är inga kommentarer från medlemmar i denna grupp" + members: "Det finns inga medlemmar i denna grupp" + mentions: "Det finns inga omnämnande av denna grupp" + messages: "Det finns inga meddelanden för denna grupp." + topics: "Det finns inga trådar från medlemmar av denna grupp" + logs: "Det finns inga loggar för denna grupp" add: "Lägg till" + join: "Gå med i grupp" + leave: "Lämna grupp" + request: "Förfrågan om att gå med i grupp" + automatic_group: Automatisk grupp + closed_group: Stängd grupp + is_group_user: "Du är en medlem av denna grupp" + allow_membership_requests: "Tillåt användare att sända medlemskaps förfrågan till gruppmedlemmar (Kräver att alla skall kunna nämna gruppen)" + membership: "Medlemskap" + name: "Namn" + user_count: "Antal medlemmar" + bio: "Om grupp" selector_placeholder: "Lägg till medlemmar" owner: "ägare" visible: "Gruppen är synlig för alla användare" + index: + title: "Grupper" + empty: "Det finns inga synliga grupper" title: one: "grupp" other: "grupper" + activity: "Aktivitet" members: "Medlemmar" topics: "Ämnen" posts: "Inlägg" @@ -365,6 +408,10 @@ sv: muted: title: "Tystad" description: "Du kommer aldrig att bli notifierad om något gällande nya ämnen i den här gruppen." + flair_bg_color_placeholder: "Hex färgvärde" + flair_color: "En Avatar som ändrar färg beroende på ljuset" + flair_preview_icon: "Förhandsvisa icon" + flair_preview_image: "förhandsvisa bild" user_action_groups: '1': "Gillningar givna" '2': "Gillningar mottagna" @@ -536,6 +583,8 @@ sv: error: "(fel)" action: "Skicka e-post för att återställa lösenord" set_password: "Ange lösenord" + choose_new: "Välj ett nytt lösenord" + choose: "Välj ett lösenord" change_about: title: "Ändra Om Mig" error: "Ett fel inträffade vid ändringen av det här värdet." @@ -570,7 +619,7 @@ sv: instructions: "Bakgrundsbilder kommer att vara centrerade och ha en standardbredd på 590 px." email: title: "E-post" - instructions: "Visas aldrig publikt" + instructions: "aldrig visat för allmänheten" ok: "Vi skickar e-post till dig för bekräftelse" invalid: "Vänligen ange en giltig e-postadress" authenticated: "Din e-postadress har blivit verifierad av {{provider}}" @@ -580,22 +629,19 @@ sv: other: "Vi skickar bara e-post om du inte synts till de senaste {{count}} minuterna." name: title: "Namn" - instructions: "Ditt fullständiga namn (valfritt)" + instructions: "ditt fullständiga namn (tillval)" instructions_required: "Ditt fullständiga namn" too_short: "Ditt namn är för kort" ok: "Ditt namn ser bra ut" username: title: "Användarnamn" - instructions: "Unikt, inga mellanrum, kort" + instructions: "unikt, inga mellanrum, kort" short_instructions: "Folk kan nämna dig som @{{username}}" available: "Ditt användarnamn är tillgängligt" - global_match: "E-postadressen matchar det registrerade användarnamnet" - global_mismatch: "Redan registrerat. Prova {{suggestion}}?" not_available: "Inte tillgängligt. Prova {{suggestion}}?" too_short: "Ditt användarnamn är för kort" too_long: "Ditt användarnamn är för långt" checking: "Kollar användarnamnets tillgänglighet..." - enter_email: 'Annvändarnamn hittat; ange matchande e-postadress' prefilled: "E-postadressen matchar det här registrerade användarnamnet" locale: title: "Gränssnittsspråk" @@ -702,7 +748,6 @@ sv: same_as_username: "Ditt lösenord är detsamma som ditt användarnamn." same_as_email: "Ditt lösenord är detsamma som din e-postadress." ok: "Ditt lösenord ser bra ut." - instructions: "Måste vara minst %{count} tecken lång." summary: title: "Sammanfattning" stats: "Statistik" @@ -884,6 +929,7 @@ sv: to_continue: "Var vänligen och logga in" preferences: "Du behöver logga in för att ändra dina användarpreferenser." forgot: "Jag kommer inte ihåg mina kontouppgifter" + not_approved: "Ert konto har inte blivit godkänt än. Du kommer att meddelas via email när det är klart att logga in." google: title: "med Google" message: "Autentiserar med Google (kolla så att pop up-blockare inte är aktiverade)" @@ -958,8 +1004,10 @@ sv: title: "eller tryck Ctrl+Enter" users_placeholder: "Lägg till en användare" title_placeholder: "Vad handlar ämnet om i en kort mening?" + title_or_link_placeholder: "Skriv in en titel, eller klistra in en länk här" edit_reason_placeholder: "varför redigerar du?" show_edit_reason: "(lägg till anledningar för redigering)" + topic_featured_link_placeholder: "Ange länken som visas med titeln" reply_placeholder: "Skriv här. Använd Markdown, BBCode eller HTML för formattering. Släpp eller klistra in bilder." view_new_post: "Visa ditt nya inlägg." saving: "Sparar" @@ -1107,9 +1155,12 @@ sv: label: I kategorin in_group: label: I gruppen + with_badge: + label: Med märke with_tags: label: Med taggar filters: + label: Sänd bara tillbaka ämnen/inlägg som... likes: Jag gillade posted: Jag postade i watching: Jag tittar @@ -1128,6 +1179,8 @@ sv: noreplies: har noll svar single_user: innehåller en ensam användare post: + count: + label: Minsta antalet inlägg time: label: Publicerad before: innan @@ -1268,6 +1321,7 @@ sv: go_bottom: "botten" go: "gå" jump_bottom: "hoppa till sista inlägget" + jump_prompt: "hoppa till" jump_prompt_long: "Vilket inlägg vill du hoppa till?" jump_bottom_with_number: "hoppa till inlägg %{post_number}" total: antal inlägg @@ -1338,8 +1392,8 @@ sv: make_banner: "Gör ämne till banderoll" remove_banner: "Ta bort banderollämne" reply: - title: 'Svara' - help: 'börja komponera ett svar till detta ämne' + title: 'svara' + help: 'Börja komponera ett svar på detta ämne' clear_pin: title: "Ta bort nål" help: "Ta bort den klistrade statusen från detta ämne så den inte längre hamnar i toppen av din ämneslista" @@ -1465,8 +1519,10 @@ sv: edit: "Redigerar {{link}} {{replyAvatar}} {{username}}" edit_reason: "Anledning:" post_number: "inlägg {{number}}" + wiki_last_edited_on: "Senast gången som wiki redigerades" last_edited_on: "inlägg senast ändrat den" reply_as_new_topic: "Svara som länkat ämne" + reply_as_new_private_message: "Svara som nytt meddelande till samma mottagare" continue_discussion: "Fortsätter diskussionen från {{postLink}}:" follow_quote: "gå till det citerade inlägget" show_full: "Via hela inlägget" @@ -1510,7 +1566,7 @@ sv: via_auto_generated_email: "det här inlägget anlände via ett autogenererat e-postmeddelande" whisper: "det här inlägget är en privat viskning för moderatorer" wiki: - about: "det här inlägget är en wiki" + about: "Detta inlägg är en wiki" archetypes: save: 'Spara inställningar' few_likes_left: "Tack för att du sprider kärleken! Du har bara några få gillningar kvar idag." @@ -1637,17 +1693,19 @@ sv: hide: "Göm version" show: "Visa version" revert: "Återgå till den här revisionen" + edit_wiki: "Uppdatera Wiki" + edit_post: "Ändra meddelandet" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: title: "Visa resultat med tillägg och borttagningar inline" - button: ' HTML' + button: 'HTML' side_by_side: title: "Visa skillnader i renderad utmatning sida vid sida" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "Visa skillnader i rådatan sida vid sida" - button: ' Rå' + button: 'Rå' category: can: 'can… ' none: '(ingen kategori)' @@ -1664,6 +1722,7 @@ sv: tags_allowed_tag_groups: "Grupptaggar som endast kan användas i den här kategorin:" tags_placeholder: "(Valfritt) lista av tillåtna taggar" tag_groups_placeholder: "(Valfritt) lista av tillåtna grupptaggar" + topic_featured_link_allowed: "Tillåt utvalda länkar i denna kategori" delete: 'Radera kategori' create: 'Ny kategori' create_long: 'Skapa en ny kategori' @@ -1698,6 +1757,8 @@ sv: email_in_disabled: "Att skapa nya ämnen via e-post är avaktiverat i webbplatsinställningarna. För att aktivera ämnen skapade via e-post," email_in_disabled_click: 'aktivera "inkommande e-post" inställningen.' suppress_from_homepage: "Undanta den här kategorin från hemsidan." + all_topics_wiki: "Gör nya inlägg till wikis som standard" + sort_order: "Standard slag:" allow_badges_label: "Tillåt utmärkelser i den här kategorin" edit_permissions: "Redigera behörigheter" add_permission: "Lägg till behörighet" @@ -1724,10 +1785,13 @@ sv: title: "Tystad" description: "Du kommer aldrig att notifieras om något som rör nya ämnen i de här kategorierna och de kommer inte att dyka upp i din olästa tabb." sort_options: + default: "Standard" likes: "Gillar" + op_likes: "Ursprungliga inlägget gillar" views: "Visningar" posts: "Poster" activity: "Aktiviteter" + posters: "Affischer" category: "Kategori" created: "Skapad" sort_ascending: 'Stigande' @@ -2083,6 +2147,8 @@ sv: custom_message_placeholder: "Skriv ditt personliga meddelande" custom_message_template_forum: "Hej! Du borde gå med i det här forumet!" custom_message_template_topic: "Hej! Jag tror att du kanske skulle uppskatta det här ämnet!" + safe_mode: + enabled: "Säkert läge är aktiverat, för att lämna säkert läge stäng detta webläsarfönster" admin_js: type_to_filter: "skriv för att filtrera..." admin: @@ -2117,6 +2183,8 @@ sv: backups: "säkerhetskopior" traffic_short: "Trafik" traffic: "Applikations-webbegäran" + page_views: "Sidvisningar" + page_views_short: "Sidvisningar" show_traffic_report: "Visa detaljerad trafikrapport" reports: today: "Idag" @@ -2255,6 +2323,8 @@ sv: payload_url_placeholder: "https://example.com/postreceive" secret_invalid: "Hemligheten får inte ha några blanka tecken." secret_too_short: "Hemligheten bör vara minst 12 tecken." + secret_placeholder: "En alternativ sträng, använd för att generera signature" + event_type_missing: "Du behöver sätta upp åtminstone en händelse." content_type: "Innehållstyp" secret: "Hemlighet" event_chooser: "Vilka event vill du ska utlösa den här webhooken?" @@ -2275,6 +2345,7 @@ sv: details: "När det finns ett nytt svar, redigerat, borttaget eller återskapat." user_event: name: "Användarevent" + details: "När en användare är skapad, godkänd eller uppdaterad." delivery_status: title: "Leveransstatus" inactive: "Inaktiv" @@ -2499,6 +2570,7 @@ sv: html: "html" text: "text" last_seen_user: "Senast sedd användare:" + no_result: "Inga resultat är funna." reply_key: "Svarsnyckel" skipped_reason: "Anledning för överhoppning" incoming_emails: @@ -2590,10 +2662,17 @@ sv: revoke_admin: "återkalla administratör" grant_moderation: "bevilja moderering" revoke_moderation: "återkalla moderering" - backup_operation: "säkerhetskopieringsdriften" + backup_create: "Skapa en säkerhetskopia" deleted_tag: "raderad tagg" renamed_tag: "omdöpt tagg" revoke_email: "återkalla e-post" + lock_trust_level: "lås förtroende nivån" + unlock_trust_level: "lås upp förtroende nivån" + activate_user: "aktivera användare" + deactivate_user: "avaktivera användare" + change_readonly_mode: "ändra skrivskyddat läge" + backup_download: "Ladda ner säkerhetskopia" + backup_destroy: "förstör säkerhetskopia" screened_emails: title: "Kontrollerad e-post" description: "När någon försöker skapa ett nytt konto, kommer följande e-postadresser att kontrolleras och registreringen blockeras, eller någon annan åtgärd vidtas." @@ -2894,6 +2973,7 @@ sv: user_preferences: "Användarinställningar" tags: "Taggar" search: "Sök" + groups: "Grupper" badges: title: Utmärkelser new_badge: Ny utmärkelse diff --git a/config/locales/client.te.yml b/config/locales/client.te.yml index 44b0764ac2..aaa765e9a8 100644 --- a/config/locales/client.te.yml +++ b/config/locales/client.te.yml @@ -143,7 +143,6 @@ te: like_count: "ఇష్టాలు" topic_count: "విషయాలు" post_count: "టపాలు" - user_count: "కొత్త సభ్యులు" active_user_count: "క్రియాశీల సభ్యులు" contact: "మమ్ము సంప్రదించండి" contact_info: "ఈ సంధర్భంలో క్లిష్టమైన సమస్య లేదా అత్యవసర విషయం సైట్ ను ప్రభావితం చేస్తుంది, దయచేసి మమ్మల్ని సంప్రదించండి %{contact_info}." @@ -339,27 +338,21 @@ te: instructions: "వెనుతలం బొమ్మలు కేంద్రీకరించబడతాయి మరియు అప్రమేయ వెడల్పు 590 పిక్సెలు ఉంటాయి." email: title: "ఈమెయిల్" - instructions: "జనాలకు ఎప్పుడూ చూపవద్దు" ok: "ద్రువపరుచుటకు మీకు ఈమెయిల్ పంపాము" invalid: "దయచేసి చెల్లుబాటులోని ఈమెయిల్ చిరునామా రాయండి" authenticated: "మీ ఈమెయిల్ {{provider}} చేత ద్రువీకరించబడింది" name: title: "పేరు" - instructions: "మీ పూర్తి పేరు (ఐచ్చికం)" too_short: "మీ పేరు మరీ చిన్నది" ok: "మీ పేరు బాగుంది" username: title: "వాడుకరి పేరు" - instructions: "ఏకైకం, జాగాలేని, పొట్టి" short_instructions: "జనాలు మిమ్మల్ని @{{username}} అని ప్రస్తావించవచ్చు" available: "మీ సభ్యనామం అందుబాటులో ఉంది." - global_match: "ఈమెయిల్ రిజిస్టరు అయిన సభ్యనామంతో సరిపోతోంది." - global_mismatch: "ఇప్పటికే రిజిస్టరు అయింది. {{suggestion}} ప్రయత్నించండి? " not_available: "అందుబాటులో లేదు. {{suggestion}} ప్రయత్నించండి?" too_short: "మీ సభ్యనామం మరీ చిన్నది" too_long: "మీ సభ్యనామం మరీ పొడుగు" checking: "సభ్యనామం అందుబాటు పరిశీలిస్తున్నాం..." - enter_email: 'సభ్యనామం కనిపించింది; సరిపోలు ఈమెయిల్ రాయండి' prefilled: "ఈమెయిల్ రిజిస్టరు అయిన సభ్యనామంతో సరిపోతోంది" locale: title: "ఇంటర్ఫేస్ భాష" @@ -418,7 +411,6 @@ te: same_as_username: "మీ సంకేతపదం మీ వినియోగదారుపేరు ని పోలి ఉంది." same_as_email: "మీ సంకేతపదం మీ ఈమెయిల్ ను పోలి ఉంది." ok: "మీ సంకేతపదం బాగుంది." - instructions: "కనీసం %{count} అక్షరాలు ఉండాలి." associated_accounts: "లాగిన్లు" ip_address: title: "చివరి ఐపీ చిరునామా" @@ -766,9 +758,6 @@ te: invisible: "అజ్జాబితాగా గుర్తించు" visible: "జాబితాగా గుర్తించు" reset_read: "చదివిన గణాంకాలను రీసెట్ చేయి" - reply: - title: 'జవాబు' - help: 'ఈ విషయానికి జవాబివ్వుట ప్రారంభించు' clear_pin: title: "గుచ్చు శుభ్రపరుచు" help: "ఈ విషయపు గుచ్చు స్థితి శుభ్రపరుచు. తద్వారా అది ఇహ అగ్ర భాగాన కనిపించదు" @@ -966,13 +955,10 @@ te: displays: inline: title: "వ్యవకలనాలు మరియు సంకలనాలను సాలు మధ్యలో చూపుతూ మొత్తం చూపు" - button: ' హెచ్ టీ యం టల్' side_by_side: title: "పక్క పక్కన తేడాలు చూపుతూ మొత్తం చూపు" - button: ' హెచ్ టీయంయల్' side_by_side_markdown: title: "ముడి మూల తేడాను పక్కపక్కన చూపు" - button: ' ముడి' category: can: 'can…' none: '(ఏ వర్గం లేదు)' diff --git a/config/locales/client.tr_TR.yml b/config/locales/client.tr_TR.yml index 0adfb2bf04..3a3f4347b7 100644 --- a/config/locales/client.tr_TR.yml +++ b/config/locales/client.tr_TR.yml @@ -560,6 +560,8 @@ tr_TR: error: "(hata)" action: "Parola Sıfırlama E-postası Gönder" set_password: "Parola Belirle" + choose_new: "Yeni bir parola seçiniz" + choose: "Paralo seçiniz" change_about: title: "Hakkımda'yı Değiştir" error: "Bu değeri değiştirirken bir hata oluştu." @@ -612,13 +614,11 @@ tr_TR: instructions: "Özgün, boşluksuz, kısa" short_instructions: "Kullanıcılar sizden @{{username}} olarak bahsedebilirler." available: "Kullanıcı adınız müsait" - global_match: "E-posta kayıtlı kullanıcı adıyla eşleşiyor" - global_mismatch: "Zaten kayıtlı. {{suggestion}} deneyin?" not_available: "Uygun değil. {{suggestion}} deneyin?" + not_available_no_suggestion: "Kullanılabilir değil" too_short: "Kullanıcı adınız çok kısa" too_long: "Kullanıcı adınız çok uzun" checking: "Kullanıcı adı müsait mi kontrol ediliyor..." - enter_email: 'Kullanıcı adı bulundu; eşleşen e-posta adresini girin' prefilled: "E-posta bu kullanıcı adı ile eşleşiyor" locale: title: "Arayüz dili" @@ -715,10 +715,10 @@ tr_TR: link_generated: "Davet linki başarılı bir şekilde oluşturuldu" valid_for: "Davet linki sadece bu adres için geçerlidir: %{email}" bulk_invite: - none: "Henüz kimseyi davet etmemiş görünüyorsun. İstersen bireysel davetler gönderebilir veya CSV dosyası yükleyerek bir çok insanı aynı anda davet edebilirsin." + none: "Henüz kimseyi davet etmediniz.. Kişsel davet gönderebilir , veya bir çok kişiyi CSV dosyası yüklerek toplu olarak davet edebilirsiniz.." text: "Dosyadan Toplu Davet Gönder" success: "Dosya başarıyla yüklendi, işlem tamamlandığında iletiyle bilgilendirileceksiniz." - error: "Üzgünüz, Dosya csv formatında olmalı" + error: "Üzgünüm, dosya CSV formatında olmak zorundadır." password: title: "Parola" too_short: "Parolanız çok kısa." @@ -899,6 +899,7 @@ tr_TR: to_continue: "Lütfen Giriş Yap" preferences: "Tercihlerinizi değiştirebilmek için giriş yapmanız gerekiyor." forgot: "Hesap bilgilerimi hatırlamıyorum" + not_approved: "Hesabınız henüz onaylanmış değil. Onaylandığında mail ile bilgilendirileceksiniz." google: title: "Google ile" message: "Google ile kimlik doğrulaması yapılıyor (pop-up engelleyicilerin etkinleştirilmediğinden emin olun)" @@ -920,6 +921,12 @@ tr_TR: github: title: "GitHub ile" message: "GitHub ile kimlik doğrulaması yapılıyor (pop-up engelleyicilerin etkinleştirilmediğinden emin olun)" + invites: + accept_title: "Davet" + welcome_to: "%{site_name} topluluğuna hoş geldiniz!" + invited_by: "Davet gönderen:" + password_reset: + continue: "%{site_name} devam edin" emoji_set: apple_international: "Apple/Uluslararası" google: "Google" @@ -1350,11 +1357,8 @@ tr_TR: make_banner: "Manşet Konusu" remove_banner: "Manşet Konusunu Kaldır" reply: - post: - title: 'Cevapla' - topic: - title: 'Cevapla' - help: 'bu konuya bir cevap oluşturmaya başlayın' + title: 'Cevapla' + help: 'bu konuya bir cevap oluşturmaya başlayın' clear_pin: title: "Başa tutturmayı iptal et" help: "Bu konunun başa tutturulması iptal edilsin ki artık konu listenizin en üstünde gözükmesin" @@ -1476,6 +1480,7 @@ tr_TR: wiki_last_edited_on: "wiki en son düzenlendi" last_edited_on: "gönderinin en son düzenlenme tarihi" reply_as_new_topic: "Bağlantılı Konu Olarak Cevapla" + reply_as_new_private_message: "Aynı alıcıyı yeni bir mesajla cevapla" continue_discussion: "{{postLink}} Gönderisinden tartışmaya devam ediliyor:" follow_quote: "alıntılanan iletiye git" show_full: "Gönderinin Tamamını Göster" @@ -1621,7 +1626,7 @@ tr_TR: hide: "Düzenlemeyi gizle" show: "Düzenlemeyi göster" revert: "Bu sürüme geri dön" - edit_wiki: "wiki düzenle" + edit_wiki: "Wiki'yi düzenle" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: diff --git a/config/locales/client.uk.yml b/config/locales/client.uk.yml index 48af95cb77..2f4ba0ff21 100644 --- a/config/locales/client.uk.yml +++ b/config/locales/client.uk.yml @@ -137,7 +137,6 @@ uk: like_count: "Вподобання" topic_count: "Теми" post_count: "Дописи:" - user_count: "Нові користувачі" active_user_count: "Діючі користувачі" contact: "Зв’язатися з нами" contact_info: "У випадку серйозних проблем з цим сайтом, будь ласка, зв’яжіться з нами через %{contact_info}." @@ -418,14 +417,12 @@ uk: invalid: "Будь ласка, введіть вірний email" name: title: "Ім'я" - instructions: "Ваше повне ім’я (необов’язково)" instructions_required: "Ваше повне ім’я" too_short: "Ваше ім’я надто коротке" ok: "Ваше ім’я виглядає добре" username: title: "Ім'я користувача" available: "Ваше ім'я доступне" - global_mismatch: "Вже зареєстровано. Спробуєте {{suggestion}}?" not_available: "Не доступно. Спробуєте {{suggestion}}?" too_short: "Ваше ім'я закоротке" too_long: "Ваше ім'я довге" @@ -838,9 +835,6 @@ uk: unarchive: "Розархівувати тему" archive: "Заархівувати тему" reset_read: "Скинути дані про прочитаність" - reply: - title: 'Відповісти' - help: 'почати складати відповідь на цю тему' clear_pin: title: "Відкріпити" help: "Скасувати закріплення цієї теми, щоб вона більше не з'являлася на початку Вашого переліку тем" @@ -971,10 +965,8 @@ uk: displays: inline: title: "Показати результат виведення зі змінами на місці" - button: ' HTML' side_by_side: title: "Показати бік-о-бік результати виведення" - button: ' HTML' category: can: 'може… ' none: '(без категорії)' diff --git a/config/locales/client.ur.yml b/config/locales/client.ur.yml index 30e4042e13..7655b9266b 100644 --- a/config/locales/client.ur.yml +++ b/config/locales/client.ur.yml @@ -279,6 +279,7 @@ ur: post_count_long: "پوسٹ کیے گئے جوابات" no_results: "کوئی نتائج نہیں پائے گئے۔" days_visited: "زائرین کی تعداد" + days_visited_long: "زیارت کے دن" posts_read: "پڑھ لیا گیا" posts_read_long: "پوسٹ جو پڑھ لی گئیں" total_rows: @@ -302,11 +303,160 @@ ur: details: "تفصیلات" from: "سے" to: "کے لئے" + edit: + title: 'گروپ میں ترمیم کریں' + full_name: 'پورا نام' + add_members: "اراکین شامل کریں" + delete_member_confirm: "'٪ {گروپ}' گروپ سے '٪ {صارف نام}' ہٹائیں؟" + request_membership_pm: + title: "رکنیت کی درخواست" + body: "میں @٪{گروپ کا نام} میں رکنیت کی درخواست دینا چاہتا ہوں۔" + name_placeholder: "گروپ کا نام، کوئی خالی جگہ نہیں، نامِ صارفین کے اصولوں کے مطابق" + public: "صارفین کو گروپ میں شامل ہونے یا اُسے چھوڑنے کی آزادانہ اجازت دی جائے (اِس کے لئیے گرپ کا ظاہر ہونا ضرورے ہے)" + empty: + posts: "اس گروپ کے ارکان کی طرف سے کوئی پوسٹس نہیں ہیں۔" + members: "اس گروپ میں کوئی ارکان ہیں۔" + mentions: "اس گروپ کے کوئی تذکرے موجود نہیں ہیں۔" + messages: "اس گروپ کے لئے فی الحال کوئی پیغامات نہیں ہیں۔" + topics: "اِس گروپ کے ارکان کی طرف سے کوئی ٹاپک نہیں ہیں۔" + logs: "اس گروپ کے لئے کوئی نوشتہ جات موجود نہیں ہیں۔" + add: "شامل کریں" + join: "گروپ میں شامل ہوں" + leave: "گروپ چھوڑ دیں" + request: "گروپ میں شمولیت کیلئے درخواست کریں" + automatic_group: خودکار گروپ + closed_group: بند گروپ + is_group_user: "آپ اس گروپ کے رکن ہیں" + allow_membership_requests: "صارفین کو گروپ کے مالکان کو ممبرشپ کی درخواست بھیجنے کی اجازت دیں (اِس کیلئے گروپ کا سب کی طرف سے قابلِ ذکرہونا ضروی ہے)" + membership: "ممبرشپ " name: "نام" + user_count: "ممبران کی تعداد" + bio: "گروپ کے بارے میں" + selector_placeholder: "ممبران شامل کریں" + owner: "مالِک" + visible: "گروپ تمام صارفین کو دکھائی دے" + index: + title: "گروپس" + empty: "کوئی نظر آنے والے گروپ موجود نہیں ہیں۔" + title: + one: "گروپ" + other: "گروپس" + activity: "سرگرمی" + members: "ممبران" + topics: "ٹاپک" + posts: "پوسٹ" + mentions: "ذکر" + messages: "پیغامات" + alias_levels: + title: "کون اِس گروپ کو پیغام بھیج سکتا اور@زکر کرسکتا ہے؟" + nobody: "کوئی بھی نہیں" + only_admins: "صرف منتظمین" + mods_and_admins: "صرف ثالث اور منتظمین" + members_mods_and_admins: "صرف گروپ کے اراکین، ثالث اور منتظمین" + everyone: "ہر کوئی" + trust_levels: + title: "ممبران کو شامل کرتے وقت خود کار طریقے سے دیا جانے والا ٹرسٹ لیول:" + none: "کوئی نہیں" + notifications: + watching: + title: "نظر رکھی ہوئی ہے" + description: "آپ کو ہر پیغام میں ہونے والی ہر نئی پوسٹ کے بارے میں مطلع کیا جائے گا، اور نئے جوابات کی گنتی دیکھائی جائے گی۔" + watching_first_post: + title: "پہلی پوسٹ پر نظر رکھی ہوئی ہے" + description: "آپ کو اِس گروپ کے ہر نئے ٹاپک میں صرف پہلی پوسٹ کے بارے میں مطلع کیا جائے گا۔" + tracking: + description: "اگر کوئی آپ کا @نام زکر کرتا ہے یا کوئی جواب دیتا ہے تو آپ کو مطلع کر دیا جائے گا، اور نئے جوابات کی گنتی دیکھائی جائے گی۔" + regular: + title: "عمومی" + description: "اگر کوئی آپ کا @نام زکر کرتا ہے یا کوئی جواب دیتا ہے تو آپ کو مطلع کر دیا جائے گا۔" + muted: + title: "خاموش کِیا ہوا" + description: "آپ کو اِس گروپ کے نئے ٹاپک کی کسی بھی چیز کے بارے میں کبھی بھی مطلع نہیں کیا جائے گا۔" + flair_url: "اوتار فلیر کی تصویر" + flair_url_placeholder: "(اختیاری) تصویر کا URL یا فونٹ اَوسم کلاس" + flair_bg_color: "اوتار فلیر کے پَسِّ منظر کا رنگ" + flair_bg_color_placeholder: "(اختیاری) ہیکس رنگ نمبر" + flair_color: "اوتار فلیر کا رنگ" + flair_color_placeholder: "(اختیاری) ہیکس رنگ نمبر" + flair_preview_icon: "آئکن کا مشاہدہ کریں" + flair_preview_image: "تصویر کا مشاہدہ کریں" + flair_note: "نوٹ: فلیر صرف ایک صارف کے بنیادی گروپ کے لئے دکھایا جائے گا۔" user_action_groups: + '1': "لائیکس دیے گئے" + '2': "لائیکس موصول ہوے" '3': "بُکمارکس" '4': "ٹاپکس" + '5': "جوابات" + '6': "جوابات" + '7': "تذکرے" + '9': "اقتباسات" + '11': "ترامیم" + '12': "بھیجی گئی اشیاء" + '13': "اِن باکس" + '14': "زیرِاِلتوَا" + categories: + all: "تمام زُمرَہ جات" + all_subcategories: "تمام" + no_subcategory: "کوئی نہیں" + category: "زمرہ" + category_list: "زمرہ جات کی فہرست ظاہر کریں" + reorder: + title: "زمرہ جات کو دوبارہ ترتیب دیں" + title_long: "زمرہ جات کی فہرست کو تنظیم نو کریں" + fix_order: "پوزیشن درست کریں" + fix_order_tooltip: "تمام زمرہ جات کی ایک منفرد پوزیشن نمبر نہیں ہے، جو غیر متوقع نتائج کا سبب بن سکتی ہے۔" + save: "محفوظ کردینے کا حکم" + apply_all: "لاگو کریں" + position: "پوزیشن" + posts: "پوسٹ" + topics: "ٹاپک" + latest: "تازہ ترین" + toggle_ordering: "ترتیب کاری کا کنٹرول ٹاگل کریں" + subcategories: "ذیلی زمرے" + topic_sentence: + one: "1 ٹاپک" + other: "%{شمار} ٹاپک" + topic_stat_sentence: + one: "%{شمار} نئے موضوعات پچھلے %{یونٹ} میں۔" + other: "%{شمار} نئے موضوعات پچھلے %{یونٹ} میں۔" + ip_lookup: + title: IP ایڈریس کا سراغ + hostname: ہوسٹ کا نام + location: محل وقوع + location_not_found: (نامعلوم) + organisation: ادارہ + phone: فون + other_accounts: "اسی IP ایڈریس والے دوسرے اکاؤنٹس:" + delete_other_accounts: "%{شمار} حذف کریں" + username: "صارف کا نام" + read_time: " پڑھنے کیلیئے درکار وقت" + topics_entered: " داخل ہوئے ٹاپک" + post_count: "# پوسٹ" + confirm_delete_other_accounts: "کیا آپ واقعی یہ اکاؤنٹس حذف کرنا چاہتے ہیں؟" + user_fields: + none: "(ایک آپشن منتخب کریں)" user: + said: "{{صارف کا نام}}:" + profile: "پروفائل" + mute: "خاموش کردیں" + edit: "ترجیحات میں ترمیم کردیں" + download_archive: + button_text: "میری پوسٹس ڈاؤن لوڈ کریں" + confirm: "کیا آپ واقعی اپنی پوسٹس ڈاؤن لوڈ کرنا چاہتے ہیں؟" + success: "ڈاؤن لوڈ کا آغاز کر دیا گیا ہے، عمل مکمل ہونے پر آپ کو پیغام کے ذریعے مطلع کر دیا جائے گا۔" + rate_limit_error: "پوسٹس فی دن ایک بار ہی ڈاؤن لوڈ کی جا سکتی ہیں، براہ مہربانی کل دوبارہ کوشش کریں۔" + new_private_message: "نیا پیغام" + private_message: "پیغام" + private_messages: "پیغامات" + activity_stream: "سرگرمی" + preferences: "ترجیحات" + expand_profile: "مزید کھولیں" + bookmarks: "بُکمارکس" + bio: "سائٹ کے بارے میں" + invited_by: "کی طرف سے مدعو کیا گیا:" + trust_level: "ٹرسٹ کا درجہ" + notifications: "اطلاعات" + statistics: "اعدادوشمار" desktop_notifications: each_browser_note: "نوٹ: آپ کو ہر براؤزر پر اس سیٹنگ کو تبدیل کرنا ہوگا." moderator_tooltip: "یہ صارف ایک ماڈریٹر ہے" diff --git a/config/locales/client.vi.yml b/config/locales/client.vi.yml index 36c359fac4..cb6eea0961 100644 --- a/config/locales/client.vi.yml +++ b/config/locales/client.vi.yml @@ -606,13 +606,10 @@ vi: instructions: "Duy nhất, không có khoảng trống, ngắn" short_instructions: "Mọi người có thể nhắc tới bạn bằng @{{username}}" available: "Tên đăng nhập của bạn có sẵn" - global_match: "Email đúng với username đã được đăng ký" - global_mismatch: "Đã đăng ký rồi. Thử {{suggestion}}?" not_available: "Chưa có sẵn. Thử {{suggestion}}?" too_short: "Tên đăng nhập của bạn quá ngắn" too_long: "Tên đăng nhập của bạn quá dài" checking: "Đang kiểm tra username sẵn sàng để sử dụng...." - enter_email: 'Đã tìm được tên đăng nhập. Điền thư điện tử phù hợp.' prefilled: "Thư điện tử trủng với tên đăng nhập này." locale: title: "Ngôn ngữ hiển thị" @@ -1287,12 +1284,6 @@ vi: pin_globally: "Ghim Chủ Đề Tổng Thể" make_banner: "Banner chủ đề" remove_banner: "Bỏ banner chủ đề" - reply: - post: - title: 'Trả lời' - topic: - title: 'Trả lời' - help: 'bắt đầu soạn phản hồi cho chủ đề này' clear_pin: title: "Xóa ghim" help: "Xóa trạng thái ghim của chủ đề này để nó không còn xuất hiện trên cùng danh sách chủ đề của bạn" @@ -1544,7 +1535,6 @@ vi: hide: "Ẩn sửa đổi" show: "Hiện sửa đổi" revert: "Hoàn nguyên sửa đổi" - edit_wiki: "Sửa wiki" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -2301,7 +2291,6 @@ vi: revoke_admin: "hủy bỏ quản trị" grant_moderation: "cấp điều hành" revoke_moderation: "hủy bỏ điều hành" - backup_operation: "hoạt động sao lưu" screened_emails: title: "Screened Emails" description: "Khi ai đó cố gắng tạo tài khoản mới, các địa chỉ email sau sẽ được kiểm tra và đăng ký sẽ bị chặn, hoặc một số hành động khác được thực hiện." diff --git a/config/locales/client.zh_CN.yml b/config/locales/client.zh_CN.yml index 665b4b7da8..1067ae28cd 100644 --- a/config/locales/client.zh_CN.yml +++ b/config/locales/client.zh_CN.yml @@ -194,7 +194,7 @@ zh_CN: like_count: "赞" topic_count: "主题" post_count: "帖子" - user_count: "新用户" + user_count: "用户" active_user_count: "活跃用户" contact: "联系我们" contact_info: "重要事件或紧急事件,请通过 %{contact_info} 联系我们。" @@ -560,6 +560,8 @@ zh_CN: error: "(错误)" action: "发送密码重置邮件" set_password: "设置密码" + choose_new: "输入新密码" + choose: "输入密码" change_about: title: "更改个人信息" error: "提交修改时出错了" @@ -594,7 +596,7 @@ zh_CN: instructions: "显示在用户卡片中,上传的图片将被居中且默认宽度为 590px。" email: title: "邮箱" - instructions: "不会公开显示" + instructions: "永不公开显示" ok: "将通过邮件验证确认" invalid: "请填写正确的邮箱地址" authenticated: "邮箱已经由 {{provider}} 验证了。" @@ -603,22 +605,20 @@ zh_CN: other: "仅在 {{count}} 分钟内没有访问时发送邮件给你。" name: title: "昵称" - instructions: "你的昵称(可选)" + instructions: "你的全名(可选)" instructions_required: "你的昵称" too_short: "昵称过短" ok: "昵称可用" username: title: "用户名" - instructions: "你注册的用户名" + instructions: "不重复,无空格,短" short_instructions: "其他人可以用 @{{username}} 来提及你" available: "用户名可用" - global_match: "邮箱与用户名匹配" - global_mismatch: "已被占用。试试 {{suggestion}} ?" not_available: "不可用。试试 {{suggestion}} ?" + not_available_no_suggestion: "不可用" too_short: "用户名过短" too_long: "用户名过长" checking: "查看用户名是否可用..." - enter_email: '找到此用户,请输入对应邮箱' prefilled: "邮箱与用户匹配成功" locale: title: "界面语言" @@ -715,9 +715,10 @@ zh_CN: link_generated: "邀请链接生成成功!" valid_for: "邀请链接只对这个邮件地址有效:%{email}" bulk_invite: - none: "你还没有邀请过任何人。你可以邀请一个人,或者上传 CSV 文件邀请一批人。" + none: "你还没有邀请任何人。你可以单独邀请,也可以通过 上传CSV文件批量邀请。" text: "通过文件批量邀请" success: "文件上传成功,当操作完成时将通过消息通知你。" + error: "抱歉,文件必须是CSV格式。" password: title: "密码" too_short: "密码过短" @@ -725,7 +726,7 @@ zh_CN: same_as_username: "密码不能与用户名相同" same_as_email: "密码不能与邮箱相同" ok: "密码符合要求" - instructions: "至少 %{count} 个字符" + instructions: "至少%{count}个字母。" summary: title: "概要" stats: "统计" @@ -898,6 +899,7 @@ zh_CN: to_continue: "请登录" preferences: "需要登入后更改设置" forgot: "我记不清账号详情了" + not_approved: "你的帐号还未通过审核。一旦审核通过,我们将邮件通知你。" google: title: "使用 Google 帐号登录" message: "正在通过 Google 帐号验证登录(请确保浏览器没有禁止弹出窗口)" @@ -919,6 +921,17 @@ zh_CN: github: title: "使用 GitHub 帐号登录" message: "正在通过 GitHub 帐号验证登录(请确保浏览器没有禁止弹出窗口)" + invites: + accept_title: "邀请" + welcome_to: "欢迎来到%{site_name}!" + invited_by: "邀请你的是:" + social_login_available: "你也可以通过任何使用这个邮箱的社交网站登陆。" + your_email: "你的帐户邮箱地址是%{email}。" + accept_invite: "接受邀请" + success: "已创建您的帐号,您现在可以登录了。" + password_label: "设置密码(可选)" + password_reset: + continue: "转入到 %{site_name}" emoji_set: apple_international: "Apple/国际化" google: "Google" @@ -1178,8 +1191,10 @@ zh_CN: choose_new_category: "选择新分类:" selected: other: "已选择 {{count}}个主题" - change_tags: "修改标签" + change_tags: "替换标签" + append_tags: "添加标签" choose_new_tags: "为主题选择新标签:" + choose_append_tags: "为这些主题添加新标签:" changed_tags: "主题的标签被修改" none: unread: "你没有未读主题。" @@ -1349,11 +1364,8 @@ zh_CN: make_banner: "横幅主题" remove_banner: "取消横幅主题" reply: - post: - title: '回复' - topic: - title: '回复' - help: '开始为该主题撰写回复' + title: '回复' + help: '开始撰写此主题的回复' clear_pin: title: "取消置顶" help: "取消本主题的置顶状态,将不再固定显示在主题列表顶部。" @@ -1472,8 +1484,10 @@ zh_CN: edit: "编辑 {{replyAvatar}} {{username}}发表的{{link}}" edit_reason: "理由:" post_number: "帖子 {{number}}" + wiki_last_edited_on: "维基最后修改于" last_edited_on: "最后修改于" reply_as_new_topic: "回复为联结主题" + reply_as_new_private_message: "向相同的收件人回复新消息" continue_discussion: "自 {{postLink}} 继续讨论:" follow_quote: "转到所引用的帖子" show_full: "显示所有帖子" @@ -1511,11 +1525,13 @@ zh_CN: via_email: "通过邮件发表的帖子" via_auto_generated_email: "通过自动生成邮件发表的帖子" whisper: "设置帖子为密语,只对版主可见" + wiki: + about: "这个帖子是维基" archetypes: save: '保存选项' few_likes_left: "谢谢你的热情!你今天的赞快用完了。" controls: - reply: "开始撰写该帖子的回复" + reply: "开始撰写本帖的回复" like: "赞一下此帖" has_liked: "已赞" undo_like: "取消赞" @@ -1617,17 +1633,18 @@ zh_CN: hide: "隐藏版本历史" show: "显示版本历史" revert: "还原至该版本" + edit_wiki: "编辑维基" + edit_post: "编辑帖子" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: title: "行内显示渲染后的页面,并标示增加和删除的内容" - button: ' HTML' + button: 'HTML' side_by_side: title: "并排显示渲染后的页面,分开标示增加和删除的内容" - button: ' HTML' + button: 'HTML' side_by_side_markdown: title: "并排显示源码,分开标示增加和删除的内容" - button: ' 原始' category: can: '能够… ' none: '(未分类)' @@ -1679,6 +1696,7 @@ zh_CN: email_in_disabled: "站点设置中已经禁用通过邮件发表新主题。欲启用通过邮件发表新主题," email_in_disabled_click: '启用“邮件发表”设置。' suppress_from_homepage: "不在主页中显示这个分类。" + show_subcategory_list: "在这个分类中把子分类列表显示在主题的上面" all_topics_wiki: "默认将新主题设为维基主题" sort_order: "默认排序:" allow_badges_label: "允许在这个分类中授予徽章" @@ -1796,6 +1814,8 @@ zh_CN: views_lowercase: other: "浏览" replies: "回复" + views_long: + other: "本主题已经被浏览过 {{number}} 次" activity: "活动" likes: "赞" likes_lowercase: @@ -2227,6 +2247,7 @@ zh_CN: warn_local_payload_url: "你好像将 webhook 指向了一个本地地址。把相关事件发送到本地可能产生副作用或未预期的行为。继续吗?" secret_invalid: "密钥不能包含空白字符。" secret_too_short: "密钥必须至少有 12 个字符。" + secret_placeholder: "可选字符,用于生成签名" event_type_missing: "你必须设置一个事件类型。" content_type: "内容格式" secret: "密钥" @@ -2564,10 +2585,17 @@ zh_CN: revoke_admin: "撤销管理员权限" grant_moderation: "授予版主权限" revoke_moderation: "撤销版主权限" - backup_operation: "备份操作" + backup_create: "创建备份" deleted_tag: "删除的标签" renamed_tag: "重命名的标签" revoke_email: "撤销邮件" + lock_trust_level: "锁定信任等级" + unlock_trust_level: "解锁信任等级" + activate_user: "已激活用户" + deactivate_user: "停用帐号" + change_readonly_mode: "更改只读模式" + backup_download: "下载备份文件" + backup_destroy: "删除备份" screened_emails: title: "被屏蔽的邮件地址" description: "当有人试图用以下邮件地址注册时,将受到阻止或其它系统操作。" @@ -2673,6 +2701,7 @@ zh_CN: refresh_browsers_message: "消息发送至所有用户!" show_public_profile: "显示公开介绍" impersonate: '检视角度' + action_logs: "操作日志" ip_lookup: "IP 查询" log_out: "退出" logged_out: "用户在所有设备都已退出" diff --git a/config/locales/client.zh_TW.yml b/config/locales/client.zh_TW.yml index c4fc3d2c7e..8e532fe295 100644 --- a/config/locales/client.zh_TW.yml +++ b/config/locales/client.zh_TW.yml @@ -560,6 +560,8 @@ zh_TW: error: "( 錯誤 )" action: "寄出重設密碼的郵件" set_password: "設定密碼" + choose_new: "選擇一個新密碼" + choose: "選擇一個密碼" change_about: title: "修改關於我" error: "修改設定值時發生錯誤" @@ -612,13 +614,11 @@ zh_TW: instructions: "獨一、無空格、短的" short_instructions: "其他人可以輸入 @{{username}} 提到你。" available: "你的用戶名稱可以使用。" - global_match: "電子郵件地址與註冊的用戶名稱相符。" - global_mismatch: "已經註冊過了,請試試看 {{suggestion}}?" not_available: "無法使用,請試試看 {{suggestion}}?" + not_available_no_suggestion: "不可使用" too_short: "你的用戶名稱太短。" too_long: "你的用戶名稱太長。" checking: "正在檢查用戶名稱是否已經有人使用..." - enter_email: '找到用戶名稱,請輸入相符的電子郵件地址。' prefilled: "電子郵件地址與此註冊的用戶名稱相符。" locale: title: "界面語言" @@ -715,10 +715,10 @@ zh_TW: link_generated: "邀請連結生成成功!" valid_for: "邀請連結只對這個郵件地址有效:%{email}" bulk_invite: - none: "你還沒有邀請過任何人。你可以邀請一個人,或者上傳 CSV 檔案邀請一批人。" + none: "你尚未邀請任何人。你可以發送個別邀請,或者透過上傳大量邀請檔一次邀請一群人。" text: "從檔案大量邀請" success: "檔案已上傳成功,處理完畢後將以私人訊息通知你。" - error: "抱歉,檔案應該要用 CSV 格式。" + error: "上傳的檔案必須是 csv 格式。" password: title: "密碼" too_short: "你的密碼太短。" @@ -899,6 +899,7 @@ zh_TW: to_continue: "請登入" preferences: "需要登入後更改設置" forgot: "我記不清賬號詳情了" + not_approved: "你的帳號尚未獲得批准。一旦你的帳號獲得批准,你會收到一封電子郵件。" google: title: "使用 Google 帳號" message: "使用 Google 帳號認証 (請確定你的網頁瀏覽器未阻擋彈出視窗)" @@ -920,6 +921,16 @@ zh_TW: github: title: "使用 GitHub" message: "使用 GitHub 認証 (請確定你的網頁瀏覽器未阻擋彈出視窗)" + invites: + accept_title: "邀請函" + welcome_to: "歡迎來到 %{site_name}!" + invited_by: "您被邀請,來自:" + your_email: "您帳號的電郵地址是 %{email}" + accept_invite: "接受邀請" + success: "你的帳號已被建立,且您已經登入了。" + password_label: "設定密碼(選填)" + password_reset: + continue: "繼續連接至 %{site_name}" emoji_set: apple_international: "Apple/國際化" google: "Google" @@ -1179,8 +1190,10 @@ zh_TW: choose_new_category: "為主題選擇新類別:" selected: other: "你已選擇了 {{count}} 個討論話題。" - change_tags: "修改標籤" + change_tags: "取代標籤" + append_tags: "添加標籤" choose_new_tags: "為主題選擇新標籤" + choose_append_tags: "為主題選擇新標籤" changed_tags: "主題的標籤被修改" none: unread: "沒有未讀的討論話題。" @@ -1350,11 +1363,8 @@ zh_TW: make_banner: "討論話題橫幅" remove_banner: "移除討論話題橫幅" reply: - post: - title: '回覆' - topic: - title: '回覆' - help: '開始編寫對此討論話題的回覆' + title: '回覆' + help: '開始編寫對此討論話題的回覆' clear_pin: title: "取消置頂" help: "取消討論話題的置頂狀態。" @@ -1622,6 +1632,7 @@ zh_TW: show: "顯示修訂紀錄" revert: "還原至該版本" edit_wiki: "編輯共筆" + edit_post: "編輯貼文" comparing_previous_to_current_out_of_total: "{{previous}} {{current}} / {{total}}" displays: inline: @@ -1684,6 +1695,7 @@ zh_TW: email_in_disabled: "\"用電子郵件張貼新的討論話題\"功能已被關閉。若要使用此功能," email_in_disabled_click: '請啟用"email in"功能' suppress_from_homepage: "不在首頁上顯示此分類。" + show_subcategory_list: "在此分類中,將子分類顯示在主題上方。" all_topics_wiki: "新的主題預設為共筆。" sort_order: "預設排序:" allow_badges_label: "允許授予本分類的徽章" @@ -2688,6 +2700,7 @@ zh_TW: refresh_browsers_message: "訊息已寄出給所有用戶!" show_public_profile: "顯示公開的基本資料" impersonate: '檢視角度' + action_logs: "操作紀錄" ip_lookup: "IP 反查" log_out: "登出" logged_out: "用戶已從所有裝置中登出" diff --git a/config/locales/server.ar.yml b/config/locales/server.ar.yml index 8ab4db7033..85e1056063 100644 --- a/config/locales/server.ar.yml +++ b/config/locales/server.ar.yml @@ -17,7 +17,7 @@ ar: date_only: "%-d %B %Y" long: "%-d %B %Y، %l:%M%P" date: - month_names: [null, يناير, فبراير, مارس, أبريل, مايو, يونيو, يوليو, أغسطس, سبتمبر, أكتوبر, نوفمبر, ديسمبر] + month_names: [null, January, February, March, April, May, June, July, August, September, October, November, December] <<: *datetime_formats time: am: "ص" @@ -25,16 +25,17 @@ ar: <<: *datetime_formats title: "دسكورس" topics: "المواضيع" - posts: "منشورات." - loading: "يحمّل" + posts: "المشاركات" + loading: "جار التحميل..." powered_by_html: 'تدعمه دسكورس ، يفضّل عرضه وجافاسكربت مفعّل' - log_in: "لِج" + log_in: "تسجيل الدخول" purge_reason: "تم حذفه تلقائيا كحساب مهمل وغير مُفعل" disable_remote_images_download_reason: "عُطّل تنزيل الصور عن بعد بسبب نفاذ مساحة القرص الحرّة." anonymous: "مجهول" + remove_posts_deleted_by_author: "حُذف بواسطة الكاتب" emails: incoming: - default_subject: "رسالة ورادة من %{email}" + default_subject: "يجب إضافة عنوان للموضوع" show_trimmed_content: "اظهر محتوى أقل" maximum_staged_user_per_email_reached: "أقصى عدد للدعوات التي يمكن للعضو إرسالها باليوم بالبريد الالكتروني." errors: @@ -71,6 +72,7 @@ ar: inclusion: غير متضمن في القائمة invalid: غير صالح is_invalid: "تبدو غير واضحة، هل هذه الجملة كاملة؟" + contains_censored_words: "الرسالة تحتوي على كلمات غير مسموح بها" less_than: يجب أن يكون أقل من %{count} less_than_or_equal_to: يجب أن تكون أقل من أو تساوي %{count} not_a_number: ليس عدد @@ -215,14 +217,14 @@ ar: rss_posts_in_topic: "مغذي RSS لـ'%{topic}'" rss_topics_in_category: "مغذي RSS للمواضيع في فئة '%{category}'" author_wrote: "كتب %{author}:" - num_posts: "المنشورات:" + num_posts: "المشاركات:" num_participants: "المشاركون:" read_full_topic: "اقرأ كامل الموضوع" private_message_abbrev: "رسالة" rss_description: latest: "آخر المواضيع" - hot: "عناوين ساخنة" - top: "أفضل المواضيع" + hot: "مواضيع نَشطة" + top: "مواضيع مميزة" posts: "اخر المشاركات " private_posts: "الرسائل الخاصة الآخيرة" group_posts: "احدث المشاركات من %{group_name} " @@ -230,7 +232,7 @@ ar: user_posts: "احدث المشاركات من %{group_name} " user_topics: " آخر المواضيع بواسطة @%{username}" tag: "مواضيع معلمة " - too_late_to_edit: "أُنشئ المنشور منذ فترة طويلة جدا، لذا تعديله أو حذفه لم يعد ممكنا." + too_late_to_edit: "تم انشاء هذا التعليق منذ فترة وليس بالامكان تعديله او حذفه" revert_version_same: "ألاصدار الحالي يتطابق مع نفس ألاصدار الذي تحاول استرجاعه ." excerpt_image: "صورة" queue: @@ -255,12 +257,12 @@ ar: trust_level_4: "مستوى_الثقة_4" education: until_posts: - zero: "لا منشورات" - one: "منشور واحد" - two: "منشوران" - few: "%{count} منشورات" - many: "%{count} منشورا" - other: "%{count} منشور" + zero: "لا يوجد مشاركات" + one: "مشاركة واحدة" + two: "مشاركتان" + few: "%{count} مشاركات" + many: "%{count} مشاركة" + other: "%{count} مشاركة" new-topic: | مرحبا بك في %{site_name} — **شكرا لك لأجل بدء محادثه جديدة!** @@ -281,45 +283,10 @@ ar: -نرحب بالنقد البناء، ولكن انتقد الأفكار ولا تنتقد الأشخاص! للمزيد, [انظر إرشادات المجتمع](/guidelines). هذه اللوحة ستظهر فقط لأول %{education_posts_text} لك. - avatar: | - ### ماذا عن صورة لحسابك؟ - - لقد شاركت بعض المواضيع والردود, لكن صورة ملف تعريفك ليست مميزة مثلك --هذه رسالة فقط؟ - - هل فكرت في ** [زيارة ملف التعريف الخاص بك] (%{profile_path})** ورفع الصورة التي تمثل لك؟ - - تسهل متابعة النقاشات وايجاد الاشخاص المهمين في المحادثة في حين أن الجميع لديه صورة حساب مميزة ! - sequential_replies: | - ### الرد على عدة مشاركات مرةً واحدة - - بدلاً من عدة ردود متتابعة على موضوع ما, فضلا رداً واحداً يتضمن اقتباسات من مشاركات سابقة أو @اسم كمراجع. - - تستطيع التعديل على ردك السابق لإضافة اقتباس بتضليلك النص و اختيارك زر quote reply الظاهر. - - يسهل على الكل قراءة المواضيع التي لها بعض الردود المتعمقة بدلاً من الكثير من الردود الفردية الصغيرة - dominating_topic: | - ### دع الآخرين ينضموا للمحادثة - - هذا الموضوع ذو أهمية واضحة بالنسبة لك – لقد شارك أكثر من {percent}% % من الردود هنا. - - هل أنت متأكد أنك توفر الوقت الكافي لأشخاص آخرين ليشاركوا وجهات نظرهم, أيضاً؟ - too_many_replies: | - ### لقد وصلت إلى حدود الرد في هذا الموضوع - - نحن آسفون ، ولكن الأعضاء الجدد محدودين مؤقتا %{newuser_max_replies_per_topic} بالردود على نفس الموضوع. - - بدلا من إضافة رد آخر، يرجى النظر في تحرير الردود السابقة، أو زيارة مواضيع أخرى. - reviving_old_topic: | - ### إحياء هذا الموضوع؟ - - آخر رد لهذا الموضوع هو الآن قبل %{days} يوم. ردُّك سيرفع الموضوع الى - أعلى القائمته وينبه أي شخص سبق وشارك في المحادثة. - - هل أنت متأكد أنك تردي الاستمرار في هذه المحادثة القديمة؟ activerecord: attributes: category: - name: "اسم الفئة" + name: "اسم القسم" topic: title: 'عنوان' post: @@ -357,7 +324,7 @@ ar: invalid: "رابط غير صالح. يجب أن يحتوي الرابط على http:// او https://. المساحة الفارغة غير مسموح بها." <<: *errors user_profile: - no_info_me: "
    مجال المعلومات عني لملف تعريفك فارغ حاليا، هل تريد أن تملأه؟
    " + no_info_me: "
    معلوماتك الشخصية لم يتم إضافتها بعد هل تريد إضافتها الآن؟
    " no_info_other: "
    %{name} لم يدخلوا أي شيء في مجال المعلومات عني لملفهم بعد
    " vip_category_name: "استراحة" vip_category_description: "فئة خاصة للمستخدمين ذوي مستوى الثقة 3 فأعلى." @@ -390,7 +357,7 @@ ar: [trust]: https://meta.discourse.org/t/what-do-user-trust-levels-do/4924 category: - topic_prefix: "عن فئة %{category}." + topic_prefix: "عن القسم %{category}." replace_paragraph: "(قم بإستبدال هذة القطعة بإختصار عن التصنيف الجديد. هذا الدليل سوف يظهر في منطقة إختيار التصنيف, لذا حاول ان تبقيها اقل من 200 حرف. ** حتي تقوم بتعديل هذا الوصف أو تقوم ب إضافة مقال, هذا التصنيف لن يظهر في صفحة التصنيفات**)" post_template: "%{replace_paragraph}\n\nإستخدم الفقرات الآتية لوضع وصف أطول ، أو لإنشاء تعليمات أو قوانيناً لفئة جديدة :\n\n- لماذا يجب على الأعضاء والزوار استخدام هذه الفئة ؟ ولم انشئت ؟\n\n- ما هو الاختلاف بين هذه الفئة والفئات الأخرى الموجودة في الموقع ؟\n\n- ما هي النقاط الأساسية والعامة التي يجب أن تحتويه المواضيع في هذه الفئة ؟\n\n- هل نحتاج حقا إلى هذه الفئة ؟ وهل نستطيع دمجها مع فئة رئيسية أو فئة فرعية أخرى ؟\n" errors: @@ -623,14 +590,11 @@ ar: other: "قبل حوالي %{count} سنة" password_reset: no_token: "آسفون، رابط تغيير كلمة المرور قديم جدا. انقر زر \"تسجيل الدخول\" واختر \"نسيت كلمة مروري\" لنرسل لك رابطا آخر." - choose_new: "من فضلك اختر كلمة مرور جديدة" - choose: "من فضلك اختر كلمة مرور" update: 'حدّث كلمة المرور' save: 'تعين كلمة المرور' title: 'إعادة تعين كلمة المرور' success: "غُيّرت كلمة مرورك بنجاح ونحن الآن قد سجلنا الدخول." success_unapproved: "غُيّرت كلمة مرورك بنجاح." - continue: "تابع إلى %{site_name}" change_email: confirmed: "حُدّث بريدك الإلكتروني." please_continue: "تابع إلى %{site_name}" @@ -654,10 +618,10 @@ ar: description: 'لا صلة للمشاركة بالنقاش الحالي على النحو المحدد بواسطة العنوان والمشاركة الأولى، وربما ينبغي نقلها لمكان أخر.' long_form: 'أبلغ أن هذا خارج الموضوع.' spam: - title: 'سخام' - description: 'هذا المنشور إعلان. المنشور ليس مفيد أو مرتبط بالموضوع الحالي، ولكنّه ترويجي فقط.' - long_form: 'علّم هذا على أنّه سخام' - email_title: '"%{title}" عُلّم على أنّه سخام' + title: 'مزعج' + description: 'هذه المشاركة لا تمت لإتجاهات الموقع بصله، ولكنها موجودة لدواعي الإعلان فقط. ' + long_form: 'علّم هذا على أنّه غير لائق' + email_title: '"%{title}" عُلّم على أنّه موضوع غير لائق' email_body: "%{link}\n\n%{message}" inappropriate: title: 'غير مناسب' @@ -665,7 +629,7 @@ ar: long_form: 'ترفع علم هذا عن صورة غير ملائمة' notify_user: title: 'أرسل رسالة إلى @{{username}}' - description: 'أود الحديث مع هذا الشخص مباشرة وعلى انفراد عن هذا المنشور.' + description: 'أود الحديث مع هذا الشخص مباشرة وعلى انفراد عن هذه المشاركة.' long_form: 'العضو أرسل' email_title: 'مشاركتك في "%{title}"' email_body: "%{link}\n\n%{message}" @@ -673,7 +637,7 @@ ar: title: "شيء آخر " description: 'يحتاج هذا المنشور إجراء من الطاقم لسبب آخر لم يُذكر أعلاه.' long_form: ' بَلِّغ عن هذا لتنبيه الطاقم ' - email_title: 'المنشور في "%{title}" يتطلب تنبيه الطاقم.' + email_title: 'المشاركة في "%{title}" تتطلب تنبيه المشرف.' email_body: "%{link}\n\n%{message}" bookmark: title: 'المفضلة' @@ -687,10 +651,17 @@ ar: title: 'تصويت' description: 'صوت لهذا المنشور' long_form: 'صوت لهذا المنشور' + user_activity: + no_bookmarks: + self: "ليس لديك اي مشاركات مفضلة، تفضيل المشاركات يتيح لك الوصول لها بسرعه لاحقاً. " + others: "ليس لديه مشاركات مُفضلة" + no_likes_given: + self: "لم تعطي اعجاب لأية مشاركة" + others: "لا يوجد اعجاب لاي مشاركة." topic_flag_types: spam: - title: 'مؤذي' - description: 'هذا الموضوع هو الإعلان. ليس من المفيد أو المناسب لهذا الموقع، ولكن الترويجية في الطبيعة.' + title: 'مزعج' + description: 'هذا الموضوع ليس له علاقة بإتجاهات الموقع ، انما هو لدواعي الإعلان فقط. ' long_form: 'ترفع علم هذا كدعاية' inappropriate: title: 'غير مناسب' @@ -733,6 +704,7 @@ ar: authorize: "منح الصلاحية" read: "قراءة" read_write: "قراءة/كتابة" + description: "\"%{application_name}\": يطلب الصلاحيات التالية لحسابك" no_trust_level: "عذرا، ليس لديك درجة الموثوقية الكافية لدخول واجهة برمجة التطبيق الخاصة بالمستخدم." scopes: message_bus: "تحديثات فورية" @@ -745,13 +717,13 @@ ar: xaxis: "يوم" yaxis: "عدد الزيارات" signups: - title: "الأعضاء جدد" + title: "أعضاء جدد" xaxis: "يوم" yaxis: "عدد الأعضاء الجدد" profile_views: - title: "مشاهدات ملف تعريف العضو" + title: "مشاهدات الحساب الشخصي للعضو" xaxis: "يوم" - yaxis: "عدد مشاهدات ملف تعريف العضو" + yaxis: "عدد مشاهدات الحساب الشخصي العضو" topics: title: "المواضيع" xaxis: "اليوم" @@ -890,8 +862,6 @@ ar: facebook_config_warning: 'تم تكوين الخادم للسماح بالتسجيل وتسجيل الدخول مع Facebook (enable_facebook_logins), لكن معرف العميل وعميل القيم السرية لم يعين. أذهب إلى إعدادات الموقعوتحديث الإعدادات. أنظر لهذا الدليل لمزيد من المعلومات.' twitter_config_warning: 'تم تكوين الخادم للسماح بالتسجيل وتسجيل الدخول مع Twitter (enable_twitter_logins), لكن معرف العميل وعميل القيم السرية لم يعين. أذهب إلى إعدادات الموقع وتحديث الإعدادات. أنظر لهذا الدليل لمزيد من المعلومات.' github_config_warning: 'تم تكوين الخادم للسماح بالتسجيل وتسجيل الدخول مع GitHub (enable_github_logins), لكن معرف العميل وعميل القيم السرية لم يعين. أذهب إلى إعدادات الموقع وتحديث الإعدادات. أنظر لهذا الدليل لمزيد من المعلومات.' - s3_config_warning: 'تم تهيئة الخادم لرفع ملفات إلى s3، لكن واحدة على الأقل من الإعدادات التالية لم تضبط: s3_access_key_id, s3_secret_access_key or s3_upload_bucket. أذهب إلى إعدادات الموقع وتحديث الإعدادات. انظر "كيف ترفع الصور المرفوعة إلى S3؟" لتعلم المزيد.' - s3_backup_config_warning: 'تم تهيئة الخادم لرفع نسخة احتياطية إلى s3، لكن واحدة على الأقل من الإعدادات التالية لم تضبط: s3_access_key_id, s3_secret_access_key or s3_backup_bucket. أذهب إلى إعدادات الموقع وتحديث الإعدادات. انظر "كيف ترفع الصور المرفوعة إلى S3؟" لتعلم المزيد.' image_magick_warning: 'تم تهيئة الخادم لإنشاء صور مصغرة للصور الكبيرة، لكن ImageMagick لم يثبت. ثبته باستخدام مدير الحزم المفضل لك أو حمل أحدث نسخة.' failing_emails_warning: 'يوجد %{num_failed_jobs} مهام بريد إلكتروني فشلت. تحقق من app.yml الخاص بك وتأكد من إعدادات خادم البريد أنها صحيحة. أنظر للمهام الفاشلة في Sidekiq.' subfolder_ends_in_slash: "إعدادات المجلدات الداخلية خاطئ;ال DISCOURSE_RELATIVE_URL_ROOT يجب ان تنتهي ب سلاش." @@ -932,7 +902,6 @@ ar: max_image_width: "أقصى عرض للصور المصغرة في مشاركة" max_image_height: "أقصى ارتفاع للصور المصغرة في مشاركة" category_featured_topics: "عدد المواضيع المعروضة لكل فئة من صفحة الفئات /categories .بعد تغير هذه القيمة, قد تستغرق صفحة الفئات 15 دقيقة لتُحَدّث." - show_subcategory_list: "اعرض قائمة الفئات الفرعية بدلاً من قائمة المواضيع عند ادخال فئة ما." fixed_category_positions: "إذا تم التحقق, ستتمكن من ترتيب الفئات على شكل المطلوب. وإذا لم يتم التحقق, ستسرد الفئات على حسب الفعالية." fixed_category_positions_on_create: "إذا تحققت، سيحفظ ترتيب الفئة في موضوع الحوار المنشأ (يتطلب fixed_category_positions)." add_rel_nofollow_to_user_content: "أضف rel nofollow لجميع محتوى المستخدم المتقدم، باستثناء الروابط الداخلية (بما في ذلك المجالات الأصل). إذا غيرت هذا، يجب عليك عمل rebake لكل المشاركات بـ: \"rake posts:rebake\"" @@ -1020,8 +989,6 @@ ar: invite_passthrough_hours: "كم المدة التي يمكن للعضو أن يستخدم مفتاح دعوة محرر سابقا لتسجيل الدخول، في الساعات" invite_only: "تم التعطيل التسجيل العام، تسجيل الأعضاء الجدد يجب أن يكون بدعوة من الأعضاء أو الطاقم." login_required: "أصلح التوثيق لقراءة الاتصال على هذا الموقع، لا تسمع بالوصول المجهول." - min_username_length: "الحد الأدنى لطول اسم العضو في الأحرف." - max_username_length: "الحد الأعلى لطول اسم العضو في الأحرف." reserved_usernames: "الأعضاء الغير مسموح لها بالتسجيل." min_password_length: "أقل طول لكلمة المرور" min_admin_password_length: "أقل طول مسموح به للكلمه مرور بالنسبه لاداري" @@ -1030,7 +997,7 @@ ar: verbose_sso_logging: "سجل باسهاب التشخيصات المرتبطة بتسجيل الدخول اﻷحادى (SSO) الى logs/" enable_sso_provider: "تنفيذ مزود بروتوكول Discourse SSO على نقطة نهاية /session/sso_provider, يتطلب sso_secret لتعينها" sso_secret: "السلسلة السرية استخدمت لتشفير مصادقة معلومات SSO, كن متأكداً أنها 10 حروف أو أكثر" - sso_overrides_bio: "تجاوز السيرة الزاتية بملف التعريف الخاص بالمستخدم ومنعه من تغيره. " + sso_overrides_bio: "تخطى التعريف المبسط بالعضو، ولا تسمح له بتغييره." sso_overrides_email: "يتجاوز البريد الاكتوني المحلي مع بريد موقع خارجي من حمولة SSO عند كل تسجيل دخول, ويمنع التتغيرات المحلية. (تحذير: ممكن يحدث تعارض بسبب الاختلاف طول اسم المستخدم/المتطلبات)" sso_overrides_username: "يتجاوز \"اسم المستخدم المحلي\" مع \"اسم مستخدم موقع خارجي\" من حمولة SSO عند كل تسجيل دخول, ويمنع التغيرات المحلية. (تحذير: ممكن يحدث تعارض بسبب الاختلاف طول اسم المستخدم/المتطلبات)" sso_overrides_name: "يتجاوز الاسم المحلي مع اسم موقع خارجي من حمولة SSO عند كل تسجيل دخول, ويمنع التغيرات المحلية. " @@ -1081,6 +1048,7 @@ ar: max_invites_per_day: "أقصى عدد للدعوات التي يمكن للعضو إرسالها باليوم." max_topic_invitations_per_day: "أقصى عدد لدعوات الموضوع التي يمكن للعضو إرسالها باليوم." alert_admins_if_errors_per_minute: "عدد الأخطاء في الدقيقة الواحدة لكى يرسل تنبيه للمدير. قيمة 0 تعطل هذه الميزة. ملاحظة: تتطلب إعادة تشغيل." + categories_topics: "عدد المواضيع المعروضة في الأقسام" suggested_topics: "عدد المواضيع المواضيع المقترحة يظهر في أسفل الموضوع." limit_suggested_to_category: "أظهر فقط المواضيع من الفئات الحالية في المواضيع المقترحة." clean_up_uploads: " يتيم أزالة تحديث غير مرجعية لمنع استضافة غير المشروعة. تحذير: قد تحتاج لعمل نسخة احتياطية من الدليل / تحميل قبل تمكين هذا الإعداد." @@ -1269,8 +1237,8 @@ ar: default_other_external_links_in_new_tab: "أفتح الروابط الخارجية في تبويب جديد إفتراضيا." default_other_enable_quoting: "فعل إقتباس الردود لتحديد النص إفتراضيا." default_other_dynamic_favicon: "إعرض عدد المواضيع الجديدة/الحديثة في أيقونة المتصفح إفتراضيا." - default_other_disable_jump_reply: "لا تتجاوز إلى مشاركة الضو بعد ردهم إفتراضيا." - default_other_like_notification_frequency: "أشعر المستخدمين بالاستحسان على المشورات افتراضياً" + default_other_disable_jump_reply: "لاتتجاوز الردود الى رد العضو مباشرة بعد اضافته رد جديد. " + default_other_like_notification_frequency: "اجعل تنبيه الأعضاء بالإعجابات الجديدة افتراضي. " default_topics_automatic_unpin: "تلقائياً قم إزالة تثبيت المواضيع عندما يصل العضو إلى الأسفل \"إفتراضيا\"." default_categories_watching: "قائمة الفئات التي تشاهد إفتراضيا." default_categories_tracking: "قائمة الفئات التي تتابع إفتراضيا." @@ -1292,7 +1260,7 @@ ar: search: within_post: "#%{post_number} بواسطة %{username}" types: - category: 'فئات' + category: 'الأقسام' topic: 'نتائج ' user: 'مستخدمين ' original_poster: "المشاركات الأصلية " @@ -1301,7 +1269,11 @@ ar: frequent_poster: "تكرار المشاركات " redirected_to_top_reasons: new_user: "مرحبا بكم في مجتمعنا! هذه هي المواضيع الأكثر شعبية الأخيرة." - not_seen_in_a_month: "مرحبا بعودتك! لم نرك منذ مدة. هذه أكثر المواضيع شعبية عندما كنت بعيدا." + not_seen_in_a_month: "مرحبا بعودتك! لم نرك منذ مدة. هذه أكثر المواضيع النشطة منذ آخر زيارة لك. " + merge_posts: + errors: + different_topics: "المشاركات من موضوعين مختلفين لايُمكن دمجهم" + different_users: "المشاركات من اعضاء مختلفين لايُمكن دمجهم" move_posts: new_topic_moderator_post: zero: "المشاركه التي انقسمت الي موضوع جديد: %{topic_link}" @@ -1358,19 +1330,19 @@ ar: many: "هذا الموضوع تم اغلاقه تلقائيا %{count} ايام بعد اخر رد. الردود الجديده غير مسموحه." other: "هذا الموضوع تم اغلاقه تلقائيا %{count} ايام بعد اخر رد. الردود الجديده غير مسموحه." autoclosed_enabled_lastpost_hours: - zero: "هذا الموضوع تم اغلاقه تلقائيا ب 1 ساعه بعد اخر رد.الردود الجديده غير مسموحه بعد الان." - one: "هذا الموضوع تم اغلاقه تلقائيا ب 1 ساعه بعد اخر رد.الردود الجديده غير مسموحه بعد الان." - two: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعات بعد اخر ردز الردود الجديده غير مسموحه بعد الان." - few: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعات بعد اخر ردز الردود الجديده غير مسموحه بعد الان." - many: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعات بعد اخر ردز الردود الجديده غير مسموحه بعد الان." - other: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعات بعد اخر ردز الردود الجديده غير مسموحه بعد الان." + zero: "هذا الموضوع تم اغلاقه تلقائيا بعد ساعة من اخر رد, الردود الجديده غير مسموح بها." + one: "هذا الموضوع تم اغلاقه تلقائيا بعد ساعة من اخر رد الردود الجديده غير مسموح بها." + two: "هذا الموضوع تم اغلاقه تلقائيا بعد ساعاتان من اخر رد الردود الجديده غير مسموح بها." + few: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعات من اخر رد، الردود الجديدة غير مسموح بها." + many: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعه من اخر رد، الردود الجديدة غير مسموح بها." + other: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} ساعه من اخر رد، الردود الجديدة غير مسموح بها." autoclosed_enabled_lastpost_minutes: - zero: "هذا الموضوع تم اغلاقه تلقائيا 1 دقيقه بعتد الرد الاخير.الردود الجديده غير مسموحه بعد الان" - one: "هذا الموضوع تم اغلاقه تلقائيا 1 دقيقه بعتد الرد الاخير.الردود الجديده غير مسموحه بعد الان" - two: "هذا الموضوع تم اغلاقه تلقائيا %{count} دقائق بعد اخر ردز الردود الجديده غير مسموحه." - few: "هذا الموضوع تم اغلاقه تلقائيا %{count} دقائق بعد اخر ردز الردود الجديده غير مسموحه." - many: "هذا الموضوع تم اغلاقه تلقائيا %{count} دقائق بعد اخر ردز الردود الجديده غير مسموحه." - other: "هذا الموضوع تم اغلاقه تلقائيا %{count} دقائق بعد اخر ردز الردود الجديده غير مسموحه." + zero: "هذا الموضوع تم إغلاقه تلقائياَ بعد دقيقة واحدة من آخر رد، الردود الجديدة غير مسموح بها. " + one: "هذا الموضوع تم إغلاقه تلقائياَ بعد دقيقة واحدة من آخر رد، الردود الجديدة غير مسموح بها. " + two: "هذا الموضوع تم اغلاقه تلقائيا بعد دقيقتان من آخر رد، الردود الجديدة غير مسموح بها." + few: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} دقائق من آخر رد، الردود الجديدة غير مسموح بها." + many: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} دقيقة من آخر رد، الردود الجديدة غير مسموح بها." + other: "هذا الموضوع تم اغلاقه تلقائيا بعد %{count} دقيقة من آخر رد، الردود الجديدة غير مسموح بها." autoclosed_disabled: "تم فتح هذا الموضوع الان ويسمح باضافة ردود جديدة " autoclosed_disabled_lastpost: "تم فتح هذا الموضوع الان ويسمح باضافة ردود جديدة " pinned_enabled: "هذا الموضوع الآن مقيد. سوف تظهر في الجزء العلوي من فئة لها حتى أنها متغيرة من الموظفين لكل فرد، أو بواسطة المستخدمين انفسهم." @@ -1418,6 +1390,8 @@ ar: ip_address: blocked: "لا يُسمح بتسجيل جديد من عنوان ip الخاص بك " max_new_accounts_per_registration_ip: "وفقًا لعنوان IP الخاص بك فقد تم حظر التسجيل (لقد وصلت للحد الأقصى المسموح به) تواصل مع أحد المشرفين." + website: + domain_not_allowed: "الموقع غير مسموح به، المواقع المسوح بها: %{domains}" flags_reminder: subject_template: zero: "لا يوجد تبليغات تنتظر التعامل معها" @@ -1430,24 +1404,10 @@ ar: subject_template: "اكد انك لا تريد استقبال بريد الكتروني من %{site_title} بعد ألان" invite_mailer: subject_template: "%{invitee_name} دعاك إلى '%{topic_title}' على %{site_domain_name}" - text_body_template: | - %{invitee_name} دعوتك لمناقشة - - > **%{topic_title}** - > - > %{topic_excerpt} - - at - - > %{site_title} -- %{site_description} - - إذا كنت مهتما، انقر على الرابط أدناه: - - %{invite_link} - - هذه الدعوة هي من مستخدم موثوق به، حتى تتمكن من الرد على مناقشة على الفور. invite_forum_mailer: subject_template: "%{invitee_name} قام بدعوتك للإنضمام إلى %{site_domain_name}" + custom_invite_forum_mailer: + subject_template: "%{invitee_name} دعاك لتنظم الى %{site_domain_name}" invite_password_instructions: subject_template: "تعيين كلمة مرور %{site_name} حسابك" text_body_template: | @@ -1484,7 +1444,11 @@ ar: deferred_and_deleted: "شكرا لاعلامنا تم ازالة هذا التعليق " temporarily_closed_due_to_flags: "هذا الموضوع مغلق مؤقتا بسبب عدد التبليغات الكبير للمجتمع." system_messages: + post_hidden: + title: "المشاركة مخفية" + subject_template: "المشاركة مخفية بتصويت الاعضاء" welcome_user: + title: "مرحباً " subject_template: "مرحبا بك في %{site_name}!" text_body_template: | شكراً لأنضمامك %{site_name}, ومرحباً بك! @@ -1521,12 +1485,6 @@ ar: ``` csv_export_succeeded: subject_template: "اكتمل تصدير البيانات" - text_body_template: | - صُدِّرَت بياناتك بنجاح ! :dvd: - - %{file_name} (%{file_size}) - - رابط التحميل أعلاه سيكون صالحاً لمدة 48 ساعة. csv_export_failed: subject_template: "فشل تصدير البيانات" text_body_template: "نحن آسفون، لكنه فشل تصدير البيانات الخاصة بك. يرجى التحقق من السجلات أو اتصل بأحد المشرفين." @@ -1587,6 +1545,7 @@ ar: unsubscribe: title: "غير مشترك " description: "لست مهتما في تلقي هذه الرسائل الالكترونيه؟ لا مشكله! اضغط تحت ليتم الغاء اشتركك فورا:" + visit_link_to_respond_pm: "[Visit Message](%{base_url}%{url}) للرد." posted_by: "مشاركة بواسطة %{username} على %{post_date}" user_invited_to_private_message_pm: subject_template: "[%{site_name}] %{username} دعاك لرسالة '%{topic_title}'" @@ -1676,8 +1635,8 @@ ar: إذا كان الرابط أعلاه غير قابل للنقر، حاول نسخه ولصقه في شريط العناوين في متصفح الويب عندك. page_not_found: - popular_topics: "شعبي " - recent_topics: "الأخيرة" + popular_topics: "نَشط" + recent_topics: "الأحدث" see_more: "المزيد" search_title: "البحث في الموقع" search_google: "غوغل" @@ -1704,7 +1663,7 @@ ar: no_user: "لا يمكنك إيجاد عضو بواسطة id %{user_id}" anonymous_user: "المستخدم مجهول" suspended_not_pm: "عضو موقوف، ليست رسالة" - seen_recently: "تم رؤية هذا المستخدم مسبقاً" + seen_recently: "تم رؤية هذا المستخدم مؤخراً" post_not_found: "تعذر إيجاد المشاركة ذات المعرف %{post_id}" notification_already_read: "تم قراءة هذه الاشعارات " topic_nil: "مشاركة.موضوع صفر" @@ -1729,235 +1688,36 @@ ar: guidelines_topic: title: "الأسئلة الشائعة/توجيهات" body: | - + اهلاً بك معنا، - ## [هذا مكان راقي للنقاشات العامة](#الراقي) - الرجاء التعامل في هذا المنتدى بنفس الاحترام الذي يكون في حديقة عامة، نحن أيضًا مجتمع مشارك للمصدر و — المكان هنا لتبادل المهارات والمعرفة والاهتمامات عبر الحوارات. + إن هذا الموقع يتيح لجميع مستخدمية حرية التعبير ومشاركة المعلومة مع الآخرين بدون أي قيود إلا اننا نتوقع منك الإلتزام بالأداب العامة، وعكس صورة جميلة عن شخصيتك. - هذه ليست شروط صارمة و سريعة، مجرد مساعده لحفظ حقوق الأشخاص في مجتمعنا، استخدام هذه المبادئ والتوجيهات يساعد في الحفاظ على الجتمع جيدًا للنقاشات الراقية. + نحن هنا نبحث عن الفائدة اولاً ونحث على مشاركتها مع الآخرين فأجعل مشاركاتك مفيدة قدر المستطاع، وتذكر ان شخص ما قد يستفيد منها ويدعو لك دعوة في ظهر الغيب. - + - تقبل اراء الآخرين حتى لو كانت مختلفة عن ارائك الشخصية. + - الأختلاف يكون بالفكرة نفسها وليس ضد صاحب الفكرة. + - النقاش المثري والصحي يعود بالفائدة للجميع. - ## [تحسين النقاشات](#تحسين) - ساعدنا على جعل هذا المكان جيد للمناقشة، من خلال العمل الدائم لتحسين المناقشات ببعض الطرق، مهما كانت صغيرة، اذا لم تكن متأكدًا أن ما تكتبه سيضيف قيمة، فكر فيما ستكتبه وحاول مرة أخرى في وقت لاحق. - - الموضوعات التي تتم مناقشتها هنا مهمة بالنسبة لنا، ونريد منك أن تناقشها كما لو أنها مهمة بالنسبة لك، احترم الموضوعات والاشخاص، حتى لو لم تكن متفقًا مع بعض ما يقال. - - أحد طرق تحسين النقاش هو اكتشاف ما يجري، يرجى قضاء بعض الوقت في تصفح المواضيع هنا قبل الرد أو نشر موضوعك، لتكون لديك فرصة افضل في تلبية حاجات الآخرين اللذين يشاركونك اهتماماتك. - - - - ## [تقبل الآخرين، حتى لو كنت غير متفق](#تقبل) - - قد ترغب في الرد على من اختلفت معهم، هذا جيد/ ولكن تذكر، انتقد الافكار وليس الأشخاص، يرجى تجنب : - - * الاهانة. - * الشخصنة : انتقاد الشخص لا الفكرة . - * الرد على اسلوب المنشور بدلا من المضمون الفعلي. - * لا تحتسب المتناقضات. - بدلا من ذلك، وفر الأدلة البينة التي تعمل على تحسين المحادثة. - - - - ## [مشاركاتكم](#شارك) - - المحادثات التي تكون لدينا متناغمة مع الجميع، ساعدونا في التأثير على مستقبل المجتمع، عن طريق مناقشة ما يجعل لهذا المنتدى أهمية و — وتجنب غير ذلك. - - يوفر النقاش الأدوات التي تمكن الجميع من معرفة أفضل (واسوأ) المشاركات: كالمفضلة، العلامات المرجعية، الاعجابات، البلاغات، الردود، التعديلات، وما الى ذلك. استخدمها لتحسين تجربة الجميع. - دعونا نحاول ترك المكان أفضل مما كان. - - - - ## [اذا رأيت مشكلة، بلّغ عنها ](#الابلاغ-عن-المشاكل) - - المشرفون لديهم سلطة خاصة، وهم مسؤولون عن هذا المنتدى، ولكن حتى أنتم بمساعدتكم، يستطيع المشرفون تسيير المجتمع، ليس عمال النظافة أو الشرطة. - - عندما ترى سلوك سيئ، لا ترد عليه، وتشجع السلوك السيئ بالاعتراف به، وتستهلك طاقتك، قم بالإبلاغ عنه، اذا وصلت بلاغات بما فيه الكفاية، سيتم اتخاذ الإجراءات اللازمة، اما تلقائيا، أو عن طريق مشرف. - - من أجل الحفاظ على سلامة المجتمع، المشرفين لديهم الحق في إزالة اي محتوى أو حذف أي حساب لأي سبب في اي وقت، المشرفون لا يتابعون جميع المنشورات الجديدة بأي شكل كان، المشرفون ومشغلوا الموقع لا يتحملون أية مسؤولية عن اي محتو يتم نشره بواسطة المجتمع. - - - - ## [دائما كن محترما](#محترم) - - لا شيء يخرب المحادثة الجيدة، مثل الوقاحة: - - * كم محترمًا، لا تنشر أي شيء تهجمي، أو خطاب كراهية. - * ابق المجتمع نظيفا، لا تنشر أي شيء فاحش أو جنسي صريح. - * احترم الآخرين، لا تضايق أو تحزن شخص، لا تنتحل شخصية أحد آخر، أو تنشر معلوماتهم الخاصة. - * احترم منتدانا، لا تعمل ازعاجا - spam - أو تخرب أو خلاف ذك في المنتدى. - - هذه المصطلحات ليست محددة مع تعريف دقيق و — عليك تجنب ظهور اي من هذه الأشياء. اذا كنت غير مقتنع، أسال نفسك ما ذا سيكون شعورك اذا نشرت على الصفحة الاولى في صحيفة نيويورك تايمز. - هذا منتدى عام، ومؤشرات محركات البحث تحتوي هذه النقاشات، حافظ على اللغة، الروابط والصور الآمنة للعائلة والاصدقاء. - - - - ## [حافظ عليه مرتبا](#المحافظة-على-الترتيب) - - أبذل مزيدا من الجهد في وضع الأمور في مكانها المناسب، حتى نتمكن من قضاء المزيد من الوقت في المناقشات ونقلل من التنظيف، هكذا: - - * لا تبدأ موضوع في قسم غير مناسب. - * لا تنشر نفس المشاركة في مواضيع متعددة. - * لا ترد ردودا دون محتوى مناسب. - * لا تحول مسار الموضوع من المنتصف. - * لا توقع مشاركاتك أو — كل منشوراتك مرتبطة بمعلومات ملفك الشخصي. - - بدلا من كتابة "+1" أو كتابة " نتفق عليه "، استخدم زر أعجبني، من أخذ المواضيع لمواضيع مختلفة جذريا، استخدم ردا برابط الموضوع مرتبط . - - - - ## [انشر فقط شيء تملكه](#سرقة) - لا تستيطع نشر أي شيء رقمي يملكه شخص آخر دون إذن، لا تستطيع نشر وصف، رابط ، أو سرقة ممتلكات شخص ما الفكرية(البرامج والفيديو والصوت والصور)، أو انتهاك اي قانون آخر. - - - - ## [بدعم منك](#دعم) - - يتم تشغيل هذا الموقع من قِبل [friendly local staff](/about) وأنت، و المجتمع، إذا كان لديك اي أسئلة أخرى حول كيف تعمل الأشياء هنا، افتح موضوع جديد في [site feedback category](/c/site-feedback)وأُدعنا للمناقشة! إذا كان هناك أي قضية حرجة أو حاجة ماسة لم يتم التعامل معها بموضوع ميت أو أو بلاغ، اتصل بنا عبر [staff page] (/about). - - - - ## [شروط الخدمة](#شروط-الخدمة) - - نعم، الكلام القانوني ممل، ولكن يجب أن نحمي أنفسنا و – من الاشخاص الغير ودودين، لدينا [Terms of Service](/tos) وصف لك (ولنا) السلوك والحقوق ذات الصلة بالمحتوى والخصوصية، لاستخدام هذه الخدمة، يجب أن توافق على التزامك بالشروط والقوانين[TOS](/tos). + شكراً لوقتك .. tos_topic: title: "شروط الخدمة" body: | - الشروط والأحكام التالية تنظم كل استخدام لموقع الـ%{company_domain} وكل الاتصالات, الخدمات أو المنتجات المتوفرة في الموقع أو من خلاله, بما فيه, لكن لا يقتصر على برنامج منتدى , %{company_domain}, %{company_domain} و دعم منتدى و %{company_domain} خدمة استضافة ("الاستضافة"), (جمعناها معا, الموقع). الموقع تعود ملكيته إلى %{company_full_name} ("%{company_name}"). الموقع يعرض المواضيع المقبولة منك بدون تعديل لجميع الشروط والأحكام الواردة في هذه الوثيقة وجميع قواعد التشغيل الأخرى, والسياسات (بما فيها, على سبيل المثال لا الحصر, %{company_domain}’s [Privacy Policy](/privacy) و [Community Guidelines](/faq)) والإجراءات التي يمكن أن تصدر من وقت لآخر على هذا الموقع بواسطة %{company_name} (جماعي, و "الاتفاقية"). + رسالتنا : - رجاءً إقرأ الاتفاقية جيدا قبل الوصول واستخدام الموقع. عن طريق الوصول أو استخدام أي جزء للموقع, أنت توافق على أن تكون ملزما بالشروط والأحكام لهذه الاتفاقية. إذا لم توافق على جميع الشروط والأحكام في هذه الإتفاقية, فإنك ربما لن تصل للموقع أو لن تستخدم أي من خدماته. إذا اعتبرت هذه الشروط والأحكام اقتراح بواسطة %{company_name},القبول يقتصر على الوضوح في هذه الشروط. الموقع متوفر فقط للأفراد الذين أعمارهم لا تقل عن 13 سنة. + نحن في الموقع كإدارة نحاول النهوض بالمستوى المهني على الصعيد االمحلي بشكل كامل وإثراء الموقع وتسهيل التواصل بين ذوي الخبرة وحديثين التخرج بمواضيع تخدم المهتمين وذوي الإحتياج وتثري النقاشات المهنية المتعددة الهادفة إلى الرقي بالفكر المهني ونساعد إلى تكوين فكر واعي ومطلع على الجديد وبما يتعلق بإهتماماتنا. - + المشاركة في جميع اقسام الموقع مجانية ومتاحة للجميع لكن عليك الإلتزام بالشروط التالية: - ## [1. حسابك في %{company_domain}](#1) + 1- عدم استخدام الألفاظ البذيئة أو السوقية او الخارجة عن اطار النقد البناء والنقاش الهادف. - إذا أنشأت حساب في الموقع, فأنت مسؤول عن حفظ حماية حسابك وستتحمل كامل المسؤولية عن كل النشاطات التي تحدث في حسابك. يجب عليك إشعار%{company_name} فورا بأي استخدام غير مصرح به لحسابك أو أي ثغرة في الحماية. %{company_name} لن تكون مسؤولة عن أفعال أو حالات إهمال منك, بما في ذلك أي أضرار من أي نوع تكبدتها نتيجة لمثل هذه الأفعال أو الامتناع عنها. + 2- عدم التعرض لأمور الدين نهائيا. - + 3- عدم التعرض بالسب أو الشتم أو التشهير من غير أدلة قطعية أو استخدام ألفاظ غير مقبولة في إطار النقد لأي جهة او شخص ما. - ## [2. مسؤولية المساهمين](#2) + 4- كتابة الموضوع في المكان المخصص له. - إذا شاركت مواد في الموقع, شارك الروابط في الموقع, أو بطريقة أخرى أجعل (أو اسمح بطرف ثالث ليجعل) المواد المتاحة عن طريق الموقع (أي مواد من هذا القبيل, "المحتوى"), أنت مسؤول كليا عن المحتوى, وأي ضرر ينتج من, ذلك المحتوى. هذا هو الحال بغض النظر عما إذا كان المحتوى في نص بشكل سؤال, رسومات, ملف صوت, أو برنامج حاسوبي. بجعل المحتوى متوفر, أنت تقر وتضمن الأتي: - - * التحميل, والنسخ واستخدام المحتوى بدون انتهاك الحقوق الملكية الفكرية, بما في ذلك حقوق الطبع والنشر, براءات الاختراع والعلامات التجارية أو حقوق التجارة السرية, أو أي طرف ثالث; - * إذا كان صاحب عملك لديه حقوق ملكية فكرية أنشأت لكم, (أ) عليك الحصول على تصريح من صاحب العمل للنشر أو إتاحة المحتوى, بما في ذلك أي برنامج, أو (ب) مضمون من تنازل صاحب عملك لجميع الحقوق فيه أو للمحتوى; - * امتثالك بالكامل بتراخيص طرف ثالث تتعلق بالمحتوى, وفعلت كل شيء ضروري للاجتياز بنجاح من خلال المستخدمين النهائيين لأي شروط مطلوبة; - * المحتوى لا يحوي أو يثبت أي فايروس, ديدان, برمجيات خبيثة, تروجانات أو غيرها من المحتويات الضارة والمدمرة; - * المحتوى لا يكون مؤذيا, وليس آلة- أو مولدات عشوائية, ولا يكون غير أخلاقي ومحتوى تجاري غير مرغوب فيه صمم لدفع الحركة لمواقع طرف ثالث أو زيادة تصنيفات محركات البحث لمواقع طرف ثالث, أو لمزيد من الأعمال غير المشروعة (كالتصيد) أو تضليل المستقبلين عن مصادر المواد (كالخداع); - * المحتوى لا يكون إباحيا, لا يحتوي تهديد أو تحريض على العنف, ولا تنتهك حقوق الخصوصية أو الدعاية لطرف ثالث; - * حسابك لا يتلقى إعلان عن طريق رسائل البريد الإلكترونية غير المرغوب بها مثل روابط البريد المزعج في مجموعات الأخبار, قوائم البريد الإلكتروني, والمدونات ومواقع الشبكة, ومشابهة الأساليب الترويجية الغير مرغوب فيها; - * لا يسمى محتواك بطريقة تضلل القراء للتفكير بأنك شخص أخر أو شركة أخرى; و - * لديك, في حالة أن المحتوى يتضمن شيفرة حاسوبية, مصنفة بدقة و/أو موصوفة النوع, والطبيعة, والاستخدام والتأئير للمواد, سواء طلب ذلك بواسطة %{company_name} أو أي شخص أخر. - - - - ## [3. رخصة محتوى المستخدم](#3) - - مساهمات العضو مرخصة تحت [المشاع الإبداعي الغير تجارية المشاركة بالمثل 3.0 رخصة التشارك](http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_US). دون الحد من تلك الإقرارات والضمانات, %{company_name} لها حق (في حال عدم الإلتزام به) , %{company_name} بمحض اختيارها (أ) رفض أو حذف أي محتوى, برأيها المعقول %{company_name}, ينتهك أي سياسة لـ %{company_name} أو بأي شكل من الأشكال الضارة والغير مرغوب فيها, أو (ب) إنهاء أو منع الوصول للموقع واستخدامه لأي شخص أو كيان لأي سبب من الأسباب, في %{company_name} بمحض اختيارها. %{company_name} لن تلتزم بتوفير استرداد المبالغ المدفوعة سابقا. - - - - - ## [4. الدفع والتجديد](#4) - - ### الشروط العامة - - الخدمات المدفوعة الاختيارية والترقيات قد تكون متوفرة على الموقع. عند استخدام خدمة دفع اختيارية أو ترقية, أنت توافق على دفع رسوم الاشتراك الشهرية أو السنوية المحددة لـ%{company_name}. سيتم احتساب المدفوعات على أساس الدفع المسبق في اليوم الذي تبدأ بالاستفادة من الخدمة أو الترقية وسوف يشمل استخدام تلك الخدمة أو ترقيتها لفترة الاشتراك الشهري أو السنوي كما هو محدد. هذه الرسوم غير قابلة للرد. - - ### التجديد التلقائي - - باستثناء أنك أرسلت إشعار لـ%{company_name} قبل انتهاء فترة الاشتراك المطبق بأنك تريد إلغاء الخدمة أو الترقية, اشتراكك سيجدد تلقائيا وستأذن لنا بتطبيق جمع رسوم الاشتراك الشهرية أو السنوية (وكذلك الضرائب) باستخدام أي بطاقة ائتمان أو آلية دفع آخري يهمنا ما يناسبك. يمكن إلغاء الاشتراك بأي وقت. - - - - ## [5. الخدمات](#5) - - ### الاستضافة, خدمات الدعم - - تقدم الاستضافة الاختيارية وخدمات الدعم بواسطة %{company_name} وفقا لأحكام وشروط كل هذه الخدمة. بالاشتراك في حساب استضافة/دعم أو دعم خدمات، أنت توافق على الالتزام بالشروط والأحكام. - - - - ## [6. مسؤولية زوار المواقع](#6) - - %{company_name} لن تراجع, ولا يمكنها أن تراجع, جميع المواد, بما فيها برامج الحاسوب, ومشاركة الموقع, وبالتالي لن تكون مسؤولة عن محتوى تلك المواد, سواء استخدام وتأثيرات. من خلال تشغيل الموقع, %{company_name} لا تمثل أو تؤيد المواد التي تنشر هناك, أو تعتقد أنها مواد دقيقة, ومفيدة أو غير ضارة. أنت مسؤول عن اتخاذ الاحتياطات لحماية نفسك ونظم الحاسوب من الفيروسات، والديدان، والتروجانات، وغيرها من المحتوى الضار أو المدمر. قد يحتوي الموقع على محتوى. الموقع ربما يحتوي على مواد تنتهك الخصوصية أو الدعاية أو تنتهك حقوق الملكية الفكرية وحقوق الملكية الأخرى, من أطراف ثالثة, أو التحميل, والنسخ أو استخدام التي تخضع للشروط والأحكام الإضافية, المعلنة والغير معلنة. %{company_name} تتبرأ من أي مسؤولية عن أي ضرر ناتج عن استخدام من قبل زوار الموقع, أو من أي تحميل من قبل هؤلاء الزوار من محتوى ذلك المنشور. - - - - ## [7. مشاركة المحتوى على المواقع الأخرى](#7) - - نحن لا نراجع, ولا يمكننا أن نراجع, جميع المواد، بما فيها برامج الحاسوب, المتاحة من خلال المواقع وصفحات الشبكة التي لها روابط %{company_domain}, والتي تربط بـ%{company_domain}. %{company_name} لا تملك سيطرة على تلك المواقع وصفحات الشبكة الغير-%{company_domain}, وغير مسؤولة عن محتواها واستخدامها. بالربط بالمواقع وصفحات الشبكة الغير-%{company_domain}, %{company_name} لا تمثل أو تؤيد مثل هذه المواقع وصفحات الشبكة. أنت مسؤول عن اتخاذ الاحتياطات عند الضرورة لحماية نفسك ونظم الحاسوب من الفيروسا, الديدان, التروجانات, والمحتويات الأخرى الضارة أو الغير مرغوب فيها. %{company_name} تتبرأ من أي ضرر ناتج عن استخدامك للمواقع وصفحات الشبكة الغير-%{company_domain}. - - - - ## [8. التعدي على حق المؤلف وسياسة DMCA](#8) - - %{company_name} يسأل الأخرون عن احترام حقوق الملكية الفكرية, إنها تحترم حقوق الملكية الفكرية للآخرين. إذا كنت تعتقد أن المواد الموجودة فيها أو المرتبط بها بواسطة %{company_domain} تنتهك حقوق النشر الخاصة بك, وإذا كان هذا الموقع موجود في الولايات المتحدة الأمريكية, أنت مدعو لإشعار %{company_name}وفقا لـ[قانون حقوق النشر الرقمية للألفية] لـ%{company_name} (http://en.wikipedia.org/wiki/Digital_Millennium_Copyright_Act) ("DMCA") سياسة. %{company_name} سترد على كل هذه الاشعارات، بما في ذلك إزالة المواد المخالفة أو تعطيل جميع روابط المواد المخالفة على النحو الطلوب والمناسب. %{company_name} ستقطع وصول الزائر للموقع واستخدامه إذا،, في ظل الظروف المناسبة, ستحدد الزائر الذي تكرر منه التعدي على حقوق الملكية الفكرية الأخرى من %{company_name} أو غيرها. في حالة الفصل من الموقع, %{company_name} لن تكون ملزمة لتوفير مبلغ من أي مبالغ سبق دفعها لـ%{company_name}. - - - - ## [9. الملكية الفكرية](#9) - - هذه الاتفاقية لا تنقل من %{company_name} لك أي %{company_name} أو ملكية فكري لطرف ثالث, وجميع الحقوق, العنوان والمصلحة في هذه الممتلكات تبقى (بين الطرفين) فقط مع %{company_name}. %{company_name}, %{company_domain}, شعار %{company_domain}, وجميع العلامات التجارية وعلامات الخدمة والرسومات والشعارات المستخدمة في الاتصال مع %{company_domain}, أو موقع علامات تجارية أو علامات تجارية مسجلة لـ%{company_name} أو مرخصين %{company_name}. العلامات التجارية الأخرى وعلامات الخدمات والرسومات والشعارات المستخدمة في الاتصال مع الموقع قد تكون علامات تجارية أخرى لطرف ثالث. استخدامك للموقع لا يمنحك حق أو ترخيص لإعادة انتاج أو استخدام أي %{company_name} أو علامات تجارية لطرف ثالث. - - - - ## [10. الإعلانات](#10) - - %{company_name} تحتفظ بالحق في عرض الإعلانات على المحتوى الخاص بك إلا إذا كنت قد اشتريت ترقية خالية من الإعلان أو حساب الخدمات. - - - - ## [11. الإسناد](#11) - - %{company_name} تحتفظ لنفسها بحق عرض روابط الإسناد مثل ‘المدعومة بواسطة %{company_domain},’ وموضوع المؤلف, وإسناد الخط في تذييل المحتوى الخاص بك أو شريط الأدوات. اعتماديات التذييل وشريط الأدوات لـ %{company_domain} ربما لن يزال بغض النظر عن ترقيات التي اشتريت. - - - - ## [12. التغييرات](#12) - - %{company_name} تحتفظ لنفسها بحق تقدير أو تعديل أو استبدال أي جزء من هذه الاتفاقية. ومن مسؤوليتك التأكد من هذه الاتفاقية بشكل دوري لإجراء تغييرات. استمرار استخدامك للموقع أو الوصول له بعد نشر أي تغييرات على هذا الاتفاق يعد قبولا لها. %{company_name} ربما أيضا, في المستقبل, تقدم خدمات أو ميزات جديدة من خلال الموقع (بما في ذلك إصدار أدوات وموارد جديدة). فإن هذه الميزات او الخدمات الجديدة تخضع لشروط وأحكام الاتفاقية. - - - - ## [13. الإيقاف](#13) - - %{company_name} ربما تعطل وصولك لكل أو بعض أجزاء الموقع في أي وقت, بسبب أو بغير سبب, بإشعار أو بدون إشعار, فورا. إذا كنت تريد إنهاء هذه الاتفاقية أو حسابك لـ %{company_domain} (إذا كنت تملك واحد), ربما ببساطة لن تستمر باستخدام الموقع. جميع أحكام هذا التفاق الذي طبيعته يجب إبقاء الإنهاء ليبقى الإنهاء، بما في ذلك, أحكام الملكية, الضمان والتنازلات, تعويض حدود المسؤولية. - - - - ## [14. إخلاء المسؤولية عن الضمانات](#14) - - يتم تقديم الموقع "كما هو". %{company_name} وداعميها ومرخصيها يتبرؤون هنا من جميع الضمانات لأي نوع, صريحة أو ضمنية, بما فيها, الضمانات الخاصة بالتسويق, الملائمة لغرض خاص و غير الانتهاك. لا %{company_name} ولا داعميها ومرخصيها, يقدمون أي ضمان بأن الموقع سيكون خاليا من الأخطاء أو أن الوصول إليه سيكون مستمر بدون انقطاع. إذا قرأت هذا حقا, من هنا [حل](http://www.newyorker.com/online/blogs/shouts/2012/12/the-hundred-best-lists-of-all-time.html). عليك أن تدرك أن ما تقوم بتحميله أو الحصول عليه من المحتوى والخدمات من خلال الموقع يكون في تحفظك وعلى مسؤوليتك. - - - - ## [15. حدود المسؤولية](#15) - - في أي أحوال %{company_name}, أو داعميها أو مرخصيها, يكونون مسؤولين فيما يتعلق بأي موضوع بهذه الاتفاقية بموجب أي عقد, أو إهمال, أو مسؤولية مطلقة أو غيرها من نظرية قانونية أو مصنفة لـ: (أ) أي خصوصي أو عرضي أو الأضرار التبعية; (ب) تكلفة شراء المنتجات أو الخدمات البديلة; (ج) لانقطاع الاستخدام أو فقدان أو تلف البيانات; أو (د) عن أي مبالغ تتجاوز الرسوم المدفوعة منك إلى %{company_name} بموجب هذه الاتفاقية خلال فترة (12) شهر السابقة من العمل. %{company_name} لا تتحمل أية مسؤولية عن أي تقصير أو تأخير بسبب أمور معقولة خارجة عن إرادتهم. لا نطبق ما سبق على حد يحظره القانون المعمول به. - - - - ## [16. التفويض العام والضمان](#16) - - تفويضك و صلاحيتك التي (i) استعمالك للموقع سوف تصبح متشدده وفقا لـ%{company_name}[privacy policy] (/privacy), [community guidelines] (/guidelines), مع هذه الاتقاقية تنطبق كل الشروط و الاحكام(و بدون اي حدود قانونية محلية او لوائح في بلدك، ولايتك، مدينتك، او اي نطاقات حكومية اخرى، فيما يتعلق بسلوكك على الموقع و موافقتك على المحتويات، و يضم كل الشروط التطبيقة و انتقال المعلومات التقنية و استيردها من البلد الذي ينتمي اليه الموقع او البلد الذي تنتمي اليه انت) و(ii) استعمالك للموقع لن يتعدي او يختلس حقوق الملكية الفكرية لاي طرف ثالث. - - - - ## [17. التعويض](#17) - - أنت توافق على تعويض وإبراء ذمة %{company_name}, ومتعاقدوها, ومرخصوها, ومخرجيها, ومدرائها ومسؤوليها ووكلائها تجاه جميع الطلبات والنفقات أو أي منها, بما في ذلك أتعاب المحاماة, الناشئة عن استخدامك للموقع, بما في ذلك خرقك لهذا الاتفاق ولا يقتصر على ذلك. - - - - ## [18. متفرقات](#18) - - هذه الاتفاقيه تشكل اتفاقيه الدخول بين %{company_name} حول مشكله الموضوع هنا، و يمكن فقط ان تعدل عن طريق كتابه تعديل موقع عن طريق مفوض من%{company_name} او عن طريق مشاركه %{company_name} او عن طريق اصدار منقح. الا الي مدي القوانين التطبيقية، اذا كان هناك تقدم،فستكون هذه الاتفاقيه،اي محاول وصول للموقع او استعمله سوف يتم محاكمتها بواسطه القضاء الخاص بولايه كلفورنيا، الولايات المتحده الامريكيه، ما عدا تناقض توفر الاحكام، والمكان المناسب للنزاعات الناشئة خارجا او تنتمي الي اي من نفس الموضوع، سوف تصبح الولايه و المحااكمات الفدرالية متمركزه في مقاطعه سان فرانسيسكو, كاليفورنيا ، الا المتطلبات القضائية او اعفاء منصف او المتطلبات حول الحقوق الفكريه(التي يمكن جلبها في اي محكمه مختصه من غير تعهد المشاركه)، اي نزاعات حول هذه الاتفاقيه يجب ان تحل نهائيا وفقا لتحكيم شامل و خدمات التفكر، inc. (“JAMS”) بواسطة ثلاث محكمين يتم تعيينهم وفقا لتلك القواعد. يعقد التحكيم في سان فرانسيسكو, كالفورنيا, باللغة الانجليزية ويمكن أن ينفذ القرار في أي محكمة. يحق للطرف المتغلب في أي عمل أو أي إجراء لتطبيق هذا الاتفاق لتكاليف وأتعاب المحاماة. إذا ثبت أن أي جزء من هذه الاتفاقية غير صالح أو غير قابل للتنفيذ, وسيفسر ذلك جزئيا بما يعكس نية الطرفين الحقيقية, وسوف تبقى الأجزاء الباقية في القوة والتأثير الكامل. والتنازل من قبل أي طرف في أي بند أو شرط من هذه الاتفاقية أو أي خرق لها, في أي لحظة, لن يعني التنازل عن هذا الشرط أو خرقه لاحقا. يجوز لك تعيين حقوقك بموجب هذا الاتفاق إلى أي طرف يوافق عليه, وتوافق على أن تكون ملزم به, وبشروطه وأحكامه; %{company_name} قد تتنازل عن حقوقها بموجب هذه الاتفاقية دون قيد أو شرط. وهذه الاتفاقية ستكون ملزمة وصالحة للتنفيذ لصالح الطرفين، خلفائهم والمتنازل لهم. - - هذا النص هو CC-BY-SA. أخر تحديث له May 31, 2013. - - متأقلم أصلا مع [ شروط خدمة WordPress](http://en.wordpress.com/tos/). + نشكرك لتعاونك معنا. privacy_topic: title: "سياسة الخصوصية" body: | @@ -2092,7 +1852,7 @@ ar: popular_link: name: رابط شائع hot_link: - name: رابط ساخن + name: رابط نَشط famous_link: name: رابط مشهور appreciated: @@ -2100,7 +1860,7 @@ ar: respected: name: محترم crazy_in_love: - name: مجنون واقع في حب + name: محبوب بشدة thank_you: name: شكراً لك gives_back: @@ -2121,8 +1881,17 @@ ar: performance_report: initial_post_raw: 'هذا الموضوع يحتوي على معلومات الاداء اليومي للموقع ' initial_topic_title: التبليغ عن اداء الموقع - topic_invite: - user_exists: "آسف، ذلك المستخدم قد تمت دعوته من قبل. تستطيع فقط أن تدعوا عضواً لموضوعِ مرة واحدة." + wizard: + step: + homepage: + title: "الصفحة الرئيسية" + fields: + homepage_style: + choices: + latest: + label: "أحدث المواضيع" + categories: + label: "الأقسام" activemodel: errors: <<: *errors diff --git a/config/locales/server.bs_BA.yml b/config/locales/server.bs_BA.yml index 8e1da3c6a4..344c2570e6 100644 --- a/config/locales/server.bs_BA.yml +++ b/config/locales/server.bs_BA.yml @@ -34,7 +34,6 @@ bs_BA: anonymous: "Anoniman" emails: incoming: - default_subject: "Dolazna poruka pošte %{email}" show_trimmed_content: "Prikaži skraćeni sadržaj" errors: &errors messages: @@ -107,32 +106,6 @@ bs_BA: - 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}. - 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 or @name references to previous posts. - - 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: @@ -221,14 +194,11 @@ bs_BA: few: "Pred par sati" other: "Pred %{count} sata" password_reset: - choose_new: "Odaberite novu šifru" - choose: "Molimo vas odaberite šifru" update: 'Obnovi Šifru' save: 'Namjesti Šifru' title: 'Resetuj Šifru' success: "Uspješno ste promjenili šifru i sada se možete ulogovati." success_unapproved: "Uspješno ste promjenili šifru." - continue: "Idi na %{site_name}" change_email: confirmed: "Your email has been updated." please_continue: "Continue to %{site_name}" @@ -383,8 +353,6 @@ bs_BA: 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.' site_settings: censored_words: "Words that will be automatically replaced with ■■■■" @@ -415,7 +383,6 @@ bs_BA: 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." 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\"" post_excerpt_maxlength: "Maximum length of a post excerpt / summary." @@ -691,22 +658,6 @@ bs_BA: blocked: "is not allowed." invite_mailer: subject_template: "%{invitee_name} vas poziva da pogledate '%{topic_title}' na sajtu %{site_domain_name}" - text_body_template: | - %{invitee_name} vas poziva na diskusiju: - - > **%{topic_title}** - > - > %{topic_excerpt} - - na - - > %{site_title} -- %{site_description} - - Ako ste zainteresovani, kliknite na link ispod: - - %{invite_link} - - Ova pozivnica dolazi od člana koji je zaslužio povjerenje na našem sajtu, što vama kao zvanici daje mogućnost da odmah odgovorite na diskusiju. invite_forum_mailer: subject_template: "%{invitee_name} vas poziva da se pridružite %{site_domain_name}" invite_password_instructions: @@ -766,12 +717,6 @@ bs_BA: ``` csv_export_succeeded: subject_template: "Data Export completed successfully" - text_body_template: | - The data export was successful. - - Download CSV file: %{file_name} - - CSV file download link will expire after 48 hours. csv_export_failed: subject_template: "Export failed" text_body_template: "The export has failed. Please check the logs." diff --git a/config/locales/server.cs.yml b/config/locales/server.cs.yml index a246cea461..74796b9a1e 100644 --- a/config/locales/server.cs.yml +++ b/config/locales/server.cs.yml @@ -174,24 +174,6 @@ cs: - Konstruktivní kritika je vítaná, ale kritizujte *myšlenky*, ne lidi. Další doporučení máme v [pravidlech komunity](/guidelines). Tenhle panel se zobrazí pouze pro vaše první %{education_posts_text}. - 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: | - ### Oživit téma? - - Poslední odpověď na tohle téma je přes %{days} dní stará. Vaše odpověď zvedne toto téma v seznamu nahoru a upozorní všechny diskutující. - - Určitě chcete pokračovat v této staré konverzaci? activerecord: attributes: category: @@ -221,6 +203,9 @@ cs: attributes: hex: invalid: "není platná barva" + post_reply: + base: + different_topic: "Příspěvek a odpověď musí náležet stejnému topicu" <<: *errors user_profile: no_info_me: "
    Pole 'o mně' je v tuto chvíli prázdné, nechcete si ho vyplnit?
    " @@ -232,6 +217,8 @@ cs: staff_category_name: "Redakce" staff_category_description: "Privátní kategorie pro diskuze štábu. Témata jsou viditelná pouze pro moderátory a správce." assets_topic_body: "Tohle je permanentí téma, viditelné pouze redaktorům, pro uchovávání obrázků a souborů použitých v designu tohoto webu. Nemažte ho!\n\n\nTady je jak:\n\n1. Odpovězte na toto téma.\n2. Nahrajte sem všechny obrázky které chcete používat pro loga, favicony a podobně. (Použijte ikonku „nahrát“ v panelu nad editorem, nebo obrázky rovnou přetáhněte nebo „vložte“)\n3. Pošlete tuto odpověď\n4. Klikněte pravým tlačítkem na obrázky ve vašem novém příspěvku a zkopírujte si adresy, nebo klikněte na úpravu přípěvku a adresy vykopírujte tam.\n5. Vložte tyto adresy do [základního nastavení](/admin/site_settings/category/required).\n\nPokud potřebujete nahrát jiné soubory, změňte nastavení `authorized_extensions` v [nastavení souborů](/admin/site_settings/category/files)." + discourse_welcome_topic: + title: "Vítejte v Discourse" lounge_welcome: title: "Vítejte v Redakci" category: @@ -363,14 +350,12 @@ cs: few: "téměř před %{count} roky" other: "téměř před %{count} roky" password_reset: - choose_new: "Zvolte si nové heslo" - choose: "Zvolte si prosím heslo" + choose: "Vybrat heslo" update: 'změnit heslo' save: 'Nastavit heslo' title: 'Resetovat heslo' success: "Heslo bylo úspěšně změněno a nyní jste přihlášeni." success_unapproved: "Heslo bylo úšpěšně změněno." - continue: "Pokračovat na %{site_name}" change_email: confirmed: "Vaše emailová adresa bylo změněna." please_continue: "Pokračovat na %{site_name}" @@ -396,6 +381,7 @@ cs: title: 'Nevhodné' long_form: 'nahlášeno jako nevhodné' notify_user: + long_form: 'obeslaný uživatel' email_title: 'Váš příspěvek v „%{title}“' email_body: "%{link}\\\n\\\n%{message}\n" notify_moderators: @@ -413,6 +399,9 @@ cs: title: 'Hlasovat' description: 'Hlasujte pro tento příspěvek' long_form: 'hlasoval pro tento příspěvek' + user_activity: + no_bookmarks: + others: "Žádné záložky." topic_flag_types: spam: title: 'Spam' @@ -434,6 +423,17 @@ cs: message: make: "Tento příspěvek je nyní banner. Bude se zobrazovat na vršku každé stránky dokud ho uživatel nezavře." remove: "Tento příspěvek už není banner. Nebude se dále zobrazovat na vršku každé stránky." + unsubscribed: + title: "Odhlášeno!" + unsubscribe: + title: "Odhlášení" + stop_watching_topic: "Přestat sledovat toto téma, %{link}" + disable_digest_emails: "Zrušit zasílání souhrnných emailů" + user_api_key: + scopes: + session_info: "Číst user session info" + read: "Číst vše" + write: "Zapsat vše" reports: visits: title: "Návštěvy uživatelů podle dnů" @@ -523,6 +523,7 @@ cs: page_view_total_reqs: title: "Celkem" xaxis: "Den" + yaxis: "Celkové pageviews" page_view_logged_in_mobile_reqs: xaxis: "Den" page_view_anon_mobile_reqs: @@ -567,7 +568,6 @@ cs: facebook_config_warning: 'Server je nakonfigurován, aby povoloval registraci a přihlášení přes Facebook (enable_facebook_logins), ale nejsou nastaveny hodnoty "app id" a "app secret". Navštivte nastevení webu a opravte nastavení. Pro více informací si přečtěte tento návod.' twitter_config_warning: 'Server je nakonfigurován, aby povoloval registraci a přihlášení přes Twitter (enable_twitter_logins), ale nejsou nastaveny hodnoty "key" a "secret". Navštivte nastevení webu a opravte nastavení. Pro více informací si přečtěte tento návod.' github_config_warning: 'Server je nakonfigurován, aby povoloval registraci a přihlášení přes GitHub (enable_github_logins), ale nejsou nastaveny hodnoty "client id" a "secret". Navštivte nastevení webu a opravte nastavení. Pro více informací si přečtěte tento návod.' - s3_config_warning: 'Server je nakonfigurován, aby nahrával soubory na S3, ale chybí nastavení: s3_access_key_id, s3_secret_access_key nebo s3_upload_bucket. Navštivte nastavení webu a opravte nastavení. Přečtěte si "How to set up image uploads to S3?" pro více informací.' image_magick_warning: 'Server je nakonfigurován, aby vytvářel náhledy velkých obrázků, ale není nainstalován ImageMagick. Nainstalujte ImageMagick pomocí vašeho oblíbeného balíčkovače, nebo navštivte web ImageMagick pro stažení aktuální verze.' site_settings: default_locale: "Výchozí jazyk této Discourse instance (kód ve formátu ISO 639-1)" @@ -592,6 +592,7 @@ cs: force_hostname: "Na pevno nastaví hostitele v URL. Nechte prázdné pro výchozí server, užitečné hlavně pro vývoj" invite_expiry_days: "Platnost uživatelských pozvánek ve dnech" min_password_length: "Minimální povolená délka hesla." + min_admin_password_length: "Minimální délka heslo pro administrátora." block_common_passwords: "Nepovolit heslo pokud je mezi 10 000 nejběžnějšími." enable_yahoo_logins: "Povolit přihlašování přes Yahoo" google_oauth2_client_id: "Client ID vaší Google aplikace." @@ -684,6 +685,9 @@ cs: subject_template: "Zálohování bylo úspěšně dokončeno." backup_failed: subject_template: "Zálohování selhalo." + restore_failed: + title: "Obnova Neúspěšná" + subject_template: "Obnova neúspěšná" csv_export_succeeded: subject_template: "Exportování dat dokončeno" csv_export_failed: diff --git a/config/locales/server.da.yml b/config/locales/server.da.yml index 9c2b41372e..3aca7e3339 100644 --- a/config/locales/server.da.yml +++ b/config/locales/server.da.yml @@ -33,7 +33,6 @@ da: anonymous: "Anonym" emails: incoming: - default_subject: "Indgående email fra %{email}" show_trimmed_content: "Vis trimmet indhold" maximum_staged_user_per_email_reached: "Maksimalt antal af brugere oprettet pr. email." errors: @@ -225,40 +224,6 @@ da: - Det er godt med kritik, men husk at kritisere *ideer*, ikke personer. For flere tips, [se vores retningslinier](/guidelines). Denne boks dukker kun op for dine første %{education_posts_text}. - avatar: | - ### Hvad med et billede til din konto? - - Du har oprettet et par emner og svar, men dit avatar er ikke så unik som du er -- det er bare et bogstav. - - Har du overvejet at **[gå til din brugerprofil](%{profile_path})** og uploade et billede, der repræsenterer dig? - - Det er lettere at følge diskussioner og finde interessant mennesker i samtaler, hvor alle har en unik avatar! - sequential_replies: | - ### Overvej at svare på flere indlæg på en gang - - Istedet for at lave mange små individuelle kommentarer, overvej at lave et enkelt svar som inkluderer "citater" fra tidligere indlæg eller ved at nævne andre brugere med et @. - - Benyt et citat fra et tidligere svar ved at markere den ønskede tekst og herefter vælge opret citat knappen som vises. - - Det er nemmere for alle at læse om emner som har færre svar som går i dybden, end mange små individuelle svar. - dominating_topic: | - ### Lad andre deltage i samtalen - - Dette emne er åbenbart vigtigt for dig – du har oprettet mere end %{percent}% af svarene her. - - Er du sikker på, at du giver tilstrækkelig tid til, at andre folk kan dele deres synspunkter? - too_many_replies: | - ### Du kan ikke skrive flere indlæg i dette emne - - Beklager, men nye brugere er begrænset til %{newuser_max_replies_per_topic} svar i hvert emne. - - I stedet for at tilføje endnu et svar, bør du overveje at redigere et af dine eksisterende svar eller at besøge andre emner. - reviving_old_topic: | - ### Genopliv dette emne? - - Det sidste svar på dette emne er nu over %{days} gammelt. dit svar vil trække dette emne til toppen af listen og vil påminde alle der tidligere have været med i samtalen. - - Er du sikker på du vil vække dette emne til live igen? activerecord: attributes: category: @@ -457,14 +422,11 @@ da: other: "næsten %{count} år siden" password_reset: no_token: "Beklager, dit kodeords-reset link er udløbet. Vælg 'Log ind' knappen og brug 'Jeg har glemt mit kodeord' for at få et nyt link." - choose_new: "Vælg et nyt kodeord" - choose: "Vælg et kodeord" update: 'opdatér kodeord' save: 'Set kodeord' title: 'nulstil kodeord' success: "Dit kodeord er ændret og du er nu logget ind." success_unapproved: "Dit kodeord er ændret." - continue: "Fortsæt til %{site_name}" change_email: confirmed: "Din e-mail-adresse er opdateret." please_continue: "Fortsæt til %{site_name}" @@ -720,7 +682,6 @@ da: facebook_config_warning: 'Serveren er konfigureret til at tillade tilmelding og login med Facebook (enable_facebook_logins), men app id og app secret værdierne er ikke angivet. Gå til indstillinger og opdatér indstillingerne. Se denne vejledning for mere information.' twitter_config_warning: 'Serveren er konfigureret til at tillade tilmelding og login med Twitter (enable_twitter_logins), men key og secret værdierne er ikke angivet. Gå til indstillinger og opdatér indstillingerne. Se denne vejledning for mere information.' github_config_warning: 'Serveren er konfigureret til at tillade tilmelding og login med GitHub (enable_github_logins), men client id og secret værdierne er ikke angivet. Gå til indstillinger og opdatér indstillingerne. Se denne vejledning for mere information.' - s3_config_warning: 'Serveren er konfigureret til at uploade filer til s3, men mindst én af følgende indstillinger er ikke angivet: s3_access_key_id, s3_secret_access_key eller s3_upload_bucket. Gå til indstillinger og opdatér indstillingerne. Se "How to set up image uploads to S3?" for mere information.' image_magick_warning: 'Serveren er konfigureret til at lave thumbnails af store billeder, men ImageMagick er ikke installeret. Installér ImageMagick med din foretrukne package manager eller download den seneste udgave.' failing_emails_warning: 'Der er %{num_failed_jobs} email operationer der mislykkede. Tjek din app.yml for at sikre at din mail server indstillinger er korrekte. Se mislykkede operationer i Sidekiq.' subfolder_ends_in_slash: "Din undermappe er ikke opsat korrekt; DISCOURSE_RELATIVE_URL_ROOT ender med en slash." @@ -769,7 +730,6 @@ da: max_image_width: "Maximum thumbnail width of images in a post" max_image_height: "Maksimum miniaturebillede højde for billeder i et indlæg" category_featured_topics: "Antallet af emner der vises pr. kategori på /categories-siden. Efter ændring af denne værdi kan det tage op til 15 minutter før kategorisiden opdateres." - show_subcategory_list: "Vis subkategori liste i stedet for emneliste, når man åbner en ny kategori." fixed_category_positions: "Hvis krydset af, vil du være i stand til at arrangere ordnet visning af kategorier. Hvis ikke afkrydset vil de være listet i en rækkefølge baseret på aktivitet." fixed_category_positions_on_create: "Hvis afkrydset vil kategori visning blive vedligeholdt baseret på emne (kræver manuelt valgt visning af kategorier)." exclude_rel_nofollow_domains: "En liste af domæner hvor 'nofollow' skal tilføjes til links. tid.com vil desuden automatisk tillade sub.tid Som minimum bør du tilføje top level domænet til sitet, for at hjælpe webcrawlere finde alt indhold. Såfremt andre dele af jeres site er på andre domæner, så tilføj også disse." @@ -844,8 +804,6 @@ da: invite_passthrough_hours: "Hvor længe kan en bruger benytte en tidligere benyttet invitation til at logge ind, i timer." invite_only: "Offentlig registrering er deaktiveret, alle nye brugere skal inviteres af andre medlemmer eller Staff." login_required: "Kræv godkendelse til at læse indhold på dette site, og tillad ikke anonym adgang." - min_username_length: "Minimumslængde på et brugernavn i antal karakterer." - max_username_length: "Maksimal længde af et brugernavn i antal karakterer." reserved_usernames: "Brugernavne for hvem oprettelse ikke er mulig." min_password_length: "Mindste adgangskodelængde." min_admin_password_length: "Minimumslængde for Admin adgangskoder." @@ -1198,8 +1156,6 @@ da: performance_report: initial_post_raw: Dette emne inkluderer daglige præstationsrapporter for dit site. initial_topic_title: Website præstationsrapport - topic_invite: - user_exists: "Beklager, men brugeren er allerede inviteret. Du kan kun invitere en bruger til et emne én gang." tags: title: "Tags" staff_tag_disallowed: "Tagget \"%{tag}\" kan kun tildeles af personalet." diff --git a/config/locales/server.de.yml b/config/locales/server.de.yml index 12d45ba33f..1fba838171 100644 --- a/config/locales/server.de.yml +++ b/config/locales/server.de.yml @@ -35,7 +35,7 @@ de: remove_posts_deleted_by_author: "Gelöscht vom Verfasser" emails: incoming: - default_subject: "Eingehende E-Mail von %{email}" + default_subject: "Dieses Thema benötigt einen Titel" show_trimmed_content: "Zeige gekürzten Inhalt" maximum_staged_user_per_email_reached: "Maximale Anzahl vorbereiteter Benutzer erreicht, die automatisch per E-Mail erstellt wurden." errors: @@ -73,8 +73,8 @@ de: inclusion: ist nicht in der Liste enthalten invalid: ist ungültig is_invalid: "scheint unklar, ist das ein ganzer Satz?" - contains_censored_words: "Beinhaltet ein oder mehrere verbotene Wörter: %{censored_words}" - matches_censored_pattern: "stimmt mit dem folgenden verbotenen regulären Ausdruck überein: %{censored_pattern}" + contains_censored_words: "enthält die folgenden nicht erlaubten Wörter: %{censored_words}" + matches_censored_pattern: "enthält folgende Wörter, die dem regulären Ausdruck für nicht erlaubte Wörter der Seite entsprechen: %{censored_words}" less_than: muss weniger als %{count} sein less_than_or_equal_to: muss weniger oder gleich %{count} sein not_a_number: ist keine Zahl @@ -108,6 +108,8 @@ de: max_username_length_range: "Das Maximum darf nicht kleiner als das Minimum sein." default_categories_already_selected: "Du kannst keine Kategorie auswählen, welche bereits in einer anderen Liste benutzt wird. " s3_upload_bucket_is_required: "Uploads auf Amazon S3 können nicht aktiviert werden, bevor der 's3_upload_bucket' eingetragen wurde." + invite: + not_found: "Dein Einladungsschlüssel ist ungültig. Bitte kontaktiere den Administrator der Seite." bulk_invite: file_should_be_csv: "Die hochzuladende Datei sollte im CSV-Format vorliegen." error: "Es gab einen Fehler beim Hochladen dieser Datei. Bitte versuche es später noch einmal." @@ -243,39 +245,47 @@ de: Beachte bitte auch [unsere Richtlinien](/guidelines). Dieser Hilfetext wird nur bei deinen ersten %{education_posts_text} angezeigt. avatar: | - ### Wie wäre es mit einem Bild für Deinen Account? + ### Wie wär’s mit einem Bild für dein Konto? - Du hast schon einige Themen und Antworten geschrieben, aber Dein Profilbild ist nicht so einzigartig, wie Du es bist -- es ist nur ein Buchstabe. + Du hast schon ein paar Themen und Antworten geschrieben, aber dein Profilbild ist noch nicht so einzigartig wie du – es ist nur ein Buchstabe. - Vielleicht schaust Du mal in **[Dein Benutzerprofil](%{profile_path})** und lädst dort ein Bild hoch, das etwas über Dich aussagt? + Hast du schon darüber nachgedacht **[dein Benutzerprofil zu besuchen](%{profile_path})** und ein Bild hochzuladen, das dich repräsentiert? - Es ist einfacher, Diskussionen zu folgen und interessante Leute zu finden, wenn jeder ein eindeutiges Profilbild hat! + Es ist einfacher, Diskussionen zu folgen und in Unterhaltungen interessante Personen zu finden, wenn jeder ein einzigartiges Profilbild hat! sequential_replies: | - ### Bitte antworte mehreren Beiträge gleichzeitig + ### Denke darüber nach, auf mehrere Beiträge gleichzeitig zu antworten - Anstatt mehrmals hintereinander in einem Thema zu antworten, versuche bitte, einen einzigen Beitrag zu verfassen, der Zitate älterer Antworten enthält oder @Erwähnungen verwendet. + Statt mehrere aufeinanderfolgende Antworten zu einem Thema zu schreiben, denke bitte darüber nach, eine einzige Antwort zu schreiben, die Zitate mehrerer vorheriger Beiträge oder mehrere Erwähnungen wie @name enthält. - Du kannst deine letzte Antwort bearbeiten und ein Zitat hinzufügen, indem Du den jeweiligen Text markierst und dann auf den erscheinenden Antwort zitieren Knopf klickst. + Du kannst deine letzte Antwort bearbeiten, um ein Zitat hinzuzufügen, indem du den Text auswählst und auf die erscheinende Schaltfläche Zitat klickst. - Es ist für jeden einfacher Themen zu lesen, die wenige tiefgründige Antworten enthalten und nicht viele kurze Einzelantworten. + Es ist für alle einfacher, Themen zu lesen, die wenige tiefgehende Antworten haben statt vielen kleinen und einzelnen Antworten. dominating_topic: | - ### Lass auch andere die Konversation mitgestalten + ### Lass’ andere am Gespräch teilnehmen - Dieses Thema ist dir eindeutig wichtig – du hast mehr als %{percent}% aller Antworten verfasst. + Das Thema ist ohne Frage wichtig für dich – du hast hier mehr als %{percent}% der Antworten geschrieben. - Bist du sicher, dass du anderen Benutzern genügend Zeit lässt, ihre eigenen Sichtweisen darzulegen? + Bist du dir sicher, dass du anderen Leuten angemessen viel Raum lässt, auch ihre eigenen Punkte mitzuteilen? + get_a_room: | + ### Denke darüber nach, weiteren Personen zu antworten + + Du hast in diesem Thema bereits %{count}-mal auf @%{reply_username} geantwortet. + + Hast du schon darüber nachgedacht, auch *anderen* Personen in in der Diskussion zu antworten? Eine großartige Diskussion bezieht viele Stimmen und Perspektiven ein. + + Wenn du dein Gespräch mit dieser bestimmten Person ausführlich fortsetzen möchtest, [schicke ihr eine persönliche Nachricht](/users/%{reply_username}). too_many_replies: | - ### Du hast das Antwort-Limit für dieses Thema erreicht. + ### Du hast das Antwort-Beschränkung für dieses Thema erreicht - Es tut uns leid, aber neue Benutzer sind zur Zeit auf %{newuser_max_replies_per_topic} Antworten im gleichen Thema beschränkt. + Entschuldige, aber neue Benutzer sind vorübergehend auf %{newuser_max_replies_per_topic} Antworten im gleichen Thema beschränkt. - Anstelle einer weiteren Antwort, bitte überlege eine deiner vorherigen Antworten zu editieren oder besuche andere Themen. + Anstatt eine weitere Antwort hinzuzufügen, denke darüber nach, deine vorherigen Antworten zu bearbeiten oder andere Themen zu besuchen. reviving_old_topic: | ### Dieses Thema neu beleben? - Die letzte Antwort zu diesem Thema ist jetzt über %{days} Tage alt. Deine Antwort wird das Thema an den Anfang der Liste verschieben und alle an der Konversation beteiligten benachrichtigen. + Die letzte Antwort auf dieses Thema war vor **%{days}** Tagen. Deine Antwort wird das Thema wieder ans obere Ende der Liste befördern und jeden benachrichtigen, der zuvor in der Unterhaltung beteiligt war. - Bist du sicher, dass du diese alte Konversation weiterführen willst? + Bist du sicher, dass du diese alte Unterhaltung fortsetzen möchtest? activerecord: attributes: category: @@ -306,6 +316,7 @@ de: same_as_username: "ist mit deinem Benutzernamen identisch. Bitte verwende ein sichereres Passwort." same_as_email: "ist mit deiner E-Mail-Adresse identisch. Bitte verwende ein sichereres Passwort." same_as_current: "entspricht deinem aktuellen Passwort." + unique_characters: "hat zu viele sich wiederholende Zeichen. Bitte verwende ein sichereres Passwort." ip_address: signup_not_allowed: "Eine Registrierung ist von diesem Konto nicht erlaubt." color_scheme_color: @@ -501,14 +512,13 @@ de: other: "vor fast %{count} Jahren" password_reset: no_token: "Entschuldige, aber der Link zum Zurücksetzen des Passworts ist zu alt. Wähle 'Ich habe mein Passwort vergessen' um einen neuen Link zu erhalten." - choose_new: "Bitte wähle ein neues Passwort" - choose: "Bitte wähle ein Passwort" + choose_new: "Wähle ein neues Passwort" + choose: "Wähle ein Passwort" update: 'Passwort aktualisieren' save: 'Passwort festlegen' title: 'Passwort zurücksetzen' success: "Dein Passwort wurde erfolgreich geändert, und du bist nun angemeldet." success_unapproved: "Dein Passwort wurde erfolgreich geändert." - continue: "Weiter zu %{site_name}" change_email: confirmed: "Deine E-Mail-Adresse wurde aktualisiert." please_continue: "Weiter zu %{site_name}" @@ -779,8 +789,6 @@ de: facebook_config_warning: 'Der Server erlaubt die Anmeldung mit Facebook (enable_facebook_logins), aber die App ID und der Geheimcode sind nicht gesetzt. Besuche die Einstellungen um die fehlenden Einträge hinzuzufügen. Besuche den Leitfaden um mehr zu erfahren.' twitter_config_warning: 'Der Server erlaubt die Anmeldung mit Twitter (enable_twitter_logins), aber der Schlüssel und der Geheimcode sind nicht gesetzt. Besuche die Einstellungen um die fehlenden Einträge hinzuzufügen. Besuche den Leitfaden um mehr zu erfahren.' github_config_warning: 'Der Server erlaubt die Anmeldung mit Facebook GitHub (enable_github_logins), aber die Kunden-ID und der Geheimcode sind nicht gesetzt. Besuche die Einstellungen um die fehlenden Einträge hinzuzufügen. Besuche den Leitfaden um mehr zu erfahren.' - s3_config_warning: 'Der Server wurde konfiguriert um Dateien nach s3 hochzuladen, aber mindestens der folgenden Einstellungen fehlt: s3_access_key_id, s3_secret_access_key oder s3_upload_bucket. Besuche die Einstellungen um die fehlenden Einträge hinzuzufügen. Besuche "How to set up image uploads to S3?" um mehr zu erfahren.' - s3_backup_config_warning: 'Der Server ist so konfiguriert, dass Datensicherungen auf S3 geladen werden, aber mindestens eine der folgenden Einstellungen: s3_access_key_id, s3_secret_access_key oder s3_backup_bucket ist nicht festgelegt. Gehe zu den Siteneinstellungen und aktualisiere die Einstellungen. Um mehr darüber zu erfahren siehe "Wie konfiguriere ich das Hochladen von Bildern zu S3?" (en).' image_magick_warning: 'Der Server wurde konfiguriert um Vorschaubilder von grossen Bildern zu erstellen, aber ImageMagick ist nicht installiertd. Installiere ImageMagick mit deinem bevorzugten Packetmanager oder besuche um das aktuelle Paket herunterzuladen.' failing_emails_warning: "%{num_failed_jobs} E-Mails konnten nicht versendet werden. Überprüfe deine app.yml und stelle sicher, dass die E-Mail Servereinstellungen korrekt gesetzt sind. \nSieh dir hier die nicht versendeten E-Mails an." subfolder_ends_in_slash: "Deine Installation in einem Pfad ist nicht korrekt, DISCOURSE_RELATIVE_URL_ROOT endet mit einem Schrägstrich." @@ -832,7 +840,6 @@ de: max_image_width: "Maximale Breite von Thumbnails von Bildern in einem Beitrag." max_image_height: "Maximale Höhe von Vorschaubildern in einer Nachricht" category_featured_topics: "Anzahl der angezeigten Themen je Kategorie auf der /categories Seite. Nachdem dieser Wert geändert wurde, dauert es bis zu 15 Minuten bis die Kategorieseite aktualisiert ist." - show_subcategory_list: "Zeige Liste von Unterkategorien statt einer Liste von Themen wenn eine Kategorie ausgewählt wird." fixed_category_positions: "Falls aktiviert können Kategorien in einer fest vorgegebenen Reihenfolge angeordnet werden. Andernfalls werden Kategorien nach Aktivität sortiert aufgelistet." fixed_category_positions_on_create: "Wenn aktiviert wird die Kategoriezuordnung beim Erstellen eines Themas erhalten (benötigt fixed_category_positions)." add_rel_nofollow_to_user_content: "Füge mit Ausnahme interner Links (schließt übergeordnete Domains ein) allen benutzergenerierten Inhalten 'rel nofollow' hinzu. Die Änderung dieser Einstellung erfordert, dass du sämtliche Markdown-Beiträge aktualisierst: \"rake posts:rebake\"" @@ -927,11 +934,12 @@ de: invite_passthrough_hours: "Wie viele Stunden ein Benutzer einen bereits eingelösten Einladungsschlüssel zum Anmelden verwenden kann" invite_only: "Deaktiviere die öffentliche Registrierung, neue Benutzer können nur durch eine Einladung von anderen Mitgliedern oder dem Team beitreten." login_required: "Nur angemeldete Benutzer dürfen Inhalte der Site lesen, anonyme Zugriffe sind verboten." - min_username_length: "Minimale Benutzernamenlänge in Zeichen." - max_username_length: "Maximale Benutzernamenlänge in Zeichen." + min_username_length: "Minimale Zeichenlänge für Benutzernamen. WARNUNG: Wenn bestehende Benutzer oder Gruppen kürzere Namen haben, wird deine Seite nicht mehr funktionieren!" + max_username_length: "Maximale Zeichenlänge für Benutzernamen. WARNUNG: Wenn bestehende Benutzer oder Gruppen längere Namen haben, wird deine Seite nicht mehr funktionieren!" reserved_usernames: "Benutzernamen, welche für die Registrierung gesperrt werden sollen." min_password_length: "Minimale Länge des Passworts." min_admin_password_length: "Minimale Passwortlänge für Administratoren." + password_unique_characters: "Minimale Anzahl unterschiedlicher Zeichen, die ein Passwort enthalten muss." block_common_passwords: "Erlaube kein Passwort unter den 10000 meist verwendeten Passwörter." enable_sso: "Aktiviere Single Sign-on über eine externe Site (WARNUNG: DIE E-MAIL-ADRESSE DES BENUTZERS *MUSS* VON DER EXTERNEN SITE VERIFIZIERT WERDEN)." verbose_sso_logging: "Protokolliere ausführliche SSO-bezogene Diagnose in /logs" @@ -1168,7 +1176,7 @@ de: digest_posts: "Die maximale Anzahl von beliebten Beiträgen, die in der E-Mail-Zusammenfassung angezeigt werden sollen." digest_other_topics: "Die maximale Anzahl von Themen, die in dem Bereich 'Neues in Themen und Kategorien, denen du folgst' in der E-Mail-Zusammenfassung angezeigt werden sollen." digest_min_excerpt_length: "Minimale Zeichenlänge für Auszüge von Beiträgen in der E-Mail-Zusammenfassung." - delete_digest_email_after_days: "Unterdrücke E-Mail-Zusammenfassungen für Benutzer, die länger als (n) Tage nicht auf der Site gesehen wurden." + suppress_digest_email_after_days: "Unterdrücke E-Mail-Zusammenfassungen für Benutzer, die länger als (n) Tage nicht auf der Seite gesehen wurden." digest_suppress_categories: "Unterdrücke diese Kategorien in E-Mail-Zusammenfassungen." disable_digest_emails: "Deaktiviere E-Mail-Zusammenfassungen für alle Benutzer." email_accent_bg_color: "Die Hervorhebungsfarbe, die als Hintergrund mancher Elemente in HTML-E-Mails verwendet wird. Gib’ einen Namen ('red') oder einen Hex-Wert ('#FF000') der Farbe an." @@ -1187,6 +1195,7 @@ de: user_website_domains_whitelist: "Benutzer-Webseiten werden mit diesen Domains abgeglichen. Mehrere Domains können mit einem Pipe-Symbol „|“ getrennt angegeben werden." allow_profile_backgrounds: "Erlaubt es Benutzern, Profilhintergründe hochzuladen." sequential_replies_threshold: "Anzahl an Beiträgen die ein Benutzer machen muss, um benachrichtigt zu werden, dass er zu viele aufeinanderfolgende Antworten schreibt." + get_a_room_threshold: "Anzahl an Beiträgen, die ein Benutzer im gleichen Thema an die gleiche Person schreiben muss, bevor er gewarnt wird." enable_mobile_theme: "Mobilgeräte verwenden eine mobile Darstellung mit der Möglichkeit zur vollständigen Site zu wechseln. Deaktiviere diese Option, wenn du ein eigenes Full-Responsive-Stylesheet verwenden möchtest." dominating_topic_minimum_percent: "Anteil der Nachrichten eines Themas in Prozent, die ein einzelner Benutzer verfassen darf, bevor dieser Benutzer darauf hingewiesen wird, dass er dieses Thema dominiert." disable_avatar_education_message: "Deaktiviert den Hinweis für Benutzer, dass sie ihr Profilbild ändern können" @@ -1224,7 +1233,6 @@ de: show_create_topics_notice: "Administratoren eine Warnmeldung anzeigen, wenn im Forum weniger als 5 öffentlich sichtbare Themen existieren." delete_drafts_older_than_n_days: Lösche Entwürfe, die mehr als (n) Tage alt sind. bootstrap_mode_min_users: "Erforderliche Benutzeranzahl, um den Starthilfe-Modus zu deaktivieren (0 = ausgeschaltet)" - vacuum_db_days: "Führe VACUUM ANALYZE aus, um Datenbankspeicher nach Migrationen zurückzuerhalten (0 um zu deaktivieren)" prevent_anons_from_downloading_files: "Nichtangemeldeten Benutzern das Herunterladen von Anhängen verbieten. WARNUNG: dies verhindert auch das Herunterladen jeglicher Ressourcen für Website-Anpassungen, die als Anhänge gespeichert wurden." slug_generation_method: "Gib eine Methode an, wie Kürzel in URLs generiert werden sollen. 'encoded' verwendet einen Prozent-Encodierten String, bei 'none' wird kein Kürzel verwendet." enable_emoji: "Aktiviere emoji" @@ -1452,81 +1460,15 @@ de: invite_mailer: title: "Einladung zu einem Thema" subject_template: "%{invitee_name} hat dich zum Thema '%{topic_title}' auf %{site_domain_name} eingeladen" - text_body_template: | - %{invitee_name} hat dich dazu eingeladen, an einer Diskussion teilzunehmen: - - > **%{topic_title}** - > - > %{topic_excerpt} - - > %{site_title} -- %{site_description} - - Falls du Interesse hast, klicke auf den nachfolgenden Link: - - %{invite_link} - - Dies ist eine Einladung von einem vertrauenswürdigen Benutzer. Du kannst deshalb sofort auf die Diskussion antworten. custom_invite_mailer: title: "Einladung zu einem Thema (mit Nachricht)" subject_template: "%{invitee_name} hat dich eingeladen zu '%{topic_title}' auf %{site_domain_name}" - text_body_template: | - %{invitee_name} hat dich zu einer Diskussion eingeladen - - > **%{topic_title}** - > - > %{topic_excerpt} - - bei - - > %{site_title} -- %{site_description} - - Nachricht von %{invitee_name}: - - %{user_custom_message} - - Wenn du interessiert bist, klicke auf den folgenden Link: - - %{invite_link} - - Diese Einladung stammt von einem vertrauenswürdigen Benutzer, daher kannst du direkt auf die Diskussion antworten. invite_forum_mailer: title: "Einladung zur Teilnahme" subject_template: "%{invitee_name} hat dich eingeladen %{site_domain_name} beizutreten" - text_body_template: | - %{invitee_name} hat dich eingeladen, - - > **%{site_title}** - > - > %{site_description} - - beizutreten. - - Wenn du interessiert bist, folge dem folgenden Link: - - %{invite_link} - - Die Einladung kommt von einem vertrauenswürdigen Benutzer. Daher wird für dich beim Betreten automatisch ein Benutzerkonto mit dieser E-Mail-Adresse erstellt. custom_invite_forum_mailer: title: "Einladung zur Teilnahme" subject_template: "%{invitee_name} hat dich eingeladen %{site_domain_name} beizutreten" - text_body_template: | - %{invitee_name} hat dich eingeladen, - - > **%{site_title}** - > - > %{site_description} - - beizutreten. - - Nachricht von %{invitee_name}: - - %{user_custom_message} - - Wenn du interessiert bist, folge einfach diesem Link: - - %{invite_link} - - Diese Einladung kommt von einem vertrauenswürdigen Benutzer. Daher wird für dich beim Betreten automatisch ein Benutzerkonto mit dieser E-Mail-Adresse erstellt. invite_password_instructions: title: "Passwort festlegen" subject_template: "Lege ein Passwort für dein %{site_name}-Konto fest" @@ -1758,7 +1700,9 @@ de: %{file_name} (%{file_size}) - Dieser Download-Link ist für die nächsten 48 Stunden gültig. + Der obenstehende Download-Link wird 48 Stunden gültig sein. + + Die Daten sind als Gzip-Archiv komprimiert. Wenn sich das Archiv beim Öffnen nicht selbst extrahiert, verwende eines der hier empfohlenen Werkzeuge: http://www.gzip.org/#faq4 csv_export_failed: title: "CSV-Export fehlgeschlagen" subject_template: "Datenexport fehlgeschlagen" @@ -2185,7 +2129,6 @@ de: follow_topic: "Diesem Thema folgen" join_the_discussion: "Mehr lesen" popular_posts: "Beliebte Beiträge" - from_topic_label: "Von" more_new: "Neu für dich" subject_template: "Zusammenfassung für [%{site_name}]" unsubscribe: "Diese Zusammenfassung wird von %{site_link} gesendet, wenn wir dich einige Zeit lang nicht gesehen haben. Abbestellen unter %{unsubscribe_link}." @@ -2903,8 +2846,6 @@ de: performance_report: initial_post_raw: Dieser Beitrag enthält tägliche Leistungsberichte deiner Site. initial_topic_title: Berichte zur Websitegeschwindigkeit - topic_invite: - user_exists: "Entschuldige, dieser Benutzer ist bereits eingeladen worden. Du kannst einen Benutzer nur einmal zu einem Thema einladen." tags: title: "Schlagwörter" staff_tag_disallowed: "Das Schlagwort \"%{tag}\" darf nur vom Team verwendet werden." diff --git a/config/locales/server.el.yml b/config/locales/server.el.yml new file mode 100644 index 0000000000..94826e373d --- /dev/null +++ b/config/locales/server.el.yml @@ -0,0 +1,3133 @@ +# encoding: utf-8 +# +# Never edit this file. It will be overwritten when translations are pulled from Transifex. +# +# To work with us on translations, join this project: +# https://www.transifex.com/projects/p/discourse-org/ + +el: + dates: + short_date_no_year: "D MMM" + short_date: "D MMM, YYYY" + long_date: "DD MMMM YYYY, H:mm" + datetime_formats: &datetime_formats + formats: + short: "%m-%d-%Y" + short_no_year: "%B %-d" + date_only: "%B %-d, %Y" + long: "%B %-d, %Y, %l:%M%P" + date: + month_names: [null, Ιανουάριος, Φεβρουάριος, Μάρτιος, Απρίλιος, Μάϊος, Ιούνιος, Ιούλιος, Αύγουστος, Σεπτέμβριος, Οκτώβριος, Νοέμβριος, Δεκέμβριος] + <<: *datetime_formats + time: + am: "πμ" + pm: "μμ" + <<: *datetime_formats + title: "Discourse" + topics: "Νήματα" + posts: "αναρτήσεις" + loading: "Φόρτωση" + powered_by_html: 'Βασίζεται στο Discourse, λειτουργεί καλύτερα με ενεργοποιημένη τη Javascript' + log_in: "Σύνδεση" + purge_reason: "Διεγράφη αυτόματα ως εγκαταλελειμμένος, μη ενεργοποιημένος λογαριασμός." + disable_remote_images_download_reason: "Το κατέβασμα εικόνων απενεργοποιήθηκε επειδή δεν υπάρχει αρκετός χώρος στο δίσκο." + anonymous: "Ανώνυμα" + remove_posts_deleted_by_author: "Διαγράφηκε από τον συγγραφέα" + emails: + incoming: + default_subject: "Αυτό το θέμα χρειάζεται τίτλο" + show_trimmed_content: "Εμφάνιση του περιεχομένου που έχει περικοπεί" + maximum_staged_user_per_email_reached: "Έχει φτάσει τον μέγιστο αριθμό χρηστών που δημιουργούνται με κάθε ηλεκτρονική διεύθυνση ταχυδρομείου." + errors: + empty_email_error: "Συμβαίνει όταν το αρχικό μήνυμα που λάβαμε ήταν κενό." + no_message_id_error: "Συμβαίνει όταν η αλληλογραφία δεν έχει επικεφαλίδα 'Message-Id' ." + auto_generated_email_error: "Συμβαίνει όταν η επικεφαλίδα 'προτεραιότητα' έχει οριστεί ώς: λίστα, άχρηστα,κύριο μέρος,, ή όταν οποιαδήποτε άλλη επικεφαλίδα περιλαμβάνει: αυτόματη καταχώριση, αυτόματη απάντηση ή αυτόματη παραγώγιση." + no_body_detected_error: "Συμβαίνει όταν είναι αδύνατο να βρεθεί το κύριο μέρος του μηνύματος και όταν δεν υπάρχουν επισυναπτόμενα." + inactive_user_error: "Συμβαίνει όταν ο αποστολέας είναι ανενεργός" + blocked_user_error: "Συμβαίνει όταν ο αποστολέας έχει μπλοκαριστεί" + bad_destination_address: "Συμβαίνει όταν καμία από τις ηλεκτρονικές διευθύνσεις στα πεδία To/Cc/Bcc ταιριάζει με ένα σωστά ρυθμισμένο ηλεκτρονικό ταχυδρομείο." + strangers_not_allowed_error: "Συμβαίνει όταν ο χρήστης προσπαθεί να δημιουργήσει ένα νέο θέμα σε κατηγορία που δεν είναι μέλος." + insufficient_trust_level_error: "Συμβαίνει όταν ο χρήστης προσπαθεί να δημιουργήσει ένα νέο θέμα σε κατηγορία που δεν έχει το απαιτούμενο επίπεδο εμπιστοσύνης. " + reply_user_not_matching_error: "Συμβαίνει όταν μια απάντηση έχει έρθει από ένα διαφορετικό ηλεκτρονικό ταχυδρομίο από αυτόν που είχε σταλεί η ειδοποίηση." + topic_not_found_error: "Συμβαίνει όταν καταχωρηθεί μία απάντηση για θέμα που έχει διαγραφεί. " + topic_closed_error: "Συμβαίνει όταν καταχωρηθεί μία απάντηση για θέμα που έχει κλείσει. " + bounced_email_error: "Το μήνυμα ηλεκτρονικού ταχυδρομείου είναι αναφορά αποτυχίας παράδοσης. " + screened_email_error: "Συμβαίνει όταν ο αποστολέας της ηλεκτρονικης διεύθηνσης έχει ήδη ελεγχθεί" + errors: &errors + format: '%{attribute} %{message}' + messages: + too_long_validation: "επιτρέπονται μέχρι %{max} χαρακτήρες, έχεις εισάγει %{length}." + invalid_boolean: "Λανθασμένη τιμή boolean." + taken: "έχει ήδη χρησιμοποιηθεί" + accepted: πρέπει να γίνει δεκτό + blank: δεν μπορεί να είναι άδειο + present: πρέπει να είναι άδειο + confirmation: "δεν συμφωνεί με το %{attribute}" + empty: δεν μπορεί να είναι άδειο + equal_to: πρέπει να είναι ίσο με το %{count} + even: θα πρέπει να είναι ίσα + exclusion: είναι δεσμευμένο + greater_than: πρέπει να είναι μεγαλύτερο από %{count} + greater_than_or_equal_to: πρέπει να είναι μεγαλύτερο ή ίσο με %{count} + has_already_been_used: "έχει ήδη χρησιμοποιηθεί" + inclusion: δεν περιλαμβάνεται στην λίστα + invalid: δεν είναι έγκυρο + is_invalid: "φαίνεται ασαφές, είναι μια ολοκληρωμένη πρόταση;" + contains_censored_words: "Περιέχει τις ακόλουθες λογοκριθέντες λέξεις: %{censored_words}" + matches_censored_pattern: "Περιέχει τις ακόλουθες λέξεις που συμπήπτουν με τα λογοκριθέντα regexp: %{censored_words} της σελίδας" + less_than: πρέπει να είναι λιγότερο από %{count} + less_than_or_equal_to: πρέπει να είναι λιγότερο ή ίσο με %{count} + not_a_number: δεν είναι αριθμός + not_an_integer: πρέπει να είναι ακέραιος αριθμός + odd: πρέπει να είναι μονός αριθμός + record_invalid: 'Η επικύρωση απέτυχε: %{errors}' + restrict_dependent_destroy: + one: "Η εγγραφή δεν μπορεί να σβηστεί γιατί υπάρχει μια εξαρτημένη %{record} " + many: "Η εγγραφή δεν μπορεί να σβηστεί γιατί υπάρχουν εξαρτημένες %{record} " + too_long: + one: είναι πολύ μεγάλο (μέγιστο 1 χαρακτήρας) + other: είναι πολύ μεγάλο (μέγιστο %{count} χαρακτήρες) + too_short: + one: είναι πολύ μικρό (ελάχιστος 1 χαρακτήρας) + other: είναι πολύ μικρό (ελάχιστοι %{count} χαρακτήρες) + wrong_length: + one: έχει λάθος μήκος (πρέπει να είναι 1 χαρακτήρα) + other: έχει λάθος μήκος (πρέπει να είναι %{count} χαρακτήρες) + other_than: "πρέπει να μην είναι %{count}" + template: + body: 'Παρουσιάστηκαν προβλήματα με τα παρακάτω πεδία:' + header: + one: '1 σφάλμα απαγόρευσε αυτό %{model} να αποθηκευτεί ' + other: '%{count} σφάλματα απαγόρευσαν το %{model} να αποθηκευτεί ' + embed: + load_from_remote: "Παρουσιάστηκε ένα σφάλμα κατά τη φόρτωση της ανάρτησης." + site_settings: + min_username_length_exists: "Δεν μπορείς να θέσεις το ελάχιστο μέγεθος ονόματος χρήστη πιο πάνω από το μικρότερο όνομα χρήστη." + min_username_length_range: "Δεν μπορείς να θέσεις το ελάχιστο πιο πάνω από το μέγιστο" + max_username_length_exists: "Δεν μπορείς να θέσεις το μέγιστο μέγεθος ονόματος χρήστη πιο κάτω από το μεγαλύτερο όνομα." + max_username_length_range: "Δεν μπορείς να θέσεις το μέγιστο πιο κάτω από το ελάχιστο." + default_categories_already_selected: "Δεν μπορείς να επιλέξεις μια κατηγορία που χρησιμοποιείται σε άλλη λίστα." + s3_upload_bucket_is_required: "Δεν μπορείτε να ενεργοποιήσετε μεταφορτώσεις στο S3 εάν δεν παρέχετε το 's3_upload_bucket'." + invite: + not_found: "Η πρόσκληση δεν είναι έγγυρη. Παρακαλώ επικοινωνήστε με τον διαχειρηστή της ιστοσελίδας." + bulk_invite: + file_should_be_csv: "To ανεβασμένο αρχείο πρέπει να έχει μορφή csv." + error: "Παρουσίαστηκε ένα σφάλμα κατά το ανέβασμα του αρχείου σας, Παρακαλώ δοκιμάστε αργότερα." + topic_invite: + user_exists: "Συγγνώμη, αυτός ο χρήστης έχει ήδη προσκληθεί. Οι προσκλήσεις μπορούν να γίνονται μόνο μια φορά." + backup: + operation_already_running: "Μια λειτουργία εκτελείται αυτήν τη στιγμή. Δεν μπορείς να ξεκινήσεις μια νέα δουλειά τώρα." + backup_file_should_be_tar_gz: "Το αντίγραφο ασφαλείας πρέπει να είναι αρχείο .tar.gz" + not_enough_space_on_disk: "Δεν υπάρχει αρκετός χώρος στο δίσκο για να ανεβάσεις αυτό το αντίγραφο ασφαλείας." + invalid_filename: "Το αντίγραφο ασφαλείας περιέχει μη έγκυρους χαρακτήρες. Οι έγκυροι χαρακτήρες είναι a-z 0-9 .- _." + not_logged_in: "Χρειάζεται να είσαι συνδεδεμένος για να το κάνεις αυτό." + not_found: "Η ζητούμενη διεύθυνση URL δεν βρέθηκε." + invalid_access: "Δεν έχεις δικαίωμα να δεις τους πόρους που ζήτησες." + read_only_mode_enabled: "Η ιστοσελίδα είναι σε λειτουργία μόνο για ανάγνωση. Οι αλλαγές είναι απενεργοποιημένες." + reading_time: "Χρόνος ανάγνωσης" + likes: "\"Μου αρέσει\"" + too_many_replies: + one: "Λυπούμαστε, αλλά οι νέοι χρήστες έχουν προσωρινό περιορισμό 1 απάντησης ανά νήμα." + other: "Λυπούμαστε, αλλά οι νέοι χρήστες έχουν προσωρινό περιορισμό %{count} απαντήσεων ανά νήμα." + embed: + start_discussion: "Ξεκίνησε τη συζήτηση" + continue: "Συνέχισε τη συζήτηση" + error: "Σφάλμα κατα την ενσωμάτωση" + referer: "Αναφέρων:" + mismatch: "Ο αναφέρων δεν ταιριάζει με οποιοδήποτε από τα παρακάτω πεδία:" + no_hosts: "Κανένα πεδίο δεν ορίστικε για ενσωμάτωση" + configure: "Ρύθμιση Ενσωμάτωσης" + more_replies: + one: "μια ακόμη απάντηση" + other: "%{count} ακόμη απαντήσεις" + loading: "Φόρτωση συζήτησης..." + permalink: "Μόνιμος σύνδεσμος" + imported_from: "Αυτό είναι το θέμα συζητησης της παρέας για την αυθεντική είσοδο στο %{link}" + in_reply_to: "▶ %{username}" + replies: + one: "1 απάντηση" + other: "%{count} απαντήσεις" + no_mentions_allowed: "Λυπούμαστε, δεν μπορείς να αναφέρεις άλλους χρήστες." + too_many_mentions: + one: "Λυπούμαστε, μπορείς να αναφέρεις μόνο έναν άλλο χρήστη σε κάθε δημοσίευση." + other: "Λυπούμαστε, μπορείς να αναφέρεις μόνο %{count} χρήστες σε κάθε δημοσίευση." + no_mentions_allowed_newuser: "Λυπούμαστε, οι καινούριοι χρήστες δεν μπορούν να αναφέρουν άλλους χρήστες." + too_many_mentions_newuser: + one: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να αναφέρουν μόνο άλλον ένα χρήστη σε μια δημοσίευση." + other: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να αναφέρουν μόνο %{count} χρήστες σε μια δημοσίευση." + no_images_allowed: "Λυπούμαστε, οι καινούριοι χρήστες δεν μπορούν να βάλουν εικόνες στις δημοσιεύσεις." + too_many_images: + one: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να βάλουν μόνο μία εικόνα σε μία δημοσίευση." + other: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να βάλουν μόνο %{count} εικόνες σε μία δημοσίευση." + no_attachments_allowed: "Λυπούμαστε, οι καινούριοι χρήστες δεν μπορούν να βάλουν συνημμένα αρχεία στις δημοσιεύσεις." + too_many_attachments: + one: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να βάλουν μόνο ένα συνημμένο αρχείο σε μία δημοσίευση." + other: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να βάλουν μόνο %{count} συνημμένα αρχεία σε μία δημοσίευση." + no_links_allowed: "Λυπούμαστε, οι καινούριοι χρήστες δεν μπορούν να βάλουν συνδέσμους στις δημοσιεύσεις." + too_many_links: + one: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να βάλουν μόνο ένα σύνδεσμο σε μία δημοσίευση." + other: "Λυπούμαστε, οι καινούριοι χρήστες μπορούν να βάλουν %{count} συνδέσμους σε μία δημοσίευση." + spamming_host: "Συγγνώμη αλλά δεν μπορείτε να αναρτήσετε σύνδεσμο σε αυτόν τον διακομιστή." + user_is_suspended: "Δεν επιτρέπεται να δημοσιεύσουν οι χρήστες που βρίσκονται σε κατάσταση αναστολής." + topic_not_found: "Κάτι πήγε στραβά. Ίσως το νήμα έκλεισε ή διαγράφηκε ενώ το κοιτούσες;" + not_accepting_pms: "Λυπούμαστε, %{username} δεν δέχεται μηνύματα αυτή τη στιγμή." + just_posted_that: "είναι παρόμοιο με αυτό που δημοσιεύσατε πρόσφατα" + invalid_characters: "περιέχει μη έγκυρους χαρακτήρες" + is_invalid: "φαίνεται ασαφές, είναι μια ολοκληρωμένη πρόταση;" + next_page: "επόμενη σελίδα" + prev_page: "προηγούμενη σελίδα" + page_num: "Σελίδα %{num}" + home_title: "Αρχική σελίδα" + topics_in_category: "Θέματα στη '%{κατηγορία}' κατηγορία" + rss_posts_in_topic: "RSS feed του '%{topic}'" + rss_topics_in_category: "Ροή RSS νημάτων στην κατηγορία '%{category}'" + author_wrote: "%{author} έγραψε:" + num_posts: "Δημοσιεύσεις:" + num_participants: "Συμμετέχοντες:" + read_full_topic: "Διαβάστε όλο το θέμα" + private_message_abbrev: "Μνμ" + rss_description: + latest: "Τελευταία θέματα" + hot: "Σημαντικά Θέματα" + top: "Κορυφαία Θέματα" + posts: "Τελευταίες αναρτήσεις" + private_posts: "Νέα προσωπικά μηνύματα" + group_posts: "Τελευταίες δημοσιεύσεις από %{group_name}" + group_mentions: "Τελευταίες αναφορές από %{group_name}" + user_posts: "Τελευταίες δημοσιεύσεις από @%{username}" + user_topics: "Τελευταία νήματα από @%{username}" + tag: "Νήματα με ετικέτα" + too_late_to_edit: "Αυτή η δημοσίευση δημιουργήθηκε πολύ καιρό πριν. Δεν μπορεί πλέον να γίνει επεξεργασία της ή να διαγραφεί." + revert_version_same: "Η τρέχουσα έκδοση είναι η ίδια με την έκδοση που προσπαθείς να επαναφέρεις." + excerpt_image: "φωτογραφία" + queue: + delete_reason: "διαγράφοντε μέσο εναλλαγμένης σειράς " + groups: + errors: + can_not_modify_automatic: "Δεν μπορείς να τροποποιήσεις μια αυτόματη ομάδα" + member_already_exist: "'%{username}' είναι ήδη μέλος της ομάδας." + invalid_domain: "'%{domain}' δεν είναι έγκυρο όνομα τομέα." + invalid_incoming_email: "'%{email}' δεν είναι έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου." + email_already_used_in_group: "'%{email}' χρησιμοποιείται ήδη από την ομάδα '%{group_name}'" + email_already_used_in_category: "'%{email}' χρησιμοποιείται ήδη από την κατηγορία '%{category_name}'." + default_names: + everyone: "όλοι" + admins: "διαχειριστές" + moderators: "συντονιστές" + staff: "προσωπικό" + trust_level_0: "επίπεδο_εμπιστοσύνης_0" + trust_level_1: "επίπεδο_εμπιστοσύνης_1" + trust_level_2: "επίπεδο_εμπιστοσύνης_2" + trust_level_3: "επίπεδο_εμπιστοσύνης_3" + trust_level_4: "επίπεδο_εμπιστοσύνης_4" + education: + until_posts: + one: "1 ανάρτηση" + other: "%{count} αναρτήσεις" + new-topic: | + Καλώς ήρθατε στο %{site_name} &mdash. ** ευχαριστούμε που αρχίσατε μιά νέα συνομιλία!** + + - Είστε σίγουροι οτι ο τίτλος είναι αρκετά ενδιαφέρον? Παρέχει μια καλή περίληψη του θέματος? + + - Ποιος θα ενδιαφερόταν για αυτό? Γιατί αυτό έχει σημασία? Τί είδους απαντήσεις θέλετε? + + - Συμπεριλάβετε πολυχρησιμοποιημένες λέξεις στο θέμα σας έτσι ώστε να μπορούν να το *βρουν* οι άλλοι. Για να κατηγοριοποιήσετε το θέμα σας με σχετικά θέματα, επιλέξτε μια κατηγορία. + + - Για περισσότερα, [δείτε τον οδηγό χρήσης της κοινότητάς μας](/guidelines). Αυτός ο πίνακας θα παρουσιαστεί μόνο για την πρώτη σας %{education_posts_text} + new-reply: | + Καλώς ήρθατε στο %{site_name} — **ευχαριστούμε για την συνεισφορά σας** + + - Βελτιώνει/προχωράει η απάντηση σας την συζήτηση με κάποιο τρόπο; + + - Να είστε ευγενικοί με όλους τους φίλους μέλη της κοινότητας μας. + + Η εποικοδομητική κριτική είναι ευπρόσδεκτη, αλλά να γίνεται κριτική σε *ιδέες*, όχι ανθρώπους. + + Για περισσότερες πληροφορίες, [δείτε τις οδηγίες της κοινότητας μας ](/guidelines). Αυτό το παράθυρο θα εμφανιστεί μόνο για την πρώτη σας %{education_posts_text}. + avatar: | + ### Τι θα λέγατε για μια εικόνα στο λογαριασμό σας; + + Έχετε δημοσιεύσει μερικά νήματα/θέματα και απαντήσεις, αλλά η φωτογραφία προφίλ σας δεν είναι όσο μοναδική όσο εσείς – είναι μόνο ένα γράμμα. + + Έχετε σκεφτεί **[να επισκεφθείτε το λογαριασμό σας](%{profile_path})** και να ανεβάσετε μια φωτογραφία που σας αντιπροσωπεύει; + + Είναι ευκολότερο να ακολουθείτε συζητήσεις και να βρείτε ενδιαφέροντες ανθρώπους σε συζητήσεις όταν όλοι έχουν μια μοναδική φωτογραφία προφίλ! + sequential_replies: | + ### Μπορείτε να απαντήσετε σε πολλαπλές δημοσιεύσεις με μια + + Αντί για πολλαπλές απαντήσεις σε ένα νήμα, μπορείτε να κοινοποιήσετε μια απάντηση που περιέχει αποσπάσματα από προηγούμενες δημοσιεύσεις ή @ονομαστικές αναφορές. + + Μπορείτε να επεξεργαστείτε την προηγούμενη απάντησή σας για να προσθέσετε μια φράση μαρκάροντας το κείμενο και επιλέγοντας το quote reply κουμπί που εμφανίζεται. + + Είναι ευκολότερο για όλους να διαβάζουν θέματα που έχουν λιγότερες αναλυτικές απαντήσεις σε αντίθεση με πολλές μικρές, ατομικές απαντήσεις. + dominating_topic: | + ### Επιτρέψτε σε άλλους να συμμετέχουν στη συζήτηση + + Αυτό το νήμα φαίνεται να είναι σημαντικό για εσάς &ndash. Έχετε δημοσιεύσει περισσότερο από %{percent}% των απαντήσεων εδώ. + + Είστε σίγουρος ότι παρέχετε επαρκή χρόνο σε άλλους ανθρώπους να μοιραστούν κι εκείνοι τις δικές τους απόψεις; + get_a_room: | + ### Σκεφθείτε να απαντήσετε σε περισσότερους ανθρώπους + + Έχετε ήδη απαντήσει %{count} φορές σε @%{reply_username} σε αυτό το συγκεκριμένο νήμα. + + Έχετε σκεφθεί να απαντήσετε και σε *άλλους* ανθρώπους στη συζήτηση; Μια καλή συζήτηση εμπεριέχει πολλές φωνές και οπτικές γωνίες. + + Εάν θέλετε να συνεχίσετε τη συζήτησή σας με αυτόν τον συγκεριμένο χρήστη, [στείλτε τους ένα προσωπικό μήνυμα](/users/%{reply_username}). + too_many_replies: | + ### Έχετε φτάσει το όριο απαντήσεων γι' αυτό το νήμα + + Λυπούμαστε, αλλά οι νέοι χρήστες είναι προσωρινά περιορισμένοι σε %{newuser_max_replies_per_topic} απαντήσεις στο ίδιο νήμα. + + Αντί να προσθέσετε κι άλλη απάντηση, παρακαλώ επεξεργατείτε τις προηγούμενες απαντήσεις ή επισκεφθείτε άλλα νήματα. + reviving_old_topic: | + ### Αναβίωση αυτού του νήματος? + + Η τελευταία απάντηση σε αυτό το νήμα ήταν **%{days}** μέρες πριν. Η απάντησή σας θα μεταφέρει το νήμα στην κορυφή της λίστας του και θα ειδοποιήjavascript:;σει οποιονδήποτε έχει προηγουμένως εμπλακεί στη συζήτηση. + + Είστε σίγουροι ότι θέλετε να συνεχίσετε αυτή την παλιά συζήτηση; + activerecord: + attributes: + category: + name: "Όνομα κατηγορίας" + topic: + title: 'Τίτλος' + featured_link: 'Προτεινόμενος σύνδεσμος' + post: + raw: "Κύριο μέρος" + user_profile: + bio_raw: "Σχετικά με εμένα" + errors: + models: + topic: + attributes: + base: + warning_requires_pm: "Μπορείτε να καταχωρίσετε προειδοποιήσεις μόνο σε προσωπικά μηνύματα." + too_many_users: "Μπορείτε να στέλνετε προειδοποιήσεις μόνο σε ένα χρήστη κάθε φορά." + cant_send_pm: "Συγγνώμη, δεν μπορείτε να στείλετε προσωπικό μήνυμα σε αυτόν τον χρήστη." + no_user_selected: "Πρέπει να επιλέξετε έναν έγκυρο χρήστη." + featured_link: + invalid: "δεν είναι έγκυρο. To URL πρέπει να συμπεριλαμβάνει http:// ή https://." + invalid_category: "δεν μπορεί να δεχτεί επεξεργασία σε αυτή την κατηγορία." + user: + attributes: + password: + common: "είναι ένας από τους 10000 πιο κοινούς κωδικούς πρόσβασης. Παρακαλώ χρησιμοποιήστε έναν πιο ασφαλή κωδικό πρόσβασης." + same_as_username: "είναι ο ίδιος με το όνομα χρήστη σας. Παρακαλώ χρησιμοποιήστε εναν πιο ασφαλή κωδικό πρόσβασης." + same_as_email: "είναι το ίδιο με το email σας. Παρακαλώ χρησιμοποιήστε ένα πιο ασφαλές κωδικό." + same_as_current: "είναι ο ίδιος με τον τρέχοντα κωδικό." + unique_characters: "Περιέχει υπερβολικά πολλούς επαναλαμβανόμενους χαρακτήρες. Παρακαλώ χρησιμοποιήστε ένα πιο ασφαλή κωδικό πρόσβασης. " + ip_address: + signup_not_allowed: "Η εγγραφή δεν επιτρέπεται απο αυτόν τον λογαρισμό" + color_scheme_color: + attributes: + hex: + invalid: "δεν είναι ένα έγκυρο χρώμα" + post_reply: + base: + different_topic: "Η δημοσίευση και η απάντηση πρέπει να ανήκουν στο ίδιο νήμα." + web_hook: + attributes: + payload_url: + invalid: "Το URL δεν είναι έγκυρο. To URL πρέπει να συμπεριλαμβάνει http:// ή https://. Και δεν επιτρέπεται κανένα κενό." + <<: *errors + user_profile: + no_info_me: "
    το πεδίο Σχετικά Με Εμένα είναι κενό, θα ήθελες να το συμπληρώσεις?
    " + no_info_other: "
    %{name} δεν έχει εισάγει τίποτα στο πεδίο Σχετικά με Εμένα στο προφίλ του
    " + vip_category_name: "Σαλόνι" + vip_category_description: "Κατηγορία αποκλειστικά για μέλη με επίπεδο εμπιστοσύνης (trust level) 3 ή υψηλότερο." + meta_category_name: "Ανατροφοδότηση ιστοσελίδας" + meta_category_description: "Συζήτηση σχετικά με το forum, την οργάνωση του, τον τρόπο λειτουργίας του, και πώς μπορεί να βελτιωθεί." + staff_category_name: "Προσωπικό" + staff_category_description: "Ιδιωτική κατηγορία για συζητήσεις του προσωπικού. Τα θέματα είναι ορατά μόνο σε διαχειριστές και συντονιστές." + assets_topic_title: "Στοιχεία/assets για τον σχεδιασμό της ιστοσελίδας" + assets_topic_body: "Αυτό είναι ένα μόνιμο θέμα, είναι ορατό μόνο στο προσωπικό, για την αποθήκευση εικόνων και αρχείων που χρησιμοποιούνται στον σχεδιασμό της ιστοσελίδα. Μην το διαγράψετε!\n\nΕδώ είναι πως:\n\n1. Απαντήστε σε αυτό το θέμα.\n2. Ανεβάστε όλες τις εικόνες που θέλετε να χρησιμοποιήσετε σαν λογότυπα, αγαπημένα εικονίδια και ούτω κάθε εξής. (Χρησιμοποιήστε το εικονίδιο της γραμμής εργαλείων μεταφόρτωσης στη επεξεργασία ανάρτησης, ή σύρετε ή επικολλήστε εικόνες.)\n3. Υποβάλετε απάντησή σας για να το δημοσιεύσετε.\n4. Κάντε δεξί κλικ στις εικόνες στη νέα ανάρτηση σας για να πάρετε το σύνδεσμο των απεσταλμένων εικόνων, ή κάντε κλικ στο εικονίδιο επεξεργασία για να επεξεργαστείτε τη ανάρτηση σας και να ανακτήσετε το σύνδεσμο με τις εικόνες. Αντιγράψτε το σύνδεσμο.\n5. Επικολλήστε τον σύνδεσμο [basic settings](/admin/site_settings/category/required).\n\n\nΕάν θέλετε να ενεργοποιήσετε διαφορετικό τύπο αρχείου για να ανεβάσετε, επεξεργαστείτε `εξουσιοδοτημένες_επεκτάσεις` στο [file settings](/admin/site_settings/category/files)." + discourse_welcome_topic: + title: "Καλώς ήρθατε στο Discourse" + body: |2+ + + + Η πρώτη παράγραφος αυτού του καρφιτσωμένου θέματος θα είναι ορατή ως μήνυμα καλωσορίσματος προς τους νέους επισκέπτες της σελίδας. Είναι σημαντικό! + + **Να αλλαχτεί** σε μία σύντομη περιγραφή της κοινότητά σας: + + - Σε ποιον απευθύνεται η σελίδα; + + - Τι θα βρει εδώ πέρα; + + - Γιατί αξίζει να επισκευθεί τη σελίδα; + + - Που αλλού θα μπορούσαν να βρουν υλικό σχετικά με το θέμα; (url κτλπ) + + + + + + + Θα ήταν καλό να κλείσετε αυτό το θέμα μέσω του διαχειριστή :wrench: (στην κάτω δεξιά και προς τα πάνω μεριά), έτσι ώστε οι απαντήσεις να μην μαζευτούν στην ανακοίνωση. + + lounge_welcome: + title: "Καλώς ήρθατε στο Σαλόνι" + body: |2 + + Συγχαρητήρια! :confetti_ball: + + Εάν μπορείς να δεις αυτό το θέμα, έχεις πρόσφατα μεταφερθεί στο **κανονικα** (επίπεδο εμπιστοσύνης χρήστη 3) + + Μπορείς τώρα να &hellip, + + *Επεξεργαστείς τον τίτλο οποιουδήποτε θεματος + + *Αλλάξεις την κατηγορία οποιουδήποτε θέματος + + *Έχεις όλες σου τις σελίδες ακολουθημένες ([automatic nofollow](http://en.wikipedia.org/wiki/Nofollow) έχει διαγραφτεί) + + *Έχεις πρόσβαση σε ιδιοτική Lounge κατηγορία, που εμφανίζεται μόνο σε χρήστες του επιπέδου 3 και πιο πάνω. + + *Κρύψεις ανεπιθύμητη αλληλογραφία με μία σημαία + + Εδώ είναι η [current list of fellow regulars](/badges/3/regular). Είσαι σίγουρος ότι θα πεις γεια. + + Ευχαριστούμε που είσαι ένα σημαντικό μέρος αυτής της κοινότητας! + + (Για περισσότερες πληροφορίες όσον αφορά τα πεδία, [see this topic][trust]. Παρακαλώ σημείωσε πως μόνο τα μέλη που συνεχίζουν να τηρούν τις απαραίτητες απαιτήσεις θα παραμένουν μόνιμοι χρήστες.) + + [trust]: https://meta.discourse.org/t/what-do-user-trust-levels-do/4924 + category: + topic_prefix: "Σχετικά με την κατηγορία %{category} " + replace_paragraph: "(Αντικατέστηστε αυτή την πρώτη παράγραφο με μια σύντομη περιγραφή της νέας σας κατηγορίας. Αυτή η οδηγία θα εμφανιστεί στην περιοχή επιλογής κατηγορίας, επομένως προσπάθησε να είναι κάτω απο 200 χαρακτήρες. **Μέχρι να επεξεργαστείς αυτή την περιγραφή ή να δημιουργήσεις θέματα, αυτή η κατηγορία δεν θα εμφανίζεται στην σελίδα κατηγοριών. **)" + post_template: "%{replace_paragraph}\n\nΧρησιμοποιήστε τις επόμενες παραγράφους για μια μεγαλύτερη περιγραφή, ή για να καθορίσεις οδηγίες και κανόνες για τις κατηγορίες:\n\n- Γιατί μπορεί να χρησιμοποιηθεί αυτή η κατηγορία? Ποιος είναι ο σκοπός της?\n\n- Αυτή η κατηγορία είναι διαφορετική από αυτές που έχουμε ήδη?\n\n- Τι πρέπει να περιέχουν τα θέματα αυτής της κατηγορίας γενικότερα?\n\n- Χρειαζόμαστε αυτή την κατηγορία? Μπορούμε να την ενώσουμε με άλλη κατηγορία, ή υποκατηγορία?\n\n\n" + errors: + uncategorized_parent: "Μη κατηγοριοποιημένο δεν μπορεί να έχει κύρια κατηγορία" + self_parent: "Η γονική κατηγορία μιας υποκατηγορίας δεν μπορεί να είναι ο εαυτός της" + depth: "Δεν μπορείτε να βάλετε μια υποκατηγορία κάτω από άλλη" + invalid_email_in: "'%{email}' δεν είναι έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου." + email_already_used_in_group: "'%{email}' χρησιμοποιείται ήδη από την ομάδα '%{group_name}'" + email_already_used_in_category: "%{email}' χρησιμοποιείται ήδη από την κατηγορία '%{caregory_name}'." + cannot_delete: + uncategorized: "Δεν μπορείτε να διαγράψετε την 'Mη κατηγοριοποιημένο'" + has_subcategories: "Δεν είναι δυνατή η διαγραφή αυτής της κατηγορίας, επειδή έχει υπο-κατηγορίες." + topic_exists: + one: "Δεν είναι δυνατή η διαγραφή αυτής της κατηγορίας, επειδή έχει 1 θέμα. Το παλαιότερο θέμα είναι %{topic_link}." + other: "Δεν είναι δυνατή η διαγραφή αυτής της κατηγορίας, επειδή έχει %{count} θέματα. Το παλαιότερο θέμα είναι %{topic_link}." + topic_exists_no_oldest: "Δεν είναι δυνατή η διαγραφή αυτής της κατηγορίας, διότι η καταμέτρηση του θέματος είναι %{count}." + uncategorized_description: "Νήματα που δεν χρειάζονται κατηγορία, ή που δεν ταιριάζουν σε καμία άλλη από τις κατηγορίες που ήδη υπάρχουν." + trust_levels: + newuser: + title: "νέος χρήστης" + basic: + title: "βασικός χρήστης" + member: + title: "μέλος" + regular: + title: "κανονικός" + leader: + title: "αρχηγός" + change_failed_explanation: "Προσπάθησες να υποβιβάσεις τον %{όνομα_χρήστη} σε '%{new_trust_level}'. Ωστόσο το επίπεδο εμπιστοσύνης τους είναι ήδη '%{current_trust_level}'. Ο/Η %{user_name} θα παραμείνει στο '%{current_trust_level}' - εάν επιθυμείς ακόμα να υποβιβάσεις το επίπεδο εμπιστοσύνης του χρήστη, κλείδωσε πρώτα το επίπεδο εμπιστοσύνης " + rate_limiter: + slow_down: "Η εντολή αυτή έχει εκτελεστεί πάρα πολλές φορές, δοκιμάστε ξανά αργότερα." + too_many_requests: "Υπάρχει περιορισμός στις φορές που επαναληφθεί να γίνει αυτή η πράξη μέσα σε μια μέρα. Παρακαλούμε παριμένετε %{time_left} προτού δοκιμάσετε ξανά." + by_type: + first_day_replies_per_day: "Έχεται φτάσει τον μέγιστο αριθμό απαντήσεων όπου ένας νέος χρήστης μπορεί να δημιουρήσει στην πρώτη του μέρα. Παρακαλώ όπως αναμέναται %{time_left} προτού να προσπαθήσεται ξανά." + first_day_topics_per_day: "Έχεται φτάσει τον μέγιστο αριθμό θεμάτων όπου ένας νέος χρήστης μπορεί να δημιουργήσει στην πρώτη του μέρα. Παρακαλώ όπως αναμένατε %{time_left} προτού να προσπαθήσετε ξανά." + create_topic: "Δημιουργείτε θέματα πολύ γρήγορα. Παρακαλώ περιμένετε %{time_left} προτού να προσπαθήσετε ξανά." + create_post: "Η απάντησή σας ήταν πολύ γρήγορη. Παρακαλώ όπως αναμένατε %{time_left} προτού να προσπαθήσεται ξανά." + delete_post: "Διαγράφεται πολύ γρήγορα τις δημοσιεύσεις. Παρακαλώ όπως αναμέναται %{time_left} προτού να προσπαθήσεται ξανά." + public_group_membership: "ενώνεστε και βγένετε πολύ συχνά. περιμένετε % {time_left} πριν δοκιμάσετε ξανά" + topics_per_day: "Έχεις φτάσει το ανώτατο όριο νέων θεμάτων σήμερα. Παρακαλώ περίμενε %{time_left} πριν δοκιμάσεις ξανά." + pms_per_day: "Έχεις φτάσει το ανώτατο όριο μηνυμάτων σήμερα. Παρακαλώ περίμενε %{time_left} πριν δοκιμάσεις ξανά." + create_like: "Έχεις φτάσει το ανώτατο όριο αριθμού των \"μου αρέσει\" σήμερα. Παρακαλώ περίμενε %{time_left} πριν δοκιμάσεις ξανά." + create_bookmark: "Έχεις φτάσει το ανώτατο όριο σελιδοδείκτων σήμερα. Παρακαλώ περίμενε %{time_left} πριν δοκιμάσεις ξανά." + edit_post: "έχετε φθάσει το ανώτατο όριο παραλλαγών για σήμερα. Παρακαλώ περιμένετε %{time_left} πριν δοκιμάσετε ξανά" + live_post_counts: "Ζητάς ζωντανές δημοσιεύσεις πολύ γρήγορα. Παρακαλώ περίμενε %{time_left} πριν δοκιμάσεις ξανά." + unsubscribe_via_email: "Έχετε φτάσει το μέγιστο αριθμό των καταργήσεων εγγραφής μέσω του ηλεκτρονικού ταχυδρομείου σήμερα. Παρακαλώ περιμένετε % {time_left} πριν προσπαθήσετε ξανά." + topic_invitations_per_day: "Έχετε φθάσει το ανώτατο όριο προσκλήσεων τίτλου για σήμερα. Παρακαλώ περιμένετε %{time_left} πριν δοκιμάσετε ξανά." + hours: + one: "1 ώρα" + other: "%{count} ώρες" + minutes: + one: "1 λεπτό" + other: "%{count} λεπτά" + seconds: + one: "1 δευτερόλεπτο" + other: "%{count} δευτερόλεπτα" + datetime: + distance_in_words: + half_a_minute: "< 1λ" + less_than_x_seconds: + one: "< 1δ" + other: "< %{count}δ" + x_seconds: + one: "1δ" + other: "%{count}δ" + less_than_x_minutes: + one: "1λ" + other: "< %{count}λ" + x_minutes: + one: "1λ" + other: "%{count}λ" + about_x_hours: + one: "1ω" + other: "%{count}ω" + x_days: + one: "1η" + other: "%{count}η" + about_x_months: + one: "1μήνας" + other: "%{count}μήνας" + x_months: + one: "1μήνας" + other: "%{count}μήνας" + about_x_years: + one: "1ε" + other: "%{count}ε" + over_x_years: + one: "> 1ε" + other: "> %{count}ε" + almost_x_years: + one: "1ε" + other: "%{count}ε" + distance_in_words_verbose: + half_a_minute: "μόλις τώρα" + less_than_x_seconds: + one: "μόλις τώρα" + other: "μόλις τώρα" + x_seconds: + one: "πριν 1 δευτερόλεπτο" + other: "πριν %{count} δευτερόλεπτα" + less_than_x_minutes: + one: "πριν από λιγότερο 1 λεπτό" + other: "πριν από λιγότερο %{count} λεπτά" + x_minutes: + one: "πριν 1 λεπτό" + other: "πριν %{count} λεπτά" + about_x_hours: + one: "πριν 1 ώρα" + other: "πριν %{count} ώρες" + x_days: + one: "πριν 1 μέρα" + other: "πριν %{count} μέρες" + about_x_months: + one: "πριν 1 μήνα περίπου" + other: "πριν %{count} μήνες περίπου" + x_months: + one: "πριν 1 μήνα" + other: "πριν %{count} μήνες" + about_x_years: + one: "πριν 1 χρόνο περίπου" + other: "πριν %{count} χρόνια περίπου" + over_x_years: + one: "πάνω από 1 χρόνο" + other: "πάνω από %{count} χρόνια" + almost_x_years: + one: "σχεδόν 1 χρόνο πριν" + other: "σχεδόν %{count} χρόνια πριν" + password_reset: + no_token: "Συγνώμη, ο σύνδεσμος αλλάξτε τον κοδικό σας είναι πολύ παλιός. Επιλέξτε ενωθήτε και χρησιμοποιήστε 'ξέχασα τον κοδικό μου' για να λάβετε νέο σύνδεσμο. " + choose_new: "Επίλεξε έναν νέο κωδικό πρόσβασης" + choose: "Επίλεξε κωδικό πρόσβασης" + update: 'Ενημέρωση συνθηματικού' + save: 'Εφαρμογή Συνθηματικού' + title: 'Δημιουργία καινούργιου συνθηματικού' + success: "Αλλάξατε επιτυχώς τον κωδικό πρόσβασής σας και έχετε συνδεθεί." + success_unapproved: "Αλλάξατε επιτυχώς τον κωδικό πρόσβασής σας" + change_email: + confirmed: "Η ηλεκτρονική διεύθυνσή σας έχει ενημερωθεί." + please_continue: "Συνεχίστε στο %{site_name}" + error: "Υπήρχε ένα λάθος αλλάζοντας την διεύθυνση email. Ίσως η διεύθυνση είναι ήδη σε χρήση;" + error_staged: "Υπήρξε πρόβλημα στο να αλλάξετε την ηλεκτρονική σας διέυθυνση. Η διέυθυνση αυτη χρησιμοποιήτε ήδη από αλλό χρήστη. " + already_done: "Λυπούμαστε, αυτή η επιβεβαίωση του συνδέσμου δεν είναι πια έγκυρη. Πιθανόν η διεύθυνση του ηλεκτρονικού ταχυδρομείου να έχει αλλάξει ήδη." + authorizing_old: + title: "Ευχαριστώ για την επιβεβαίωση της τρέχουσας διεύθυνσης ηλεκτρονικού ταχυδρομείου" + description: "Σας στέλνουμε τώρα με ηλεκτρονικό μύνημα με την επιβεβαίωση τηνς νεας σας διέυθυνσης " + activation: + action: "Πατήστε εδώ για να ενεργοποιήσετε το λογαριασμό σας." + already_done: "Συγνώμη, αυτός ο σύνδεσμος επιβεβαίωσης του λογαριασμού σας δεν είναι πλέον έγκυρος. Ίσως ο λογαριασμός σας είναι ήδη ενεργός;" + please_continue: "Ο νέος λογαριασμός σας έχει επιβεβαιωθεί. Θα μεταφερθείτε στην αρχική σελίδα." + continue_button: "Συνεχίστε στο %{site_name}" + welcome_to: "Καλώς ήλθατε στο %{site_name}!" + approval_required: "Ένας συντονιστής πρέπει να εγκρίνει το νέο σας λογαριασμό για να μπορέσετε να αποκτήσετε πρόσβαση σε αυτό το φόρουμ. Θα λάβετε ένα μήνυμα ηλεκτρονικού ταχυδρομείου όταν ο λογαριασμός σας έχει εγκριθεί!" + missing_session: "Δεν μπορούμε να ανιχνεύσουμε αν δημιουργήθηκε ο λογαριασμό σας, παρακαλούμε βεβαιωθείτε ότι έχετε ενεργοποιήσει τα cookies." + post_action_types: + off_topic: + title: 'Εκτός-Θέματος' + description: 'Αυτή η δημοσίευση δεν είναι σχετική με την τρέχουσα συζήτηση όπως ορίζεται από τον τίτλο και την πρώτη δημοσίευση, και θα πρέπει μάλλον να μετακινηθεί αλλού.' + long_form: 'Επισημάνετε το ως εκτός θέματος' + spam: + title: 'Ανεπιθύμητα' + description: 'Αυτή η δημοσίευση είναι διαφήμιση. Δεν είναι χρήσιμη ή σχετική με το θέμα, αλλά αποσκοπεί σε διαφημιστική προώθηση.' + long_form: 'Επισημάνετε το ως ανεπιθύμητο' + email_title: '"%{title}" επισημάνθηκε ως ανεπιθύμητο' + email_body: "%{link}\n\n%{message}" + inappropriate: + title: 'Ανάρμοστο' + description: 'Το περιεχόμενο αυτή της δημοσίευσης θα θεωρούνταν από κάθε λογικό άνθρωπο, προσβλητικό, καταχρηστικό ή αντίθετο με τις της κοινότητας μας' + long_form: 'Επισημάνετε το ως ανάρμοστο' + notify_user: + title: 'Αποστολή μηνύματος στον @{{username}} ' + description: 'Θέλω να μιλήσω με αυτό το άτομο άμεσα και προσωπικά σχετικά με αυτή τη δημοσίευση.' + long_form: 'ειδοποιήσαι τον χρήστη' + email_title: 'Η δημοσίευση σας στο "%{title}"' + email_body: "%{link}\n\n%{message}" + notify_moderators: + title: "Κάτι άλλο" + description: 'Η συγκεκριμένη ανάρτηση απαιτεί έλεγχο από το προσωπικό. για έναν άλλον λόγο που δεν αναφέρεται παραπάνω.' + long_form: 'Αναφέρθηκε για έλεγχο από το προσωπικό.' + email_title: 'Μια ανάρτηση στο "%{title}" απαιτεί έλεγχο από το προσωπικό.' + email_body: "%{link}\n\n%{message}" + bookmark: + title: 'Σελιδοδείκτης' + description: 'Τοποθετήσατε σελιδοδείκτη σε αυτή την ανάρτηση' + long_form: 'τοποθετήσατε σελιδοδείκτη σε αυτή την ανάρτηση' + like: + title: 'Σας αρέσει' + description: 'Σας αρέσει αυτή η δημοσίευση' + long_form: 'Μου άρεσε' + vote: + title: 'Ψηφίστε' + description: 'Ψηφίστε για αυτή την δημοσίευση ' + long_form: 'Ψηφίσατε για αυτή την δημοσίευση' + user_activity: + no_bookmarks: + self: "Δεν έχεις σελιδοδείκτη σε καμία ανάρτηση, οι σελιδοδείκτες στις αναρτήσεις σου επιτρέπουν εύκολη πρόσβαση σε αυτές αργότερα." + others: "Κανένας σελιδοδείκτης." + no_likes_given: + self: "Δεν έχεις πατήσει \"μου αρέσει\" σε καμία δημοσίευση." + others: "Κανένα \"μου αρέσει\" στις δημοσιεύσεις." + topic_flag_types: + spam: + title: 'Ανεπιθύμητα' + description: 'Αυτό το θέμα είναι διαφήμιση. Δεν είναι χρήσιμο ή σχετικό με το forum, αλλά αποσκοπεί σε διαφημιστική προώθηση.' + long_form: 'Επισημάνετε το ως ανεπιθύμητο' + inappropriate: + title: 'Ακατάλληλο' + description: 'Αυτό το θέμα έχει περιεχόμενο το οποίο θα θεωρούνταν από κάθε λογικό άνθρωπο, προσβλητικό, καταχρηστικό ή αντίθετο με τις της κοινότητας μας' + long_form: 'Επισημάνετε το ως ανάρμοστο' + notify_moderators: + title: "Κάτι άλλο" + description: 'Το θέμα απαιτεί την γενική προσοχή του προσωπικού, βασισμένη στα κατευθυντήριες γραμμές,TOS, ή για όποιον δήποτε άλλο λόγο που δεν αναφέρεται πιο πάνω.' + long_form: 'Επισημάνετε το για να ελεγχθεί από moderator' + email_title: 'Το θέμα "%{title}" χρειάζεται έλεγχο από διαμεσολαβητή' + email_body: "%{link}\n\n%{message}" + flagging: + you_must_edit: 'Η ανάρτηση σου έχει επισημανθεί από την κοινότητα. Παρακαλώ δες τα μηνύματα σου.' + user_must_edit: '

    Αυτή η δημοσίευση έχει αναφερθεί από την κοινότητα και είναι προσωρινά κρυφή

    ' + archetypes: + regular: + title: "Κανονικό Νήμα" + banner: + title: "Νήμα ανακοίνωσης" + message: + make: "Aυτό το νήμα είναι τώρα νήμα ανακοίνωσης. Θα εμφανίζεται στην κορυφή της κάθε σελίδας μέχρι να απορριφθεί από το χρήστη." + remove: "Αυτό το θέμα δεν είναι πλέον διαφημιστικό πλαίσιο. Δε θα εμφανίζεται πια στην κορυφή της κάθε σελίδας." + unsubscribed: + title: "Επιτυχής απεγγραφή!" + description: "Καταργήσατε την εγγραφή σας. Για να αλλάξετε της ρυθμίσεις του email σας
    επισκεφθείτε τις προτιμήσεις σας." + topic_description: "Για να εγγραφείτε ξανά στο %{link}, χρησιμοποιήστε τον έλεγχο ειδοποιήσεων από κάτω ή δεξιά του νήματος." + unsubscribe: + title: "Απεγγραφή" + stop_watching_topic: "Διακοπή παρακολούθησης αυτού του νήματος, %{link}." + mute_topic: "Σίγαση όλων των ειδοποιήσεων για αυτό το νήμα, %{link}" + unwatch_category: "Διακοπή παρακολούθησης όλων των νημάτων της κατηγορίας %{category}" + mailing_list_mode: "Απενεργοποιήστε τη λειτουργία της ταχυδρομικής λίστας" + disable_digest_emails: "Διακοπή αποστολής περιληπτικών μηνυμάτων" + all: "Μη μου στέλνετε mail από το %{sitename}" + different_user_description: "Έχετε συνδεθεί ως διαφορετικός χρήστης από εκείνον που επικοινωνήσαμε μέσω ηλεκτρονικού ταχυδρομείου. Παρακαλούμε αποσυνδεθείτε, ή χρησιμοποιήστε την ανώνυμη λειτουργία, και δοκιμάστε ξανά." + not_found_description: "Λυπούμαστε, δεν μπορέσαμε να βρούμε την συγκεκριμένη κατάργηση εγγραφής. Είναι πιθανό ο σύνδεσμος στο email σας να έληξε? " + log_out: "Αποσύνδεση" + user_api_key: + title: "Εξουσιοδοτημένη πρόσβαση στην εφαρμογή" + authorize: "Εξουσιοδοτώ" + read: "διαβάζω" + read_write: "διαβάζω/γράφω" + description: "\"%{application_name}\" ζητά την ακολόλουθη πρόσβαση στον λογαριασμό σου:" + no_trust_level: "Συγγνώμη, δεν έχεις το απαιτούμενο επίπεδο εμπιστοσύνης για να έχεις πρόσβαση στον χρήστη API" + generic_error: "Συγνώμη, δεν μπορούμε να εκδώσουμε σε χρήστη API κλειδία, αυτή η πράξη μπορεί να μην είναι διαθέδιμη από τη διαχείριση της σελίδας. " + scopes: + message_bus: "Ζωντανές ενημερώσεις" + notifications: "Διάβασε και διάγραψε τις ειδοποιήσεις" + push: "ειδοποιήσεις για περετέρο υπηρεσίες" + session_info: "Διαβάστε τις πληροφορίες του χρήστη" + read: "Ανάγνωση όλων" + write: "Γράψτε όλα" + reports: + visits: + title: "Επισκέψεις Χρήστη" + xaxis: "Ημέρα" + yaxis: "Αριθμός επισκέψεων" + signups: + title: "Νέοι Χρήστες" + xaxis: "Ημέρα" + yaxis: "Αριθμός νέων χρηστών" + profile_views: + title: "Προβολές Προφίλ Χρήστη" + xaxis: "Ημέρα" + yaxis: "Αριθμός προβολής προφίλ χρηστών" + topics: + title: "Θέματα" + xaxis: "Ημέρα" + yaxis: "Αριθμός νέων θεμάτων" + posts: + title: "Δημοσιεύσεις" + xaxis: "Ημέρα" + yaxis: "Αριθμός νέων δημοσιεύσεων" + likes: + title: "Αρέσει" + xaxis: "Ημέρα" + yaxis: "Αριθμός νέων likes" + flags: + title: "Σημάνσεις" + xaxis: "Ημέρα" + yaxis: "Αριθμός επισημάνσεων" + bookmarks: + title: "Σελιδοδείκτες" + xaxis: "Ημέρα" + yaxis: "Αριθμός νέων σελιδοδικτών " + starred: + title: "Επιλεγμένα" + xaxis: "Ημέρα" + yaxis: "Αριθμός νέων πρωταγονιστικών θεμάτων." + users_by_trust_level: + title: "Χρήστες ανάλογα με το Επίπεδο Εμπιστοσύνης" + xaxis: "Επίπεδο Εμπιστοσύνης" + yaxis: "Αριθμός χρηστών" + emails: + title: "Απεσταλμένα μηνύματα ηλεκτρονικού ταχυδρομείου" + xaxis: "Ημέρα" + yaxis: "Αριθμός μηνυμάτων ηλεκτρονικού ταχυδρομείου" + user_to_user_private_messages: + title: "Χειριστή-προς-χειριστή" + xaxis: "Ημέρα" + yaxis: "Αριθμός μηνυμάτων" + system_private_messages: + title: "Σύστημα" + xaxis: "Ημέρα" + yaxis: "Αριθμός μηνυμάτων" + moderator_warning_private_messages: + title: "Προειδοποίηση Συντονιστή" + xaxis: "Ημέρα" + yaxis: "Αριθμός μηνυμάτων" + notify_moderators_private_messages: + title: "Ειδοποίηση Συντονιστών" + xaxis: "Ημέρα" + yaxis: "Αριθμός μηνυμάτων" + notify_user_private_messages: + title: "Ειδοποίηση Χρήστη" + xaxis: "Ημέρα" + yaxis: "Αριθμός μηνυμάτων" + top_referrers: + title: "Κορυφαίες παραπομπές" + xaxis: "Χρήστης" + num_clicks: "Clicks" + num_topics: "Θέματα" + top_traffic_sources: + title: "Κύριες πηγές κίνησης. " + xaxis: "Τομέας" + num_clicks: "Clicks" + num_topics: "Θέματα" + num_users: "Χρήστες" + top_referred_topics: + title: "Κορυφαία Αναφερόμενα Θέματα" + xaxis: "Θέμα" + num_clicks: "Clicks" + page_view_anon_reqs: + title: "Ανώνημος " + xaxis: "Ημέρα" + yaxis: "Ανώνυμες Αναγνώσεις" + page_view_logged_in_reqs: + title: "Συνδεδεμένος" + xaxis: "Ημέρα" + yaxis: "Συνδεδεμένοι στις αναγνώσεις" + page_view_crawler_reqs: + title: "Κακόβουλοι ακόλουθοι ιστού" + xaxis: "Ημέρα" + yaxis: "Θεάσεις σελίδας κακόβουλων ακόλουθων ιστού" + page_view_total_reqs: + title: "Σύνολο" + xaxis: "Ημέρα" + yaxis: "Σύνολο προβολών σελίδας" + page_view_logged_in_mobile_reqs: + title: "Συνδεδεμένοι στις αναγνώσεις" + xaxis: "Ημέρα" + yaxis: "Ένωση κινητού τηλεφώνου στις προβολές σελιδών. " + page_view_anon_mobile_reqs: + title: "σύντομες προβολές σελίδας" + xaxis: "Ημέρα" + yaxis: "Σύντομες προβολές σελίδας στο τηλέφωνο" + http_background_reqs: + title: "Φόντο" + xaxis: "Ημέρα" + yaxis: "Τα ετοίματα χρεισημοποιούνται για ζωντανή μετάδοση και ανίχνευση" + http_2xx_reqs: + title: "Κατάσταση 2xx (ΟΚ)" + xaxis: "Ημέρα" + yaxis: "Επιτυχημένες αιτήσεις (Κατάσταση 2xx)" + http_3xx_reqs: + title: "HTTP 3xx (Ανακατεύθυνση)" + xaxis: "Ημέρα" + yaxis: "Ανακατεύθυνση αιτήσεων (Κατάσταση 3xx)" + http_4xx_reqs: + title: "HTTP 4xx (Σφάλμα χρήστη)" + xaxis: "Ημέρα" + yaxis: "Λάθοι πελατών (Κατάσταση 4xx)" + http_5xx_reqs: + title: "HTTP 5xx (Σφάλμα Διακομιστή)" + xaxis: "Ημέρα" + yaxis: "Σφάλμα διακομιστή (Κατάσταση 5xx)" + http_total_reqs: + title: "Σύνολο" + xaxis: "Ημέρα" + yaxis: "Σύνολο αιτήσεων" + time_to_first_response: + title: "Ώρα για την πρώτη απάντηση" + xaxis: "Ημέρα" + yaxis: "Μέσος όρος χρόνου (ώρες)" + topics_with_no_response: + title: "Νήματα χωρίς απάντηση" + xaxis: "Ημέρα" + yaxis: "Σύνολο" + mobile_visits: + title: "Επισκέψεις χρήστη" + xaxis: "Ημέρα" + yaxis: "Νούμερο επισκέψεων" + dashboard: + rails_env_warning: "Ο διακομιστής σας τρέχει στη %{env} λειτουργία." + host_names_warning: "Το αρχείο config/database.yml χρησιμοποιεί ως hostname το localhost . Ενημερώστε το, ώστε να χρησιμοποεί το όνομα του site σας." + gc_warning: 'Ο server σας χρησιμοποιεί αυτόματα της παραμέτρους συλλογής αχρήστων της ruby, πράγμα το οποίο δεν θα σας δώσει την καλύτερη απόδοση. Διαβάστε αυτό το νήμα για την διαχείρηση της απόδοσης: a href="http://meta.discourse.org/t/tuning-ruby-and-rails-for-discourse/4126" target="_blank">Ρύθμιση της Ruby and Rails για την Discourse.' + sidekiq_warning: 'Το Sidekiq σταμάτησε. Κάποιες λειτουργίες, όπως η αποστολή email εκτελούνται ασύγχρονα από το sidekiq. Παρακαλούμε βεβαιωθείτε ότι τουλάχτιστον μία sidekiq λειτουργία εκτελείται. + + Περισσότερα για το Sidekiq εδώ.' + queue_size_warning: 'Ο αριθμός των δουλείων οι οποίες βρίσκονται σε λίστα αναμονή είναι %{queue_size}, το οποίο είναι υψηλό. Αυτό θα μπορούσε να ενδείξει πρόβλημα με τις λειτουργία(ες) του Sidekiq ή θα πρέπει να προσθέσετε κι άλλους Sidekiq εργάτες. ' + memory_warning: 'Ο server σας έχει λιγότερο από 1 GB διαθέσιμης μνήμης. Προτείνεται η χρήση τουλάχιστον 1 GB μνήμης.' + google_oauth2_config_warning: 'Ο server είναι ρυθμισμένος να επιτρέπει την εγγραφή και την είσοδο με Google OAuth2 (enable_google_oauth2_logins), αλλά η ταυτότητα του πελάτη και οι μυστικές τιμές δεν έχουν οριστεί. Πηγαίνετε στο Ρυθμίσεις σελίδας και ανανεώστε τις ρυθμίσεις. Δείτε τον οδηγό για περισσότερα.' + facebook_config_warning: 'Ο server είναι ρυθμισμένος να επιτρέπει την εγγραφή και την είσοδο με Facebook (enable_facebook_logins), αλλά η ταυτότητα του πελάτη και οι μυστικές τιμές δεν έχουν οριστεί. Πηγαίνετε στο Ρυθμίσεις σελίδας και ανανεώστε τις ρυθμίσεις. Δείτε τον οδηγό για περισσότερα.' + twitter_config_warning: 'Ο server είναι ρυθμισμένος να επιτρέπει την εγγραφή και την είσοδο με Twitter (enable_twitter_logins), αλλά η ταυτότητα του πελάτη και οι μυστικές τιμές δεν έχουν οριστεί. Πηγαίνετε στο Ρυθμίσεις σελίδας και ανανεώστε τις ρυθμίσεις. Δείτε τον οδηγό για περισσότερα.' + github_config_warning: 'Ο server είναι ρυθμισμένος να επιτρέπει την εγγραφή και την είσοδο με GitHub (enable_github_logins), αλλά η ταυτότητα του πελάτη και οι μυστικές τιμές δεν έχουν οριστεί. Πηγαίνετε στο Ρυθμίσεις σελίδας και ανανεώστε τις ρυθμίσεις. Δείτε τον οδηγό για περισσότερα.' + s3_config_warning: 'Ο server είναι ρυθμισμένος να επιτρέπει την ανάρτηση αντίγραφων ασφαλείας στο s3, αλλά τουλάχιστον ένα από τις παρακάτω ρυθμίσεις δεν έχει οριστεί: s3_access_key_id, s3_secret_access_key or s3_upload_bucket. Πηγαίνετε στο Ρυθμίσεις σελίδας και ανανεώστε τις ρυθμίσεις. Δείτε πώς να ρυθμίσετε την ανάρτηση εικόνων με S3. Για περισσότερα.' + s3_backup_config_warning: 'Ο διακομιστής έχει ρυθμιστεί ώστε να ανεβάζετε αντίγραφα ασφαλείας σε s3, αλλά τουλάχιστον ένα από τις ακόλουθες ρύθμιση δεν έχει οριστεί: s3_access_key_id, s3_secret_access_key, s3_use_iam_profile, or s3_backup_bucket. Πήγαινε στο ρυθμίσεις ιστοτόπου και ανανέωσε τις ρυθμίσεις. Δες "Πως να ενεργοποιήσεις ανέβασμα φωτιγραφιών σε S3;" για να μάθεις περισσότερα.' + image_magick_warning: 'ο διακομιστής είναι διαμορφωμένος στο να δήμιουργα μικρογράφιες των μεγάλων εικόνων, αλλα χωρίς το ImageMagick να είναι εγκαταστημένο. Εγκατάστησε το ImageMagick χρησιμοποιώντας το αγαπημένο σου πακέτο διευθηντικό πακέτο κατέβασε την τελευταία έκδοση .' + failing_emails_warning: 'Υπάρχουν %{num_failed_jobs} δουλείες email οι οποίες απέτυχαν. Ελέγχστε το app.yml και βεβαιωθείτε πως οι ρυθμίσεις του mail server σασ είναι σωστές. ' + subfolder_ends_in_slash: "Οι ρυθμίσεις του υποφακέλου σας δεν είναι σωστές. Το DISCOURSE_RELATIVE_URL_ROOT τελειώνει με κάθετω. " + email_polling_errored_recently: + one: "Η δημοσκόπηση των ηλεκτρικών μημνατών εχεί παράγει ένα σφάλμα τις τελευταίες 24 ώρες . Κοιτάξτε τα αρχεία καταγραφείς για περισσότερες πληροφορίες. " + other: "Η δημοσκόπηση των ηλεκτρικών μημνατών εχεί παράγει%{count} σφάλματα τις τελευταίες 24 ώρες . Κοιτάξτε τα αρχεία καταγραφείς για περισσότερες πληροφορίες. " + missing_mailgun_api_key: "ο διακομιστής εχεί ρθυμιστεί για να στήλει ηλεκτρονικά μύνηματα μέσο του mailgun αλλά δεν εχεις προσφέρει το API πλήκτρο που χρησιμοποιήτε για να επαληθευτούν τα webhook μυνήματα. " + bad_favicon_url: "το favicon αποτυγχαίνει απο το να φορτώσει. 'Ελεξε το favicon_url ρυθμιτή σου Ρυθμίσεις ιστοσελίδας" + poll_pop3_timeout: "Η σύνδεση με τον δίσκο του POP3 έχει χρονικό όριο. Τα εισερχόμενα ηλεκτρονικά μυνήναμτα δεν μπορούν να ανακτηθούν. Παρακαλώ ελέγξτε τις POP3 ρυθμίσεις σας και τον πάροχο υπηρεσιών." + poll_pop3_auth_error: "Η σύνδεση με τον δίσκο του POP3 αποτυγχαίνει με ένα σφάλμα ελεχγου ταυτότητας. Παρακαλώ όπως ελέξετε τις POP3 ρυθμίσεις σας. " + site_settings: + censored_words: "Αυτόματη αντικατάσταση λέξεων θα γίνεται με ■■■■" + censored_pattern: "Το Regex πρότυπο που θα αντικατασταθεί αυτόματα με ■■■&#;" + delete_old_hidden_posts: "Διάγραψε αυτόματα όποιες κρυμμένες δημοσιέυσεις μένουν κρυμμένες για περισσότερες από 30 ημέρες. " + default_locale: "Η προεπιλεγμένη γλώσσα του Discourse για παράδειγμα (ISO 639-1 Code)" + allow_user_locale: "Επίτρεψε στους χρήστες να επιλέγουν βάση της δικής τους πρπτίμησης την γλώσσα. " + set_locale_from_accept_language_header: "Θέστε την γλώσσα του interface για ανώνυμους χρήστες από τη γλώσσα που χρησιμοποιεί το πρόγραμμα περιήγησης web τους. (ΠΕΙΡΑΜΑΤΙΚΟ ΧΑΡΑΚΤΗΡΙΣΤΙΚΟ, δεν λειτουργεί με ανώνυμη cache)" + min_post_length: "Ελάχιστο επιτρεπόμενο μήκος δημοσίευσης σε χαρακτήρες" + min_first_post_length: "Ελάχιστο επιτρεπόμενο μήκος πρώτης δημοσίευσης (σώμα νήματος) σε χαρακτήρες" + min_private_message_post_length: "Ελάχιστο επιτρεπόμενο μήκος δημοσίευσης σε χαρακτήρες για μηνύματα" + max_post_length: "Μέγιστο επιτρεπόμενο μήκος δημοσίευσης σε χαρακτήρες" + topic_featured_link_enabled: "Ενεργοποίηση δημοσίευσης ενός συνδέσμου με νήματα." + show_topic_featured_link_in_digest: "Δείξε το θέμα που δυνοδεύετε με τον σύνδεσμο στο συγχονευτικό ηλεκτρονικό μήνυμα." + min_topic_title_length: "Ελάχιστο επιτρεπόμενο μήκος τίτλου νήματος σε χαρακτήρες" + max_topic_title_length: "Μέγιστο επιτρεπόμενο μήκος τίτλου νήματος σε χαρακτήρες" + min_private_message_title_length: "Ελάχιστο επιτρεπόμενο μήκος τίτλου για ένα μήνυμα σε χαρακτήρες" + min_search_term_length: "Ελάχιστο έγκυρο μήκος όρου αναζήτησης σε χαρακτήρες" + search_tokenize_chinese_japanese_korean: "Ανάγκασε την αναζήτηση να κάνει tokenize Κινέζικα / Ιαπωνικά / κορεατικά, ακόμη και σε μη CJK ιστότοπους" + search_prefer_recent_posts: "Εάν η αναζήτηση στο μεγάλο φόρουμ σας είναι αργή, αυτή η επιλογή δημιουργεί κατάλογο των πιο πρόσφατων δημοσιεύσεων στην αρχή" + search_recent_posts_size: "Πόσες πρόσφατες αναρτλησεις να κρατηθούν στο ευρετήριο " + allow_uncategorized_topics: "Επιτρέψτε σε νήματα να δημιουργόνται χωρίς κατηγοριοποίηση. ΠΡΟΣΟΧΗ: Εάν υπάρχουν μη κατηγοριοποιημένα νήματα, πρέπει να τα επανακατηγοριοποιήσετε πριν τα κλείσετε." + allow_duplicate_topic_titles: "Επιτρέπονται θέματα με όμοιους ,εις διπλούν τίτλους." + unique_posts_mins: "Κάθε πόσα λεπτά μετά ένας χρήστης μπορεί να κάνει δημοσιέυση με το ίδιο περιοχόμενο" + educate_until_posts: "όταν ο χρήστης ξεκινά να πληκτρολογεί τις πρώτες (n) νέες δημοσιεύσεις, εμφάνισε το αναδυόμενο πάνελ εκπαίδευσης νέου χρήστη στο συνθέτη." + title: "Το όνομα αυτής της ιστοσελίδας, όπως έχει χρησιμοποιειθεί στην ετικέτα τίτλου." + site_description: "Περιέγραψε αυτή την ιστοσελίδα με μία πρόταση, όπως έχει χρησιμοποιειθέι στην ετικέτα περιγραφής." + contact_email: "Η διεύθυνση ηλεκτρονικού ταχυδρομείου της βασικής επαφής η οποία είναι υπεύθυνη για αυτόν τον ιστότοπο. Χρησιμοποιείται για κρίσιμες ειδοποιήσεις όπως μη διαχειρισμένες σημάνσεις, καθώς και την /σχετικά με φόρμα επικοινωνίας για επείγοντα θέματα." + contact_url: "Εποικινώνησε με το URL για αυτή την σελίδα. Χρησιμοποιήτε στη/ φόρμα επαφής για επείγων θέματα. " + queue_jobs: "ΜΌΝΟ ΓΙΑ ΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΤΉ! ΠΡΟΕΙΔΟΠΟΊΗΣΗ! Από προεπιλογή, η ουρά δουλειών είναι στο sidekiq. Αν απενεργοποιηθεί, ο ιστότοπος θα χαλάσει." + crawl_images: "Επανόρθωσε εικόνες από απομακρυσμένα URLs για να εισάγεις τις σωστές διστάσεις πλάτους και ύψους." + download_remote_images_to_local: "Μετέτρεψε τις απομωνομένες εικόνες σε τοπικές εικόνες με το να τις κατεβάσεις: αυτό αποτρέπει τις σπασμένες εικόνες." + download_remote_images_threshold: "Ελάχιστη χωριτικότητα δίσκου απαραίτητη για το κατέβασμα απομακρυσμένων εικόνων σε τοπικό πεδίο (σε ποσοστό)" + download_remote_images_max_days_old: "Μην κατεβάσεις απομακυσμένες εικόνες για αναρτήσεις που είναι μεγαλύτερες απο n μερών." + disabled_image_download_domains: "Απομακρυσμένες εικόνες δεν θα κατέβουν ποτέ από αυτούς τους τομείς. Λίστα με οριοθετημένο σωλήνα" + editing_grace_period: "Για (n) δευτερόλεπτα μετά από την δημοσίευση, η επεξεργασία δεν θα δημιουργίσει νεα έκδωση στο ιστορικό της δημοσίευσης. " + post_edit_time_limit: "Ο συγγραφέας μπορεί να επεξεργαστεί ή να διαγράψει τις δημοσιεύσεις του για (n) λεπτά αφότου δημοσευτούν. Όρισε το στο 0 για να είναι για πάντα." + edit_history_visible_to_public: "Επέτρεψε σε όλους να δουν προηγούμενες εκδοχές από μια επεξεργασμένη δημοσίευση. Όταν είναι απενεργοποιημένο, μόνο τα μέλη του προσωπικού μπορούν να τα δούν. " + delete_removed_posts_after: "Δημοσιεύσεις που διαγράφονται από τον συγγραφέα θα διαγράφονται αυτόματα μετά από (n) ώρες. Εάν το ορίσεις στο 0, τότε θα διαγράφονται αμέσως." + max_image_width: "Μέγιστο πλάτος μικρογραφίας εικόνων σε μια ανάρτηση" + max_image_height: "Μέγιστο ύψος μικρογραφίας εικόνων σε μία ανάρτηση" + category_featured_topics: "Πλήθος νημάτων παρουσιάζονται ανά κατηγορία στη σελίδα των /κατηγοριών. Αφού αλλάξεις αυτή την αξία, θα χρειαστεί μέχρι 15 λεπτά για να αναβαθμιστεί η σελίδα των κατηγοριών." + fixed_category_positions: "Εάν ελεγχθεί, θα μπορείς να διευθετήσεις τις κατηγορίες σε μια καθορισμένη σειρά. Εάν δεν ελεγχθεί, οι κατηγορίες είναι διευθετημένες κατά σειρά δραστηριότητας." + fixed_category_positions_on_create: "Αν επιλεγεί, η σειρά των κατηγοριών θα διατηρηθεί στον διάλογο δημιουργίας νήματος (χρειάζεται fixed_category_positions). " + add_rel_nofollow_to_user_content: "Πρόσθεσε rel nofollow σε ολόκληρο το περιεχόμενο που έχει υποβληθεί από τους χρήστες, εκτός από εσωτερικούς συνδέσμους (συμπεριλαμβανομένων των γονικών τομέων). Αν το αλλάξεις αυτήν την ρύθμιση, θα πρέπει να κάνεις rebake όλα τα νήματα χρησιμοποιώντας το: \"rake posts:rebake\"" + exclude_rel_nofollow_domains: "Μια λίστα από τομείς, στους οποίους το nofollow δεν θα πρέπει να προστίθεται στους συνδέσμους. Το tld.com αυτόματα θα επιτρέπει και το sub.tld.com. Τουλάχιστον, θα πρέπει να προσθέσετε τον κορυφαίο τομέα του ιστότοπου για να βοηθήσει τα προγράμματα ανίχνευσης ιστού, να βρουν όλο το περιεχόμενο. Σε περίπτωση που άλλα μέρη της ιστοσελίδας σας βρίσκονται σε άλλους τομείς, προσθέστε τους και αυτούς. " + post_excerpt_maxlength: "Ανώτατο όριο μήκους για μια δημοσίευση αποσπάσματος/ περίληψης." + show_pinned_excerpt_mobile: "Εμφάνιση αποσπάσματος από συνημμένα νήματα στην περιήγηση από κινητά τηλέφωνα." + show_pinned_excerpt_desktop: "Εμφάνιση αποσπάσματος από συνημμένα νήματα στην περιήγηση από ηλεκτρονικούς υπολογιστές." + post_onebox_maxlength: "Μέγιστο μέγεθος ενός oneboxed Discourse νήματος σε χαρακτήρες." + onebox_domains_blacklist: "Μία λίστα τομέων που δεν θα είναι ποτέ oneboxed." + max_oneboxes_per_post: "Ανώτατος αριθμός επιλογών σε μια δημοσίευση. " + logo_url: "Η εικόνα του λογότυπου πάνω αριστερά της ιστοσελίδας, πρέπει να έχει ως σχήμα ένα πλατύ ορθογώνιο. Εάν το αφήσεις κενό, θα φανεί ο τίτλος της ιστοσελίδας." + digest_logo_url: "Το εναλλακτικό λογότυπο εικόνας που χρησιμοποιείται στην κορυφή της περίληψης ηλεκτρονικού ταχυδρομείου του ιστότοπου σας. Θα πρέπει να είναι ένα ευρύ ορθογώνιο σχήμα. Δεν πρέπει να είναι μια εικόνα SVG. Αν μείνει κενό τότε το `logo_url` θα χρησιμοποιηθεί." + logo_small_url: "Η μικρή εικόνα του λογοτύπου στο πάνω αριστερό μέρος του site σας, θα πρέπει να έχει τετράγωνο σχήμα, το οποίο παρατηρείται κατά την κύλιση προς τα κάτω. Αν μείνει κενό, θα εμφανίζεται ένα home glyph." + favicon_url: "Μια εικόνα για την ιστοσελίδα σας, βλέπε http://en.wikipedia.org/wiki/Favicon, για να δουλέψει σωστά πάνω απο ένα CDN πρέπει να είναι png" + mobile_logo_url: "Η σταθερή θέση της εικόνας του λογοτύπου που χρησιμοποιείται πάνω αριστερά του διαδυκτυακού τόπου. Θα πρέπει να είναι τετράγωνη. Αν είναι άδεια, θα πρέπει να χρησιμοποιηθεί το `logo_url`. Π.χ.: http://example.com/uploads/default/logo.png" + apple_touch_icon_url: "Εικονίδιο που χρησιμοποιείται για συσκευές αφής της Apple. Το συνιστώμενο μέγεθος είναι 144px από 144px." + notification_email: "Η από: διεύθυνση ηλεκτρονικού ταχυδρομείου που χρησιμοποιείται για την αποστολή όλων των απαραιτήτων μηνυμάτων του συστήματος. Ο τομέας που καθορίζεται εδώ πρέπει να έχει SPF, DKIM και αντίστροφα PTR αρχεία ρυθμισμένα σωστά για να φθάσει το ηλεκτρονικό ταχυδρομείο." + email_custom_headers: "Μια λίστα οριοθετημένης σωληνώσεως που περιέχει τις προσαρμοσμένες κεφαλίδες των μηνυμάτων ηλεκτρονικού ταχυδρομείου. " + email_subject: "Προσαρμόσιμη μορφή του θέματος για τα πρότυπα μηνύματα ηλεκτρονικού ταχυδρομείου. Δες https://meta.discourse.org/t/customize-subject-format-for-standard-emails/20801" + force_https: "Αναγκάζει το site σας να χρησιμοποιεί μόνο HTTPS. ΠΡΟΣΟΧΗ: Μην το ενεργοποιήσετε, μέχρι να επαληθεύσετε ότι το HTTPS είναι πλήρως εγκατεστημένο και λειτουργεί απολύτως παντού! Ελέγξατε το CDN σας, όλες τις κοινωνικές συνδέσεις, και οποιαδήποτε εξωτερικά λογότυπα / εξαρτήσεις για να βεβαιωθείτε ότι είναι όλα συμβατά με HTTPS;" + same_site_cookies: "Χρησιμοποίηση των ίδιων cookies της σελίδας, το οποίο καταργεί όλα τα vectors Cross Site Request Forgery σε υποστηριζόμενους περιηγητές (Lax ή Strict). Προσοχή: Το Strict θα λειτουργήσει μόνο σε σελίδες που εξαναγκάζουν την σύνδεση και την χρήση SSO" + summary_score_threshold: "Η ελάχιστη βαθμολογία που απαιτείται από μια ανάρτηση για να συμπεριληφθεί στο «Συνοψίζοντας αυτό το θέμα»" + summary_posts_required: "Ελάχιστες αναρτήσεις σε ένα νήμα πριν το «Συνοψίζοντας αυτό το θέμα» ενεργοποιηθεί" + summary_likes_required: "Επιτρέπεται ο ελάχιστος αριθμός '' Μου αρέσει'' σε ένα θέμα προτού «να συνοψίστε αυτό το θέμα» " + summary_percent_filter: "Όταν ο χρήστης επιλέξει την συνόψιση του θέματος, προβολή του μέγιστου % των δημοσιοποιήσεων" + summary_max_results: "Μέγιστο ποσοστό αναρτήσεων Επιστράφηκε από 'Ανακεφαλαίωση αυτού του θέματος'" + enable_private_messages: "Επιτρέψτε στους χρήστες με επίπεδο εμπιστοσύνης 1 (παραμετροποιήσιμο με το ελάχιστο επίπεδο εμπιστοσύνης για την αποστολή μηνυμάτων) να δημιουργήσουν μηνύματα και να απαντήσουν σε μηνύματα. Σημειώστε ότι το προσωπικό μπορεί πάντα να στέλνει μηνύματα οτιδήποτε και να συμβεί." + enable_long_polling: "Η αρτηρία μηνυμάτων που χρησιμοποιείτε για ειδοποιήσεις μπορεί να χρησιμοποιήσει μακρυά μέθοδο εξέτασης." + long_polling_base_url: "Base URL που χρησιμοποιείτε για μακρύ ψήφισμα (όταν ένα CDN εξυπηρετεί δυναμικό περιεχόμενο, βεβαιωθείτε ότι το ορίσατε σε έλξη προέλευσης ) π.χ.: http://origin.site.com" + long_polling_interval: "Χρονικό διάστημα που ο διακομιστής θα πρέπει να περιμένει πριν απαντήσει στους πελάτες όταν δεν υπάρχουν δεδομένα για την αποστολή (μόνο συνδεδεμένοι χρήστες )" + polling_interval: "Όταν δεν χρησιμοποιείτε μακρυά μέθοδος εξέτασης, πόσο συχνά θα πρέπει οι συνδεδεμένοι πελάτες να ψηφίζουν/poll σε χιλιοστά του δευτερολέπτου" + anon_polling_interval: "Κάθε πόσο συχνά πρέπει οι άγνωστες πελάτες να κάνουν δημοσκόπηση σε χιλιοστά του δευτερολέπτου" + background_polling_interval: "Πόσο συχνά θα πρέπει οι συνδεδεμένοι πελάτες να ψηφίζουν/poll σε χιλιοστά του δευτερολέπτου (όταν το παράθυρο είναι στο παρασκήνιο)" + flags_required_to_hide_post: "Αριθμός σημάνσεων που προκαλούν την ανάρτηση να κρυφτεί αυτομάτως και ένα μήνυμα να σταλθεί στον χρήστη (0 για να μην γίνετε ποτέ) " + cooldown_minutes_after_hiding_posts: "Αριθμός λεπτών που ένας χρήστης πρέπει να περιμένει πριν να έπεξεργαστεί ξανά μια δημοσίευση που είναι κρυμμένη μέσο κοινωνικής επισήμανσης." + max_topics_in_first_day: "το ανώτατο όριο τίτλων που ένας χρήστης μπορεί να δημιουργίσει σε περίοδο 24 ωρών μετά από την πρώτη τους δημοσίευση " + max_replies_in_first_day: "Ο ανώτατος αριθμός απαντήσεων που ένας χρήστης δικαιούτε να δημοσιέυση σε περίοδο 24 ωρών μετα από την δημιουργία της πρώτης δημοσίευσης" + tl2_additional_likes_per_day_multiplier: "Αύξησε το όριο των ''Μου αρέσει'' καθημερινά για tl2 (member) πολλαπλασιάζοντας με αυτό τον αριθμό." + tl3_additional_likes_per_day_multiplier: "Αύξησε το όριο των ''Μου αρέσει'' καθημερινά για tl3 (regular) πολλαπλασιάζοντας με αυτό τον αριθμό." + tl4_additional_likes_per_day_multiplier: "Αύξησε το όριο των αρέςει καθημερινα για tl4(leader) πολλαπλασιάζοντας με αυτό τον αριθμό" + num_spam_flags_to_block_new_user: "Αν οι αναρτήσεις ενός καινούριου χρήστη λάβουν τόσες αναφορές για spam από num_users_to_block_new_user διαφορετικούς χρήστες, τότε θα πραγματοποιηθεί κρύψιμο όλων των αναρτήσεων του και θα αποτραπεί από το να μπορεί να δημιουργήσει αναρτήσεις στο μέλλον. 0 για απενεργοποιήσει." + num_users_to_block_new_user: "Εάν οι δημοσιεύσεις κάποιου νέου χρήστη γίνουν num_spam_flags_to_block_new_user ανεπιθήμητες σημάνσεις από τους πολλούς διαφορετικούς χρήστες, κρήψε όλες τις δημοσιεύσεις τους και εμπόδισε μελλοντικές δημοσιεύσεις. Πάτα το 0 για απενεργοποιήση." + num_tl3_flags_to_block_new_user: "Αν οι αναρτήσεις ενός καινούριου χρήστη πάρουν τόσες πολλές σημάνσεις από το num_tl3_users_to_block_new_user, διαφορετικοί χρήστες επιπέδου εμπιστοσύνης 3, κρύβουν όλες τους τις αναρτήσεις και αποτρέπουν μελλοντικές αναρτήσεις. 0 για απενεργοποίηση." + num_tl3_users_to_block_new_user: "Αν οι αναρτήσεις ενός καινούριου χρήστη πάρουν σήμανση num_tl3_users_to_block_new_user, από τόσους διαφορετικούς χρήστες επιπέδου εμπιστοσύνης 3, τότε κρύβουν όλες τους τις αναρτήσεις και αποτρέπουν μελλοντικές αναρτήσεις. 0 για απενεργοποίηση." + notify_mods_when_user_blocked: "Εάν ένας χρήστης αυτόματα μπλοκαριστει, στείλετε μήνυμα σε όλους τους Συντονιστές." + flag_sockpuppets: "Εάν ένας νέος χρήστης απαντήσει σε ένα νήμα από την ίδια διεύθυνση ΙP όπως ο νέος χρήστης, ο οποίος ξεκίνησε το νήμα, και οι δυο δημοσιεύσεις τους θα επισημανθούν ως δυνητικά ανεπιθύμητες." + traditional_markdown_linebreaks: "Χρήση παραδοσιακών αλλαγών γραμμών στη Markdown, η οποία απαιτεί δύο κενά διαστήματα για μια αλλαγή γραμμής." + allow_html_tables: "Αποδοχή εισδοχής πινάκων στη Markdown με τη χρήση ετικετών HTML. TABLE, THEAD, TD, TR, TH θα μπαίνουν στη λίστα επιτρεπόμενων (απαιτείται πληρής αντιγραφή σε όλες τις αναρτήσεις που περιέχουν πίνακες)" + post_undo_action_window_mins: "Αριθμός των λεπτών όπου οι χρήστες δικαιούνται να αναιρέσουν πρόσφατες ενέργειες πάνω σε ένα θέμα (μου αρέσει, επισήμανση, κτλ) " + must_approve_users: "Το προσωπικό πρέπει να εγκρίνει όλους τους λογαριασμούς των νέων χρηστών προτού τους επιτραπεί να έχουν πρόσβαση στην ιστοσελίδα. Προειδοποίηση: ενεργοποιώντας το για μια ζωντανή ιστοσελίδα θα έχει ως αποτέλεσμα την ανάκληση για τους υπάρχοντες χρήστες που δεν ανήκουν στο προσωπικό!" + pending_users_reminder_delay: "Ειδοποίηση συντονιστών αν καινούργιοι χρήστες περιμένουν για αποδοχή για μεγαλύτερο χρονικό διάστημα. Όρισε το στο -1 για τις ειδοποιήσεις." + maximum_session_age: "Ο χρήστης θα παραμείνει συνδεδεμένος για n ώρες από την τελευταία του επίσκεψη" + ga_tracking_code: "ΑΠΑΡΧΑΙΩΜΕΝΟ: Google analytics (ga.js) tracking code code, eg: UA-12345678-9; βλέπε http://google.com/analytics" + ga_domain_name: "Υπο κατάργηση: Google analytics (ga.js) όνομα τομέα , π.χ. eg: mysite.com, βλέπε http://google.com/analytics" + ga_universal_tracking_code: "Google Universal Analytics (analytics.js) tracking code code, eg: UA-12345678-9; βλέπε http://google.com/analytics" + ga_universal_domain_name: "Google Universal Analytics (analytics.js) όνομα τομέα, eg: mysite.com; βλέπε http://google.com/analytics" + gtm_container_id: "Google Tag Manager container id. eg: GTM-ABCDEF" + enable_escaped_fragments: "Υποχώρηση στο Ajax-Crawling API της Google, αν δεν βρεθεί κάποιο πρόγραμμα ανίχνευσης του Ιστού. Βλέπε https://developers.google.com/webmasters/ajax-crawling/docs/learn-more" + enable_noscript_support: "Ενεργοποίηση πρότυπου μηχανής αναζήτησης web crawler που υποστηρίζεται μέσο του noscript tag" + allow_moderators_to_create_categories: "Να επιτρέπεται στους συντονιστές να δημιουργούν νέες κατηγορίες" + cors_origins: "Επιτρεπόμενες πηγές για αιτήσεις πολλαπλής προέλευσης (cross-origin requests, CORS). Η κάθε προέλευση πρέπει να περιέχει http:// or https://. Η env μεταβλητή DISCOURSE_ENABLE_CORS πρέπει να οριστεί σε αληθινή για να ενεργοποιηθεί το CORS." + use_admin_ip_whitelist: "Οι διαχειριστές μπορούν να συνδέονται μόνο αν βρίσκονται σε μια διευθυνση IP καθορισμένη στη λίστα Screened IPs (Admin > Logs > Screened Ips)." + top_menu: "Αποφάσισε ποια αντικείμενα θα εμφανίζονται στην πλοήγηση της αρχικής σελίδας, και με ποια σειρά. Παράδειγμα τελευταία/νέα/μη αναγνωσμένα/κατηγορίες/κορυφαία/αναγνωσμένα/δημοσιευμένα/σελιδοδείκτες" + post_menu: "Αποφάσισε ποια αντικείμενα θα εμφανίζονται στο μενού των δημοσιεύσεων, και με ποια σειρά. Παράδειγμα μου αρέσει/επεξεργασία/επισήμανση/διαγραφή/κοινοποίηση/σελιδοδείκτης/απάντηση" + post_menu_hidden_items: "Τα στοιχεία καταλόγου να κρυφτούν από προεπιλογή στον αναρτημένο κατάλογο εκτός αν επιλεγεί μια ελλειπτική επέκταση. " + share_links: "Εντόπισε πια αντικείμενα εμφανίζονται στο κοινό διάλογο και σε πια σειρά" + track_external_right_clicks: "Παρακολουθείστε εξωτερικούς συνδέσμους οι οποίοι έχουν πατηθεί με αριστερό κλικ (πχ: άνοιγμα νέας καρτέλας) και είναι απενεργοποιημένες αυτόματα διότι επανεγγράφει URLs " + site_contact_username: "Ένα έγκυρο όνομα χρήστη για τα μέλη του προσωπικού από το οποίο θα στέλνονται όλα τα αυτοματοποιημένα μηνύματα. Αν αφεθεί κενό, θα χρησιμοποιείται ο προκαθορισμένος λογαριασμός συστήματος. " + send_welcome_message: "Στείλε σε όλους τους νέους χρήστες ένα μήνυμα καλωσορίσματος μαζί με ένα γρήγορο οδηγό έναρξης." + suppress_reply_directly_below: "Να μην εμφανίζεται η επεκτάσιμη απάντηση σε ένα θέμα όταν υπάρχει μία μόνο απάντηση ακριβώς κάτω από αυτό το θέμα." + suppress_reply_directly_above: "Να μην εμφανίζεται το επεκτάσιμο 'ως απάντηση σε' σε μία ανάρτηση όταν υπάρχει μόνο μία απάντηση ακριβώς πάνω από αυτή την ανάρτηση. " + suppress_reply_when_quoting: "Να μην εμφανίζεται το επεκτάσιμο 'ως απάντηση σε' σε μία ανάρτηση όταν η απάντηση αναφέρεται στην ανάρτηση. " + max_reply_history: "Μέγιστος αριθμός απαντήσεων που ένας νέος χρήστης μπορεί να δώσει σε ένα συγκεκριμένο νήμα έως ότου κάποιος να του απαντήσει" + topics_per_period_in_top_summary: "Αριθμός κύριων θεμάτων που εμφανίζονται σε προκαθορισμένη περίληψη κύριων θεμάτων. " + topics_per_period_in_top_page: "Αριθμός κύριων θεμάτων που εμφανίζεται όταν επεκτείνεις 'δείξε περισσότερα' κύρια θέματα" + redirect_users_to_top_page: "Αυτόματα επαναπροσανατολίστε τους νέους και συχνούς απόντες χρήστες στη κορυφή της σελίδας." + top_page_default_timeframe: "Ουδέτερο χρονοδιάγραμμα για το πάνω μέρος της σελίδας" + show_email_on_profile: "Εμφάνιση ηλεκτρονικού ταχυδρομείου ενός χρήστη στο προφίλ τους (ορατό μόνο στον εαυτό τους και το προσωπικό)" + prioritize_username_in_ux: "Δίξε το όνομα χρήστη πρώτα στη σελίδα του χρήστη , κάρτα χρείστη και δημοσιεύσεις(όταν εμφανιστεί το ανάπηρο ονομά)" + email_token_valid_hours: "Ξέχασε κωδικό/ενεργοποίησε τα νομίςματα λογαριασμού που είναι έγκιρα για (ν) ώρες." + enable_badges: "Ενεργοποίηση συστήματος παράσημου" + enable_whispers: "Επιτρέπεται στο προσωπικό η προσωπική επικοινονία μεταξύ θεμάτων" + allow_index_in_robots_txt: "Καθόρισε στο robots.txt ότι αυτή η ιστοσελίδα επιτρέπεται να αναπροσαρμόζεται από τις μηχανές αναζήτησης." + email_domains_blacklist: "Μία λίστα με διευθύνσεις ηλεκτρονικού ταχυδρομίου με τις οποίες οι χρήστες δεν μπορούν να δημιουργίσουν λογαριασμό. Πχ: mailinator.com|trashmail.net" + email_domains_whitelist: "Μια λίστα με διευθύνσεις ηλεκτρονικού ταχυδρομίου στην οποία οι χρήστες ΠΡΕΠΕΙ να εγγράψουν λογαριασμούς. ΠΡΟΣΟΧΗ: οι χρήστες με διευθύνσεις ηλεκτρονικού ταχυδρομίου οι οποίες δεν βρίσκονται σε αυτή τη λίστα δεν θα μπορούν να δημιουργήσουν λογαριασμό." + forgot_password_strict: "Μην ενημερώστε τους χρήστες για την ύπαρξη ενός λογαριασμού όταν χρησιμοποιούν το διάλογο ξέχασα τον κωδικό πρόσβασης." + log_out_strict: "Όταν αποσυνδεθείτε, ΟΛΕΣ οι δραστηριότητες σας σε ΟΛΕΣ τις συσκευές θα αποσυνδεθούν" + version_checks: "Πατήστε το Hub του Discourse για αναβαθμήσεις και για την προβολή ενημερώσεων αναβάθμησης στο ταμπλό του διαχειριστή. " + new_version_emails: "Αποστολή ηλεκτρονικού μηνλυματος στην επαφή_ηλεκτρονική διεύθυνση όταν νέα έκδοση του Discourse είναι διαθέσιμη." + port: "ΠΡΟΓΡΑΜΜΑΤΙΣΤΕΣ ΜΟΝΟ! ΠΡΟΣΟΧΗ! Χρησιμοποιήστε το HTTP port αντί για το αυτόματο port 80. Αφήστε καινό για το αυτόματο 80. " + force_hostname: "ΠΡΟΓΡΑΜΜΑΤΙΣΤΉΣ ΜΌΝΟ! ΠΡΟΣΟΧΗ! Καθορίστε ένα όνομα εξυπηρετητή στη διεύθυνση URL. Αφήστε κενό για την προεπιλογή." + invite_expiry_days: "Για πόσο καιρό οι κύριες προσκλήσεις ισχύουν, σε μέρες " + invite_passthrough_hours: "Για πόσο καιρό ο χρήστης μπορεί να χρησιμοποιήσει ένα ήδη εξαργυρωμένο κλειδί πρόσκλησης για να συνδεθεί, σε ώρες" + invite_only: "Η δημόσια εγγραφή είναι απενεργοποιημένη, όλοι οι νέοι χρήστες θα πρέπει να προσκαλούνται ρητά από άλλα μέλη ή το προσωπικό." + login_required: "Απαιτήστε την επικύρωση για να διαβάσετε το περιεχόμενο σε αυτήν την ιστοσελίδα, απαγορεύσετε την ανώνυμη πρόσβαση." + min_username_length: "Ελάχιστο μέγεθος όνομα χρήστη σε χαρακτήρες. ΠΡΟΣΟΧΗ: εάν ο όποιος δήποτε από τους χρήστες που είδη υπάρχουν ή από της ομάδες έχουν ονόματα πιο μικρά από αυτό, η ιστοσελίδα σου θα διακοπεί!" + max_username_length: "Μέγιστο μέγεθος όνομα χρήστη με χαρακτήρες. ΠΡΟΣΟΧΗ:\nαν υπάρχοντες χρήστες ή ομάδες έχουν ονόματα περισσότερο από αυτό, η ιστοσελίδα σας θα παραβιαστεί!" + reserved_usernames: "Το όνομα χρήστη δεν δικαιούτε για τη δημιουργία λογαριασμού. " + min_password_length: "Ελάχιστο μήκος κωδικού πρόσβασης." + min_admin_password_length: "Ελάχιστο μήκος κωδικού πρόσβασης για το διαχειριστή" + password_unique_characters: "Ελάχιστος αριθμός μοναδικών χαρακτήρων που πρέπει να έχει ένας κωδικός." + block_common_passwords: "Μην επιτρέπεις τους κωδικούς πρόσβασης που είναι ανάμεσα στους 10,000 πιο κοινούς κωδικούς πρόσβασης." + enable_sso: "Ενεργοποίηση καθολικής σύνδεσης μέσω ενός εξωτερικού συνδέσμου (ΠΡΟΕΙΔΟΠΟΙΗΣΗ: ΟΙ ΔΙΕΥΘΥΝΣΕΙΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΑΧΥΔΡΟΜΕΙΟΥ ΤΩΝ ΧΡΗΣΤΩΝ ΘΑ ΠΡΕΠΕΙ ΝΑ ΕΠΙΚΥΡΩΘΟΥΝ ΑΠΟ ΤΟΝ ΕΞΩΤΕΡΙΚΟ ΣΥΝΔΕΣΜΟ!)" + verbose_sso_logging: "SSO λεπτομερούς καταγραφής διαγνωστικών σχετίζονται με /logs" + enable_sso_provider: "Εφαρμογή πρωτοκόλλου παροχέα Discourse SSO στο τελικό σημείο του /session/sso_provider, απαιτεί να τεθει το sso_secret." + sso_url: "H διεύθυνση URL της ενιαίας σύνδεσης στο τέλος ( πρέπει να συμπεριλαμβάνει http:// or https://)" + sso_secret: "Η μυστική συμβολοσειρά που χρησιμοποιείται για να πιστοποιήσει κρυπτογραφικά πληροφορίες SSO, σιγουρευτείτε οτι έχει 10 χαρακτήρες ή περισσότερους." + sso_overrides_bio: "Παρακάμπτει την βιογραφία του χρήστη στο προφίλ του χρήστη και τον αποτρέπει απ'το να την αλλάξει. " + sso_overrides_email: "Παράκαμψη τοπικής διεύθυνσης ηλεκτρονικού ταχυδρομείου με τη διεύθυνση ηλεκτρονικού ταχυδρομείου από τον εξωτερικό ιστότοπο με φορτίο SSO σε κάθε σύνδεση, και αποτροπή τοπικών αλλαγών. (ΠΡΟΕΙΔΟΠΟΙΗΣΗ: μπορεί να προκληθούν ασυμφωνίες λόγω της ομαλοποίησης των τοπικών διευθύνσεων ηλεκτρονικού ταχυδρομείου)" + sso_overrides_username: "Παράκαμψη τοπικού ονόματος χρήστη με το όνομα χρήστη από τον εξωτερικό ιστότοπο SSO σε κάθε σύνδεση και αποτροπή τοπικών αλλαγών. (ΠΡΟΕΙΔΟΠΟΙΗΣΗ: μπορεί να προκληθούν ασυμφωνίες λόγω των διαφορών μεταξύ των ονομάτων χρηστων όσο αναφορά το μάρκος/απαιτήσεις)" + sso_overrides_name: "Παράκαμψη τοπικού ονόματεπώνυμου με το όνομα χρήστη από τον εξωτερικό ιστότοπο SSO σε κάθε σύνδεση και αποτροπή τοπικών αλλαγών. " + sso_overrides_avatar: "Παράκαμψη τοπικού άβαταρ χρήστη με το άβαταρ από τον εξωτερικό ιστότοπο SSO Εάν ενεργοποιημένο, η αποσύνδεση του allow_uploaded_avatars συνιστάται." + sso_not_approved_url: "Ανακατευθύνετε μη εγκεκριμένους λογαριασμούς SSO σε αυτό το URL" + sso_allows_all_return_paths: "Μην αναχαιτίσεις το κυρίαρχο return_paths που παρέχεται από το SSO (από προεπιλογή η διαδρομή γυρισμόυ πρέπει να είναι στην τρεχούμενη ιστοσελίδα)" + enable_local_logins: "Ενεργοποίηση τοπικών λογαριασμών σύνδεσης με βάση το όνομα χρήστη και τον κωδικό πρόσβασης. (Σημείωση: αυτό πρέπει να είναι ενεργοποιημένο για καλέσματα στην εργασία)" + allow_new_registrations: "Επιτρέψτε τις νέες εγγραφές χρηστών.Καταργήστε την επιλογή αυτή για να αποτρέψετε σε οποιονδήποτε να δημιουργήσει ένα νέο λογαριασμό" + enable_signup_cta: "Δείξε μια ανακοίνωση στους ανώνυμους χρήστες που επιστρέφουν, η οποία να τους παροτρύνει να δημιουργήσουν λογαριασμό." + enable_yahoo_logins: "Ενεργοποιήστε την επαλήθευση μέσω Yahoo" + enable_google_oauth2_logins: "Ενεργοποίησε την επαλήθευση μέσω Google Oauth2. Είναι μια μέθοδος επαλήθευσης που η Google υποστηρίζει προς το παρόν. Απαιτεί κλειδί και μυστικό." + google_oauth2_client_id: "Ταυτότητα πελάτη της εφαρμογής σας Google." + google_oauth2_client_secret: "Μυστικό πελάτη του λογαριασμού σας Google. " + enable_twitter_logins: "Επίτρεψε επαλήθευση μέσω Twitter, απαιτεί twitter_κλειδί_καταναλωτή και twitter_μυστικό_καταναλωτή" + twitter_consumer_key: "Κλειδί καταναλωτή για επαλήθευση μέσω Twitter, εγγεγραμμένο στο http://dev.twitter.com" + twitter_consumer_secret: "Μυστικό καταναλωτή για επαλήθευση μέσω Twitter, εγγεγραμμένο στο http://dev.twitter.com" + enable_instagram_logins: "Επίτρεψε επαλήθευση μέσω Instagram, απαιτεί Instagram_κλειδί_καταναλωτή και Instagram_μυστικό_καταναλωτή" + instagram_consumer_key: "Κλειδί καταναλωτή για επαλήθευση μέσω Instagram" + instagram_consumer_secret: "Μυστικό καταναλωτή για επαλήθευση μέσω Instagram" + enable_facebook_logins: "Επίτρεψε επαλήθευση μέσω Facebook, απαιτεί Facebook_ταυτότητα_εφαρμογής και Facebook_μυστικό_εφαρμογής" + facebook_app_id: "Ταυτότητα εφαρμογής για επαλήθευση μέσω Facebook, εγγεγραμμένο στο https://developers.facebook.com/apps" + facebook_app_secret: "Μυστικό εφαρμογής για επαλήθευση μέσω Facebook, εγγεγραμμένο στο https://developers.facebook.com/apps" + facebook_request_extra_profile_details: "Ζήτησε σχετικά με μένα, τοποθεσία και ιστοσελίδα του facebook. (απαιτείται έγκριση της αίτησης επαλήθευσής σου από το facebook)" + enable_github_logins: "Επίτρεψε επαλήθευση μέσω Github, απαιτεί Github_ταυτότητα_εφαρμογής και Github_μυστικό_εφαρμογής" + github_client_id: "Ταυτότητα καταναλωτή για επαλήθευση μέσω Github, εγγεγραμμένο στο https://github.com/settings/applications" + github_client_secret: "Μυστικό καταναλωτή για επαλήθευση μέσω Github, εγγεγραμμένο στο https://github.com/settings/applications" + readonly_mode_during_backup: "Ενεργοποίηση της λειτουργίας \"μόνο-ανάγνωση\" κατά τη διάρκεια δημιουργίας αντίγραφου ασφαλείας" + allow_restore: "Επίτρεψε επαναφορά, η οποία μπορεί να αντικαταστήσει ΟΛΑ τα δεδομένα του ιστότοπου! Αφήστε σφάλμα εκτός αν σχεδιάζεις να επαναφέρεις αντίγραφο ασφαλείας" + maximum_backups: "Το μέγιστο ποσό αντιγράφω ασφαλείας για να διατηρηθούν στο δίσκο. Παλαιότερα αντίγραφα ασφαλείας διαγράφονται αυτόματα" + automatic_backups_enabled: "Τρέξε αυτόματα αντίγραφα ασφαλείας όπως ορίζεται στη συχνότητα αντιγράφων ασφαλείας" + backup_frequency: "Πόσο συχνά δημιουργούμε αντίγραφο ασφαλείας ιστοτόπου, σε ημέρες." + enable_s3_backups: "Ανέβασε αντίγραφα αφαλείας στο S3 όταν ολοκληρωθεί. ΣΗΜΑΝΤΙΚΟ: απαιτεί έγκυρα S3 πιστοποιητικά στις Ρυθμίσεις αρχείων." + s3_backup_bucket: "Απομακρυσμένος κουβάς για αντίγραφα ασφαλείας. ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Βεβαιωθείτε οτι είναι απόρρητος κουβάς." + s3_disable_cleanup: "Απενεργοποιήστε την αφαίρεση αντιγράφων ασφαλείας από την S3 όταν αφαιρεθεί σε τοπικό επίπεδο." + backup_time_of_day: "Ώρα της ημέρας σε ζώνη UTC που το αντίγραφο ασφαλείας πρέπει να πραγματοποιηθεί." + backup_with_uploads: "Συμπεριέλαβε μεταφορτώσεις σε προγραμματισμένα αντίγραφα ασφαλείας. Απενεργοποιώντας το θα δημιουργηθούν αντίγραφα ασφαλείας μόνο για τη βάση δεδομένων." + active_user_rate_limit_secs: "Πόσο συχνά ενημερώνουμε το 'τελευταία_εθεάθη_σε' πεδίο, σε δευτερόλεπτα" + verbose_localization: "Εμφάνιζε εκτεταμένες συμβουλές εντοπισμού στην διεπαφή χρήστη. " + previous_visit_timeout_hours: "Πόσο διαρκεί μια επίσκεψη προτού τη θεωρήσουμε \"προηγούμενη\" επίσκεψη, σε ώρες" + top_topics_formula_log_views_multiplier: "Ο πολλαπλασιαστής (n) της αξίας προβολών καταγραφής μπαίνει στην αρχή του νήματος της φόρμουλας: `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: "Ο πολλαπλασιαστής (n) της αξίας των πρώτων αναρτήσεων μπαίνει στην αρχή του νήματος της φόρμουλας: `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: "Ο πολλαπλασιαστής (n) της αξίας των λιγότερων likes ανα ανάρτηση μπαίνει στην αρχή του νήματος της φόρμουλας: `log(views_count) * 2 + op_likes_count * 0.5 + LEAST(likes_count / posts_count, (n)) + 10 + log(posts_count)`" + rebake_old_posts_count: "Ο αριθμός των παλιών αναρτήσεων θα αναθεωρηθεί σε 15 λεπτά." + rate_limit_create_topic: "Μετά τη δημιουργία νήματος, οι χρήστες πρέπει να περιμένουν (n) δευτερόλεπτα πριν τη δημιουργία άλλου νήματος." + rate_limit_create_post: "Μετά τη δημοσίευση, οι χρήστες πρέπει να περιμένουν (n) δευτερόλεπτα πριν τη δημιουργία άλλης δημοσίευσης." + rate_limit_new_user_create_topic: "Μετά τη δημιουργία νήματος, οι νέοι χρήστες πρέπει να περιμένουν (n) δευτερόλεπτα πριν τη δημιουργία άλλου νήματος." + rate_limit_new_user_create_post: "Μετά τη δημοσίευση, οι νέοι χρήστες πρέπει να περιμένουν (n) δευτερόλεπτα πριν τη δημιουργία άλλης δημοσίευσης." + max_likes_per_day: "Μέγιστος αριθμός \"Μου αρέσει\" ανά χρήστη ανά ημέρα." + max_flags_per_day: "Μέγιστος αριθμός σημάνσεων που κάνει ο κάθε χρήστης ανά ημέρα." + max_bookmarks_per_day: "Μέγιστος αριθμός σελιδοδεικτών την ημέρα ανά χρήστη." + max_edits_per_day: "Μέγιστος αριθμός επεξεργασιών που μπορεί να κάνει κάθε χρήστης σε μια ημέρα." + max_topics_per_day: "Μέγιστος αριθμός νημάτων που μπορεί να δημιουργήσει ο χρήστης σε μια ημέρα." + max_private_messages_per_day: "Μέγιστος αριθμός μηνυμάτων που μπορεί να δημιουργήσει ο χρήστης σε μια ημέρα." + max_invites_per_day: "Μέγιστος αριθμός προσκλήσεων που μπορεί να στείλει ο χρήστης σε μια ημέρα." + max_topic_invitations_per_day: "Μέγιστος αριθμός προσκλήσεων νημάτων που μπορεί να στείλει ο χρήστης σε μια ημέρα." + max_logins_per_ip_per_hour: "Μέγιστος αριθμός επιτρεπόμενων συνδέσεων ανα διεύθυνση IP την ώρα" + max_logins_per_ip_per_minute: "Μέγιστος αριθμός επιτρεπόμενων συνδέσεων ανα διεύθυνση IP το λεπτό" + alert_admins_if_errors_per_minute: "Πλήθος σφαλμάτων ανά λεπτό για την ενεργοποίηση χρειάζεται ειδοποίηση διαχειριστή. Η τιμή 0 απενεργοποιεί αυτήν τη δυνατότητα. Σημείωση: απαιτεί επανεκκίνηση." + alert_admins_if_errors_per_hour: "Ο αριθμός σφαλμάτων που χρειάζονται προκειμένου να προκληθεί μία ειδοποίηση διαχειριστή. Αν ο αριθμός σφαλμάτων είναι 0, τότε αυτή η λειτουργία απενεργοποιείται. Σημείωση: απαιτεί επανεκκίνηση. " + categories_topics: "Αριθμός θεμάτων που παρουσιάζονται στη σελίδα του /κατηγορίες." + suggested_topics: "Αριθμός προτεινόμενων νημάτων που εμφανίζονται στο κάτω μέρος ενός νήματος." + limit_suggested_to_category: "Εμφάνιζε θέματα μόνο από την τρέχουσα κατηγορία στα προτεινόμενα θέματα." + suggested_topics_max_days_old: "Προτεινόμενα θέματα δεν πρέπει να υπερβαίνουν το n παλαιών ημερών" + clean_up_uploads: "Απομάκρυνση μόνων και μη καταχωρημένων φορτώσεων για αποτροπή παράνομων . ΠΡΟΕΙΔΟΠΟΙΗΣΗ: ίσως να θέλετε να δημιουργήσετε αντίγραφα ασφαλείας του καταλόγου /uploads σας πριν την ενεργοποίηση αυτής της ρύθμισης." + clean_orphan_uploads_grace_period_hours: "Η περίοδος χάριτος είναι (ώρες) πριν μία ανώνυμη ανάρτηση θα αφαιρείται" + purge_deleted_uploads_grace_period_days: "Η περίοδος χάριτος είναι (μέρες) πριν μία διεγραμένη ανάρτηση σβηστεί μόνημα." + purge_unactivated_users_grace_period_days: "Η περίοδος χάριτος είναι (μέρες) πριν ένας χρήστης ο οποίος δεν έχει δρατηριοποιήσει τον λογαρισμό του θα διαγράφεται." + enable_s3_uploads: "Τοποθέτηση φορτόσεων στον αποθηκευτικό χώρο Amazon S3. ΣΗΜΑΝΤΙΚΟ: Απαιτούνται έγκυρα διαπιστευτήρια S3 (και access key id και secret access key)." + s3_use_iam_profile: 'Χρησιμοποιήστε AWS EC2 ΙΑΜ ρόλο για να ανακτήσετε τα κλειδιά. ΣΗΜΕΙΩΣΗ: η ενεργοποίηση θα υπερισχύσει τις ρυθμίσεις "κλειδί s3 πρόσβαση id" και "s3 βασικό μυστικό πρόσβασης".' + s3_upload_bucket: "Το όνομα κουβά Amazon S3 οπου θα μεταφορτοθούν τα αρχεία . ΠΡΟΣΟΧΗ: πρέπει να είναι πεζά, χωρίς περίοδοι και χωρίς υπογράμμισεις." + s3_access_key_id: "Η ταυτότητα του κλειδιού πρόσβασης του άμαζον Σ3 θα χρεισημοποιηθή για το ανέβασμα φωτογραφιών" + s3_secret_access_key: "Το μυστικό κλειδί πρόσβασης στο Amazon S3 που θα χρησιμοποιηθεί για να ανεβάσετε εικόνες." + s3_region: "Το όνομα περιοχής Amazon S3 που θα χρησιμοποιηθεί για να ανεβάσετε εικόνες." + s3_cdn_url: "Η διεύθυνση CDN που θα χρησιμοποιήθει για όλα τα στοιχεία s3 (για παράδειγμα: https://cdn.somewhere.com). ΠΡΟΣΟΧΗ: μετά την αλλαγή αυτής της ρύθμισης θα πρέπει να γίνει rebake σε όλες τις υπάρχουσες αναρτήσεις." + avatar_sizes: "Κατάλογος που δημιουργείται αυτόματα άβαταρ,μεγέθη." + external_system_avatars_enabled: "Χρησιμοποιήσε εξωτερικό συστήμα avatars υπηρεσίας." + external_system_avatars_url: "URL του εξωτερικού συστήματος υπηρεσίας avatars. Επιτρεπτές αντικαταστάσεις είναι {username} {first_letter} {color} {size}" + default_opengraph_image_url: "Η διεύθυνση URL της προεπιλεγμένης εικόνας opengraph." + twitter_summary_large_image_url: "Η διεύθυνση URL της συνοπτικής κάρτας εικόνας της προεπιλογής Twitter (πρέπει να είναι τουλάχιστον 280px σε πλάτος, και σε τουλάχιστον 150px σε ύψος)." + allow_all_attachments_for_group_messages: "Επιτρέποντε όλα τα συνημμένα ηλεκτρονικά μηνύματα σε ομαδικά μηνύματα" + convert_pasted_images_to_hq_jpg: "Μετάτρεψε τις επικολλημένες εικόνες σε υψηλής ποιότητας φακέλους JPG." + convert_pasted_images_quality: "Ποιότητα των φακέλων που έχουν μετατραπεί σε JPG (1 είναι η χειρότερη ποιότητα, 100 είναι η καλύτερη)" + enable_flash_video_onebox: "Ενεργοποίηση ενσωμάτωσης των SWF και flv (Adobe Flash) συνδέσμων σε oneboxes. ΠΡΟΣΟΧΗ: μπορεί να εισαγάγει κινδύνους για την ασφάλεια." + default_invitee_trust_level: "Προεπιλεγμένο επίπεδο εμπιστοσύνης (0-4) για τους χρήστες που έχουν προσκληθεί." + default_trust_level: "Προεπιλεγμένο επίπεδο εμπιστοσύνης (0-4) για όλους τους νέους χρήστες. Προειδοποίηση! Αλλάζοντάς το θα εκτεθείς σε σοβαρό κίνδυνο για ανεπιθύμητα μηνύματα." + tl1_requires_topics_entered: "Πόσα νήματα πρέπει να εισάγει ένας νέος χρήστης προτού προωθηθεί στο επίπεδο εμπιστοσύνης 1." + tl1_requires_read_posts: "Πόσες δημοσιεύσεις πρέπει να διαβάσει ένας νέος χρήστης προτού προωθηθεί στο επίπεδο εμπιστοσύνης 1." + tl1_requires_time_spent_mins: "Για πόσα λεπτά πρέπει να διαβάσει δημοσιεύσεις ένας νέος χρήστης προτού προωθηθεί στο επίπεδο εμπιστοσύνης 1." + tl2_requires_topics_entered: "Πόσα νήματα πρέπει να εισάγει ένας χρήστης προτού προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl2_requires_read_posts: "Πόσες δημοσιεύσεις πρέπει να διαβάσει ένας χρήστης προτού προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl2_requires_time_spent_mins: "Για πόσα λεπτά πρέπει να διαβάζει ένας χρήστης δημοσιεύσεις προτού προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl2_requires_days_visited: "Πόσες μέρες πρέπει ο χρήστης να επισκεφτεί την ιστοσελίδα προτού προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl2_requires_likes_received: "Πόσα \"Μου αρέσει\" πρέπει να λάβει ένας χρήστης για να προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl2_requires_likes_given: "Πόσα \"Μου αρέσει\" πρέπει να δώσει ένας χρήστης για να προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl2_requires_topic_reply_count: "Σε πόσα νήματα πρέπει να απαντήσει ένας χρήστης προτού προωθηθεί στο επίπεδο εμπιστοσύνης 2." + tl3_time_period: "Χρόνος περιόδου για απαιτήςεις του επιπέδου εμπιστοςύνης 3(σε ημέρες)" + tl3_requires_days_visited: "Ελάχιστος αριθμός ημερών που ο χρήστης πρέπει να έχει επισκεφθεί την ιστοσελίδα τις τελευταίες ημέρες (tl3 time period) ώστε να δικαιούται να προωθηθεί στο επίπεδο εμπιστοσύνης 3 .Ορίστε υψηλότερη από tl3 χρονικό διάστημα για να απενεργοποιήσετε προσφορές από το tl3. (0 or higher) " + tl3_requires_topics_replied_to: "Ο ελάχιστος αριθμός θεμάτων στα οποία πρέπει να έχει απαντήσει ένας χρήστης τις τελευταίες (χρονική περίοδος εε3) μέρες, ώστε να δικαιούται να προωθηθεί στο επίπεδο εμπιστοσύνης 3. (0 ή παραπάνω) " + tl3_requires_topics_viewed: "Το ποσοστό των θεμάτων που έχουν δημιουργηθεί τις τελευταίες (χρονική περίοδος εε3) μέρες που πρέπει να έχει δει ένας χρήστης για να δικαιούται να προωθηθεί στο επίπεδο εμπιστοσύνης 3. (0 έως 100) " + tl3_requires_topics_viewed_cap: "Ο μέγιστος απαιτούμενος αριθμός θεμάτων που εμφανίστηκαν τις τελευταίες ημέρες (tl3 time period)." + tl3_requires_posts_read: "Το ποσοστό των αναρτήσεων που έχουν δημιουργηθεί τις τελευταίες (tl3 time period) μέρες που πρέπει να έχει δει ένας χρήστης για να δικαιούται να προωθηθεί στο επίπεδο εμπιστοσύνης 3. (0 έως 100)" + tl3_requires_posts_read_cap: "Ο μέγιστος απαιτούμενος αριθμός αναρτήσεων που πρέπει να έχουν διαβαστεί τις τελευταίες (χρονική περίοδος εε3) μέρες. " + tl3_requires_topics_viewed_all_time: "Ο ελάχιστος συνολικός αριθμός νημάτων που ένας χρήστης πρέπει να έχει δει για να δικαιούται να προωθηθεί στο επίπεδο εμπιστοσύνης 3. " + tl3_requires_posts_read_all_time: "Ο ελάχιστος συνολικός αριθμός αναρτήσεων που πρέπει να έχει διαβάσει ένας χρήστης για να δικαιούται να προωθηθεί στο επίπεδο εμπιστοσύνης 3. " + tl3_requires_max_flagged: "Ο χρήστης δεν θα πρέπει να είχε περισσότερες από x αναρτήσεις επισημασμένες από x διαφορετικούς χρήστες τις τελευταίες (tl3 time period) ημέρες για να πληρe;i τις προϋποθέσεις για την προώθηση σε επίπεδο εμπιστοσύνης 3, όπου x είναι η αξία αυτής της ρύθμισης. (0 ή μεγαλύτερο)" + tl3_promotion_min_duration: "Ο ελάχιστος αριθμός ημερών για τις οποίες διαρκεί μια προώθηση στο επίπεδο εμπιστοσύνης 3, προτού ένας χρήστης μπορεί να υποβιβαστεί στο επίπεδο εμπιστοσύνης 2. " + tl3_requires_likes_given: "Ο ελάχιστος αριθμός των 'μου αρέσει' που πρέπει να έχουν δωθεί τις τελευταίες (χρονική περίοδος εε3) ημέρες, ώστε να πληρούνται οι προυποθέσεις για προώθηση στο επίπεδο εμπιστοσύνης 3. " + tl3_requires_likes_received: "Ο ελάχιστος αριθμός των 'μου αρέσει' που πρέπει να έχουν ληφθεί τις τελευταίες (χρονική περίοδος εε3) ημέρες, ώστε να πληρούνται οι προυποθέσεις για προώθηση στο επίπεδο εμπιστοσύνης 3. " + tl3_links_no_follow: "Μην αφαιρείτε rel = nofollow από συνδέσεις που δημοσιεύτηκαν από επίπεδο εμπιστοσύνης 3 χρήστες." + min_trust_to_create_topic: "Το ελάχιστο επίπεδο εμπιστοσύνης που απαιτείται για να δημιουργήσεις ένα νέο νήμα." + min_trust_to_edit_wiki_post: "Ελάχιστο επίπεδο εμπιστοσύνης απαιτείται για να επεξεργαστεί μία δημοσίευση που έχει σημειωθεί ως wiki." + min_trust_to_edit_post: "Το ελάχιστο επίπεδο εμπιστοσύνης που απαιτείται για να επεξεργαστείς δημοσιεύσεις." + min_trust_to_allow_self_wiki: "Ελάχιστο επίπεδο εμπιστοσύνης απαιτείται για να μετατραπεί μία δημοσίευση του ίδιου του χρήστη σε wiki." + min_trust_to_send_messages: "Το ελάχιστο επίπεδο εμπιστοσύνης που απαιτείται για να δημιουργήσεις νέα προσωπικά μηνύματα." + newuser_max_links: "Πόσους συνδέσμους μπορεί να προσθέσει ένας χρήστης σε μια δημοσίευση." + newuser_max_images: "Πόσες εικόνες μπορεί να προσθέσει ένας χρήστης σε μια δημοσίευση." + newuser_max_attachments: "Πόσα συνημμένα μπορεί να προσθέσει ένας χρήστης σε μια δημοσίευση." + newuser_max_mentions_per_post: "Μέγιστος αριθμός @ονομαστικές ειδοποιήσεις που ένας νέος χρήστης μπορεί να χρησιμοποιήσει σε μια δημοσίευση." + newuser_max_replies_per_topic: "Μέγιστος αριθμός απαντήσεων που ένας νέος χρήστης μπορεί να δώσει σε ένα συγκεκριμένο νήμα έως ότου κάποιος να του απαντήσει. " + max_mentions_per_post: "Μέγιστος αριθμός @ονομαστικές ειδοποιήσεις που οποιοσδήποτε μπορεί να χρησιμοποιήσει σε μια δημοσίευση." + max_users_notified_per_group_mention: "Μέγιστος αριθμός χρηστών που ίσως λάβουν μια ειδοποίηση εάν μια ομάδα αναφέρεται (εάν φτάσουν το κατώφλι, δεν θα σταλούν ειδοποιήσεις)" + create_thumbnails: "Δημιούργησε εικόνες με αντίχειρες και φωτεινό κουτί που είναι πολύ μεγάλες για να χωρέσουν σε μια δημοσίευση." + email_time_window_mins: "Αναμονή (χ) λεπτών πριν την αποστολή οποιουδήποτε ειδοποιητικού ηλεκτρονικού μηνύματος, έτσι ώστε να δωθεί στους χρήστες η ευκαιρία να επεξεργασθούν και να οριστικοποιήσουν τις αναρτήσεις τους. " + private_email_time_window_seconds: "Αναμονή (χ) δευτερολέπτων πριν την αποστολή οποιουδήποτε προσωπικού ειδοποιητικού ηλεκτρονικού μηνύματος, έτσι ώστε να δωθεί στους χρήστες η ευκαιρία να επεξεργασθούν και να οριστικοποιήσουν τα μηνύματα τους. " + email_posts_context: "Πόσες προηγούμενες απαντήσεις να συμπεριλαμβάνονται ως συγκείμενο στα ειδοποιητικά μηνύματα. " + flush_timings_secs: "Πόσο συχνά θα καθαρίσουμε τα δεδομένα χρονισμού στο σέρβερ, σε δευτερόλεπτα." + title_max_word_length: "Το μέγιστο επιτρεπόμενο όριο λέξεων, σε χαρακτήρες, σε ένα τίτλο νήματος." + title_min_entropy: "Η ελάχιστη εντροπία (μοναδικοί χαρακτήρες, μη-Αγγλικά μετράνε για τους περισσότερους) που απαιτείται για ένα τίτλο του θέματος." + body_min_entropy: "Η ελάχιστη εντροπία (μοναδικοί χαρακτήρες, μη-Αγγλικά μετράνε για τα περισσότερα) που απαιτούνται για το κύριο τμήμα μίας ανάρτησης." + allow_uppercase_posts: "Επίτρεψε όλα τα γράμματα στον τίτλο ενός νήματος ή σε μία ανάρτηση να είναι κεφαλαία. " + title_fancy_entities: "Μετατροπή κοινών χαρακτήρων ASCII σε φανταχτερές οντότητες HTML στους τίτλους νημάτων, όπως με το SmartyPants http://daringfireball.net/projects/smartypants/" + min_title_similar_length: "Το ελάχιστο μήκος τίτλου προτού ελεγχθεί για παρόμοια νήματα." + min_body_similar_length: "Το ελάχιστο μήκος σώματος μιας δημοσίευσης προτού ελεγχθεί για παρόμοια νήματα." + desktop_category_page_style: "Οπτικό στυλ για τη σελίδα /Categories." + category_colors: "Μια λίστα με τιμές δεκαεξαδικού χρώματος δεκαεξαδικό, που επιτρέπεται για τις κατηγορίες." + category_style: "Οπτικό στυλ για τα εμβλημάτα κατηγορίας ." + max_image_size_kb: "Το μέγιστο μέγεθος εικόνας για μεταφόρτωση σε kB. Αυτό πρέπει να ρυθμιστεί στο nginx (client_max_body_size) / apache ή και στο proxy." + max_attachment_size_kb: "Το μέγιστο μέγεθος συννημένων αρχείων για μεταφόρτωση σε kB. Αυτό πρέπει να ρυθμιστεί στο nginx (client_max_body_size) / apache ή και στο proxy." + authorized_extensions: "Μια λίστα με επεκτάσεις αρχείου επιτρέπεται για ανέβασμα (use '*' to enable all file types)" + max_similar_results: "Πόσα παρόμοια νήματα να εμφανίζονται πάνω από τον εκδότη, όταν δημιουργείς ένα νέο νήμα. Η σύγκριση βασίζεται στον τίτλο και το σώμα." + max_image_megapixels: "Ο μέγιστος αριθμός megapixel που επιτρέπεται σε μία εικόνα. " + title_prettify: "Απέφυγε συνηθησμένα τυπογραφικά λάθη στους τίτλους, όπως όλα τα γράμματα να είναι κεφαλαία, το πρώτο γράμμα της λέξης να είναι μικρό, πολλαπλά ! και ;, επιπλέον . στο τελος, κτλ. " + topic_views_heat_low: "Μετά από τόσες προβολές, το πεδίο των προβολών είναι ελάχιστα τονισμένο. " + topic_views_heat_medium: "Μετά από τόσες προβολές, το πεδίο των προβολών είναι μέτρια τονισμένο. " + topic_views_heat_high: "Μετά από τόσες προβολές, το πεδίο των προβολών είναι πολύ τονισμένο. " + cold_age_days_low: "Μετά από τόσες μέρες συζήτησης, η ημερομηνία τελευταίας ενέργειας είναι ελάχιστα αχνή. " + cold_age_days_medium: "Μετά από τόσες μέρες συζήτησης, η ημερομηνία τελευταίας ενέργειας είναι μέτρια αχνή. " + cold_age_days_high: "Μετά από τόσες μέρες συζήτησης, η ημερομηνία τελευταίας ενέργειας είναι πολύ αχνή. " + history_hours_low: "Μία ανάρτηση η οποία έχει επεξεργαστεί ώς και πριν από τόσες ώρες, έχει την ένδειξη επεξεργασίας ελάχιστα τονισμένη. " + history_hours_medium: "Μία ανάρτηση η οποία έχει επεξεργαστεί ώς και πριν από τόσες ώρες, έχει την ένδειξη επεξεργασίας μέτρια τονισμένη. " + history_hours_high: "Μία ανάρτηση η οποία έχει επεξεργαστεί ώς και πριν από τόσες ώρες, έχει την ένδειξη επεξεργασίας πολύ τονισμένη. " + topic_post_like_heat_low: "Όταν η αναλογία likes:ανάρτηση υπερβεί αυτήν την αναλογία, το πεδίο μετρητής της ανάρτησης γίνετε ελαφρώς πιο τονισμένο. " + topic_post_like_heat_medium: "Μετά από τόσα ''Μου αρέσει'',το πεδίο μέτρησης αναρτήσεων είναι μέτρια τονισμένο." + topic_post_like_heat_high: "Όταν η αναλογία likes:ανάρτηση υπερβεί αυτήν την αναλογία, το πεδίο μετρητής της ανάρτησης γίνετε αρκετά πιο τονισμένο. " + faq_url: "Εάν έχετε ένα FAQ που φιλοξενείται αλλού που θέλετε να χρησιμοποιήσετε, παρέχετε την πλήρη διεύθυνση URL εδώ." + tos_url: "Εάν έχετε ένα έγγραφο τους όρους της υπηρεσίας που φιλοξενείται αλλού που θέλετε να χρησιμοποιήσετε, παρέχετε την πλήρη διεύθυνση URL εδώ." + privacy_policy_url: "Εάν έχετε ένα έγγραφο πολιτικής προστασίας προσωπικών δεδομένων που φιλοξενείται αλλού που θέλετε να χρησιμοποιήσετε, παρέχετε την πλήρη διεύθυνση URL εδώ." + newuser_spam_host_threshold: "Πόσες φορές ένας νέος χρήστης μπορεί να δημοσιεύσει ένα σύνδεσμο στο ίδιο κεντρικό υπολογιστή εντός τους 'newuser_spam_host_threshold' δημοσιεύσεις πριν θεωρηθούν ανεπιθυμητη αλληλογραφια" + white_listed_spam_host_domains: "Μια λίστα από πεδία ορισμού που αποκλείονται από τον έλεγχο ξενιστή σπαμ. Οι νέοι χρήστες δεν θα περιορίζονται ποτέ στη δημιουργία αναρτήσεων με συνδέσμους σε αυτά τα πεδία ορισμού." + staff_like_weight: "Πόσο επιπλέον συντελεστή στάθμισης να δωθεί στα likes των συνεργατών." + topic_view_duration_hours: "Μετρήστε μια νέα προβολή θέματος μία φορά ανά IP/User κάθε N ώρες" + user_profile_view_duration_hours: "Μετρήστε μια νέα προβολή προφίλ χρήστη μία φορά ανά IP/User κάθε N ώρες" + levenshtein_distance_spammer_emails: "Στην αντιστοίχιση διευθύνσεων ηλεκτρονικού ταχυδρομείου των σπαμερ, η διαφορά στον αριθμό των χαρακτήρων θα επιτρέπει μια ασαφή αντιστοίχιση." + max_new_accounts_per_registration_ip: "Αν ήδη υπάρχουν (ν) το πλήθος λογαριασμοί επιπέδου εμπιστοσύνης 0 από αυτή την IP διεύθυνση (και κανείς από αυτούς δεν είναι μέλος του προσωπικού ή στο επίπεδο εμπιστοσύνης 2 ή υψηλότερο), σταμάτα να αποδέχεσαι νέες εγγραφές από αυτή την IP διεύθυνση. " + min_ban_entries_for_roll_up: "Το πάτημα του πλήκτρου Κύλιση προς τα πάνω, θα δημιουργήσει μία απαγόρευση εισαγωγής νέου υποδικτύου αν υπάρχουν τουλάχιστον (Ν) εισαγωγές. " + max_age_unmatched_emails: "Διαγράψτε τις αταίριαστες καταχωρήσεις ηλεκτρονικού ταχυδρομείου που έχουν προβληθεί μετά από (N) μέρες." + max_age_unmatched_ips: "Διαγράψτε τις αταίριαστες καταχωρήσεις IP που έχουν προβληθεί μετά από (N) μέρες." + num_flaggers_to_close_topic: "Ελάχιστος αριθμός ξεχωριστών επισημάνσεων που απαιτείται για να σταματήσει αυτόματα ένα θέμα συζήτησης για παρέμβαση. " + num_flags_to_close_topic: "Ο ελάχιστος αριθμός από ενεργές επισημάνσεις που απαιτείται για την αυτόματη παύση ενός νήματος για επέμβαση." + auto_respond_to_flag_actions: "Ενεργοποίηση αυτόματης ρύθμισης όταν διατίθεται επισήμανση." + min_first_post_typing_time: "Ελάχιστος χρόνος σε χιλιοστά του δευτερολέπτου κατά τη διάρκεια του οποίου ένας χρήστης πρέπει να πληκτρολογήσει κατά τη διάρκεια της πρώτης ανάρτησης, εάν το όριο δεν επιτευχθεί τότε η ανάρτηση αυτόματα εισέρχεται στην ουρά αυτών που απαιτούν έγκριση. Θέτοντας τον ίσο με 0 απενεργοποιείται το όριο (δεν συνιστάται) " + auto_block_fast_typers_on_first_post: "Αυτόματος αποκλεισμός στους χρήστες που δεν πληρούν min_first_post_typing_time" + auto_block_fast_typers_max_trust_level: "Μέγιστο επίπεδο εμπιστοσύνης για την αυτόματη εμπλοκή γρήγορων δακτυλογράφων" + auto_block_first_post_regex: "Το regex χωρίς διάκριση πεζών-κεφαλαίων το οποίο αν περάσει θα προκαλέσει την πρώτη ανάρτηση από το χρήστη να μπλοκάρει και να σταλθεί στην ουρά για έγκριση. Παράδειγμα: raging|a[bc]a, θα προκαλέσει όλα τα μηνύματα που περιέχουν raging ή ΑΒΑ ή ACA να μπλοκάρουν. Ισχύει μόνο για την πρώτη θέση." + reply_by_email_enabled: "Ενεργοποίηση απάντησης στα νήματα μέσω ηλεκτρονικού μηνύματος." + reply_by_email_address: "Πρότυπο απάντησης μέσω ηλεκτρονικού ταχυδρομείου, με εισερχόμενες διευθύνσεις ηλεκτρονικού ταχυδρομείου, για παράδειγμα: %{reply_key}@reply.example.com or replies+%{reply_key}@example.com" + alternative_reply_by_email_addresses: "Λίστα εναλλακτικών προτύπων για απάντηση μέσω ηλεκτρονικού ταχυδρομίου σε εισερχόμενες διευθύνσεις ηλεκτρονικού ταχυδρομίου, πχ: %{reply_key}@reply.example.com|replies+%{reply_key}@example.com" + incoming_email_prefer_html: "Χρησιμοποίησε την HTML μορφή αντί για το απλό κείμενο για εισερχόμενο ηλεκτρονικό μήνυμα. Μπορεί να προκαλέσει μη αναμενόμενα προβλήματα σχετικά με τη διαμόρφωση. " + disable_emails: "Απαγόρευσε στο Discourse να στέλνει ηλεκτρονικά μηνύματα οποιουδήποτε είδους" + strip_images_from_short_emails: "Αφαίρεσε εικόνες από ηλεκτρονικά μηνύματα που έχουν μέγεθος λιγότερο από 2800 Bytes. " + short_email_length: "Μικρού μήκους ηλεκτρονικό ταχυδρομείο σε Bytes" + display_name_on_email_from: "Να εμφανίζει πλήρη ονόματα στο ηλεκτρονικό ταχυδρομείο από τα πεδία" + unsubscribe_via_email: "Επίτρεψε στους χρήστες να καταργούν τη συνδρομή τους από ηλεκτρονικά μηνύματα στέλνοντας ένα ηλεκτρονικό μήνυμα με την φράση 'κατάργηση συνδρομής' στο θέμα ή το κείμενο του μηνύματος. " + unsubscribe_via_email_footer: "Πρόσθεσε στο υποσέλιδο των απεσταλμένων μηνυμάτων έναν σύνδεσμο κατάργησης συνδρομής μέσω ηλεκτρονικού μηνύματος. " + delete_email_logs_after_days: "Διαγραφή αρχείων καταγραφής ηλεκτρονικής διεύθυνσης μετά απο (N) μέρες. 0 για να κρατήσει επ 'αόριστον" + max_emails_per_day_per_user: "Ο μέγιστος αριθμός ηλεκτρονικών μηνυμάτων που θα στέλνονται στους χρήστες ανά μέρα. 0 για να απενεργοποιηθεί το όριο. " + enable_staged_users: "Αυτόματη δημιουργία χρηστών που δημιουργούνται όταν επεξεργάζεται ένα εισερχόμενο μήνυμα ηλεκτρονικού ταχυδρομείου." + maximum_staged_users_per_email: "Μέγιστος αριθμός χρηστών που δημιουργούνται όταν επεξεργάζεται ένα εισερχόμενο μήνυμα ηλεκτρονικού ταχυδρομείου." + auto_generated_whitelist: "Κατάλογος ηλεκτρονικών διευθύνσεων που δεν θα ελεγχθούν για αυτοπαραγόμενο περιεχόμενο. Παράδειγμα: foo@bar.com|discourse@bar.com" + block_auto_generated_emails: "Αποκλεισμός εισερχόμενων μηνυμάτων ηλεκτρονικού ταχυδρομείου που ταυτοποιούντε πως δημιουργούντε αυτόματα." + ignore_by_title: "Αγνόησε εισερχόμενα μηνύματα που βασίζονται στον τίτλο τους." + mailgun_api_key: "Mailgun μυστικό API κλειδί το οποίο χρησιμοποιήται για να επιβεβαιωθούν τα μηνύματα του webhook." + soft_bounce_score: "Το αποτέλεσμα εκβολλών προσθέτεται στο χρήστη όταν συμβαίνει μία προσωρινή εκβολλή. " + hard_bounce_score: "Το αποτέλεσμα εκβολλής προσθέτεται στο χρήστη όταν συμβαίνει μία μόνιμη εκβολλή. " + bounce_score_threshold: "Μέγιστος αριθμός εκβολλών μέχρι να σταματίσουμε να στέλνουμε email στο χρήστη." + bounce_score_threshold_deactivate: "Μέγιστος αριθμός εκβολλών μέχρι να απενεργοποιήσουμε το χρήστη." + reset_bounce_score_after_days: "Αυτόματη επαναφορά βαθμολογία αναπήδησης μετά από Χ ημέρες." + attachment_content_type_blacklist: "Λίστα των λέξεων-κλειδιών που χρησιμοποιούνται στη μαύρη λίστα συνημμένα με βάση τον τύπο περιεχομένου" + attachment_filename_blacklist: "Λίστα των λέξεων-κλειδιών που χρησιμοποιούνται στη μαύρη λίστα συνημμένα με βάση το όνομα του αρχείου." + enable_forwarded_emails: "[BETA] Να επιτρέπεται στους χρήστες να δημιουργήσουν ένα θέμα με την αποστολή ενός μηνύματος ηλεκτρονικού ταχυδρομείου στο." + always_show_trimmed_content: "Δείχνε πάντοτε την συντετμημένη μορφή των εισερχομένων ηλεκτρονικών μηνυμάτων. ΠΡΟΣΟΧΗ: μπορεί να αποκαλύψει διευθύνσεις ηλεκτρονικού ταχυδρομείου. " + manual_polling_enabled: "Αυτόματη αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου χρησιμοποιώντας το API για τις απαντήσεις ηλεκτονικών μηνυμάτων. " + pop3_polling_enabled: "Κάνε δειγματοληπτικό έλεγχο χρησιμοποιώντας το πρωτόκολλο POP3 για απαντήσεις ηλεκτρονικών μηνυμάτων. " + pop3_polling_ssl: "Χρησιμοποιήσε το πρωτόκολλο SSL για την σύνδεση με τον POP3 διακομιστή. (Συνιστάται) " + pop3_polling_openssl_verify: "Επαλήθευσε το TLS πιστοποιητικό διακομιστή (Προκαθορισμένο: ενεργοποιημένο)" + pop3_polling_period_mins: "Η περίοδος σε λεπτά ανάμεσα στους ελέγχους ενός POP3 λογαριασμού για ηλεκτρονικά μηνύματα. ΣΗΜΕΙΩΣΗ: απαιτεί επανεκκίνηση. " + pop3_polling_port: "Η θύρα όπου γίνεται έλεγχος σε ένα λογαριασμό POP3. " + pop3_polling_host: "Ο οικοδεσπότης σε δημοσκόπηση για το ηλεκτρονικό ταχυδρομείο μέσω του POP3." + pop3_polling_username: "Το όνομα χρήστη για το POP3 λογαριασμό σε δημοσκόπηση για το ηλεκτρονικό ταχυδρομείο." + pop3_polling_password: "Ο κωδικός πρόσβασης για το POP3 λογαριασμό σε δημοσκόπηση για το ηλεκτρονικό ταχυδρομείο." + log_mail_processing_failures: "Καταγραφή όλων των αποτυχιών επεξεργασίας ηλεκτρονικών μηνυμάτων στη διεύθυνση http://yoursitename.com/logs" + email_in: "Επέτρεπε στους χρήστες να αναρτούν νέα θέματα με ηλεκτρονικό μήνυμα (απαιτείται έλεγχος του pop3). Διαμόρφωσε τις διευθύνσεις στην καρτέλα ''Ρυθμίσεις'' της κάθε κατηγορίας. " + email_in_min_trust: "Το ελάχιστο επίπεδο εμπιστοσύνης που χρειάζεται ένας χρήστης, ώστε να του επιτραπεί να αναρτήσει ένα νεό θέμα μέσω email. " + email_prefix: "Το [label]που χρησιμοποιείται στο θέμα των μηνυμάτων ηλεκτρονικού ταχυδρομείου. Αυτό θα προκαθοριστεί σαν «τίτλος», αν δεν οριστεί." + email_site_title: "Ο τίτλος αυτής της ιστοσελίδας χρησιμοποιήται καθώς ο χρήστης στέλνει email από την ιστοσελίδα. Η προκαθορισμένη ρύθμιση είναι 'τίτλος'. Εάν ο 'τίτλος' σας περιέχει χαρακτήρες οι οποίοι δεν επιτρέπονται στα email, χρησιμοποιήστε αυτή τη ρύθμιση. " + minimum_topics_similar: "Πόσα νήματα χρειάζεται να υπάρχουν προτού παρουσιαστούν παρόμοια νήματα όταν δημιουργείς νέα νήματα." + relative_date_duration: "Αριθμός ημερών μετά την ανάρτηση όταν οι ημερομηνίες ανάρτησης θα εμφανίζονται ως σχετικές (7ημ) αντί για απόλυτες (20 Φεβ). " + delete_user_max_post_age: "Να μην επιτρέπεται η διαγραφή χρηστών των οποίων η πρώτη ανάρτηση είναι τουλάχιστον (Χ) ημερών. " + delete_all_posts_max: "Ο μέγιστος αριθμός αναρτήσεων που μπορούν να διαγραφούν με τη μία, χρησιμοποιώντας το κουμπί Διαγραφή Όλων Των Αναρτήσεων. Αν ο αριθμός των αναρτήσεων ενός χρήστη υπερβαίνει τον μέγιστο αριθμό, τότε δεν μπορόυν να διαγραφούν όλες οι αναρτήσεις με τη μία και ο χρήστης δεν μπορεί να διαγραφεί. " + username_change_period: "Ο αριθμός των ημερών που πρέπει να περάσουν από την εγγραφή ενός λογαριασμού για να μπορεί να γίνει αλλαγή του ονόματος του (0 για να μην επιτρέπεται η αλλαγή του ονόματος χρήστη). " + email_editable: "Να επιτρέπεται στους χρήστες η αλλαγή του ηλεκτρονικού ταχυδρομείου μετά την εγγραφή." + logout_redirect: "Τοποθεσία του διαδικτύου όπου ανακατευθύνεται το πρόγραμμα περιήγησης μετά την αποσύνδεση (π.χ.: http://somesite.com/logout)" + allow_uploaded_avatars: "Να επιτρέπεται στους χρήστες η μεταφόρτωση εξατομικευμένων εικόνων προφίλ. " + allow_animated_avatars: "Επιτρέπεται στους χρήστες να χρησιμοποιούν αρχεία τύπου gif για φωτογραφίες προφίλ. ΠΡΟΣΟΧΗ: εκτελέστε τα avatar:ανανεώστε αφού αλλάξετε αυτή τη ρύθμιση." + allow_animated_thumbnails: "Δημιουργεί κινούμενες μικρογραφίες κινουμένων GIFs. " + default_avatars: "Προκαθορισμένα URL που οδηγούν στα avatar θα χρησιμοποιούνται από τους νέους χρήστες μέχρι να τα αλλάξουν οι ίδιοι. " + automatically_download_gravatars: "Λήψη των Gravatars για τους χρήστες κατά τη δημιουργία λογαριασμού ή κατά την αλλαγή διεύθυνσης ηλεκτρονικού ταχυδρομίου. " + digest_topics: "Ο μέγιστος αριθμός δημοφιλών θεμάτων που θα εμφανίζονται στην σύνοψη του ηλεκτρονικού ταχυδρομείου. " + digest_posts: "Ο μέγιστος αριθμός δημοφιλών αναρτήσεων που θα εμφανίζονται στην σύνοψη του ηλεκτρονικού ταχυδρομείου. " + digest_other_topics: "Ο μέγιστος αριθμός θεμάτων που θα εμφανίζονται στην ενότητα 'Νέα στα θέματα και τις κατηγορίες που ακολουθείτε' της σύνοψης του ηλεκτρονικού ταχυδρομείου. " + digest_min_excerpt_length: "Ελάχιστο απόσπασμα ανάρτησης στην περίληψη του ηλεκτρονικού μηνύματος, σε χαρακτήρες. " + suppress_digest_email_after_days: "Καταστολή της σύνοψης του ηλεκτρονικού ταχυδρομείου για χρήστες που δεν έχουν φανεί στην ιστοσελίδα για πάνω απο (χ) μέρες. " + digest_suppress_categories: "Καταστείλει αυτές τις κατηγορίες από την περίληψη μηνυμάτων ηλεκτρονικού ταχυδρομείου." + disable_digest_emails: "Απενεργοποίηση των περιληπτικών ηλεκτρονικών μηνυμάτων για όλους τους χρήστες." + email_accent_bg_color: "Το χρώμα τονισμού που θα χρησιμοποιηθεί ως φόντο σε κάποια στοιχεία σε HTML ηλεκτρονικά μηνύματα. Εισήγαγε το όνομα του χρώματος ('κόκκινο') ή την δεκαεξαδική τιμή του ('#FF000')." + email_accent_fg_color: "Το χρώμα του κειμένου που θα αποδωθεί στο φόντο του ηλεκτρονικού μηνύματος σε HTML ηλεκτρονικά μηνύματα. Εισήγαγε το όνομα του χρώματος ('άσπρο') ή την δεκαεξαδική τιμή του ('#FFFFFF')." + email_link_color: "Το χρώμα των συνδέσμων σε HTML ηλεκτρονικά μηνύματα. Εισήγαγε το όνομα του χρώματος ('μπλε') ή την δεκαεξαδική τιμή του ('#0000FF'). " + detect_custom_avatars: "Αν πρέπει ή όχι να ελεγχθεί ότι οι χρήστες έχουν μεταφορτώσει εξατομικευμένες φωτογραφίες προφίλ. " + max_daily_gravatar_crawls: "Μέγιστος αριθμός φορών που το Discourse θα ελέγξει το Gravatar για προσαρμοσμένα avatars σε μία μέρα" + public_user_custom_fields: "Ο κατάλογος των ειδικών πεδίων για έναν χρήστη που μπορεί να εμφανιστεί δημόσια. " + staff_user_custom_fields: "Ο κατάλογος των ειδικών πεδίων που μπορεί να εμφανιστεί στο προσωπικό. " + enable_user_directory: "Παρέχουν κατάλογο με χρήστες για περιήγηση" + enable_group_directory: "Παρέχουν κατάλογο με ομάδες για περιήγηση" + allow_anonymous_posting: "Επέτρεψε στους χρήστες να μετατρέπουν σε ανώνυμη κατάσταση" + anonymous_posting_min_trust_level: "Το ελάχιστο επίπεδο εμπιστοσύνης που επιτρέπεται για ενεργοποίηση της ανώνυμης δημοσίευση" + anonymous_account_duration_minutes: "Για να προστατευθεί η ανωνυμία δημιούργησε ένα νέο ανώνυμο λογαριασμό κάθε Ν λεπτά για κάθε χρήστη. Παράδειγμα: εάν τεθεί στο 600, μόλις περάσουν 600 λεπτά από την τελευταία ανάρτηση ΚΑΙ ο χρήστης αλλάξει σε ανώνυμος, ένας νέος ανώνυμος λογαριασμός δημιουργείται." + hide_user_profiles_from_public: "Απενεργοποιήσε τις κάρτες χρηστών, τα προφίλ χρηστών και τον κατάλογο χρήστη για ανώνυμους χρήστες. " + user_website_domains_whitelist: "Ο ιστότοπος του χρήστη θα επιβεβαιώνεται με αυτά τα πεδία. Pipe-delimited λίστα" + allow_profile_backgrounds: "Επίτρεψε στους χρήστες να μεταφορτώνουν εικόνες φόντου στο προφίλ." + sequential_replies_threshold: "Ο αριθμός των αναρτήσεων που πρέπει να κάνει ένας χρήστης στη σειρά για το ίδιο θέμα πριν ειδοποιηθεί για παρα πολλές συνεχόμενες απαντήσεις." + get_a_room_threshold: "Ο αριθμός των αναρτήσεων που πρέπει να κάνει ένας χρήστης στον ίδιο άνθρωπο και στο ίδιο θέμα προτού να προειδοποιηθεί. " + enable_mobile_theme: "Οι κινητές συσκευές χρησιμοποιούν θέματα φιλικά προς τα κινητά, με τη δυνατότητα αλλαγής στον ολοκληρωμένο ιστότοπο. Απενεργοποιήστε το εάν θέλετε να εξατομικεύσετε το στυλ που ανταποκρίνεται ολοκληρωτικά. " + dominating_topic_minimum_percent: "To ποσοστό αναρτήσεων που πρέπει να κάνει ένας χρήστης σε ένα νήμα πριν ειδοποιηθεί για υπερβολική χρήση του. " + disable_avatar_education_message: "Απενεργοποίησε εκπαιδευτικό μήνυμα για αλλαγή του avatar." + suppress_uncategorized_badge: "Να μην εμφανίζεται το παράσημο για τα νήματα που δεν ανήκουν σε κατηγορίες στις καταχωρήσεις νημάτων." + permalink_normalizations: "Εφαρμόστε την ακόλουθη regex πριν ταιριάξετε τα permalinks, για παράδειγμα: /(topic.*)\\?.*/\\1 θα αφαιρέσει τις συμβολοσειρά για ερώτηση από τις διαδρομές για τα νήματα. Η μορφή είναι regex+συμβολοσειρά χρησημοποιήστε \\ 1 κ.λπ., για να αποκτήσετε πρόσβαση στις συλλήψεις" + global_notice: "Εμφάνισε μια ΕΠΕΙΓΟΥΣΑ, ΕΚΤΑΚΤΗ παγκόσμια ανακοίνωση σε όλους τους επισκέπτες, άλλαξε σε κενό για να την αποκρύψεθς (HTML επιτρεπτό)." + disable_edit_notifications: "Απενεργοποιεί τη επεξεργασία των ειδοποιήσεων από τον χρήστη του συστήματος όσο το 'download_remote_images_to_local' είναι ενεργό" + automatically_unpin_topics: "Αυτόματο ξεκαρφίτσωμα των νημάτων, όταν ο χρήστης φτάνει στο κάτω μέρος." + read_time_word_count: "Μέτρηση των λέξεων ανά λεπτό για να υπολογίσεις τον εκτιμώμενο χρόνο διαβάσματος." + topic_page_title_includes_category: "Ο τίτλος του νήματος της σελίδας περιλαμβάνει και το όνομα της κατηγορίας." + native_app_install_banner: "Ζήτα από τους συχνούς επισκέπτες να εγκαταστήσουν την υπάρχουσα εφαρμογή Discourse. " + max_prints_per_hour_per_user: "Μέγιστος αριθμός /προβολή σελίδας (0 για απενεργοποίηση)" + full_name_required: "Το ονοματεπώνυμο είναι απαραίτητο πεδίο για το προφίλ του χρήστη." + enable_names: "Εμφάνιζε το πλήρες όνομα του χρήστη στο προφίλ τους, στην κάρτα χρήστη και στα ηλεκτρονικά μηνύματα. Απενεργοποίησε για να κρύβεται το πλήρες όνομα παντού. " + display_name_on_posts: "Να εμφανίζεται το πλήρες όνομα του χρήστη στις δημοσιεύσεις και επιπλέον το @όνομαχρήστη του." + show_time_gap_days: "Αν δύο αναρτήσεις δημιουργηθούν με τόσες πολλές ημέρες μεταξύ τους, εμφάνιζε το χρονικό κενό στο θέμα. " + invites_per_page: "Οι προσκλήσεις που φαίνονται από προεπιλογή στην σελίδα του χρήστη. " + short_progress_text_threshold: "Όταν ο αριθμός των αναρτήσεων σε ένα θέμα ξεπεράσει αυτό τον αριθμό, η γραμμή προόδου θα δείχνει μόνο τον τωρινό αριθμό αναρτήσεων. Αν αλλάξεις το πλάτος της γραμμής, μπορεί να χρειαστεί να αλλάξεις αυτή την τιμή." + default_code_lang: "Το συντακτικό της προκαθορισμένης γλώσσας προγραμματισμού στο οποίο έχει δωθεί έμφαση θα εφαρμοστεί στα code blocks του GitHub (lang-auto, ruby, python etc.)" + warn_reviving_old_topic_age: "Όταν κάποιος αρχίζει να απαντά σε ένα θέμα όπου η τελευταία απάντηση είναι παλαιότερη από τόσες πολλές ημέρες, εμφανίζεται μία προειδοποίηση. Απενεργεποίησε θέτοντας το ίσο με 0. " + autohighlight_all_code: "Αναγκαστική εφαρμογή έμφασης του κώδικα σε όλα τα διαμορφωμένα code blocks ακόμα και αν δεν έχουν προσδιορίσει τη γλώσσα." + highlighted_languages: "Συμπεριλαμβανόμενοι κανόνες επισήμανσης συντακτικού. (Προσοχή: το να συμπεριλάβεις υπερβολικά πολλές γλώσσες μπορεί να επηρεάσει την επίδοση) δες: https://highlightjs.org/static/demo/ for a demo" + feed_polling_enabled: "ΜΌΝΟ ΓΙΑ ΕΝΣΩΜΆΤΩΣΗ: Επιλογή για το αν πρεπει να ενσωματώθει ένα RSS/Atom feed ως ανάρτησεις." + feed_polling_url: "ΜΌΝΟ ΓΙΑ ΕΝΣΩΜΆΤΩΣΗ: Το URL του RSS/ATOM feed για ενσωμάτωση." + embed_by_username: "Το όνομα του χρήστη στο Discourse που δημιουργεί τα ενσωματομένα θέματα. " + embed_username_key_from_feed: "Κλειδί για να πάρετε το όνομα χρήστη του discourse από το feed" + embed_title_scrubber: " Κανονική έκφραση για ενσωματωμένους τίτλους." + embed_truncate: "Περικόψτε τις ενσωματωμένες δημοσιεύσεις." + allowed_href_schemes: "Τα σχεδιαγράμματα επιτρέπονται σε συνδέσμους επιπλέον απο το http και το https." + embed_post_limit: "Μέγιστος αριθμός δημοσιεύσεων για ενσωμάτωση." + embed_username_required: "Απαιτείται το όνομα χρήστη για τη δημιουργία νήματος." + embed_whitelist_selector: "CSS εκλέκτορας για τα στοιχεία που επιτρέπονται στην ενσωμάτωση" + embed_blacklist_selector: "Επιλογέας CSS για τα στοιχεία που έχουν αφαιρεθεί από τα ενσωματωμένα." + notify_about_flags_after: "Αν υπάρχουν σημάνσεις που δεν έχουν αντιμετωπιστεί μετά από τόσες ώρες, στείλε ένα ηλεκτρονικό μήνυμα στην ηλεκτρονική διεύθυνση επαφής. Θέσε τις 0 για να το απενεργοποιήσεις. " + show_create_topics_notice: "Εάν η ιστοσελίδα έχει λιγότερα από 5 δημόσια νήματα, κάνε μια παρατήρηση ζητώντας από τον διαχειριστή να δημιουργήσει μερικά νήματα." + delete_drafts_older_than_n_days: 'Διαγραφή προχείρων παλεότερα απο (ν) ημερων ' + bootstrap_mode_min_users: "Μέγιστος αριθμός /προβολή σελίδας (0 για απενεργοποίηση)" + prevent_anons_from_downloading_files: "Αποτρέψτε ανώνυμους χρήστες από το να κατεβάζουν συνημμένα. ΠΡΟΣΟΧΗ: αυτό θα αποτρέψει οποιαδήποτε στοιχεία του ιστοτόπου που δεν είναι εικόνες και δημοσιεύονται ως συνημμένα από το να λειτουργούν." + slug_generation_method: "Επιλέξτε μια μέθοδο παραγωγής slug. «Κωδικοποιημένη» θα δημιουργήσει μια συμβολοσειρά για ποσοστιαία κωδικοποίηση. «Κανένα» θα απενεργοποιήσει τα slug." + enable_emoji: "Ενεργοποίηση emoji" + emoji_set: "Πως θα ήθελες το emoji σου;" + enforce_square_emoji: "Αναγκαστική εφαρμογή τετράγωνων διαστάσεων σε όλα τα emoji." + approve_post_count: "Το ποσό των αναρτήσεων από έναν καινούριο ή βασικό χρήστη που πρέπει να εγκριθεί." + approve_unless_trust_level: "Οι αναρτήσεις για χρήστες κάτω από αυτό το επίπεδο εμπιστοσύνης πρέπει να εγκριθούν" + approve_new_topics_unless_trust_level: "Τα καινούρια θέματα για τους χρήστες κάτω από αυτό το επίπεδο εμπιστοσύνης πρέπει να εγκριθούν." + notify_about_queued_posts_after: "Εάν υπάρχουν αναρτήσεις που περιμέναν να αναθεωρηθούν για περισσότερο από τόσες ώρες, θα σταλεί ένα μήνυμα ηλεκτρονικού ταχυδρομίου στο contact_email. Όρισε το στο 0 για να απενεργοποιήσεις αυτά τα μηνύματα ηλεκτρονικού ταχυδρομίου." + auto_close_messages_post_count: "Ανώταρο όριο αναρτήσεων που επιτρέπονται σε ένα μήνυμα πριν αυτό κλείσει αυτομάτως (0 για απενεργοποιήση)" + auto_close_topics_post_count: "Ανώτατο όριο αναρτήσεων που επιτρέπονται σε ένα θέμα πριν αυτό κλείσει αυτομάτως (0 για απενεργοποίηση)" + code_formatting_style: "Το Κουμπί κώδικα στον συνθέτη θα έχει ως αποτέλεσμα αυτό το στυλ μορφοποίησης κώδικα " + default_email_digest_frequency: "Πόσο συχνά οι χρήστες λαμβάνουν περιληπτικά ηλεκτρονικά μηνύματα από προεπιλογή." + default_include_tl0_in_digests: "Συμπεριλάμβανε αναρτήσεις από νέους χρήστες στα περιληπτικά ηλεκτρονικά μηνύματα ως προεπιλογή. Οι χρήστες μπορούν να το αλλάξουν αυτό στις προτιμήσεις τους. " + default_email_private_messages: "Στείλε ηλεκτρονικό μήνυμα όταν κάποιος στέλνει μήνυμα στο χρήστη από προεπιλογή." + default_email_direct: "Στείλε ένα ηλεκτρονικό μήνυμα όταν κάποιος παραθέτει/απαντάει σε/αναφέρει ή προσκαλεί το χρήστη από προεπιλογή." + default_email_mailing_list_mode: "Στείλε ένα ηλεκτρονικό μήνυμα για κάθε νέα δημοσίευση από προεπιλογή." + default_email_mailing_list_mode_frequency: "Οι χρήστες, οι οποίοι έχουν ενεργοποιήσει την λειτουργία ταχυδρομικής λίστας θα λαμβάνουν ηλεκτρονικά μηνύματα συχνά από προεπιλογή." + disable_mailing_list_mode: "Απαγόρευσε στους χρήστες να ενεργοποιούν την κατάσταση καταλόγων ηλεκτρονικών διευθύνσεων. " + default_email_always: "Στείλε μια ειδοποίηση με ηλεκτρονικό μήνυμα, ακόμα κι όταν ο χρήστης είναι ενεργός από προεπιλογή." + default_email_previous_replies: "Περιέχει προηγούμενες απαντήσεις σε ηλεκτρονικά μηνύματα με ουδέτερο" + default_email_in_reply_to: "Συμπερίλαβε απόσπασμα της αναρτησης που απαντήθηκε σε μηνύματα ηλεκτρονικού ταχυδρομείου από προεπιλογή." + default_other_new_topic_duration_minutes: "Ππροεπιλεγμένη παγκόσμια κατάσταση κατά την οποία ένα νήμα θεωρείται νέο." + default_other_auto_track_topics_after_msecs: "Προεπιλεγμένη παγκόσμια ώρα πριν ένα νήμα παρακολουθείται αυτόματα." + default_other_notification_level_when_replying: "Προεπιλεγμένo παγκόσμιo επίπεδο ειδοποιήσεων όταν ένας χρήστης απαντάει σε ένα νήμα." + default_other_external_links_in_new_tab: "Άνοιγε τους εξωτερικούς συνδέσμους σε νέα καρτέλα από προεπιλογή." + default_other_enable_quoting: "Ενεργοποίηση απάντησης για επιλεγμένο κείμενο από προεπιλογή" + default_other_dynamic_favicon: "Δείχνε τον αριθμό νέων/ενημερωμένων θεμάτων στο εικονίδιο του προγράμματος περιήγησης από προεπιλογή. " + default_other_disable_jump_reply: "Να μην μεταφέρομαι στην ανάρτηση του χρήστη αφού απαντήσουν από προεπιλογή. " + default_other_like_notification_frequency: "Ειδοποίησε τους χρήστες όταν έχουν 'μου αρέσει' απο προεπιλογή. " + default_topics_automatic_unpin: "Αυτόματο ξεκαρφίτσωμα των νημάτων, όταν ο χρήστης φτάνει στο κάτω μέρος από προεπιλογή." + default_categories_watching: "Κατάλογος των κατηγοριών που που παρακολουθούνται από προεπιλογή." + default_categories_tracking: "Κατάλογος των κατηγοριών που παρακολουθούνται από προεπιλογή." + default_categories_muted: "Κατάλογος των κατηγοριών που βρίσκονται σε σίγαση από προεπιλογή." + default_categories_watching_first_post: "Κατάλογος των κατηγοριών στις οποίες η πρώτη δημοσίευση σε κάθε νέο θέμα θα παρακολουθείται από προεπιλογή." + max_user_api_reqs_per_day: "Μέγιστος αριθμός χρήστη API αιτήσεις ανά κλειδί ανά μέρα" + max_user_api_reqs_per_minute: "Μέγιστος αριθμός χρήστη API αιτήσεις ανά κλειδί ανά λεπτό" + allow_user_api_keys: "Επιτρέψτε την γενιά των χρηστών API κλειδιά" + allow_user_api_key_scopes: "Κατάλογος των πεδίων που επιτρέπεται για τον χρήστη για API κλειδιά" + max_api_keys_per_user: "Μέγιστος αριθμός κλειδιών API χρήστη ανά χρήστη. " + min_trust_level_for_user_api_key: "Επίπεδο εμπιστοσύνης που απαιτείται για την δημιουργία κλειδιών API χρήστη. " + allowed_user_api_auth_redirects: "Επιτρεπόμενος σύνδεσμος για ανακατεύθυνση ταυτότητας για τον χρήστη API κλειδιά" + allowed_user_api_push_urls: "Επιτρεπόμενοι συνδέσμοι για την ώθηση του διακομιστή στον χρήστη API" + tagging_enabled: "Ενεργοποίηση ετικετών στα θέματα; " + min_trust_to_create_tag: "Το ελάχιστο επίπεδο εμπιστοσύνης που απαιτείται για να δημιουργήσεις μία ετικέτα. " + max_tags_per_topic: "Ο μέγιστος αριθμός ετικετών που μπορούν να εφαρμοσθούν σε ένα θέμα. " + max_tag_length: "Ο μέγιστος αριθμός χαρακτήρων που μπορούν να χρησιμοποιηθούν σε μία ετικέτα. " + max_tag_search_results: "Ο μέγιστος αριθμός αποτελεσμάτων που μπορούν να εμφανιστούν όταν γίνεται αναζήτηση ετικετών. " + show_filter_by_tag: "Προβολή ενός αναπτυσσόμενου μενού για να ξεχωριστεί μία θεματική λίστα με ετικέτα. " + max_tags_in_filter_list: "Μέγιστος αριθμός ετικετών που φαίνονται στο ανοιγμένο μενού φίλτρων. Οι πιο συχνά χρησιμοποιημένες ετικέτες θα φαίνονται. " + tags_sort_alphabetically: "Εμφάνιζε τις ετικέτες με αλφαβητική σειρά. Η προεπιλογή είναι να εμφανίζονται με σειρά δημοφιλίας. " + tag_style: "Οπτικό στυλ για εμβλήματα ετικετών. " + staff_tags: "Μια λίστα επισημάνσεων που μπορούν να εφαρμοστούν μόνο από μέλη του προσωπικού" + min_trust_level_to_tag_topics: "Ελάχιστο επίπεδο εμπιστοσύνης που απαιτείται για επισήμανση νημάτων" + suppress_overlapping_tags_in_list: "Αν μία ετικέτα ταιριάζει ακριβώς με μία λέξη στον τίτλο ενός θέματος, τότε μην εμφανίσεις την ετικέτα. " + remove_muted_tags_from_latest: "Μην εμφανίζεις θέματα που έχουν επισημανθεί με ετικέτες σίγασης στην λίστα με τα νεώτερα θέματα. " + company_short_name: "Όνομα Εταιρείας (σύντομο)" + company_full_name: "Όνομα Εταιρείας (πλήρες)" + company_domain: "Εταιρική Διεύθυνση Διαδικτύου" + errors: + invalid_email: "Μη έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου." + invalid_username: "Δεν υπάρχει χρήστης με αυτό το όνομα χρήστη." + invalid_integer_min_max: "Η τιμή πρέπει να είναι μεταξύ %{min} και %{max}." + invalid_integer_min: "Η τιμή πρέπει να είναι %{min} ή υψηλότερη." + invalid_integer_max: "Η τιμή δεν μπορεί να είναι υψηλότερη από %{max}." + invalid_integer: "Η τιμή πρέπει να είναι ακέραιος αριθμός." + regex_mismatch: "Η τιμή δεν διαθέτει την απαιτούμενη μορφή. " + must_include_latest: "Το κορυφαίο μενού πρέπει να περιέχει την καρτέλα 'νεώτερα'." + invalid_string: "Μη έγκυρη τιμή." + invalid_string_min_max: "Πρέπει να είναι μεταξύ &{min} και %{max} χαρακτήρες." + invalid_string_min: "Πρέπει να είναι τουλάχιστον %{min} χαρακτήρες." + invalid_string_max: "Δεν πρέπει να είναι περισσότεροι από %{max} χαρακτήρες." + invalid_reply_by_email_address: "Η αξία πρέπει να περιέχει '%{reply_key}' και να είναι διαφορετική από την ειδοποίηση μέσω ηλεκτρονικού ταχυδρομείου." + invalid_alternative_reply_by_email_addresses: "Όλες οι αξίες πρέπει να περιέχει '%{reply_key}' και να είναι διαφορετικές από την ειδοποίηση μέσω ηλεκτρονικού ταχυδρομείου." + pop3_polling_host_is_empty: "Θα πρέπει να στήσετε εναν 'pop3 polling host' πρίν ενεργοποιήσετε το POP3 polling." + pop3_polling_username_is_empty: "Πρέπει να θέσετε ένα 'pop3 polling όνομα χρήστη' πριν ενεργοποιήσετε το POP3 polling." + pop3_polling_password_is_empty: "Πρέπει να θέσετε ένα 'pop3 polling κωδικό πρόσβασης' πριν ενεργοποιήσετε το POP3 polling." + pop3_polling_authentication_failed: "Ο έλεγχος ταυτότητας του πρωτοκόλλου POP3 απέτυχε. Παρακαλώ επαληθεύστε τα διαπιστευτήρια σας του πρωτοκόλλου POP3." + reply_by_email_address_is_empty: "Πρέπει να θέσετε μια 'ηλεκτρονική διεύθυνση απάντησης' πριν ενεργοποιήσετε την δυνατότητα απάντησης με ηλεκτρονικό μήνυμα ηλεκτρονικού ταχυδρομείου. " + email_polling_disabled: "Πρέπει να ενεργοποιήσετε ή το χειρωνακτικό ή το POP3 polling πριν ενεργοποιήσετε την απάντηση μέσω email" + user_locale_not_enabled: "Πρέπει πρώτα να ενεργοποιήσετε τη ρύθμιση 'επίτρεψε την τοποθεσία χρήστη' πριν να ενεργοποιήσετε αυτή τη ρύθμιση. " + invalid_regex: "Το Regex δεν είναι έγκυρο ή δεν επιτρέπεται" + search: + within_post: "#%{post_number} από %{username}" + types: + category: 'Κατηγορίες' + topic: 'Αποτελέσματα' + user: 'Χρήστες' + sso: + not_found: "Ο λογαριασμός σου δεν ήταν δυνατόν να βρεθεί. Παρακαλώ επικοινώνησε με το διαχειριστή της ιστοσελίδας." + account_not_approved: "Ο λογαριασμός σας βρίσκεται σε αναμονή εγκρίσεως. Θα λάβετε ειδοποίηση με ηλεκτρονικό μήνυμα όταν έχει εγκριθεί. " + unknown_error: "Προέκυψε κάποιο πρόβλημα με το λογαριασμό σου. Παρακαλώ επικοινώνησε με το διαχειριστή της ιστοσελίδας." + timeout_expired: "Ο χρόνος σύνδεσης του λογαριασμού έληξε, παρακαλώ προσπάθησε να συνδεθείς ξανά." + original_poster: "Αυτός που έκανε την αρχική ανάρτηση" + most_posts: "Περισσότερες δημοσιεύσεις" + most_recent_poster: "Αυτός που έκανε την πιο πρόσφατη ανάρτηση" + frequent_poster: "Αυτός που κάνει αναρτήσεις συχνά" + redirected_to_top_reasons: + new_user: "Καλώς ήλθες στην κοινότητά μας! Αυτά είναι τα πιο δημοφιλή πρόσφατα νήματα." + not_seen_in_a_month: "Καλώς ήλθες πίσω! Δε σε έχουμε δει για αρκετό καιρό. Αυτά είναι τα πιο δημοφιλή νήματα, από τότε που απομακρύνθηκες." + merge_posts: + edit_reason: + one: "Μία δημοσίευση συγχωνεύθηκε από %{username}" + other: "%{count} δημοσιεύσεις συγχωνεύθηκαν από %{username}" + errors: + different_topics: "Δημοσιεύσεις που ανήκουν σε διαφορετικά νήματα δεν μπορούν να συγχωνευθούν." + different_users: "Δημοσιεύσεις που ανήκουν σε διαφορετικούς χρήστες δεν μπορούν να συγχωνευθούν." + move_posts: + new_topic_moderator_post: + one: "Μια ανάρτηση διαχωρίστηκε σε ένα νέο νήμα: %{topic_link}" + other: "Αναρτήσεις %{count} διαχωρίσθηκαν σε ένα νέο νήμα: %{topic_link}" + existing_topic_moderator_post: + one: "Μία δημοσίευση συγχωνεύθηκε σε ένα υπάρχον νήμα: %{topic_link}" + other: "%{count} δημοσιεύσεις συγχωνεύθηκαν σε ένα υπάρχον νήμα: %{topic_link}" + change_owner: + post_revision_text: "Η κυριότητα μεταφέρεται από %{old_user} σε %{new_user}." + deleted_user: "ένας χρήστης που έχει διαγραφεί " + emoji: + errors: + name_already_exists: "Συγγνώμη, η ονομασία '%{name}', χρησιμοποιείται ήδη από ένα άλλο emoji." + error_while_storing_emoji: "Συγγνώμη, παρουστιάστηκε σφάλμα κατα την διαδικασία αποθήκευσης του emoji." + topic_statuses: + archived_enabled: "Αυτό το νήμα είναι τώρα αρχειοθετημένο. Έχει παγώσει και δεν μπορεί να τροποποιηθεί με κανένα τρόπο." + archived_disabled: "Αυτό το νήμα δεν είναι τώρα αρχειοθετημένο. Δεν είναι πια παγωμένο και μπορεί να τροποποιηθεί." + closed_enabled: "Αυτό το νήμα είναι πια κλειστό. Οι απαντήσεις δεν είναι πλέον δυνατές" + closed_disabled: "Αυτό το θέμα είναι τώρα ανοικτό. Επιτρέπονται νεές απαντήσεις." + autoclosed_message_max_posts: + one: "Αυτό το μήνυμα έκλεισε αυτόματα αφού έφτασε το μέγιστο όριο της 1 απάντησης." + other: "Αυτό το μήνυμα έκλεισε αυτόματα αφού έφτασε το μέγιστο όριο των %{count} απαντήσεων." + autoclosed_topic_max_posts: + one: "Αυτό το νήμα έκλεισε αυτόματα αφού έφτασε το μέγιστο όριο της 1 απάντησης." + other: "Αυτό το νήμα έκλεισε αυτόματα αφού έφτασε το μέγιστο όριο των %{count} απαντήσεων." + autoclosed_enabled_days: + one: "Αυτό το νήμα έκλεισε αυτόματα μετά από 1 ημέρα. Δεν επιτρέπονται πια καινούριες απαντήσεις." + other: "Αυτό το νήμα έκλεισε αυτόματα μετά από %{count} ημέρες. Δεν επιτρέπονται πια καινούριες απαντήσεις." + autoclosed_enabled_hours: + one: "Αυτό το νήμα έκλεισε αυτόματα μετά από 1 ώρα. Δεν επιτρέπονται πια καινούριες απαντήσεις." + other: "Αυτό το νήμα έκλεισε αυτόματα μετά από %{count} ώρες. Δεν επιτρέπονται πια καινούριες απαντήσεις." + autoclosed_enabled_minutes: + one: "Αυτό το νήμα έκλεισε αυτόματα μετά από 1 λεπτό. Δεν επιτρέπονται πια καινούριες απαντήσεις." + other: "Αυτό το νήμα έκλεισε αυτόματα μετά από %{count} λεπτά. Δεν επιτρέπονται πια καινούριες απαντήσεις." + autoclosed_enabled_lastpost_days: + one: "Αυτό το νήμα έκλεισε αυτόματα 1 ημέρα μετά την τελευταία απάντηση. Δεν επιτρέπονται πλέον νέες απαντήσεις." + other: "Αυτό το νήμα έκλεισε αυτόματα %{count} ημέρες μετά την τελευταία απάντηση. Δεν επιτρέπονται πλέον νέες απαντήσεις." + autoclosed_enabled_lastpost_hours: + one: "Αυτό το νήμα έκλεισε αυτόματα 1 ώρα μετά την τελευταία απάντηση. Δεν επιτρέπονται πλέον νέες απαντήσεις." + other: "Αυτό το νήμα έκλεισε αυτόματα %{count} ώρες μετά την τελευταία απάντηση. Δεν επιτρέπονται πλέον νέες απαντήσεις." + autoclosed_enabled_lastpost_minutes: + one: "Αυτό το νήμα έκλεισε αυτόματα 1 λεπτό μετά την τελευταία απάντηση. Δεν επιτρέπονται πια καινούριες απαντήσεις." + other: "Αυτό το νήμα έκλεισε αυτόματα %{count} λεπτά μετά την τελευταία απάντηση. Δεν επιτρέπονται πια νέες απαντήσεις." + autoclosed_disabled: "Αυτό το νήμα είναι τώρα ανοικτό. Επιτρέπονται νέες απαντήσεις." + autoclosed_disabled_lastpost: "Το νήμα είναι τώρα ανοιχτό. Επιτρέπονται νέες απαντήσεις." + pinned_enabled: "Αυτό το νήμα είναι τώρα καρφιτσωμένο. Θα εμφανίζεται στην κορυφή της κατηγορίας του, έως ότου ξεκαρφιτσωθεί από το προσωπικό για κάποιον, ή από ατομικούς χρήστες για τον εαυτό τους." + pinned_disabled: "Αυτό το νήμα δεν είναι τώρα καρφιτσωμένο. Δε θα εμφανίζεται πια στην κορυφή της κατηγορίας." + pinned_globally_enabled: "Αυτό το νήμα είναι τώρα καρφιτσωμένο παγκοσμίως. Θα εμφανίζεται στην κορυφή της κατηγορίας και σε όλες τις καταχωρήσεις νημάτων μέχρι να ξεκαρφιτσωθεί για όλους από το προσωπικό, ή από ατομικούς χρήστες για τον εαυτό τους." + pinned_globally_disabled: "Αυτό το νήμα δεν είναι τώρα καρφιτσωμένο. Δε θα εμφανίζεται πια στην κορυφή της κατηγορίας." + visible_enabled: "Αυτό το νήμα είναι τώρα καταχωρημένο. Θα εμφανίζεται στις καταχωρήσεις νημάτων." + visible_disabled: "Αυτό το νήμα δεν είναι πια καταχωρημένο. Δε θα εμφανίζεται πλέον σε καμιά καταχώρηση νημάτων. Ο μόνος τρόπος να αποκτήσεις πρόσβαση σε αυτό το νήμα είναι μέσω άμεσου συνδέσμου." + login: + not_approved: "Ο λογαριασμός σου δεν έχει εγκριθεί ακόμα. Θα λάβεις ειδοποίηση με ηλεκτρονικό μήνυμα, όταν θα είσαι έτοιμος να συνδεθείς." + incorrect_username_email_or_password: "Λάθος όνομα χρήστη, διεύθυνση ηλεκτρονικού ταχυδρομείου ή κωδικός προσβασης" + wait_approval: "Ευχαριστούμε για την εγγραφή σας. Θα σας ενημερώσουμε όταν ο λογαριασμός σας εγκριθεί." + active: "Ο λογαριασμός σας έχει ενεργοποιηθεί και είναι έτοιμος προς χρήση" + activate_email: "

    Είσαι σχεδόν έτοιμος! Έχουμε στείλει ένα ηλεκτρονικό μήνυμα ενεργοποίησης προς %{email}. Παρακαλώ, ακολούθησε τις οδηγίες που υπάρχουν στο ηλεκτρονικό μήνυμα για να ενεργοποιήσεις τον λογαριασμό σου.

    Εάν δεν το παραλάβεις, έλεγξε τον φάκελο με τα Ανεπιθύμητα, ή προσπάθησε να συνδεθείς ξανά για να σου στείλουμε ένα άλλο ηλεκτρονικό μήνυμα ενεργοποίησης.

    " + not_activated: "Δεν μπορείς να συνδεθείς ακόμα. Σου έχουμε στείλει ένα ηλεκτρονικό μήνυμα ενεργοποίησης. Παρακαλώ, ακολούθησε τις οδηγίες που υπάρχουν στο μήνυμα για να ενεργοποιήσεις τον λογαριασμό σου." + not_allowed_from_ip_address: "Δεν μπορείς να συνδεθείς ως %{username} από αυτή τη διεύθυνση IP." + admin_not_allowed_from_ip_address: "Δεν μπορείς να συνδεθείς ως διαχειριστής από αυτή τη διεύθυνση IP." + suspended: "Δεν μπορείς να συνδεθείς μέχρι %{date}." + suspended_with_reason: "Ο λογαριασμός θα είναι αποκλεισμένος μέχρι τις %{date}: %{reason}" + errors: "%{errors}" + not_available: "Δεν είναι διαθέσιμο. Προσπάθησε %{suggestion};" + something_already_taken: "Κάτι πήγε στραβά, ίσως το όνομα χρήστη ή η διεύθυνση ηλεκτρονικού ταχυδρομείου υπάρχει ήδη. Δοκίμασε τον σύνδεσμο \"ξέχασα τον κωδικό μου\"." + omniauth_error: "Συγνώμη, παρουσιάστηκε σφάλμα κατά την εξουσιοδότηση του λογαριασμού σας. Μήπως δεν εγκρίνατε την διαδικασία εξουσιοδότησης; " + omniauth_error_unknown: "Κάτι πήγε στραβά κατά τη διαδικασία σύνδεσης, παρακαλώ προσπάθησε ξανά." + authenticator_error_no_valid_email: "Δεν επιτρέπονται διευθύνσεις ηλεκτρονικού ταχυδρομείου σχετικές με %{account}. ίσως να χρειαστεί να διαμορφώσετε τον λογαριασμό σας με μια διαφορετική διεύθυνση ηλεκτρονικού ταχυδρομείου. " + new_registrations_disabled: "Νέες εγγραφές λογαριασμών δεν επιτρέπονται αυτή τη στιγμή." + password_too_long: "Οι κωδικοί πρόσβασης περιορίζονται σε 200 χαρακτήρες." + email_too_long: "Η ηλεκτρονική διεύθυνση που δώσατε είναι πολύ μεγάλη. Οι ηλεκτρονικές διευθύνσεις δεν πρέπει να είναι περισσότερο από 254 χαρακτήρες, και η διεύθυνση Διαδικτύου δεν πρέπει να είναι περισσότερο απο 253 χαρακτήρες." + reserved_username: "Αυτό το χρηστώνυμο δεν είναι επιτρεπτό." + missing_user_field: "Δεν έχετε συμπληρώσει όλα τα πεδία χρήστη" + close_window: "Η αυθεντικοποιήση έχει ολοκληρωθεί. Κλείστε αυτό το παράθυρο για να συνεχίσετε." + already_logged_in: "Ουπς, φαίνεται ότι προσπαθείς να αποδεχθείς μια πρόσκληση για άλλον χρήστη. Εάν δεν εισαι %{current_user}, παρακαλώ αποσυνδέσου και δοκίμασε ξανά." + user: + no_accounts_associated: "Δεν υπάρχουν σχετικοί λογαριασμοί" + deactivated: "Απενεργοποιήθηκε εξαιτίας των πολλών μηνυμάτων ηλεκτρονικού ταχυδρομείου που επέστρεψαν πίσω στο %{email}'." + deactivated_by_staff: "Απενεργοποιημένο από το προσωπικό" + activated_by_staff: "Ενεργοποιημένο από το προσωπικό" + username: + short: "πρέπει να είναι τουλάχιστον %{min} χαρακτήρες" + long: "δεν πρέπει να είναι περισσότερο από %{max} χαρακτήρες" + characters: "πρέπει να συμπεριλαμβάνει μόνο αριθμούς, γράμματα και κάτω παύλες" + unique: "πρέπει να είναι μοναδικό" + blank: "πρέπει να είναι παρών" + must_begin_with_alphanumeric_or_underscore: "πρέπει να αρχίζει με ένα γράμμα, έναν αριθμό ή μια κάτω παύλα" + must_end_with_alphanumeric: "πρεπει να τελειώνει με ένα γράμμα ή έναν αριθμό" + must_not_contain_two_special_chars_in_seq: "δεν πρέπει να περιέχει 2 ή περισσότερους ξεχωριστούς χαρακτήρες συνεχόμενους (.-_)" + must_not_end_with_confusing_suffix: "δεν πρέπει να τελειώνει με μια μπερδεμένη κατάλυξη όπως .json ή .png κτλ." + email: + not_allowed: "δεν επιτρέπεται από τον πάροχο του ηλεκτρονικού μηνύματος. Παρακαλώ χρησιμοποίησε μια άλλη διεύθυνση ηλεκτρονικού ταχυδρομείου." + blocked: "δεν είναι επιτρεπτό." + revoked: "Δεν θα στέλνονται emails στο '%{email}' μέχρι τις %{ημερομηνια}." + ip_address: + blocked: "Δεν επιτρέπονται νεές εγγραφές από την IP διεύθυνσή σου." + max_new_accounts_per_registration_ip: "Δεν επιτρέπονται νεές εγγραφές από την IP διεύθυνσή σου (το ανώτατο όριο έχει επιτευχθεί). Επικοινώνησε με ένα μέλος του προσωπικού." + website: + domain_not_allowed: "Η ιστοσελίδα δεν είναι έγκυρη. Τα επιτρεπόμενα πεδία είναι: &{πεδία}" + flags_reminder: + flags_were_submitted: + one: "Οι επισημάνσεις υπεβλήθησαν πάνω από 1 ώρα πριν. Παρακαλώ αναθεώρησε τες." + other: "Οι επισημάνσεις υπεβλήθησαν πάνω από %{count} ώρες πριν. Παρακαλώ, αναθεώρησε τες." + subject_template: + one: "1 επισήμανση περιμένει να διαχειριστεί" + other: "%{count} επισημάνσεις περιμένουν να διαχειριστούν" + unsubscribe_mailer: + title: "Διαγραφή αποστολέα" + subject_template: "Επιβεβαιώστε ότι δε θέλετε να λαμβάνετε πλέον εξελίξεις μέσω email από %{ιστοσελίδα_τίτλος}" + text_body_template: | + Κάποιος (ίσως εσύ;) ζήτησε να μην αποστέλλονται ενημερώσεις με μήνυμα ηλεκτρονικού ταχυδρομείου από το %{site_domain_name} σε αυτή τη διεύθυνση. + Εάν επιθυμείς να το επιβεβαιώσεις, παρακαλούμε πάτησε αυτό το σύνδεσμο: + + %{confirm_unsubscribe_link} + + + Εάν θέλεις να συνεχίσεις να λαμβάνεις ενημερώσεις με μηνύματα ηλεκτρονικού ταχυδρομείου, μπορείς να αγνοήσεις αυτό το μήνυμα ηλεκτρονικού ταχυδρομείου. + invite_mailer: + title: "Προσκάλεσε τον αποστολέα" + subject_template: "%{invitee_name} σε προσκάλεσε σε '%{topic_title}' πάνω σε %{site_domain_name}" + text_body_template: | + %{όνομα_προσκεκλημένου} σας προσκάλεσε σε μία συζήτηση + + > **%{τίτλος_νήματος}** + > + > %{περιγραφή_νήματος} + + στο + + > %{τίτλος_ιστοτόπου} -- %{περιγραφή_ιστοτόπου} + + Εάν σε ενδιαφέρει, κάνε κλικ στο σύνδεσμο παρακάτω: + + %{σύνδεσμος_πρόσκλησης} + custom_invite_mailer: + title: "Προσαρμοσμένη Πρόσκληση Ταχυδρομείου" + subject_template: "%{invitee_name} σε προσκάλεσε στο %{topic_title}' του %{site_domain_name}" + text_body_template: | + %{όνομα_προσκεκλημένου} σας προσκάλεσε σε μία συζήτηση + + > **%{τίτλος_νήματος}** + > + > %{περιγραφή_νήματος} + + στο + + > %{τίτλος_ιστοτόπου} -- %{περιγραφή_ιστοτόπου} + + Με αυτή τη σημείωση + + > %{εξατομίκευση_μηνύματος_χρήστη} + + Εάν σε ενδιαφέρει, κάνε κλικ στο σύνδεσμο παρακάτω: + + %{σύνδεσμος_πρόσκλησης} + + Αυτή η πρόσκληση προέρχεται από έμπιστο χρήστη, επομένως ένας λογαριασμός θα δημιουργηθεί αυτόματα για εσένα χρησιμοποιώντας αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου. + invite_forum_mailer: + title: "Προσκαλέστε τον Μέιλερ του Φόρουμ" + subject_template: "%{invitee_name} σε προσκάλεσε να συμμετέχεις στο %{site_domain_name}" + text_body_template: |+ + %{όνομα_προσκεκλημένου} σας προσκάλεσε να γίνετε μέλος + + > **%{τίτλος_ιστοτόπου}** + > + > %{περιγραφή_ιστοτόπου} + + Εάν σε ενδιαφέρει, κάνε κλικ στο σύνδεσμο παρακάτω: + + %{σύνδεσμος_πρόσκλησης} + + custom_invite_forum_mailer: + title: "Προσκαλέστε τον Μέιλερ του Φόρουμ" + subject_template: "%{invitee_name} σε προσκάλεσε να συμμετέχεις στο %{site_domailn_name}" + text_body_template: | + %{όνομα_προσκεκλημένου} σας προσκάλεσε να γίνετε μέλος + + > **%{τίτλος_ιστοτόπου}** + > + > %{περιγραφή_ιστοτόπου} + + Με αυτή τη σημείωση + + > %{εξατομίκευση_μηνύματος_χρήστη} + + Εάν σε ενδιαφέρει, κάνε κλικ στο σύνδεσμο παρακάτω: + + %{σύνδεσμος_πρόσκλησης} + + Αυτή η πρόσκληση προέρχεται από έμπιστο χρήστη, επομένως ένας λογαριασμός θα δημιουργηθεί αυτόματα για εσένα χρησιμοποιώντας αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου. + invite_password_instructions: + title: "Προσκάλεσε οδηγίες κωδικού" + subject_template: "Όρισε κωδικό πρόσβασης για τον λογαρισμό σου %{όνομα_ιστοσελίδας}" + text_body_template: |+ + Ευχαριστώ που δέχθηκες την προσκλησή σου στο %{site_name} -- Καλώς ήρθες! + + Πάτησε αυτόν τον σύνδεσμο για να επιλέξεις κωδικό τώρα: + %{base_url}/users/password-reset/%{email_token} + + (Εάν ο σύνδεσμος πιο πάνω έχει λήξει, επέλεξε το "Ξέχασα τον κωδικό μου" όταν θα συνδεθείς με τον ηλεκτρονικό σου λογαριασμό.) + + test_mailer: + title: "Δοκιμάστε τον αποστολέα" + subject_template: "[%{site_name}] Στείλτε μέσω ηλεκτρονικού ταχυδρομίου την δοκιμασία Deliverability" + text_body_template: | + Αυτό είναι το πρώτο δοκιμαστικό μήνυμα ηλεκτρονικού ταχυδρομείου από + + [**%{base_url}**][0] + + Η δοκιμή ικανότητας παράδοσης με μήνυμα ηλεκτρονικού ταχυδρομείου είναι περίπλοκη. Εδώ θα βρεις μερικά σημαντικά πράγματα που πρέπει πρώτα να ελέγξεις: + + -*Σιγουρέψου* ότι έθεσες τις `ειδοποιήσεις ηλεκτρονικού ταχυδρομείου ` από: διεύθυνση σωστά στις ρυθμίσεις ιστοτόπου σου. **Ο τομέας που περιγράφεται στην "από" διεύθυνση ηλεκτρονικού ταχυδρομείου από την οποία στέλνεις είναι ο τομέας απέναντι στον οποίο θα εξακριβωθεί η διεύθυνση ηλεκτρονικού ταχυδρομείου σου **. + + - Μάθε πως μπορείς να δεις την αρχική πηγή των μηνυμάτων ηλεκτρονικού ταχυδρομείου στην αλληλογραφία του πελάτη σου, ώστε να μπορείς να εξετάζεις τίτλους μηνυμάτων ηλεκτρονικού ταχυδρομείου για σημαντικά στοιχεία. Στο Gmail, είναι η "δείξε το αρχικό" επιλογή στο ανοιγμένο μενού στην πάνω δεξιά μεριά κάθε μηνύματος ηλεκτρονικού ταχυδρομείου. + + - **ΣΗΜΑΝΤΙΚΟ:** Έχει ο ISP σου αντίστροφο αρχείο DNS που έχει εισαχθεί για να συσχετίζει τα ονόματα τομέων και τις διευθύνσεις IP από τις οποίες στέλνεις αλληλογραφία; [Έλεγξε το αντίστροφο αρχείο PTR ][2] εδώ. Αν ο ISP σου δεν εισάγει το σωστό κέρσορα του αντίστροφου αρχείου DNS, είναι απίθανο οποιοδήποτε μήνυμα ηλεκτρονικού ταχυδρομείου σου να παραδοθεί. + + - Είναι το [SPF record][8] του τομέα σου σωστό; [Έλεγξε το αρχείο SPF][1] εδώ. Σημείωσε ότι TXT είναι ο σωστός επίσημος τύπος αρχείου SPF. + + - Είναι το [DKIM record][3] του τομέα σου σωστό? Αυτό θα βελτιώσει την ικανότητα παράδοσης με μήνυμα ηλεκτρονικού ταχυδρομείου σημαντικά. [Έλεγξε το αρχείο DKIM σου][7] εδώ. + + - Αν τρέχεις το δικό σου διακομιστή αλληλογραφίας, έλεγξε και επιβεβαίωσε ότι τα IPs του διακομιστή αλληλογραφίας σου [δεν είναι σε μαύρη λίστα μηνυμάτων ηλεκτρονικής αλληλογραφίας][4]. Επίσης, επιβεβαίωσε ότι σίγουρα στέλνει ένα εξειδικευμένο όνομα δέκτη που παίρνει τη μορφή DNS στο HELO μήνυμα. Αν όχι, αυτό θα προκαλέσει απόρριψη του ηλεκτρονικού ταχυδρομείου σου από πολλές υπηρεσίες αλληλογραφίας. + + - Σου προτείνουμε να **στείλεις ένα δοκιμαστικό μήνυμα ηλεκτρονικού ταχυδρομείου [mail-tester.com][mt]** για να εξακριβώσεις αν όλα τα παραπάνω λειτουργούν κανονικά. + + (Ο *εύκολος* τρόπος είναι να δημιουργήσεις ένα δωρεάν λογαριασμό στο [SendGrid][sg], [SparkPost][sp], [Mailgun][mg] ή [Mailjet][mj], τα οποία έχουν γεναιόδωρα ελεύθερα πλάνα αλληλογραφίας και θα είναι εντάξει για μικρές κοινότητες. Ακόμη χρειάζεται να ενεργοποιήσεις τα αρχεία SPF και DKIM στο DNS σου, όμως!) + + Ελπίζουμε να έλαβες αυτή τη δοκιμή ικανότητας παράδοσης με μήνυμα ηλεκτρονικού ταχυδρομείου ΕΝΤΑΞΕΙ! + + Καλή επιτυχία, + + Οι φίλοι σου στο [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: + title: "Καινούργια έκδοση Αποστολέα" + subject_template: "[%{site_name}] Νέα έκδοση του Discourse, διαθέσιμη αναβάθμιση" + text_body_template: | + Ζήτω, μια νέα έκδοση του [Discourse](http://www.discourse.org) είναι διαθέσιμη! + + Η έκδοσή σου: %{εγκατεστημένη_έκδοση} + Η νέα έκδοση: **%{νέα_έκδοση}** + + - Λάβε την ενημέρωση εύκολα χρησιμοποιώντας **[ενημέρωση περιηγητή με ένα κλικ](%{base_url}/admin/upgrade)** + + - Δες τι νέο υπάρχει [GitHub changelog](https://github.com/discourse/discourse/commits/master) + + - Επισκέψου [meta.discourse.org](https://meta.discourse.org) για νέα, συζήτηση, και υποστήριξη για το Discourse + new_version_mailer_with_notes: + title: "Καινούργια έκδοση Αποστολέα με Σημειώσεις" + subject_template: "[%{site_name}] διαθέσιμη αναβάθμιση" + text_body_template: | + Γιούπιιι, μια νέα έκδοση του [Discourse](http://www.discourse.org) είανι διαθέσιμη! + + Η έκδοσή σου: %{εγκατεστημένη_έκδοση} + Η νέα έκδοση: **%{νέα_έκδοση}** + + - Λάβε την ενημέρωση εύκολα χρησιμοποιώντας **[ενημέρωση περιηγητή με ένα κλικ](%{base_url}/admin/upgrade)** + + - Δες τι νέο υπάρχει [GitHub changelog](https://github.com/discourse/discourse/commits/master) + + - Επισκέψου [meta.discourse.org](https://meta.discourse.org) για νέα, συζήτηση, και υποστήριξη για το Discourse + + ### Απελευθέρωση σημειώσεων + + %{notes} + queued_posts_reminder: + title: "Υπενθύμιση μηνυμάτων σε αναμονή." + subject_template: + one: "[%{site_name}] 1 δημοσίευση αναμένει αναθεώρηση" + other: "[%{site_name}] %{count} δημοσιεύσεις αναμένουν αναθεώρηση" + text_body_template: | + Γεια σου, + + αναρτήσεις από νέους χρήστες έχουν ανασταλλεί για συντονισμό και είναι σε αναμονή για εξέταση. [Approve or reject them here](%{base_url}/queued-posts). + flag_reasons: + off_topic: "Η ανάρτησή σου επισημάθηκε ως **εκτός θέματος**: η κοινότητα πιστεύει ότι δεν ταιριάζει με το νήμα, όπως ορίζεται από τον τίτλο και την πρώτη ανάρτηση αυτή τη στιγμή. " + inappropriate: "Η δημοσίευσή σου επισημάνθηκε ως \"ακατάλληλη\": η κοινότητα θεωρεί ότι είναι προσβλητική, υβριστική ή παραβίαση των [οδηγιών της κοινότητας](/οδηγίες)." + spam: "Η δημοσίευσή σου επισημάνθηκε ως \"ανεπιθύμητη\": η κοινότητα θεωρεί ότι πρόκειται για διαφήμιση ή κάτι που αφορά προώθηση και δεν είναι χρήσιμη ή σχετική με το νήμα όπως αναμενόταν." + notify_moderators: "Η ανάρτησή σου επισημάνθηκε ως **προς την προσοχή του συντονιστή**: η κοινότητα πιστεύει ότι κάτι σχετικά με την ανάρτηση απαιτεί χειροκίνητη παρέμβαση από ένα συνεργάτη." + flags_dispositions: + agreed: "Ευχαριστούμε που μας ενημερώσατε. Συμφωνούμε ότι υπάρχει κάποιο θέμα και το εξετάζουμε." + agreed_and_deleted: "Ευχαριστούμε που μας ενημερώσατε. Συμφωνούμε ότι υπάρχει κάποιο θέμα και έχουμε απομακρύνει τη δημοσίευση." + disagreed: "Ευχαριστούμε που μας ειδοποιήσατε. Το εξετάζουμε." + deferred: "Ευχαριστούμε που μας ειδοποιήσατε. Το εξετάζουμε." + deferred_and_deleted: "Ευχαριστούμε που μας ειδοποίησες. Έχουμε αφαιρέσει τη δημοσίευση." + temporarily_closed_due_to_flags: "Αυτό το νήμα είναι προσωρινά κλειστό εξαιτίας του μεγάλου αριθμού επισημάνσεων της κοινότητας." + system_messages: + post_hidden: + title: "Η δημοσίευση κρύφτηκε" + subject_template: "Η δημοσίευση κρύφτηκε από τις επισημάνσεις της κοινότητας" + text_body_template: | + Γεια σου, + + Αυτό είναι αυτοματοποιημένο μήνυμα από %{site_name} tγια να σε ενημερώσει ότι η ανάρτησή σου έχει αποκρυφθεί. + + %{βάση_url}%{url} + + %{λόγος_επισήμανσης} + + Πολλά μέλη της κοινότητας επισήμαναν αυτή την ανάρτηση πριν αποκρυφθεί, οπότε σε παρακαλούμε σκέψου πως μπορείς να επαναλάβεις την ανάρτηση λαμβάνοντας υπόψιν τα σχόλια τους. **Μπορείς να επεξεργαστείς την ανάρτησή σου μετά από %{edit_delay} λεπτά, και αυτόματα θα επανεμφανιστεί.** + + Όμως, εάν η ανάρτηση αποκρυφθεί από την κοινότητα για δεύτερη φορά, θα παραμείνει κρυμμένη έως ότου διαχειριστεί απο συνεργάτη, και ίσως υπάρξουν περαιτέρω ενέργειες συμπεριλαμβανομένης την πιθανής διακοπής του λογαριασμού σου. + + Για επιπλεον καθοδήγηση, παρακαλούμε ανάτρεξε στις [οδηγίες κοινότητας](%{base_url}/guidelines). + usage_tips: + text_body_template: | + Για να βρεις μερικά μυστικά για να αρχίσεις ως νέος χρήστης, [τσέκαρε αυτή την ανάρτηση στο ιστολόγιο](http://blog.discourse.org/2016/12/discourse-new-user-tips-and-tricks/). + + Καθώς συμμετέχεις εδώ, θα σε γνωρίσουμε και οι προσωρινοί περιορισμοί νέου χρήστη θα αρθούν. Με τον καιρό θα αποκτάς [επίπεδα εμπιστοσύνης](https://meta.discourse.org/t/what-do-user-trust-levels-do/4924) που περιλαμβάνουν ειδικές δυνατότητες και μας βοηθούν να διαχειριζόμαστε την κοινότητα μαζί. + welcome_user: + title: "Καλώς ήλθες χρήστη" + subject_template: "Καλώς ήλθατε στο %{site_name}!" + text_body_template: | + Ευχαριστούμε που έγινες μέλος %{site_name}, και καλώς ήρθες! + + %{new_user_tips} + + Πιστεύουμε στην [πολιτισμένη συμπεριφορά κοινότητας](%{base_url}/guidelines) πάντοτε. + + Απόλαυσε την παραμονή σου! + + (Εάν χρειαστεί να επικοινωνήσεις με [συνεργάτη](%{base_url}/about) ως νέος χρήστης, απλώς απάντησε σε αυτό το μήνυμα.) + welcome_invite: + title: "Πρόσκληση καλωσορίσματος" + subject_template: "Καλώς ήλθατε στο %{site_name}!" + text_body_template: | + Ευχαριστούε που δέχτθηκες την πρόσκληση για το %{site_name} -- καλως ήρθες! + + - Έχουμε δημιουργήσει αυτό το λογαριασμό **%{username}** για εσένα. Άλλαξε το όνομα ή τον κωδικό σου μέσω [ρυθμίσεις προφίλ][προτιμήσεις]. + + - Όταν συνδεθείς, παρακαλούμε **χρησιμοποίησε την ίδια διεύθυνση ηλεκτρονικού ταχυδρομείου όπως στην πρόσκλησή σου** — αλλιώς δεν θα ξέρουμε ότι πρόκειται για εσένα! + + %{new_user_tips} + + Πιστεύουμε στην [πολιτισμένη συμπεριφορά κοινότητας](%{base_url}/guidelines) πάντοτε. + + Απόλαυσε την παραμονή σου! + + (Αν χρειαστεί να επικοινωνήσεις με [συνεργάτη](%{base_url}/about) ως νέος χρήστης, απλώς απάντησε σε αυτό το μήνυμα.) + + [prefs]: %{user_preferences_url} + backup_succeeded: + title: "Το αντίγραφο ασφαλείας πέτυχε" + subject_template: "Το αντίγραφο ασφαλείας ολοκληρώθηκε επιτυχώς" + text_body_template: | + Η δημιουργία αντιγράφων ασφαλείας ήταν επιτυχής. + + Επισκέψου το [διαχειριστής > ενότητα αντιγράφων ασφαλείας](%{base_url}/admin/backups) για να κατεβάσεις το νέο σου αντίγραφο ασφαλείας. + + Το αρχείο καταγραφής είναι εδώ: + + ```κείμενο + %{logs} + ``` + backup_failed: + title: "Το αντίγραφο ασφαλείας απέτυχε" + subject_template: "Το αντίγραφο ασφαλείας απέτυχε" + text_body_template: | + Η δημιουργία αντιγράφων ασφαλείας απέτυχε. + + Το αρχείο καταγραφής είναι εδώ: + + ```κείμενο + %{logs} + ``` + restore_succeeded: + title: "Η επαναφορά ήταν επιτυχής" + subject_template: "Η επαναφορά ολοκληρώθηκε επιτυχώς" + text_body_template: | + Η αποκατάσταση ήταν επιτυχής. + + Το αρχείο καταγραφής είναι εδώ: + + ```κείμενο + %{logs} + ``` + restore_failed: + title: "Η επαναφορά ήταν αποτυχής" + subject_template: "Η επαναφορά απέτυχε" + text_body_template: | + Η επαναφορά απέτυχε. + + Εδώ είναι η καταγραφη: + + ```text + %{logs} + ``` + bulk_invite_succeeded: + title: "Η μαζική πρόσκληση ήταν επιτυχής" + subject_template: "Μαζική πρόσκληση χρηστών επεξεργάστηκε επιτυχώς" + text_body_template: "Το αρχείο της μαζικής πρόσκλησης χρηστών υποβλήθηκε σε επεξεργασία, %{sent} προσκλήσεις στάλθηκαν." + bulk_invite_failed: + title: "Μαζική πρόσκληση απέτυχε" + subject_template: "Μαζική πρόσκληση χρηστών υποβλήθηκε σε επεξεργασία με λάθη." + text_body_template: | + Το αρχείο πρόσκλησης για ομαδική αποστολή αλληλογραφίας του χρήστη επεξεργάστηκε, %{sent} αποστολές εστάλησαν με %{failed} λάθος(η). + + Εδώ είναι το αρχείο καταγραφής: + + ``` + %{logs} + ``` + csv_export_succeeded: + title: "Η CSV Εξαγωγή Πέτυχε" + subject_template: "Εξαγωγή δεδομένων ολοκληρώθηκε" + text_body_template: | + Η εξαγωγή αρχείων σου ήταν επιτυχής! :dvd: + + %{file_name} (%{file_size}) + + Ο παραπάνω σύνδεσμος θα παραμείνει ενεργός για 48 ώρες. + + Τα αρχεία είναι συμπιεσμένα σε ένα gzip αρχείο. Αν το αρχείο δεν μπορεί να εξάγει τα δεδομένα μόλις το ανοίγεις, χρησιμοποίησε τα εργαλεία που προτείνονται εδώ: http://www.gzip.org/#faq4 + csv_export_failed: + title: "Εξαγωγή CSV απέτυχε" + subject_template: "Η εξαγωγή δεδομένων απέτυχε" + text_body_template: "Λυπούμαστε αλλά η εξαγωγή δεδομένων απέτυχε. Παρακαλούμε έλεγξε τις καταγραφές ή επικοινώνησε με ένα συνεργάτη. " + email_reject_insufficient_trust_level: + title: "Απόρριψη ηλεκτρονικού μηνύματος Ανεπαρκές επίπεδο εμπιστοσύνης" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού μηνύματος -- Ανεπαρκές επίπεδο εμπιστοσύνης" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα του ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) απέτυχε. + + Ο λογαριασμός σου δεν έχει το απαιτούμενο επίπεδο εμπιστοσύνης ώστε να δημοσιεύσεις καινούρια νήματα σε αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου. Εάν πιστεύεις ότι πρόκειται για λάθος, επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_user_not_found: + title: "Απόρριψη ηλεκτρονικού μηνύματος Δε βρέθηκε ο χρήστης" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Ο χρήστης δε βρέθηκε" + text_body_template: | + Λυπούμαστε, αλλά το ηλεκτρονικό σου μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Η απάντησή σου στάλθηκε από άγνωστη διεύθυνση ηλεκτρονικού ταχυδρομείου. Προσπάθησε να στείλεις από άλλη διεύθυνση ηλεκτρονικού ταχυδρομείου, ή επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_screened_email: + title: "Απόρριψη ηλεκτρονικού μηνύματος σε ελεγμένες διευθύνσεις ηλεκτρονικού ταχυδρομίου" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού μηνύματος -- Μπλοκαρισμένο ηλεκτρονικό μήνυμα" + text_body_template: | + Λυπούμαστε, αλλά το ηλεκτρονικό σου μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Η απάντησή σου στάλθηκε από διεύθυνση ηλεκτρονικού ταχυδρομείου που έχει μπλοκαριστεί. Προσπάθησε να στείλεις από διαφορετική διεύθυνση ηλεκτρονικού ταχυδρομείου, ή επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_inactive_user: + title: "Απόρριψη ηλεκτρονικού μηνύματος Μη ενεργός χρήστης" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Μη ενεργός χρήστης" + text_body_template: | + Λυπούμαστε, αλλά το ηλεκτρονικό σου μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Ο λογαριασμός σου που σχετίζεται με αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου δεν είναι ενεργοποιημένος. Παρακαλώ ενεργοποίησε τον λογαριασμό σου προτού στείλεις ηλεκτρονικά μηνύματα. + email_reject_blocked_user: + title: "Απόρριψη ηλεκτρονικού μηνύματος Ο χρήστης μπλοκαρίστηκε" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- O χρήστης μπλοκαρίστηκε" + text_body_template: |+ + Λυπούμαστε, αλλά το ηλεκτρονικό σου μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Ο λογαριασμός σου που σχετίζεται με αυτή τη διεύθυνση ηλεκτρονικού ταχυδρομείου έχει μπλοκαριστεί. + + email_reject_reply_user_not_matching: + title: "Απόρριψη ηλεκτρονικού μηνύματος Ο χρήστης δεν ταιριάζει" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού μηνύματος -- Απάντηση από μη αναμενόμενη διεύθυνση ηλεκτρονικού ταχυδρομείου" + text_body_template: | + Λυπούμαστε, αλλά το ηλεκτρονικό σου μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Η απάντησή σου στάλθηκε από διαφορετική διεύθυνση ηλεκτρονικού ταχυδρομείου από αυτή που περιμέναμε, κι έτσι δεν είμαστε βέβαιοι εάν πρόκειται για το ίδιο άτομο. Προσπάθησε να στείλεις από διαφορετική διεύθυνση ηλεκτρονικού ταχυδρομείου, ή επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_no_account: + title: "Απόρριψη ηλεκτρονικού μηνύματος Κανένας λογαριασμός" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Άγνωστος λογαριασμος" + text_body_template: | + Λυπούμαστε, αλλά το ηλεκτρονικό σας μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Δεν μπορούμε να βρούμε κανένα λογαριασμό που να ταιριάζει με την διεύθυνση του ηλεκτρονικού σου ταχυδρομείου. Προσπάθησε να στείλεις από διαφορετική διεύθυνση ηλεκτρονικού ταχυδρομείου, ή επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_empty: + title: "Απόρριψη ηλεκτρονικού μηνύματος άδεια" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Δεν υπάρχει περιεχόμενο" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Δε μπορέσαμε να βρούμε κανένα κείμενο απάντησης στο μήνυμα ηλεκτρονικού ταχυδρομείου σου. + + Αν λαμβάνεις αυτό και αν _όντως_ συμπεριέλαβες απάντηση, προσπάθησε ξανά με απλούστερη μορφοποίηση. + email_reject_parsing: + title: "Τεχνολογία απορριψης ηλεκτρονικού μηνύματος" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Μη αναγνωρίσιμο περιεχόμενο" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Δε μπορέσαμε να βρούμε την απάντησή σου στο μήνυμα ηλεκτρονικού ταχυδρομείου. **Σιγουρέψου ότι η απάντησή σου είναι στην κορυφή του μηνύματος ηλεκτρονικού ταχυδρομείου** - δε μπορούμε να επεξεργαστούμε απαντήσες μέσα στις γραμμές. + email_reject_invalid_access: + title: "Απόρριψη ηλεκτρονικού μηνύματος μη έγκυρη πρόσβαση" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Μη έγκυρη πρόσβαση" + text_body_template: | + Λυπούμαστε, αλλά το ηλεκτρονικό μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Ο λογαριασμός σου δεν έχει το προνόμιο να δημοσιεύει καινούρια νήματα σε αυτή την κατηγορία. Εάν πιστεύεις ότι πρόκειται για σφάλμα, επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_strangers_not_allowed: + title: "Άγνωστοι απόρριψης ηλεκτρονικού μηνύματος δεν επιτρέπονται" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Μη έγκυρη πρόσβαση" + text_body_template: | + Λυπούμαστε, αλλά αυτό το ηλεκτρονικό μήνυμα προς %{destination} (με τίτλο %{former_title}) απέτυχε. + + Η κατηγορία που έστειλες το ηλεκτρονικό μήνυμα επιτρέπει απαντήσεις μόνο από χρήστες με έγκυρους λογαριασμούς και γνωστές διευθύνσεις ηλεκτρονικού ταχυδρομείου. Εάν πιστεύεις ότι πρόκειται για σφάλμα, επικοινώνησε με ένα μέλος του προσωπικού. + email_reject_invalid_post: + title: "Απόρριψη ηλεκτρονικού μηνύματος μη έγκυρη ανάρτηση" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Σφάλμα δημοσίευσης" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Μερικές πιθανές αιτίες είναι: περίπλοκη μορφοποίηση, πολύ μεγάλο μέγεθος μηνύματος, πολύ μικρό μέγεθος μηνύματος. Παραλούμε προσπαθήστε ξανά, ή αναρτήστε μέσω του ιστοτόπου αν το πρόβλημα συνεχίζεται. + email_reject_invalid_post_specified: + title: "Προσδιορισμός μη έγκυρης ανάρτησης για απόρριψη ηλεκτρονικού μηνύματος" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Σφάλμα ειδοποίησης" + text_body_template: | + υπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Αιτία: + + %{post_error} + + Αν μπορείς να διορθώσεις το πρόβλημα, παρακαλούμε προσπάθησε ξανά. + email_reject_invalid_post_action: + title: "Πράξη μη έγκυρης ανάρτησης για απόρριψη ηλεκτρονικού μηνύματος" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Μη έγκυρη δράση δημοσίευσης" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Η ενέργεια ανάρτησης δεν αναγνωρίστηκε. Παρακαλούμε προσπαθήστε ξανά, ή αναρτήστε μέσω του ιστοτόπου αν το πρόβλημα συνεχιζεται. + email_reject_reply_key: + title: "Κλειδί απάντησης για απόρριψη ηλεκτρονικού μηνύματος" + subject_template: "[%{site_name}] πρόβλημα ηλεκτρονικού μηνύματος -- Άγνωστο κλειδί απάντησης" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Το κλειδί απάντησης στο μήνυμα ηλεκτρονικού ταχυδρομείου δεν είναι έγκυρο ή είναι άγνωστο, οπότε δεν μπορούμε να καταλάβουμε σε τι αναφέρεται ως απάντηση αυτό το μήνυμα ηλεκτρονικού ταχυδρομείου. Επικοινώνησε με κάποιο συνεργάτη. + email_reject_bad_destination_address: + title: "Απόρριψη ηλεκτρονικού μηνύματος άκυρη διεύθυνση προορισμού" + subject_template: "[%{site_name}] πρόβλημα ηλεκτρονικού μηνύματος -- Αγνωστο σε: Διεύθυνση" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Καμία από τις διευθύνσεις ηλεκτρονικού ταχυδρομείου των παραληπτών δεν αναγνωρίστηκε. Παρακαλούμε σιγουρέψου ότι στέλνεις στην σωστή διεύθυνση ηλεκτρονικού ταχυδρομείου, η οποία παρέχεται από κάποιο συνεργάτη. + email_reject_topic_not_found: + title: "Απόρριψη ηλεκτρονικού μηνύματος Δε βρέθηκε το νήμα" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού ταχυδρομείου -- Το νήμα δε βρέθηκε" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Το νήμα στο οποίο απαντάς είναι δεν υπάρχει πλέον, ίσως να έχει διαγραφεί. Εάν πιστεύεις ότι πρόκειται για λάθος, επικοινώνησε με ένα συνεργάτη. + email_reject_topic_closed: + title: "Απόρριψη ηλεκτρονικού μηνύματος θέμα τελειωμένο" + subject_template: "[%{site_name}] Ζήτημα με την ηλεκτρονική διεύθυνση -- Το θέμα έκλεισε" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Το νήμα στο οποίο απαντάς είναι προσωρινά κλειστό και δε μπορεί πλέον δεχτεί απαντήσεις. Εάν πιστεύεις ότι πρόκειται για λάθος, επικοινώνησε με ένα συνεργάτη. + email_reject_auto_generated: + title: "Απόρριψη ηλεκτρονικού μηνύματος δημιουργήθηκε αυτόματα" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού μηνύματος -- Δημιουργία αυτόματης απάντησης" + text_body_template: | + Λυπούμαστε, αλλά το μήνυμα ηλεκτρονικού ταχυδρομείου σου προς %{destination} (titled %{former_title}) δεν εστάλη. + + Το μήνυμα ηλεκτρονικού ταχυδρομείου σου σημάνθηκε ως "αυτοδημιούργητο", το οποίο σημαίνει ότι δημιουργήθηκε αυτόματα από έναν υπολογιστή αντί να πληκτρολογηθεί από άνθρωπο. Δε μπορούμε να δεχτούμε τέτοιου είδους μηνύματα ηλεκτρονικού ταχυδρομείου. Εάν πιστεύεις ότι πρόκειται για λάθος, επικοινώνησε με ένα συνεργάτη. + email_error_notification: + title: "Ειδοποίηση σφάλματος ηλεκτρονικού ταχυδρομείου" + subject_template: "[%{site_name}] Θέμα ηλεκτρονικού μηνύματος -- POP λάθος πιστοποίησης" + text_body_template: | + Δυστυχώς υπήρξε ένα πρόβλημα πιστοποίησης κατά τη διάρκεια συγκέντρωσης μηνυμάτων από τον διακομιστή POP. + + Παρακαλούμε σιγουρευτείτε ότι έχετε τις σωστές ρυθμίσεις πιστοποιητικών POP στις [ρυθμίσεις ιστοτόπου](%{base_url}/admin/site_settings/category/email). + + Εάν υπάρχει διαδικτυακό περιβάλλον χρήστη για το λογαριασμό ηλεκτρονικού ταχυδρομείου POP, ίσως χρειάζεται να συνδεθείτε στο διαδίκτυο και να ελέγξετε τις ρυθμίσεις σας εκεί. + too_many_spam_flags: + title: "Πάρα πολλές επισημάνσεις ανεπιθύμητης αλληλογραφίας." + subject_template: "Καινούριος λογαριασμός σε αναμονή" + text_body_template: | + Γεια σου, + + Αυτό είναι αυτοματοποιημένο μήνυμα από %{site_name} για να σε ενημερώσει ότι οι αναρτήσεις σου έχουν αποκρυφθεί επειδή επισημάνθηκαν από την κοινότητα. + + Ως μέτρο προστασίας, ο νέος σου λογαριασμός έχει μπλοκαριστεί και δε μπορείς να δημιουργήσεις νέες απαντήσεις ή νήμαατα έως ότου ένα μέλος του προσωπικού μπορέσει να εξετάσει το λογαριασμό σου. Ζητούμε συγνώμη για την ταλαιπωρία. + + Για επιπλέον καθοδήγηση, παρακαλούμε ανάτρεξε στο [community guidelines](%{base_url}/guidelines). + too_many_tl3_flags: + title: "Πάρα πολλές επισημάνσεις ΕΕ3 " + subject_template: "Καινούριος λογαριασμός σε αναμονή" + text_body_template: | + Γεια σου, + + Αυτό είναι αυτοματοποιημένο μήνυμα από %{site_name} για να σε ενημερώσει ότι ο λογαριασμός σου έχει ανασταλλεί εξαιτίας του μεγάλου αριθμού επισημάνσεων της κοινότητας. + + Ως μέτρο προστασίας, ο νέος σου λογαριασμός έχει μπλοκαριστεί και δε μπορείς να δημιουργήσεις νέες απαντήσεις ή νήμαατα έως ότου ένα μέλος του προσωπικού μπορέσει να εξετάσει το λογαριασμό σου. Ζητούμε συγνώμη για την ταλαιπωρία. + + Για επιπλέον καθοδήγηση, παρακαλούμε ανάτρεξε στο [community guidelines](%{base_url}/guidelines). + blocked_by_staff: + title: "Μπλοκάρισμα από το προσωπικό" + subject_template: "Λογαριασμός προσωρινά σε αναμονή" + text_body_template: | + Γεια σου, + + Αυτό είναι αυτοματοποιημένο μήνυμα από %{site_name} για να σε ενημερώσει ότι ο λογαριασμός σου έχει προσωρινά ανασταλλεί ως μέτρο προστασίας. + + Παρακαλούμε συνέχισε την περιήγηση, αλλά δεν θα είσαι σε θέση να απαντήσεις ή να δημιουργήσεις νήματα έως ότου ένας [συνεργάτης](%{base_url}/about) αναθεωρήσει τις πιο πρόσφατες αναρτήσεις σου. Ζητούμε συγνώμη για την ταλαιπωρία. + + Για επιπλέον καθοδήγηση, ανάτρεξε στο [οδηγίες κοινότητας](%{base_url}/guidelines). + user_automatically_blocked: + title: "Ο χρήστης μπλοκαρίστηκε αυτόματα" + subject_template: "Νέος χρήστης %{username} αποκλείστηκε από της σημαίες της κοινότητας" + text_body_template: | + Αυτό είναι αυτοματοποιημένο μήνυμα. + + Ο νέος χρήστης [%{username}](%{user_url}) μπλοκαρίστηκε αυτόματα επειδή πολλαπλοί χρήστες επισήμαναν την ανάρτηση(σεις) του %{username}. + + Παρακαλούμε [αναθεώρησε τις επισημάνσεις](%{base_url}/admin/flags). Εάν ο χρήστης %{username} λανθασμένα μπλοκαρίστηκε από το να αναρτεί, πάτησε το κουμπί απεμπλοκής σε [σελίδα διαχείρισης γι' αυτό το χρήστη](%{user_url}). + + Αυτό το κατώφλι μπορεί να αλλαχθεί μέσω των ρυθμίσεων `block_new_user`. + spam_post_blocked: + title: "Μπλοκαρίστηκε ανεπιθύμητη δημοσίευση" + subject_template: "Του καινούριου χρήστη %{username} οι δημοσιεύσεις μπλοκαρίστηκαν εξαιτίας των επαναλαμβανόμενων συνδέσμων" + text_body_template: | + Αυτό είναι αυτοματοποιημένο μήνυμα. + + Ο νέος χρήστης [%{username}](%{user_url}) προσπάθησε να δημιουργήσει πολλαπλές αναρτήσεις με συνδέσμους σε %{domains}, όμως αυτές οι αναρτήσεις μπλοκαρίστηκαν για να αποφευχθεί ανεπιθύμητη αλληλογραφία. Ο χρήστης ακόμα μπορεί να δημιουργεί νέες αναρτήσεις που δεν περιέχουν συνδέσμους σε %{domains}. + + Παρακαλούμε [αναθεώρησε το χρήστη](%{user_url}). + + Μπορείς να το τροποποιήσεις μέσω των ρυθμίσεων ιστοτόπου newuser_spam_host_threshold` και `white_listed_spam_host_domains`. + unblocked: + title: "Αναιρέθηκε ο αποκλεισμός" + subject_template: "Λογαριασμός όχι πια σε αναμονή" + text_body_template: |+ + Γεια σου, + + αυτό είναι αυτοματοποιημένο μήνυμα από %{site_name} για να σε ενημερώσει ότι ο λογαριασμός σου δεν είναι πλέον σε αναστολή έπειτα από αναθεώρηση απο τους συνεργάτες. + + Μπορείς τώρα να δημιουργήσεις νέες απαντήσεις και νήματα ξανά. Ευχαριστούμε για την υπομονή σου. + + pending_users_reminder: + title: "Υπενθύμηση για χρήστες που εκκρεμούν" + subject_template: + one: "1 χρήστης περιμένει για έγκριση" + other: "%{count} χρήστες περιμένουν για έγκριση" + text_body_template: | + Υπάρχουν εγγραφές νέων χρηστών σε αναμονή έγκρισης (΄ή απόρριψης) πριν μπορέσουν να έχουν πρόσβαση σε αυτό το φόρουμ. + + [Παρακαλούμε αναθεωρήστε τις στην ενότητα διαχείρισης](%{base_url}/admin/users/list/pending). + download_remote_images_disabled: + title: "Η λήψη μακρινών εικόνων είναι απενεργοποιημένο" + subject_template: "Το κατέβασμα μακρινών φωτογραφιών είναι απενεργοποιημένο" + text_body_template: "Η ρύθμιση `download_remote_images_to_local` απενεργοποιήθηκε επειδή το όριο χώρου στο δίσκο του `download_remote_images_threshold` έχει ξεπεραστεί" + dashboard_problems: + title: "Προβλήματα πίνακα" + subject_template: "Προέκυψαν προβλήματα" + text_body_template: | + Μερικά προβλήματα αναφέρονται στον πίνακα του διαχειριστή σας. + + [Παρακαλώ επανεξετάστετα διορθώστετα](%{base_url}/admin). + unsubscribe_link: |+ + Για να απεγγραφείς από αυτά τα ηλεκτρονικά μηνύματα, [click here](%{unsubscribe_url}). + + unsubscribe_link_and_mail: |+ + Για να απεγγραφείς από αυτά τα ηλεκτρονικά μηνύματα, [click here](%{unsubscribe_url}). + + unsubscribe_mailing_list: | + Το λαμβάνεται αυτό γιατί έχεται ενεργοποιήσει την λειτουργία λίστας. + + Για διαγραφή απο αυτά, [κάντε κλικ εδώ](%{unsubscribe_url}). + subject_re: "Απ:" + subject_pm: "[ΠΜ]" + user_notifications: + previous_discussion: "Προηγούμενες απαντήσεις" + reached_limit: + one: "ΠΡΟΣΟΧΗ: φτάσατε το όριο των %{count} ημερήσιων emails. Επόμενες ειδοποιήσεις για emails θα καταστέλλονται." + other: "ΠΡΟΣΟΧΗ: φτάσατε το όριο των %{count} ημερήσιων emails. Επόμενες ειδοποιήσεις για emails θα καταστέλλονται." + in_reply_to: "Απάντηση σε" + unsubscribe: + title: "Απεγγραφή" + description: "Δεν ενδιαφέρεσαι να λαμβάνεις αυτά τα ηλεκτρονικά μηνύματα; Κάνε κλικ εδώ να απεγγραφείς στη στιγμή:" + reply_by_email: "[Visit Topic](%{base_url}%{url}) ή απάντησε σε αυτό το μήνυμα ηλεκτρονικού ταχυδρομείου για να αποκριθείς." + reply_by_email_pm: "[Visit Message](%{base_url}%{url}) ή απάντησε σε αυτό το μήνυμα ηλεκτρονικού ταχυδρομείου για να αποκριθείς." + only_reply_by_email: "Απαντήστε σε αυτό το email για απόκριση." + visit_link_to_respond: "[Visit Topic](%{base_url}%{url}) για να αποκριθείς." + visit_link_to_respond_pm: "[Visit Message](%{base_url}%{url}) για να αποκριθείς." + posted_by: "Δημοσιεύθηκε από %{username} στις %{post_date}" + invited_to_private_message_body: | + %{username} σας προσκάλεσε σε ένα μήνυμα + + > **%{topic_title}** + > + > %{topic_excerpt} + + στο + + > %{site_title} -- %{site_description} + invited_to_topic_body: | + %{username} σας προσκάλεσε σε μία συζήτηση + + > **%{topic_title}** + > + > %{topic_excerpt} + + στο + + > %{site_title} -- %{site_description} + user_invited_to_private_message_pm: + title: "Ο χρήστης προσκλήθηκε σε προσωπικό μήνυμα" + subject_template: "[%{site_name}] %{username} σε προσκάλεσε σε ένα μήνυμα '%{topic_title}'" + text_body_template: | + %{header_instructions} + + %{message} + + %{respond_instructions} + user_invited_to_private_message_pm_staged: + title: "Ο χρήστης προσκλήθηκε στο στάδιο προσωπικού μηνύματος" + subject_template: "[%{site_name}] %{username} σε προσκάλεσε σε ένα μήνυμα '%{topic_title}'" + text_body_template: |+ + %{header_instructions} + + %{message} + + %{respond_instructions} + + user_invited_to_topic: + title: "Ο χρήστης προσκλήθηκε στο νήμα" + subject_template: "[%{site_name}] &{username} σε προσκάλεσε στο '%{topic_title}'" + text_body_template: | + %{header_instructions} + + &{message} + + %{respond_instructions} + user_replied: + title: "Ο χρήστης απάντησε" + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_replied_pm: + title: "Ο χρήστης απάντησε σε προσωπικό μηνύμα" + subject_template: "[%{site_name}] [PM] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_quoted: + title: "Φράση χρήστη" + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_linked: + title: "Ο χρήστης συνδέθηκε" + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_mentioned: + title: "Ο χρήστης αναφέρθηκε" + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_group_mentioned: + title: "Αναφέρθηκε χρήστης ομάδας" + subject_template: "[%{site_name}] &{topic_title}" + text_body_template: | + &{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_posted: + title: "Ο χρήστης δημοσίευσε" + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: | + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + user_watching_first_post: + title: "Ο χρήστης παρακολουθεί την πρώτη δημοσίευση" + subject_template: "[%{site_name}] %{topic_title}" + text_body_template: |+ + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_posted_pm: + title: "Ο χρήστης δημοσίευσε προσωπικό μήνυμα" + subject_template: "[%{site_name}] [PM] %{topic_title}" + text_body_template: |+ + %{header_instructions} + + %{message} + + %{context} + + %{respond_instructions} + + user_posted_pm_staged: + title: "Ο χρήστης δημοσίευσε στο στάδιο προσωπικού μηνύματος" + subject_template: "%{optional_re}%{topic_title}" + text_body_template: |2 + + %{message} + digest: + why: "Μια σύντομη περίληψη του %{site_link} από την τελευταία σου επίσκεψη στο %{last_seen_at}" + since_last_visit: "Από την τελευταία σου επίσκεψη" + new_topics: "Νέα νήματα" + unread_messages: "Μη αναγνωσμένα μηνύματα" + unread_notifications: "Μη αναγνωσμένες ειδοποιήσεις" + liked_received: "\"Μου αρέσει\" που έλαβες" + new_posts: "Νέες δημοσιεύσεις" + new_users: "Νέοι χρήστες" + popular_topics: "Δημοφιλή νήματα" + follow_topic: "Ακολούθησε αυτό το νήμα" + join_the_discussion: "Διάβασε περισσότερα" + popular_posts: "Δημοφιλείς Δημοσιεύσεις" + more_new: "Νέο για εσένα" + subject_template: "[%{site_name}] Περίληψη" + unsubscribe: "Αυτή η περίληψη αποστέλλεται από %{site_link} όταν δεν σε έχουμε δεί για ένα χρονικό διάστημα. Για να σταματήσεις την εγγραφή %{unsubscribe_link}." + click_here: "κάνε κλικ εδώ" + from: "%{site_name} περίληψη" + preheader: "Μία σύντομη περίληψη από την τελευταία σου επίσκεψη στο %{last_seen_at}" + mailing_list: + why: "Όλες οι δραστηριότητες στο %{site_link} για %{date}" + subject_template: "[%{site_name}] Περίληψη για %{date}" + unsubscribe: "Αυτή η περίληψη στέλνεται καθημερινά εξαιτίας της ενεργοποίησης τηε λειτουργίας συμπερίληψης στη λίστα μηνυμάτων. Για να διαγραφείς %{unsubscribe_link}." + from: "%{site_name} περίληψη" + new_topics: "Καινούρια νήματα" + topic_updates: "Ενημερώσεις νήματος" + view_this_topic: "Δες αυτό το νήμα" + back_to_top: "Πίσω στην κορυφή" + forgot_password: + title: "Ξέχασα τον κωδικό πρόσβασης" + subject_template: "[%{site_name}] Επαναφορά κωδικού πρόσβασης" + text_body_template: |+ + Κάποιος ζήτησε να επαναφέρει τον κωδικό πρόσβασης σου στο [%{site_name}](%{base_url}). + + Εάν δεν ήσουν εσύ, μπορείς να αγνοήσεις αυτό το μήνυμα. + + Πάτησε τον ακόλουθο σύνδεσμο για να επιλέξεις νέο κωδικό: + %{base_url}/users/password-reset/%{email_token} + + + + set_password: + title: "Όρισε κωδικό πρόσβασης" + subject_template: "[%{site_name}] Όρισε κωδικό πρόσβασης" + text_body_template: |+ + Κάποιος ζήτησε να προσθέσει έναν κωδικό στον λογαριασμό σου στο [%{site_name}](%{base_url}). + Εναλλακτικά, μπορείς να συνδεθείς χρησιμοποιώντας μια υποστηρίσημη υπηρεσία απευθείας σύνδεσης. (Google, Facebook, etc) που να σχετίζεται με αυτήν την επικυρωμένη ηλεκτρονιή διεύθυνση. + + Εάν δεν έκανες εσύ το αίτημα, μπορείς να αγνοήσεις αυτό το μήνυμα. + + Πάτησε τον ακόλουθο σύνδεσμο για να επιλέξεις κωδικό: + %{base_url}/users/password-reset/%{email_token} + + admin_login: + title: "Σύνδεση Διαχειριστή" + subject_template: "[%{site_name}] Σύνδεση" + text_body_template: | + Κάποιος ζήτησε να συνδεθεί στο λογαριασμό σου στο [%{site_name}](%{base_url}). + + Εάν δεν έκανες εσύ αυτή την ενέργεια, μπορείς να αγνοήσεις αυτό το email με ασφάλεια. + + Πάτησε τον ακόλουθο σύνδεσμο για να συνδεθείς: + %{base_url}/users/admin-login/%{email_token} + account_created: + title: "Ο λογαριασμός δημιουργήθηκε" + subject_template: "[%{site_name}] Ο καινούριος σας λογαριασμός" + text_body_template: | + Ένας καινούριος λογαριασμός δημιουργήθηκε για εσένα στο %{site_name} + + Κάνε κλικ στον ακόλουθο σύνδεσμο να επιλέξεις κωδικό πρόσβασης για τον καινούριο σου λογαριασμό: + %{base_url}/users/password-reset/%{email_token} + confirm_new_email: + title: "Επιβεβαίωση Νέας Ηλεκτρονικής Διεύθυνσης" + subject_template: "[%{site_name}] Επιβεβαίωση της καινούριας διεύθυνσης ηλεκτρονικού ταχυδρομείου" + text_body_template: | + Επιβεβαίωσε την καινούρια διεύθυνση ηλεκτρονικού ταχυδρομείου για %{site_name} κάνοντας κλικ στον ακόλουθο σύνδεσμο: + + %{base_url}/users/authorize-email/%{email_token} + confirm_old_email: + title: "Επιβεβαίωση Παλιάς Ηλεκτρονικής Διεύθυνσης" + subject_template: "[%{site_name}] Επιβεβαίωσε την τωρινή ηλεκτρονική σου διεύθυνση." + text_body_template: | + Πριν μπορέσομε να αλλάξουμε την διεύθυνση ηλεκτρονικού ταχυδρομείου σου, χρειαζόμαστε επιβεβαίωση ότι ελέγχεις + την τωρινή διεύθυνση ηλεκτρονικού ταχυδρομείου. Μόλις ολοκληρώσεις αυτό το βήμα, θα σου επιτρέψουμε να επιβεβαιώσεις + τη νέα διεύθυνση ηλεκτρονικού ταχυδρομείου. + + Επιβεβαίωσε την τωρινή σου διεύθυνση ηλεκτρονικού ταχυδρομείου για το %{site_name} πατώντας στον ακόλουθο σύνδεσμο: + + %{base_url}/users/authorize-email/%{email_token} + notify_old_email: + title: "Ειδοποίηση παλιάς ηλεκτρονικής διεύθυνσης" + subject_template: "[%{site_name}] Η διεύθυνση ηλεκτρονικού ταχυδρομείου έχει αλλάξει" + text_body_template: | + Αυτό είναι αυτοματοποιημένο μήνυμα για να σε ενημερώσει ότι η διεύθυνση ηλεκτρονικού ταχυδρομείου σου για το + %{site_name} έχει αλλάξει. Εάν αυτό έγινε καταλάθος, παρακαλούμε επικοινώνησε + + με ένα διαχειριστή ιστοτόπου + + Η διεύθυνση ηλεκτρονικού ταχυδρομείου σου έχει αλλάξει σε: + + %{new_email} + signup_after_approval: + title: "Εγγραφή μετά την έγκριση " + subject_template: "Έχετε εγκριθεί στο %{site_name}!" + text_body_template: | + Καλώς ήρθες στο %{site_name}! + + Ένα μέλος του προσωπικού ενέκρινε το λογαριασμό σου στο %{site_name}. + + Πάτησε τον ακόλουθο σύνδεσμο για να επιβεβαιώσεις και να ενεργοποιήσεις το νέο σου λογαριασμό: + %{base_url}/users/activate-account/%{email_token} + + Εάν δεν μπορείς να πατήσεις τον παραπάνω σύνδεσμο, δοκίμασε αντιγραφή κι επικόλλησή του στην μπάρα διευθύνσεων του περιηγητή σου. + + %{new_user_tips} + + Πιστεύουμε στην [civilized community behavior](%{base_url}/guidelines) πάντα. + + Απόλαυσε την παραμονή σου! + + (Αν χρειαστεί να επικοινωνήσεις με [staff members](%{base_url}/about) ως νέος χρήστης, απλώς απάντησε σε αυτό το μήνυμα.) + signup: + title: "Εγγραφή" + subject_template: "[%{site_name}] Επιβεβαιώστε το νέο σας λογαριασμό" + text_body_template: | + Καλώς ήρθες στο %{site_name}! + + Πάτησε τον ακόλουθο σύνδεσμο για να ςπιβεβιώσεις και να ενεργοποιήσεις το νέο σου λογαριασμό: + %{base_url}/users/activate-account/%{email_token} + + Εάν δεν μπορείς να πατήσεις τον παραπάνω σύνδεσμο, δοκίμασε αντιγραφή κι επικόλληση στην μπάρα διευθύνσεων του περιηγητή σου. + page_not_found: + title: "Ουπς! Αυτή η σελίδα δεν υπάρχει ή είναι ιδιωτική." + popular_topics: "Δημοφιλή" + recent_topics: "Πρόσφατα" + see_more: "Περισσότερα" + search_title: "Κάνε αναζήτηση αυτής της ιστοσελίδας" + search_google: "Google" + login_required: + welcome_message: |+ + #[Welcome to %{title}](#welcome) + Απαιτείται λογαριασμός. Παρακαλούμε Δημιουργήστε έναν λογαριασμό ή συνδεθείτε για να συνεχίσετε. + + terms_of_service: + title: "Όροι χρήσης της Υπηρεσίας" + signup_form_message: 'Έχω διαβάσει και αποδέχομαι τους Όροι Υπηρεσίας.' + deleted: 'διαγράφηκε' + upload: + edit_reason: "Λήψη τοπικά αντίγραφα των εικόνων" + unauthorized: "Λυπούμαστε, τα αρχεία που προσπαθείτε να ανεβάσετε δεν είναι εγκεκριμένα (authorized extensions: %{authorized_extensions})." + pasted_image_filename: "Επικολλημένη εικόνα" + store_failure: "Απέτυχε το ανέβσμα αποθηκευμένων #%{upload_id} για το χρήστη #%{user_id}." + file_missing: "Λυπούμαστε, πρέπει να παρέχετε ένα φάκελο για τη μεταφόρτωση." + attachments: + too_large: "Λυπούμαστε, το αρχείο που προσπαθείτε να ανεβάσετε είναι πάρα πολύ μεγάλο (μέγιστο μέγεθος είναι % {max_size_kb} KB)." + images: + too_large: "Λυπούμαστε, το φορτίο της εικόνας που προσπαθείτε να ανεβάσετε είναι πάρα πολύ μεγάλο (μέγιστο μέγεθος είναι % {max_size_kb} KB),\nΠαρακαλούμε να αλλάξετε το μέγεθός της και προσπαθήστε ξανά" + larger_than_x_megapixels: "Λυπούμαστε, η εικόνα που προσπαθείς να μεταφορτώσεις είναι πολύ μεγάλη (το μέγιστο μέγεθος είναι %{max_image_megapixels}-megapixels), παρακαλώ άλλαξε το μέγεθος και προσπάθησε ξανά." + size_not_found: "Λυπούμαστε, αλλά δεν μπορούμε να καθορίσουμε το μέγεθοσ της εικόνας.Ίσως η εικόνα σας είναι μη έγκυρη;" + avatar: + missing: "Δυστυχώς, δεν μπορούμε να βρούμε οποιaδήποτε προσωποποίηση που να συνδέεται με τη συγκεκριμένη διεύθυνση ηλεκτρονικού ταχυδρομείου. Μπορείτε να δοκιμάσετε την ανεβάσετε ξανά;" + flag_reason: + sockpuppet: "Ένας νέος χρήστης δημιούργησε ένα νήμα, και ένας άλλος νέος χρήσης με την ίδια διεύθυνση IP (%{ip_address}) απάντησε. Δες τις ρυθμίσεις ιστοτόπου `flag_sockpuppets`." + spam_hosts: "Αυτός ο νέος χρήστης προσπάθησε να δημιουργήσει πολλαπλές αναρτήσεις με συνδέσμους στο ίδιο τομέα (%{domain}). Δες τις ρυθμίσεις ιστοτόπου `newuser_spam_host_threshold`." + email_log: + post_user_deleted: "Ο χρήστης της δημοσίευσης έχει διαγραφεί" + no_user: "Δεν μπορεί να βρεθει χρήστης με τη συγκεκριμένη διεύθυνση ηλεκτρονικού ταχυδρομείου %{user_id}" + anonymous_user: "Ο χρήστης είναι ανώνυμος" + suspended_not_pm: "Ο Χρήστης έχει ανασταλεί, δεν είναι μήνυμα" + seen_recently: "Ο χρήστης εμφανίστηκε πρόσφατα" + post_not_found: "Δεν μπορεί να βρει δημοσίευμα με αναγνωριστικό % {post_id}" + notification_already_read: "Η ειδοποίηση αυτού του ηλεκτρονικού μηνύματος έχει ήδη διαβαστεί" + topic_nil: "post.topic είναι κενό" + post_deleted: "η ανάρτηση διαγράφηκε από τον συγγραφέα" + user_suspended: "Ο χρήστης είχε ανασταλεί" + already_read: "ο χρήστης έχει ήδη διαβάσει τη δημοσίευση" + exceeded_emails_limit: "Υπέρβαση max_emails_per_day_per_user" + exceeded_bounces_limit: "Υπέρβαση bounce_score_threshold" + message_blank: "το μήνυμα είναι κενό" + message_to_blank: "μήνυμα .είναι κενό" + text_part_body_blank: "ext_part.body είναι κενό" + body_blank: "το σώμα είναι κενό" + no_echo_mailing_list_mode: "Ειδοποιήσεις λίστας ηλεκτρονικού ταχυδρομείου απενεργοποιημένες για τις αναρτήσεις του ίδιου του χρήστη." + color_schemes: + base_theme_name: "Βάση" + about: "Σχετικά" + guidelines: "Οδηγίες" + privacy: "Ιδιωτικότητα" + edit_this_page: "Επεξεργασία αυτής της σελίδας" + csv_export: + boolean_yes: "Ναι " + boolean_no: "Όχι" + static_topic_first_reply: |+ + Επεξεργασία της πρώτης δημοσίευσης σε αυτό το νήμα για να αλλάξεις τα περιεχόμενα της %{page_name} σελίδας. + + guidelines_topic: + title: "Συχνές Ερωτήσεις/Οδηγίες" + body: | + + + ## [Αυτό είναι ένα πολιτισμένο μέρος για συζήτηση](#civilized) + + Παρακαλούμε σεβαστείτε αυτό το φόρουμ συζήτησης με τον ίδιο τρόπο όπως σέβεστε ένα δημόσιο πάρκο. Όπως και αυτό, έτσι κι εμείς είμαστε κοινός πόρος της κοινότητας &mdash, ένα μέρος για να μοιραστείς δεξιότητες, γνώσεις και ενδιαφέροντα μέσω εξωστρεφών συζητήσεων. + + Αυτοί δεν είναι σκληροί και γρήγοροι κανόνες, κυρίως βοηθήματα για την ανθρώπινη κρίση της κοινότητάς μας. Χρησιμοποίησε αυτές τις οδηγίες για να κρατήσεις καθαρό και φωτεινό αυτό το μέρος για πολιτισμένη δημόσια ομιλία. + + + + ## [Βελτίωσε τη συζήτηση](#improve) + + Βοήθησέ μας να κάνουμε αυτό το μέρος θαυμάσιο για συζήτηση με τη διαρκή προσπάθεια να βελτιώσεις τη συζήτηση με κάποιο τρόπο, όσο μικρός κι αν είναι. Αν δεν είσαι σίγουρος ότι η ανάρτησή σου προσθέτει κάτι στη συζήτηση, σκέψου ξανά τι θέλεις να πεις και προσπάθησε ξανά αργότερα. + + Τα νήματα που συζητούνται εδώ έχουν σημασία για εμάς και θέλουμε να πράττεις σαν να έχουν και για σένα σημασία. Να σέβεσαι τα νήματα και τους ανθρώπους που τα συζητούν, ακόμη κι αν διαφωνείς με μερικά από αυτά που λέγονται. + + Ένας τρόπος να βελτιώσεις τη συζήτηση είναι με το να ανακαλύπτεις αυτές που ήδη υπάρχουν Παρακαλούμε αφιέρωσε λίγο χρόνο να περιηγηθείς στα νήματα εδώ πριν απαντήσεις ή ξεκινήσεις το δικό σου νήμα και θα έχεις καλύτερη πιθανότητα να συναντήσεις άλλους που μοιράζονται τα ενδιαφέροντα σου. + + + + ## [Να είσαι ευχάριστος, ακόμη κι όταν διαφωνείς](#agreeable) + + Ίσως θέλεις να απαντήσεις σε κάτι διαφωνώντας με αυτό. Πολύ καλά. Αλλά να θυμάσαι _ να κρίνεις ιδέες, όχι ανθρώπους_. Παρακαλούμε απόφυγε: + + * Κλήση με όνομα. + * Επιθέσεις ενάντια στο άτομο. + * Να απαντάς στον τόνο της ανάρτησης αντί για το πραγματικό περιεχόμενό του. + * Σπασμωδική αντίφαση. + + Αντί για αυτά, πρόσφερε αιτιολογημένα αντι-επιχειρήματα που βελτιώνουν τη συζήτηση. + + + + ## [Η συμμετοχή σου μετράει](#participate) + + Οι συζητήσεις που έχουμε εδώ θέτουν τον τόνο για όλους. Βοήθησέ μας να επηρεάσουμε το μέλλον αυτής της κοινότητας επιλέγοντας να συμμετέχεις σε συζητήσεις που κάνουν αυτό το φόρουμ ένα ενδιαφέρον μέρος να είναι κανείς — και αποφεύγοντας αυτές που δεν το κάνουν. + + Το Discourse παρέχει εργαλεία που δίνουν τη δυνατότητα στην κοινότητα να εντοπίζει συλλογικά τις καλύτερες (και τις χειρότερες) συνεισφορές: αγαπημένα, σελιδοδείκτες, μου αρέσει, επισημάνσεις, απαντήσεις, επεξεργασίες, και ούτω καθ’ εξής. Χρησιμοποίησε αυτά τα εργαλεία για να βελτιώσεις τη δική σου εμπειρία, όπως και όλων των άλλων. + + Ας προσπαθήσουμε να αφήσουμε το πάρκο μας καλύτερο απ’ ότι το βρήκαμε. + + + + ## [Αν βρεις κάποιο πρόβλημα, επισήμανέ το](#flag-problems) + + Οι συντονιστές έχουν ειδική εξουσία. Είναι υπεύθυνοι γι’ αυτό το φόρουμ. Είσαι όμως κι εσύ υπεύθυνος. Με τη βοήθειά σου, οι συντονιστές μπορούν να διευκολύνουν την κοινότητα, όχι απλά να αστυνομεύουν ή να επιστατούν. + + Όταν δεις κακή συμπεριφορά, μην απαντήσεις. Ενθαρρύνεις την κακή συμπεριφορά όταν την αναγνωρίζεις, σπαταλάς την ενέργειά σου και το χρόνο όλων. _Απλά επισήμανέ την_. Αν μαζευτούν πολλές επισημάνσεις, θα παρθούν μέτρα, είτε αυτόματα είτε με παρέμβαση συντονιστή. + + Για να διατηρήσουμε την κοινότητά μας, οι συντονιστές διατηρούν το δικαίωμα να αφαιρέσουν οποιοδήποτε περιεχόμενο και οποιοδήποτε λογαριασμό χρήστη για οποιοδήποτε λόγο, οποιαδήποτε στιγμή. Οι συντονιστές δεν κάνουν προεπισκόπηση νέων αναρτήσεων με κανένα τρόπο, οι συντονιστές και οι λειτουργοί ιστοτόπου δεν φέρουν καμία ευθύνη για οποιοδήποτε περιεχόμενο έχει αναρτηθεί από την κοινότητα. + + + + ## [Πάντα να είσαι ευγενικός](#be-civil) + + Τίποτα δεν σαμποτάρει μια υγιή συζήτηση όπως η αγένεια: + + * Να είσαι ευγενικός. Μην αναρτείς οτιδήποτε ένας λογικός άνθρωπος θα θεωρούσε προσβλητικό, καταχρηστικό ή εχθρικό λόγο. + * Κράτα τη συζήτηση καθαρή. Μην αναρτείς τίποτα άσεμνο ή σαφώς σεξουαλικό. + * Να σέβεστε ο ένας τον άλλο. Μην παρενοχλείτε ή θλίβετε κανέναν, μην πλαστοπροσωπείτε ανθρώπους, ή εκθέτετε ιδιωτικές πληροφορίες τους. + * Να σέβεσαι το φόρουμ μας. Μην αναρτείς ανεπιθύμητη αλληλογραφία και μην βανδαλίζεις με οποιοδήποτε άλλο τρόπο το φόρουμ. + + Αυτοί δεν είναι συγκεκριμένοι όροι με ακριβείς ορισμούς — απόφυγε ακόμη και την _εμφάνιση_ οποιουδήποτε από αυτά τα πράγματα. Αν δεν είσαι σίγουρος, ρώτησε τον εαυτό σου πως θα ένιωθες αν η ανάρτησή σου εμφανιζόταν στο εξώφυλλο των New York Times. + + Αυτό είναι σημόσιο φόρουμ, και οι μηχανές αναζήτησης κατατάσσουν αυτές τις συζητήσεις. Διατήρησε τη γλώσσα, τους συνδέσμους και τις εικόνες ασφαλείς για οικογένεια και φίλους. + + + + ## [Κράτα το τακτοποιημένο](#keep-tidy) + + Προσπάθησε να βάζεις τα πράγματα στο σωστό σημείο, έτσι ώστε να ξοδεύουμε περισσότερο χρόνο συζητώντας και λιγότερο ξεκαθαρίζοντας. Οπότε: + + * Μην ξεκινάς ένα νήμα σε λανθασμένη κατηγορία. + * Μην αναρτείς επαναλαμβανόμενα το ίδιο πράγμα σε πολλαπλά νήματα. + * Μην αναρτείς απαντησεις χωρίς περιεχόμενο. + * Μην εκτρέπεις ένα νήμα αλλάζοντάς το στη μέση της συζήτησης. + * Μην υπογράφεις τις αναρτήσεις σου — κάθε ανάρτηση έχει συνδεδεμένες τις πληροφορίες του προφίλ σου. + + Αντί να αναρτείς “+1” or “Συμφωνώ”, χρησιμοποίησε το κουμπί Μου αρέσει. Αντί να στρέφεις ένα υπάρχον νήμα σε τελείως διαφορετική κατεύθυνση, χρησιμοποίησε την Απάντηση ως συνδεδεμένο νήμα. + + + + ## [Να αναρτείς μόνο δικά σου πράγματα](#stealing) + + Μην αναρτείς τίποτα ψηφιακό που ανήκει σε κάποιον άλλο χωρίς την άδεια του. Μην αναρτείς περιγραφές, συνδέσμους ή μεθόδους κλοπής πνευματικής ιδιοκτησίας κάποιου (λογισμικό, βίντεο, ήχος, εικόνες), ή παραβίασης άλλου νόμου. + + + + ## [Συμβαίνει εξαιτίας σου](#power) + + Αυτός ο ιστότοπος λειτουργεί από τους [φιλικούς τοπικούς συνεργάτες](/about) και *εσένα*, την κοινότητα. Αν έχεις επιπλέον ερωτήσεις για το πώς θα πρέπει να λειτουργούν τα πράγματα εδώ, άνοιξε νέο νήμα [κατηγορία ανατροφοδότησης ιστοτόπου](/c/site-feedback) και ας συζητήσουμε! Αν υπάρχει κρίσιμο ή επείγον ζήτημα το οποίο δεν μπορεί να χειριστεί ένα μετα νήμα ή η επισήμανση, επικοινώνησε μαζί μας μέσω της [σελίδα συνεργατών](/about). + + + + ## [Οροι χρήσης](#tos) + + Ναι, η νομική ορολογία είναι βαρετή, αλλά πρέπει να προστατεύσουμε τους εαυτούς μας – και κατ’ επέκταση εσάς και τα δεδομένα σας – έναντι εχθρικών ανθρώπων. Έχουμε [Όρους Χρήσης](/tos) που περιγράφουν την δική σου (και την δική μας) συμπεριφορά και δικαιώματα σχετικά με το περιεχόμενο, την ιδιωτικότητα και τους νόμους. Για να χρησιμοποιήσεις αυτή την υπηρεσία, πρέπει να συμφωνήσεις να συμμορφώνεσαι με τους [ΟΧ](/tos). + tos_topic: + title: "Όροι χρήσης της Υπηρεσίας" + body: |+ + Οι ακόλουθοι όροι και προϋποθέσεις διέπουν την χρήση του %{company_domain} ιστότοπου και όλου του περιεχομένου, υπηρεσιών και προϊόντων που διατίθενται στον ή από τον ιστότοπο, συμπεριλαμβανομένων αλλά μη περιοριζομένων, και των %{company_domain} Λογισμικό Φόρουμ, %{company_domain} Φόρουμ Υποστήριξης και %{company_domain} Υπηρεσία Φιλοξενίας (‘’Φιλοξενια’’), (λαμβανόμενα μαζί, ο ιστότοπος). Ο ιστότοπος ανήκει και λειτουργεί από την %{company_full_name} ("%{company_name}"). Ο ιστότοπος προσφέρεται υπό την προυπόθεση της εκ μέρους σας αποδοχής, χωρίς τροποποίηση όλων των όρων και συνθηκών που περιλαμβάνονται στο παρόν κείμενο και όλους τους άλλους κανόνες λειτουργείας, πολιτικές (περιλαμβανομένων, χωρίς περιορισμό, %{company_domain}’s [Πολιτική προστασίας προσωπικών δεδομένων](/προστασία προσωπικών δεδομένων) και [Κατευθυντήριες Οδηγίες Κοινότητας](Συχνές Ερωτήσεις)) και διαδικασίες που μπορεί να δημοσιευθούν από καιρού εις καιρών σε αυτό τον ιστότοπο από την %{company_name} (Συνοπτικά, το ‘’Συμφωνητικό’’). + + Παρακαλώ διαβάστε αυτό το Συμφωνητικό προσεκτικά πριν την πρόσβαση ή την χρήση του ιστότοπου. Με την πρόσβαση ή την χρήση οποιουδήποτε μέρους του ιστότοπου, συφωνείτε να δεσμευτείτε από τους όρους και τις προϋποθέσεις αυτού του Συμφωνητικού. Αν δεν συμφωνείτε με όλους τους όρους και τις προϋποθέσεις του Συμφωνητικού, τότε δεν μπορείτε να έχετε πρόσβαση στον ιστότοπο ή να χρησιμοποιήσετε οποιαδήποτε από τις υπηρεσίες. Εαν αυτοί οι όροι και οι προϋποθέσεις θεωρούνται ως προσφορά από την %{company_name}, η αποδοχή περιορίζεται ρητά σε αυτούς τους όρους. Ο ιστότοπος είναι διαθέσιμος μόνο σε άτομα που είναι τουλάχιστον 13 ετών. + + + + ## [1. Ο %{company_domain} Λογαριασμός σας](#1) + + + Αν δημιουργήσετε λογαριασμό στον ιστότοπο, είστε υπεύθυνοι για την τήρηση της ασφάλειας του λογαριασμού σας και έχετε πλήρη ευθύνη για όλες τις ενέργειες που θα πραγματοποιηθούν μέσω του λογαριασμού. Πρέπει να ειδοποιήσετε αμέσως την %{company_name} για την οποιαδήποτε μη εξουσιοδοτημένη χρήση του λογαριασμού σας ή οποιαδήποτε άλλη παραβίαση της ασφάλειας του. Η %{company_name} δεν φέρει ευθύνη για οποιεσδήποτε πράξεις ή παραλείψεις από εσάς, συμπεριλαμβανομένων των οποιουδήποτε είδους ζημιών που προκλήθηκαν ως αποτέλεσμα αυτών των πράξεων ή παραλείψεων. + + + + ## [2. Ευθύνη των Συνεισφερόντων](#2) + + + Αν αναρτήσετε υλικό στον ιστότοπο, αναρτήσετε συνδέσμους στον ιστότοπο, ή με άλλον τρόπο καταστήσετε (ή επιτρέψετε σε κάποιον τρίτον να καταστήσει) υλικό διαθέσιμο μέσω του ιστότοπου (οποιοδήποτε τέτοιο υλικό, ‘Περιεχόμενο’), είστε αποκλειστικά υπεύθυνοι για το περιεχόμενο και οποιαδήποτε βλάβη προκληθεί από το περιεχόμενο αυτό. Αυτό ισχύει ανεξάρτητα από το αν το εν λόγω περιεχόμενο αποτελείται απο κείμενο, γραφικά, αρχείο ήχου, ή λογισμικό για ηλεκτρονικούς υπολογιστές. Καθιστόντας περιεχόμενο διαθέσιμο, εκπροσωπείτε και εγγυάστε οτι: + + * η λήψη, αντιγραφή και χρήση του Περιεχομένου δεν παραβιάζει τα δικαιώματα ιδιοκτησίας, περιλαμβανομένων αλλά μη περιοριζομένων στα πνευματικά δικαιώματα, ευρεσιτεχνίες, σήματα κατατεθέντα ή δικαιώματα εμπορικών μυστικών, κανενός τρίτου· + + * αν ο εργοδότης έχει δικαιώματα στην πνευματική ιδιοκτησία που παράγετε, τότε είτε (1) έχετε λάβει άδεια από τον εργοδότη σας να αναρτάτε ή να διαθέτετε το Περιεχόμενο, περιλαμβανομένου αλλά μη περιοριζομένου οποιουδήποτε λογισμικού, ή (2) έχετε εξασφαλίσει από τον εργοδότη σας μια παραίτηση όσον αφορά τα πνευματικά δικαιώματα σχετικά με το Περιεχόμενο· + + * έχετε πλήρως συμμορφωθεί με τις άδειες τρίτων σχετικά με το Περιεχόμενο, και έχετε όλες τις αναγκαίες ενέργειες για να ενημερώσετε τους τελικούς χρήστες για οποιουσδήποτε απαιτούμενους όρους· + + * το Περιεχόμενο δεν περιέχει ή εγκαθιστά ιούς, και πάσης φύσεως κακόβουλο λογισμικό ή άλλο επιβλαβές ή καταστροφικό περιεχόμενο· + + * το Περιεχόμενο δεν είναι ανεπιθύμητη αλληλογραφία, δεν παράγεται από μηχανή ή τυχαία διαδικασία, και δεν περιλαμβάνει ανήθικο ή ανεπιθύμητο εμπορικό περιεχόμενο σχεδιασμένο να καθοδηγεί κίνηση προς ιστότοπους τρίτων ή να βελτιώνει τις κατατάξεις ιστότοπων τρίτων σε μηχανές αναζήτησης ή σε περαιτέρω παράνομες πράξεις (όπως η κακόβουλη εκμαίευση μυστικών πληροφοριών (‘ψάρεμα’)) ή να παραπλανήσει αποδέκτες σχετικά με την πηγή του υλικού (όπως η παράνομη παραποίηση της ηλεκτρονικής διεύθυνσης προέλευσης)· + + * το Περιεχόμενο δεν είναι πορνογραφικό, δεν περιέχει απειλές ή προκαλεί βία και δεν παραβιάζει τα προσωπικά δεδομένα ή δικαιώματα δημοσιότητας τρίτων· + + * το Περιεχόμενο δεν διαφημίζεται μέσω ανεπιθύμητων ηλεκτρονικών μηνυμάτων, όπως σύνδεσμοι σε ανεπιθύμητη αλληλογραφία ευρισκόμενους σε ομάδες συζήτησης, καταλόγους διευθύνσεων ηλεκτρονικού ταχυδρομείου, ιστολόγια και ιστότοπους, καθώς και παρεμφερείς απρόσκλητες προωθητικές μεθόδους· + + * το περιεχόμενο σας δεν έχει όνομα που να παραπλανεί τους αναγνώστες στο να πιστεύουν οτι είστε ένα άλλο πρόσωπο ή εταιρεία· και + + * έχετε, στην περίπτωση περιεχομένου που περιλαμβάνει κώδικα προγραμματισμού ηλεκτρονικών υπολογιστών, επακριβώς κατηγοριοποιήσει ή/και περιγράψει τον τύπο, την φύση, τις χρήσεις και τα αποτελέσματα των υλικών, είτε αυτό απαιτείται να γίνει από την %{company_name} ή από κάποιον άλλον. + + + + ## [3. Άδεια Περιεχομένου του Χρήστη](#3) + + Οι συνεισφορές των χρηστών αδειοδοτούνται υπό το καθεστώς του [Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License](http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_US). Χωρίς να περιορίζονται καμία από αυτές τις αντιπροσωπεύσεις ή εγγυήσεις, η %{company_name} έχει το δικαίωμα (αλλά όχι την υποχρέωση), κατά την αποκλειστική διακριτική ευχέρεια της %{company_name} να (i) αρνηθεί ή αφαιρέσει οποιοδήποτε περιεχόμενο που, κατά την λογική άποψη της %{company_name}, παραβιάζει οποιαδήποτε πολιτική της %{company_name} ή είναι κατά οιονδήποτε τρόπο επιβλαβές ή ανάρμοστο, ή (ii) να τερματίσει ή να αρνηθεί την πρόσβαση και τη χρήση του Ιστότοπου σε οποιοδήποτε άτομο ή οντότητα για οποιονδήποτε λόγο, κατά την απόλυτη διακριτική ευχέρεια της %{company_name}. Η %{company_name} δεν θα έχει υποχρέωση να επιστρέψει οποιαδήποτε χρηματικά ποσά έχουν ήδη πληρωθεί. + + + + ## [4. Πληρωμή και Ανανέωση](#4) + + ### Γενικοί Όροι + + Προαιρετικές υπηρεσίες ή αναβαθμίσεις επί πληρωμής μπορεί να είναι διαθέσιμες στον ιστότοπο. Όταν χρησιμοποιείται μία υπηρεσία ή αναβάθμιση επί πληρωμής, συμφωνείτε να πληρώσετε την %{company_name} τα μηνιαία ή ετήσια συνδρομητικά τέλη που υποδεικνύονται. Οι πληρωμές θα πραγματοποιούνται την ημέρα που θα αρχίσετε να χρησιμοποιείτε την υπηρεσία ή την αναβάθμιση και θα καλύπτουν την χρήση αυτής της υπηρεσίας ή της αναβάθμισης για την μηνιαία ή την ετήσια συνδρομητική περίοδο όπως υποδεικνύεται. Αυτές οι χρεώσεις είναι μη επιστρεφόμενες. + + ### Αυτόματη Ανανέωση + + Εκτώς και αν ειδοποιήσετε την %{company_name} πριν το τέλος της ισχύουσας συνδρομητικής περιόδου οτι θέλετε να ακυρώσετε μία υπηρεσία ή μία αναβάθμιση, η συνδρομή σας θα ανανεωθεί αυτόματα και μας εξουσιοδοτείτε να εισπράξουμε τα τότε ισχύοντα ετήσια ή μηνιαία συνδρομητικά τέλη (καθώς και οποιουσδήποτε φόρους) χρησιμοποιόντας οποιαδήποτε πιστωτική κάρτα ή άλλο τρόπο πληρωμής που έχουμε καταγεγραμμένη από εσάς. Οι συνδρομές μπορούν να ακυρωθούν οποιαδήποτε στιγμή. + + + + ## [5. Υπηρεσίες](#5) + + ### Φιλοξενία, Υπηρεσίες Υποστήριξης + + Προαιρετική φιλοξενία και υπηρεσίες Υποστήριξης μπορεί να προμηθευτούν από την %{company_name} υπό τους όρους και τις προϋποθέσεις της κάθε τέτοιας υπηρεσίας. Με την εγγραφή σας για έναν λογαριασμό Φιλοξενίας/Υποστήριξης ή λογαριασμό υπηρεσιών Υποστήριξης, συμφωνείτε να συμμορφωθείτε με τέτοιους όρους και προϋποθέσεις. + + + + ## [6. Ευθήνη των Επισκεπτών του Ιστότοπου](#6) + + + Η %{company_name} δεν έχει ελέγξει, και δεν μπορεί να ελέγξει, όλο το υλικό, περιλαμβανομένων των λογισμικών υπολογιστών, που αναρτώνται στον Ιστότοπο, και επομένως δεν μπορεί να είναι υπεύθυνη για τα περιεχόμενα, την χρήση και τις επιδράσεις αυτού του υλικού. Η λειτουργεία του Ιστότοπου από την %{company_name}, δεν αντιπροσωπεύει ή συνεπάγεται οτι εγκρίνει το υλικό που έχει αναρτηθεί στον Ιστότοπο, ή οτι πιστεύει πως το υλικό είναι σωστό, χρήσιμο ή μη επιβλαβές. Είστε υπεύθυνος να λάβετε τις απαραίτητες προφυλάξεις για να προστατεύσετε τον εαυτό σας και τον υπολογιστή σας από ιούς, κακόβουλα λογισμικά και άλλα επιβλαβή ή καταστροφικά περιεχόμενα. Ο Ιστότοπος μπορεί να περιέχει περιεχόμενα που να είναι προσβλητικά, απρεπή ή αλλιώς μη αποδεκτά, καθώς και περιεχόμενο που εμπεριέχει θεωρητικές ανακρίβειες, τυπογραφικά λάθη και άλλα σφάλματα. Ο Ιστότοπος μπορεί επίσης να περιέχει υλικό που παραβιάζει τα δικαιώματα προστασίας προσωπικών δεδομένων ή τα δικαιώματα δημοσιότητας, ή καταπατά την πνευματική ιδιοκτησία και άλλα δικαιώματα ιδιοκτησίας τρίτων, ή των οποίων η λήψη, η αντιγραφή ή η χρήση υπόκειται σε επιπλέον όρους και προϋποθέσεις, καθορισμένους ή μη καθορισμένους. Η %{company_name} αποποιείται οποιαδήποτε ευθύνη για όποια τυχόν βλάβη προκληθεί από την χρήση του Ιστότοπου από τους επισκέπτες του, ή από την όποιαδήποτε λήψη περιεχομένου από τους επισκέπτες του Ιστότοπου που αναρτήθηκε σε αυτο. + + + + ## [7. Περιεχόμενο που Άναρτήθηκε σε Άλλους Ιστότοπους](#7) + + Δεν έχουμε ελέγξει, και δεν μπορούμε να ελέγξουμε, όλο το υλικό, περιλαμβανομένων των λογισμικών υπολογιστών, διαθέσιμο μέσα από τους ιστότοπους και τις ιστοσελίδες που συνδέονται με την %{company_domain}. Η %{company_name} δεν ελέγχει τους ιστότοπους και τις ιστοσελίδες που δεν ανήκουν στην %{company_name} και δεν είναι υπεύθυνη για τα περιεχόμενα τους ή την χρήση τους. Η ύπαρξη συνδέσμων μεταξύ της %{company_name} και των ιστότοπων ή των ιστοσελίδων που δεν ανήκουν στην %{company_name}, δεν αντιπροσωπεύει ή συνεπάγεται οτι η %{company_name} εγκρίνει αυτούς τους ιστότοπους ή ιστοσελίδες. Είστε υπεύθυνοι να λάβετε τις απαραίτητες προφυλάξεις για να προστατεύσετε τον εαυτό σας και τον υπολογιστή σας από ιούς, κακόβουλα λογισμικά και άλλα επιβλαβή ή καταστροφικά περιεχόμενα. Η %{company_name} αποποιείται οποιαδήποτε ευθύνη για όποια ζημιά προκληθεί από την χρήση ιστότοπων και ιστοσελίδων που δεν ανήκουν στην %{company_name}. + + + + + ## [8. Καταπάτηση Πνευματικής Ιδιοκτησίας και η Πολιτική DMCA](#8) + + + Όπως η %{company_name} ζητά από τους άλλους να σεβαστούν τα δικαιώματα πνευματικής ιδιοκτησίας της, έτσι και η %{company_name} σέβεται τα δικαιώματα πνευματικής ιδιοκτησίας των άλλων. Αν πιστεύετε οτι υλικό που βρίσκεται στην %{company_domain} ή συνδέεται με την %{company_domain} παραβιάζει τα δικαιώματα πνευματικής ιδιοκτησίας σας, και αν αυτός ο ιστότοπος βρίσκεται στις ΗΠΑ, σας ενθαρρύνουμε να ειδοποιήσετε την %{company_name} σύμφωνα με την Πολιτική [Digital Millennium Copyright Act](http://en.wikipedia.org/wiki/Digital_Millennium_Copyright_Act) ("DMCA") της %{company_name}. Η %{company_name} θα ανταποκριθεί με τον τρόπο που ζητείται ή είναι κατάλληλος, σε όλες τις σχετικές ειδοποιήσεις και θα αφαιρέσει το υλικό που καταπατά τα δικαιώματα πνευματικής ιδιοκτησίας σας ή θα απενεργοποιήσει όλους τους συνδέσμους που συνδέονται με αυτό το υλικό. Η %{company_name} θα τερματίσει την πρόσβαση του επισκέπτη στον Ιστότοπο, καθώς και τη χρήση του Ιστότοπου από τον επισκέπτη, αν, υπό τις κατάλληλες συνθήκες, ο επισκέπτης θεωρηθεί πως έχει επανειλημμένα καταπατήσει τα πνευματικά δικαιώματα ή άλλα πνευματικά δικαιώματα ιδιοκτησίας της %{company_name} ή άλλων. Σε περίπτωση τέτοιου τερματισμού, η %{company_name} δεν έχει καμία υποχρέωση να προβεί σε επιστροφή όποιων ποσών έχουν προηγουμένως πληρωθεί στην %{company_name}. + + + + ## [9. Πνευματική Ιδιοκτησία](#9) + + + Το παρόν Συμφωνητικό δεν μεταφέρει από την %{company_name} προς εσάς καμία πνευματική ιδιοκτησία της %{company_name} ή τρίτου και κάθε δικαίωμα, τίτλος και συμφέρον σε τέτοιου είδους ιδιοκτησία θα παραμείνει (όπως μεταξύ των μερών) αποκλειστικά στην %{company_name}. %{company_name}, %{company_domain}, το %{company_domain} λογότυπο, και όλα τα άλλα σήματα κατατεθέντα, σήματα υπηρεσιών, γραφικά και λογότυπα που χρησιμοποιούνται σε σχέση με την %{company_domain}, ή τον Ιστότοπο αποτελούν σήματα κατατεθέντα ή καταχωρημένα σήματα κατατεθέντα της %{company_name} ή των αδειοδοτών της %{company_name}. Άλλα σήματα κατατεθέντα, σήματα υπηρεσιών, γραφικά και λογότυπα που χρησιμοποιούνται σε σχέση με τον Ιστότοπο μπορεί να είναι σήματα κατατεθέντα τρίτων. Η χρήση του Ιστότοπου δεν σας δίνει το δικαίωμα ή την άδεια να αναπαράγετε ή κατά οιοδήποτε τρόπο να χρησιμοποιείτε τα σήματα κατατεθέντα της %{company_name} ή τρίτων. + + + + + ## [10. Διαφημίσεις](#10) + + Η %{company_name} διατηρεί το δικαίωμα να προβάλει διαφημίσεις πάνω στο περιεχόμενο σας εκτός εάν έχετε αγοράσει μία Αναβάθμιση ή λογαριασμό Υπηρεσιών δίχως διαφημίσεις. + + + + ## [11. Αναγνώριση](#11) + + + Η %{company_name} διατηρεί το δικαίωμα να προβάλει συνδέσμους αναγνώρισης όπως ‘Powered by %{company_domain},’ συγγραφέα θεματικής εμφάνισης, και γραμματοσειράς αναγνώρισης στο υποσέλιδο του περιεχομένου σας ή στην εργαλειοσειρά σας. Οι αναφορές αναγνώρισης στο υποσέλιδο και η εργαλειοσειρά της %{company_domain} δεν μπορούν να αφαιρεθούν ανεξαρτήτως από το αν έχουν αγοραστεί αναβαθμίσεις. + + + + + ## [12. Αλλαγές](#12) + + Η %{company_name} διατηρεί το δικαίωμα, κατά την αποκλειστική διακριτική της ευχέρεια, να τροποποιεί ή να αντικαθιστά οποιοδήποτε μέρος του παρόντος Συμφωνητικού. Είναι δική σας ευθύνη να ελέγχετε περιοδικά το παρόν Συμφωνητικό για αλλαγές. Η συνεχιζόμενη χρήση ή πρόσβαση στον Ιστότοπο μετά την ανάρτηση οιονδήποτε αλλαγών στο παρόν Συμφωνητικό, συνιστά αποδοχή αυτών των αλλαγών. Η %{company_name} μπορεί επίσης, στο μέλλον, να προσφέρει νέες υπηρεσίες ή/και χαρακτηριστικά δια του Ιστότοπου (περιλαμβανομένης της κυκλοφορίας νέων εργαλείων και πόρων). Αυτά τα νέα χαρακτηριστικά ή/και οι υπηρεσίες θα υπόκεινται στους όρους και τις προϋποθέσεις του παρόντος Συμφωνητικού. + + + + + ## [13. Τερματισμός](#13) + + Η %{company_name} μπορεί να τερματίσει την πρόσβαση σας στο σύνολο ή σε οποιοδήποτε μέρος του Ιστότοπου οιαδήποτε στιγμή, με ή χωρίς αιτία, με ή χωρίς ειδοποίηση, με άμεση ισχύ. Αν επιθυμείτε να τερματίσετε το παρόν Συμφωνητικό ή τον λογαριασμό σας στο %{company_domain} (εάν έχετε), μπορείτε απλώς να σταματήσετε να χρησιμοποιείτε τον Ιστότοπο. Όλες οι προβλέψεις του παρόντος συμφωνητικού, οι οποίες εκ της φύσεως τους πρέπει να ισχύουν και μετά των τερματισμό, θα ισχύουν και μετά τον τερματισμό, περιλαμβανομένων, χωρίς περιορισμό, προβλέψεων ιδιοκτησίας, αποποιήσεων ευθυνών εγγυήσεων, αποζημιώσεων και περιορισμών ευθύνης. + + + + ## [14. Αποποίηση Ευθυνών Εγγυήσεων ](#14) + + + Ο Ιστότοπος παρέχεται ‘ως έχει’. Η %{company_name} και οι προμηθευτές και αδειοδότες της αποποιούνται όλες τις εγγυήσεις παντώς είδους, ρητά διατυπομένες ή εννοούμενες, περιλαμβανομένων, χωρίς περιορισμό, των εγγυήσεων εμπορευσιμότητας, καταλληλότητας για συγκεκριμένο σκοπό και μη παραβίασης. Ούτε η %{company_name} ούτε οι προμηθευτές και οι αδειοδότες της, εγγυώνται οτι ο Ιστότοπος δεν θα περιέχει λάθη ή οτι η πρόσβαση σε αυτόν θα είναι συνεχής και χωρίς διακοπή. Αν το διαβάζει αυτό: (http://www.newyorker.com/online/blogs/shouts/2012/12/the-hundred-best-lists-of-all-time.html). Κατανοείτε οτι η λήψη ή με άλλο τρόπο η παροχή υπηρεσιών ή περιεχομένου από τον Ιστότοπο υπόκειται στην δική σας διακριτική ευχέρεια και ανάληψη κινδύνου. + + + + ## [15. Περιορισμός Ευθύνης ](#15) + + + Σε καμία περίπτωση η %{company_name} ή οι προμηθευτές ή αδειοδότες της, θα είναι υπεύθυνοι σχετικά με οποιοδήποτε θέμα του παρόντος Συμφωνητικού εξ αιτίας οποιουδήποτε συμβολαίου, αμέλειας, αυστηρής ευθύνης ή άλλης νομικής ή άλλης θεωρίας δικαίου για: (i) όποιες ειδικές, συμπτωματικές ή επακόλουθες βλάβες· (ii) το κόστος της προμήθειας για προϊόντα ή υπηρεσίες υποκατάστασης· (iii) την διακοπή της χρήσης ή απώλεια ή φθορά δεδομένων· ή (iv) οιαδήποτε ποσά που υπερβαίνουν τις αμοιβές που εσείς πληρώσατε στην %{company_name} στο πλαίσιο του παρόντος Συμφωνητικού κατά την περίοδο των 12 μηνών που προηγήθηκαν της αιτίας της ενέργειας. Η %{company_name} δεν θα έχει ευθύνη για οιαδήποτε αστοχία ή καθυστέρηση οφειλόμενη σε λόγους πέραν εύλογου εκ μέρους της ελέγχου. Τα ανωτέρω δεν ισχύουν πέραν των προβλεπομένων από τους εφαρμόσιμους νόμους. + + + + ## [16. Γενική Εκπροσώπηση και Εγγύηση](#16) + + Εκπροσωπείτε και εγγυάστε οτι (i) η χρήση σας του Ιστότοπου θα βρίσκεται σε αυστήρη συμμόρφωση με τις Πολιτικές Προστασίας Προσωπικών Δεδομένων της %{company_name}, [CommunityGuidelines] (/γενικές οδηγίες), με το παρόν Συμφωνητικό και με όλους τους εφαρμόσιμους νόμους και κανονισμούς (περιλαμβανομένων, χωρίς περιορισμό οιονδήποτε τοπικών νόμων ή κανονισμών της χώρας, πολιτείας, πόλης, ή άλλης περιοχής διακυβέρνησης, σε σχέση με την διαδικτυακή συμπεριφορά και αποδεκτό περιεχόμενο, και περιλαμβανομένων όλων των εφαρμόσιμων νόμων σχετικά με την μετάδοση τεχνικών δεδομένων εξαγομένων από την χώρα όπου αυτός ο Ιστότοπος ευρίσκεται ή εσείς ευρίσκεστε) και (ii) η εκ μέρους σας χρήση του Ιστότοπου δεν θα παραβίασει ή υπεξαιρέσει τα δικαιώματα πνευματικής ιδιοκτησίας τρίτων. + + + + + + ## [17. Αποζημίωση](#17) + + Συμφωνείτε να αποζημιώσετε και να φροντίσετε να μην βλαφθούν η %{company_name}, οι εργολάβοι της, και οι αδειοδότες της, καθώς και οι αντίστοιχοι διευθυντές, αξιωματούχοι, υπάλληλοι και παράγοντες τους από κάθε διεκδίκηση και έξοδα, περιλαμβανομένων αμοιβών δικηγόρων, που προκύπτουν από τη χρήση σας του Ιστότοπου, περιλαμβανομένης αλλά μη περιοριζόμενης στην εκ μέρους σας παραβίαση αυτού του Συμφωνητικού. + + + + ## [18. Διάφορα](#18) + + Το παρόν Συμφωνητικό αποτελεί το σύνολο της συμφωνίας μεταξύ της %{company_name} και εσάς σχετικά με το περιεχόμενο θέμα, και μπορεί να τροποποιηθεί μόνον με γραπτή τροπολογία υπογεγραμμένη από εξουσιοδοτημένο στέλεχος της %{company_name}, ή από την ανάρτηση αναθεωρημένης εκδόσεως από την %{company_name}. Εκτός αν ο εφαρμόσιμος νόμος, εφόσον υπάρχει, προβλέπει διαφορετικά, το παρόν Συμφωνητικό, οιαδήποτε πρόσβαση ή χρήση του Ιστότοπου ρυθμίζεται από τους νόμους της πολιτείας της Καλιφόρνια, Η.Π.Α., εξαιρουμένων των προβλέψεων για σύγκρουση νόμων, και ο κατάλληλος τόπος για διαφωνίες που προέρχονται από ή σχετίζονται με τα προαναφερθόντα, θα είναι τα πολιτειακά και ομοσπονδιακά δικαστήρια που βρίσκονται στην κομητεία του Σαν Φρανσίσκο, Καλιφόρνια. Εκτώς από αξιώσεις ασφαλιστικών μέτρων ή δίκαιης ανακούφισης ή αξιώσεων που αφορούν δικαιώματα πνευματικής ιδιοκτησίας (οι οποίες μπορεί να παρουσιαστούν σε κάθε αρμόδιο δικαστήριο χωρίς την πληρωμή εγγυήσεως), κάθε διαφωνία που εγείρεται στο πλαίσιο του παρόντος Συμψωνητικού θα ρυθμίζεται οριστικά σύμφωνα με τις προβλέψεις των Κανόνων Συνολικής Διαιτησίας της Υπηρεσίας Μεσολάβησης και Δικαστικής Διαιτησίας ΑΕ (‘’ΥΜΔΔ’’) από τρεις διαιτητές διορισμένους σύμφωνα με τις προβλέψεις αυτών των Κανόνων. Η διαιτησία θα λάβει χώρα στο Σαν Φρανσίσκο, Καλιφόρνια, στην Αγγλική γλώσσα και η διαιτητική απόφαση μπορεί να εφαρμοστεί σε οποιοδήποτε δικαστήριο. Η επικρατούσα πλευρά σε κάθε δράση ή διαδικασία εφαρμογής αυτής της Συμφωνίας δικαιούται έξοδα και αμοιβές δικηγόρων. Εάν κάποιο τμήμα του παρόντος Συμφωνητικού κριθεί άκυρο ή ανεφάρμοστο, αυτό το τμήμα θα ερμηνευθεί οτι αντανακλά τις αρχικές προθέσεις των μερών, και τα εναπομένοντα μέρη θα παραμείνουν σε πλήρη ισχύ και αποτέλεσμα. Η αποποίηση από οποιαδήποτε πλευρά, οιουδήποτε όρου ή προϋπόθεσης του παρόντος Συμφωνητικού ή παραβίασης τους, σε κάθε μία περίσταση δεν θα αποποιείται τον όρο ή την προϋπόθεση ή όποια επακόλουθη παραβίαση τους. Μπορείτε να αναθέσετε τα δικαιώματα σας στο πλαίσιο του παρόντος Συμφωνητικού σε οποιονδήποτε συναινεί και συμφωνεί να δεσμεύεται από τους όρους και τις προϋποθέσεις του· η %{company_name} μπορεί να αναθέσει τα δικαιώματα που έχει στο πλαίσιο του παρόντος Συμφωνητικού χωρίς περιορισμό. Το παρόν Συμφωνητικό είναι δεσμευτικό και θα ισχύει προς ώφελος των μερών, των διαδόχων και των επιτετραμένων τους. + Το παρόν κείμενο είναι CC-BY-SA. Η τελευταία ενημέρωση έγινε στις 31 Μαίου, 2013. + Η αρχική προσαρμογή έγινε από το [WordPress Terms of Service](http://en.wordpress.com/tos/). + + + privacy_topic: + title: "Πολιτική Προστασίας Προσωπικών Δεδομένων" + body: | + + + ## [Τι πληροφορίεσ συλλέγουμε;](#συλλογή) + + Συλλέγουμε πληροφορίες απο εσένα όταν γραφτείς στη σελίδα και όταν μαζέψεις δεδομένα όταν συμμετέχεις στις συζητήσεις διαβάζοντας, γράφοντας, και σταδιακά το περιεχόμενο που είναι κοινοποίημενο εδώ. + + Όταν εγραφείς στη σελίδα μας, μπόρει να ζυτηθεί το όνομα και η ηλεκτρονίκη διεύθυνση σας. Μπορείται, όμως, να επισκεφτείται τη σελίδα μας χωρίς εγράφη. Η διεύθηνση ηλεκτρονικού ταχυδρομίου σας θα εγκριθεί με ηλεκτονικό μήνυμα που θα περιέχει ενα μοναδικό σύνδεσμο. Αν επισκέφτεσαι αυτό το σύνδεσμο , θα ξέρουμε ότι ελέγχεις τι δεύθυνση ηλεκτονικού ταχύδρομιου. + + Οταν είσαι εγγραμένος και κοινοποίης, καταγράφουμε τη διεύθυνση IP που προέρχεται η δημοσίευση. Μπορεί να διατηρίσουμε αρχεία καταγραφής του διακομιστή που περιέχουν τη διεύθυνση IP για κάθε αίτημα του διακομιστή. + + <α όνομα="χρήση"> + + ## [Για ποίο σκοπό χρησιμοποίουμε τις πληροφορίες σας;](#χρήση) + + Οποιαδίποτε από τις πληροφορίες που συλλέγουμε απο εσάς μπορεί να χρησιμοποίηθει με ένα από τους ακόλουθους τρόπους: + + *Για να εξατομικεύσουμε την εμπειρία σας—— τα στοιχεία σας μας βοηθά να ανταποκριθεί καλύτερα στις ατομικές σας ανάγκες. + *Για να βελτιώσουμε την ιστοσελίδα μας —— προσπαθούμε συνεχώς να βελτιώσουν τις προσφορές τις ιστοσελίδα μας βάσει τις πληροφορίες και την ανατροφοδότηση που λαμβάνουμε από εσάς. + + *Για τη βελτίωση της εξυπηρέτησης πελατών —— τα στοιχεία σας μας βοηθούν για την ανταπόκριση σε αιτήματα εξυπηρέτησής σας πιο αποτελεσματικά και να υποστηρίζουν τις ανάγκες. + *Για να στείλετε μηνύματα ηλεκτρονικού ταχυδρομείου —— τη διεύθυνση ηλεκτρονικού ταχυδρομείου που παρέχετε μπορεί να χρησιμοποιηθεί για την αποστολή πληροφοριών, τις ειδοποιήσεις που έχετε ζητήσει για αλλαγές σε θέματα ή απαντώντας στο όνομα χρήστη σας, να απαντήσουμε σε ερωτήσεις, και/ή άλλα αιτήματα ή ερωτήσεις. + + <α όνομα="προστασία"> + + ## [Πως προστατεύουμε τις πληροφορίες σας;](#προστασία) + + Εφαρμόζουμε μια ποικιλία μέτρων ασφαλείας για να διατηρήσουμε την ασφάλεια των προσωπικών σας πληροφοριών όταν εισάγεστε, υποβάλλετε ή πρόσβαση στις προσωπικές πληροφορίες σας. + + + ## [Τι είναι τα δεδομέναdata κράτησης πολιτικής?](#data-retention) + + Θα κάνουμε μια καλήπροσπάθεια πιστής: + + *Διατηρούν αρχεία καταγραφής του διακομιστή που περιέχει τη διεύθυνση IP του όλα τα αιτήματα σε αυτόν το διακομιστή δεν φυλάσονται περισσότερο από 90 ημέρες. + *Διατηρούν τις διευθύνσεις IP που σχετίζονται με εγγεγραμμένους χρήστες και τις θέσεις τους όχι περισσότερο από 5 χρόνια. + + + + ## [Do we use cookies?](#cookies) + + Ναι. Τα cookies είναι μικρά αρχεία ότι ένα site ή ο πάροχος υπηρεσίας μεταφέρει στο σκληρό δίσκο του υπολογιστή σας μέσω του Web browser σας (αν επιτρέπεται). Αυτά τα cookies επιτρέπουν στον ιστότοπο να αναγνωρίσει το πρόγραμμα περιήγησής σας και, εάν έχετε έναν λογαριασμό, συσχετίσετε με καταχωρημένο λογαριασμό σας. + + Χρησιμοποιούμε cookies για να κατανοήσουν και να αποθηκεύσετε τις προτιμήσεις σας για μελλοντικές επισκέψεις και να μεταγλωττίσετε συγκεντρωτικά δεδομένα σχετικά με την επισκεψιμότητα της ιστοσελίδας και την αλληλεπίδραση ιστοσελίδας, έτσι ώστε να μπορούμε να προσφέρουμε καλύτερες εμπειρίες ιστοσελίδας και εργαλεία στο μέλλον. Μπορεί να συνεργαστούμε με τρίτους παρόχους υπηρεσιών για να μας βοηθήσουν να κατανοήσουμε καλύτερα τους επισκέπτες περιοχών μας.Αυτοί οι πάροχοι δεν επιτρέπεται να χρησιμοποιούν τις πληροφορίες που συλλέγονται για λογαριασμό μας, εκτός από το να μας βοηθήσουν να βελτιστοποιήσουμε την επιχείρησή μας. + + + + ## [Αποκαλύπτουμε οποιαδίποτε πληροφορία με εξωτερικούς παρόχους;](#disclose) + + Εμείς δεν πωλάμε, το εμπόριο, ή άλλο τρόπο μεταφοράς σε εξωτερικά μέρη σας προσωπικά αναγνωρίσιμες πληροφορίες. Αυτό δεν περιλαμβάνει έμπιστα τρίτα μέρη που μας βοηθούν σε λειτουργία την ιστοσελίδα μας, διεξάγουν τις δραστηριότητές μας ή εξυπηρέτηση σας, εφόσον τα μέρη συμφωνούν να διατηρήσουν τις πληροφορίες εμπιστευτικές. Ενδέχεται επίσης να δώσουμε τα στοιχεία σας όταν πιστεύουμε ότι είναι σκόπιμο να συμμορφώνονται με τη νομοθεσία, την επιβολή πολιτικών σελιδών μας, ή προστασία δικών μας ή αλλότριων δικαιωμάτων, ιδιοκτησίας ή ασφάλειας. Ωστόσο, μη προσωπικά αναγνωρίσιμες πληροφορίες επισκέπτης μπορεί να παρέχεται σε άλλα μέρη για το εμπόριο, τη διαφήμιση, ή άλλες χρήσεις. + + + + ## [Third party links](#third-party) + + Περιστασιακά, κατά την κρίση μας, εμείς μπορεί να περιλαμβάνουμε ή να προσφέρουμε προϊόντα τρίτων ή υπηρεσίες στην ιστοσελίδα μας. Αυτές οι ιστοσελίδες τρίτων έχουν χωριστές και ανεξάρτητες πολιτικές απορρήτου. Έχουμε επομένως καμία ευθύνη ή υποχρέωση για το περιεχόμενο και τις δραστηριότητες των συνδεδεμένων ιστοτόπων. Παρόλα αυτά, επιδιώκουμε να προστατεύσουμε την ακεραιότητα τις σελίδας μας και καλωσορίζουμε οποιαδήποτε ανατροφοδότηση σχετικά με αυτές τις τοποθεσίες. + + + + ## [Παιδικό ηλεκτρονικό απόρρητο προστασίας πράξης συμμόρφωσης](#coppa) + + Η σελίδα μας, τα προϊόντα και τις υπηρεσίες μας απευθύνονται σε ανθρώπους που είναι τουλάχιστον 13 ετών ή μεγαλύτεροι. Εάν αυτός ο διακομιστής είναι στις ΗΠΑ, και είστε ηλικίας κάτω των 13, ανά τις απαιτήσεις του COPPA ([Children's Online Privacy Protection Act](https://en.wikipedia.org/wiki/Children%27s_Online_Privacy_Protection_Act)), μη χρησιμοποίησεται αυτή τη σελίδα. + + + + ## [Your Consent](#consent) + + Χρησιμοποιώντας την ιστοσελίδα μας, συναινείτε στην πολιτική απορρήτου μας. + + + + ## [Changes to our Privacy Policy](#changes) + Εάν αποφασίσουμε να αλλάξουμε την πολιτική απορρήτου μας, θα δημοσιεύσουμε αυτές τις αλλαγές σε αυτήν τη σελίδα. + Αυτό το αρχείο είναι CC-BY-SA. Αναβαθμίστικε ταιλευταίος 31Μαΐου, 2013. + badges: + editor: + name: Συντάκτης + description: Πρώτη επεξεργασία δημοσίευσης + long_description: | + Αυτό το παράσημο δίνεται την πρώτη φορά που επεξεργάζεσαι μία από τις αναρτήσεις σου. Δεν θα έχεις τη δυνατότητα να επεξεργάζεσαι τις αναρτήσεις σου για πάντα, όμως η επεξεργασία είναι πάντα καλή ιδέα. Μπορείς να βελτιώσεις τις αναρτήσεις σου, να διορθώσεις μικρά λάθη ή να προσθέσεις οτιδήποτε σου διέφυγε όταν έκανες την ανάρτηση. Επεξεργάσου τις αναρτήσεις σου για να τις κάνεις ακόμη καλύτερες! + basic_user: + name: Βασικός + description: Χορηγήθηκαν όλες οι σημαντικές λειτουργίες της κοινότητας + long_description: | + Αυτό το παράσημο δίνεται όταν φτάσεις το 1ο επίπεδο εμπιστοσύνης. Ευχαριστούμε που μένεις μαζί μας για λίγο και διαβάζεις νήματα για να μάθεις σχετικά με την κοινότητά μας. Οι περιορισμοί νέου χρήστη έχουν αφαιρεθεί. Όλες οι βασικές δυνατότητες της κοινότητας σου έχουν δοθεί, όπως προσωπικά μηνύματα, επισημάνεις, επεξεργασία του wiki και τη δυνατότητα ανάρτησης πολλαπλών εικόνων και συνδέσμων. + member: + name: Μέλος + description: Παραχωρήθηκε προσκλήσεις, μηνύματα ομάδας, περισσότερα μου αρέσει + long_description: | + Αυτό το παράσημο δίνεται όταν φτάσεις το 2ο επίπεδο εμπιστοσύνης. Ευχαριστούμε που συμμετέχεις και είσαι μέλος της κοινότητας μας εδώ και κάποιες εβδομάδες. Μπορείς πλέον να στέλνεις προσκλήσεις από την σελίδα χρήστη σου ή από ατομικά νήματα, να δημιουργείς ομαδικά προσωπικά μηνύματα και να έχεις λίγα περισσότερα "μου αρέσει" ημερησίως. + regular: + name: Κανονικός + description: Δόθηκε επανακατηγοριοποίησε, μετονόμασε, ακολούθησε συνδέσμους, wiki, περισσότερα "μου αρέσει" + long_description: | + Αυτό το παράσημο δίνεται όταν φτάσεις το 3ο επίπεδο εμπιστοσύνης. Ευχαριστούμε που είσαι κανονικό μέλος της κοινότητάς μας εδώ και μήνες. Είσαι πλέον ένας από τους πιο ενεργούς αναγνώστες και έμπιστα συμβάλλεις να γίνει η κοινότητά μας υπέροχη. Μπορείς πλέον να ανακατηγοριοποιήσεις και να μετονομάσεις νήματα, να εκμεταλλευτείς πιο ισχυρές επισημάνσεις , να έχεις πρόσβαση σε ιδιωτική περιοχή χαλάρωσης και επιπλέον θα παίρνεις πολύ περισσότερα "μου αρέσει" ημερησίως. + leader: + name: Αρχηγός + description: Παραχωρήθηκε επεξεργασία, καρφίτσωμα, κλείσιμο, αρχείο, διάσπαση και συγχώνευση, περισσότερα μου αρέσει + long_description: | + Αυτό το παράσημο δίνεται όταν φτάσεις το 4ο επίπεδο εμπιστοσύνης. Οι συνεργάτες έχουν επιλέξει να είσαι αρχηγός αυτής της κοινότητας και δίνεις το καλό παράδειγμα για την υπόλοιπη κοινότητα με τις πράξεις και τις λέξεις σου εδώ. Έχεις τη δυνατότητα να επεξεργαστείς όλες τις αναρτήσεις, να συντονίσεις νήματα μέσω καρφιτσώματος, κλεισίματος, αρχειοθέτησης, αφαίρεση κατηγοριοποίησης, διαίρεση και συγχώνευση καθώς επίσης και τόνους "μου αρέσει" την ημέρα. + welcome: + name: Καλώς ήλθατε + description: Έλαβε ένα "Μου αρέσει" + long_description: |+ + Το παράσημο χορηγείται όταν λαμβάνεις το πρώτο σου "Μου αρέσει" σε μια δημοσίευση. Συγχαρητήρια, δημοσίευσες κάτι μου τα υπόλοιπα μέλη της κοινότητας βρήκαν ενδιαφέρον, ωραίο, ή χρήσιμο! + + autobiographer: + name: Αυτοβιογράφος + description: Συμπλήρωσε προφίλ πληροφορίες + long_description: | + Αυτό το παράσημο δίνεται όταν συμπληρώσεις your user profile και επιλέξεις μια φωτογραφία προφίλ. Επιτρέποντας στην κοινότητα να μάθει λίγα περισσότερα για σένα και τα ενδιαφέροντά σου, δημιουργεί μια καλύτερη, πιο διασυνδεμένη κοινότητα. Γίνε κι εσύ μέλος της! + anniversary: + name: Επέτειος + description: Ενεργό μέλος για ένα χρόνο, δημοσίευσε τουλάχιστον μια φορά + long_description: |+ + Το παράσημο χορηγείται όταν είσαι μέλος για ένα χρόνο με τουλάχιστον μια δημοσίευση σε αυτόν τον χρόνο. Ευχαριστούμε που έμεινες τριγύρω και για την συνεισφορά σου στην κοινότητα. Δε θα μπορούσαμε να κάνουμε χωρίς εσένα! + + nice_post: + name: Ωραία απάντηση + description: Έλαβε 10 "Μου αρέσει" σε μια απάντηση + long_description: |+ + Το παράσημο χορηγείται όταν η απάντηση σου παίρνει 10 "Μου αρέσει". Η απάντησή σου εντυπωσίασε την κοινότητα και βοήθησε τη συζήτηση να πάει μπροστά! + + good_post: + name: Καλή απάντηση + description: 'Έλαβε 25 "Μου αρέσει" σε μια απάντηση ' + long_description: |+ + Το παράσημο χορηγείται όταν η απάντησή σου παίρνει 25 ¨Μου αρέσει". Η απάντησή σου ήταν εξαιρετική και έκανε τη συζήτηση πολύ καλύτερη για όλους! + + great_post: + name: Υπέροχη απάντηση + description: Έλαβε 50 "Μου αρέσει" σε μια απάντηση + long_description: |+ + Το παράσημο χορηγείται όταν η απάντησή σου παίρνει 50 "Μου αρέσει". Ουάου! Η απάντησή σου προκάλεσε έμπνευση, ήταν μαγευτική ή διορατική και η κοινότητά σου τη λάτρεψε. + + nice_topic: + name: Ωραίο νήμα + description: Έλαβε 10 "Μου αρέσει" σε ένα νήμα + long_description: |+ + Το παράσημο χορηγείται όταν το νήμα σου παίρνει 10 "Μου αρέσει". Λοιπόν, ξεκίνησες μια ενδιαφέρουσα συζήτηση που απόλαυσε η κοινότητα! + + good_topic: + name: Καλό νήμα + description: Έλαβε 25 "Μου αρέσει" σε ένα νήμα + long_description: | + Αυτό το παράσημο δίνεται όταν το νήμα σου φτάνει τα 25 "μου αρέσει". Ξεκίνησες μια ζωντανή συζήτηση γύρω από την οποία η κοινότητα συγκεντρώθηκε και την οποία αγάπησε! + great_topic: + name: Υπέροχο νήμα + description: Έλαβε 50 "Μου αρέσει" σε ένα νήμα + long_description: |+ + Το παράσημο χορηγείται όταν το νήμα σου παίρνει 50 "Μου αρέσει". Ξεκίνησες μια μαγευτική συζήτηση και η κοινότητα απόλαυσε τη δυναμική κουβέντα που δημιουργήθηκε! + + nice_share: + name: Ωραία κοινοποίηση + description: Κοινοποίησε μια δημοσίευση με 25 μοναδικούς επισκέπτες + long_description: | + Αυτό το παράσημο δίνεται όταν μοιράζεσαι ένα σύνδεσμο που πατήθηκε από 25 εξωτερικούς επισκέπτες. Ευχαριστούμε που διαδίδεις τις συητήσεις μας και αυτή την κοινότητα. + good_share: + name: Καλή κοινοποίηση + description: Κοινοποίησε μια δημοσίευση με 300 μοναδικούς επισκέπτες + long_description: |+ + Το παράσημο χορηγήθηκε για την κοινοποίηση ενός συνδέσμου, στο οποίο πάτησαν κλικ 300 εξωτερικοί επισκέπτες. Έχεις επιδείξει μια υπέροχη συζήτηση σε ένα πλήθος καινούριου κόσμου και βοήθησες την κοινότητα να μεγαλώσει. + + great_share: + name: Υπέροχη κοινοποίηση + description: Κοινοποίησε μια δημοσίευση με 1000 μοναδικούς επισκέπτες + long_description: |+ + Το παράσημο χορηγείται για την κοινοποίηση ενός συνδέσμου, στο οποίο πάτησαν κλικ 1000 εξωτερικοί επισκέπτες. Ουάου! Έχεις προωθήσει μια ενδιαφέρουσα συζήτηση σε ένα τεράστιο, νέο κοινό, και μας βοήθησες να μεγαλώσουμε την κοινότητά μας σε μεγάλο βαθμό! + + first_like: + name: Πρώτο "Μου αρέσει" + description: «Μου άρεσε» μια ανάρτηση + long_description: |+ + Το παράσημο χορηγείται την πρώτη φορά που πατάς "Μου αρέσει" σε μια κοινοποίηση χρησιμοποιώντας το κουμπί :heart:. Το να πατάς "Μου αρέσει" σε δημοσιεύσεις είναι ένας υπέροχος τρόπος να αφήνεις τα υπόλοιπα μέλη της κοινότητας να γνωρίζουν ότι αυτό που δημοσίευσαν ήταν ενδιαφέρον, χρήσιμο, ωραίο ή διασκεδαστικό. Κοινοποίησε την αγάπη! + + first_flag: + name: Πρώτη επισήμανση + description: Επεσήμανε μια δημοσίευση + long_description: | + Αυτό το παράσημο δίνεται την πρώτη φορά που επισημαίνεις μια ανάρτηση. Με την επισήμανση βοηθάμε όλοι να κρατάμε αυτό το σημείο καθαρό και φωτεινό για όλους. Εάν παρατηρήσεις οποιαδήποτε ανάρτηση που απαιτεί την προσοχή του συντονιστή για οποιοδήποτε λόγο, σε παρακαλούμε μην διστάσεις να την επισημάνεις. Μπορείς επίσης να επισημάνεις για να στείλεις προσωπικά μηνύματα σε άλλους χρήστες εάν βρεις κάποιο πρόβλημα με την ανάρτησή τους. Εάν βρεις κάποιο πρόβλημα, :flag_black: επισήμανέ το! + promoter: + name: Προωθητής + description: Προσκάλεσε ένα χρήστη + long_description: |+ + Το παράσημο χορηγείται όταν προσκαλείς κάποιον να συμμετάσχει μέσω του κουμπιού "Πρόσκληση" στη σελίδα χρήστη, ή στο κάτω μέρος του νήματος. Με το να προσκαλείς φίλους, οι οποίοι πιθανόν να ενδιαφέρονται για συγκεκριμένες συζητήσεις είναι ένας υπέροχος τρόπος να γνωρίσεις καινούριους ανθρώπους στην κοινότητά μας, ευχαριστούμε λοιπόν! + + campaigner: + name: Εκστρατεύων + description: Προσκάλεσε 3 βασικούς χρήστες + long_description: |+ + Το παράσημο χορηγείται όταν έχεις προσκαλέσει 3 άτομα, οι οποίοι μεταγενέστερα πέρασαν αρκετό χρόνο στην ιστοσελίδα για να γίνουν βασικοί χρήστες. Μια ζωηρή κοινότητα χρειάζεται τακτική έμπνευση από τους νεοελθόντες, οι οποίοι συμμετέχουν τακτικά και προσθέτουν καινούριες φωνές στη συζήτηση. + + champion: + name: 'Πρωταθλητής ' + description: Προσκάλεσε 5 μέλη + long_description: |+ + Το παράσημο χορηγείται όταν έχεις προσκαλέσει 5 άτομα, οι οποίοι μεταγενέστερα πέρασαν πολύ χρόνο στην ιστοσελίδα για να γίνουν μέλη πλήρως. Ουάου! Ευχαριστούμε που επέκτεινες την ποικιλία της κοινότητάς μας με καινούρια μέλη! + + first_share: + name: Πρώτη Κοινοποίηση + description: Κοινοποίησε μια δημοσίευση + long_description: |+ + Το παράσημο χορηγείται την πρώτη φορά που κοινοποιείς ένα σύνδεσμο σε μια απάντηση ή σε ένα νήμα χρησιμοποιώντας το κουμπί της κοινοποίησης. Το να κοινοποιείς συνδέσμους είναι ένας καλός τρόπος να επιδείξεις ενδιαφέρουσες συζητήσεις με τον υπόλοιπο κόσμο και να μεγαλώσεις την κοινότητά σου. + + first_link: + name: Πρώτος σύνδεσμος + description: Προστέθηκε ένας σύνδεσμος σε ένα άλλο νήμα + long_description: |+ + Το παράσημο χορηγείται την πρώτη φορά που προσθέτεις ένα σύνδεσμο σε ένα άλλο νήμα. Το να συνδέεις νήματα βοηθά τους συν-αναγνώστες σου να βρουν ενδριαφέρουσες σχετικές συζητήσεις, δείχνοντας τα κοινά στοιχεία μεταξύ των νημάτων και στις δυο κατευθύνσεις. Κάνε συνδέσμους ελεύθερα! + + first_quote: + name: Πρώτο απόσπασμα + description: Ανάφερε μια δημοσίευση + long_description: | + Αυτό το παράσημο δίνεται την πρώτη φορά που παραθέτεις μια ανάρτηση σε μια απάντησή σου. Παραθέτοντας σχετικές ενοτητες από νωρίτερες αναρτήσεις στη απάντησή σου βοηθάει να κρατάμε τις συζητήσεις συνδεδεμένες και εντός θέματος. Ο πιο εύκολος τρόπος να παραθέσεις είναι να μαρκάρεις μια ενότητα από μια ανάρτηση και έπειτα να πατήσεις οποιδήποτε πλήκτρο απάντησης. Παραθέστε γεναιόδωρα! + read_guidelines: + name: Διάβασε τις κατευθυντήριες γραμμές + description: Διαβάστε το κατευθυντήριες γραμμές της κοινότητας + long_description: |+ + Το παράσημο χορηγείται για διαβάζοντας τις οδηγίες της κοινότητας. Ακολουθώντας και κοινοποιώντας αυτές τις απλές οδηγίες σε βοηθά να χτίσεις μια ασφαλή, διασκεδαστική και βιώσιμη κοινότητα για όλους. Να θυμάσαι πάντα ότι υπάρχει κάποιος άλλος άνθρωπος, πολύ όμοιος με εσένα, στην άλλη πλευρά της οθόνης. Να είσαι καλός! + + reader: + name: Αναγνώστης + description: Διάβασε κάθε απάντηση σε ένα νήμα με περισσότερες από 100 απαντήσεις + long_description: |+ + Το παράσημο χορηγείται την πρώτη φορά που διαβάζεις ένα μακρύ νήμα με πάνω από 100 απαντήσεις. Το να διαβάζεις μια συζήτηση στενά σε βοηθά να ακολουθήσεις τη συζήτηση, να καταλάβεις διαφορετικές απόψεις και οδηγεί σε πιο ενδιαφέρουσες συζητήσεις. Όσο περισσότερο διαβάζεις, τόσο το καλύτερο για τη συζήτηση. Όπως μας αρέσει να λέμε, το Διάβασμα είναι θεμελιώδες! :slight_smile: + + popular_link: + name: Δημοφιλής σύνδεσμος + description: Δημοσιεύτηκε μια εξωτερική σύνδεση με 50 κλικ + long_description: |+ + Το παράσημο χορηγείται όταν ένας σύνδεσμος που κοινοποιείς έχει 50 χτυπήματα. Ευχαριστούμε που δημοσίευσες έναν χρήσιμο σύνδεσμο που πρόσθεσε ενδιαφέροντα συμφραζόμενα στη συζήτηση! + + hot_link: + name: "\t\nΖεστή σύνδεση" + description: Δημοσιεύτηκε μια εξωτερική σύνδεση με 300 κλικ + long_description: |+ + Το παράσημο χορηγείται όταν ένας σύνδεσμος που κοινοποίησες έχει 300 χτυπήματα. Ευχαριστούμε που δημοσίευσες έναν τόσο μαγευτικό σύνδεσμο που πήγε τη συζήτηση πολύ μπροστά και της έριξε φως! + + famous_link: + name: Δημοφιλής σύνδεσμος + description: Δημοσιεύτηκε μια εξωτερική σύνδεση με 1000 κλικ + long_description: |+ + Το παράσημο χορηγείται όταν ο σύνδεσμος που κοινοποιείς έχει 1000 χτυπήματα. Ουάου!Δημοσίευσες ένα σύνδεσμο που βελτίωσε σημαντικά τη συζήτηση προσθέτοντας ουσιώδεις λεπτομέρειες, συμφραζόμενα και πληροφορίες. Υπέροχη δουλειά! + + appreciated: + name: Εκτιμωμένος + description: Έλαβε 1 "Μου αρέσει" σε 20 δημοσιεύσεις + long_description: |+ + Το παράσημο χορηγείται όταν λαμβάνεις τουλάχιστον ένα "Μου αρέσει" σε 20 διαφορετικές δημοσιεύσεις. Η κοινότητα απολαμβάνει την συνεισφορά σου στις συζητήσεις εδώ! + + respected: + name: Σεβαστή + description: Έλαβε 2 "Μου αρέσει" σε 100 δημοσιεύσεις + long_description: |+ + Το παράσημο χορηγείται όταν λαμβάνεις τουλάχιστον 2 "Μου αρέσει" σε 100 διαφορετικές δημοσιεύσεις. Η κοινότητα σέβεται τη μεγάλη σου συνεισφορά στις συζητήσεις εδώ. + + admired: + name: Θαύμαζα + description: Έλαβε 5 "Μου αρέσει" σε 300 δημοσιεύσεις + long_description: | + Αυτό το παράσημο χορηγείται όταν λαμβάνεις τουλάχιστον 5 "Μου αρέσει" σε 300 διαφορετικές δημοσιεύσεις. Ουάου! Η κοινότητα θαυμάζει την συχνή και υψηλής ποιότητας συνεισφορά σου στις συζητήσεις εδώ. + out_of_love: + name: 'Από αγάπη ' + description: Χρησιμοποίησε 50 "Μου αρέσει" σε μια ημέρα + long_description: |+ + Το παράσημο χορηγείται όταν χρησιμοποιείς όλα τα 50 "Μου αρέσει" που έχεις καθημερινά. Να θυμάσαι ότι το να έχεις το χρόνο να πατάς "Μου αρέσει" στις δημοσιεύσεις που απολαμβάνεις και εκτιμάς, ενθαρρύνει τα μέλη της κοινότητας σου να δημιουργούν ακόμα καλύτερες συζητήσεις στο μέλλον. + + higher_love: + name: Υψηλότερο Επίπεδο Αγάπης + description: Χρησιμοποίησε 50 "Μου αρέσει" σε μια ημέρα 5 φορές + long_description: |+ + Το παράσημο χορηγείται όταν χρησιμοποιείς όλα τα 50 ¨Μου αρέσει" που έχεις ημερησίως για 5 ημέρες. Ευχαριστούμε για το χρόνο σου να ενθαρρύνεις ενεργά τις καλύτερες συζητήσεις κάθε μέρα! + + crazy_in_love: + name: Τρελά ερωτευμένος + description: Χρησιμοποίησε 50 "Μου αρέσει" σε μια ημέρα 20 φορές + long_description: |+ + Το παράσημο χορηγείται όταν χρησιμοποιείς όλα τα 50 "Μου αρέσει" που έχεις ημερησίως για 20 ημέρες. Ουάου! Είσαι υπόδειγμα τακτικής ενθάρρυνσης των μελών της κοινότητάς σου! + + thank_you: + name: Σε ευχαριστώ + description: Έχει σε 20 δημοσιεύσεις "Μου αρέσει" και πάτησε 10 "Μου αρέσει" + long_description: |+ + Το παράσημο χορηγείται όταν έχεις 20 "Μου αρέσει" σε δημοσιεύσεις και δίνεις 10 ή περισσότερα "Μου αρέσει" σε αντάλλαγμα. Όταν κάποιος πατάει "Μου αρέσει" στη δημοσίευσή σου, βρίσκεις το χρόνο να πατήσεις "Μου αρέσει" σε ότι δημοσιεύουν οι άλλοι, επίσης. + + gives_back: + name: Ανταποδίδει + description: Έχει σε 100 δημοσιεύσεις "Μου αρέσει" και πάτησε 100 "Μου αρέσει" + long_description: | + Αυτό το παράσημο δίνεται όταν έχεις 100 αναρτήσεις με ένδειξη "μου αρέσει" και ταυτόχρονα έχεις κι εσύ πατήσει "μου αρέσει" σε 100 ή περισσότερες αναρτήσεις. Ευχαριστούμε που το συνεχίζεις! + empathetic: + name: 'Κατανοητικός ' + description: 'Έχει σε 500 δημοσιεύσεις "Μου αρέσει" και πάτησε 1000 "Μου αρέσει" ' + long_description: |+ + Το παράσημο χορηγείται όταν έχεις 500 "Μου αρέσει" σε δημοσιεύσεις και δίνεις 1000 ή περισσότερα "Μου αρέσει" σε αντάλλαγμα. Ουάου! Είσαι υπόδειγμα γενναιοδωρίας και αμοιβαίας εκτίμησης :two_hearts:. + + first_emoji: + name: Πρώτο Emoji + description: Χρησιμοποίησε ένα Emoji σε μια ανάρτηση + long_description: | + Αυτό το παράσημο δίνεται την πρώτη φορά που προσθέτεις κάποιο Emoji σε ανάρτησή σου :thumbsup:. Τα Emoji σου επιτρέπουν να προσθέσεις συναίσθημα στις αναρτήσεις σου, από χαρά :smiley: έως λύπη :anguished: έως θυμό :angry: και όλα τα ενδιάμεσα :sunglasses: . Απλώς πληκτρολόγησε ένα : (colon) ή πίεσε το πλήκτρο εργαλειοθήκης Emoji στο συνθέτη για να διαλέξεις από εκατοντάδες επιλογές :ok_hand: + first_mention: + name: Πρώτη αναφορά + description: Ανέφερε ένα χρήστη στη δημοσίευση + long_description: 'Αυτό το παράσημο δίνεται την πρώτη φορά που αναφέρεις το @χρηστώνυμο κάποιου στην ανάρτηση. Κάθε αναφορά δημιουργεί μια ειδοποίηση σε αυτό το άτομο, ώστε να μάθουν για την ανάρτησή σου. Απλώς ξεκίνα να πληκτρολογείς το @ (στα σύμβολα) για να αναφέρεις οποιδήποτε χρήστη ή, εάν επιτρέπεται, μια ομάδα. Είναι ένας βολικός τρόπος να τραβήξεις την προσοχή τους σε κάτι. ' + first_onebox: + name: Πρώτο Onebox + description: Αναρτήθηκε σύνδεσμος ο οποίος είναι oneboxed + long_description: 'Αυτό το παράσημο δίνεται την πρώτη φορά που αναρτείς ένα σύνδεσμο μόνο του σε μια γραμμή, το οποίο αυτόματα αναπτύσσεται σε onebox με μια σύντονη περίληψη του συνδέσμου, ένα τίτλο και (όπου αυτό είναι διαθέσιμο) μια εικόνα. ' + first_reply_by_email: + name: Πρώτη απάντηση μέσω ηλεκτρονικού ταχυδρομείου + description: Απάντησε σε μια Δημοσίευση μέσω του ηλεκτρονικού ταχυδρομείου + long_description: | + Το παράσημο χορηγείται την πρώτη φορά που απαντάς σε μια δημοσίευση μέσω ηλεκτρονικού ταχυδρομείου :ηλεκτρονική διεύθυνση:. + admin_login: + success: "Το Email απεστάλη" + error: "Σφάλμα!" + email_input: "Email διαχειριστή" + submit_button: "Αποστολή Email" + discourse_hub: + access_token_problem: "Πες σε ένα διαχειριστή: Παρακαλώ ανανεώστε τις ρυθμίσεις ιστοτόπου για να συμπερι΄λάβετε το σωστό discourse_org_access_key." + performance_report: + initial_post_raw: Αυτό το θέμα περιλαμβάνει καθημερινές αναφορές απόδοσης για τη σελίδα σας. + initial_topic_title: Εκθέσεις απόδοσης ιστοσελίδας + tags: + title: "Ετικέτες" + staff_tag_disallowed: "Η επικόλληση \"%{tag}\"μπορεί να εφαρμοστεί μόνο από το προσωπικό " + staff_tag_remove_disallowed: "Η επικόλληση \"%{tag}\"μπορεί να αφαιρεθεί μόνο από το προσωπικό " + rss_by_tag: "Νήματα με ετικέτες %{tag}" + finish_installation: + congratulations: "Συγχαρητήρια, έχετε εγκαταστήσει το Discourse!" + register: + button: "Εγγραφή" + title: "Εγγραφείτε σε λογαριασμό διαχειριστή" + help: "κάνε εγγραφή με ένα καινούριο λογαριασμό για να ξεκινήσεις" + no_emails: "Δυστυχώς, δεν ορίστηκε καμιά διεύθυνση ηλεκτρονικού ταχυδρομείου του διαχειριστή κατά τη διάρκεια της εγκατάστασης, έτσι η ολοκλήρωση της διαμόρφωσης ίσως να είναι δύσκολη." + confirm_email: + title: "Επιβεβαίωσε τη διεύθυνση του ηλεκτρονικού ταχυδρομείου σου" + message: "

    Στείλαμε ηλεκτρονικό μήνυμα ενεργοποίησης στο %{email}. Παρακαλώ, ακολούθησε τις οδηγίες για να ενεργοποιήσεις τον λογαριασμό.

    Εάν δεν έρθει, ότι έχεις ρυθμίσει τα ηλεκτρονικά μηνύματα σωστά για το Discourse και έλεγχε τον φάκελο με τα Ανεπιθύμητα.

    " + resend_email: + title: "Επαναποστολή του μηνύματος ενεργοποίησης" + message: "

    Έχουμε στείλει ηλεκτρονικό μήνυμα ενεργοποίησης σε %{email}" + safe_mode: + title: "Εισαγωγή λειτουργίας ασφαλείας" + description: "Η ασφαλής λειτουργία σου επιτρέπει να εξετάσεις τον ιστότοπό σου χωρίς να φορτώσεις πρόσθετα ή εξηατομικεύσεις ιστοτόπου." + no_customizations: "Απενεργοποίησε όλες τις προσαρμογές του ιστότοπου. " + only_official: "Απενεργοποίησε ανεπίσημα πρόσθετα" + no_plugins: "Απενεργοποίησε όλα τα πρόσθετα" + enter: "Εισαγωγή λειτουργίας ασφαλείας" + wizard: + title: "Εγκατάσταση Discourse" + step: + locale: + title: "Καλώς ήλθες στο Discourse!" + fields: + default_locale: + description: "Ποια είναι η προεπιλεγμένη γλώσσα για την κοινότητά σου;" + forum_title: + title: "Όνομα" + description: "Το όνομά σου είναι μια ορατή ταμπέλα από μακριά, το πρώτο πράγμα που οι εν δυνάμει επισκέπτες θα παρατηρήσουν για την κοινότητά σου. Τι λέει λοιπόν το όνομά σου και ο τίτλος για την κοινότητά σου;" + fields: + title: + label: "Το όνομα της κοινότητάς σου" + placeholder: "Το μέρος που συχνάζει η Jane" + site_description: + label: "Περίγραψε την κοινότητά σου σε μια σύντομη πρόταση" + placeholder: "Ένα μέρος για την Jane και τις φίλες της να συζητήσουν ωραία θέματα" + introduction: + title: "Εισαγωγή" + fields: + welcome: + label: "Νήμα καλωσορίσματος" + description: "

    HΠως θα περιέγραφες την κοινότητά σου σε έναν άγνωστο σε ένα ασανσέρ σε περίπου 1 λεπτό;

    • Για ποιον είναι αυτές οι συζητήσεις;
    • Τι μπορώ να βρω εδώ;
    • Γιατί να το επισκεφθώ;

    Το νήμα καλωσορίσματός σου είναι το πρώτο πράγμα που οι νέοι αφιχθέντες θα διαβάσουν. Σκέψου το σαν μια παράγραφος 'τα λόγια στο ασανσέρ' ή 'η αποστολή μου'.

    " + one_paragraph: "Παρακαλώ, περιόρισε το μήνυμα καλωσορίσματος σε μία παράγραφο." + privacy: + title: "Πρόσβαση" + description: "

    Η κοινότητά σου είναι ανοιχτή σε όλους, ή προϋποθέτει εγγραφή μέλους, πρόσκληση, ή έγκριση; Εάν προτιμάς, μπορείς να ρυθμίσεις κάποια πράγματα να είναι ιδιωτικά, κι έπειτα να τα κάνεις δημόσια.

    Μπορείς πάντα να στέλνεις προσκλήσεις από τα νήματα, ή από τη σελίδα του προφίλ του χρήστη, επίσης.

    " + fields: + privacy: + choices: + open: + label: "Δημόσια" + description: "Όλοι μπορούν να έχουν πρόσβαση σε αυτή την κοινότητα και να εγγραφούν σε ένα λογαριασμό" + restricted: + label: "Ιδιωτικός" + description: "Μόνο τα άτομα που έχω προσκαλέσει ή εγκρίνει μπορούν να έχουν πρόσβαση σε αυτή την κοινότητα." + contact: + title: "Επικοινωνία" + fields: + contact_email: + label: "Αλληλογραφία" + placeholder: "name@example.com" + description: "Διευθύνσεις μηνυμάτων ηλεκτρονικού ταχυδρομείου για το άτομο ή την ομάδα που είναι υπεύθυνοι για αυτή την κοινότητα. Χρησιμοποιείται για σημαντικές ειδοποιήσεις όπως σημαίες χωρίς διαχείριση, ανανεώσεις ασφάλειας και σε η σχετικά με σένα σελίδα σου για έκτακτη επικοινωνία με την κοινότητα." + contact_url: + label: "Ιστοσελίδα" + placeholder: "http://www.example.com/contact-us" + description: "Ιστοσελίδα γενικής επικοινωνίας για εσάς και τον οργανισμό σας. Θα εμφανίζεται στο Σχετικά με τη σελίδα." + site_contact: + label: "Αυτόματα Μηνύματα" + description: "Όλα τα αυτόματα προσωπικά μηνύματα του Discourse θα αποστέλλονται από αυτόν τον χρήστη. Το πιο σημαντικό, αυτός ο χρήστης θα είναι ο καθορισμένος αποστολέας για κάθε μήνυμα καλωσορίσματος που στέλνεται αυτόματα στους χρήστες." + corporate: + title: "Οργάνωση" + description: "Αυτά τα ονόματα θα υπάρχουν στην Πολιτική Προστασίας Πολιτικών Δεδομένων και στους Όρους χρήσης, που είναι νήματα τα οποία μπορείς να επεξεργαστείς στην κατηγορία του Προσωπικού. Εάν δεν έχεις εταιρεία, παράλειψε ελεύθερα αυτό το βήμα για τώρα." + fields: + company_short_name: + label: "Όνομα Εταιρείας (σύντομο)" + placeholder: "Initech" + company_full_name: + label: "Όνομα Εταιρείας (πλήρες)" + placeholder: "Initech, Inc." + company_domain: + label: "Όνομα Διαχειριστή Εταιρείας" + placeholder: "initech.com" + colors: + title: "Θέμα" + fields: + theme_id: + description: "Προτιμάτε χρωματισμό ανοιχτού ή σκούρου χρώματος για να ξεκινήσετε; Μπορείτε να εξατομικεύσετε την εμφάνιση και την αίσθηση του ιστοτόπου σας μέσω Διαχείρισης, Εξατομίκευσης" + choices: + default: + label: "Απλό Φως" + dark: + label: "Απλό σκούρο" + logos: + title: "Λογότυποι" + fields: + logo_url: + label: "Κύριο Λογότυπο" + description: "Η εικόνα του λογότυπου πάνω αριστερά της ιστοσελίδας, χρησιμοποίησε σχήμα ένα πλατύ ορθογώνιο." + logo_small_url: + label: "Μικρό λογότυπο" + description: "Μία συμπαγές εκδοχή το λογότυπό σας, εμφανίζεται στην κορυφή αριστερά της σελίδας σας, κατά την κύλιση προς τα κάτω. Χρησιμοποιήστε ένα τετράγωνο σχήμα." + icons: + title: "Εικονίδια" + fields: + favicon_url: + label: "Μικρό εικονίδιο" + description: "Εικονίδιο εικόνας που χρησιμοποιείται για να αντιπροσωπεύσει την σελίδα σας στις μηχανές αναζήτησης Ιστού που φαίνεται καλό σε μικρά μεγέθη όπως 32px σε 32px." + apple_touch_icon_url: + label: "Μεγάλο εικονίδιο" + description: "Εικονίδιο εικόνας που χρησιμοποιείται για να αντιπροσωπεύσει τη σελίδα σας στις σύγχρονες συσκευές φαίνεται καλό σε μεγαλύτερα μεγέθη. Συνιστάται το μέγεθος είναι τουλάχιστον 144px σε 144px." + homepage: + description: "Σου προτείνουμε να εμφανίζονται τα τελευταία νήματα στην αρχική σου σελίδα, αλλά μπορείς επίσης να επιλέξεις να εμφανίζονται κατηγορίες (ομάδες ή νήματα) στην αρχική σου σελίδα, εάν το προτιμάς." + title: "Αρχική Σελίδα" + fields: + homepage_style: + choices: + latest: + label: "Τελευταία θέματα" + categories: + label: "Κατηγορίες" + emoji: + title: "Emoji" + description: "Ποιο στυλ Emoji προτιμάς στην κοινότητά σου? Μπορείς να προσθέσεις πιο εξατομικευμένα Emoji αργότερα μέσω Διαχείριση, Εξατομίκευση, Emoji." + invites: + title: "Πρόσκληση προσωπικού" + description: "Είσαι σχεδόν έτοιμος! Ας προσκαλέσουμε κάποια μέλη του προσωπικού να βοηθήσουν εμπλούτισε τις συζητήσεις σας με ενδιαφέροντα νήματα και απαντήσεις για να ξεκινήσεις την κοινότητά σου. " + finished: + title: "Το Discourse σου είναι έτοιμο!" + description: | +

    Αν ποτέ θελήσεις να αλλάξεις αυτές τις ρυθμίσεις, επισκέψου σελίδα διαχείρισης; θα τη βρεις δίπλα στο εικονίδιο του εργαλείου στο μενού ιστοτόπου.

    +

    Καλή διασκέδαση και καλή επιτυχία φτιάχνοντας τη νέα σου κοινότητα!

    + activemodel: + errors: + <<: *errors diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index 090b3bca00..b2eb4e45da 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -137,7 +137,6 @@ en: <<: *errors invite: - accept_invite: "Accept Invitation" not_found: "Your invite token is invalid. Please contact the site's administrator." bulk_invite: @@ -372,7 +371,7 @@ en: 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." - unique_characters: "has too few unique characters. Please use a more secure password." + unique_characters: "has too many repeated characters. Please use a more secure password." ip_address: signup_not_allowed: "Signup is not allowed from this account." color_scheme_color: @@ -493,7 +492,7 @@ en: 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." + edit_post: "You've reached the maximum 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." @@ -871,8 +870,8 @@ en: 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.' + 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, s3_use_iam_profile, 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, s3_use_iam_profile, 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." @@ -924,8 +923,6 @@ en: 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\"" @@ -949,6 +946,7 @@ en: 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?" + same_site_cookies: "Use same site cookies, they eliminate all vectors Cross Site Request Forgery on supported browsers (Lax or Strict). Warning: Strict will only work on sites that force login and use SSO." 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" @@ -1041,7 +1039,7 @@ en: min_username_length: "Minimum username length in characters. WARNING: if any existing users or groups have names shorter than this, your site will break!" max_username_length: "Maximum username length in characters. WARNING: if any existing users or groups have names longer than this, your site will break!" - reserved_usernames: "Usernames for which signup is not allowed." + reserved_usernames: "Usernames for which signup is not allowed. Wildcard symbol * can be used to match any character zero or more times." min_password_length: "Minimum password length." min_admin_password_length: "Minimum password length for Admin." @@ -1122,6 +1120,9 @@ en: 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." + max_logins_per_ip_per_hour: "Maximum number of logins allowed per IP address per hour" + max_logins_per_ip_per_minute: "Maximum number of logins allowed per IP address per minute" + 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." @@ -1425,8 +1426,6 @@ en: 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." @@ -1672,7 +1671,7 @@ en: 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: + If you wish to confirm this, please click this link: %{confirm_unsubscribe_link} @@ -1697,8 +1696,6 @@ en: %{invite_link} - This invitation is from a trusted user, so you can reply to the discussion immediately. - custom_invite_mailer: title: "Custom Invite Mailer" subject_template: "%{invitee_name} invited you to '%{topic_title}' on %{site_domain_name}" @@ -1721,8 +1718,6 @@ en: %{invite_link} - This invitation is from a trusted user, so you can reply to the discussion immediately. - invite_forum_mailer: title: "Invite Forum Mailer" subject_template: "%{invitee_name} invited you to join %{site_domain_name}" @@ -1737,8 +1732,6 @@ en: %{invite_link} - This invitation is from a trusted user, so an account will be created for you automatically using this email address. - custom_invite_forum_mailer: title: "Invite Forum Mailer" subject_template: "%{invitee_name} invited you to join %{site_domain_name}" @@ -1757,8 +1750,6 @@ en: %{invite_link} - This invitation is from a trusted user, so an account will be created for you automatically using this email address. - invite_password_instructions: title: "Invite Password Instructions" subject_template: "Set password for your %{site_name} account" @@ -1770,6 +1761,18 @@ en: (If the link above has expired, choose "I forgot my password" when logging in with your email address.) + download_backup_mailer: + title: "Download Backup Mailer" + subject_template: "[%{site_name}] Site Backup Download" + text_body_template: | + Here's the [site backup download](%{backup_file_path}) you requested. + + We sent this download link to your validated email address for security reasons. + + (If you *didn't* request this download, you should be seriously concerned -- someone has admin access to your site.) + no_token: | + Sorry, this backup download link has already been used or has expired. + test_mailer: title: "Test Mailer" subject_template: "[%{site_name}] Email Deliverability Test" @@ -2489,7 +2492,6 @@ en: follow_topic: "Follow this topic" join_the_discussion: "Read More" popular_posts: "Popular Posts" - from_topic_label: "From" more_new: "New for you" 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}." @@ -3353,7 +3355,7 @@ en: 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." + description: "All automated Discourse personal messages will be sent from this user, such as the welcome message sent to each new user." corporate: title: "Organization" diff --git a/config/locales/server.es.yml b/config/locales/server.es.yml index 164224a191..23df8dea9f 100644 --- a/config/locales/server.es.yml +++ b/config/locales/server.es.yml @@ -95,7 +95,7 @@ es: other: tiene una longitud incorrecta (debería ser de %{count} caracteres) other_than: "debe ser distinto de %{count}" template: - body: 'Ha habido problemas con los siguientes campos:' + body: 'Hubo problemas con los siguientes campos:' header: one: 1 error impidió guardar este %{model} other: '%{count} errores impidieron guardar este %{model}' @@ -109,7 +109,6 @@ es: default_categories_already_selected: "No se puede seleccionar una categoría ya utilizada en otra lista." s3_upload_bucket_is_required: "No se pueden activar las subidas a S3 a menos que se haya proporcionado un valor a 's3_upload_bucket'." invite: - accept_invite: "Aceptar invitación" not_found: "El código de la invitación es inválido. Por favor, ponte en contacto con un administrador." bulk_invite: file_should_be_csv: "El archivo subido debería ser de formato csv." @@ -246,13 +245,13 @@ es: Para más consejos, [visita las directrices de nuestra comunidad](/guidelines). Este panel solo aparecerá para tus primeros %{education_posts_text}. avatar: | - ### ¿Qué tal si añades una imagen para tu cuenta? + ### Por qué no una imagen para tu cuenta? - Has publicado algunos temas y comentarios, pero tu imagen de perfil no es tan destacada como tu escritura -- es sólo una letra. + Has publicado pocos temas y respuestas, pero tu imagen de perfil no es único como lo eres tú., es sólo una letra. - ¿Has considerado **[visitar tu perfil de usuario](%{profile_path})** y subir una imagen que te guste? + Has considerado **[visitar tu perfil](%{profile_path})** y subir una imagen que te represente? - ¡Al tener todos imagen de perfil es mucho más fácil seguir las conversaciones y encontrar gente interesante! + Es más fácil seguir debates y encontrar personas interesantes en las conversaciones cuando todos tienen una imagen de perfil única! sequential_replies: | ### Considera la posibilidad de responder a varios posts a la vez @@ -267,6 +266,14 @@ es: Este tema es muy importante para ti – has publicado más del %{percent}% de las respuestas aquí. ¿Estás seguro de que estás proporcionando el tiempo adecuado para que otras personas puedan ofrecer también sus puntos de vista? + get_a_room: | + ### Puedes responderles a otras personas + + Has respondido %{count} veces a @%{reply_username} sólo en este tema. + + Has considerado que puedes responder a las otras personas en el debate también? Una buena conversación incluye muchas respuestas y perspectivas. + + Si necesitas mantener la conversación con ese usuario en particular, puedes [enviarle un mensaje privado](/users/%{reply_username}). too_many_replies: | ### Has alcanzado el límite de respuestas para este tema @@ -309,6 +316,7 @@ es: same_as_username: "es la misma que tu nombre de usuario. Por favor, escoge una contraseña más segura." same_as_email: "es el mismo que tu email. Por favor, utiliza una contraseña más segura." same_as_current: "es la misma que tu contraseña actual." + unique_characters: "tiene demasiados caracteres repetidos. Por favor usa una contraseña más segura." ip_address: signup_not_allowed: "El registro no está permitido para esta cuenta." color_scheme_color: @@ -511,7 +519,6 @@ es: title: 'Restablecer contraseña' success: "Has cambiado tu contraseña correctamente y ahora has iniciado sesión." success_unapproved: "Has cambiado tu password correctamente." - continue: "Continuar a %{site_name}" change_email: confirmed: "Tu email ha sido actualizado." please_continue: "Continuar a %{site_name}" @@ -782,8 +789,8 @@ es: facebook_config_warning: 'El servidor está configurado para permitir crear una cuenta e ingresar utilizando Facebook (enable_facebook_logins), pero los valores id y secreto de la app no están configurados. Ingresa a la Configuración del Sitio y actualiza la configuración. Revisa la guía para aprender más.' twitter_config_warning: 'El servidor está configurado para permitir crear una cuenta e ingresar utilizando Twitter (enable_twitter_logins), pero los valores clave y secreto de la app no están configurados. Ingresa a la Configuración del Sitio y actualiza la configuración. Revisa la guía para aprender más.' github_config_warning: 'El servidor está configurado para permitir crear una cuenta e ingresar utilizando GitHub (enable_github_logins), pero los valores de cliente clave y cliente secreto no están configurados. Ingresa a la Configuración del Sitio y actualiza la configuración. Revisa la guía para aprender más.' - s3_config_warning: 'El servidor está configurado para permitir actualizar los archivos a s3, pero por al menos una de las siguientes configuraciones no está realizada: s3_access_key_id, s3_secret_access_key o s3_upload_bucket. Ve a la Configuración del Sitio y actualiza la configuración. Revisa "How to set up image uploads to S3?" para aprender más.' - s3_backup_config_warning: 'El servidor está configurado para permitir subir las copias de seguridad a s3, pero al menos una de las siguientes configuraciones no está realizada: s3_access_key_id, s3_secret_access_key o s3_backup_bucket. Ve a la Configuración del Sitio y actualiza la configuración. Revisa "How to set up image uploads to S3?" para aprender más.' + s3_config_warning: 'El servidor está configurado para permitir subir los archivos a s3, pero por al menos una de las siguientes configuraciones no está realizada: s3_access_key_id, s3_secret_access_key o s3_upload_bucket. Ve a la Configuración del Sitio y actualiza la configuración. Revisa "How to set up image uploads to S3?" para aprender más.' + s3_backup_config_warning: 'El servidor está configurado para permitir subir los archivos a s3, pero por al menos una de las siguientes configuraciones no está realizada: s3_access_key_id, s3_secret_access_key o s3_upload_bucket. Ve a la Configuración del Sitio y actualiza la configuración. Revisa "How to set up image uploads to S3?" para aprender más.' image_magick_warning: 'El servidor está configurado para permitir miniaturas de imágenes grandes, pero ImageMagick no está instalado. Instala ImageMagick usando tu administrador de paquetes favorito o descárgate la última versión.' failing_emails_warning: 'Hay %{num_failed_jobs} jobs de email que fallaron. Revisa tu app.yml y asegúrate que la configuración del servidor de mail es correcta. Mira los jobs fallados en Sidekiq.' subfolder_ends_in_slash: "La configuación del subdirectorio no es correcta; el campo DISCOURSE_RELATIVE_URL_ROOT termina con una barra." @@ -835,7 +842,6 @@ es: max_image_width: "Ancho máximo de las miniaturas de las imágenes en un post" max_image_height: "Alto máximo de las miniaturas de las imágenes en un post" category_featured_topics: "Número de temas mostrados por categoría en la página /categories. Este cambio puede tardar hasta 15 minutos en verse reflejado" - show_subcategory_list: "Mostrar la lista de subcategorías en vez de la lista de temas cuando entras a una categoría." fixed_category_positions: "Si está marcado, podrás ordenar las categorías en un orden fijado. Si no, las categorías se mostrarán según su actividad reciente." fixed_category_positions_on_create: "Al marcar esta opción, el orden de las categorías se mantendrá en el diálogo de creación de temas (requiere fixed_category_positions)." add_rel_nofollow_to_user_content: "Añadir la etiqueta rel nofollow a todo el contenido introducido por los usuarios, excepto por los enlaces entrantes (incluyendo dominios padre). Si cambias esto, deberás hacer un rebake de todos los posts con: \"rake posts:rebake\"" @@ -856,6 +862,7 @@ es: email_custom_headers: "Lista de emails separados por una barra" email_subject: "Formato de asunto personalizable para emails estándar. Mira https://meta.discourse.org/t/customize-subject-format-for-standard-emails/20801" force_https: "Forzar al sitio a utilizar sólo HTTPS. AVISO: ¡NO actives esta opción a menos que verifiques completamente la configuración y funcione correctamente en todas partes! ¿Has verificado también que el CDN, los inicios de sesión social y cualquier logo externo / dependencia son compatibles con HTTPS?" + same_site_cookies: "Utilizar las mismas cookies del sitio, que elimina todos los vectores Cross Site Request Forgery en los navegadores soportados (Lax o Strict). Aviso: Strict solo funcionará en sitios que fuerzan el inicio de sesión y usan SSO." summary_score_threshold: "La puntuación mínima requerida para que un post sea incluido en el 'Resumen de este tema\"" summary_posts_required: "El mínimo número de posts en un tema para habilitar el 'Resumen de este tema'" summary_likes_required: "Mínimo de \"me gusta\" en un tema para habilitar 'Resumen de este tema'" @@ -930,11 +937,12 @@ es: invite_passthrough_hours: "Durante cuánto tiempo, en horas, un usuario puede utilizar una clave de invitación redimida para iniciar sesión iniciar sesión" invite_only: "El registro público está deshabilitado, todos los nuevos usuarios deberán ser invitados explícitamente por otros miembros de la comunidad o por el staff." login_required: "Se requiere haber iniciado sesión para leer el contenido de este sitio, deshabilita el acceso anónimo." - min_username_length: "Longitud mínima del nombre de usuario en caracteres." - max_username_length: "Longitud máxima del nombre de usuario en caracteres." + min_username_length: "Longitud mínima del nombre de usuario en caracteres. ADVERTENCIA: si existen usuarios o grupos con nombres de menor longitud que ésta, tu sitio se romperá." + max_username_length: "Longitud máxima del nombre de usuario en caracteres. ADVERTENCIA: si tienes usuarios o grupos con mayor cantidad de caracteres que ésta, tu sitio se romperá." reserved_usernames: "Nombres de usuario no permitidos en el registro." min_password_length: "Longitud mínima de contraseña." min_admin_password_length: "Longitud mínima de la contraseña para un Admin." + password_unique_characters: "Número mínimo de caracteres únicos que la contraseña debe tener." block_common_passwords: "No permitir contraseñas que están entre las 10.000 más comunes." enable_sso: "Activar single sign on a través de un sitio externo (AVISO: ¡LAS DIRECCIONES DE EMAIL SERÁN VALIDADAS POR EL SITIO EXTERNO!)" verbose_sso_logging: "Registrar diagnósticos detallados sobre el SSO en /logs" @@ -997,6 +1005,8 @@ es: max_private_messages_per_day: "Máximo número de mensajes por usuario y día." max_invites_per_day: "Máximo número de invitaciones que un usuario puede enviar al día." max_topic_invitations_per_day: "Máximo número de invitaciones a un tema que un usuario puede enviar por día." + max_logins_per_ip_per_hour: "Máximo número de inicios de sesión permitidos por direcciones IP por hora." + max_logins_per_ip_per_minute: "Máximo número de inicios de sesión permitidos por direcciones IP por minuto." alert_admins_if_errors_per_minute: "Número de errores por minuto que activa la alerta a administración. Un valor de 0 desactiva esta funcionalidad. NOTA: requiere reiniciar la instancia." alert_admins_if_errors_per_hour: "Número de errores por hora que activa la alerta a administración. Un valor de 0 desactiva esta funcionalidad. NOTA: requiere reiniciar la instancia." categories_topics: "Número de temas a mostrar en la página de /categorías." @@ -1171,7 +1181,7 @@ es: digest_posts: "El número máximo de temas populares que se mostrarán en el email de resumen." digest_other_topics: "El número máximo de temas que se mostrarán en la sección del email de resumen 'Nuevo en temas y categorías'." digest_min_excerpt_length: "Mínimo de caracteres del extracto de posts en el resumen por email." - delete_digest_email_after_days: "Suprimir los emails de resumen para aquellos usuarios que no han visto el sitio desde más de (n) días." + suppress_digest_email_after_days: "Suprimir los emails de resumen para aquellos usuarios que no han visto el sitio desde más de (n) días." digest_suppress_categories: "Suprimir estas categorías de los emails de resumen." disable_digest_emails: "Desactivar emails de resumen para todos los usuarios." email_accent_bg_color: "El color de realce utilizado como fondo en algunos elementos del HTML en los emails. Introduce un nombre de color ('red') o un valor hexadecimal ('#FF000')." @@ -1190,6 +1200,7 @@ es: user_website_domains_whitelist: "El sitio web del usuario será automáticamente verificado con estos dominios. Lista delimitada por barras |" allow_profile_backgrounds: "Permitir a los usuarios subir sus propios fondos de perfil personalizados." sequential_replies_threshold: "Número de mensajes que un usuario tiene que publicar seguidos antes de que se le recuerde sobre demasiadas respuestas consecutivas." + get_a_room_threshold: "La cantidad de posts consecutivos que un usuario publica a la misma persona en un tema para ser advertido." enable_mobile_theme: "Los dispositivos móviles utilizan un tema adaptado, con la habilidad de cambiar al estilo de sitio completo. Deshabilita esta opción si quieres utilizar una plantilla personalizada que sea completamente adaptable." dominating_topic_minimum_percent: "Qué porcentaje de posts tiene que publicar un usuario en un mismo tema hasta mostrarle un recordatorio acerca de dominar en demasía un tema." disable_avatar_education_message: "Desactivar mensaje incentivador para que los usuarios se cambien su foto de perfil." @@ -1227,7 +1238,6 @@ es: show_create_topics_notice: "Si el sitio tiene menos de 5 temas abiertos al público, mostrar un aviso pidiendo a los administradores crear más temas." delete_drafts_older_than_n_days: Eliminar borradores de más de (n) días de antigüedad. bootstrap_mode_min_users: "Mínimo número de usuarios requerido para desactivar el modo bootstrap (pon 0 para desactivar esta opción)" - vacuum_db_days: "Ejecutar VACUUM ANALYZE para reclamar espacio en la base de datos después de las migraciones. (Poner en 0 para inhabilitar)" prevent_anons_from_downloading_files: "Impedir que los usuarios anónimos descarguen archivos. ADVERTENCIA: Esto impedirá que funcione cualquier recurso del sitio publicado como adjunto." slug_generation_method: "Elegir un método de generación de slug. 'encoded' generará cadenas con código porciento. 'none' hara que no se genere slug." enable_emoji: "Habilitar emoji" @@ -1266,8 +1276,11 @@ es: max_user_api_reqs_per_day: "Número máximo de peticiones de API de usuario por clave y por día" max_user_api_reqs_per_minute: "Número máximo de peticiones de API de usuario por clave y por minuto" allow_user_api_keys: "Permitir que se generen claves de API de usuario" + allow_user_api_key_scopes: "Lista de ámbitos permitidos para las claves API de usuario" max_api_keys_per_user: "Número máximo de claves de usuario por usuario" min_trust_level_for_user_api_key: "Nivel de confianza necesario para generar claves de API de usuario" + allowed_user_api_auth_redirects: "URL permitida para autentificar redirección para claves API de usuario" + allowed_user_api_push_urls: "URL permitida para el 'server push' en claves API de usuario" tagging_enabled: "¿Activar etiquetas para los temas?" min_trust_to_create_tag: "El mínimo nivel de confianza requerido para crear una etiqueta." max_tags_per_topic: "El máximo número de etiquetas que se pueden añadir a un tema." @@ -1439,16 +1452,18 @@ es: one: "1 reporte esperando ser atendidos." other: "%{count} reportes esperando ser atendidos." unsubscribe_mailer: + title: "Darse de baja" subject_template: "Confirma que no quieres recibir más emails de %{site_title}" text_body_template: | - Alguien (posiblemente tú?) solicitó no recibir más actualizaciones por email desde %{site_domain_name} a esta dirección de email. - Si deseas confirmar esta acción, por favor haz clic en el siguiente enlace: + Alguien (¿quizá tú mismo?) ha solicitado darse de baja de los emails de %{site_domain_name} a esta dirección. + Si quieres confirmarlo, por favor haz clic en el siguiente enlace: %{confirm_unsubscribe_link} - Si quieres continuar recibiendo actualizaciones por email, por favor ignora este correo. + Si quieres continuar recibiendo emails, puedes ignorar este correo. invite_mailer: + title: "Invitar Usuario" subject_template: "%{invitee_name} te invitó a '%{topic_title}' en %{site_domain_name}" text_body_template: | %{invitee_name} te invitó a un debate @@ -1467,6 +1482,7 @@ es: Esta invitación proviene de un usuario de confianza, por lo que puedes comentar en el tema inmediatamente. custom_invite_mailer: + title: "Personalizar Invitar Usuario" subject_template: "%{invitee_name} te ha invitado a '%{topic_title}' en %{site_domain_name}" text_body_template: | %{invitee_name} te ha invitado a un debate @@ -1489,10 +1505,41 @@ es: Esta invitación viene de un usuario en el que confiamos, por lo que podrás responder inmediatamente. invite_forum_mailer: + title: "Invitación suscripción del foro" subject_template: "%{invitee_name} te invitó a unirte a %{site_domain_name}" + text_body_template: | + %{invitee_name} te ha invitado a unirte a + + > **%{site_title}** + > + > %{site_description} + + Si estás interesado, haz clic en el botón debajo: + + %{invite_link} + + Esta invitación viene de un usuario en el que confiamos, por lo que se te creará una cuenta automáticamente. custom_invite_forum_mailer: + title: "Invitación suscripción del foro" subject_template: "%{invitee_name} te ha invitado a %{site_domain_name}" + text_body_template: | + %{invitee_name} te ha invitado a + + > **%{site_title}** + > + > %{site_description} + + Mensaje de %{invitee_name}: + + %{user_custom_message} + + Si estás interesado en unirte, haz clic en el enlace debajo: + + %{invite_link} + + Esta invitación viene de un usuario en el que confiamos, por lo que se te creará una cuenta automáticamente. invite_password_instructions: + title: "Instrucciones para la contraseña del invitado" subject_template: "Asigna una contraseña para tu cuenta en %{site_name}" text_body_template: | Gracias por aceptar tu invitación a %{site_name} -- ¡te damos la bienvenida! @@ -1502,8 +1549,51 @@ es: (Si el enlace anterior ha caducado, utiliza "Olvidé mi contraseña" cuando vayas a iniciar sesión con tu dirección de email.) test_mailer: + title: "Mail de prueba" subject_template: "[%{site_name}] Prueba de envío de email" + text_body_template: | + Este es un correo electrónico de prueba de + + [**%{base_url}**][0] + + La entrega de correo electrónico es complicada. Aquí hay unas cuantas cosas importantes que deberías comprobar primero: + + - *Asegúrate* de ajustar la dirección `notification email` desde: correctamente en los ajustes de tu sitio. **El dominio especificado en la dirección "from" de los emails que envíes es el dominio contra el que se validará tu email**. + + - Entérate de como ver el código fuente del email desde tu cliente de correo, para que así puedas examinar las cabeceras para ver pistas importantes. En Gmail está la opción "mostrar original" en el menú de lista desplegable en la parte superior derecha de cada email. + + - **IMPORTANTE:** ¿Tu ISP tiene registros de DNS inversa para asociar los nombres de dominio y las direcciones IP desde donde envías los correos? [Comprueba tu registro PTR Inverso][2] aquí. Si tu ISP no introduce el puntero de registro DNS inverso adecuado, es muy improbable que cualquiera de tus correos pueda ser entregado. + + - ¿Es el [registro SPF][8] de tu dominio correcto? [Comprueba tu registro SPF][1] aquí. Ten en cuenta que TXT es el tipo de registro oficial correcto para SPF. + + - ¿Es el [registro DKIM][3] de tu dominio correcto? Esto puede mejorar significativamente la entregabilidad de correos. [Comprueba tu registro DKIM][7] aquí. + + - Si estás corriendo tu propio servidor de correo, asegúrate de que las IPs de tu servidor de correo [no están en ninguna lista negra de correos][4]. También verifica que definitivamente se está enviando un nombre de huésped "hostname" completamente cualificado que resuelva en DNS en su mensaje HELO. Si no es así, esto causará que tu correo sea denegado por muchos servicios de correo. + + -Recomendamos **enviar un email de prueba a [mail-tester.com][mt]** para verificar que todo está funcionando correctamente. + + (La forma *fácil* es crear una cuenta gratuita en [Sendgrip][sg], [SparkPost][sp], [Mailgun][mg] o [Mailjet][mj], que proveen generosamente planes de mailing gratuitos y serán adecuados para pequeñas comunidades. ¡De todas formas todavía tendrás que configurar los registros SPF y DKIM en tus DNS!) + + ¡Esperamos que recibas esta prueba de entregabilidad de correo electrónico correctamente! + + Buena suerte, + + Tus amigos de [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: + title: "Email de Nueva versión" subject_template: "[%{site_name}] Nueva versión de Discourse, actualización disponible" text_body_template: | ¡Genial, una nueva versión de [Discourse](http://www.discourse.org) está disponible! @@ -1517,6 +1607,7 @@ es: - Visita [meta.discourse.org](https://meta.discourse.org) para noticias, debates y ayuda para Discourse. new_version_mailer_with_notes: + title: "Email de Nueva versión con notas" subject_template: "[%{site_name}] actualización disponible" text_body_template: |+ ¡Genial, una nueva versión de [Discourse](http://www.discourse.org) está disponible! @@ -1535,6 +1626,7 @@ es: %{notes} queued_posts_reminder: + title: "Recordatorio de post en revisión" subject_template: one: "[%{site_name}] 1 post esperando ser revisado" other: "[%{site_name}] %{count} posts esperando ser revisados" @@ -1578,6 +1670,7 @@ es: Conforme vayas participando por aquí, te iremos conociendo más, y tus limitaciones temporales como nuevo usuario serán levantadas. Con el tiempo ganarás [niveles de confianza](https://meta.discourse.org/t/what-do-user-trust-levels-do/4924) que incluyen habilidades especiales para ayudarnos a gestionar la comunidad juntos. welcome_user: + title: "Bienvenido Usuario" subject_template: "¡Bienvenido a %{site_name}!" text_body_template: | ¡Gracias por unirte a %{site_name}! ¡Te damos la bienvenida! @@ -1590,7 +1683,28 @@ es: (Si necesitas comunicarte con [algún miembro del staff](%{base_url}/about) como nuevo usuario, puedes responder a este mensaje.) welcome_invite: + title: "Bienvenido Invitado" subject_template: "¡Bienvenido a %{site_name}!" + text_body_template: | + Gracias por aceptar tu invitación a %{site_name} -- ¡Te damos la bienvenida! + + Hemos creado automáticamente una nueva cuenta para ti: **%{username}**. Puedes cambiar tu nombre de usuario en cualquier momento visitando [tu perfil][prefs]. + + Para iniciar sesión en adelante: + + 1. Usa siempre la **misma dirección de correo** en la que recibiste tu invitación original. ¡De otra manera no seremos capaces de reconocer que eres tú! + + 2. Crea una contraseña unica para [tu perfil de usuario][prefs], y úsala para iniciar sesión. + + %{new_user_tips} + + Creemos en una comunidad con un [comportamiento civilizado](%{base_url}/guidelines). + + ¡Disfruta de tu estancia! + + (Si necesitas comunicarte por privado con [algún miembro del staff](%{base_url}/about) como nuevo usuario, puedes responder a este mensaje.) + + [prefs]: %{user_preferences_url} backup_succeeded: title: "Copia de seguridad completada con éxito" subject_template: "La copia de seguridad se completo exitosamente" @@ -1669,36 +1783,56 @@ es: subject_template: "La exportación de datos falló" text_body_template: "Lo sentimos, pero la exportación de datos falló. Por favor, verifica los registros o contacta a un miembro del staff." email_reject_insufficient_trust_level: + title: "Email rechazado, insuficiente nivel de confianza" subject_template: "[%{site_name}] Problema relacionado con el email -- Insuficiente nivel de confianza" text_body_template: | Lo sentimos, pero tu mensaje de email a %{destination} (con título %{former_title}) no ha funcionado. Tu cuenta no tiene el nivel de confianza necesario para publicar nuevos temas a esta dirección de email. Si crees que se trata de un error, contacta a un miembro del staff. email_reject_user_not_found: + title: "Email rechazado, cuenta de usuario no encontrada" subject_template: "[%{site_name}] Problema de email -- Usuario no encontrado" + text_body_template: | + Lo sentimos, pero tu mensaje de email para %{destination} (titulado %{former_title}) no se ha enviado. + + No hay una cuenta asociada con esta dirección de email. Intenta enviarlo con otra dirección de email o contacta con algún miembro del Staff. email_reject_screened_email: + title: "Email rechazado, correo bloqueado" subject_template: "[%{site_name}] Problema con el correo electrónico -- Correo bloqueado" text_body_template: | Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) se ha rechazado. No hay una cuenta asociada con esta dirección de email. Intenta enviarlo con otra dirección de email o contacta con algún miembro del Staff. email_reject_inactive_user: + title: "Email rechazado, usuario inactivo" subject_template: "[%{site_name}] Problema relacionado con el email -- Usuario inactivo" text_body_template: | Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no se entregó. La cuenta asociada a esta dirección de email no ha sido activada. Por favor activa tu cuenta antes de enviar emails. email_reject_blocked_user: + title: "Email rechazado, usuario bloqueado" subject_template: "[%{site_name}] Problema con el correo electrónico -- Usuario bloqueado" text_body_template: | Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no se entregó. La cuenta asociada a esta dirección de email ha sido bloqueada. email_reject_reply_user_not_matching: + title: "Email rechazado, el usuario no coincide" subject_template: "[%{site_name}] Problema con el correo electrónico -- Email de respuesta no esperado" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no se ha enviado. + + No hay una cuenta asociada con esta dirección de email. Intenta enviarlo con otra dirección de email o contacta con algún miembro del Staff. email_reject_no_account: + title: "Email rechazado, no hay cuenta" subject_template: "[%{site_name}] Problema con el correo electrónico -- Cuenta Desconocida" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) se ha rechazado. + + No hay una cuenta de usuario asociada con esta dirección de email. Intenta enviarlo con otra dirección de email o contacta con algún miembro del Staff. email_reject_empty: + title: "Email rechazado, email vacío" subject_template: "[%{site_name}] Problema con el correo electrónico -- Sin Contenido" text_body_template: | Lo sentimos, pero tu email para %{destination} (titled %{former_title}) no funcionó. @@ -1707,26 +1841,100 @@ es: Si estás teniendo este problema y _sí_ incluiste contenido, inténtalo de nuevo con un formato más simple. email_reject_parsing: + title: "Email rechazado, contenido erróneo" subject_template: "[%{site_name}] Problema con el correo electrónico -- Contenido erróneo" text_body_template: | Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no funcionó. No hemos encontrado tu respuesta en el email. **Asegúrate de escribir tu entera respuesta al principio del email** - no podemos analizar respuestas entre líneas. email_reject_invalid_access: + title: "Email rechazado, acceso inválido" subject_template: "[%{site_name}] Error de email -- Acceso no válido" + text_body_template: | + Lo sentimos, pero tu mensaje por email a %{destination} (titled %{former_title}) no funcionó. + + Tu cuenta no tiene los privilegios para publicar nuevos temas en esa categoría. Si crees que esto es un error, contacta a un moderador o administrador. email_reject_strangers_not_allowed: + title: "Rechazar emails desconocidos No permitido" subject_template: "[%{site_name}] Error de email -- Acceso no válido" + text_body_template: |+ + Lo sentimos, pero tu mensaje de email para %{destination} (titulado %{former_title}) no fue aceptado. + + + La categoría donde intentas enviar tu email solo acepta respuestas desde usuarios válidos con correos conocidos. Si tu crees que ves esto por error, contacta con algún administrador o moderador. + + email_reject_invalid_post: + title: "Email rechazado, post inválido" + subject_template: "[%{site_name}] Problemas del Email -- Posting error" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) se ha rechazado. + + Posibles causas: formato complejo, mensaje demasiado extenso o demasiado breve. Por favor, inténtalo de nuevo, o bien publícalo en el foro. + email_reject_invalid_post_specified: + title: "Email Rechazado, Post Especificado Inválido" + subject_template: "[%{site_name}] Problema con el correo electrónico -- Error de publicación" + text_body_template: | + Lo sentimos, pero tu mensaje de email para %{destination} (titled %{former_title}) no funcionó. + + Razón: + + %{post_error} + + Si puedes corregir el problema sugerido, por favor inténtalo de nuevo. + email_reject_invalid_post_action: + title: "Email Rechazado, Acción de Post Inválida" + subject_template: "[%{site_name}] Email Error -- Acción de Post Inválida" + text_body_template: | + Lo sentimos, pero tu mensaje de email para %{destination} (titled %{former_title}) no funcionó. + + La "Post Action" no fue reconocida. Por favor prueba luego o envía el mensaje desde el sitio web de forma tradicional si el error continua. email_reject_reply_key: + title: "El email rechazó la clave de respuesta" subject_template: "[%{site_name}] Problema con el correo electrónico -- Clave de Respuesta Desconocida" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) se ha rechazado. + + La clave de respuesta proporcionada no es válida o es desconocida, por lo que no sabemos a qué responde este email. Contacta con algún miembro del staff. + email_reject_bad_destination_address: + title: "Email rechazado, mala dirección del destinatario" + subject_template: "[%{site_name}] Problema con el email -- Dirección desconocida" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no funcionó. + + Ninguna de las direcciones de emails ha sido reconocida. Por favor asegúrate de que estás enviando los correos a las direcciones correctas provistas por los administradores. email_reject_topic_not_found: + title: "Email rechazado, tema no encontrado" subject_template: "[%{site_name}] Problema con el correo electrónico -- Tema no encontrado" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no funcionó. + + El tema al que estás respondiendo ya no existe, quizá debe haber sido eliminado? Si crees que esto es un error, contacta a un administrador. email_reject_topic_closed: + title: "Email rechazado, tema cerrado" subject_template: "[%{site_name}] Problema con el correo electrónico -- Tema cerrado" + text_body_template: | + Lo sentimos, pero tu email para %{destination} (titulado %{former_title}) no funcionó. + + El tema actualmente está cerrado y no acepta más respuestas. Si crees que esto es un error, contacta a un administrador. email_reject_auto_generated: + title: "Email autogenerado rechazado" subject_template: "[%{site_name}] Problema con el correo electrónico -- Respuesta Auto Generada" + text_body_template: | + Lo sentimos, pero tu mensaje de correo electrónico para %{destination} (titulado %{former_title}) no funcionó. + + Tu respuesta de correo fue marcada como "generada automáticamente", lo que significa que fue creado automáticamente por una computadora, en vez de un ser humano; no aceptamos este tipo de emails. Si crees que se trata de un error contacta con un administrador. email_error_notification: + title: "Email, error de notificación" subject_template: "[%{site_name}] Problema con el correo electrónico -- Error de autenticación POP" + text_body_template: |+ + Hubo un error de autenticación mientras se ejecutaba el polling de los emails desde el servidor POP. + + Por favor, asegúrate de que se han configurado las credenciales POP correctamente en los [ajustes del sitio](%{base_url}/admin/site_settings/category/email). + + Si dispones de una interfaz de usuario web para la cuenta de correo POP, es posible que debas iniciar sesión allí y comprobar su configuración. + too_many_spam_flags: + title: "Demasiadas banderas por Spam" subject_template: "Nueva cuenta retenida" text_body_template: | Hola, @@ -1737,6 +1945,7 @@ es: Para más información sobre lo que consideramos adecuado, lee las [directrices de la comunidad](%{base_url}/guidelines). too_many_tl3_flags: + title: "Demasiadas banderas NC3" subject_template: "Nueva cuenta retenida" text_body_template: | Hola, @@ -1747,6 +1956,7 @@ es: Para más información sobre lo que consideramos adecuado, lee las [directrices de la comunidad](%{base_url}/guidelines). blocked_by_staff: + title: "Bloqueado por Staff" subject_template: "Cuenta temporalmente retenida" text_body_template: | Hola, @@ -1758,6 +1968,7 @@ es: Para más información sobre lo que consideramos adecuado, lee las [directrices de la comunidad](%{base_url}/guidelines). user_automatically_blocked: + title: "Usuario Bloqueado Automaticamente" subject_template: "Nuevo usuario %{username} bloqueado por las \"banderas\" de la comunidad." text_body_template: | Este es un mensaje automático. @@ -1768,6 +1979,7 @@ es: Esto puede ser cambiado con el ajuste `block_new_user`. spam_post_blocked: + title: "Post con Spam Bloqueado" subject_template: "El nuevo usuario %{username} tiene posts bloqueados debido a repetición de enlaces." text_body_template: | Este es un mensaje automático. @@ -1778,6 +1990,7 @@ es: Esto puede ser modificado con los ajustes`newuser_spam_host_threshold` y`white_listed_spam_host_domains`. unblocked: + title: "Desbloqueado" subject_template: "Cuenta no retenida" text_body_template: | Hola, @@ -1786,6 +1999,7 @@ es: Ahora puedes crear temas, y responder a otros usuarios. Gracias por tu paciencia. pending_users_reminder: + title: "Recordatorio de usuarios pendientes de revisión" subject_template: one: "1 usuario esperando aprobación" other: "%{count} usuarios esperando aprobación" @@ -1794,9 +2008,11 @@ es: [Por favor, revisa esto en la sección de administración](%{base_url}/admin/users/list/pending). download_remote_images_disabled: + title: "Descargar imágenes remotas deshabilitado" subject_template: "Inhabilitar la descarga de imágenes remotas" text_body_template: "La opción `download_remote_images_to_local` ha sido inhabilitada porque se ha llegado al límite de espacio en disco configurado en `download_remote_images_threshold`." dashboard_problems: + title: "Problemas en Dashboard " subject_template: "Se han encontrado problemas" text_body_template: | Algunos problemas han sido reportados en el panel de administración. @@ -1952,6 +2168,7 @@ es: %{respond_instructions} user_watching_first_post: + title: "Usuarios vigilando el primer Post" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1962,6 +2179,7 @@ es: %{respond_instructions} user_posted_pm: + title: "Usuario envió un MP" subject_template: "[%{site_name}] [MP] %{topic_title}" text_body_template: | %{header_instructions} @@ -1972,6 +2190,7 @@ es: %{respond_instructions} user_posted_pm_staged: + title: "El usuario envió un MP" subject_template: "%{optional_re}%{topic_title}" text_body_template: |2 @@ -1989,7 +2208,7 @@ es: follow_topic: "Seguir este tema" join_the_discussion: "Leer más" popular_posts: "Temas populares" - from_topic_label: "Formulario" + more_new: "Nuevo para ti" subject_template: "Resumen de [%{site_name}]" unsubscribe: "Este resumen se envía desde %{site_link} cuando pasa un tiempo desde tu última visita. Para cancelar tu suscripción %{unsubscribe_link}." click_here: "clic aquí" @@ -2005,6 +2224,7 @@ es: view_this_topic: "Visita este tema" back_to_top: "Volver al inicio" forgot_password: + title: "Olvidé la Contraseña" subject_template: "[%{site_name}] Restablecer contraseña" text_body_template: | Alguien ha pedido restablecer tu contraseña en [%{site_name}](%{base_url}). @@ -2014,6 +2234,7 @@ es: Haz clic en el siguiente enlace para cambiar tu contraseña: %{base_url}/users/password-reset/%{email_token} set_password: + title: "Pon una contraseña" subject_template: "[%{site_name}] Establecer contraseña" text_body_template: | Se ha solicitado añadir una contraseña a tu cuenta en [%{site_name}](%{base_url}). Otra opción es iniciar sesión usando cualquier servicio online soportado (Google, Twitter, etc) que esté asociado con esta dirección de email validada. @@ -2023,6 +2244,7 @@ es: Haz clic en el siguiente enlace para escoger una contraseña: %{base_url}/users/password-reset/%{email_token} admin_login: + title: "Admin Login" subject_template: "[%{site_name}] inicio sesión" text_body_template: | Alguien pidió iniciar sesión con tu cuenta en [%{site_name}](%{base_url}). @@ -2032,6 +2254,7 @@ es: Haz clic en el siguiente enlace para iniciar sesión: %{base_url}/users/admin-login/%{email_token} account_created: + title: "Cuenta creada" subject_template: "[%{site_name}] Tu nueva cuenta" text_body_template: | Una nueva cuenta ha sido creada por ti en %{site_name} @@ -2039,12 +2262,14 @@ es: Pulsa en el siguiente enlace para escoger una contraseña para tu nueva cuenta: %{base_url}/users/password-reset/%{email_token} confirm_new_email: + title: "Confirmar Nuevo Email" subject_template: "[%{site_name}] Confirma tu nueva dirección de email" text_body_template: | Confirma tu nueva dirección de email para %{site_name} haciendo clic en el siguiente enlace: %{base_url}/users/authorize-email/%{email_token} confirm_old_email: + title: "Confirmar Viejo Email" subject_template: "[%{site_name}] Confirma tu dirección actual de email" text_body_template: | Antes de cambiar tu dirección de correo electrónico, necesitamos que confirmes que tienes acceso a dicho email. Después de completar este paso, podrás confirmar la nueva dirección de correo electrónico. @@ -2053,6 +2278,7 @@ es: %{base_url}/users/authorize-email/%{email_token} notify_old_email: + title: "Antiguo email de notificaciones" subject_template: "[%{site_name}] Tu dirección de email ha sido cambiada" text_body_template: | Este es un mensaje automático que se ha generado para comunicarte que tu email para el sitio %{site_name} ha sido modificado. Si ha habido un error, por favor contacta al administrador. @@ -2061,6 +2287,7 @@ es: %{new_email} signup_after_approval: + title: "Entra después de ser aprobado" subject_template: "¡Tu solicitud ha sido aprobada en %{site_name}!" text_body_template: | ¡Te damos la bienvenida a %{site_name}! @@ -2080,6 +2307,7 @@ es: (Si necesitas comunicarte por privado con [algún miembro del staff](%{base_url}/about) como nuevo usuario, puedes responder a este mensaje.) signup: + title: "Registrate" subject_template: "[%{site_name}] Confirma tu nueva cuenta" text_body_template: | ¡Bienvenido a %{site_name}! @@ -2113,6 +2341,7 @@ es: too_large: "Lo sentimos, el archivo que estás intentando subir es demasiado grande (el tamaño máximo es %{max_size_kb}%KB)." images: too_large: "Lo sentimos, la imagen que estás intentando subir es demasiado grande (el tamaño máximo es %{max_size_kb}%KB). Por favor, modifica sus dimensiones y prueba otra vez." + larger_than_x_megapixels: "Perdón, la imagen que intentas subir es demasiado grande (tamaño máximo %{max_image_megapixels}-megapixels), por favor hazla mas pequeña e inténtalo de nuevo." size_not_found: "Lo sentimos, pero no hemos podido determinar el tamaño de la imagen. ¿Quizás el archivo está corrupto?" avatar: missing: "Lo sentimos, no hemos encontrado un avatar asociado a esa dirección de email. ¿Puedes intentar subirlo de nuevo?" @@ -2698,8 +2927,6 @@ es: performance_report: initial_post_raw: Este tema contiene informes diarios sobre el rendimiento de tu sito. initial_topic_title: Informe sobre el rendimiento del sitio - topic_invite: - user_exists: "Lo sentimos, ese usuario ya ha sido invitado. Solo se puede invitar una vez a un usuario a un tema." tags: title: "Etiquetas" staff_tag_disallowed: "La etiqueta \"%{tag}\" solo puede ser insertada por moderadores." @@ -2739,16 +2966,20 @@ es: fields: title: label: "El nombre de la comunidad" + placeholder: "Jane’s Hangout" site_description: label: "Describe tu comunidad en una frase corta" + placeholder: "Un sitio para Jane y sus amigos donde discutir cosas interesantes" introduction: title: "Introducción" fields: welcome: label: "Tema de bienvenida" + description: "

    ¿Cómo le describirías tu comunidad a un desconocido en alrededor de 1 minuto?

    • ¿A quién están enfocado el contenido?
    • ¿Qué puedo encontrar aquí?
    • ¿Por qué debería visitar esta página
    • Tu tema de bienvenida es la primera cosa que los nuevos visitantes verán. Piensa que es el párrafo que define tu comunidad.

      " one_paragraph: "El mensaje de bienvenida no debería ser más de un párrafo." privacy: title: "Acceso" + description: "

      ¿Es tu comunidad abierta a todo el mundo o está restringida a ciertos miembros, ya sea por invitación o aprobación? Si lo prefieres, puedes hacer que sea privada, y hacerla pública más tarde.

      Recuerda que siempre puedes enviar invitaciones desde temas, o desde tu página de perfil.

      " fields: privacy: choices: @@ -2774,6 +3005,7 @@ es: description: "Todos los mensajes privados automáticos de Discourse serán mandados desde este usuarios. Más importante, este usuario será el que envíe el mensaje de bienvenida que se manda automáticamente a todos los usuarios." corporate: title: "Organización" + description: "Estos nombres se usarán en tu Política de privacidad y Términos y condiciones, que podrás editar en todo momento en la categoría Staff. Si no tienes una empresa, puedes saltarte este paso por ahora." fields: company_short_name: label: "Nombre de la empresa (corto)" @@ -2788,6 +3020,7 @@ es: title: "Tema" fields: theme_id: + description: "¿Prefieres un tema oscuro o claro para empezar? Siempre lo puedes personalizar a través del panel del Administrador." choices: default: label: "Simple y claro" @@ -2812,6 +3045,7 @@ es: label: "Icono grande" description: "Icono usado para representar tu página en dispositivos modernos y que se ve bien para tamaños grandes. El tamaño recomendado es al menos de 144px por 144px." homepage: + description: "Recomendamos mostrar los últimos temas en tu página principal, pero siempre puedes mostrar categorías (grupos de temas) en la página principal si prefieres." title: "Página de inicio" fields: homepage_style: @@ -2822,6 +3056,7 @@ es: label: "Categorías" emoji: title: "Emoji" + description: "¿Qué estilo de Emoji prefieres para tu comunidad? Siempre puedes añadir más Emojis personalizados a trvés de Admin, Personalizar, Emoji." invites: title: "Invitar staff" description: "¡Ya casi está! Invita algunos miembros del staff para ayudar a iniciar conversaciones con temas interesantes y respuestas para dar tu comunidad por empezadas." diff --git a/config/locales/server.et.yml b/config/locales/server.et.yml index a6959baca6..6324bacc68 100644 --- a/config/locales/server.et.yml +++ b/config/locales/server.et.yml @@ -34,7 +34,6 @@ et: anonymous: "Anonüümne" emails: incoming: - default_subject: "%{email} saatis kirja" show_trimmed_content: "Näita lühendatud sisu" maximum_staged_user_per_email_reached: "Meili teel loodud ettevalmistamisel olevate kasutajate maksimaalne arv on täis." errors: @@ -237,40 +236,6 @@ et: - Konstruktiivne kriitika on tervitatav aga kritiseeri *ideid*, mitte inimesi. Rohkema info saamiseks [vaata meie kommuuni juhiseid](/guidelines). See paneel ilmub ainult esimesel %{education_posts_text}. - avatar: | - ### Kuidas oleks, kui lisaksid oma kontole pildi? - - Oled postitanud mõned teemad ja vastused aga sinu profiilipilt pole hetkel sama unikaalne nagu sina... see on lihtsalt üks täht. - - Kas sa oled kaalunud **[külastada oma profiili](%{profile_path})** laadimaks üles sind ennast kujutav pilt? - - Diskussioone jälgida ja vestlustest huvitavaid inimesi leida on lihtsam, kui kõigil on unikaalne profiilipilt! - sequential_replies: | - ### Kaalu mitmele postitusele samaaegset vastamist - - Selle asemel, et vastata mitu korda järjest paljudele sõnumitele, palun kaalu ühe postituse kasutamist eelnevaid postitusi tsiteerides või kasutades viidet @nimi. - - Saad muuta oma varasemat postitust ning lisada tsitaati valides teksti ning vajutades nähtavale ilmunud nuppu tsiteeri. - - Kõigil on lihtsam lugeda teemasid, milles on põhjalikumad vastused paljude pisikeste vastuste asemel. - dominating_topic: | - ### Anna teistele mahti vestlusega liituda - - See teema on Sulle kindlasti väga tähtis – enam kui %{percent}% vastustest siin on Sinu postitatud. - - Kas oled kindel, et jätad ka teistele piisavalt aega ja võimalust oma arvamuse avaldamiseks? - too_many_replies: | - ### Oled selle teema vastuste limiidi saavutanud - - Vabandame, kuid uutele kasutajatele on ajutiselt seatud limiit %{newuser_max_replies_per_topic} vastust teema kohta. - - Uue vastuse lisamise asemel kaalu oma varasema vastuse muutmist või teiste teemade külastust. - reviving_old_topic: | - ### Vana teema taaselustamine? - - Viimane vastus sellele teemale on rohkem kui %{days} päeva vana. Sinu vastus tõstab selle teema nimekirja ette ning teavitab kõiki, kes selle teemaga seotud olid. - - Oled sa kindel, et soovid seda vana arutelu jätkata? activerecord: attributes: category: @@ -496,14 +461,11 @@ et: other: "peaaegu %{count} aastat tagasi" password_reset: no_token: "Vabandust, see parooli uuendamise link on liiga vana. Vajuta sisselogimise nuppu ja kasuta värske lingi saamiseks 'Unustasin parooli'." - choose_new: "Palun vali uus parool" - choose: "Palun vali parool" update: 'Uuenda parooli' save: 'Määra Parool' title: 'Uuenda Parool' success: "Sinu parooli muutmine õnnestus ja oled nüüd sisse logitud." success_unapproved: "Sinu parooli muutmine õnnestus." - continue: "Edasi saidile %{site_name}" change_email: confirmed: "Sinu meiliaadress on uuendatud." please_continue: "Edasi saidile %{site_name}" @@ -574,9 +536,11 @@ et: long_form: 'tähistasin selle kui spämmi' inappropriate: title: 'Ebasobiv' + description: 'Selle teema sisu on iga mõistliku inimese hinnangu järgi solvav, ahistav või rikub meie kommuuni reegleid.' long_form: 'tähistasin selle kui sobimatu' notify_moderators: title: "Miski muu" + description: 'See teema vajab saidi meeskonna tähelepanu tulenevalt juhisest, kasutustingimustest või mõnest muust põhjusest, mida pole siin mainitud.' long_form: 'tähistasin selle kui moderaatori tähelepanu vajava' email_title: 'Teema "%{title}" nõuab moderaatori tähelepanu' email_body: "%{link}\n\n%{message}" diff --git a/config/locales/server.fa_IR.yml b/config/locales/server.fa_IR.yml index 5456009bf6..ea2f176e2e 100644 --- a/config/locales/server.fa_IR.yml +++ b/config/locales/server.fa_IR.yml @@ -34,7 +34,6 @@ fa_IR: anonymous: "ناشناس" emails: incoming: - default_subject: "ایمیل دریافتی از %{email}" show_trimmed_content: "نمایش محتوای پنهان شده." maximum_staged_user_per_email_reached: "تکمیل ظرفیت تعداد حساب های کاربری با هر ایمیل." errors: @@ -202,32 +201,6 @@ fa_IR: - 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}. - 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: @@ -385,14 +358,11 @@ fa_IR: other: "حداقل %{count} سال قبل" password_reset: no_token: "متآسفیم, پیوند تغییر رمز عبور بسیار قدیمی است. دکمه ورود را انتخاب کنید و از 'من رمز عبور خود را فراموش کرده ام' برای دریافت یک پیوند جدید استفاده کنید." - choose_new: "لطفا یک رمز عبور جدید وارد کنید" - choose: "لطفا یک رمز عبور وارد کنید" update: 'به‌روز کردن گذرواژه' save: 'تنظیم رمز عبور' title: 'بازیابی گذرواژه' success: "شما با موفقیت رمز عبورتان را تغییر دادید و الان وارد سیستم هستید. " success_unapproved: "شما با موفقیت رمز عبورتان را تغییر دادید." - continue: "برو به %{site_name}" change_email: confirmed: "ایمیل شما به روز شد." please_continue: "برو به %{site_name}" @@ -611,8 +581,6 @@ fa_IR: facebook_config_warning: 'سرور تنظیم شده تا اجازه دهد به ثبت نام و وارد شدن یا فیس بوک (enable_facebook_logins), ولی ID برنامه٬ ارزش های مخفی برنامه تنظیم نشده است. برو به تنظیمات سایت و بروز رسانی تنظیمات راهنما را ببین برای دانستن بیشتر.' twitter_config_warning: 'سرور تنظیم شده تا اجازه دهد برای ثبت نام و وارد شدن با تیوتر (enable_twitter_logins), ولی کلید و ارزش های مخفی تنظیم نشده شده است. برو به تنظیمات سایت بروز رسانی و تنظیمات. راهنما را ببین برای دانستن بیشتر.' github_config_warning: 'سرور تنظیم شده تا اجازه دهد برای ثبت نام و وارد شدن با GitHub (enable_github_logins), ولی مشتری و ارزش های مخقی تنظیم نشده است. برو به تنظیمات سایت بروز رسانی و تنظیمات. راهنما را ببین برای دانستن بیشتر.' - s3_config_warning: 'سرور تنظیم شده برای بارگزاری فایل به s3 ولی حداقل یکی از تنظیمات پیش رو تنظیم نشده است: s3_access_key_id, s3_secret_access_key or s3_upload_bucket. برو به تنظیمات سایت و بروز رسانی و تنظیمات. این را ببین برای بارگزاری های عکس به S3؟" برای کسب اطلاعات بیشتر .' - s3_backup_config_warning: 'سرور تنظیم شده برای بارگزاری نسخه پشتیبان به s3 ولی حداقل یکی از تنظیمات پیش رو تنظیم نشده است: : s3_access_key_id, s3_secret_access_key or s3_backup_bucket. برو به تنظیمات سایت و بروز رسانی و تنظیمات این را ببین برای تنظیم ارسال عکس ها به S3؟ " برای کسب اطلاعات بیشتر .' image_magick_warning: 'سرور تنظیم شده برای ساخت تامبنیل های عکس های بزرگ. ولی ImageMagick نصب نشده است. ImageMagick را نصب کن با استفاده از بسته مدیریت یا آخرین نسخه را دانلود کن. ' site_settings: censored_words: "کلماتی که به صورت خودکار جایگزین می شوند با ■■■■" @@ -646,7 +614,6 @@ fa_IR: max_image_width: "حداکثر عرض تامبنیل عکس ها در نوشته." max_image_height: "حداکثر طول تامبنیل عکس ها در نوشته." category_featured_topics: "تعداد جستارهای نمایش داداه شده به دسته بندی در صفحه دسته بندی ها. بعد از عوض کردن این مقدار٬ تا 15 دقیقه زمان می برد تا صفحه دسته بندی ها به روز شود. " - show_subcategory_list: "نمایش زیر دسته بندی ها به جای لیست موضوع هنگام ورود به یک دسته بندی." fixed_category_positions: "اگر چک شده باشد٬ شما این امکان را دارید تا دسته بندی ها را به ترتیب در یک نظم ثابت قرار دهید. اگر چک نشده باشد٬ دسته بندی ها بر اساس فعالیتشان قرار می گیرند. " fixed_category_positions_on_create: "اگر انتخاب شود بدین معنی است که ترتیب دسته‌ها در پنجره ایجاد یک عنوان جدید مدیریت خواهد شد (نیازمند fixed_category_positions است)." add_rel_nofollow_to_user_content: "nofollow REL را اضافه کن به تمام محتویات ارسال شده کاربر٬ بجر برای پیوندهای داخلی (به همراه دامنه های والد). اگر این را عوض کردی٬‌ باید تمام پست ها را rebake کنی با : \"rake posts:rebake\"" @@ -1004,22 +971,6 @@ fa_IR: other: "%{count} نشانه ها منتظر استفاده" invite_mailer: subject_template: "%{invitee_name} شما را دعوت کرده به %{topic_title}' در %{site_domain_name}" - text_body_template: | - %{invitee_name} شما را دعوت کرده به یک گفتگو - - > **%{topic_title}** - > - > %{topic_excerpt} - - در - - > %{site_title} -- %{site_description} - - اگر علاقه مند هستید بر روی پیوند پایین کلیک کنید:‌ - - %{invite_link} - - این دعوتنامه از طرف یک کاربر قابل اعتماد است٬ پس شما نیازی به ورود ندارید. invite_forum_mailer: subject_template: "%{invitee_name} دعوت شدید به عضویت در %{site_domain_name}" invite_password_instructions: @@ -1088,14 +1039,6 @@ fa_IR: ``` csv_export_succeeded: subject_template: "خارج کردن اطلاعات کامل شد" - text_body_template: |+ - خارج کردن فایل ها با موفقیت انجام شد! :dvd: - - - %{file_name} (%{file_size}) - - پیوند زیر برای دانلود فقط برای 48 ساعت اعتبار دارد. - csv_export_failed: subject_template: "خارج کردن فایل ها ناموفق شد" text_body_template: "ما متاسفیم٬ ولی خارج کردن اطلاعات ناموفق شد. لطفا سیستم را چک کنید یا با یکی از مدیران تماس بگیرید. " diff --git a/config/locales/server.fi.yml b/config/locales/server.fi.yml index 74e04d8ea0..3157fda146 100644 --- a/config/locales/server.fi.yml +++ b/config/locales/server.fi.yml @@ -109,7 +109,6 @@ fi: default_categories_already_selected: "Et voi valita aluetta, joka on käytössä toisella listalla" s3_upload_bucket_is_required: "Et voi ottaa s3 latausta käyttöön, jos et ole määrittänyt 's3_upload_bucket'." invite: - accept_invite: "Hyväksy kutsu" not_found: "Kutsusi tunnistusväline ei kelpaa. Ota yhteyttä sivuston ylläpitäjään." bulk_invite: file_should_be_csv: "Ladattavan tiedoston tulee olla CSV-muodossa." @@ -246,39 +245,46 @@ fi: Saadaksesi lisätietoa, [käy tutkimassa palstan säännöt](/guidelines). Tämä ohje näytetään vain kirjoittaessasi %{education_posts_text}. avatar: | - ### Miltä näyttäisi kuva käyttäjätilillesi? + ### Mitäpä jos lisäisit kuvan käyttäjätiliisi? - Olet luonut muutaman ketjun ja viestin, mutta profiilikuvasi ei ole yhtä uniikki kuin sinä -- se on pelkkä kirjain. + Olet luonut ketjuja ja kirjoittanut viestejä, mutta profiilikuvasi ei ole yhtä uniikki kuin sinä olet – se on pelkkä kirjain. - Oletko ajatellut **[vierailla käyttäjäprofiilissasi](%{profile_path})** ja lisätä itsellesi kuvan? + Oletko ajatellut **[käväistä käyttäjäprofiilissasi](%{profile_path})** ja lisätä kuvan edustamaan sinua? On helpompaa seurata keskusteluita ja löytää niistä kiinnostavia ihmisiä, kun kaikilla on uniikki profiilikuva! sequential_replies: | - ### Harkitse kaikkiin viesteihin vastaamista kerralla + ### Harkitse kaikkiin viesteihin vastaamista yhdellä kertaa - Usean peräkkäisen viestin sijaan, harkitse yhden vastauksen kirjoittamista, joka sisältää useita lainauksia aiemmista viesteistä tai @nimen mainintoja. + Usean perättäisen viestin sijaan, harkitse yhden vastauksen kirjoittamista, joka sisältää useita lainauksia aiemmista viesteistä tai @nimen mainintoja. - Voit muokata edellistä viestiäsi ja lisätä siihen lainauksen korostamalla osan lainattavan viestin tekstiä ja klikkaamalla näkyviin ilmestyvää lainaa-painiketta. + Voit muokata edellistä viestiäsi ja lisätä siihen lainauksen maalaamalla lainattavan viestin tekstiä ja klikkaamalla ilmestyvää lainaa-painiketta. - On kaikille helpompaa lukea ketjua, jossa on vähemmän pidempiä vastauksia, kuin paljon lyhyitä yksittäisiä vastauksia. + On helpompaa lukea ketjua, jossa on vähemmän pidempiä vastauksia kuin sellaista, jossa on paljon lyhyitä yksittäisiä vastauksia. dominating_topic: |+ ### Anna muidenkin osallistua keskusteluun Tämä ketju on selvästikin tärkeä sinulle – olet kirjoittanut yli %{percent}% vastauksista. - Oletko varma, että annat myös muille riittävästi aikaa jakaa omia näkökulmiaan? + Oletko varma, että annat muillekin riittävästi aikaa jakaa omia ajatuksiaan? + get_a_room: | + ### Harkitse vastaamista muillekin + Olet vastannut jo %{count} kertaa käyttäjälle @%{reply_username} tässä ketjussa. + + Oletko harkinnut vastaavasi myös *muille* keskusteluun osallistuville? Parhaissa keskusteluissa on useita ääniä ja näkökantoja. + + Jos haluat jatkaa keskustelua tämän käyttäjän kanssa edelleen, [lähetä hänelle yksityisviesti](/users/%{reply_username}). too_many_replies: | - ### Olet saavuttanut rajoituksen uusien vastausten määrästä + ### Olet kirjoittanut enimmäismäärän vastauksia tähän ketjuun - Olemme pahoillamme, mutta uusien käyttäjien viestien määrää rajoitetaan %{newuser_max_replies_per_topic} vastaukseen samassa ketjussa. + Olemme pahoillamme, mutta uusien käyttäjien viestien määrä on rajoitettu %{newuser_max_replies_per_topic} vastaukseen samassa ketjussa. - Harkitse edellisten viestiesi muokkaamista uuden viestin kirjoittamisen sijaan tai muiden ketjujen lukemista. + Harkitse edellisten viestiesi muokkaamista uuden viestin kirjoittamisen sijaan tai vieraile muissa ketjuissa. reviving_old_topic: | ### Elvytä tämä ketju? - Viimeinen vastaus tässä ketjussa on yli %{days} päivää vanha. Vastauksesi nostaa ketjun listauksen kärkeen ja lähettää ilmoituksen kaikille, jotka ovat aiemmin olleet mukana keskustelussa. + Viimeisin vastaus tähän ketjuun on %{days} päivän takaa. Vastauksesi nostaa ketjun listauksen kärkeen ja lähettää ilmoituksen kaikille, jotka ovat aiemmin olleet osallistuneet keskusteluun Oletko varma, että haluat jatkaa tätä vanhaa keskustelua? activerecord: @@ -311,8 +317,9 @@ fi: same_as_username: "on sama kuin käyttäjätunnuksesi. Valitse turvallisempi salasana." same_as_email: "on sama kuin sähköpostiosoitteesi. Valitse turvallisempi salasana." same_as_current: "on sama kuin nykyinen salasanasi." + unique_characters: "on liikaa toistuvia merkkejä. Valitse turvallisempi salasana." ip_address: - signup_not_allowed: "Kirjautuminen ei ole sallittu tälle tilille." + signup_not_allowed: "Liittyminen ei ole sallittu tälle tilille." color_scheme_color: attributes: hex: @@ -388,7 +395,7 @@ fi: email_already_used_in_category: "'%{email}' on jo käytössä alueella '%{category_name}'." cannot_delete: uncategorized: "Alueettomat-aluetta ei voi poistaa" - has_subcategories: "Aluetta ei voi poistaa, koska sillä on sisempiä alueita." + has_subcategories: "Aluetta ei voi poistaa, koska sillä on tytäralueita." topic_exists: one: "Aluetta ei voi poistaa, koska siellä on 1 ketju. Linkki ketjuun %{topic_link}." other: "Aluetta ei voi poistaa, koska siellä on %{count} ketjua. Vanhin ketju on %{topic_link}." @@ -513,7 +520,6 @@ fi: title: 'Uusi salasana' success: "Salasanan vaihto onnistui ja olet nyt kirjautuneena sisään." success_unapproved: "Salasana vaihdettu onnistuneesti." - continue: "Jatka sivustolle %{site_name}" change_email: confirmed: "Sähköpostiosoite päivitetty." please_continue: "Jatka sivustolle %{site_name}" @@ -780,12 +786,12 @@ fi: sidekiq_warning: 'Sidekiq ei ole käynnissä. Monet tehtävät, kuten sähköpostien lähettäminen, suoritetaan asynkronisesti sidekiqin avulla. Varmista, että vähintään yksi sidekiq prosessi on käynnissä. Opiskele lisää Sidekiqista täältä.' queue_size_warning: 'Jonossa olevien tehtävien määrä on %{queue_size}, joka on korkea. Tämä voi olla merkki ongelmista Sidekiq prosess(e)issa tai sinun voi täytyä lisätä Sidekiq workerien määrää.' memory_warning: 'Palvelimella on alle 1GB muistia. Vähintään 1 GB muistia on suositeltavaa.' - google_oauth2_config_warning: 'Palvelin on konfiguroitu hyväksymään kirjautuminen Google OAuth2:n kautta (enable_google_oauth2_logins), mutta client id ja client secret arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja tästä oppaasta.' - facebook_config_warning: 'Palvelin on konfiguroitu hyväksymään kirjautuminen Facebookin kautta (enable_facebook_logins), mutta app id ja app secret arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja tästä oppaasta.' - twitter_config_warning: 'Palvelin on konfiguroitu hyväksymään kirjautuminen Twitterin kautta (enable_twitter_logins), mutta salaisia arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa. Voit lukea lisätietoja tästä oppaasta.' - github_config_warning: 'Palvelin on konfiguroitu hyväksymään kirjautuminen Githubin kautta (enable_github_logins), mutta client id ja app secret arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja tästä oppaasta.' - s3_config_warning: 'Palvelin on konfiguroitu tallentamaan tiedostot s3:een, mutta vähintään yksi arvoista s3_access_key_id, s3_secret_access_key tai s3_upload_bucket ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja oppaasta "How to set up image uploads to S3?".' - s3_backup_config_warning: 'Palvelin on konfiguroitu lataamaan varmuuskopiot s3:een, mutta vähintään yksi arvoista s3_access_key_id, s3_secret_access_key tai s3_backup_bucket ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja oppaasta "How to set up image uploads to S3?".' + google_oauth2_config_warning: 'Palvelin on konfiguroitu hyväksymään liittyminen Google OAuth2:n kautta (enable_google_oauth2_logins), mutta client id ja client secret arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja tästä oppaasta.' + facebook_config_warning: 'Palvelin on konfiguroitu hyväksymään liittyminen Facebookin kautta (enable_facebook_logins), mutta app id ja app secret arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja tästä oppaasta.' + twitter_config_warning: 'Palvelin on konfiguroitu hyväksymään liittyminen Twitterin kautta (enable_twitter_logins), mutta salaisia arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa. Voit lukea lisätietoja tästä oppaasta.' + github_config_warning: 'Palvelin on konfiguroitu hyväksymään liittyminen Githubin kautta (enable_github_logins), mutta client id ja app secret arvoja ei ole asetettu. Päivitä arvot sivuston asetuksissa.Voit lukea lisätietoja tästä oppaasta.' + s3_config_warning: 'Palvelin on asetettu tallentamaan tiedostot s3:een, mutta vähintään yksi tiedoista s3_access_key_id, s3_secret_access_key tai s3_upload_bucket on asettamatta. Päivitä ne sivuston asetuksissa. Voit lukea lisätietoja oppaasta "How to set up image uploads to S3?".' + s3_backup_config_warning: 'Palvelin on asetettu tallentamaan varmuuskopiot s3:een, mutta vähintään yksi tiedoista s3_access_key_id, s3_secret_access_key tai s3_upload_bucket on asettamatta. Päivitä ne sivuston asetuksissa. Voit lukea lisätietoja oppaasta "How to set up image uploads to S3?".' image_magick_warning: 'Palvelin on konfiguroitu luomaan esikatselukuvia suurista kuvista, mutta ImageMagickia ei ole asennettu. Asenna ImageMagick paketinhallinnasta tai lataamalla uusin versio.' failing_emails_warning: 'Epäonnistuneiden sähköpostitehtävien määrä on %{num_failed_jobs}. Tarkista app.yml ja varmista, että palvelimen asetukset ovat kunnossa. Katsele epäonnistuneita tehtäviä Sidekiqissa.' subfolder_ends_in_slash: "Alihakemiston asetuksesi ei kelpaa; DISCOURSE_RELATIVE_URL_ROOT päättyy vinoviivaan." @@ -813,6 +819,7 @@ fi: max_topic_title_length: "Viestin otsikon merkkien maksimimäärä" min_private_message_title_length: "Viestin otsikon merkkien minimimäärä viestille" min_search_term_length: "Haun merkkien minimimäärä" + search_tokenize_chinese_japanese_korean: "Pakota haku käsittelemään kiinaa/japania/koreaa myös muunkielisillä sivustoilla" search_prefer_recent_posts: "Jos hakeminen suurelta palstaltasi on hidasta, tämä asetus kokeilee hakemistorakennetta, jossa tuoreimmat viestit ovat ensin" search_recent_posts_size: "Kuinka monta tuoretta viestiä pidetään hakemistossa" allow_uncategorized_topics: "Salli ketjujen luominen valitsematta aluetta. VAROITUS: Alueettomat ketjut täytyy siirtää jollekin alueelle ennen kuin poistat asetuksen käytöstä." @@ -836,7 +843,6 @@ fi: max_image_width: "Esikatselukuvan suurin sallittu leveys viestissä" max_image_height: "Esikatselukuvan suurin sallittu korkeus viestissä" category_featured_topics: "Näytettävien ketjujen lukumäärä alueittan Alueet-sivulla. Arvon muuttamisen jälkeen voi kestää jopa 15 minuuttia sivun päivittymiseen." - show_subcategory_list: "Näytä lista tytäralueista ketjulistauksen sijaan alueelle saavuttaessa." fixed_category_positions: "Jos tämä on valittuna, voit muokata alueiden järjestystä. Jos tätä ei valita, alueet järjetsetään aktiivisuuden mukaan." fixed_category_positions_on_create: "Jos tämä on valittuna, alueiden järjestys pysyy samana uuden ketjun luomisen dialogissa (edellyttää fixed_category_positions)" add_rel_nofollow_to_user_content: "Lisää rel nofollow kaikkeen käyttäjien lähettämään sisältöön, paitsi sivuston sisäisiin linkkeihin (sisältäen ylemmät verkkotunnukset). Jos muutat asetusta, sinun täytyy rakentaa viestit uudelleen komennolla: \"rake posts:rebake\"" @@ -892,11 +898,12 @@ fi: ga_domain_name: "VANHENTUNUT: Google Analytics (ga.js) -verkkotunnus, esim. mysite.com; ks. http://google.com/analytics" ga_universal_tracking_code: "Google Universal analytics (analytics.js) seurantakoodi, esim.: UA-12345678-9; katso http://google.com/analytics" ga_universal_domain_name: "Google Universal analytics (analytics.js) verkkotunnus, esim.: osoite.fi; katso http://google.com/analytics" + gtm_container_id: "Google Tag Manager -säiliön ID. Esim: GTM-ABCDEF" enable_escaped_fragments: "Käytä Googlen Ajax-sivustoille tarkoitettua API:a, jos webcrawleria ei tunnisteta. Katso https://developers.google.com/webmasters/ajax-crawling/docs/learn-more" enable_noscript_support: "Ota käyttöön noscript-tagi hakukoneiden webcrawlereille" allow_moderators_to_create_categories: "Salli valvojien luoda uusia alueita" cors_origins: "Salli lähteet CORS-pyynnöille (cross-origin request). Jokaisen lähteen pitää sisältää http:// tai https://. DISCOURSE_ENABLE_CORS asetus pitää olla valittuna ottaaksesi CORSin käyttöön." - use_admin_ip_whitelist: "Ylläpitäjät voivat kirjautua vain IP osoitteista, jotka on määritetty Seulottavien IP:iden listassa (Ylläpito > Lokit > Seulottavat IP:t)" + use_admin_ip_whitelist: "Ylläpitäjät voivat kirjautua vain IP-osoitteista, jotka on määritetty Seulottavien IP:iden listassa (Ylläpito > Lokit > Seulottavat IP:t)" top_menu: "Mitkä painikkeet näytetään kotisivun navigointipalkissa, ja missä järjestyksessä. Esimerkiksi latest|new|unread|categories|top|read|posted|bookmarks" post_menu: "Mitkä painikkeet näytetään viestin valikossa, ja missä järjestyksessä. Esimerkiksi like|edit|flag|delete|share|bookmark|reply" post_menu_hidden_items: "Piilotettavat painikkeet viestin valikosta, kunnes '...' klikataan." @@ -930,11 +937,12 @@ fi: invite_passthrough_hours: "Kuinka pitkään käyttäjä voi käyttää vastatun kutsun avainta kirjautuakseen sisään, tunneissa" invite_only: "Julkinen rekisteröityminen on otettu pois käytöstä, uuden tilin luominen vaatii kutsun muilta käyttäjiltä tai henkilökunnalta." login_required: "Vaadi kirjautumista sivuston lukemiseen, epää anonyymi pääsy." - min_username_length: "Käyttäjänimen vähimmäispituus merkeissä." - max_username_length: "Käyttäjänimen enimmäispituus merkeissä." + min_username_length: "Käyttäjänimen vähimmäispituus merkeissä. VAROITUS: Jos olemassa olevalla käyttäjällä tai ryhmällä on tätä lyhyempi nimi, sivustosi hajoaa!" + max_username_length: "Käyttäjänimen vähimmäispituus merkeissä. VAROITUS: Jos olemassa olevalla käyttäjällä tai ryhmällä on tätä pidempi nimi, sivustosi hajoaa!" reserved_usernames: "Käyttäjänimet, joiden rekisteröintiä ei sallita." min_password_length: "Salasanan vähimmäispituus." min_admin_password_length: "Ylläpitäjän salasanan vähimmäispituus." + password_unique_characters: "Vähimmäismäärä eri merkkejä salasanassa." block_common_passwords: "Älä salli salasanoja, jotka ovat 10 000 yleisimmän salasanan joukossa." enable_sso: "Ota käyttöön single sign on ulkopuolisen sivuston kautta (VAROITUS: ULKOPUOLISEN SIVUSTON TÄYTYY VALIDOIDA SÄHKÖPOSTIOSOITTEET!)" verbose_sso_logging: "Kirjaa runsaat SSO-diagnostiikat /logsiin" @@ -996,6 +1004,8 @@ fi: max_private_messages_per_day: "Viestien päivittäinen maksimimäärä per käyttäjä." max_invites_per_day: "Maksimimäärä kutsuja, jonka käyttäjä voi lähettää päivässä." max_topic_invitations_per_day: "Maksimimäärä ketjukutsuja, jonka yksittäinen käyttäjä voi lähettää päivässä" + max_logins_per_ip_per_hour: "Enimmäismäärä kirjautumisia IP-osoitetta kohden tunnissa" + max_logins_per_ip_per_minute: "Enimmäismäärä kirjautumisia IP-osoitetta kohden minuutissa" alert_admins_if_errors_per_minute: "Virheiden määrä minuutissa, jonka seurauksena hälytetään ylläpitäjä. 0 ottaa toiminnon pois käytöstä. HUOM: vaatii uudelleenkäynnistyksen." alert_admins_if_errors_per_hour: "Virheiden määrä tunnissa, jonka seurauksena hälytetään ylläpitäjä. 0 ottaa toiminnon pois käytöstä. HUOM: vaatii uudelleenkäynnistyksen." categories_topics: "Kuinka monta ketjua näytetään /keskustelualueet-sivulla" @@ -1102,7 +1112,7 @@ fi: topic_view_duration_hours: "Laske uusi ketjun katselu kerran per IP/käyttäjä joka N:s tunti" user_profile_view_duration_hours: "Laske uusi profiilin katselu kerran per IP/käyttäjä joka N:s tunti" levenshtein_distance_spammer_emails: "Verrattaessa sähköpostiosoitteita tunnettuihin roskapostittajiin, näin monen merkin ero saa vielä aikaan löydöksen." - max_new_accounts_per_registration_ip: "Jos samasta IP osoitteesta on jo (n) luottamustason 0 käyttäjätiliä (eikä yhtään henkilökunnan tai vähintään LT2), lakkaa hyväksymästä uusia rekisteröitymisiä tästä IP:stä." + max_new_accounts_per_registration_ip: "Jos samasta IP-osoitteesta on jo (n) luottamustason 0 käyttäjätiliä (eikä yhtään henkilökunnan tai vähintään LT2), lakkaa hyväksymästä uusia rekisteröitymisiä tästä IP:stä." min_ban_entries_for_roll_up: "Kun Kääri-painiketta painetaan, luodaan IP-porttikielloista aliverkon kattavia kieltoja jos kieltoja on asettu vähintään (N) määrä." max_age_unmatched_emails: "Poista osumattomat seulotut sähköpostiosoitteet (N) päivän jälkeen." max_age_unmatched_ips: "Poista osumattomat seulotut IP-osoitteet (N) päivän jälkeen." @@ -1169,7 +1179,7 @@ fi: digest_posts: "Yläraja sähköpostikoosteessa näytettävien suosittujen viestien määrälle." digest_other_topics: "Yläraja sähköpostikoosteen 'Uutta seuraamissasi ketjuissa ja alueissa' -osiossa näytettävien ketjujen määrälle." digest_min_excerpt_length: "Vähimmäispituus merkeissä viestin katkelmalle, joka näytetään sähköpostikoosteissa." - delete_digest_email_after_days: "Älä lähetä sähköpostikoosteita käyttäjille, joita ei ole nähty sivustolla yli (n) päivään." + suppress_digest_email_after_days: "Älä lähetä sähköpostikoostetta käyttäjille, jotka eivät ole vierailleet sivustolla yli (n) päivään." digest_suppress_categories: "Älä liitä näiden alueiden viestejä sähköpostikoosteisiin." disable_digest_emails: "Poista sähköpostikoosteet kaikilta käyttäjiltä." email_accent_bg_color: "Kakkosväri, jota käytetään joidenkin elementtien taustavärinä sähköpostiviesteissä. Anna värin nimi englanniksi ('red') tai sen Hex-arvo ('#FF000')." @@ -1188,6 +1198,7 @@ fi: user_website_domains_whitelist: "Käyttäjän kotisivu voi olla näiden verkkotunnusten alainen. Pystyviivoin erotettu lista." allow_profile_backgrounds: "Salli käyttäjien ladata profiilin taustakuva." sequential_replies_threshold: "Kuinka monen peräkkäisen viestin jälkeen yhdessä ketjussa käyttäjää muistutetaan peräkkäisistä vastauksista." + get_a_room_threshold: "Kuinka monta viestiä tulee kohdistaa samalle käyttäjälle samassa ketjussa, jotta näytetään varoitus." enable_mobile_theme: "Mobiililaitteet käyttävät erillistä teemaa ja kahden välillä on mahdollista vaihtaa. Poista asetus käytöstä, jos haluat käyttää omaa tyylitiedostoa, joka on mukautuva eri laitteille." dominating_topic_minimum_percent: "Kuinka monta prosenttia ketjun viesteistä käyttäjän täytyy kirjoittaa, ennen kuin tulee muistutetuksi ketjun dominoinnista." disable_avatar_education_message: "Piilota opastusviesti, joka näytetään kun profiilikuvaa vaihdetaan." @@ -1223,7 +1234,6 @@ fi: show_create_topics_notice: "Jos palstalla on vähemmän kuin 5 julkista ketjua, huomauta ylläpitäjiä ketjujen luonnista." delete_drafts_older_than_n_days: Poista yli (n) päivää vanhat luonnokset. bootstrap_mode_min_users: "Vähimmäismäärä käyttäjiä, joka vaaditaan aloitustilan poistamiseen (aseta 0 poistaaksesi käytöstä)" - vacuum_db_days: "Aja VACUUM ANALYZE vapauttaaksesi tietokannan viemää tilaa migraatioiden jälkeen (aseta 0 poistaaksesi käytöstä)" prevent_anons_from_downloading_files: "Estä kirjautumattomia käyttäjiä lataamasta liitetiedostoja. VAROITUS: tämä estää viestin liitettyjen muiden tiedostojen, kuin kuvien käyttämisen sivustolla." slug_generation_method: "Valitse polkulyhenteen luomisen metodi. 'encoded' käyttää prosenttikoodausta, 'none' poistaa polkulyhenteet käytöstä." enable_emoji: "Ota emoji käyttöön" @@ -1396,6 +1406,7 @@ fi: something_already_taken: "Jotain meni pieleen. Ehkäpä tämä käyttäjänimi tai sähköpostiosoite on jo rekisteröity. Kokeile salasana unohtui -linkkiä." omniauth_error: "Pahoittelut, tilisi tunnistautumisessa tapahtui virhe. Ehkäpä et hyväksynyt valtuutusta?" omniauth_error_unknown: "Jotain meni pieleen kirjautumisesti käsittelyssä, ole hyvä ja yritä uudelleen." + authenticator_error_no_valid_email: "Mikään tiliin %{account} liittyvistä sähköpostiosoitteista ei ole sallittu. Voit joutua määrittämään käyttäjätilisi eri sähköpostiosoitteella." new_registrations_disabled: "Uusien tilien luonti ei ole tällä hetkellä sallittu." password_too_long: "Salasanan enimmäispituus on 200 merkkiä." email_too_long: "Antamasi sähköpostiosoite on liian pitkä. Mailbox nimi ei saa olla yli 254 merkkiä pitkä, eikä domain nimi yli 253 merkkiä pitkä." @@ -1435,17 +1446,19 @@ fi: one: "Yksi liputus odottaa käsittelyä" other: "%{count} liputusta odottaa käsittelyä" unsubscribe_mailer: + title: "Peru sähköpostimuistukset" subject_template: "Vahvista, ettet enää halua, että %{site_title} lähettää sinulle sähköpostimuistutuksia." text_body_template: | - Joku (mahdollisesti sinä) pyysi, ettei sähköposti-ilmoituksia sivustolta %{site_domain_name} enää lähetettäisi tähän osoitteeseen. + Joku (mahdollisesti sinä) pyysi, ettei sivustolta %{site_domain_name} enää lähetettäisi sähköposti-ilmoituksia tähän osoitteeseen. Vahvista pyyntö klikkaamalla linkkiä: %{confirm_unsubscribe_link} Jos haluat jatkossakin saada sähköposti-ilmoituksia, voit jättää tämän viestin huomiotta. invite_mailer: + title: "Kutsu keskusteluun" subject_template: "%{invitee_name} kutsui sinut ketjuun '%{topic_title}' sivustolla %{site_domain_name}" - text_body_template: | + text_body_template: |+ %{invitee_name} kutsui sinut keskusteluun > **%{topic_title}** @@ -1460,8 +1473,8 @@ fi: %{invite_link} - Tämän kutsun lähetti luotettu käyttäjä, joten voit osallistua keskusteluun välittömästi. custom_invite_mailer: + title: "Kutsu keskusteluun saatesanoilla" subject_template: "%{invitee_name} kutsui sinut ketjuun '%{topic_title}' sivustolla %{site_domain_name}" text_body_template: | %{invitee_name} kutsui sinut keskusteluun @@ -1481,9 +1494,8 @@ fi: Jos kiinnostuit, klikkaa alla olevaa linkkiä: %{invite_link} - - Tämän kutsun lähetti luotettu käyttäjä, joten voit osallistua keskusteluun välittömästi. invite_forum_mailer: + title: "Kutsu palstalle" subject_template: "%{invitee_name} kutsui sinut sivustolle %{site_domain_name}" text_body_template: | %{invitee_name} kutsui sinut liittymään sivustolle @@ -1495,9 +1507,8 @@ fi: Jos kiinnostuit, klikkaa alla olevaa linkkiä: %{invite_link} - - Tämän kutsun lähetti luotettu käyttäjä, joten kun klikkaat, sinulle luodaan tämän sähköpostiosoitteen alainen käyttäjätili automaattisesti. custom_invite_forum_mailer: + title: "Kutsu palstalle saatesanoilla" subject_template: "%{invitee_name} kutsui sinut sivustolle %{site_domain_name}" text_body_template: | %{invitee_name} kutsui sinut liittymään sivustolle @@ -1513,9 +1524,8 @@ fi: Jos kiinnostuit, klikkaa alla olevaa linkkiä: %{invite_link} - - Tämän kutsun lähetti luotettu käyttäjä, joten kun klikkaat, sinulle luodaan tämän sähköpostiosoitteen alainen käyttäjätili automaattisesti. invite_password_instructions: + title: "Salasanaohjeistus kutsutulle" subject_template: "Aseta salasana %{site_name} -tunnuksellesi" text_body_template: | Kiitos, kun hyväksyit kutsun sivustolle %{site_name} -- tervetuloa! @@ -1525,6 +1535,7 @@ fi: (jos yllä oleva linkki on vanhentunut, valitse "unohdin salasanani" kirjautuessasi sisään sähköpostiosoitteellasi) test_mailer: + title: "Sähköpostipalvelun testaus" subject_template: "[%{site_name}] Sähköpostin toimitettavuustesti" text_body_template: | Tämä on testisähköposti osoitteesta @@ -1568,6 +1579,7 @@ fi: [mj]: https://www.mailjet.com/pricing [mt]: http://www.mail-tester.com/ new_version_mailer: + title: "Uusi versio" subject_template: "[%{site_name}] Uusi Discourse-versio, päivitys saatavilla" text_body_template: | Hurraa, uusi versio [Discoursesta](http://www.discourse.org) on saatavilla! @@ -1581,6 +1593,7 @@ fi: - Käy osoitteessa [meta.discourse.org](https://meta.discourse.org) lukemassa uutisia ja keskustelua, tai hae apua Discourseen liittyen new_version_mailer_with_notes: + title: "Uusi versio julkaisumuistiolla" subject_template: "[%{site_name}] päivitys saatavilla" text_body_template: | Hurraa, uusi versio [Discoursesta](http://www.discourse.org) on saatavilla! @@ -1598,6 +1611,7 @@ fi: %{notes} queued_posts_reminder: + title: "Viestejä jonossa" subject_template: one: "[%{site_name}] 1 viesti odottaa hyväksyntää" other: "[%{site_name}] %{count} viestiä odottaa hyväksyntää" @@ -1890,6 +1904,7 @@ fi: Järjestelmä havaitsi viestisi olevan tietokoneen automaattisesti luoma, eikä ihmisen kirjoittama, eikä sitä voitu siksi hyväksyä. Jos uskot tämän olevan virhe, ota yhteyttä henkilökuntaan. email_error_notification: + title: "Ilmoitus sähköpostivirheestä" subject_template: "[%{site_name}] Sähköpostiongelma -- POP-autentikoinnin virhe" text_body_template: | Sähköpostin pollauksessa POP-serveriltä tapahtui autentikointivirhe. @@ -1903,9 +1918,9 @@ fi: text_body_template: | Hei, - Tämä automaattinen viesti on lähetetty sivustolta %{site_name} kertoaksemme, että viestejäsi on piilotettu yhteisön liputusten perusteella. + Tämä automaattinen viesti on lähetetty sivustolta %{site_name} kertoaksemme, että viestejäsi on väliakaisesti piilotettu yhteisön liputusten perusteella. - Varotoimena uudelta tilitäsi on estetty uusien ketjujen ja viestien luonti, kunnes henkilökunnan jäsen tarkastaa tilisi. Pahoittelemme tästä aiheutuvaa vaivaa. + Varotoimena uudelta tililtäsi ei voi vastata tai luoda uusia ketjuja ennen kuin henkilökunnan jäsen tarkastaa sen. Pahoittelemme tästä aiheutuvaa vaivaa. Saadaksesi lisätietoa, tutustu [yhteisön ohjeisiin](%{base_url}/guidelines). too_many_tl3_flags: @@ -1914,22 +1929,24 @@ fi: text_body_template: | Hei, - Tämä automaattinen viesti on lähetetty sivustolta %{site_name} kertoaksemme, että tilisi on jäädytetty yhteisön liputusten perusteella. + Tämä automaattinen viesti on lähetetty sivustolta %{site_name} kertoaksemme, että tilisi on jäädytetty yhteisön useiden liputusten perusteella. - Varotoimena uudelta tilitäsi on estetty uusien ketjujen ja viestien luonti, kunnes henkilökunnan jäsen tarkastaa tilisi. Pahoittelemme tästä aiheutuvaa vaivaa. + Varotoimena uudelta tililtäsi ei voi vastata tai luoda uusia ketjuja ennen kuin henkilökunnan jäsen tarkastaa sen. Pahoittelemme tästä aiheutuvaa vaivaa. Saadaksesi lisätietoa, tutustu [yhteisön ohjeisiin](%{base_url}/guidelines). blocked_by_staff: + title: "Henkilökunta esti" subject_template: "Tili on väliaikaisesti estetty" text_body_template: | Hei, - Tämä automaattinen viesti on lähetetty sivustolta %{site_name} kertoaksemme, että tilisi on varotoimenpiteenä väliaikaisesti estetty. + Tämä automaattinen viesti on lähetetty sivustolta %{site_name} kertoaksemme, että tilisi on jäädytetty väliaikaisesti varotoimenpiteenä. - Voit jatkaa lukemista, mutta tilitäsi on estetty uusien ketjujen ja viestien luonti, kunnes [henkilökunnan jäsen](%{base_url}/about) tarkastaa viimeisimmät viestisi. Pahoittelemme tästä aiheutuvaa vaivaa. + Voit jatkaa selailua, muttet voi vastata tai luoda uusia ketjuja ennen kuin [henkilökunnan jäsen](%{base_url}/about) tarkastaa viimeisimmät viestisi. Pahoittelemme tästä aiheutuvaa vaivaa. Saadaksesi lisätietoa, tutustu [yhteisön ohjeisiin](%{base_url}/guidelines). user_automatically_blocked: + title: "Käyttäjä estetty automaattisesti" subject_template: "Uusi käyttäjä %{username} on estetty yhteisön liputusten perusteella" text_body_template: | Tämä on automaattinen viesti. @@ -1940,6 +1957,7 @@ fi: Kynnysarvoa voi muuttaa säätämällä asetuksen `block_new_user` arvoa sivuston asetuksissa. spam_post_blocked: + title: "Roskapostiviesti estetty" subject_template: "Uuden käyttäjän %{username} viestit on estetty toistuvien linkkien vuoksi" text_body_template: | Tämä on automaattisesti luotu viesti. @@ -1950,6 +1968,7 @@ fi: Tätä toimintoa voi muokata vaihtamalla asetuksia `newuser_spam_host_threshold` `white_listed_spam_host_domains` sivuston asetuksissa. unblocked: + title: "Ei enää estetty" subject_template: "Tili avattu" text_body_template: | Hei, @@ -1958,6 +1977,7 @@ fi: Voit jälleen luoda uusia viestejä ja ketjuja. Kiitos kärsivällisyydestänne. pending_users_reminder: + title: "Käyttäjiä jonossa" subject_template: one: "1 käyttäjä odottaa hyväksymistä" other: "%{count} käyttäjää odottaa hyväksymistä" @@ -1966,9 +1986,11 @@ fi: [Tarkasta hakemukset admin-alueella](%{base_url}/admin/users/list/pending). download_remote_images_disabled: + title: "Linkattuja kuvia ei ladata" subject_template: "Linkattujen kuvien lataaminen on otettu pois käytöstä" text_body_template: "Asetus `download_remote_images_to_local` on otettu pois käytöstä, koska vapaan tilan rajoitus `download_remote_images_threshold` saavutettiin." dashboard_problems: + title: "Hallintapaneelissa ongelmia" subject_template: "Ongelmia on löytynyt" text_body_template: | Ylläpitäjän hallintapaneelissa on raportoitu virheistä. @@ -2113,6 +2135,7 @@ fi: %{respond_instructions} user_posted: + title: "Käyttäjälle kirjoittiin" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -2123,6 +2146,7 @@ fi: %{respond_instructions} user_watching_first_post: + title: "Käyttäjä tarkkailee uusia ketjuja" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -2133,6 +2157,7 @@ fi: %{respond_instructions} user_posted_pm: + title: "Käyttäjälle lähetettiin YV" subject_template: "[%{site_name}] [YV] %{topic_title}" text_body_template: | %{header_instructions} @@ -2143,6 +2168,7 @@ fi: %{respond_instructions} user_posted_pm_staged: + title: "Esikäyttäjälle lähetettiin YV" subject_template: "%{optional_re}%{topic_title}" text_body_template: |2 @@ -2160,7 +2186,6 @@ fi: follow_topic: "Seuraa tätä ketjua" join_the_discussion: "Lue lisää" popular_posts: "Suosittuja viestejä" - from_topic_label: "Lähettäjä" more_new: "Uutta sinulle" subject_template: "[%{site_name}] Kooste" unsubscribe: "Tämä kooste lähetettiin sivustolta %{site_link}, koska emme ole nähneet sinua vähään aikaan. Jos et halua vastaanottaa näitä viestejä %{unsubscribe_link}." @@ -2197,6 +2222,7 @@ fi: Klikkaa tätä linkkiä valitaksesi salasanan: %{base_url}/users/password-reset/%{email_token} admin_login: + title: "Ylläpitäjäkirjautuminen" subject_template: "[%{site_name}] Kirjautuminen" text_body_template: | Joku pyysi sinua kirjautumaan tilillesi sivustolla [%{site_name}](%{base_url}). @@ -2206,6 +2232,7 @@ fi: Klikkaa tätä linkkiä kirjautuaksesi: %{base_url}/users/admin-login/%{email_token} account_created: + title: "Tili luotu" subject_template: "[%{site_name}] Uusi käyttäjätilisi" text_body_template: | Sinulle luotiin uusi käyttäjätunnus sivustolla %{site_name} @@ -2213,12 +2240,14 @@ fi: Klikkaa seuraavaa linkkiä asettaaksesi salasanan uudelle tunnuksellesi: %{base_url}/users/password-reset/%{email_token} confirm_new_email: + title: "Vahvista uusi sähköpostiosoite" subject_template: "[%{site_name}] Vahvista uusi sähköpostiosoite" text_body_template: | Vahvista uusi sähköpostiosoite sivustolle %{site_name} klikkaamalla alla olevaa linkkiä: %{base_url}/users/authorize-email/%{email_token} confirm_old_email: + title: "Vahvista vanha sähköpostiosoite" subject_template: "[%{site_name}] Vahvista nykyinen sähköpostiosoiteesi" text_body_template: |+ Ennen kuin voit vaihtaa sähköpostiosoitteesti, meidän täytyy varmistaa, että hallinnoit nykyistä sähköpostiosoitetta. Kun olet suorittanut tämän, varmistamme vielä uuden sähköpostiosoitteenkin. @@ -2228,6 +2257,7 @@ fi: %{base_url}/users/authorize-email/%{email_token} notify_old_email: + title: "Ilmoita vanhaan sähköpostiosoitteeseen" subject_template: "[%{site_name}] Sähköpostiosoitteesi on vaihdettu" text_body_template: | Tämä on automaattinen vahvistus siitä, että sähköpostiosoitteesi sivustolle %{site_name} on vaihdettu. Jos on tapahtunut virhe, ota yhteyttä sivuston ylläpitäjään. @@ -2236,6 +2266,7 @@ fi: %{new_email} signup_after_approval: + title: "Liity hyväksynnän jälkeen" subject_template: "Sinut on hyväksytty sivustolle %{site_name}!" text_body_template: | Tervetuloa sivustolle %{site_name}! @@ -2255,6 +2286,7 @@ fi: (Jos haluat keskustella [henkilökunnan jäsenten](%{base_url}/about) kanssa, vastaa vain tähän viestiin) signup: + title: "Liity" subject_template: "[%{site_name}] Vahvista uusi käyttäjätilisi" text_body_template: | Tervetuloa sivustolle %{site_name}! @@ -2655,8 +2687,6 @@ fi: performance_report: initial_post_raw: Tämä ketju sisältää päivittäisiä suorituskykyrapotteja sivustoltasi initial_topic_title: Sivuston suorituskykyraportit - topic_invite: - user_exists: "Pahoittelut, tämä käyttäjä on jo kutsuttu. Voit kutsua toisen käyttäjän ketjuun vain yhden kerran." tags: title: "Tunnisteet" staff_tag_disallowed: "Tunnisteen \"%{tag}\" voi lisätä vain henkilökunta" diff --git a/config/locales/server.fr.yml b/config/locales/server.fr.yml index a6dac465a9..9fce130ea5 100644 --- a/config/locales/server.fr.yml +++ b/config/locales/server.fr.yml @@ -35,7 +35,7 @@ fr: remove_posts_deleted_by_author: "Supprimé par l'auteur" emails: incoming: - default_subject: "Courriel entrant de %{email}" + default_subject: "Ce sujet a besoin d'un titre" show_trimmed_content: "Montrer le contenu raccourci" maximum_staged_user_per_email_reached: "Vous avez atteint le nombre maximal d'utilisateurs qui peuvent être créés par courriel." errors: @@ -74,6 +74,7 @@ fr: invalid: est invalide is_invalid: "ne semble pas clair, est-ce une phrase complète ?" contains_censored_words: "contient les mots censurés suivants : %[censored_words]" + matches_censored_pattern: "contient les mots censurés suivants qui correspondent à l'expression régulière : %{censored_words}" less_than: doit être inférieure à %{count} less_than_or_equal_to: doit être inférieur ou égal à %{count} not_a_number: n'est pas un nombre @@ -108,7 +109,7 @@ fr: default_categories_already_selected: "Vous ne pouvez pas séléctionner une catégorie qui est utilisée dans une autre liste." s3_upload_bucket_is_required: "Vous ne pouvez pas activer l'upload sur S3 avant d'avoir renseigné le 's3_upload_bucket'." invite: - accept_invite: "Accepter l'invitation" + not_found: "Votre jeton d'invitation est invalide. Veuillez contacter l'administrateur du site." bulk_invite: file_should_be_csv: "Le fichier envoyé doit être au format CSV." error: "Il y a eu une erreur en envoyant ce fichier. Merci de réessayer plus tard." @@ -243,40 +244,6 @@ fr: - Les critiques constructives sont les bienvenues, mais critiquez les *idées*, pas les gens. Pour plus d'informations, [consulter la charte de la communauté](/guidelines). Cet encart apparaîtra pour votre premier %{education_posts_text}. - avatar: | - ### Avez-vous pensé à une photo de profil ? - - Vous avez posté quelques sujets et réponses, mais votre photo de profil n'est pas unique comme vous -- c'est juste une lettre. - - Avez-vous pensé à **[visiter votre profil utilisateur](%{profile_path})** et télécharger une photo qui vous représente ? - - C'est plus facile de suivre les discussions et de rencontrer des personnes intéressantes dans les conversations lorsque tout le monde a une photo de profil unique ! - sequential_replies: | - ### Envisagez de répondre à plusieurs messages en même temps - - Plutôt que plusieurs réponses en séquence à une discussion, envisagez une seule réponse incluant plusieurs citations ou @pseudo en référence à des précédents messages. - - Vous pouvez utilisez vos précédentes réponses pour ajouter une citation en surlignant et en cliquant sur le bouton Citer. - - Il est plus facile pour tout le monde de lire des discussions avec peu de réponses mais traités avec profondeur que beaucoup de réponses individuelles courtes. - dominating_topic: | - ### Laisser les autres se joindre à la conversation - - Ce sujet est évidemment important pour vous – vous avez posté plus de %{percent}% des réponses ici. - - Êtes-vous sûr de laissez suffisamment de temps aux autres personnes afin qu'ils partagent aussi leurs points de vue? - too_many_replies: | - # # # Vous avez atteint la limite de réponse pour ce sujet - - Nous sommes désolés, mais les nouveaux utilisateurs sont temporairement limités à %{newuser_max_replies_per_topic} réponses par sujet. - - Au lieu d'ajouter une autre réponse, veuillez envisager de modifier vos réponses précédentes, ou visiter d'autres sujets. - reviving_old_topic: | - ### Déterrer ce sujet ? - - La dernière réponse à ce sujet date d'il y a plus de %{days} jours. Votre réponse va faire remonter ce sujet en haut de la liste et notifier chaque personne qui suit cette conversation. - - Êtes-vous sûr de vouloir continuer cette vieille conversation ? activerecord: attributes: category: @@ -307,6 +274,7 @@ fr: same_as_username: "est aussi votre pseudo. Veuillez utiliser un mot de passe plus sécurisé." same_as_email: "est aussi votre adresse courriel. Veuillez utiliser un mot de passe plus sécurisé." same_as_current: "est le même que votre mot de passe actuel." + unique_characters: "a trop de caractères répétés. Veuillez utiliser un mot de passe plus sécurisé." ip_address: signup_not_allowed: "L'inscription n'est pas autorisée à partir de ce compte." color_scheme_color: @@ -509,7 +477,6 @@ fr: title: 'Réinitialiser le mot de passe' success: "Vous avez modifié votre mot de passe avec succès et vous êtes maintenant connecté." success_unapproved: "Vous avez modifié votre mot de passe avec succès." - continue: "Continuez vers %{site_name}" change_email: confirmed: "Votre adresse de courriel a été mise à jour." please_continue: "Continuer vers %{site_name}" @@ -780,8 +747,6 @@ fr: facebook_config_warning: 'Le serveur est configuré pour permettre l''authentification par Facebook (enable_facebook_logins), mais les paramètres facebook_app_id et facebook_app_secret ne sont pas renseignés. Allez dans les Paramètres et mettez les à jour. Voir le guide pour en savoir plus.' twitter_config_warning: 'Le serveur est configuré pour permettre l''authentification par Twitter (enable_twitter_logins), mais les paramètres key et secret ne sont pas renseignés. Allez dans les Paramétres et mettez les à jour. Voir le guide pour en savoir plus.' github_config_warning: 'Le serveur est configuré pour permettre l''authentification par GitHub (enable_github_logins), mais les paramètres github_client_id et github_client_secret ne sont pas renseignés. Allez dans les Paramètres et mettez les à jour. Voir le guide pour en savoir plus.' - s3_config_warning: 'Le serveur est configuré pour charger les fichiers vers s3, mais au moins un de ces paramètre n''est pas configuré : s3_access_key_id, s3_secret_access_key or s3_upload_bucket. Allez dans les Paramètres pour les renseignés. Voir le guide "Comment charger les images sur S3 ?" pour en savoir plus' - s3_backup_config_warning: 'Le serveur est configuré pour envoyer les sauvegardes sur S3, mais l''un des paramètres suivants n''est pas renseigné : s3_access_key_id, s3_secret_access_key ou s3_backup_bucket. Allez dans les Paramètres et mettez les à jour. Voir « Comment mettre en place une sauvegarde sur S3 ? » pour en savoir plus.' image_magick_warning: 'Le serveur est configuré pour créer des aperçus des grandes images, mais ImageMagick n''est pas installé. Installez ImageMagick en utilisant votre gestionnaire de paquets favori ou bien allez ici pour télécharger la dernière version.' failing_emails_warning: 'Il y a %{num_failed_jobs} tâches d''envois de courriel en erreur. Vérifiez votre fichier app.yml et assurez-vous de la conformité des paramètres du serveur de courriel. Voir aussi les processus en échec dans Sidekiq.' subfolder_ends_in_slash: "Votre configuration de sous-répertoire est erronée; DISCOURSE_RELATIVE_URL_ROOT se termine avec une barre oblique ." @@ -833,7 +798,6 @@ fr: max_image_width: "Largeur maximale des images dans un message" max_image_height: "Hauteur maximale autorisée des images dans un message" category_featured_topics: "Nombre de sujets affichés par catégorie sur la page /categories. Après avoir modifié cette valeur, il faut jusqu'à 15 minutes pour que la page des catégories soit mise à jour." - show_subcategory_list: "Voir les sous-catégories à la place de la liste des sujets lorsqu'on entre dans la catégorie." fixed_category_positions: "Si coché, vous pourrez modifier l'ordre des catégories. Si décoché, elle seront triées par ordre d'activité." fixed_category_positions_on_create: "Si coché, le classement des catégories sera maintenu dans la fenêtre de création de sujet (nécessite fixed_category_positions)." add_rel_nofollow_to_user_content: "Ajouter rel nofollow à tous les contenus des utilisateurs, sauf les liens internes (incluant les domaines parents). Si vous modifiez ceci, vous devez exécuter la commande \"rake posts:rebake\"" @@ -928,8 +892,6 @@ fr: invite_passthrough_hours: "Combien de temps un utilisateur peut encore utilisé une clé d'invitation après son expiration, en heure" invite_only: "L'inscription publique est désactivée, tous les nouveaux utilisateurs doivent explicitement être invités par les membres ou l'équipe du forum." login_required: "Authentification requise pour lire le contenu du site, interdit l'accès anonyme." - min_username_length: "Longueur minimum des pseudos en caractères." - max_username_length: "Longueur maximum des pseudos en nombre de caractères." reserved_usernames: "Pseudos pour lesquels l'inscription n'est pas autorisée." min_password_length: "Longueur minimale du mot de passe." min_admin_password_length: "Longueur minimale du mot de passe pour l'administrateur." @@ -995,6 +957,7 @@ fr: max_private_messages_per_day: "Nombre maximum de messages que les utilisateurs peuvent créer chaque jour." max_invites_per_day: "Nombre maximum d'invitations qu'un utilisateur peut envoyer par jour." max_topic_invitations_per_day: "Nombre maximum d'invitations à un sujet qu'un utilisateur peut envoyer par jour." + max_logins_per_ip_per_minute: "Nombre maximum de connexions autorisées par adresse IP, par minute" alert_admins_if_errors_per_minute: "Nombre d'erreurs par minute nécessaires pour déclencher une alerte administrateur. Une valeur de 0 désactive cette fonctionnalité. N. B. : nécessite un redémarrage." alert_admins_if_errors_per_hour: "Nombre d'erreurs par heure nécessaires pour déclencher une alerte administrateur. Une valeur de 0 désactive cette fonctionnalité. N. B. : nécessite un redémarrage." categories_topics: "Nombre de sujets à afficher dans la page /categories." @@ -1169,7 +1132,6 @@ fr: digest_posts: "Le nombre maximum de messages populaires à afficher dans le résumé par courriel." digest_other_topics: "Le nombre maximum de sujets à afficher dans la section « Nouveautés dans les sujets et catégories que vous suivez » du résumé par courriel." digest_min_excerpt_length: "Longueur minimale (en caractères) de l'extrait des messages dans le résumé par courriel." - delete_digest_email_after_days: "Ne pas envoyer de résumés par courriel aux utilisateurs qui n'ont pas visité le site depuis plus de (n) jours." digest_suppress_categories: "Ne pas inclure ces catégories dans les résumés par courriel." disable_digest_emails: "Désactiver les résumés par courriel pour tous les utilisateurs." email_accent_bg_color: "La couleur d'accentuation utilisée comme arrière-plan de certains éléments des courriels HTML. Entrez un nom de couleur (« red ») ou une valeur hexadécimale (« #FF0000 »)." @@ -1225,7 +1187,6 @@ fr: show_create_topics_notice: "Si le site contient moins de 5 sujets publics, afficher un message pour demander aux administrateurs de créer d'autres sujets." delete_drafts_older_than_n_days: Supprimer les brouillons plus vieux que (n) jours. bootstrap_mode_min_users: "Nombre minimum d'utilisateurs nécessaire pour désactiver le mode de démarrage (mettre à 0 pour désactiver)" - vacuum_db_days: "Exécuter VACUUM ANALYZE pour récupérer de l'espace dans la base de données après une migration (mettre à 0 pour désactiver)" prevent_anons_from_downloading_files: "Refuser le téléchargement de pièces jointes aux visiteurs. ATTENTION : cela empêchera de fonctionner les ressources envoyées en pièce jointe qui ne sont pas des images." slug_generation_method: "Choisissez une méthode de génération d'identifiant. \"encodé\" générera des chaines de caractères encodées avec des pourcentages. \"aucune\" désactivera complètement les identifiants." enable_emoji: "Activer les emojis" @@ -1451,44 +1412,8 @@ fr: Si vous souhaitez continuer à recevoir ces courriels, vous pouvez ignorer ce message. invite_mailer: subject_template: "%{invitee_name} vous a invité(e) à participer à « %{topic_title} » sur %{site_domain_name}" - text_body_template: | - %{invitee_name} vous a invité(e) dans une discussion - - > **%{topic_title}** - > - > %{topic_excerpt} - - sur - - > %{site_title} -- %{site_description} - - Si cela vous intéresse, cliquez sur le lien ci-dessous : - - %{invite_link} - - Cette invitation provient d'un utilisateur de confiance, vous pouvez donc répondre immédiatement. custom_invite_mailer: subject_template: "%{invitee_name} vous a invité(e) à participer à « %{topic_title} » sur %{site_domain_name}" - text_body_template: | - %{invitee_name} vous a invité(e) dans une discussion - - > **%{topic_title}** - > - > %{topic_excerpt} - - sur - - > %{site_title} -- %{site_description} - - Message de %{invitee_name} : - - %{user_custom_message} - - Si cela vous intéresse, cliquez sur le lien ci-dessous : - - %{invite_link} - - Cette invitation provient d'un utilisateur de confiance, vous pouvez donc répondre immédiatement. invite_forum_mailer: subject_template: "%{invitee_name} vous a invité(e) à rejoindre %{site_domain_name}" custom_invite_forum_mailer: @@ -1690,12 +1615,6 @@ fr: ``` csv_export_succeeded: subject_template: "Exportation des données terminée" - text_body_template: | - L'exportation de vos données a réussi! :dvd: - - %{file_name} (%{file_size}) - - Le lien de téléchargement ci-dessus expire après 48h. csv_export_failed: subject_template: "Échec de l'exportation des données " text_body_template: "Nous sommes désolés, l'exportation de vos données a échoué. Veuillez consulter les journaux ou contacter un responsable." @@ -2092,7 +2011,6 @@ fr: follow_topic: "Suivre ce sujet" join_the_discussion: "Lire la suite" popular_posts: "Messages populaires" - from_topic_label: "De" more_new: "Nouveau pour vous" subject_template: "[%{site_name}] Résumé" unsubscribe: "Ce résumé est envoyé depuis %{site_link} lorsque nous ne vous voyons plus depuis un moment. Pour se désabonner %{unsubscribe_link}." @@ -2668,8 +2586,6 @@ fr: performance_report: initial_post_raw: Ce sujet comprend des rapports de performance journaliers concernant votre site. initial_topic_title: Rapports de performances du site - topic_invite: - user_exists: "Désolé, cet utilisateur a déjà été invité. Vous ne pouvez inviter un utilisateur qu'une seule fois par sujet." tags: title: "Tags" staff_tag_disallowed: "Le tag \"%{tag}\" ne peut être mis que par un responsable." diff --git a/config/locales/server.gl.yml b/config/locales/server.gl.yml index cddb60aa4b..8d79c78cdf 100644 --- a/config/locales/server.gl.yml +++ b/config/locales/server.gl.yml @@ -206,12 +206,9 @@ gl: distance_in_words_verbose: half_a_minute: "agora mesmiño" password_reset: - choose_new: "Selecciona un novo contrasinal" - choose: "Selecciona un contrasinal" update: 'Actualizar contrasinal' save: 'Estabelecer o contrasinal' title: 'Contrasinal restabelecido' - continue: "Continuar a %{site_name}" change_email: confirmed: "O teu correo electrónico foi actualizado." please_continue: "Continuar a %{site_name}" diff --git a/config/locales/server.he.yml b/config/locales/server.he.yml index 7a559a5419..19ad430884 100644 --- a/config/locales/server.he.yml +++ b/config/locales/server.he.yml @@ -109,7 +109,6 @@ he: default_categories_already_selected: "לא ניתן לבחור קטגוריה שהשתמשו בה ברשימה אחרת." s3_upload_bucket_is_required: "אינכם יכולים להעלות ל-S3 ללא 's3_upload_bucket'." invite: - accept_invite: "קבלת הזמנה" not_found: "אסימון ההזמנה שלכם אינו תקין. אנא צרו קשר עם האדמיניסטרטור של האתר." bulk_invite: file_should_be_csv: "הקובץ שמועלה אמור להיות בפורמט csv." @@ -243,40 +242,47 @@ he: למידע נוסף [ראו את הכללים המנחים שלנו](/guidelines). פאנל זה יופיע רק ב-%{education_posts_text} התגובות הראשונות שלך. avatar: | - ### מה דעתך להוסיף תמונה לחשבון שלך? + ### מה אתם אומרים על תמונה לחשבון שלכם? - כבר פרסמת כמה נושאים ותגובות, אבל תמונת הפרופיל שלך לא מיוחדת - היא רק אות. + פרסמתם מספר נושאים ותגובות, אבל תמונת הפרופיל שלכם היא לא ייחודית כמוכם - היא רק אות. - שקלת **[להכנס לפרופיל המשתמש שלך](%{profile_path})** ולהעלות תמונה שמייצגת אותך? + האם שקלתם **[לבקר בפרופיל המשתמש שלכם](%{profile_path})** ולהעלות תמונה שמייצגת אתכם? - יותר קל לעקוב אחרי שיחות ולמצוא אנשים מעניינים כשלכולם יש תמונת פרופיל יחודית! - sequential_replies: |+ - ### שקלו להשיב לכמה פרסומים בבת אחת + יותר קל לעקוב אחרי דיונים ולמצוא אנשים מעניינים בדיונים כשלכל אחד ואחת יש תמונת פרופיל ייחודית! + sequential_replies: | + ### שיקלו לענות למספר פוסטים ביחד - במקום להשיב בתגובות עוקבות לנושא, שקלו בבקשה לפרסם תגובה אחת שכוללת ציטוטים מהפרסומים הקודמים או הפניות ל@שם_משתמש/ת. + במקום להגיב כמה פעמים לנושא ברצף, שיקלו תגובה אחת שכוללת ציטוטים מפוסטים קודמים או @איזכורי שמות. - תוכל/י לערוך תגובה קודמת שלך כדי להוסיף ציטוט על ידי הדגשת הטקסט ובחירה בכפתור ציטוט התגובה שיופיע. - - קל יותר לכולם לקרוא נושאים עם מספר נמוך יחסית תגובות מעמיקות מאשר הרבה תגובות קצרות ונפרדות. + אתם יכולים לערוך תגובות קודמות שלכם כדי להוסיף ציטוט על ידי סימון טקסט ובחירת כפתו ציטוט תגובה שמופיע. + יותר קל לכולם לקרוא נושאים שיש בהם פחות תגובות עמוקות מאשר הרבה תגובות קטנות. dominating_topic: | ### אפשרו לאחרים להצטרף לשיחה - הנושא הזה בבירור חשוב לכם – פרסמתם יותר מ-%{percent}% מהתגובות כאן. + הנושא הזה הוא בבירור חושב לכם – פרסמתם יותר מ-%{percent}% מהתגובות כאן. - בטוח שאתם נותנים מספיק זמן לאחרים כדי לחלוק את נקודת מבטם? + האם אתם בטוחים שאתם מאפשרים די זמן לאנשים אחרים לחלוק את נקודות המבט שלהם גם כן? + get_a_room: | + ### שיקלו לענות ליותר אנשים + + כבר עניתם %{count} פעמים ל-@%{reply_username} בנושא ספציפי זה. + + האם שקלתם לענות לאנשים *אחרים* בדיון גם כן? דיון מעולה מערב הרבה קולות ופקספקטיבות. + + אם תרצו להמשיך את הדיון באריכות עם משתמש ספציפי זה, [שילחו אליו/ה הודעה אישית](/users/%{reply_username}). too_many_replies: | - ### הגעתם למגבלת התגובות של הנושא הזה + ### הגעתם למספר המקסימלי של תגובות לנושא זה - אנחנו מצטערים, אבל משתמשים חדשים מוגבלים זמנית לפרסום %{newuser_max_replies_per_topic} תגובות באותו הנושא. + אנחנו מצטערים, אבל משתמשים חדשים מוגבלים זמנית ל-%{newuser_max_replies_per_topic} תגובות באותו הנושא. - במקום להוסיף תגובה נוספת, ניתן לערוך תגובה קודמת, או לבקר בנושאים אחרים. + במקום להוסיף תגובה נוספת, בבקשה שיקלו לערוך תגובות קודמות שלכם, או לבקר נושאים אחרים. reviving_old_topic: | - ### להחיות נושא זה? + ### לחיות נושא זה? - התגובה האחרונה לנושא הזה היא כבר בת יותר מ-%{days} ימים. התגובה שלך תקפיץ את הנושא הזה לראש הרשימה שלו ותודיע לכל מי שהיה מעורב בשיחה בו. + התגובה האחרונה לנושא זה ארעה לפני **%{days}** ימים. התגובה שלכם תקפיץ את הנושא לראש הרשימה ותודיע לכל המעורבים בשיחה. - אתם בטוחים שברצונכם להמשיך את הדיון הישן הזה? + האם אתם בטוחים שאתם מעוניינים להמשיך עם שיחה ישנה זו? activerecord: attributes: category: @@ -307,6 +313,7 @@ he: same_as_username: "זהה לשם המשתמש שלכם. אנא השתמשו בסיסמה בטוחה יותר." same_as_email: "זהה לכתובת הדוא\"ל שלכם. אנא השתמשו בסיסמה בטוחה יותר." same_as_current: "זהה לסיסמה הנוכחית שלכם." + unique_characters: "מכיל יותר מידי תווים שחוזרים על עצמם. בבקשה השתמשו בסיסמה בטוחה יותר." ip_address: signup_not_allowed: " הרשמה אינה מורשית מהחשבון הזה." color_scheme_color: @@ -508,7 +515,6 @@ he: title: 'איפוס סיסמה' success: "שיניתם את סיסמתכם בהצלחה ואתם עכשיו מחוברים." success_unapproved: "שינית את הסיסמה שלך בהצלחה." - continue: "המשך ל-%{site_name}" change_email: confirmed: "כתובת הדואר האלקטרוני שלך עודכנה" please_continue: "המשיכו ל-%{site_name}" @@ -779,8 +785,8 @@ he: facebook_config_warning: 'השרת מכוון לאפשר הרשמה והתחברות עם פייסבוק (enable_facebook_logins), אבל ערכי מזהה האפליקציה וסוד האפליקציה אינם קבועים. לכו ל הגדרות האתר ועדכנו את ההגדרות האלו. ראו מדריך זה כדי ללמוד עוד.' twitter_config_warning: 'השרת מכוון לאפשר הרשמה והתחברות עם טוויטר (enable_twitter_logins), אבל ערכי המפתח והסוד אינם קבועים. לכו ל הגדרות האתר ועדכנו את ההגדרות האלו. ראו מדריך זה כדי ללמוד עוד.' github_config_warning: 'השרת מכוון לאפשר הרשמה והתחברות עם גיטהאב (enable_github_logins), אבל ערכי מזהה הלקוח והסוד אינם קבועים. לכו ל הגדרות האתר ועדכנו את ההגדרות האלו. ראו מדריך זה כדי ללמוד עוד.' - s3_config_warning: 'השרת מכוון להעלות קבצים ל s3, אבל לפחות אחת ההגדרות אינה קבועה: s3_access_key_id, s3_secret_access_key או s3_upload_bucket. לכו ל הגדרות האתר וקבעו את ההגדרות. ראו ״כיצד לכוון העלאות קבצים ל S3?״ כדי ללמוד עוד.' - s3_backup_config_warning: 'השרת מכוון להעלות גיבויים ל s3, אבל לפחות אחת מההגדרות הבאות לא נקבעה: s3_access_key_id, s3_secret_access_key או s3_backup_bucket. לכו ל הגדרות האתר ועדכנו את ההגדרות. ראו ״כיצד לקבוע העלאות קבצים ל S3?״ כדי ללמוד עוד.' + s3_config_warning: 'השרת מוגדר להעלות קבצים ל s3, אבל לפחות אחת ההגדרות הבאות לא נקבעה: s3_access_key_id, s3_secret_access_key, s3_use_iam_profile, או s3_upload_bucket. גשו ל-הגדרות האתר ועדכנו את ההגדרות. ראו ״כיצד להגדיר העלאת קבצים ל S3?״ כלי ללמוד עוד.' + s3_backup_config_warning: 'השרת מוגדר להעלות גיבויים ל s3, אבל לפחות אחת מההגדרות הבאות לא נקבעה: s3_access_key_id, s3_secret_access_key, s3_use_iam_profile, או s3_backup_bucket. גשו ל-הגדרות האתר ועדכנו את ההגדרות. ראו ״כיצד להגדיר העלאת תמונות ל S3?״ כדי ללמוד עוד.' image_magick_warning: 'השרת מכוון ליצור צלמיות לתמונות גדולות, אבל ImageMagick לא מותקן. התקינו ImageMagick באמצעות מנהל החבילות האהוב עליכם או הורידו את הגרסה האחרונה.' failing_emails_warning: 'יש %{num_failed_jobs} עבודות מייל שנכשלו. בידקו את app.yml שלכם כדי לוודא ששרת המייל מוגדר כיאות. ראו את העבודות שנכשלו ב Sidekiq.' subfolder_ends_in_slash: "הגדרות תיקיית המשנה שלכם לא נכונות, הנתיב DISCOURSE_RELATIVE_URL_ROOT צריך להסתיים בלוכסן." @@ -832,7 +838,6 @@ he: max_image_width: "הרוחב המקסימלי של תצוגת תמונה מוקטנת בפוסט" max_image_height: "גובה מקסימלי של תצוגת תמונה מוקטנת בפוסט" category_featured_topics: "מספר נושאים שמוצגים עבור כל קטגוריה בדף /categories. לאחר שינוי ערך זה, לוקח עד 15 דקות לדף הקטגוריות להתעדכן." - show_subcategory_list: "הצגת רשימת תת-הקבוצות במקום רשימת הנושאים בעת הכניסה לקטגוריה." fixed_category_positions: "אם אפשרות זו מסומנת, תוכלו לארגן את הקטגוריות כך שיופיעו בסדר קבוע. אם האופציות אינן מסומנות, הקטגוריות יסודרו על פי סדר הפעילות שהתבצעה בהן." fixed_category_positions_on_create: "אם האפשרות תסומן, סדר הקטגוריות יוגדר בתפריט יצירת נושא (דורש fixed_category_positions)." add_rel_nofollow_to_user_content: "הוספת התווית rel nofollow לכל תוכן שפורסם על ידי המשתמש/ת, פרט לקישורים פנימיים (כולל מתחם הורה parent domains). אם תשנו אפשרות זו, עליכם לאפות מחדש את כל הפרסומים עם: \"rake posts:rebake\"" @@ -853,6 +858,7 @@ he: email_custom_headers: "רשימה מופרדת pipes (הסימון |) של כותרות מייל מותאמות אישית" email_subject: "התאמה עצמית של מבנה נושא למיילים סטנדרטיים. ראו:\nhttps://meta.discourse.org/t/customize-subject-format-for-standard-emails/20801" force_https: "הכריחו את אתרכם להשתמש אך ורק ב HTTPS. אזהרה: אל תאפשרו זאת עד שתוודאו ש HTTPS מותקן ועובד ממש בכל המקרים! וידאתם את הגדרות ה CDN שלכם, כל שירותי ההתחברות, וכל הלוגואים / תלויות החיצוניים - כדי לוודא שכולם עובדים גם כן עם HTTPS?" + same_site_cookies: "שימוש בעוגיות של האתר, הן מבטלות את כל הווקטורים של Cross Site Request Forgery בדפדפנים נתמכים (Lax או Strict). אזהרה: Strict יעבוד רק על אתרים שמכריכים התחברות ומשתמשים ב SSO." summary_score_threshold: "הניקוד המינימלי הנדרש כדי שפוסט ייכלל ב\"סיכום נושא זה\"" summary_posts_required: "מספר הפוסטים המנימלי בנושא לפני שהאפשרות \"סיכום נושא זה\" תתאפשר" summary_likes_required: "מינימום הלייקים לנושא לפני שהאפשרות \"סיכום נושא זה\" תתאפשר" @@ -927,11 +933,12 @@ he: invite_passthrough_hours: "כמה זמן, בשעות, יכולים משתמשים לעשות שימוש בהזמנה שנשלחה כדי להתחבר " invite_only: "הרשמה פומבית מנוטרלת, כל המשתמשים החדשים חייבים להיות מוזמנים על ידי חברים אחרים באתר." login_required: "דרשו הזדהות לקריאת תוכן באתר זה, אל תאפשרו גישה אנונימית." - min_username_length: "אורך שם משתמש מינימילי בתווים." - max_username_length: "אורך שם משתמש מקסימלי בתווים." + min_username_length: "אורך שמות משתמשים מינימלי בתווים. אזהרה: אם למשתמשים קיימים או קבוצות כבר יש שם קצר יותר, האתר שלכם ישבר!" + max_username_length: "אורך שמות משתמשים מקסימלי בתווים. אזהרה: אם למשתמשים קיימים או קבוצות כבר יש שמות ארוכים יותר, האתר שלכם ישבר!" reserved_usernames: "שמות משתמשים שלא ניתן להירשם איתם." min_password_length: "אורך סיסמה מינימלי." min_admin_password_length: "אורך סיסמה מינימלית לאדמיניסטרטור." + password_unique_characters: "מספר מינימלי של תווים ייחודיים שחייבים להיות בסיסמאות." block_common_passwords: "אל תאפשרו סיסמאות מתוך 10,000 הסיסמאות הנפוצות ביותר." enable_sso: "אפשרו התחברות יחידה (Single Sign On) באמצעות אתר חיצוני (א-ז-ה-ר-ה: כתובות המייל של משתמשים *חייבות* לעבור אימות על ידי אתר חיצוני!)" verbose_sso_logging: "רישום יומנים מפורטים בנוגע לדיאגנוסטיקות SSO ל /logs" @@ -994,6 +1001,8 @@ he: max_private_messages_per_day: "מספר מקסימלי של הודעות שמשתמשים יכולים ליצור ביום." max_invites_per_day: "מספר מקסימלי של הזמנות שיכולים משתמשים לשלוח ביום." max_topic_invitations_per_day: "מספר מירבי של הזמנות לנושא שמשתמשים יכולים לשלוח ביום. " + max_logins_per_ip_per_hour: "מספר מקסימלי של התחברויות מורשות לכל כתובת IP בשעה" + max_logins_per_ip_per_minute: "מספר מקסימלי של התחברויות מורשות לכתובת IP לדקה" alert_admins_if_errors_per_minute: "מספר השגיאות בדקה לפני ששולחים התראה למנהל. ערך של 0 מנטרל אפשרות זו. שימו לב: מצריך הרצה מחדש." alert_admins_if_errors_per_hour: "מספר השגיאות בשעה לפני ששולחים התראה למנהל. ערך של 0 מנטרל אפשרות זו. שימו לב: מצריך הרצה מחדש." categories_topics: "מספר נושאים להצגה בדף /categories." @@ -1168,7 +1177,7 @@ he: digest_posts: "המספר המקסימלי של פוסטים פופולאריים להצגה במייל סיכום." digest_other_topics: "המספר המקסימלי של נושאים להצגה בקטע 'חדש בנושאים וקטגוריות שאתם עוקבים אחריהם' של מייל הסיכום." digest_min_excerpt_length: "אורך קטע מינימלי מהפוסט למיילי הסיכום, בתווים." - delete_digest_email_after_days: "השתקת מיילי סיכום למשתמשים שלא ביקרו באתר למעלה מ (n) ימים." + suppress_digest_email_after_days: "השתקת מיילים של סיכום למשתמשים שלא נראו באתר למעלה מ (n) ימים." digest_suppress_categories: "וותרו על קטגוריות אלו במיילים מסכמים." disable_digest_emails: "בטל סיכומי מיילים לכל המשתמשים." email_accent_bg_color: "צבע האקסנט שיעשה בו שימוש כרקע לחלק מהאלמנטים של מיילים מסוג HTML. הכניסו שם צבע ('red') או ערך הקסדצימלי ('#FF000')." @@ -1187,6 +1196,7 @@ he: user_website_domains_whitelist: "אתרי משתמשים יאומתו עם מתחמים אלו. רשימה מופרדת על ידי קווים-אנכיים." allow_profile_backgrounds: "אפשרו למשתמשים להעלות רקעים לפרופיל." sequential_replies_threshold: "מספר הפוסטים שעל משתמש לפרסם אחד-לאחר-השני בנושא לפני שמזכירים לו שהוא משאיר יותר מידי תגובות ברצף." + get_a_room_threshold: "מספר פוסטים שמשתמשים צריכים להכין לאותו אדם באותו הנושא לפני שהם מוזהרים." enable_mobile_theme: "מכשירים ניידים משתמשים בתבנית ידידותית אליהם, עם היכולת להחליף אותה לאתר המלא. נטרלו זאת אם אתם מעוניינים ב stylesheet מותאם שהוא רספונסיבי לחלוטין." dominating_topic_minimum_percent: "איזה אחוז מהפוסטים משתמש צריך לייצר בנושא לפני שיקבל תזכורת לגבי שתלטנות יתר על הנושא." disable_avatar_education_message: "ניטרול הודעה שמלמדת על שינוי דמות." @@ -1224,7 +1234,6 @@ he: show_create_topics_notice: "אם לאתר פחות מ-5 נושאים פומביים, הציגו מודעה המבקשת מן המנהלים ליצור עוד נושאים." delete_drafts_older_than_n_days: מחקו טיוטות בנות יותר מ (n) ימים. bootstrap_mode_min_users: "מספר משתמשים מינימלי שנדרש כדי לנטרל מצב איתחול (קבעו ל 0 כדי לנטרל)" - vacuum_db_days: "הריצו VACUUM ANALYZE כדי להשיב מקום בבסיס הנתונים לאחר המרות (קבעו ל 0 כדי לנטרל)" prevent_anons_from_downloading_files: "מונע ממשתמשים אנונימיים להוריד צרופות (attachments). אזהרה: דבר זה ימנע מכל משאב שאינו תמונה ופורסם כצרופה לעבוד." slug_generation_method: "בחרו צורת ייצור slug. צורה של 'encoded' תגרום למחרוזות עם קידוד אחוזים. 'none' ינטרל slug לחלוטין." enable_emoji: "אפשרו emoji" @@ -1442,89 +1451,81 @@ he: title: "שולח-מיילים לביטול מנוי" subject_template: "אשרו שאינכם מעוניינים יותר לקבל עדכוני דוא\"ל מ%{site_title}" text_body_template: | - מישהו (כנראה אתם?) ביקש לא לקבל יותר עדכוני מייל מ %{site_domain_name} לכתובת זו. - אם אתם מעוניינים לאשר זאת, אנא לחצו על הקישור הזה: + מישהו (ייתכן שאתם?) ביקש לא לשלוח יותר עדכוני מייל מ-%{site_domain_name} לכתובת זו. + אם אתם מעוניינים לאשר זאת, בבקשה לחצו על הקישור: %{confirm_unsubscribe_link} - אם אתם מעוניינים להמשיך לקבל עדכונים במייל, אתם יכולים להתעלם ממייל זה. + אם אתם מעוניינים להמשיך לקבל עדכוני מייל, אתם יכולים להתעלם ממייל זה. invite_mailer: title: "שולח-מיילים להזמנה" subject_template: "הוזמנת על ידי %{invitee_name} ל '%{topic_title}' ב%{site_domain_name}" text_body_template: | - %{invitee_name} הזמין/הזמינה אותך לדיון + %{invitee_name} הזמין/ה אתכם לדיון > **%{topic_title}** > > %{topic_excerpt} - באתר + ב > %{site_title} -- %{site_description} - אם אתם מעוניינים להצטרף לדיון, הקישו על הקישור הבא: + אם אתם מעוניינים, לחצו על הקישור למטה: %{invite_link} - - הזמנה זו נשלחה על ידי משתמש/ת מוכר/ת ולכן אתם יכולים להשיב לדיון הנ"ל באופן מיידי. custom_invite_mailer: title: "שולח-מיילים מותאם-אישית להזמנה" subject_template: "%{invitee_name} הזמין/הזמינה אותך לדיון '%{topic_title}' באתר %{site_domain_name}" text_body_template: | - %{invitee_name} הזמין/הזמינה אותך לדיון + %{invitee_name} הזמין/ה אתכם לדיון > **%{topic_title}** > > %{topic_excerpt} - באתר + ב > %{site_title} -- %{site_description} - עם מסר זה + עם הערה זו > %{user_custom_message} - אם את/ה מעוניינ/ת, לחצו על הקישור: + אם אתם מעוניינים, לחצו על הקישור למטה: %{invite_link} - - הזמנה זו נשלחה על ידי משתמש מוכר, כך שתוכלו להגיב לדיון מיידית. invite_forum_mailer: title: "שולח-מיילים להזמנה לפורום" subject_template: "%{invitee_name} הזמינ/ה אתכם להצטרף ל%{site_domain_name}" text_body_template: | - %{invitee_name} הזמין/ה אתכם להצטרף ל + %{invitee_name} הזמין/ה אתכם להצטרף > **%{site_title}** > > %{site_description} - אם אתם מעוניינים, לחצו על הקישור הבא: + אם אתם מעוניינים, לחצו על הקישור למטה: %{invite_link} - - הזמנה זו נשלחה ממשתמש/ת מוכר/ת באתר, כך שהחשבון יווצר עבורכם באופן אוטומטי עם כתובת מייל זו. custom_invite_forum_mailer: title: "שולח-מיילים להזמנה לפורום" subject_template: "%{invitee_name} הזמין/ה אתכם להצטרף ל %{site_domain_name}" text_body_template: | - %{invitee_name} הזמינו אתכם להצטרף ל + %{invitee_name} הזמין/ה אתכם להצטרף > **%{site_title}** > > %{site_description} - עם מסר זה: + עם ההערה הזו - > %{user_custom_message} + > %{site_description} - אם אתם מעוניינים, לחצו על הקישור הבא: + אם אתם מעוניינים, לחצו על הקישור למטה: %{invite_link} - - הזמנה זו נשלחה ממשתמשים מוכרים באתר, כך שהחשבון שלכם יווצר באופן אוטומטי עבור כתובת מייל זו. invite_password_instructions: title: "הנחיות סיסמה למוזמנים" subject_template: "צרו סיסמה עבור חשבון ה-%{site_name} שלכם." @@ -2184,7 +2185,6 @@ he: follow_topic: "עיקבו אחרי נושא זה" join_the_discussion: "קראו עוד" popular_posts: "פוסטים פופולאריים" - from_topic_label: "מאת" more_new: "חדש בשבילכם" subject_template: "[%{site_name}] סיכום" unsubscribe: "סיכום זה נשלח מ %{site_link} כאשר אנחנו לא רואים אתכם לאורך זמן. כדי לבטל את המנוי %{unsubscribe_link}." @@ -2907,8 +2907,6 @@ he: performance_report: initial_post_raw: 'נושא זה כולל דוחות פעילות יומיים עבור האתר שלך. ' initial_topic_title: דוחות פעילות לאתר - topic_invite: - user_exists: "מצטערים, המשתמשים כבר הוזמנו. ניתן להזמין משתמשים לנושא רק פעם אחת." tags: title: "תגיות" staff_tag_disallowed: "התג \"%{tag}\" ניתן רק על ידי הצוות." diff --git a/config/locales/server.id.yml b/config/locales/server.id.yml index 488efd6901..99be53b0b6 100644 --- a/config/locales/server.id.yml +++ b/config/locales/server.id.yml @@ -30,7 +30,6 @@ id: anonymous: "Anonim" emails: incoming: - default_subject: "Email masuk dari %{email}" show_trimmed_content: "Tampilkan konten yang dipersingkat" errors: empty_email_error: "Terjadi bila surel mentah yang kami terima tidak berisi apapun (kosong)." @@ -258,12 +257,9 @@ id: almost_x_years: other: "hampir %{count} tahun yang lalu" password_reset: - choose_new: "Silahkan memilih password baru" - choose: "Mohon pilih kata sandi" update: 'Perbaharui Kata Sandi' success: "Anda telah mengubah kata sandi dengan sukses dan sekarang telah login." success_unapproved: "Anda telah mengubah kata sandi dengan sukses." - continue: "Lanjut ke %{site_name}" change_email: confirmed: "Surel anda telah diperbaharui." please_continue: "Lanjut ke %{site_name}" diff --git a/config/locales/server.it.yml b/config/locales/server.it.yml index 36983fb21c..eaa954f5b6 100644 --- a/config/locales/server.it.yml +++ b/config/locales/server.it.yml @@ -109,13 +109,12 @@ it: default_categories_already_selected: "Non puoi selezionare una categoria usata in un'altra lista." s3_upload_bucket_is_required: "Non è possibile attivare i caricamenti da S3 a meno che non imposti l'opzione 's3_upload_bucket'." invite: - accept_invite: "Accetta Invito" not_found: "Il tuo token di invito non è valido. Per favore contatta l'amministratore del sito." bulk_invite: file_should_be_csv: "Il file caricato deve essere in formato csv." - error: "Si è verificato un errore durante l'upload del file. Per favore riprova più tardi." + error: "Si è verificato un errore durante il caricamento del file. Per favore riprova più tardi." topic_invite: - user_exists: "Spiacenti, questo utente è stato già invitato. Per un topic puoi invitare un utente solo una volta." + user_exists: "Spiacenti, questo utente è stato già invitato. Puoi invitare un utente ad un argomento solo una volta ." backup: operation_already_running: "Una operazione è in esecuzione. Non è possibile avviarne una nuova adesso." backup_file_should_be_tar_gz: "Il file di backup deve essere un archivio .tar.gz" @@ -133,11 +132,11 @@ it: embed: start_discussion: "Inizia Discussione" continue: "Continua Discussione" - error: "Errore di embedding" + error: "Errore Inclusione" referer: "Referer:" mismatch: "Il referer non corrisponde con nessuno dei seguenti host:" - no_hosts: "Non sono stati configurati host per l'embedding." - configure: "Configura l'Embedding" + no_hosts: "Non sono stati configurati host per l'inclusione." + configure: "Configura Inclusione" more_replies: one: "1 ulteriore risposta" other: "%{count} ulteriori risposte" @@ -256,36 +255,24 @@ it: sequential_replies: | ### Considera la possibilità di rispondere a più messaggi contemporaneamente - Piuttosto che inviare più risposte di seguito ad un messaggio, considera la possibilità di inserire un'unica risposta con citazioni o riferimenti @nome ai messaggi precedenti. + Piuttosto che inviare più risposte di seguito in un argomento, considera la possibilità di inserire un'unica risposta con riferimenti ai messaggi precedenti o citazioni di @nome . - Puoi modificare la tua precedente risposta per aggiungere una citazione evidenziando il testo e selezionando il bottone Rispondi citando che compare. + Puoi modificare la risposta precedente per aggiungere una citazione evidenziando il testo e selezionando il bottone Cita che comparirà. - E' più facile per chiunque leggere argomenti che hanno poche risposte più dettagliate, rispetto a molte brevi risposte individuali. + E' più facile per chiunque leggere argomenti che hanno poche risposte ma più dettagliate, rispetto a molte brevi risposte individuali. dominating_topic: | ### Permetti agli altri di partecipare alla conversazione - Questo argomento è chiaramente importante per te – più del %{percent}% delle risposte sono tue. + Questo argomento è evidentemente importante per te – hai inviato più del %{percent}% delle risposte. - Sei sicuro di lasciare anche agli altri il tempo di esprimere il loro punto di vista? - too_many_replies: | - ### Hai raggiunto il numero massimo di risposte per questo argomento - - Spiacenti, ma i nuovi utenti sono limitati a %{newuser_max_replies_per_topic} risposte nello stesso argomento. - - Invece di aggiungere una nuova risposta, valuta l'ipotesi di modificare le tue precedenti o di partecipare a un altro argomento. - reviving_old_topic: | - ### Resuscitare questo argomento? - - L'ultima risposta a questo argomento è vecchia di %{days} giorni. La tua risposta farà tornare l'argomento in cima alla lista e tutti gli utenti coinvolti verranno notificati. - - Sei davvero sicuro di voler continuare questo vecchio argomento? + Sei sicuro di lasciare anche agli altri abbastanza tempo per esprimere il loro punto di vista? activerecord: attributes: category: name: "Nome Categoria" topic: title: 'Titolo' - featured_link: 'Link in evidenza' + featured_link: 'Collegamento in evidenza' post: raw: "Contenuto" user_profile: @@ -300,8 +287,8 @@ it: cant_send_pm: "Spiacenti, non puoi inviare un messaggio privato a quell'utente." no_user_selected: "Seleziona un utente valido." featured_link: - invalid: "risulta invalido. Un URL dovrebbe includere http:// o https://." - invalid_category: "non può essere editato in questa categoria." + invalid: "è invalido. Un URL dovrebbe includere http:// o https://." + invalid_category: "non può essere modificato in questa categoria." user: attributes: password: @@ -332,7 +319,7 @@ it: meta_category_description: "Discussioni su questo sito, la sua organizzazione, come funziona e come come noi possiamo migliorarlo." staff_category_name: "Staff" staff_category_description: "Categoria privata per discussioni dello staff. Gli argomenti sono visibili solo agli amministratori e ai moderatori." - assets_topic_title: "Asset per il site design" + assets_topic_title: "Risorse per il design del sito" assets_topic_body: "Questo è un argomento permanente, visibile solo allo staff, per salvare immagini e file utilizzati nel design del sito. Non eliminarlo!\n\n\nEcco come fare:\n\n\n1. Rispondi a questo argomento.\n2. Carica qui tutte le immagini che desideri usare per loghi, favicon e così via (usa l'icona di caricamento nell'editor del messaggio o trascina direttamente le immagini).\n3. Invia la risposta per creare il messaggio.\n4. Fai clic con il tasto destro sulle immagini nel tuo nuovo messaggio per prelevare il percorso delle immagini caricate, o clicca l'icona di modifica messaggio e ottieni il percorso alle immagini. Copia il percorso delle immagini.\n5. Incolla i percorsi nella sezione [impostazioni di base](/admin/site_settings/category/required).\n\nSe vuoi permettere di caricare file di diverso tipo, modifica `authorized_extensions` nelle [impostazioni file](/admin/site_settings/category/files)." discourse_welcome_topic: title: "Benvenuto in Discourse" @@ -406,8 +393,8 @@ it: create_bookmark: "Hai raggiunto il massimo numero di segnalibri per oggi. Per favore attendi %{time_left} prima di riprovare." edit_post: "Hai raggiunto il massimo numero di modifiche per oggi. Per favore attendi %{time_left} prima di riprovare." live_post_counts: "Stai richiedendo troppo velocemente il conteggio dei messaggi attivi. Attendi %{time_left} prima di riprovare." - unsubscribe_via_email: "Hai raggiunto il massimo numero di unsubscribe via email oggi. Per favore aspetta %{time_left} prima di riprovare ancora." - topic_invitations_per_day: "Hai raggiunto il numero massimo di invitations per topic oggi. Per favore aspetta %{time_left} prima di riprovare." + unsubscribe_via_email: "Hai raggiunto il massimo numero di cancellazioni via email per oggi. Per favore aspetta %{time_left} prima di riprovare ancora." + topic_invitations_per_day: "Hai raggiunto il numero massimo di inviti ad argomenti per oggi. Per favore aspetta %{time_left} prima di riprovare." hours: one: "1 ora" other: "%{count} ore" @@ -497,16 +484,15 @@ it: title: 'Reimposta Password' success: "La tua password è stata cambiata con successo e ora sei connesso." success_unapproved: "La tua password è stata cambiata con successo." - continue: "Procedi su %{site_name}" change_email: confirmed: "La tua email è stata aggiornata." please_continue: "Procedi su %{site_name}." error: "Si è verificato un errore durante la modifica del tuo indirizzo email. Forse l'indirizzo è già in uso?" error_staged: "Si è verificato un errore durante il cambio di indirizzo email. L'indirizzo è già stato usato da un utente temporaneo." - already_done: "Ci dispiace, questo link di conferma non è più valido. Forse la tua email è stata già cambiata?" + already_done: "Spiacenti, il collegamento di conferma non è più valido. Hai forse già cambiato email?" authorizing_old: - title: "Grazie per aver confermato il tuo indirizzo email corrente" - description: "Ti stiamo inviando il tuo nuovo indirizzo per la conferma." + title: "Grazie per aver confermato il tuo attuale indirizzo email" + description: "Ti stiamo inviando una email al nuovo indirizzo per conferma." activation: action: "Clicca qui per attivare il tuo account" already_done: "Spiacenti, questo collegamento di attivazione non è più valido. Forse il tuo account è già attivo?" @@ -514,7 +500,7 @@ it: continue_button: "Procedi su %{site_name}." welcome_to: "Benvenuto su %{site_name}!" approval_required: "Un moderatore deve approvare manualmente il tuo account prima che tu possa accedere al forum. Riceverai un'email quando il tuo account sarà approvato!" - missing_session: "Non possiamo rilevare se il tuo account è stato creato, per favore assicurati di avere i cookie abilitati." + missing_session: "Non siamo in grado di rilevare se il tuo account è stato creato o meno, per favore assicurati di avere i cookie abilitati." post_action_types: off_topic: title: 'Fuori Tema' @@ -556,11 +542,11 @@ it: long_form: 'hai votato questo messaggio' user_activity: no_bookmarks: - self: "Non hai aggiunto nessun bookmark ai post, contrassegnare i post ti consentirà di ritrovarli facilmente più avanti. " - others: "Nessun bookmark." + self: "Non hai aggiunto nessun segnalibro ai messaggi, farlo ti consentirà di ritrovarli facilmente più avanti. " + others: "Nessun segnalibro." no_likes_given: - self: "Non hai fatto like per nessun post." - others: "Nessun like sui post." + self: "Non hai messo \"Mi piace\" ad alcun messaggio." + others: "Nessun messaggio con \"Mi piace\"." topic_flag_types: spam: title: 'Spam' @@ -590,7 +576,7 @@ it: unsubscribed: title: "Iscrizione annullata!" description: "La tua iscrizione è stata annullata. Per cambiare le tue impostazioni email vai alle preferenze utente." - topic_description: "Per re-iscriverti a %{link}, usa il controllo notifiche in fondo a destra del topic." + topic_description: "Per re-iscriverti a %{link}, usa il controllo notifiche in fondo o a destra dell'argomento." unsubscribe: title: "Annulla iscrizione" stop_watching_topic: "Smetti di osservare questo argomento, %{link}" @@ -600,7 +586,7 @@ it: disable_digest_emails: "Smetti di inviarmi email ripielogative" all: "Non inviare alcuna email da %{sitename}" different_user_description: "Sei attualmente connesso con un utente diverso da quello a cui abbiamo scritto. Per favore disconnettiti, oppure attiva la modalità anonima, e riprova." - not_found_description: "Siamo spiacenti ma non siamo riusciti a trovare questo unsubscribe. È possibile che il link nella tua email sia scaduto?" + not_found_description: "Spiacenti, non siamo riusciti a trovare questa cancellazione. È possibile che il collegamento nell'email sia scaduto?" log_out: "Disconnetti" user_api_key: title: "Autorizza accesso dell'applicazione" @@ -608,12 +594,12 @@ it: read: "lettura" read_write: "lettura/scrittura" description: "\"%{application_name}\" richiede il seguente accesso al tuo account:" - no_trust_level: "Spiacenti, non hai il livello di accesso richiesto per accedere alle user API" - generic_error: "Spiacenti, non siamo in grado di produrre user API keys, questa feature potrebbe essere stata disabilitata dall'amministratore di sistema" + no_trust_level: "Spiacenti, non hai il livello di esperienza richiesto per accedere alle user API" + generic_error: "Spiacenti, non siamo in grado di produrre user API keys, questa caratteristica potrebbe essere stata disabilitata dall'amministratore di sistema" scopes: message_bus: "Aggiornamenti in tempo reale" notifications: "Leggi e elimina le notifiche" - push: "Invia notifiche a servizi esterni" + push: "Notifiche push a servizi esterni" session_info: "Leggi le info della sessione utente" read: "Leggi tutto" write: "Scrivi tutto" @@ -768,14 +754,12 @@ it: facebook_config_warning: 'Il server è configurato per accettare iscrizioni e login con Facebook (enable_facebook_logins), tuttavia i parametri app id e secret non sono stati impostati. Vai alle Impostazioni e aggiorna i campi interessati. Leggi questa guida per saperne di più.' twitter_config_warning: 'Il server è configurato per accettare iscrizioni e login con Twitter (enable_twitter_logins), tuttavia i parametri key e secret non sono stati impostati. Vai alle Impostazioni e aggiorna i campi interessati. Leggi questa guida per saperne di più.' github_config_warning: 'Il server è configurato per accettare iscrizioni e login con GitHub (enable_github_logins), tuttavia i parametri client id e secret non sono stati impostati. Vai alle Impostazioni e aggiorna i campi interessati. Leggi questa guida per saperne di più.' - s3_config_warning: 'Il server è configurato per caricare file su s3, ma almeno uno dei seguenti parametri non è impostato: s3_access_key_id, s3_secret_access_key, s3_upload_bucket. Vai nelle Impostazioni Sito e aggiorna i parametri. Leggi anche "How to set up image uploads to S3?" per saperne di più.' - s3_backup_config_warning: 'Il server è configurato per caricare i backup su S3, ma almeno una delle seguenti impostazioni non è impostata: s3_access_key_id, s3_secret_access_key, s3_backup_bucket. Vai nelle Impostazioni Sito e aggiorna le impostazioni. Leggi anche "How to set up image uploads to S3?" per saperne di più.' image_magick_warning: 'Il server è configurato per creare miniature di immagini grandi, ma ImageMagick non è installato. Installa ImageMagick usando il tuo package manager preferito o scarica la versione più recente.' failing_emails_warning: 'Ci sono %{num_failed_jobs} job di email falliti. Controlla il file app.yml e assicurati che le impostazioni del mail server siano corrette. Vedi i job falliti in Sidekiq.' subfolder_ends_in_slash: "L'impostazione della sottocartella è errata; DISCOURSE_RELATIVE_URL_ROOT finisce con uno slash." - missing_mailgun_api_key: "Il server è configurato per inviare email via mailgun ma non sono state fornite le API key necessarie per verificare i webhook message." - bad_favicon_url: "La favicon non riesce a caricare. Verifica la configurazione della tua favicon_url in Configurazione Sito." - poll_pop3_timeout: "La connessione al server POP3 è in timeout. Le email in entrata non potranno essere recuperate. Per favore verifica il la tua configurazione POP3 ed il service provider." + missing_mailgun_api_key: "Il server è configurato per inviare email via mailgun ma non sono state fornite le API key necessarie per verificare i messaggi webhook." + bad_favicon_url: "La favicon non si carica. Verifica la configurazione della tua favicon_url in Impostazioni del sito." + poll_pop3_timeout: "La connessione al server POP3 sta scadendo. Le email in entrata non sono state scaricate. Per favore verifica il la tua configurazione POP3 e il fornitore di servizi." poll_pop3_auth_error: "La connessione al server POP3 è fallita per un errore di autenticazione. Per favore verifica la tua configurazione POP3." site_settings: censored_words: "Parole che saranno automaticamente sostituite con ■■■■" @@ -788,15 +772,15 @@ it: min_first_post_length: "Lunghezza minima del primo messaggio (corpo del testo), in caratteri" min_private_message_post_length: "Lunghezza minima in caratteri per i messaggi" max_post_length: "Lunghezza massima dei messaggi in caratteri" - topic_featured_link_enabled: "Abilita il post di link con topics." - show_topic_featured_link_in_digest: "Mostra il feature link del topic nella email di sommario." + topic_featured_link_enabled: "Abilita la pubblicazione di collegamenti con gli argomenti." + show_topic_featured_link_in_digest: "Mostra i collegamenti in primo piano dell'argomento nella email riepilogativa." min_topic_title_length: "Numero minimo di caratteri per i titoli degli argomenti" max_topic_title_length: "Numero massimo di caratteri per i titoli degli argomenti" min_private_message_title_length: "Numero minimo di caratteri per un messaggio" min_search_term_length: "Numero minimo di caratteri per le parole cercate" search_tokenize_chinese_japanese_korean: "Attiva la tokenizzazione dei caratteri Cinesi/Giapponesi/Coreani nella ricerca anche sui siti non CJK" - search_prefer_recent_posts: "Se la ricerca su un tuo forum voluminoso è lenta, questa opzione tenta di indicizzare prima i post più recenti" - search_recent_posts_size: "Quanti post recenti da tenere nel tuo indice" + search_prefer_recent_posts: "Se il tuo forum è corposo e la ricerca è lenta, questa opzione tenta di indicizzare prima i messaggi più recenti" + search_recent_posts_size: "Quanti messaggi recenti mantenere nell'indice" allow_uncategorized_topics: "Permetti la creazione di argomenti senza categoria. ATTENZIONE: se ci sono argomenti senza categoria, devi ricategorizzarli prima di disabilitare questa opzione." allow_duplicate_topic_titles: "Permetti più argomenti con lo stesso identico titolo" unique_posts_mins: "Quanti minuti prima che un utente possa inviare un altro argomento con lo stesso contenuto" @@ -809,7 +793,7 @@ it: crawl_images: "Recupera le immagini dagli URL remoti per inserire le dimensioni corrette di ampiezza e altezza nel tag." download_remote_images_to_local: "Scarica localmente le immagini remote; ciò permettei di evitare immagini assenti." download_remote_images_threshold: "Minimo spazio disco necessario per scaricare le immagini remote in locale (in percentuale)" - download_remote_images_max_days_old: "Non scaricare immagini remote per post che sono più vecchi di n giorni." + download_remote_images_max_days_old: "Non scaricare immagini remote per messaggi che sono più vecchi di n giorni." disabled_image_download_domains: "Le immagini non verranno mai scaricate dai seguenti domini. Elenco delimitato dal carattere pipe |" editing_grace_period: "Per (n) secondi dopo la creazione del messaggio, le modifiche non saranno tracciate nella cronologia." post_edit_time_limit: "L'autore può modificare o cancellare il proprio messaggio per (n) minuti dopo averlo inserito. Metti 0 per sempre." @@ -818,59 +802,58 @@ it: max_image_width: "Larghezza massima delle miniature delle immagini in un messaggio" max_image_height: "Altezza massima delle miniature delle immagini in un messaggio" category_featured_topics: "Numero di argomenti mostrati per categoria nella pagina /categories. Dopo il cambiamento di questo valore, la pagina delle categorie impiega fino a 14 minuti per aggiornarsi." - show_subcategory_list: "Quando si accede ad una categoria, mostra l'elenco di sottocategorie anziché l'elenco di argomenti. " fixed_category_positions: "Se attivata, potrai ordinare le categorie. Se non attivata, le categorie vengono elencate in ordine di attività." fixed_category_positions_on_create: "Se attivata, verrà mantenuto l'ordinamento delle categorie nella finestra di creazione argomenti (richiede fixed_category_positions)." add_rel_nofollow_to_user_content: "Aggiungi l'attributo rel nofollow a tutti i contenuti degli utenti, tranne per i link interni (compresi i domini di livello superiore). Se modifichi questa opzione devi aggiornare tutti i messaggi con il comando \"rake posts:rebake\"" exclude_rel_nofollow_domains: "Una lista di domini a cui non aggiungere \"nofollow\" ai collegamenti. Inoltre tld.com autorizzerà automaticamente sub.tld.com. Dovresti perlomeno aggiungere il dominio di primo livello di questo sito, per aiutare i motori di ricerca a trovare tutto il contenuto. Se parti del tuo sito si trovano su altri domini, aggiungi anche quelli." post_excerpt_maxlength: "Lunghezza massima dell'estratto / riassunto di un messaggio." - show_pinned_excerpt_mobile: "Mostra estratti dei topic appuntati nella vista mobile." - show_pinned_excerpt_desktop: "Mostra estratti dei topic appuntati nella vista desktop." + show_pinned_excerpt_mobile: "Mostra estratti sugli argomenti appuntati nella vista mobile." + show_pinned_excerpt_desktop: "Mostra estratti sugli argomenti appuntati nella vista desktop." post_onebox_maxlength: "Lunghezza massima in caratteri di un messaggio Discourse in Onebox." - onebox_domains_blacklist: "Una lista di domini che non sarà mai oneboxed." - max_oneboxes_per_post: "Numero massimo di oneboxes in un post." + onebox_domains_blacklist: "Una lista di domini che non verranno mai oneboxed." + max_oneboxes_per_post: "Numero massimo di oneboxe in un messaggio." logo_url: "L'immagine nel logo in alto a sinistra del sito, dovrebbe essere larga e di forma rettangolare. Se non impostata, verrà usato il testo del titolo del sito." - digest_logo_url: "L'immagine alternativa del logo usato in cima al tuo sommario email del sito. Dovrebbe avere una forma rettangolare ampia. Non dovrebbe essere un'immagine SVG. Se lasciato vuoto saraà usato il `logo_url`." + digest_logo_url: "Il logo alternativo usato in cima alla email di riepilogo. Dovrebbe essere a forma di un ampio rettangolo. Non dovrebbe essere un'immagine SVG. Se lasciato vuoto, sarà utilizzato il campo `logo_url`. " logo_small_url: "Il piccolo logo in alto a sinistra del tuo sito, dovrebbe essere a forma di quadrato. Se non impostato, verrà mostrata l'icona di una casa." - favicon_url: "Una favicon per il tuo sito, vedi http://en.wikipedia.org/wiki/Favicon, per funzionare correttamente su un CDN deve essere una png" + favicon_url: "La favicon del tuo sito, vedi http://it.wikipedia.org/wiki/Favicon, per funzionare correttamente su una CDN deve essere una png" apple_touch_icon_url: "Icona usata per dispositivi touch Apple. La dimensione consigliata è 144 x 144 pixel." notification_email: "L'indirizzo presente nel campo from: usato per inviare tutte le email essenziali di sistema. Il dominio indicato deve avere i record SPF, DKIM e reverse PTR impostati correttamente perché l'email arrivi." email_custom_headers: "Una lista di intestazioni email personalizzate delimitata da una barra verticale (pipe |)" email_subject: "Formato personalizzabile dell'oggetto per le email standard. Vedi https://meta.discourse.org/t/customize-subject-format-for-standard-emails/20801" - force_https: "Forza il tuo sito ad usare solo HTTPS. ATTENZIONE: NON abilitare questa opzione finché non hai verificato che HTTPS è pienamente configurato e sta funzionando ovunque. Hai verificato il tuo CDN, social login, ed ogni logo esterno / dipendenze per essere sicuro che sono tutti compatibili con HTTPS?" + force_https: "Forza il tuo sito ad usare solo HTTPS. ATTENZIONE: NON abilitare questa opzione finché non hai verificato che HTTPS è pienamente configurato e sta funzionando ovunque! Hai verificato il tuo CDN, tutti i social login, ed ogni logo esterno / dipendenze per essere sicuro che sono anch'essi tutti compatibili con HTTPS?" summary_score_threshold: "Il punteggio minimo richiesto affinché un messaggio sia incluso in 'Riassumi Questo Argomento'" summary_posts_required: "Minimo numero di messaggi in un argomento affinché venga abilitato 'Riassumi Questo Argomento' " summary_likes_required: "Minimo numero di \"Mi piace\" in un argomento affinché venga abilitato 'Riassumi Questo Argomento'" summary_percent_filter: "Quando un utente clicca su 'Riassumi Questo Argomento', mostra i primi % messaggi" summary_max_results: "Massimo numero di messaggi mostrati in 'Riassumi Argomento'" - enable_private_messages: "Consente agli utenti con trust di livello 1 (configurabile con min trust level per l'invio di messaggi) di creare messaggi e rispondere ai messaggi. Nota che lo staff può inviare messaggi in ogni caso." + enable_private_messages: "Autorizza gli utenti con livello di esperienza 1 (configurabile attraverso \"min livello di esperienza per l'invio di messaggi\") a creare e rispondere ai messaggi. Nota che lo staff può inviare messaggi in ogni caso." enable_long_polling: "Il message bus per le notifiche può usare il long polling" long_polling_base_url: "URL di base usato per il long polling (quando una CDN serve contenuto dinamico, bisogna impostarlo come origin pull) es. http://origin.site.com" long_polling_interval: "Tempo di attesa prima che il server risponda ai client che non ci sono dati da trasmettere (solo per utenti autenticati)" polling_interval: "Se non si esegue il long polling, quanto spesso i client autenticati devono fare poll in millisecondi" anon_polling_interval: "Frequenza in millisecondi con cui client anonimi effettuano il poll" background_polling_interval: "Quanto spesso i client devono fare poll in millisecondi (quando la finestra è in background)" - flags_required_to_hide_post: "Numero di flag che determinano se un post sarà automaticamente nascosto ed un messaggio inviato all'utente (0 per nessuno)" + flags_required_to_hide_post: "Numero di segnalazioni che rendono un messaggio automaticamente nascosto. L'utente riceve un messaggio privato (0 per mai)" cooldown_minutes_after_hiding_posts: "Quanti minuti l'utente deve attendere prima di poter modificare un messaggio che è stato nascosto a causa di segnalazioni" - max_topics_in_first_day: "Il massimo numero di topic che un utente può creare in 24 ore dopo aper creato il suo primo post" - max_replies_in_first_day: "Il massimo numero di reply che un utente può creare in 24 ore dopo aver creato il suo primo post" + max_topics_in_first_day: "Numero massimo di argomenti che un utente può creare nel periodo di 24 ore successivo alla creazione del suo primo messaggio" + max_replies_in_first_day: "Numero massimo di risposte che un utente può creare nel periodo di 24 ore successivo alla creazione del suo primo messaggio" tl2_additional_likes_per_day_multiplier: "Aumenta il limite di \"Mi piace\" al giorno ammessi per gli utenti con livello di esperienza 2 (Assiduo), moltiplicando per questo numero" tl3_additional_likes_per_day_multiplier: "Aumenta il limite di \"Mi piace\" al giorno ammessi per gli utenti con livello di esperienza 3 (Esperto) moltiplicando per questo numero" tl4_additional_likes_per_day_multiplier: "Aumenta il limite di \"Mi piace\" al giorno ammessi per gli utenti con livello di esperienza 4 (Veterano), moltiplicando per questo numero" - num_spam_flags_to_block_new_user: "Se i post di un nuovo utente prendono questo numero di spam flag da num_users_to_block_new_user differenti utenti, nascondi tutti i suoi post ed impedisci post futuri. 0 per disabilitare." - num_users_to_block_new_user: "Se i post di un nuovo utente ricevono segnalazioni num_spam_flags_to_block_new_user segnalazioni di spam da questo numero di utenti, nascondi tutti i messaggi dell'utente e impedisci ulteriori invii. 0 per disabilitare questa funzionalità." + num_spam_flags_to_block_new_user: "Se i messaggi di un nuovo utente ricevono questo numero di segnalazioni spam da num_users_to_block_new_user diversi utenti, nascondi tutti i suoi messaggi ed impediscigli di crearne altri. 0 per disabilitare." + num_users_to_block_new_user: "Se i messaggi di un nuovo utente ricevono num_flags_to_block_new_user segnalazioni di spam da così tanti utenti diversi, nascondi tutti i suoi messaggi e impediscigli ulteriori invii. 0 per disabilitare." notify_mods_when_user_blocked: "Se un utente è bloccato automaticamente, manda un messaggio ai moderatori." flag_sockpuppets: "Se un nuovo utente risponde ad un argomento dallo stesso indirizzo IP dell'utente che ha aperto l'argomento stesso, segnala entrambi i messaggi come potenziale spam." traditional_markdown_linebreaks: "Usa l'accapo tradizionale in Markdown, cioè due spazi a fine riga per andare a capo." - allow_html_tables: "Consenti di specificare le tabelle in Markdown usanto tag HTML. TABLE, THEAD, TD, TR, TH saranno consentite (richiede un full rebake di tutti i vecchi post contenenti tabelle)" + allow_html_tables: "Consenti di inserire tabelle in Markdown usando tag HTML. I tag TABLE, THEAD, TD, TR, TH saranno consentiti (richiede un full rebake di tutti i vecchi messaggi contenenti tabelle)" post_undo_action_window_mins: "Numero di minuti durante i quali gli utenti possono annullare le loro azioni recenti su un messaggio (segnalazioni, Mi piace, ecc.)." - must_approve_users: "Lo staff deve approvare tutti i nuovi account utente prima che essi possano accedere al sito.\nATTENZIONE: abilitare questo per un sito live revocherà l'accesso per tutti gli utenti non staff esistenti!" - pending_users_reminder_delay: "Notifica i moderatori se nuovi utenti sono in attesa di approvazione per più di queste ore.\nImposta a -1 per disabiltare le notifiche." + must_approve_users: "Lo staff deve approvare tutti i nuovi account utente prima che essi possano accedere al sito. ATTENZIONE: abilitare l'opzione per un sito live revocherà l'accesso per tutti gli utenti non-staff esistenti!" + pending_users_reminder_delay: "Notifica i moderatori se nuovi utenti sono in attesa di approvazione per più di queste ore. Imposta a -1 per disabilitare le notifiche." maximum_session_age: "L'utente resterà connesso per n ore dall'ultima visita" - ga_domain_name: "OBSOLETO: Nome del dominio Google analytics (ga.js), esempio: miosito.com; vedi http://google.com/analytics" + ga_domain_name: "OBSOLETO: nome del dominio Google analytics (ga.js), esempio: miosito.com; vedi http://google.com/analytics" ga_universal_tracking_code: "Codice di tracking Google Universal Analytics (analytics.js), es: UA-12345678-9; vedi http://google.com/analytics" ga_universal_domain_name: "Nome di dominio Google Universal Analytics (analytics.js), es: miosito.com; vedi http://google.com/analytics" - gtm_container_id: "Container ID di Google Tag Manage. Es: GTM-ABCDEF" + gtm_container_id: "Container id di Google Tag Manager. Es: GTM-ABCDEF" enable_escaped_fragments: "Usa le Ajax-Crawling API di Google se non viene rilevato un webcrawler. Vedi https://developers.google.com/webmasters/ajax-crawling/docs/learn-more" enable_noscript_support: "Abilita il supporto standard ai webcrawler dei motori di ricerca attraverso il tag noscript" allow_moderators_to_create_categories: "Permetti ai moderatori di creare nuove categorie" @@ -890,15 +873,15 @@ it: topics_per_period_in_top_summary: "Numero di argomenti di punta mostrati nel riepilogo di default." topics_per_period_in_top_page: "Numero di argomenti di punta mostrati nella vista espansa 'Mostra Altro'" redirect_users_to_top_page: "Redirigi automaticamente i nuovi utenti e quelli assenti da tempo sulla pagina degli argomenti di punta." - top_page_default_timeframe: "Timeframe di default dalla cima della pagina." + top_page_default_timeframe: "Lasso di tempo di default per la pagina principale." show_email_on_profile: "Mostra l'email di un utente nel suo profilo (visibile solo a se stesso e allo staff)" - prioritize_username_in_ux: "Nella pagina utente mostra prima lo username , la user card ed i post (quando disabilitata il nome è mostrato per primo)" + prioritize_username_in_ux: "Nella pagina utente mostra prima il nome utente, la sua scheda e i suoi messaggi (quando l'opzione è disabilitata viene mostrato prima il nome)" email_token_valid_hours: "I messaggi di password dimenticata / attivazione account sono validi per (n) ore." enable_badges: "Attiva il sistema a distintivi" - enable_whispers: "Consenti allo staff comunicazioni privati con topic." + enable_whispers: "Consenti allo staff comunicazioni private all'interno degli argomenti." allow_index_in_robots_txt: "Specifica nel file robots.txt che questo sito permette l'indicizzazione da parte dei motori di ricerca." email_domains_blacklist: "Una lista di domini email separati dal carattere pipe \"|\" con cui gli utenti non possono registrare un account. Ad esempio: mailinator.com/trashmail.net" - email_domains_whitelist: "Una lista delimitata con carattere pipe di domini email che gli utenti devono usare per registrare i loro account. ATTENZIONE: Utenti con domini email differenti non saranno accettati!" + email_domains_whitelist: "Una lista di domini email delimitati da carattere pipe (|) che gli utenti DEVONO usare per poter registrare i propri account. ATTENZIONE: gli utenti con domini email differenti da questi non saranno accettati!" forgot_password_strict: "Non informare gli utenti dell'esistenza o meno dell'account quando richiamano la funzione per la password dimenticata." log_out_strict: "Quando ci si disconnette, esci da TUTTE le sessioni dell'utente su tutti i dispositivi" version_checks: "Verifica su Discourse Hub l'esistenza di aggiornamenti e mostra i messaggi per le nuove versioni nel cruscotto /admin" @@ -909,27 +892,25 @@ it: invite_passthrough_hours: "Per quanto tempo un utente può usare una chiave d'invito per connettersi, espresso in ore" invite_only: "La registrazione pubblica è disabilitata, tutti i nuovi utenti devono essere invitati esplicitamente da altri membri o dallo staff." login_required: "E' richiesta l'autenticazione per leggere contenuti su questo sito, disabilita l'accesso anonimo." - min_username_length: "Lunghezza minima del nome utente in caratteri." - max_username_length: "Lunghezza massima del nome utente in caratteri. " reserved_usernames: "Nomi utente ai quali non è permessa l'iscrizione.." min_password_length: "Minima lunghezza della password." min_admin_password_length: "Lunghezza minima password Amministratore." block_common_passwords: "Non permettere password che sono nelle 10.000 password più comuni." enable_sso: "Abilita il single sign on da sito esterno (ATTENZIONE: L'INDIRIZZO EMAIL DEGLI UTENTI *DEVE* ESSERE VALIDATO DAL SITO ESTERNO!)" - verbose_sso_logging: "Log verboso per diagnostica relativa SSO nei /logs" + verbose_sso_logging: "Log verboso per diagnostica relativa SSO in /logs" enable_sso_provider: "Implementa il protocollo SSO Discourse nell'endpoint /session/sso_provider, richiede che sia impostata l'opzione sso_secret" - sso_url: "URL dell'endpoint Single Sign On (deve includere http:// o https://)" + sso_url: "URL per l'endpoint del single sign on (deve includere http:// o https://)" sso_secret: "Stringa segreta utilizzata per autenticare crittograficamente le informazioni SSO, assicurati che sia lunga almeno 10 caratteri" sso_overrides_bio: "Sovrascrive la biografia utente nel profilo utente ed impedisce agli utenti di cambiarla" - sso_overrides_email: "Sovrascrivi l'email locale con l'email del sito esterno presente nel payload SSO ad ogni login e previeni modifiche locali. (ATTENZIONE: possono verificarsi discrepanze a causa della normailzzazione delle email locali)" - sso_overrides_username: "Sovrascrivi lo username locale con lo username del sito esterno nel payload SSO ad ogni login e previeni modifiche locali. (ATTENZIONE: possono verificarsi discrepanze a causa di differenze nella lunghezza/requisiti dello username)" - sso_overrides_name: "Sovrascrivi il nome completo locale con il nome completo del sito esterno presente nel payload SSO ad ogni login, ed impedisci modifiche locali." + sso_overrides_email: "Sovrascrive le email locali con quelle del sito esterno con cui ci si connette tramite SSO (ATTENZIONE: potrebbero avvenire discrepanze a causa delle normalizzazioni delle email locali)" + sso_overrides_username: "Sovrascrive il nome utente locale con quello del sito esterno con cui ci si connette tramite SSO e impedisce cambiamenti locali (ATTENZIONE: potrebbero verificarsi discrepanze a causa delle differenze tra lunghezza effettiva e richiesta del nome utente)" + sso_overrides_name: "Sovrascrive il nome locale completo con quello del sito esterno con cui ci si connettei tramite SSO, e impedisce modifiche locali." sso_overrides_avatar: "Sostituisce l'avatar dell'utente con un avatar su un sito esterno usando SSO. Se abilitato, si raccomanda di disabilitare allow_uploaded_avatars" sso_not_approved_url: "Ridirigi a questa URL gli account SSO non approvati" - sso_allows_all_return_paths: "Non restringere il dominio per i return_paths forniti da SSO (per default i return path devono essere sul sito corrente)" + sso_allows_all_return_paths: "Non restringere il dominio per i return_paths forniti da SSO (per default il return path deve essere sul sito corrente)" enable_local_logins: "Abilita la connessione degli account con nome utente e password locali. (Nota: deve essere abilitato affinché funzionino gli inviti)" allow_new_registrations: "Abilita la registrazione di nuovi utenti. Se deselezionato, non sarà possibile creare nuovi account." - enable_signup_cta: "Mostra una notifica agli utenti anonimi di ritorno mostrando loro il sign up per un account" + enable_signup_cta: "Mostra una notifica agli utenti anonimi che ritornano chiedendo loro di registrare un account." enable_yahoo_logins: "Abilita l'autenticazione con Yahoo" enable_google_oauth2_logins: "Abilita l'autenticazione con Google Oauth2. Questo è il metodo di autenticazione attualmente supportato da Google. Richiede una chiave e un secret." google_oauth2_client_id: "Client ID della tua applicazione Google." @@ -1226,22 +1207,6 @@ it: other: "%{count} segnalazioni in attesa di essere revisionate" invite_mailer: subject_template: "%{invitee_name} ti ha invitato a '%{topic_title}' su %{site_domain_name}" - text_body_template: | - %{invitee_name} ti invita ad una discussione - - > **%{topic_title}** - > - > %{topic_excerpt} - - su - - > %{site_title} -- %{site_description} - - Se sei interessato, clicca il collegamento qui sotto: - - %{invite_link} - - L'invito è da parte di un utente affidabile, perciò puoi rispondere alla discussione immediatamente. invite_forum_mailer: subject_template: "%{invitee_name} ti invita a partecipare su %{site_domain_name}" invite_password_instructions: diff --git a/config/locales/server.ja.yml b/config/locales/server.ja.yml index cf4ba71ae6..97d0b9a99b 100644 --- a/config/locales/server.ja.yml +++ b/config/locales/server.ja.yml @@ -32,7 +32,6 @@ ja: anonymous: "匿名" emails: incoming: - default_subject: "%{email}からメール" show_trimmed_content: "続きを読む" errors: &errors format: '%{attribute} %{message}' @@ -162,34 +161,6 @@ ja: - 会話は礼儀正しく、マナーを守りましょう。 - しっかりとした批判は良いかと思います。ただし「その人」に対してでは無く、「そのアイディア」に対してしましょう。 詳細は[コミュニティガイドライン](/guidelines)を参照してください。このメッセージは最初の %{education_posts_text} のみに表示されます。 - sequential_replies: |+ - ### 一度に複数の投稿に返信する - - トピックにたくさん返信する代わりに、以前の投稿への @name メンションや引用などを活用して返信を一つの投稿にまとめましょう。 - - 文章を選択し、引用して返信ボタンをクリックすることで、文章を引用して編集することができます。 - - こまごまと何度も返信するより、まとまって返信をすることで、より見やすく、より話しやすくなります。 - - dominating_topic: | - ### 他のユーザーも議論に参加させてあげましょう - - このトピックはあなたにとても重要なもののようですね – ここへ %{percent}% 以上の返信をあなたが行っています。 - - 他のユーザーも返信するためにも、ある程度時間を開けているか確認してみましょう。 - too_many_replies: | - ### このトピックに回答出来る制限を超えました - - 申し訳ありません。新しいユーザーの同じトピックへの返信は%{newuser_max_replies_per_topic} 回に一時的に制限されています。 - - 回答を追加する代わりに、以前の回答を編集するか、別のトピックを訪れる事を検討してください。 - reviving_old_topic: | - ### このトピックを復活させてもよろしいですか? - - このトピックへの最後の返信は%{days}日前です。 - あなたの返信はトピック一覧の一番上に移動させ、以前に返信した人宛に通知が送られます。 - - 本当に過去の会話を復元してもよろしいですか? activerecord: attributes: category: @@ -331,14 +302,11 @@ ja: other: "だいたい %{count} 年前" password_reset: no_token: "申し訳ありません。パスワード変更のためのリンクは古いようです。ログインボタンを選択し、再度パスワード変更を行ってください" - choose_new: "新しいパスワードを選択してください" - choose: "パスワードを入力ください" update: 'パスワード更新' save: 'パスワードを設定する' title: 'パスワードリセット' success: "パスワードを更新し、ログインしました。" success_unapproved: "パスワードを更新しました。" - continue: "%{site_name} に進む" change_email: confirmed: "メールアドレスが更新されました。" please_continue: "%{site_name}へ" @@ -567,8 +535,6 @@ ja: facebook_config_warning: 'サーバが Facebook アカウントによるサインアップ・ログイン可能な設定 (enable_facebook_logins) になっていますが、app id と app secret が設定されていません。サイトの設定 にて設定を更新してください。詳しくはこちらを参考にしてください。' twitter_config_warning: 'サーバが Twitter アカウントによるサインアップ・ログイン可能な設定 (enable_twitter_logins) になっていますが、key と secret が設定されていません。サイトの設定 にて設定を更新してください。詳しくはこちらを参考にしてください。' github_config_warning: 'サーバが Github アカウントによるサインアップ・ログイン可能な設定 (enable_github_logins) になっていますが、client id と secret が設定されていません。サイトの設定 にて設定を更新してください。詳しくはこちらを参考にしてください。' - s3_config_warning: 'サーバが S3 にファイルをアップロードするように設定されていますが、次のうち少なくとも1つが設定されていません: s3_access_key_id, s3_secret_access_key or s3_upload_bucket。サイトの設定 にて設定を更新してください。詳しくは "How to set up image uploads to S3?" を参考にしてください。' - s3_backup_config_warning: 'サーバが S3 にバックアップをアップロードするように設定されていますが、次のうち少なくとも1つが設定されていません: s3_access_key_id, s3_secret_access_key or s3_upload_bucket。サイトの設定 にて設定を更新してください。詳しくは "How to set up image uploads to S3?" を参考にしてください' image_magick_warning: 'サーバが大きな画像のサムネイルを作成する設定になっていますが、ImageMagick がインストールされていません。お好きなパッケージマネージャを使って ImageMagick をインストールするか、最新のリリースをダウンロードしてください。' site_settings: censored_words: "自動的に ■■■■ で置換されます" @@ -602,7 +568,6 @@ ja: max_image_width: "投稿内での画像サムネイルの最大の幅" max_image_height: "投稿内での画像サムネイルの最大の高さ" category_featured_topics: "/categories ページに表示されるカテゴリ毎のトピックの数。変更後、カテゴリページの更新におよそ15分程かかります。" - show_subcategory_list: "カテゴリを表示する際にトピック一覧の代わりにサブカテゴリ一覧を表示" fixed_category_positions: "チェックすると、カテゴリの表示順をコントロールできます。チェックしない場合、アクティビティ順に表示されます" fixed_category_positions_on_create: "チェックすると、トピック作成ダイアログ上でカテゴリの順序が維持されます(fixed category positions が必要)。" add_rel_nofollow_to_user_content: " 内部リンク(親ドメインを含む)を除き、投稿されたすべてのユーザコンテンツに rel nofollow を追加する。この設定を反映するには \"rake posts:rebake\" を実行して baked markdown をすべて更新する必要があります" @@ -979,20 +944,6 @@ ja: other: "%{count}件の通報が対応待ちです" invite_mailer: subject_template: "%{invitee_name} があなたを %{site_domain_name}の'%{topic_title}'に招待しました" - text_body_template: | - %{invitee_name} があなたを招待しました - - > %{site_title} -- %{site_description} - - > **%{topic_title}** - > - > %{topic_excerpt} - - もし興味があれば下のリンクをクリックしてください: - - %{invite_link} - - これは信頼されたユーザからの招待のため、すぐに議論に返答することができます invite_forum_mailer: subject_template: "%{invitee_name} あなたを %{site_domain_name}に招待しました。" invite_password_instructions: @@ -1064,12 +1015,6 @@ ja: ``` csv_export_succeeded: subject_template: "データのダウンロード準備が完了しました" - text_body_template: | - データ出力が完了しました! :dvd: - - %{file_name} (%{file_size}) - - このダウンロードリンクは48時間有効です csv_export_failed: subject_template: "データのエクスポートに失敗しました" text_body_template: "申し訳ありません。データのエクスポートに失敗しました。ログを確認するかスタッフメンバーにお問い合わせください。" diff --git a/config/locales/server.ko.yml b/config/locales/server.ko.yml index c260046624..e8d17f6d90 100644 --- a/config/locales/server.ko.yml +++ b/config/locales/server.ko.yml @@ -32,7 +32,6 @@ ko: anonymous: "익명" emails: incoming: - default_subject: "%{email} 으로부터 받은 이메일" show_trimmed_content: "일부 내용만 보기" errors: &errors format: '%{attribute} %{message}' @@ -176,31 +175,6 @@ ko: - 건설적인 비판은 환영입니다만, 사람 말고 *아이디어*를 비판해주세요. 이 도움말은 최초 %{education_posts_text}번 글을 올릴 때까지만 나타납니다. 자세한 내용은 [커뮤니티 가이드라인](/guidelines)를 참조하여 주세요. - sequential_replies: | - ### 여러 글에 답글 한번에 달아보세요. - - 답글을 연속으로 한 글타래에 달기 보다는 지난 글을 인용하거나 @사용자이름 해서 답글 하나로 작성해보세요. - - 원하시는 글을 선택하시고 답글을 인용 버튼을 선택함으로써 이전에 쓰셨던 답글에 추가로 인용을 달거나 수정하실 수 있습니다. - - 작은 답글을 여러개 다는 것보다 한개의 상세한 답글이 모두에게 글타래를 읽기 편하게 만듭니다. - dominating_topic: | - ### 다른 유저들도 이 대화에 참여할 수 있도록 해주세요 - - 이 주제에 %{percent}% 이상의 답글을 다셨군요. - - 다른 유저들도 그들의 의견을 나눌 수 있도록 충분한 시간을 기다리고 계신가요? - too_many_replies: | - ### 댓글 개수 제한에 걸렸습니다. - - 죄송합니다. 신규 사용자들은 같은 주제에 %{count}개까지만 댓글을 달 수 있습니다. - 댓글을 다는 대신 이전 댓글의 내용을 수정하거나, 다른 글타래를 읽어보는 건 어떨까요? - reviving_old_topic: | - ### 이 글타래를 부활시키겠습니까? - - 이 글타래에 달린 마지막 댓글은 이미 %{days}일 이전에 달렸습니다. 댓글을 새로 달면 이 글타래가 글 목록의 최상단으로 올라가게 되고, 글에 참여한 사람들에게 알림이 됩니다. - - 이 글타래에 대한 논의를 재개하고 싶으신 게 확실하신가요? activerecord: attributes: category: @@ -336,14 +310,11 @@ ko: almost_x_years: other: "약 %{count}년 전" password_reset: - choose_new: "새로운 비밀번호를 적어주세요." - choose: "비밀번호를 선택해 주세요" update: '비밀번호 변경' save: '비밀번호 설정' title: '비밀번호 초기화' success: "비밀번호를 성공적으로 변경하고 지금 로그인 되었습니다." success_unapproved: "비밀번호를 성공적으로 변경하였습니다." - continue: "%{site_name}으로 가기" change_email: confirmed: "이메일 주소가 변경되었습니다." please_continue: "%{site_name}으로 가기" @@ -563,8 +534,6 @@ ko: facebook_config_warning: '당신의 서버는 페이스북을 통한 가입을 설정하였습니다(enable_facebook_logins), 그러나 app id와 app secret 값을 입력하지 않았습니다. 사이트 설정 에서 업데이트 해주세요. 가이드 읽어보기.' twitter_config_warning: '당신의 서버는 트위터를 통한 가입을 설정하였습니다(enable_twitter_logins), 그러나 key 와 secret 값이 입력하지 않았습니다. 사이트 설정 에서 업데이트 해주세요. 가이드 읽어보기.' github_config_warning: '당신의 서버는 Github를 통한 가입을 설정하였습니다(enable_github_logins), 그러나 client id 와 secret 값을 입력하지 않았습니다. 사이트 설정 에서 업데이트 해주세요. 가이드 읽어보기.' - s3_config_warning: '파일을 Amazon S3로 업로드 하도록 설정하였습니다. 하지만 아직 Access key id(s3_access_key_id), Secret access key(s3_secret_access_key) 혹은 S3 bucket(s3_upload_bucketat) 중 하나를 설정하지 않았습니다. 사이트 세팅에서 설정해주세요. 자세히 알아보기("How to set up image uploads to S3?").' - s3_backup_config_warning: 's3를 이용한 서버 설정이 완료 되지 않았습니다: s3_access_key_id, s3_secret_access_key, s3_secret_access_key 또는 s3_upload_bucket. 사이트 설정 에 가셔서 업데이트 하세요. "How to set up image uploads to S3?" 읽어 보세요.' image_magick_warning: '큰 이미지의 섬네일 만드는 설정이 있지만, ImageMagick가 설치되지 않았습니다. 최신버전 받기.' site_settings: censored_words: "단어는 자동적으로 `■■■■` 로 대체 됩니다." @@ -598,7 +567,6 @@ ko: max_image_width: "글에서 사용할 수 있는 썸네일 이미지의 최대 너비" max_image_height: "글에서 사용할 수 있는 썸네일 이미지의 최대 높이" category_featured_topics: "카테고리 페이지에서 한 카테고리당 보여질 글타래의 수" - show_subcategory_list: "카테고리에 들어갈 경우 글타래 리스트 대신 하위카테고리의 리스트를 보여준다." fixed_category_positions: "활성화하면 고정된 순서의 카테고리들을 바꿀 수 있다. 활성화 하지 않으면 카테고리는 활동적인 순서에 따라 정렬된다." fixed_category_positions_on_create: "선택 시, 카테고리 정렬이 유지됩니다. (fixed_category_positions가 체크돼 있어야 합니다.)" add_rel_nofollow_to_user_content: "사용자 생성 컨텐츠에 대해서 rel nofollow 를 설정함. parent domain을 포함한 internal link는 예외임. 이 설정을 바꾸려면 모든 baked markdown을 \"rake posts:rebake\" 명령으로 변경해주서야 함" @@ -666,8 +634,6 @@ ko: invite_passthrough_hours: "사용되어진 방문키를 로그인하는데 재사용할 수 있는 기간, 시간" invite_only: "공개 가입은 불가하도록 설정됨. 초대를 받아야만 신규 가입 가능함." login_required: "글을 읽으려면 인증(로그인)이 필요함" - min_username_length: "아이디 최소길이 (문자 갯수)" - max_username_length: "아이디 최대길이 (문자 갯수)" reserved_usernames: "회원가입 금지된 아이디 목록" min_password_length: "비밀번호 최소 글자수." block_common_passwords: "가장 흔히 사용되는 10,000개 비밀번호 목록에 있는 비밀번호를 사용하는 것을 허용하지 않음." @@ -956,22 +922,6 @@ ko: other: "%{count}개의 신고가 접수 대기 중" invite_mailer: subject_template: "%{invitee_name} 회원님이 %{site_domain_name} 에 '%{topic_title}'에 초대하였습니다." - text_body_template: | - %{invitee_name}님께서 당신을 토의에 초대했습니다. - - > **%{topic_title}** - > - > %{topic_excerpt} - - 사이트: - - > %{site_title} -- %{site_description} - - 관심이 있으시면 아래 링크로 들어가기: - - %{invite_link} - - 신뢰된 사용자에게서 온 초대므로 이 토의에 바로 답글을 달 수 있습니다. invite_forum_mailer: subject_template: "%{site_domain_name}의 %{invitee_name}님께서 당신을 초대하였습니다." invite_password_instructions: @@ -1035,12 +985,6 @@ ko: ``` csv_export_succeeded: subject_template: "데이터 추출이 완료되었습니다." - text_body_template: | - 데이터 내보내기가 성공적으로 끝났습니다! :dvd: - - %{file_name} (%{file_size}) - - 48시간 후에 위의 다운로드 링크는 지워집니다. csv_export_failed: subject_template: "데이터 추출 실패" text_body_template: "죄송합니다. 데이터 추출에 실패하였습니다. 로그를 확인하시거나 관리자에게 문의해주세요." diff --git a/config/locales/server.nb_NO.yml b/config/locales/server.nb_NO.yml index a909965634..a98256932e 100644 --- a/config/locales/server.nb_NO.yml +++ b/config/locales/server.nb_NO.yml @@ -35,7 +35,6 @@ nb_NO: remove_posts_deleted_by_author: "Slettet av forfatter" emails: incoming: - default_subject: "Innkommende e-post fra %{email}" show_trimmed_content: "Vis beskjært innhold" errors: no_message_id_error: "Skjer når en e-post ikke har noen «Message-Id»-header." @@ -100,7 +99,6 @@ nb_NO: max_username_length_range: "Du kan ikke sette maksimum under minimum." default_categories_already_selected: "Du kan ikke velge en annen kategori brukt i en annen liste." invite: - accept_invite: "Godta invitasjon" not_found: "Ditt invitasjonssymbol er ugyldig. Kontakt sidens administrator." bulk_invite: file_should_be_csv: "Filen som lastes opp burde være i csv format." @@ -219,40 +217,6 @@ nb_NO: - Konstruktiv kritikk er velkommen, men husk å kritisere *idéer,* ikke mennesker. For mer informasjon [se retningslinjene våre](/guidelines). Dette panelet vil kun vises for ditt/dine første %{education_posts_text}. - avatar: | - ### Hva med et bilde til kontoen din? - - Du har opprettet noen innlegg og svar, men profilbildet ditt er ikke så unikt som du er -- det er bare en bokstav. - - Har du tenkt på å **[gå til brukerprofilen din](%{profile_path})** og laste opp et bilde som representerer deg? - - Det er enklere å følge diskusjoner og finne interessante personer i samtaler når alle har et unikt profilbilde! - sequential_replies: | - ### Vurder å svare til flere innlegg på samme tid - - I stedet for mange sekvensielle svar til et emne så kan du vurdere ett enkelt svar som inkluderer sitater fra tidligere innlegg og @navn referanser. - - Du kan redigere og legge til sitater i tidligere svar ved å markere tekst og velge quote reply knappen som dukker opp. - - Det er lettere for alle å lese emner som har færre og dypere svar enn mange små individuelle svar. - dominating_topic: | - ### La andre delta i diskusjonen - - Dette emnet er tydeligvis viktig for deg – du har skrevet mer enn %{percent}% av svarene her. - - Er du sikker du gir nok tid til andre å dele sine innspill også? - too_many_replies: | - ### Du har nådd maksimalt antallet mulige svar for dette emnet - - Vi beklager, men nye brukere er midlertidig begrenset til %{newuser_max_replies_per_topic} svar per emne. - - Fremfor å legge inn nok et svar kan du vurdere å redigere dine tidligere svar eller delta i andre diskusjoner. - reviving_old_topic: | - ### Gjenoppliv dette emnet? - - Det siste innlegget er nå mer enn %{days} dager gammelt. Svaret ditt vil bumpe emnet opp til toppen av listen og vil varsle alle som tidligere har vært involvert i samtalen. - - Er du sikker du vil fortsette denne gamle samtalen? activerecord: attributes: category: @@ -452,7 +416,6 @@ nb_NO: title: 'Tilbakestill passord' success: "Du har endret passordet og er nå logget inn." success_unapproved: "Du har endret ditt passord." - continue: "Fortsett til %{site_name}" change_email: confirmed: "E-postaddressen din er blitt oppdatert." please_continue: "Fortsett til %{site_name}" @@ -728,8 +691,6 @@ nb_NO: enable_badges: "Aktiver badge system" log_out_strict: "Ved utlogging, logg ut av ALLE enheter som er pålogget" invite_expiry_days: "Hvor lenge en bruker invitasjons nøkkel er gyldig i dager" - min_username_length: "Minste antall tegn tillatt for brukernavn." - max_username_length: "Største antall tegn tillatt for brukernavn." min_password_length: "Minimums passordslengde." min_admin_password_length: "Minimums passordslengde for administrator." rate_limit_create_post: "Etter et innlegg må ny brukere vente (n) sekunder før de kan skrive et nytt" @@ -747,7 +708,6 @@ nb_NO: digest_posts: "Maksimalt antall populære innlegg å vise i oppsummerings-e-posten." digest_other_topics: "Maksimalt antall emner å vise i delen 'Nytt i emner og kategorier du følger' i oppsummerings-e-posten." digest_min_excerpt_length: "Minimal lengde på utdrag av innlegg i e-post-oppsummeringen, i antall tegn." - delete_digest_email_after_days: "Utelat oppsummerings-eposter for brukere ikke sett på nettstedet siden mer enn (n) dager." digest_suppress_categories: "Utelat disse kategoriene i oppsummerings-eposter" disable_digest_emails: "Deaktivér oppsummerings-eposter for alle brukere." allow_profile_backgrounds: "Gi brukere mulighet til å laste opp profilbakgrunner." @@ -887,7 +847,6 @@ nb_NO: follow_topic: "Følg dette emnet" join_the_discussion: "Les mer" popular_posts: "Populære innlegg" - from_topic_label: "Fra" more_new: "Nytt for deg" subject_template: "[%{site_name}] Oppsummering" unsubscribe: "Denne oppsummeringen blir sendt fra %{site_link} når vi ikke har sett deg på en stund. For å melde deg av %{unsubscribe_link}." diff --git a/config/locales/server.nl.yml b/config/locales/server.nl.yml index 62c2b0bd96..f4f533154d 100644 --- a/config/locales/server.nl.yml +++ b/config/locales/server.nl.yml @@ -109,7 +109,6 @@ nl: default_categories_already_selected: "Je kan geen categorie selecteren die wordt gebruikt in een andere lijst." s3_upload_bucket_is_required: "U kunt niet de uploads van de S3 toestaan totdat u de 's3_upload_bucket' hebt verleend." invite: - accept_invite: "Uitnodiging accepteren" not_found: "Uw uitnodigingstoken is ongeldig. Neem contact op met de beheerder van de website." bulk_invite: file_should_be_csv: "Het geüploade bestand moet in csv-formaat zijn." @@ -241,40 +240,6 @@ nl: - Je mag best kritisch zijn, maar onthoud dat je kritiek moet geven op *ideeën*, niet op mensen. Voor meer informatie, [bekijk onze regels](/guidelines). Deze tekst zal alleen verschijnen bij je eerste %{education_posts_text}. - avatar: | - ### Hoe lijkt het je om een foto te gebruiken voor je account? - - Je heb al een aantal topics en reacties geplaatst, maar je profielfoto is nog niet zo uniek als jij zelf -- het is maar een letter. - - Heb je overwogen **[visiting your user profile](%{profile_path})** en een foto die weergeeft wie jij bent te uploaden? - - Het is gemakkelijker om discussies en interessante personen in conversaties te volgen als iedereen een unieke profielfoto heeft! - sequential_replies: | - ### Overweeg om op meerdere berichten ineens te reageren - - In plaatst van een reactie per bericht te plaatsten, kan je ook meerdere berichten ineens citeren en @namen noemen in je reactie. - - Je kan je vorige reactie wijzigen en er een citaat aan toevoegen door de betreffende tekst te selecteren en op de citeer knop te drukken die dan verschijnt. - - Het is voor iedereen makkelijker om topics te lezen met minder losstaande reacties. - dominating_topic: | - ### Laat anderen meedoen in de conversatie - - Deze topic is duidelijk belangrijk voor je – meer dan %{percent}% van de reacties zijn van jou. - - Hou je in de gaten dat anderen ook de ruimte krijgen om hun visie te geven? - too_many_replies: | - ### Je hebt de reactielimiet voor deze topic bereikt - - Sorry, maar nieuwe gebruikers mogen tijdelijk niet meer dan %{newuser_max_replies_per_topic} reacties plaatsen in het desbetreffende topic. - - Overweeg een eerdere reactie te wijzigen in plaats van nog een nieuwe reactie te plaatsen. - reviving_old_topic: | - ### Oude topic weer ophalen? - - De laatste reactie op dit bericht was meer dan %{days} dagen geleden. Als je nu een reactie plaatst, zal deze topic weer bovenaan de lijst verschijnen en zal iedereen die meedeed aan deze topic bericht krijgen. - - Weet je zeker dat je verder wil gaan met deze oude topic? activerecord: attributes: category: @@ -483,14 +448,11 @@ nl: other: "bijna %{count} jaren geleden" password_reset: no_token: "Sorry, die link voor het wijzigen van je wachtwoord is te oud. Selecteer de Inloggen knop en kies 'Ik ben mijn wachtwoord vergeten' om een nieuwe link te krijgen." - choose_new: "Kies een nieuw wachtwoord" - choose: "Kies een wachtwoord" update: 'Wijzig wachtwoord' save: 'Bewaar wachtwoord' title: 'Herstel wachtwoord' success: "Je hebt met succes je wachtwoord aangepast en bent nu ingelogd." success_unapproved: "Je hebt met succes je wachtwoord aangepast." - continue: "Ga verder naar %{site_name}" change_email: confirmed: "Je e-mailadres is aangepast." please_continue: "Ga verder naar %{site_name}" @@ -732,8 +694,6 @@ nl: facebook_config_warning: 'De server is geconfigureerd om registratie en inloggen via Facebook mogelijk te maken (enable_facebook_logins), maar er zijn geen app id en app secret waarden opgegeven. Ga naar de Instellingen en vul de waarden in. Zie deze uitleg voor meer informatie.' twitter_config_warning: 'De server is geconfigureerd om registratie en inloggen via Twitter mogelijk te maken (enable_twitter_logins), maar er zijn geen key en secret waarden opgegeven. Ga naar de Instellingen en vul de waarden in. Zie deze uitleg voor meer informatie.' github_config_warning: 'De server is geconfigureerd om registratie en inloggen via Github mogelijk te maken (enable_github_logins), maar er zijn geen client id en secret waarden opgegeven. Ga naar de Instellingen en vul de waarden in. Zie deze uitleg voor meer informatie.' - s3_config_warning: 'De server is geconfigureerd om bestanden naar S3 te uploaden, maar tenminste een van de volgende instellingen is niet opgegeven: s3_access_key_id, s3_secret_access_key of s3_upload_bucket. Ga naar de Instellingen en vul de waarden in. Zie "How to set up image uploads to S3?" voor meer informatie.' - s3_backup_config_warning: 'De server is geconfigureerd om backups naar s3 toe te staan, maar op zijn minst een van de volgende instellingen is niet ingesteld: s3_access_key_id, s3_secret_access_key of s3_backup_bucket. Ga naar de Site Instellingen en stel deze in. Bekijk "How to set up image uploads to S3?" voor meer informatie.' image_magick_warning: 'De server is geconfigureerd om thumbnails te maken van grote afbeeldingen, maar ImageMagick is niet geïnstalleerd. Installeer ImageMagick met je favoriete package manager of download de laatste release.' failing_emails_warning: 'Er zijn %{num_failed_jobs} e-mail jobs mislukt. Controleer in app.yml of de e-mailserver instelling correct zijn. Toon de mislukte jobs in Sidekiq.' subfolder_ends_in_slash: "Je submap setup is onjuist; de DISCOURSE_RELATIVE_URL_ROOT eindigt in een schuine streep." @@ -770,7 +730,6 @@ nl: max_image_width: "Maximale breedte van een thumbnail van afbeeldingen in een bericht" max_image_height: "Maximale hoogte van een thumbnail van afbeeldingen in een bericht" category_featured_topics: "Aantal topics dat wordt weergegeven in de categorielijst. An het wijzigen van dit getal kan het tot 15 minuten duren voordat de lijst is bijgewerkt." - show_subcategory_list: "Laat subcategorielijst zien in plaats van de topiclijst bij het openen van een categorie." fixed_category_positions: "Indien aangevinkt kun je categorieën in een vaste volgorde arrangeren. Indien uitgevinkt zullen de categorieeen gesorteerd worden op activiteit." fixed_category_positions_on_create: "Indien aangevinkt wordt de categorie volgorde aangehouden in het menu voor nieuwe topics (vaste-categorie-posities vereist)." add_rel_nofollow_to_user_content: "Voeg 'rel nofollow' toe aan alle ingediende gebruikerscontent, behalve voor interne links (inclusief bovenliggende domeinen). Als je dit verandert, moet je ook alle berichten opnieuw renderen met: \"rake posts:rebake\"" @@ -843,8 +802,6 @@ nl: invite_passthrough_hours: "Hoe lang een gebruiker een eerder verkregen uitnodigingssleutel kan gebruiken om in te loggen, in uren gespecificeerd" invite_only: "Openbare registratie is uitgeschakeld, alle nieuwe gebruikers moeten expliciet worden uitgenodigd door andere leden of personeel." login_required: "Authenticatie vereist om inhoud te lezen op deze site, verbied anonieme toegang." - min_username_length: "Minimale lengte gebruikersnaam in karakters." - max_username_length: "Maximale lengte gebruikersnaam in karakters." reserved_usernames: "Gebruikersnamen waarvoor registratie niet is toegestaan." min_password_length: "Minimum lengte wachtwoord." min_admin_password_length: "Minimale wachtwoordlengte voor de beheerder." @@ -1208,22 +1165,6 @@ nl: Als je deze e-mails wel wil blijven ontvangen, kan je deze e-mail negeren. invite_mailer: subject_template: "%{invitee_name} nodigt je uit voor '%{topic_title}' op %{site_domain_name}" - text_body_template: | - %{invitee_name} nodigt je uit voor een discussie - - > **%{topic_title}** - > - > %{topic_excerpt} - - op - - > %{site_title} -- %{site_description} - - Ben je geïnteresseerd, klik dan op de onderstaande link: - - %{invite_link} - - Deze uitnodiging komt van een vertrouwde gebruiker, je kunt direct deelnemen aan de discussie. invite_forum_mailer: subject_template: "%{invitee_name} heeft je uitgenodigd voor %{site_domain_name}" invite_password_instructions: @@ -1292,12 +1233,6 @@ nl: csv_export_succeeded: title: "CSV Export Geslaagd" subject_template: "Export succesvol afgerond." - text_body_template: | - Data export was succesvol!:dvd: - - %{file_name} (%{file_size}) - - Bovenstaande download link is 48 uur geldig. csv_export_failed: title: "CSV Export Mislukt" subject_template: "Export mislukt" @@ -1571,8 +1506,6 @@ nl: performance_report: initial_post_raw: Deze topic bevat dagelijkse performancerapporten van je site initial_topic_title: Performancerapportages van de website - topic_invite: - user_exists: "Sorry, die gebruiker is al uitgenodigd. Je kan een gebruiker maar een keer voor een topic uitnodigen." safe_mode: no_customizations: "Alle website-aanpassingen uitschakelen" only_official: "Niet-officiële plug-ins uitschakelen" diff --git a/config/locales/server.pl_PL.yml b/config/locales/server.pl_PL.yml index 5c231c5335..ca1a0125d5 100644 --- a/config/locales/server.pl_PL.yml +++ b/config/locales/server.pl_PL.yml @@ -117,7 +117,6 @@ pl_PL: default_categories_already_selected: "Nie możesz wybrać kategorii użytej w innej liście." s3_upload_bucket_is_required: "Nie możesz wysyłać na S3 jeżeli nie podasz 's3_upload_bucket'." invite: - accept_invite: "Potwierdz zaproszenie" not_found: "Link do zaproszenia nie istnieje. Skontaktuj się z administratorem strony" bulk_invite: file_should_be_csv: "Wgrywany plik powinien być formatu csv." @@ -270,27 +269,35 @@ pl_PL: Więcej informacji znajdziesz [w przewodniku społeczności](/guidelines). Ten panel pojawi się tylko przy pisaniu pierwszych %{education_posts_text}. avatar: | - ### A może dodasz zdjęcie profilowe do swojego konta? + ###Co z Twoim zdjęciem profilowym? - Otworzyłeś kilka tematów i napisałeś kilka odpowiedzi, ale twoje zdjęcie profilowe nie jest tak niezwykłe jak ty - to tylko litera. + Opublikowałeś parę tematów i odpowiedzi , lecz Twoje zdjęcie profilowe nie jest tak unikalne jak Ty – To tylko litera. - Myślałeś o **[odwiedzeniu swojego profilu użytkownika](%{profile_path})** i załączeniu przedstawiającego cię zdjęcia? + Czy rozważyłeś **[odwiedzenie swojego profilu](%{profile_path})** i dodanie zdjęcia które Cię reprezentuje ? - Kiedy każdy ma unikatowe zdjęcie profilowe, łatwiej jest obserwować dyskusje i znaleźć interesujących ludzi do rozmów! + Łatwiej jest prowadzić dyskusję i znaleźć interesujące osoby podczas rozmowy kiedy każdy ma wyjątkowe zdjęcie profilowe ! sequential_replies: | ### Pomyśl o odpowiadaniu na kilka postów jednocześnie - Zamiast kilku kolejnych odpowiedzi do tematu, pomyśl o pojedynczej odpowiedzi, która zawierałaby cytaty z wcześniejszych postów lub wzmianki @imię. + Zamiast kilku kolejnych odpowiedzi do tematu, pomyśl o pojedynczej odpowiedzi, która zawierałaby cytaty z wcześniejszych postów lub wzmianki przez @nazwa. - Możesz edytować swoje wcześniejsze odpowiedzi, aby dodać cytat, poprzez podświetlenie tekstu i wybranie przycisku quote reply. + Możesz edytować swoje wcześniejsze odpowiedzi, aby dodać cytat, poprzez podświetlenie tekstu i wybranie przycisku cytuj odpowiedź który się pojawi. - Każdemu łatwiej będzie przeczytać temat, który ma kilka pogłębionych odpowiedzi, zamiast wielu niewielkich, indywidualnych replik. + Każdemu łatwiej będzie przeczytać temat, który ma kilka pogłębionych odpowiedzi, zamiast wielu niewielkich, indywidualnych. dominating_topic: | ### Pozwól innym dołączyć do rozmowy - Ten temat jest dla Ciebie wyraźnie istotny – ponad %{percent}% odpowiedzi jest Twojego autorstwa. + Ten temat jest dla Ciebie istotny – napisałeś tu ponad %{percent}% wszystkich odpowiedzi. Czy na pewno dajesz innym wystarczająco czasu na przedstawienie swoich punktów widzenia? + get_a_room: | + ### Rozważ odpowiadanie większej liczbie osób + + Dotychczas odpowiedziałeś %{count} razy @%{reply_username} w tym temacie. + + Czy rozważałeś odpowiadanie *innym* ludziom biorącym udział w dyskusji? Na dobrą dyskusję składa się wiele głosów i perspektyw. + + Jeśli chciałbyś kontynuować dłuższą rozmowę z tym użytkownikiem, [wyślij im prywatną wiadomość](/users/%{reply_username}). too_many_replies: | ### Osiągnąłeś limit odpowiedzi w tym temacie @@ -333,6 +340,7 @@ pl_PL: same_as_username: "jest takie same jak Twoja nazwa użytkownika. Proszę użyj bardziej bezpiecznego hasła. " same_as_email: "jest takie same jak Twój email. Proszę użyj bardziej bezpiecznego hasła. " same_as_current: "Hasło jest takie same jak aktualne." + unique_characters: "ma za dużo powtarzających się znaków. Prosimy o użycie bezpieczniejszego hasła." ip_address: signup_not_allowed: "Rejestracja z tego konta jest niemożliwa." color_scheme_color: @@ -359,6 +367,20 @@ pl_PL: assets_topic_body: "Ten temat jest widoczny tylko dla członków zespołu. Służy do przechowywania obrazów i plików wykorzystywanych w wyglądzie serwisu. Nie usuwaj go!\n\n\nJak go używać:\n\n\n1. Odpowiedz na ten temat.\n2. Dodaj wszystkie grafiki jakich chcesz użyć jako logo, favicon itd. (Użyj ikony wysyłania w edytorze wpisu lub przeciągnij i upuść.)\n3. Wyślij odpowiedź, aby je zachować.\n4. Kliknij prawym przyciskiem myszy na grafice i skopiuj jej adres URL.\n5. Wklej adres w [ogólnych ustawieniach](/admin/site_settings/category/required).\n\nJeśli chcesz włączyć możliwość przesyłania dodatkowych typów plików, zmień `authorized_extensions` w [ustawieniach plików](/admin/site_settings/category/files)." discourse_welcome_topic: title: "Witaj w Discourse" + body: |2 + + Pierwszy paragraf tego przypiętego tematu będzie widoczny jako wiadomość powitalna dla wszystkich odwiedzających stronę główną. Jest bardzo ważny! + + **Edytuj go** żeby zwięźle opisać swoje społeczeństwo. + + - Dla kogo jest? + - Co mogą tutaj znaleźć? + - Dlaczego powinni tutaj przychodzić? + - Gdzie mogą przeczytać więcej (link, zasoby, itp.)? + + + + Rozważ zamknięcie tego tematu poprzez administracyjny :wrench: (w prawym górnym i dolnym rogu), aby zapobiec niepotrzebnym odpowiedziom do ogłoszenia. lounge_welcome: title: "Witaj w Salonie" body: |2 @@ -384,6 +406,8 @@ pl_PL: [trust]: https://meta.discourse.org/t/what-do-user-trust-levels-do/4924 category: topic_prefix: "O kategorii %{category}" + replace_paragraph: "(Zamień ten pierwszy paragraf na krótki opis nowej kategorii. Opis ten będzie wyświetlany na karcie wyboru kategorii, więc postaraj się utrzymać go krótszego niż 200 znaków. **Dopóki nie zmienisz tego opisu, ani nie utworzysz tematu, kategoria nie będzie wyświetlana na liście kategorii.**)" + post_template: "%{replace_paragraph}\n\nW kolejnych paragrafach możesz umieścić dłuższy opis, oraz opisać zasady i zwyczaje jakie będą obowiązywać w tej kategorii:\n\n- Czemu ma służyć ta kategoria? Dlaczego ludzie powinni wybierać tę kategorię?\n\n- Czym się różni od innych kategorii, które już mamy?\n\n- Co powinny zawierać tematy znajdujące się w tej kategorii?\n\n- Czy potrzebujemy tej kategorii? Czy możemy ją połączyć z jakąś inną kategorią, lub podkategorią?\n" errors: uncategorized_parent: "Inne nie mogą być podkategorią innej kategorii." self_parent: "Podkategoria nie może być swoim rodzicem" @@ -570,7 +594,6 @@ pl_PL: title: 'Zresetuj hasło' success: "Twoje hasło zostało pomyślnie zmienione, zalogowano." success_unapproved: "Zmieniłeś(-a) swoje hasło." - continue: "Przejdź do %{site_name}" change_email: confirmed: "Twój email został zmieniony." please_continue: "Przejdź do %{site_name}" @@ -841,14 +864,25 @@ pl_PL: facebook_config_warning: 'Serwer jest skonfigurowany by pozwalać na rejestrację i logowanie za pomocą Facebooka (enable_facebook_logins), ale identyfikator i sekret aplikacji nie są ustawione. Przejdź do ustawień serwisu i zmień ustawienia. Zobacz ten poradnik by dowiedzieć się więcej.' twitter_config_warning: 'Serwer jest skonfigurowany by pozwalać na rejestrację i logowanie za pomocą Twittera (enable_twitter_logins), ale klucz i sekret nie są ustawione. Przejdź do ustawień serwisu i zmień ustawienia. Zobacz ten poradnik by dowiedzieć się więcej.' github_config_warning: 'Serwer jest skonfigurowany by pozwalać na rejestrację i logowanie za pomocą GitHuba (enable_github_logins), ale id klienta i sekret nie są ustawione. Przejdź do ustawień serwisu i zmień ustawienia. Zobacz ten poradnik by dowiedzieć się więcej.' - s3_config_warning: 'Serwer jest skonfigurowany by przesyłać pliki na s3, ale przynajmniej jedno z następujących ustawień nie jest ustawione: s3_access_key_id, s3_secret_access_key or s3_upload_bucket. Przejdź do ustawień serwisu i zmień ustawienia. Zobacz ten poradnik by dowiedzieć się więcej.' - s3_backup_config_warning: 'Serwer jest skonfigurowany tak, aby wysyłać kopie zapasowe do s3, ale jedno z ustawień nie jest ustawione prawidłowo: s3_access_key_id, s3_secret_access_key or s3_backup_bucket. Idź do ustawień strony i zaktualizuj ustawienia. Zobacz Jak ustawić wysyłanie zdjęć do S3 .' image_magick_warning: 'Serwer jest skonfigurowany by tworzyć miniaturki dużych obrazów, ale ImageMagick nie jest zainstalowany. Zainstaluj ImageMagick za pomocą ulubionego menedżera pakietów lub pobierz najnowszą wersję.' + failing_emails_warning: '%{num_failed_jobs} prac emailowych nie powiodło się. Sprawdź plik app.yml i upewnij się, że ustawienia serwera poczty są poprawne. Zobacz nieudane prace w Sidekiqu.' + subfolder_ends_in_slash: "Twoje ustawienie podfolderu jest niepoprawne; DISCOURSE_RELATIVE_URL_ROOT kończy się slashem." + email_polling_errored_recently: + one: "Email polling wygenerował 1 błąd w przeciągu ostatniej doby. Więcej szczegółów w logach." + few: "Email polling wygenerował %{count} błędy w przeciągu ostatniej doby. Więcej szczegółów w logach." + many: "Email polling wygenerował %{count} błędów w przeciągu ostatniej doby. Więcej szczegółów w logach." + other: "Email polling wygenerował %{count} błędów w przeciągu ostatniej doby. Więcej szczegółów w logach." + missing_mailgun_api_key: "Serwer jest skonfigurowany by wysyłać maile przez mailguna, ale nie ustawiłeś klucza API niezbędnego do zweryfikowania wiadomości webhook." + bad_favicon_url: "Nie można załadować favikony. Sprawdź ustawiony favicon_url w Ustawieniach Strony." + poll_pop3_timeout: "Połączenie z serwerem POP3 zostało zerwane. Przychodząca wiadomość mogła nie zostać odebrany. Proszę sprawdź swoje i dostawcę usług." + poll_pop3_auth_error: "Połączenie z serwerem POP3 nie powiodło się przez błąd uwierzytelnienia. Proszę sprawdź swoje ustawienia POP3." site_settings: censored_words: "Wskazane słowa będą automatycznie zamieniane na ■■■■" + censored_pattern: "Wzorzec Regex który będzie automatycznie zamieniany na ■■■■" delete_old_hidden_posts: "Automatycznie kasuj wpisy ukryte dłużej niż 30 dni." default_locale: "Domyślny język tej instancji Discourse (kod ISO 639-1)" allow_user_locale: "Zezwól użytkownikom na zmianę języka interfejsu we własnych ustawieniach" + set_locale_from_accept_language_header: "ustaw język interfejsu dla niezalogowanych użytkowników na podstawie języka w nagłówku ich przeglądarki. (EKSPERYMENTALNE, nie działa z anonimowym cache)" min_post_length: "Minimalna długość wpisu w znakach" min_first_post_length: "Minimalna długość treści (liczba znaków) pierwszego wpisu w temacie " min_private_message_post_length: "Minimalna długość treści wiadomości " @@ -859,6 +893,7 @@ pl_PL: max_topic_title_length: "Maksymalna długość tytułu tematu, w znakach" min_private_message_title_length: "Minimalna liczba znaków w temacie wiadomości " min_search_term_length: "Minimalna długość wyszukiwanego tekstu, w znakach" + search_tokenize_chinese_japanese_korean: "Wymuś wyszukiwanie żeby tokenizowało Chiński/Japoński/Koreański nawet na stronach nie-CJK" search_prefer_recent_posts: "Jeśli wyszukiwanie na twoim duży forum jest wolne, ta opcja pozwala zaindeskować ostanie posty wpierw." search_recent_posts_size: "Jak dużo ostanich postów trzymać w indexie" allow_uncategorized_topics: "Zezwól na tworzenie tematów bez kategorii. UWAGA: jeśli jest jakiś nieskategoryzowany temat, musisz go przypisać do kategorii, zanim wyłączysz tę opcję." @@ -882,66 +917,125 @@ pl_PL: max_image_width: "Maksymalna szerokość miniaturki grafiki we wpisie. " max_image_height: "Maksymalna wysokość miniaturki grafiki we wpisie. " 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: "Po wejściu do kategorii, zamiast listy tematów wyświetlaj listę podkategorii." fixed_category_positions: "Zaznacz, aby ręcznie ustawiać kolejność kategorii. Odznacz, aby kategorie były sortowane na podstawie aktywności. " fixed_category_positions_on_create: "Jeżeli jest sprawdzone to porządkowanie kategorii będzie zależało od stworzonego tematu (requires fixed_category_positions). " + add_rel_nofollow_to_user_content: "Dodaj rel nofollow do wszystkich treści użytkownika, poza wewnętrznymi linkami (wliczając domeny nadrzędne). Jeśli to zmienisz, musisz rebake wszystkie posty poprzez: \"rake post:rebake\"" + exclude_rel_nofollow_domains: "Spis domen, dla których nofollow nie powinien być dodawany do linków. tld.com automatycznie zezwoli sub.tld.com. Minimalnie powinieneś dodać nadrzędną domenę tej strony żeby pomóc robotom internetowym znajdować treści. Jeśli inne części Twojej witryny znajdują się w innych domenach - dodaj również je." post_excerpt_maxlength: "Maksymalna długość podsumowania / streszczenia wpisu." + show_pinned_excerpt_mobile: "Pokaż fragment przypiętych tematów w widoku mobilnym" + show_pinned_excerpt_desktop: "Pokaż fragment przypiętych tematów w widoku \"wersja komputerowa\"" post_onebox_maxlength: "Maksymalna długość (ilość znaków) treści wpisu osadzonego via Onebox" + onebox_domains_blacklist: "Lista domen które nigdy nie będą posegregowane. " max_oneboxes_per_post: "Masymalna ilość oneboxów w poście." logo_url: "Zdjęcie logo w lewym górnym rogu twojej strony powinno mieć kształt szerokiego prostokąta. Jeśli zostawisz miejsce puste, wyświetlany będzie tytuł strony." + digest_logo_url: "Alternatywne logo używane w biuletynie email. Powinno mieć kształt szerokiego prostokąta. Nie powinno być obrazkiem SVG. Jeśli puste, zostanie użyta wartość z pola `logo_url`." + logo_small_url: "Małe logo w lewym górnym rogu strony widoczne przy przewijaniu. Powinno mieć kwadratowy kształt. Jeśli zostawisz to pole puste zamiast logo pojawi się symbol strony domowej." + favicon_url: "Favicon serwisu. Więcej informacji: http://pl.wikipedia.org/wiki/Favicon Żeby działało poprawnie poprzez CDN musi być obrazem png" + mobile_logo_url: "Statyczne logo widoczne w lewym górnym rogu mobilnej wersji serwisu. Powinno mieć kwadratowy kształt. Jeśli puste, zostanie użyta grafika z pola `logo_url` np.: http://example.com/uploads/default/logo.png " apple_touch_icon_url: "Ikona używana przez urządzenia Apple. Rekomendowany wymiar to 144px na 144px." notification_email: "Adres z którego wysyłane będą wszystkie istotne emaile systemowe.\nKonieczna jest poprawna konfiguracja rekordów SPF, DKIM oraz zwrotnego PTR użytej domeny." email_custom_headers: "A pipe-delimited list of custom email headers" + email_subject: "Możliwość dostosowania formatu tematów maili. Szczegóły: https://meta.discourse.org/t/customize-subject-format-for-standard-emails/20801" + force_https: "Wymuś używanie wyłącznie HTTPS na stronie. UWAGA: NIE włączaj tego dopóki nie zweryfikujesz, że HTTPS jest w pełni skonfigurowany i działa absolutnie wszędzie! Czy sprawdziłeś swoje CDN, loginy z portali społecznościowych i wszystkie zewnętrzne loga / zależności żeby być pewnym, że są kompatybilne z HTTPS?" summary_score_threshold: "Minimalny wynik wpisu wymagany do umieszczenia go w 'Podsumowaniu tematu'" summary_posts_required: "Minimalna liczba wpisów w temacie zanim 'Podsumowanie tematu' jest dostępne" summary_likes_required: "Minimalna liczba polubień w temacie zanim 'Podsumowanie tematu' jest dostępne" summary_percent_filter: "Gdy użytkownik kliknie na 'Podsumowaniu tematu', pokaż % najlepszych wpisów" summary_max_results: "Maksymalna liczba wpisów w 'Podsumowaniu tematu'" + enable_private_messages: "Zezwalaj użytkownikom o poziomie zaufania 1 (możliwe do zmiany przez min trust level to send messages) na tworzenie wiadomości i odpowiadanie na nie. Zwróć uwagę, że administracja zawsze może wysyłać wiadomości bez względu na wszystko." enable_long_polling: "Message bus used for notification can use long polling" + long_polling_base_url: "Podstawowy URL używany dla long polling (kiedy CDN dostarcza dynamicznych treści, upewnij się że ustawiłeś to w origin pull) np.: http://origin.site.com" + long_polling_interval: "Okres czasu jaki serwer powinien odczekać przed odpowiedzią klientowi kiedy nie ma danych do przesłania (tylko do zalogowanych użytkowników)" + polling_interval: "Kiedy nie long polling, jak często zalogowani klienci powinni poll w milisekundach" anon_polling_interval: "How often should anonymous clients poll in milliseconds" + background_polling_interval: "Jak często klienci powinni poll w milisekundach (kiedy okno jest w tle)" + flags_required_to_hide_post: "Liczba flag które sprawią że post będzie automatycznie ukryty i wiadomość zostanie wysłana do użytkownika (0 dla nigdy)" cooldown_minutes_after_hiding_posts: "Liczba minut, ile musi odczekać użytkownik, zanim będzie mógł edytować post ukryty w wyniku oflagowania przez społeczność" + max_topics_in_first_day: "Maksymalna liczba tematów, jakie może stworzyć użytkownik w trakcie 24 godzin po utworzeniu pierwszego posta" + max_replies_in_first_day: "Maksymalna liczba odpowiedzi, jakie może stworzyć użytkownik w trakcie 24 godzin po utworzeniu pierwszego posta" tl2_additional_likes_per_day_multiplier: "Zwiększ limit lajków na dzień dla tl2 (członek), mnożąc przez tę liczbę" tl3_additional_likes_per_day_multiplier: "Zwiększ limit lajków na dzień dla tl3 (użytkownik stały), mnożąc przez tę liczbę" tl4_additional_likes_per_day_multiplier: "Zwiększ limit lajków na dzień dla tl4 (lider), mnożąc przez tę liczbę" + num_spam_flags_to_block_new_user: "Jeżeli post nowego użytkownika otrzyma tyle spam flag od num_users_to_block_new_user różnych użytkowników, ukryj ich wszystkie posty i zablokuj możliwość tworzenia kolejnych. 0 żeby wyłączyć." + num_users_to_block_new_user: "Jeżeli post nowego użytkownika otrzyma num_spam_flags_to_block_new_user flag spamu od tylu różnych użytkowników, ukryj jego wszystkie posty i zablokuj możliwość pisania nowych. 0 żeby wyłączyć." + num_tl3_flags_to_block_new_user: "Jeżeli post nowego użytkownika otrzyma num_tl3_users_to_block_new_user flag od tylu różnych użytkowników poziomu zaufania 3, ukryj jego wszystkie posty i zablokuj możliwość pisania nowych. 0 żeby wyłączyć." + num_tl3_users_to_block_new_user: "Jeżeli post nowego użytkownika otrzyma num_tl3_users_to_block_new_user flag spamu od tylu różnych użytkowników poziomu zaufania 3, ukryj jego wszystkie posty i zablokuj możliwość pisania nowych. 0 żeby wyłączyć." notify_mods_when_user_blocked: "If a user is automatically blocked, send a message to all moderators." flag_sockpuppets: "Jeśli nowy użytkownik odpowiada na dany temat z tego samego adresu IP co nowy użytkownik, który założył temat, oznacz ich posty jako potencjalny spam." + traditional_markdown_linebreaks: "Używaj tradycyjnych znaków końca linii w Markdown, to znaczy dwóch spacji na końcu linii." + allow_html_tables: "Pozwalaj tabelom być zamieszczanym w Markdown przy użyciu tagów HTML. TABLE, THEAD, TD, TR, TH będą dozwolone (wymaga pełnego rebake na wszystkich starych postach zawierających tabele)." post_undo_action_window_mins: "Przez tyle minut użytkownicy mogą cofnąć swoje ostatnie działania przy danym poście (lajki, flagowanie, itd.)." + must_approve_users: "Zespół musi zaakceptować wszystkie nowe konta zanim uzyskają dostęp do serwisu. UWAGA: włączenie tego dla już udostępnionej strony sprawi, że zostanie odebrany dostęp wszystkim istniejącym użytkownikom spoza zespołu." + pending_users_reminder_delay: "Powiadomić moderatorów jeżeli nowi użytkownicy czekali na zatwierdzenie dłużej niż his mamy godzin. Ustaw -1 aby wyłączyć powiadomienia. " maximum_session_age: "Użytkownik zostanie zalogowany przez n godzin od czasu ostatniej wizyty." + ga_tracking_code: "Identyfikator Google Universal Analytics (ga.js) tracking code code, eg: UA-12345678-9; zobacz http://google.com/analytics" + ga_domain_name: "Identyfikator Google Analytics (ga.js) nazwa domeny, eg: UA-12345678-9; zobacz http://google.com/analytics" ga_universal_tracking_code: "Identyfikator Google Universal Analytics (analytics.js), np: UA-12345678-9; zobacz http://google.com/analytics" ga_universal_domain_name: "Domena dla Google Universal Analytics (analytics.js), np: mysite.com; zobacz http://google.com/analytics" + gtm_container_id: "Kontener menadżera tagów Google np: GTM-ABCDEF" + enable_escaped_fragments: "Odwołuj się do API Google Ajax-Crawling jeżeli nie wykryto żadnego robota internetowego. Sprawdź 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: "Zezwól moderatorom na tworzenie nowych kategorii" + cors_origins: "Dozwolone źródła dla zapytać cross-origin (CORS). Każde źródło musi zawierać http:// lub https://. Zmienna środowiskowa DISCOURSE_ENABLE_CORS musi być ustawiona na true żeby włączyć CORS." + use_admin_ip_whitelist: "Administratorzy mogą się logować tylko z adresów IP zdefiniowanych w liście Screened IPs (Admin > Logi > Screened Ips)." + top_menu: "Określ które elementy nawigacyjne serwisu powinny być widoczne i w jakiej kolejności. Przykład aktualne|nowe|nieodczytane|kategorie|top|przeczytane|wysłane|zakładki" post_menu: "Określ które elementy menu wpisu powinny być widoczne i w jakiej kolejności. Przykład like|edit|flag|delete|share|bookmark|reply" + post_menu_hidden_items: "Elementy w menu, które w menu posta będą ukryte, chyba że kliknięty zostanie przycisk rozwijania." share_links: "Określ które elementy menu udostępniania powinny być widoczne i w jakiej kolejności. " track_external_right_clicks: "Śledź zewnętrzne linki kliknięte prawym klawiszem (np. otwierane w nowej zakładce). Domyślnie wyłączone, gdyż wymaga nadpisywania URLi." + site_contact_username: "Nazwa użytkownika, spod której wysyłane będą automatyczne wiadomości. Jeśli pusta, użyte będzie domyślne konto System." send_welcome_message: "Wyślij wszystkim nowym użytkownikom powitalną wiadomość z krótkim przewodnikiem." + suppress_reply_directly_below: "Nie pokazuj rozwijanej liczby odpowiedzi przy poście, gdy jest tylko jedna odpowiedź bezpośrednio pod tym postem." + suppress_reply_directly_above: "Nie pokazuj rozwijanego \"w odpowiedzi na\" przy poście, gdy jest tylko jedna odpowiedź bezpośrednio nad tym postem." + suppress_reply_when_quoting: "Nie pokazuj rozwijanego \"w odpowiedzi na\" przy poście, gdy w poście zacytowano odpowiedź." + max_reply_history: "Maksymalna liczba odpowiedzi, dla której \"w odpowiedzi na\" będzie się rozwijać." topics_per_period_in_top_summary: "Liczba tematów wyświetlanych w domyślnym podsumowaniu najbardziej popularnych wątków" topics_per_period_in_top_page: "Liczba tematów wyświetlanych w widoku 'Pokaż więcej' na ekranie popularnych wątków." redirect_users_to_top_page: "Automatycznie kieruj nowych i długo nieobecnych użytkowników na stronę główną." show_email_on_profile: "Pokazuj email użytkownika w jego profilu (widoczny jedynie dla użytkownika i personelu)." + prioritize_username_in_ux: "Pokaż nazwę użytkownika jako pierwszą na stronie użytkownika, karcie użytkownika i w postach (kiedy wyłączone imię jest pokazane jako pierwsze)" email_token_valid_hours: "Tokeny resetujące hasło / aktywujące konto są ważne przez (n) godzin." enable_badges: "Włącz system odznak" enable_whispers: "Pozwalaj administracji na prywatną rozmowę w tematach." + allow_index_in_robots_txt: "Określ w robots.txt, że ta strona może być indeksowana przez silniki wyszukiwania." + email_domains_blacklist: "Lista rozdzielonych pionową kreską domen e-mail, z których użytkownicy nie mogą się rejestrować. Przykład: mailinator.com|trashmail.net" + email_domains_whitelist: "Lista rozdzielonych pionową kreską domen e-mail, z których użytkownicy MUSZĄ się rejestrować. UWAGA: Użytkownicy z domenami e-mail innymi niż wypisane nie będą dopuszczeni!" + forgot_password_strict: "Nie informuj użytkowników o istnieniu konta kiedy używają dialogu zapomnianego hasła." log_out_strict: "Po wylogowaniu wyloguj WSZYSTKIE sesje użytkownika na wszystkich urządzeniach." + version_checks: "Odpytuj Discourse Hub o aktualizacje i wyświetlaj wiadomości o nowej wersji w panelu /admin" + new_version_emails: "Wyślij email na adres contact_email, kiedy nowa wersja Discourse będzie dostępna." port: "OSTRZEŻENIE! Tylko dla Developera! Użyj ten port HTTP zamiast domyślnego portu 80. Pozostaw puste pole, domyślnie port 80" force_hostname: "OSTRZEŻENIE! Tylko dla Developera! Określ nazwę hosta w adresie URL. Pozostaw domyślnie puste." invite_expiry_days: "Jak długo klucz zaproszenie użytkownika jest ważny, w dniach." + invite_passthrough_hours: "Jak długo użytkownik może użyć poprzednio wykorzystanego klucza zaproszenia by się zalogować, w godzinach" invite_only: "Publiczna rejestracja jest wyłączona: wszyscy nowi użytkownicy muszą zostać zaproszeni przez innych użytkowników lub zespół." login_required: "Wymagaj autoryzacji do wyświetlenia zawartości strony, zablokuj możliwość anonimowego dostępu." - min_username_length: "Minimalna długość nazwy użytkownika w znakach." - max_username_length: "Maksymalna długość nazwy użytkownika w znakach." + min_username_length: "Minimalna długość nazwy użytkownika w znakach. OSTRZEŻENIE: jeśli jacykolwiek istniejący użytkownicy lub grupy mają nazwy krótsze niż ta, twój serwis się uszkodzi!" + max_username_length: "Maksymalna długość nazwy użytkownika w znakach. OSTRZEŻENIE: jeśli jacykolwiek istniejący użytkownicy lub grupy mają nazwy dłuższe niż ta, twój serwis się uszkodzi!" reserved_usernames: "Niedozwolone nazwy użytkowników." min_password_length: "Minimalna długość hasła." min_admin_password_length: "Minimalna długość hasła dla Admina." + password_unique_characters: "Minimalna ilość różnych znaków, które muszą być w haśle." block_common_passwords: "Nie zezwalaj na hasła znajdujące się w grupie 10 000 najpopularniejszych haseł." + enable_sso: "Włącz pojedyncze logowanie przez zewnętrzną stronę (UWAGA: ADRESY E-MAIL UŻYTKOWNIKÓW *MUSZĄ* BYĆ ZATWIERDZONE PRZEZ ZEWNĘTRZNĄ STRONĘ!)" + verbose_sso_logging: "Log więcej diagnostyk związanych z SSO do /logs" + enable_sso_provider: "Zaimplementuj protokół dostawcy Discourse SSO w endpoint /session/sso_provider, wymaga ustawienia sso_secret" + sso_url: "URL endpoint pojedynczego logowania (musi zawierać http:// lub https://)" + sso_overrides_bio: "Nadpisuje biografię użytkownika w jego profilu i uniemożliwia mu zmianę biografii." + sso_not_approved_url: "Przekieruj niezatwierdzone konta SSO na ten URL" + sso_allows_all_return_paths: "Nie ograniczaj domen dla return_paths dostarczanych przez SSO (domyślnie zwracana ścieżka musi być na aktualnej stronie)" allow_new_registrations: "Zezwól na rejestrację nowych użytkowników. Odznacz opcję żeby uniemożliwić rejestrację nowych kont." enable_signup_cta: "Pokazuj wiadomość dla powracających użytkowników anonimowych, zachęcającą ich do założenia konta." enable_yahoo_logins: "Włącz autoryzację Yahoo" + enable_google_oauth2_logins: "Włącz uwierzytelnienie za pomocą Google Oauth2. Jest to metoda uwierzytelniania, którą Google obecnie wspiera. Wymaga klucza i sekretu." google_oauth2_client_id: "Client ID twojej aplikacji w Google" google_oauth2_client_secret: "Client Secret twojej aplikacji w Google" enable_twitter_logins: "Włącz autoryzację Twitter, wymagane twitter_consumer_key oraz 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: "Włącz uwierzytelnienie za pomocą Instagramu, wymaga instagram_consumer_key i instagram_consumer_secret." + instagram_consumer_key: "Klucz konsumenta dla uwierzytelnienia Instragram" + instagram_consumer_secret: "Sekret konsumenta dla uwierzytelnienia Instragram" 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" @@ -949,8 +1043,14 @@ pl_PL: github_client_id: "Client id dla autoryzacji Github, zarejestrowany w https://github.com/settings/applications" github_client_secret: "Client secret dla autoryzacji Github, zarejestrowany w https://github.com/settings/applications" readonly_mode_during_backup: "Włącz tryb tylko do odczytu podczas wykonywania kopii zapasowej" + allow_restore: "Dopuść przywracanie, które może zamienić WSZYSTKIE dane strony! Zostaw fałsz, chyba że planujesz przywrócić kopię zapasową" maximum_backups: "Maksymalna liczba kopii zapasowych do przechowywania na dysku. Starsze kopie zapasowe zostaną automatycznie usunięte." + automatic_backups_enabled: "Uruchom automatyczne kopie zapasowe zgodnie z ustawioną częstotliwością kopii" backup_frequency: "Jak często możemy utworzyć kopię zapasową strony, w dniach." + enable_s3_backups: "Wysyłaj kopie zapasowe do S3 kiedy gotowe. WAŻNE: wymaga poprawnych poświadczeń S3 wprowadzonych w ustawieniach Plików." + s3_backup_bucket: "Zdalne wiadro do przechowywania kopii zapasowych. UWAGA: Upewnij się, że jest to wiadro prywatne." + s3_disable_cleanup: "Dezaktywuj usuwanie kopii zapasowych z S3 kiedy usunięte lokalnie." + backup_time_of_day: "Godzina (UTC) wykonania kopii zapasowej." active_user_rate_limit_secs: "How frequently we update the 'last_seen_at' field, in seconds" verbose_localization: "Wyświetlaj dodatkowe identyfikatory tłumaczeń w treści etykiet" previous_visit_timeout_hours: "How long a visit lasts before we consider it the 'previous' visit, in hours" @@ -966,12 +1066,21 @@ pl_PL: max_private_messages_per_day: "Maksymalna liczba wiadomości jakie użytkownik może wysłać jednego dnia." max_invites_per_day: "Maksymalna liczba zaproszeń jakie użytkownik może wysłać jednego dnia." max_topic_invitations_per_day: "Maksymalna dzienna liczba zaproszeń do tematu, jakie może wysłać użytkownik." + max_logins_per_ip_per_hour: "Maksymalna liczba logowań dozwolona per adres IP na godzinę" + max_logins_per_ip_per_minute: "Maksymalna liczba logowań dozwolona per adres IP na minutę" + alert_admins_if_errors_per_minute: "Liczba błędów na minutę do zaalarmowania admina. Wartość 0 wyłącza tę funkcjonalność. UWAGA: wymaga restartu." + alert_admins_if_errors_per_hour: "Liczba błędów na godzinę do zaalarmowania admina. Wartość 0 wyłącza tę funkcjonalność. UWAGA: wymaga restartu." + categories_topics: "Liczba wątków do wyświetlenia na stronie /categories." suggested_topics: "Liczba sugerowanych tematów widocznych na końcu aktualnego tematu." limit_suggested_to_category: "Sugeruj tematy jedynie z tej samej kategorii." + suggested_topics_max_days_old: "Sugerowane tematy nie powinny być starsze niż n dni." + clean_up_uploads: "Usuń osierocone pliki aby zapobiec wykorzystywaniu forum jako hosting. UWAGA: przed włączeniem tej opcji zaleca się wykonanie kopii katalogu /uploads." clean_orphan_uploads_grace_period_hours: "Okres karencji (w dniach) przed wysłaniem sierot zostanie skasowany." purge_deleted_uploads_grace_period_days: "Okres karencji (w dniach) przed usunięciem upload zostanie skasowany." + purge_unactivated_users_grace_period_days: "Okres karencji w dniach, po upływie którego nieaktywowane konto użytkownika zostanie usunięte." avatar_sizes: "Lista automatycznie wygenerowanych rozmiarów awatarów." external_system_avatars_enabled: "Użyj zewnętrzny system awatarów." + external_system_avatars_url: "Adres URL zewnętrznego dostawcy awatarów. Dozwolone podstawienia: {username} {first_letter} {color} {size}" convert_pasted_images_to_hq_jpg: "Konwertuj wklejone obrazy do wysokiej jakości plików JPG." convert_pasted_images_quality: "Jakość konwertowanego pliku JPG (1 to najniższa jakość, 100 to najlepsza jakość)." default_invitee_trust_level: "Domyślny poziom zaufania (0-4) dla zaproszonych użytkowników." @@ -987,39 +1096,91 @@ pl_PL: tl2_requires_likes_given: "Ile lajków musi dać użytkownik, zanim otrzyma promocję na 2 poziom zaufania." tl2_requires_topic_reply_count: "Na ile tematów musi odpowiedzieć użytkownik, zanim otrzyma promocję na 2 poziom zaufania." tl3_time_period: "Wymagania 3. poziomu zaufania w czasie (w dniach)" + tl3_requires_posts_read_all_time: "Minimalna łączna ilość postów, które użytkownik musi przeczytać, aby kwalifikować się do trzeciego poziomu zaufania." + tl3_links_no_follow: "Nie usuwaj rel=nofollow z linków od użytkowników z trzecim poziomem zaufania." min_trust_to_create_topic: "The minimum trust level required to create a new topic." min_trust_to_edit_wiki_post: "Minimalny poziom zaufania wymagany do edycji posta oznaczonego jako wiki." + min_trust_to_edit_post: "Minimalny poziom zaufania potrzebny do edytowania postów." + min_trust_to_allow_self_wiki: "Wymagany poziom zaufania, by post użytkownika uczynić wiki." min_trust_to_send_messages: "Minimalny poziom zaufania wymagany do tworzenia nowych prywatnych wiadomości." newuser_max_links: "Ile linków może dodać nowy użytkownik do posta." newuser_max_images: "Ile obrazów może dodać nowy użytkownik do posta." newuser_max_attachments: "Ile załączników może dodać nowy użytkownik do posta." newuser_max_mentions_per_post: "Maksymalna liczba powiadomień poprzez @nazwę w jednym wpisie (dla nowych użytkowników)." + newuser_max_replies_per_topic: "Maksymalna liczba odpowiedzi, jakie nowy użytkownik może dodać w pojedynczym temacie zanim ktoś odpowie." max_mentions_per_post: "Maksymalna liczba powiadomień poprzez @nazwę w jednym wpisie (dla wszystkich)." email_time_window_mins: "Odczekaj (n) minut przed wysłaniem maila z powiadomieniem, aby dać użytkownikom szansę na edytowanie i ukończenie postów." + private_email_time_window_seconds: "Poczekaj (n) sekund przed wysłaniem jakichkolwiek prywatnych powiadomień emailem, by dać szansę użytkownikom na edycję i sfinalizowanie ich wiadomości." title_max_word_length: "Maksymalna dozwolona długość słowa, w znakach, jako tytuł tematu." + title_min_entropy: "Minimalna entropia tytułu wątku (liczba różnych znaków, zaleca się więcej dla języków innych niż angielski)." + body_min_entropy: "Minimalna entropia treści posta (liczba różnych znaków, zaleca się więcej dla języków innych niż angielski)." + allow_uppercase_posts: "Zezwól na same wielkie litery w tytule tematu lub treści postu." 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: "Minimalna długość tytułu zanim zostanie sprawdzony z podobnymi tematami." min_body_similar_length: "Minimalna długość treści posta zanim zostanie sprawdzony z podobnymi tematami." + desktop_category_page_style: "Styl wizualny dla strony kategorii." category_colors: "Lista kolorów w formacie hex do użycia w etykietach kategorii." category_style: "Styl etykiet kategorii" + max_image_size_kb: "Maksymalny rozmiar wgrywanego pliku graficznego w kB. Należy to także skonfigurować dla serwera nginx (client_max_body_size) / Apache lub dla proxy." + max_attachment_size_kb: "Maksymalny rozmiar załącznika w kB. Należy to także skonfigurować dla serwera nginx (client_max_body_size) / Apache lub dla proxy." + authorized_extensions: "Lista dozwolonych rozszerzeń plików (gwiazdka \"*\" oznacza wszystkie typy plików)" + max_similar_results: "Liczba podobnych wątków, jaka zostanie wyświetlona nad oknem edytora podczas tworzenia nowego wątku. Wątki są porównywane na podstawie tytułów i treści." + max_image_megapixels: "Maksymalna rozdzielczość pliku graficznego w megapikselach." title_prettify: "Prevent common title typos and errors, including all caps, lowercase first character, multiple ! and ?, extra . at end, etc." + topic_views_heat_low: "Po tylu wyświetleniach liczba wyświetleń zostanie lekko wyróżniona." + topic_views_heat_medium: "Po tylu wyświetleniach liczba wyświetleń zostanie wyróżniona." + topic_views_heat_high: "Po tylu wyświetleniach liczba wyświetleń zostanie mocno wyróżniona." + cold_age_days_low: "Po tylu dniach trwania dyskusji data ostatniej aktywności zostanie lekko przyciemniona." + cold_age_days_medium: "Po tylu dniach trwania dyskusji data ostatniej aktywności zostanie przyciemniona." + cold_age_days_high: "Po tylu dniach trwania dyskusji data ostatniej aktywności zostanie mocno przyciemniona." + history_hours_low: "Po upływie tylu godzin od edycji posta wskaźnik edycji zostanie lekko wyróżniony." + history_hours_medium: "Po upływie tylu godzin od edycji posta wskaźnik edycji zostanie wyróżniony." + history_hours_high: "Po upływie tylu godzin od edycji posta wskaźnik edycji zostanie mocno wyróżniony." + topic_post_like_heat_low: "Gdy stosunek liczby lajków do liczby postów przekroczy tę wartość, liczba postów zostanie lekko wyróżniona." + topic_post_like_heat_medium: "Gdy stosunek liczby lajków do liczby postów przekroczy tę wartość, liczba postów zostanie wyróżniona." + topic_post_like_heat_high: "Gdy stosunek liczby lajków do liczby postów przekroczy tę wartość, liczba postów zostanie mocno wyróżniona." 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." staff_like_weight: "O ile większą wagę mają mieć polubienia przyznawane przez członków zespołu?" reply_by_email_enabled: "Włącz możliwość odpowiadania na wpisy poprzez 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" + disable_emails: "Powstrzymaj Discourse przed wysyłaniem jakichkolwiek emaili." + short_email_length: "Długość krótkiego emaila w bajtach" + delete_email_logs_after_days: "Usuń logi email po (N) dniach. 0 by trzymać w nieskończoność" + max_emails_per_day_per_user: "Maksymalna liczba maili, jakie użytkownik może wysłać w ciągu dnia. 0 wyłącza ograniczenie." + auto_generated_whitelist: "Lista adresów e-mail oddzielonych pipe'em (|), które nie będą testowane na zawartość treści generowanej automatycznie. Przykład: foo@bar.com|discourse@bar.com" + block_auto_generated_emails: "Odrzucaj maile przychodzące zidentyfikowane jako wysłane automatycznie." ignore_by_title: "Ignoruj przychodzące wiadomości e-mail w oparciu o ich tytuł." + attachment_content_type_blacklist: "Lista słów kluczowych do blokowania załączników w oparciu o typ zawartości." + attachment_filename_blacklist: "Lista słów kluczowych do blokowania załączników w oparciu o nazwę pliku." + enable_forwarded_emails: "[BETA] Zezwól użytkownikom zakładać wątki poprzez forwardowanie maili przychodzących." pop3_polling_ssl: "Używaj SSL podczas łączenia z serwerem POP3. (Rekomendowane)" pop3_polling_openssl_verify: "Sprawdź certyfikat TLS serwera (domyślnie: włączone)" relative_date_duration: "Liczba dni od wysłania wpisu gdy wyświetlana jest data relatywna (7d) zamiast absolutnej (20 Lut)." 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." email_editable: "Allow users to change their e-mail address after registration." + logout_redirect: "Adres, na jaki użytkownik zostanie przekierowany po wylogowaniu (np. http://jakasstrona.pl/logout)" allow_uploaded_avatars: "Zezwól użytkownikom na przesyłanie niestandardowych zdjęć profilowych." + allow_animated_avatars: "Zezwól na używanie animowanych plików GIF jako zdjęć profilowych. UWAGA: po zmianie tego ustawienia uruchom zadanie avatars:refresh rake." allow_animated_thumbnails: "Generowanie miniatur animowanych gifów." + default_avatars: "Adresy URL awatarów wykorzystywanych jako domyślne w przypadku nowych użytkowników do momentu, gdy je zmienią." + digest_topics: "Maksymalna liczba popularnych wątków wyświetlanych w podsumowaniu mailowym." + digest_posts: "Maksymalna liczba popularnych postów wyświetlanych w podsumowaniu mailowym." + digest_other_topics: "Maksymalna liczba wątków wyświetlanych w sekcji \"Śledzone wątki i kategorie\" podsumowania mailowego." + disable_digest_emails: "Wyłącz podsumowania mailowe dla wszystkich użytkowników." + email_accent_bg_color: "Kolor wyróżniający używany jako tło niektórych elementów maili wysyłanych w trybie HTML. Wprowadź angielską nazwę koloru HTML (\"red\") lub wartość szesnastkową (\"#ff0000\")." + email_accent_fg_color: "Kolor tekstu wyświetlanego na kolorowym tle w mailach wysyłanych w trybie HTML. Wprowadź angielską nazwę koloru HTML (\"white\") lub wartość szesnastkową (\"#ffffff\")." + email_link_color: "Kolor linków w mailach wysyłanych w trybie HTML. Wprowadź angielską nazwę koloru HTML (\"blue\") lub wartość szesnastkową (\"#0000ff\")." + detect_custom_avatars: "Czy sprawdzać, czy użytkownik wgrał własne zdjęcie profilowe?" allow_anonymous_posting: "Zezwól użytkownikom na przechodzenie w tryb anonimowości." + anonymous_posting_min_trust_level: "Minimalny poziom zaufania potrzebny by aktywować anonimowe postowanie" + user_website_domains_whitelist: "Lista domen (rozdzielone pipe'em \"|\"), względem których weryfikowana będzie strona internetowa użytkownika w profilu." allow_profile_backgrounds: "Zezwól użytkownikom na przesyłanie obrazu tła dla profilu." + sequential_replies_threshold: "Liczba postów dodanych przez użytkownika jeden pod drugim w jednym wątku, po której zostanie on upomniany." + get_a_room_threshold: "Liczba postów dodanych przez użytkownika w odpowiedzi na posty tej samej osoby w jednym wątku, po której zostanie on ostrzeżony." enable_mobile_theme: "Urządzenia mobilne używają dedykowanego mobilnego szablonu. Wyłącz to, jeśli chcesz użyć własnego, pojedynczego i responsywnego szablonu stylów. " + dominating_topic_minimum_percent: "Odsetek (%) postów dodanych przez użytkownika w jednym wątku, po którym otrzyma on upomnienie, że nadmiernie go dominuje." suppress_uncategorized_badge: "Nie pokazuj etykiety z nazwą kategorii Inne na listach tematów." full_name_required: "Pełne imię i nazwisko to wymagane pole w profilu użytkownika." display_name_on_posts: "Pokazuj imię i nazwisko użytkownika przy jego postach, a także jego @nazwę użytkownika." @@ -1050,12 +1211,18 @@ pl_PL: invalid_string_min: "Musi być co najmniej %{min} znaków." invalid_string_max: "Musi być nie więcej niż %{max} znaków." invalid_reply_by_email_address: "Wartość musi zawierać '%{reply_key}' i musi być inna niż mail z powiadomieniem." + invalid_regex: "Wyrażenie regularne jest niepoprawne lub niedozwolone." search: within_post: "#%{post_number} przez %{username}" types: category: 'Kategorie' topic: 'Wyniki' user: 'Użytkownicy' + sso: + not_found: "Nie znaleziono takiego konta. Skontaktuj się z administratorem." + account_not_approved: "Twoje konto oczekuje na zatwierdzenie. Gdy konto zostanie zatwierdzone, otrzymasz powiadomienie mailowe." + unknown_error: "Z twoim kontem jest problem. Skontaktuj się z administratorem." + timeout_expired: "Upłynął maksymalny czas logowania. Spróbuj ponownie." original_poster: "Autor pierwszego wpisu" most_posts: "Większość postów" most_recent_poster: "Autor najnowszego wpisu" @@ -1063,13 +1230,48 @@ pl_PL: redirected_to_top_reasons: new_user: "Witamy w naszej społeczności! Oto najpopularniejsze najnowsze tematy." not_seen_in_a_month: "Witamy ponownie! Długo tu nie zaglądałeś. Oto najpopularniejsze tematy z czasów, kiedy cię tu nie było." + merge_posts: + edit_reason: + one: "%{username} dołączył 1 post" + few: "%{username} dołączył %{count} posty" + many: "%{username} dołączył %{count} postów" + other: "%{username} dołączył %{count} postów" + errors: + different_topics: "Nie można połączyć postów z różnych wątków." + different_users: "Nie można połączyć postów różnych użytkowników." + move_posts: + new_topic_moderator_post: + one: "Wydzielono 1 post tworząc nowy wątek: %{topic_link}" + few: "Wydzielono %{count} posty tworząc nowy wątek: %{topic_link}" + many: "Wydzielono %{count} postów tworząc nowy wątek: %{topic_link}" + other: "Wydzielono %{count} postów tworząc nowy wątek: %{topic_link}" + existing_topic_moderator_post: + one: "1 post przeniesiono do wątku: %{topic_link}" + few: "%{count} posty przeniesiono do wątku: %{topic_link}" + many: "%{count} postów przeniesiono do wątku: %{topic_link}" + other: "%{count} postów przeniesiono do wątku: %{topic_link}" change_owner: + post_revision_text: "Zmieniono właściciela z %{old_user} na %{new_user}" deleted_user: "usunięty użytkownik" + emoji: + errors: + name_already_exists: "Nazwa \"%{name}\" wkorzystywana jest już przez inny emotikon." + error_while_storing_emoji: "Wystąpił błąd podczas zapisywania emotikonu." topic_statuses: archived_enabled: "Temat został zarchiwizowany. Został zablokowany i nie może być zmieniany. " archived_disabled: "Temat został przywrócony z archiwum. Został odblokowany i może ponownie być zmieniany." closed_enabled: "Temat został zamknięty. Dodawanie nowych odpowiedzi nie jest możliwe." closed_disabled: "Temat został otwarty. Dodawanie odpowiedzi jest ponownie możliwe." + autoclosed_message_max_posts: + one: "Wiadomość została automatycznie zamknięta po osiągnięciu maksymalnej liczby 1 odpowiedzi." + few: "Wiadomość została automatycznie zamknięta po osiągnięciu maksymalnej liczby %{count} odpowiedzi." + many: "Wiadomość została automatycznie zamknięta po osiągnięciu maksymalnej liczby %{count} odpowiedzi." + other: "Wiadomość została automatycznie zamknięta po osiągnięciu maksymalnej liczby %{count} odpowiedzi." + autoclosed_topic_max_posts: + one: "Wątek został automatycznie zamknięty po osiągnięciu maksymalnej liczby 1 odpowiedzi." + few: "Wątek został automatycznie zamknięty po osiągnięciu maksymalnej liczby %{count} odpowiedzi." + many: "Wątek został automatycznie zamknięty po osiągnięciu maksymalnej liczby %{count} odpowiedzi." + other: "Wątek został automatycznie zamknięty po osiągnięciu maksymalnej liczby %{count} odpowiedzi." autoclosed_enabled_days: one: "Ten temat został automatycznie zamknięty po 1 dniu. Tworzenie nowych odpowiedzi nie jest możliwe." few: "Ten temat został automatycznie zamknięty po %{count} dniach. Tworzenie nowych odpowiedzi nie jest możliwe." @@ -1124,12 +1326,14 @@ pl_PL: something_already_taken: "Coś poszło źle. Możliwe, że ta nazwa użytkownika lub email są już zarejestrowane. Spróbuj użyć procedury przypominania hasła." omniauth_error: "Przepraszamy, pojawił się błąd autoryzacji twojego konta. Sprawdź, czy zatwierdziłeś autoryzację." omniauth_error_unknown: "Wystąpił błąd podczas logowania, spróbuj ponownie." + authenticator_error_no_valid_email: "Adresy e-mail powiązane z %{account} są niedozwolone. Musisz użyć innego adresu." new_registrations_disabled: "Aktualnie nie jest możliwe zarejestrowanie nowego konta." password_too_long: "Hasła są ograniczone do 200 znaków." email_too_long: "Podałeś zbyt długi adres email. Nazwa skrzynki pocztowej nie może być dłuższa niż 254 znaki, a nazwa domeny nie może zawierać więcej niż 253 znaki." reserved_username: "Niedozwolona nazwa użytkownika." missing_user_field: "Nie wypełniłeś wszystkich pól użytkownika" close_window: "Uwierzytelnianie zakończone. Aby kontynuować, zamknij to okno." + already_logged_in: "Próbujesz zaakceptować zaproszenie przeznaczone dla innego użytkownika. Jeśli %{current_user} to nie ty, wyloguj się i zaloguj ponownie." user: no_accounts_associated: "Brak powiązanych kont" username: @@ -1138,23 +1342,99 @@ pl_PL: characters: "może zawierać tylko litery, cyfry i podkreślenia" unique: "musi być unikalna" blank: "musi zostać podana" + must_begin_with_alphanumeric_or_underscore: "musi zaczynać się literą, cyfrą lub znakiem podkreślenia" + must_end_with_alphanumeric: "musi kończyć się literą lub cyfrą" must_not_contain_two_special_chars_in_seq: "nie może zawierać sekwencji 2 lub więcej znaków specjalnych (.-_)" + must_not_end_with_confusing_suffix: "nie może kończyć się w sposób wprowadzający w błąd, np. .json, .png itp." email: not_allowed: "nie jest dopuszczany od tego dostawcy poczty. Użyj innego adresu email." blocked: "nie jest dozwolony." + revoked: "Maile do \"%{email}\" do %{date} nie będą wysyłane." ip_address: blocked: "Z twojego adresu IP nowe rejestracje nie są możliwe." max_new_accounts_per_registration_ip: "Z twojego adresu IP nowe rejestracje nie są możliwe (wyczerpany limit). Skonaktuj się z personelem." + website: + domain_not_allowed: "Błędny adres strony internetowej. Dozwolone domeny: %{domains}" flags_reminder: subject_template: one: "1 flaga oczekuje na reakcję" few: "%{count} flagi oczekują na reakcję" many: "%{count} flagi oczekują na reakcję" other: "%{count} flagi oczekują na reakcję" + unsubscribe_mailer: + subject_template: "Potwierdź, że nie chcesz już otrzymywać powiadomień mailowych ze strony %{site_title}" + text_body_template: | + Ktoś (może ty?) zażądał, by strona %{site_domain_name} nie wysyłała już powiadomień mailowych na ten adres. + Jeśli to potwierdzasz, kliknij w ten link: + + %{confirm_unsubscribe_link} + + + Jeśli nadal chcesz otrzymywać powiadomienia mailowe, po prostu zignoruj ten mail. invite_mailer: subject_template: "%{invitee_name} zaprosił cię do '%{topic_title}' na %{site_domain_name}" + text_body_template: | + %{invitee_name} zaprosił cię do dyskusji + + > **%{topic_title}** + > + > %{topic_excerpt} + + w serwisie + + > %{site_title} -- %{site_description} + + Jeśli jesteś zainteresowany, kliknij w link: + + %{invite_link} + custom_invite_mailer: + subject_template: "%{invitee_name} zaprosił cię do dyskusji '%{topic_title}' w serwisie %{site_domain_name}" + text_body_template: | + %{invitee_name} zaprosił cię do dyskusji + + > **%{topic_title}** + > + > %{topic_excerpt} + + w serwisie + + > %{site_title} -- %{site_description} + + Informacja od zapraszającego: + + > %{user_custom_message} + + Jeśli jesteś zainteresowany, kliknij w link: + + %{invite_link} invite_forum_mailer: subject_template: "%{invitee_name} zaprosił cię do dołączenia do %{site_domain_name}" + text_body_template: | + %{invitee_name} zaprosił cię, byś dołączył do serwisu + + > **%{site_title}** + > + > %{site_description} + + Jeśli jesteś zainteresowany, kliknij w link: + + %{invite_link} + custom_invite_forum_mailer: + subject_template: "%{invitee_name} zaprosił cię, byś dołączył do serwisu %{site_domain_name}" + text_body_template: | + %{invitee_name} zaprosił cię, byś dołączył do serwisu + + > **%{site_title}** + > + > %{site_description} + + Informacja od zapraszającego: + + > %{user_custom_message} + + Jeśli jesteś zainteresowany, kliknij w link: + + %{invite_link} invite_password_instructions: subject_template: "Ustaw hasło dla swojego konta na %{site_name}" text_body_template: |+ @@ -1172,11 +1452,89 @@ pl_PL: test_mailer: subject_template: "[%{site_name}] Test dostarczania poczty" + text_body_template: | + To testowy mail z serwisu: + + [**%{base_url}**][0] + + Mail nie bez powodu jest tak długi! Powinieneś jeszcze sprawdzić kilka rzeczy: + + - **Upewnij się**, że prawidłowo ustawiłeś pole "od" dla powiadomień mailowych w ustawieniach serwisu. **Względem tej domeny twoje maile będą weryfikowane!** + + - Dowiedz się, jak wyświetlić surowy kod źródłowy wiadomości mailowej w twoim programie pocztowym, tak abyś mógł przeglądać nagłówki maili szukając istotnych wskazówek. W przypadku GMaila nad każdym mailem, po rozwinięciu menu, dostępna jest opcja "Pokaż oryginał". + + - **WAŻNE:** Czy twój ISP skonfigurował odwrotny rekord DNS (reverse DNS record), by powiązać nazwy domenowe z adresami IP, spod których wysyłasz maile? [Sprawdź swój odwrotny rekord PTR][2] tutaj. Jeśli ISP nie skonfigurował tego prawidłowo, twoje maile mogą nie docierać do adresatów. + + - Czy [rekord SPF][8] twojej domeny jest prawidłowy? [Sprawdź swój rekord SPF][1] tutaj. Pamiętaj, że oficjalnym prawidłowym typem rekordu SPF jest TXT. + + - Czy [rekord DKIM][3] twojej domeny jest prawidłowy? To znacznie zwiększy prawdopodobieństwo docierania twoich maili do adresatów. [Sprawdź swój rekord DKIM][7] tutaj. + + - Jeśli korzystasz z własnego serwera poczty, upewnij się, że adresy IP twojego serwera [nie znajdują się na czarnych listach][4]. Ponadto upewnij się, że serwer wysyła w pełni kwalifikowaną nazwę hosta, rozwiązywaną przez serwery DNS w wiadomościach HELO. W przeciwnym wypadku wielu usługodawców mailowych będzie odrzucać twoje maile. + + - Mocno zalecamy, byś **wysłał testowego maila do [mail-tester.com][mt]**, aby potwierdzić, że wszystko o czym wspomnieliśmy działa prawidłowo. + + (*Najłatwiej* założyć darmowe konto w jednym z serwisów: [SendGrid][sg], [SparkPost][sp], [Mailgun][mg] lub [Mailjet][mj]. Mają one wiele bezpłatnych ofert mailingowych, w sam raz dla małej społeczności. Pamiętaj, że i tak musisz skonfigurować rekordy SPF i DKIM w twoim serwerze DNS!) + + Mamy nadzieję, że bez problemu otrzymałeś tego maila potwierdzającego docieranie maili wysyłanych przez forum. + + Powodzenia, + + Koledzy z [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}] Aktualizacja do nowej wersji Discourse jest dostępna." + text_body_template: | + Pojawiła się nowa wersja [Discourse](http://www.discourse.org)! + + Używasz wersji %{installed_version} + Nowa wersja to **%{new_version}** + + - Dokonaj aktualizacji *[jednym kliknięciem przez przeglądarkę](%{base_url}/admin/upgrade)** + + - Zobacz, co nowego, w [naszym changelogu na GitHubie](https://github.com/discourse/discourse/commits/master) + + - Sprawdź najnowsze informacje, weź udział w dyskusji lub skorzystaj z wsparcia technicznego Discourse na stronie [meta.discourse.org](https://meta.discourse.org) new_version_mailer_with_notes: subject_template: "[%{site_name}] dostępna aktualizacja" + text_body_template: | + Pojawiła się nowa wersja [Discourse](http://www.discourse.org)! + + Używasz wersji %{installed_version} + Nowa wersja to **%{new_version}** + + - Dokonaj aktualizacji *[jednym kliknięciem przez przeglądarkę](%{base_url}/admin/upgrade)** + + - Zobacz, co nowego, w [naszym changelogu na GitHubie](https://github.com/discourse/discourse/commits/master) + + - Sprawdź najnowsze informacje, weź udział w dyskusji lub skorzystaj z wsparcia technicznego Discourse na stronie [meta.discourse.org](https://meta.discourse.org) + + ### Release notes + + %{notes} + queued_posts_reminder: + subject_template: + one: "[%{site_name}] 1 post oczekuje na przejrzenie" + few: "[%{site_name}] %{count} posty oczekuje na przejrzenie" + many: "[%{site_name}] %{count} postów oczekuje na przejrzenie" + other: "[%{site_name}] %{count} postów oczekuje na przejrzenie" + text_body_template: | + Witaj, + + Posty od nowych użytkowników zostały przekazane do moderacji i oczekują na przejrzenie. [Zatwierdź lub odrzuć je tutaj](%{base_url}/queued-posts). flag_reasons: + off_topic: "Twój post został oznaczony jako **nie na temat**: społeczność uważa, że nie pasuje do wątku, w którym został dodany, biorąc pod uwagę jego tytuł i treść pierwszego posta." inappropriate: "Twój wpis został oznaczony jako **nieodpowiedni**: społeczność uznała, że zbyt agresywny lub niezgodny z [jej wytycznymi](/guidelines)." spam: "Twój post został oznaczony jako **spam**: społeczność czuje, że jest to reklama, czyli coś nadmiernie promującego, a nie użytecznego czy odnoszącego się do tematu." notify_moderators: "Twój post został oznaczony jako **do uwagi moderatora**: społeczność czuje, że post wymaga ręcznej interwencji członka personelu." @@ -1190,6 +1548,20 @@ pl_PL: system_messages: post_hidden: title: "Ukryty post" + text_body_template: | + Witaj, + + To automatyczna wiadomość z serwisu %{site_name}, którą wysłaliśmy, by poinformować cię, że twój post został ukryty. + + %{base_url}%{url} + + %{flag_reason} + + Wielu członków społeczności oflagowało go zanim został ukryty. Pomyśl, jak mógłbyś go poprawić to, co im się nie podobało. **Po upływie %{edit_delay} będziesz mógł zmienić jego treść, wtedy zostanie on automatycznie odkryty.** + + Pamiętaj jednak, że jeśli post zostanie ukryty po raz kolejny, pozostanie on ukryty do momentu, gdy sprawdzą go nasi moderatorzy. Podejmą oni dalsze kroki, włączając w to nawet możliwość zawieszenia twojego konta. + + Więcej dowiesz się czytając [zasady naszej społeczności](%{base_url}/guidelines). welcome_user: title: "Witaj Użytkowniku" subject_template: "Witaj na %{site_name}!" @@ -1280,8 +1652,25 @@ pl_PL: title: "Email odrzucony Pusty" email_reject_invalid_access: title: "Email odrzucony Nieprawidłowy dostęp" + email_reject_invalid_post: + subject_template: "[%{site_name}] Problem z mailem -- błąd postu" + email_reject_invalid_post_specified: + subject_template: "[%{site_name}] Problem z mailem -- błąd postu" + email_reject_invalid_post_action: + subject_template: "[%{site_name}] Problem z mailem -- błędna akcja postu" + email_reject_reply_key: + subject_template: "[%{site_name}] Problem z mailem -- Nieznany Klucz Odpowiedzi" + email_reject_bad_destination_address: + subject_template: "[%{site_name}] Problem z mailem -- Nieznany: Adres" + email_reject_topic_not_found: + subject_template: "[%{site_name}] Problem z mailem -- Temat Nieznaleziony " email_reject_topic_closed: title: "Email odrzucony Temat zamknięty" + subject_template: "[%{site_name}] Problem z mailem -- Temat Zamknięty" + email_reject_auto_generated: + subject_template: "[%{site_name}] Problem z mailem -- Odpowiedź Wygenerowana Automatycznie " + email_error_notification: + subject_template: "[%{site_name}] Problem z mailem -- Błąd uwierzytelnienia POP" too_many_spam_flags: subject_template: "Nowe konto zawieszone" too_many_tl3_flags: @@ -1289,21 +1678,46 @@ pl_PL: blocked_by_staff: title: "Zablokowany prze moderatora" subject_template: "Konto tymczasowo zawieszone" + user_automatically_blocked: + title: "Użytkownik Zablokowany Automatycznie" + spam_post_blocked: + title: "Spam Zablokowany" + unblocked: + title: "Odblokowany" pending_users_reminder: subject_template: one: "1 użytkownik czeka na zatwierdzenie" few: "%{count} użytkowników czeka na zatwierdzenie" many: "%{count} użytkowników czeka na zatwierdzenie" other: "%{count} użytkowników czeka na zatwierdzenie" + download_remote_images_disabled: + title: "Pobieranie Zdalne Obrazów Wyłączone" + subject_template: "Pobieranie zdalne obrazów wyłączone" + dashboard_problems: + subject_template: "Znaleziono problemy " + unsubscribe_link: | + Aby zrezygnować z otrzymywania tych wiadomości e-mail, [Kliknij tutaj](%{unsubscribe_url}). + unsubscribe_link_and_mail: |+ + Aby zrezygnować z otrzymywania tych wiadomości e-mail, [Kliknij tutaj](%{unsubscribe_url}). + subject_re: "Re: " subject_pm: "[PW] " user_notifications: previous_discussion: "Poprzednie odpowiedzi" + reached_limit: + one: "OSTRZEŻENIE: przekroczyłeś dzienny limit emaili. Dalsze powiadomienia email zostaną stłumione." + few: "OSTRZEŻENIE: przekroczyłeś dzienny limit równy kilku emailom. Dalsze powiadomienia email zostaną stłumione." + many: "OSTRZEŻENIE: przekroczyłeś dzienny limit emaili. Dalsze powiadomienia email zostaną stłumione." + other: "OSTRZEŻENIE: przekroczyłeś dzienny limit równy %{count} emailom. Dalsze powiadomienia email zostaną stłumione." in_reply_to: "W odpowiedzi do" unsubscribe: title: "Wypisz" description: "Nie chcesz otrzymywać tych emaili? Nie ma problemu! Kliknij poniżej by wypisać się natychmiast:" + reply_by_email: "[Zobacz Temat](%{base_url}%{url}) lub odpowiedz na ten email aby odpowiedzieć" + reply_by_email_pm: "[Zobacz Temat](%{base_url}%{url}) lub odpowiedz na ten email aby odpowiedzieć." only_reply_by_email: "Powtórz ten email dla odpowiedzi." + visit_link_to_respond: "[Zobacz Temat](%{base_url}%{url}) aby odpowiedzieć." + visit_link_to_respond_pm: "[Zobacz wiadomość](%{base_url}%{url}) aby odpowiedzieć." posted_by: "Dodany przez %{username} w dniu %{post_date}" invited_to_private_message_body: | %{username} zaprosił cię do wiadomści @@ -1428,6 +1842,7 @@ pl_PL: %{respond_instructions} user_watching_first_post: + title: "Użytkownik Pregląda pierwszy post" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1465,11 +1880,11 @@ pl_PL: follow_topic: "Śledź ten temat" join_the_discussion: "Czytaj więcej" popular_posts: "Popularne wpisy" - from_topic_label: "Od" more_new: "Nowe dla ciebie" subject_template: "%{site_name} Podsumowanie" click_here: "kliknij tutaj" from: "%{site_name} podsumowanie" + preheader: "Podsumowanie aktywności od Twojej ostatniej wizyty w dniu %{last_seen_at}" mailing_list: why: "Cała aktywność w %{site_link} dla %{date}" subject_template: "[%{site_name}] Podsumowanie dla %{date}" @@ -1502,16 +1917,24 @@ pl_PL: title: "Logowanie administratora. " subject_template: "[%{site_name}] Login" account_created: + title: "Utworzono Konto" subject_template: "[%{site_name}] Twoje nowe konto" text_body_template: | Utworzyliśmy Twoje konto na %{site_name} Kliknij na linku poniżej, aby ustawić swoje hasło: %{base_url}/users/password-reset/%{email_token} + confirm_new_email: + title: "Potwierdź Nowy Email" + subject_template: "[%{site_name}] Potwierdź nowy adres email" confirm_old_email: title: "Potwierdź stary email" subject_template: "[%{site_name}] Potwierdź aktualny adres email" + notify_old_email: + title: "Powiadom Stary Email" + subject_template: "[%{site_name}] Twój adres email został zmieniony" signup_after_approval: + title: "Zarejestruj się po zatwierdzeniu" subject_template: "Zostałeś zaakceptowany na forum %{site_name}!" text_body_template: |+ Witamy na %{site_name}! @@ -1562,18 +1985,32 @@ pl_PL: edit_reason: "lokalne kopie pobranych obrazów" unauthorized: "Sorry, the file you are trying to upload is not authorized (authorized extensions: %{authorized_extensions})." pasted_image_filename: "Wklejone zdjęcie" + store_failure: "Błąd zapisu załączników #%{upload_id} dla użytkownika #%{user_id}." file_missing: "Przepraszamy, należy podać plik do przesłania." + attachments: + too_large: "Przepraszamy, plik który chcesz wczytać jest zbyt duży (maximum to is %{max_size_kb}KB)." images: size_not_found: "Przepraszamy, ale nie udało się ustalić rozmiaru obrazu. Może twój obraz jest uszkodzony?" + avatar: + missing: "Przepraszamy, nie możemy odnaleźć żadnego avatara przypisanego do tego konta email. Spróbuj załadować go ponownie" email_log: + post_user_deleted: "Użytkownik tego wpisu został usunięty." no_user: "Nie można znaleźć użytkownika z ID %{user_id}" anonymous_user: "Użytkownik anonimowy" + suspended_not_pm: "Użytkownik jest zawieszony, nie wiadomość" seen_recently: "Użytkownik był widziany niedawno" + post_not_found: "Nie można odnaleźć wpisu z numerem %{post_id}" + notification_already_read: "Powiadomienie o czym jest ten e-mailu już zostało przeczytane" + topic_nil: "wpis.temat jest zerowy" post_deleted: "Wpis został usunięty przez autora" user_suspended: "użytkownik został zawieszony" already_read: "użytkownik przeczytał ten post" + exceeded_emails_limit: "Przekroczono maksymalną, dzienną liczbę emaili dla użytkownika" + exceeded_bounces_limit: "Przekroczono bounce_score_threshold " message_blank: "wiadomość jest pusta" message_to_blank: "wiadomość.do jest pusta" + text_part_body_blank: "text_part.body jest pusta" + body_blank: "Wiadomość jest pusta" color_schemes: base_theme_name: "Podstawa" about: "O stronie" @@ -1597,18 +2034,27 @@ pl_PL: description: Pierwsza edycja basic_user: name: Podstawowy + description: Przyznano wszystkie podstawowe funkcje member: name: Zwykły + description: Przyznano zaproszenia, wysyłanie wiadomości do grup, więcej lajków regular: name: Regularny + description: Przyznano możliwość zmiany kategorii, nazwy, linków oraz salon, więcej lajków leader: name: Weteran + description: Przyznano możliwość globalnej edycji, przypinania, zamykania, archiwizacji, podziału i scalania, więcej lajków welcome: name: Powitanie description: Otrzymano polubienie + long_description: | + Ta odznaka jest przyznawana, kiedy dostajesz pierwszego lajka przy poście. Gratulacje, napisałeś coś, co inni użytkownicy uznali za interesujące, fajne lub użyteczne! autobiographer: name: Autobiograf description: Wypełnienie profilu użytkownika + long_description: |+ + Ta odznaka jest przyznawana za wypełnienie w twoim profilu i za wybranie zdjęcia profilowego. Pozwól lepiej się poznać i pokaż swoje zainteresowania, aby społeczność była jeszcze lepsza i silniej związana. Dołącz do nas. + anniversary: name: Rocznica description: Aktywność przez rok, co najmniej jeden wpis @@ -1716,8 +2162,10 @@ pl_PL: description: Ma 500 polubionych postów i dał 1000 polubień first_emoji: name: Pierwszy Emoji + description: Użyto Emoji w Poście first_mention: name: Pierwsze Wspomnienie + description: Wspomniano o użytkowniku w Poście first_onebox: name: Pierwszy Onebox first_reply_by_email: diff --git a/config/locales/server.pt.yml b/config/locales/server.pt.yml index 15af5610cb..02cae7bf26 100644 --- a/config/locales/server.pt.yml +++ b/config/locales/server.pt.yml @@ -34,7 +34,6 @@ pt: anonymous: "Anónimo" emails: incoming: - default_subject: "Email recebido de %{email}" show_trimmed_content: "Mostrar conteúdo aparado" maximum_staged_user_per_email_reached: "Foi atingido o número máximo de utilizadores temporários por email." errors: @@ -233,42 +232,6 @@ pt: - Críticas construtivas são bem-vindas, mas critique *ideias*, não pessoas. Para mais, [verifique as orientações da comunidade](/guidelines). Este painel irá aparecer apenas para o seu primeiro %{education_posts_text}. - avatar: | - ### E que tal uma fotografia para a sua conta? - - Publicou alguns tópicos e respostas, mas a sua fotografia de perfil não é tão única como você o é -- é apenas uma letra. - - Considerou **[visitar o seu perfil de utilizador](%{profile_path})** e carregar uma fotografia que o represente? - - É mais fácil seguir discussões e encontrar pessoas interessantes em conversações quando toda a gente tem uma fotografia de perfil única! - sequential_replies: | - ### Considere responder a várias mensagens de uma única vez - - Em vez de várias respostas sequenciais a um tópico, por favor considere uma única resposta que inclua citações de mensagens anteriores ou referências a @nome. - - Pode editar a sua resposta anterior para adicionar uma citação ao destacar o texto e selecionar o botão resposta com citação que aparece. - - É mais fácil para todos ler tópicos que tenham poucas respostas em profundidade em vez de muitas mas pequenas respostas individuais. - dominating_topic: |+ - ### Deixe que os outros se juntem à conversa - - Este tópico é claramente importante para si – publicou mais de %{percent}% das respostas aqui. - - Tem a certeza de que está a fornecer o tempo adequado para que outras pessoas também possam partilhar os seus pontos de vista? - - too_many_replies: |+ - ### Chegou ao limite de respostas para este tópico - - Pedimos desculpa mas novos utilizadores estão temporariamente limitados a %{newuser_max_replies_per_topic} respostas no mesmo tópico. - - Em vez de adicionar outra resposta, por favor considere editar as suas respostas anteriores, ou visitar outros tópicos. - - reviving_old_topic: | - ### Reavivar este tópico? - - A última resposta a este tópico tem agora %{days} dias. A sua resposta irá sobressair no tópico, no topo da sua lista e notificar todos os que anteriormente estavam envolvidos nesta conversação. - - Tem a certeza que pretende continuar esta conversação antiga? activerecord: attributes: category: @@ -477,14 +440,11 @@ pt: other: "há quase %{count} anos atrás" password_reset: no_token: "Desculpe, essa hiperligação para alterar a palavra-passe é muito antiga. Selecione o botão Iniciar Sessão e utilize 'Esqueci a minha palavra-passe' para obter uma nova hiperligação." - choose_new: "Por favor escolha uma nova palavra-passe" - choose: "Por favor escolha uma palavra-passe" update: 'Atualizar Palavra-passe' save: 'Definir Palavra-passe' title: 'Redefinir Palavra-passe' success: "A sua palavra-passe foi alterada com sucesso e está agora ligado." success_unapproved: "Palavra-passe modificada com sucesso." - continue: "Continuar para %{site_name}" change_email: confirmed: "O seu email foi atualizado." please_continue: "Continuar para %{site_name}" @@ -755,8 +715,6 @@ pt: facebook_config_warning: 'O servidor está configurado para permitir inscrever-se e entrar com o Facebook (enable_facebook_logins), mas o id e os valores privados da aplicação não estão configurados. Vá às Configurações do Sítio e atualize as definições. Veja este guia para saber mais.' twitter_config_warning: 'O servidor está configurado para permitir inscrever-se e entrar com o Twitter (enable_twitter_logins), mas a chave e os valores privados não estão configurados. Vá às Configurações do Sítio e atualize as definições. Veja este guia para saber mais.' github_config_warning: 'O servidor está configurado para permitir inscrever-se e entrar com o GitHub (enable_github_logins), mas o id e valores privados do cliente não estão configurados. Vá às Configurações do Sítio e atualize as definições. Veja este guia para saber mais.' - s3_config_warning: 'O servidor está configurado para fazer carregamento de ficheiros para o s3, mas pelo menos uma destas configurações não está definida: s3_access_key_id, s3_secret_access_key ou s3_upload_bucket. Vá até as Configurações do Sítio e atualize estas definições. Veja "How to set up image uploads to S3?" para saber mais.' - s3_backup_config_warning: 'O servidor está configurado para carregar cópias de segurança para s3, mas pelo menos uma das seguintes configurações não está definida: s3_access_key_id, s3_secret_access_key ou s3_backup_bucket. Vá às Configurações do Sítio e atualize as definições. Veja "How to set up image uploads to S3?" para saber mais.' image_magick_warning: 'O servidor está configurado para criar miniaturas de imagens grandes, mas o ImageMagick não está instalado. Instale o ImageMagick usando o seu gestor de pacotes preferido ou aceda a para descarregar a última versão.' failing_emails_warning: 'Há %{num_failed_jobs} tarefas de email que falharam. Verifique o seu app.yml e assegure-se que as configurações do servidor de email estão corretas. Veja as tarefas que falharam no Sidekiq.' subfolder_ends_in_slash: "A configuração da sua sub-página está incorreta; o DISCOURSE_RELATIVE_URL_ROOT termina com um traço." @@ -808,7 +766,6 @@ pt: max_image_width: "Largura máxima de miniaturas de imagens numa mensagem." max_image_height: "Altura máxima de miniaturas de imagens numa mensagem." category_featured_topics: "Número de tópicos visíveis por categoria na página de /categorias. Após a alteração deste valor, irá demorar até 15 minutos para que a página de categorias fique atualizada." - show_subcategory_list: "Mostrar lista de subcategorias em vez de lista de tópicos quando inserida uma categoria." fixed_category_positions: "Se estiver marcado, irá conseguir organizar as categorias por uma ordem fixa. Se não estiver marcado, as categorias são listadas por ordem de actividade." fixed_category_positions_on_create: "Se marcado, a ordenação de categorias irá ser mantida no diálogo de criação do tópico (requer fixed_category_positions)" add_rel_nofollow_to_user_content: "Adicionar a etiqueta rel nofollow em todos os conteúdos submetidos pelo utilizador, excepto para hiperligações internas (incluindo domínios pai). Se mudar isto, terá que atualizar todas as suas mensagens com: \"rake posts:rebake\"" @@ -903,8 +860,6 @@ pt: invite_passthrough_hours: "Quanto tempo pode um utilizador utilizar uma chave de convite previamente recuperada, em horas" invite_only: "O registo público está desativado, todos os novos utilizadores devem ser explicitamente convidados por outros membros ou pelo pessoal." login_required: "Requerer autenticação para ler conteúdo neste sítio, não permitir acesso anónimo." - min_username_length: "Comprimento mínimo do nome de utilizador, em caracteres." - max_username_length: "Comprimento máximo do nome de utilizador, em caracteres." reserved_usernames: "Nomes de utilizadores para os quais o registo não é permitido." min_password_length: "Tamanho mínimo da palavra-passe." min_admin_password_length: "Tamanho mínimo da palavra-passe para Administração." @@ -1142,7 +1097,6 @@ pt: digest_posts: "Número máximo de publicações populares a mostrar no resumo do email." digest_other_topics: "O número máximo de tópicos a mostrar na secção de \"Novos em tópicos e categorias que segue\" do email de resumo." digest_min_excerpt_length: "Tamanho mínimo dos excertos de publicações no email de resumo, em caracteres." - delete_digest_email_after_days: "Suprimir emails de resumos para utilizadores não vistos no sítio por mais de (n) dias." digest_suppress_categories: "Suprimir estas categorias dos emails de resumo." disable_digest_emails: "Desativar os emails de resumo para todos os utilizadores." detect_custom_avatars: "Se deve ou não verificar que os utilizadores carregaram fotografias de perfil personalizadas." @@ -1192,7 +1146,6 @@ pt: show_create_topics_notice: "Se o sítio tem menos de 5 tópicos públicos, mostrar um aviso pedindo aos administradores a criação de mais tópicos." delete_drafts_older_than_n_days: Eliminar rascunhos mais antigos que (n) days. bootstrap_mode_min_users: "Número mínimo de utilizadores necessários para desactivar o modo de inicialização (coloque 0 para desactivar)" - vacuum_db_days: "Executar VACUUM ANALYZE para reclamar espaço na BD após as migrações (configurar a 0 para desativar)" prevent_anons_from_downloading_files: "Previna que utilizadores anónimos descarreguem anexos. AVISO: isto irá fazer com que quaisquer atributos (que não sejam imagens) publicados como anexos não funcionem." slug_generation_method: "Escolha um método de geração slug. 'encoded' irá gerar sequências de caracteres com código percentual. 'none' irá desativar slug por completo." enable_emoji: "Ativar emoji" @@ -1414,44 +1367,8 @@ pt: Se quiser continuar a receber emails com actualizações pode ignorar este email. invite_mailer: subject_template: "%{invitee_name} convidou-o a juntar-se a '%{topic_title}' em %{site_domain_name}" - text_body_template: | - %{invitee_name} convidou-o para um debate - - > **%{topic_title}** - > - > %{topic_excerpt} - - em - - > %{site_title} -- %{site_description} - - Se está interessado, clique na hiperligação abaixo: - - %{invite_link} - - Este convite é de um utilizador confiável, por isso pode responder ao debate imediatamente. custom_invite_mailer: subject_template: "%{invitee_name} convidou-o para '%{topic_title}' em %{site_domain_name}" - text_body_template: | - %{invitee_name} convidou-o para um debate - - > **%{topic_title}** - > - > %{topic_excerpt} - - em - - > %{site_title} -- %{site_description} - - Mensagem de %{invitee_name}: - - %{user_custom_message} - - Se está interessado, clique na ligação abaixo: - - %{invite_link} - - Este convite é de um utilizador confiável, por isso pode responder ao debate imediatamente. invite_forum_mailer: subject_template: "%{invitee_name} convidou-o a juntar-se a %{site_domain_name}" custom_invite_forum_mailer: @@ -1646,12 +1563,6 @@ pt: ``` csv_export_succeeded: subject_template: "Exportação de dados completa" - text_body_template: | - A sua exportação dos dados foi bem-sucedida! :dvd: - - %{file_name} (%{file_size}) - - A hiperligação acima será válida por 48 horas.. csv_export_failed: subject_template: "A exportação dos dados falhou" text_body_template: "Pedimos desculpa mas a sua exportação de dados falhou. Por favor verifique os registos do log ou contacte um membro do pessoal." @@ -2041,7 +1952,6 @@ pt: follow_topic: "Acompanhar este tópico" join_the_discussion: "Ler Mais" popular_posts: "Publicações Populares" - from_topic_label: "De" subject_template: "Sumário de [%{site_name}] " unsubscribe: "Este resumo é enviado de %{site_link} quando não o vemos há algum tempo. Para anular a subscrição %{unsubscribe_link}." click_here: "clique aqui" @@ -2750,8 +2660,6 @@ pt: performance_report: initial_post_raw: Este tópico inclui relatórios diários de desempenho para o seu sítio. initial_topic_title: Relatórios de desempenho do sítio - topic_invite: - user_exists: "Pedimos desculpa, esse utilizador já foi convidado. Pode convidar um utilizador para um tópico apenas uma vez." tags: title: "Etiquetas" staff_tag_disallowed: "A etiqueta \"%{tag}\" pode ser aplicada pela equipa de apoio apenas." diff --git a/config/locales/server.pt_BR.yml b/config/locales/server.pt_BR.yml index f3e44c45a8..806533e767 100644 --- a/config/locales/server.pt_BR.yml +++ b/config/locales/server.pt_BR.yml @@ -73,6 +73,8 @@ pt_BR: inclusion: não está incluído na lista invalid: é inválido is_invalid: "parece pouco claro; é uma frase completa?" + contains_censored_words: "contém as seguintes palavras censuradas: %{censored_words}" + matches_censored_pattern: "contém as seguintes palavras que se encaixam nos padrões de expressões regulares censuradas do site: %{censored_words}" less_than: precisa ser menor que %{count} less_than_or_equal_to: deve ser menor ou igual à %{count} not_a_number: não é um número @@ -107,9 +109,10 @@ pt_BR: default_categories_already_selected: "Você não pode selecionar uma categoria usada noutra lista." s3_upload_bucket_is_required: "Você não pode habilitar uploads para o S3 a não ser que tenha provido o 's3_upload_bucket'." invite: - accept_invite: "Convite aceito" + not_found: "O token do seu convite é inválido. Por favor entre em contato com o administrador do site." bulk_invite: file_should_be_csv: "O arquivo atualizado deve ter o formato csv." + error: "Houve um erro ao tentar enviar esse arquivo. Por favor tente novamente mais tarde." topic_invite: user_exists: "Desculpe, este usuário já foi convidado. Você pode convidar um usuário para um tópico apenas uma única vez." backup: @@ -129,6 +132,7 @@ pt_BR: embed: start_discussion: "Começar Discussão" continue: "Continuar Discussão" + error: "Erro na Incorporação" more_replies: one: "1 resposta a mais" other: "%{count} respostas a mais" @@ -237,39 +241,47 @@ pt_BR: Para mais, [veja nosso guia da comunidade](/guidelines). Esta mensagem aparecerá somente para o seu primeiro %{education_posts_text}. avatar: | - ### Que tal uma imagem para a sua conta? + ### Que tal usar uma imagem para a sua conta? - Você postou alguns tópicos e respostas, mas a sua imagem de perfil não é tão original como você é -- é apenas uma carta. + Você tem postado alguns tópicos e respostas, mas sua foto de perfil não tão única quando você - é apenas uma carta. - Você já considerou ** [visitando o seu perfil de usuário](%{profile_path})** e carregar uma imagem que representa você? + Já pensou em **[visitar seu perfil de usuário](%{profile_path})** e enviar uma foto que representa você? - É mais fácil seguir as discussões e encontrar pessoas interessantes em conversas quando todo mundo tem uma imagem de perfil única! + É mais fácil manter discussões e encontrar pessoas interessantes durante as conversas quando todos têm uma foto de perfil única! sequential_replies: | - ### Considere responder a várias mensagens simultaneamente + ### Considere responder várias postagem de uma só vez - No lugar de várias respostas em seguida para um tópico, por favor considere uma única resposta que inclui citações de mensagens anteriores ou referência ao @nome. + Em vez de responder um tópico várias vezes em sequência, por favor considere fazer uma única resposta que inclua citações de postagens anteriores ou referencie alguém usando @name. - Você pode editar sua resposta anterior para adicionar uma citação destacando o texto e selecionando o botão citar resposta que aparece. + Você pode editar sua resposta anterior para adicionar uma citação selecionando um texto e clicando no botão responder citação que aparecerá. - É mais fácil para todos lerem tópicos que tem menos respostas em profundidade contra muitas respostas curtas individuais. + Fica mais fácil para todo mundo ler tópicos que possuem poucas respostas com muita informação em vez de muitas respostas individuais com pouca informação cada. dominating_topic: | - ### Deixe que os outros se juntem à conversa⏎ - ⏎ - Este tópico é claramente importante para você – você postou mais de %{percent}% das respostas aqui.⏎ - ⏎ - Tem certeza de que você está fornecendo o tempo adequado para outras pessoas também poderem compartilhar seus pontos de vista?⏎ + ### Deixe outros entrarem na conversa + + Este tópico claramente é importante para você – você postou mais de %{percent}% das respostas aqui. + + Tem certeza que você está dando tempo para que outras pessoas também compartilhem seus pontos de vista? + get_a_room: | + ### Considere responder para mais pessoas + + Você já respondeu %{count} vezes o usuário @%{reply_username} neste tópico em particular. + + Já pensou em responder também *outras* pessoas nesta discussão? Uma boa discussão envolve várias vozes e perspectivas. + + Se quiser continuar estendendo sua conversa com este usuário, [envie uma mensagem pessoal para ele](/users/%{reply_username}). too_many_replies: | - # # # Você está no limite de resposta para este tópico + ### Você atingiu o limite de respostas para este tópico - Lamentamos, mas novos usuários estão temporariamente limitados a %{newuser_max_replies_per_topic} respostas no mesmo tópico. + Sentimos muito, mas novos usuários são temporariamente limitados a %{newuser_max_replies_per_topic} respostas no mesmo tópico. - Em vez de adicionar outra resposta, por favor, considere editar suas respostas anteriores ou visitar outros tópicos. + Em vez de adicionar outra resposta, por favor considere editar suas respostas anteriores, ou visite outros tópicos. reviving_old_topic: | - # # # Reviver este tópico? + ### Reviver este tópico? - A última resposta a este tópico foi a %{days} atrás. Sua resposta vai levar o tópico para o topo da sua lista e avisar a qualquer um anteriormente envolvido na conversa. + A última resposta deste tópico foi feita há **%{days}** dias atrás. Sua resposta jogará o tópico para o topo da sua lista e notificará as pessoas que foram envolvidas na conversa. - Tem certeza de que quer continuar esta velha conversa? + Tem certeza que deseja continuar essa velha conversa? activerecord: attributes: category: @@ -292,6 +304,7 @@ pt_BR: no_user_selected: "Você deve escolher um usuário válido." featured_link: invalid: "é inválida. A URL deve conter http:// ou https://." + invalid_category: "não pode ser editado nesta categoria." user: attributes: password: @@ -325,6 +338,20 @@ pt_BR: assets_topic_body: "Esse é um tópico permanente, visível apenas para a equipe, para arquivar imagens e arquivos usados no design do fórum. Não o delete!\n\n\nAqui está como:\n\n\n1. Responda a esse tópico.\n2. Envie todas as imagens que você deseja para serem usadas como logos, favicons e assim por diante aqui. (Utilize o ícone da barra de upload no editor de post, arraste e solte ou cole imagens.)\n3. Enviar sua resposta para publicá-la.\n4. Clique com o botão direito do mouse nas imagens em sua nova postagem para obter o endereço das imagens enviadas, ou clique no ícone de edição para editar o seu post e recuperar o caminho para as imagens. Copie o endereço da imagem.\n5. Copie o endereço das imagens nas [configurações básicas](/admin/site_settings/category/required).\n\nTambém, se você precisa ativar diferentes tipos de envios de arquivos, edite o `authorized_extensions` em [configurações de arquivo](/admin/site_settings/category/files)." discourse_welcome_topic: title: "Bem vindo ao Discourse" + body: |2 + + O primeiro parágrafo deste tópico fixo será visto como uma mensagem de boas vindas a todos os novos visitantes em sua página inicial. É muito importante! + + **Edite isso** em uma breve descrição da sua comunidade: + + - Para quem ela é? + - O que será encontrado aqui? + - Porque as pessoas deveria vir aqui? + - Onde é possível saber mais a respeito (links, fontes, etc)? + + + + Você pode querer fechar este tópico através do Administrador :wrench: (na parte superior direita e inferior), para que não se acumulem respostas num tópico de boas vindas. lounge_welcome: title: "Bem-vindo ao Salão" body: |2 @@ -485,7 +512,6 @@ pt_BR: title: 'Redefinir Senha' success: "Sua senha foi modificado com sucesso e você está conectado agora." success_unapproved: "Senha modificada com sucesso." - continue: "Continuar para %{site_name}" change_email: confirmed: "O seu email foi atualizado." please_continue: "Continuar no %{site_name}" @@ -752,8 +778,6 @@ pt_BR: facebook_config_warning: 'O servidor está configurado para permitir o signup e login com Facebook (enable_facebook_logins), mas os valores do App Id e App Secret não estão configurados. Vá para as Configurações do Site e atualize as configurações. Veja este guia e aprenda mais.' twitter_config_warning: 'O servidor está configurado para permitir o signup e login com Twitter (enable_twitter_logins), mas os valores de Key e Secret não estão configurados. Vá para as Configurações do Site e atualize as configurações. Veja este guia e aprenda mais.' github_config_warning: 'O servidor está configurado para permitir o signup e login com GitHub (enable_twitter_logins), mas os valores de Cliend Id e Secret não estão configurados. Vá para the Site Settings e atualize as configurações. Veja este guia e aprenda mais.' - s3_config_warning: 'O servidor está configurado para fazer upload de arquivos para o s3, mas pelo menos uma destas configurações não está definida: s3_access_key_id, s3_secret_access_key ou s3_upload_bucket. Vá até as Configurações do Site e atualize estas definições. Veja "How to set up image uploads to S3?" para saber mais.' - s3_backup_config_warning: 'O servidor está configurado para fazer upload de arquivos para o s3, mas pelo menos uma destas configurações não está definida: s3_access_key_id, s3_secret_access_key ou s3_backup_bucket. Vá até as Configurações e atualize estas definições. Veja "How to set up image uploads to S3?" para saber mais.' image_magick_warning: 'O servidor está configurado para criar miniaturas de imagens grandes, mas o ImageMagick não está instalado. Instale o ImageMagick usando seu gerenciador de pacotes preferido ou acesse para fazer download da última versão.' failing_emails_warning: 'Existem %{num_failed_jobs} tarefas de email que falharam. Verifique seu app.yml e se assegure que as configurações do servidor de email estão corretas. Veja as tarefas que falharam no Sidekiq.' subfolder_ends_in_slash: "Sua configuração de subdiretórios está incorreta; DISCOURSE_RELATIVE_URL_ROOT termina com uma barra." @@ -803,7 +827,6 @@ pt_BR: max_image_width: "Largura máxima para imagens em um post" max_image_height: "Altura máxima para imagens em um post" category_featured_topics: "Número de tópicos exibidos por categoria na página /categories. Depois de alterar este valor, levará até 15 minutos para a página de categorias atualizar-se." - show_subcategory_list: "Mostrar lista de subcategorias ao invés de lista de tópicos ao entrar em uma categoria." fixed_category_positions: "Se selecionado, você será capaz de organizar as categorias em uma ordem fixa. Se nada for feito, as categorias serão listadas em ordem de atividade." fixed_category_positions_on_create: "Se ativado, a ordenação das categorias vai ser mantida no formulário de criação de tópico. (requer fixed_category_positions)" add_rel_nofollow_to_user_content: "Adicionar \"nofollow\" para todo conteúdo incluído por um usuário, exceto links internos (incluindo sub domínios). Para que as mudanças façam efeito é necessário rodar \"rake posts:rebake\"." @@ -894,8 +917,6 @@ pt_BR: invite_passthrough_hours: "Quando tempo um usuário pode usar uma chave de convite previamente usada para logar, em horas" invite_only: "Cadastro público está desabilitado, todos os novos usuários devem ser explicitamente convidados por outros membros ou equipe." login_required: "Exigir autenticação para ler conteúdo neste site, desabilitar acesso anônimo." - min_username_length: "Nome de usuário mínimo em caracteres." - max_username_length: "Nome de usuário máximo em caracteres." reserved_usernames: "Nomes de usuário não permitidos para criação de contas." min_password_length: "Comprimento mínimo da senha." min_admin_password_length: "Tamanho de senha mínima para Administradores." @@ -1264,22 +1285,6 @@ pt_BR: other: "%{count} sinalizações aguardando a ser controladas" invite_mailer: subject_template: "%{invitee_name} convidou você para '%{topic_title}' em %{site_domain_name}" - text_body_template: | - %{invitee_name} convidou você para uma conversa - - > **%{topic_title}** - > - > %{topic_excerpt} - - em - - > %{site_title} -- %{site_description} - - Se estiver interessado, clique no link abaixo: - - %{invite_link} - - Este convite é de um usuário de nossa confiança, assim você poderá participar da conversa imediatamente. invite_forum_mailer: subject_template: "%{invitee_name} convidou você para participar de %{site_domain_name}" invite_password_instructions: @@ -1351,12 +1356,6 @@ pt_BR: ``` csv_export_succeeded: subject_template: "Exportação de dados completada" - text_body_template: | - Sua exportação de dados foi bem-sucedida! :dvd: - - %{file_name} (%{file_size}) - - O link acima será válido por 48 horas. csv_export_failed: subject_template: "A exportação de dados falhou" text_body_template: "Nos desculpamos, mas sua exportação de dados falhou. Por favor verifique os logs ou entre em contato com um membro da staff." @@ -1564,7 +1563,6 @@ pt_BR: follow_topic: "Seguir esse tópico" join_the_discussion: "Leia Mais" popular_posts: "Publicações Populares" - from_topic_label: "De" subject_template: "[%{site_name}] Resumo das discussões" unsubscribe: "Este resumo é enviado por %{site_link} quando não o vemos há algum tempo. Para cancelar a assinatura %{unsubscribe_link}." click_here: "clique aqui" @@ -1884,8 +1882,6 @@ pt_BR: performance_report: initial_post_raw: Este tópico inclui relatórios de performance diários de seu site. initial_topic_title: Relatórios de performance do Site - topic_invite: - user_exists: "Desculpe, este usuário já foi convidado. Você pode convidar um usuário para um tópico apenas uma única vez." tags: title: "Marcações" staff_tag_disallowed: "A marcação \"%{tag}\" pode ser aplicada somente pelo pessoal de apoio." diff --git a/config/locales/server.ro.yml b/config/locales/server.ro.yml index df308cc024..dbad8996c2 100644 --- a/config/locales/server.ro.yml +++ b/config/locales/server.ro.yml @@ -34,7 +34,6 @@ ro: anonymous: "Anonime" emails: incoming: - default_subject: "Email primit de la %{email}" show_trimmed_content: "Arată conținut restrâns." maximum_staged_user_per_email_reached: "Număr maxim de utilizatori în așteptare, pe email." errors: @@ -251,40 +250,6 @@ ro: - Critica constructivă e binevenită, critică *ideea*, nu oamenii. Pentru detalii, [verifică regulile comune](/reguli). Acest panel va apărea doar pentru prima %{education_posts_text}. - avatar: | - ### Ce-ai zice să adaugi o poză contului tău? - - Ai postat câteva subiecte și răspunsuri, dar poza ta de profil nu este tot atât de unică pe cât ești tu - e doar o simplă literă. - - Te-ai gândit să îți **[vizitezi profilul utilizator](%{profile_path})** și să încarci o poză care să te reprezinte? - - Subiectele sunt mai ușor de urmărit și oamenii interesanți sunt mai ușor de găsit atunci când fiecare are o poză unică de profil, în conversații! - sequential_replies: | - ### Ia în considerare ideea de a răspunde la câteva postări simultan - - În loc să răspunzi secvențial la un subiect, poți să dai un singur răspuns care include citate din postări precedente sau referințe la @nume. - - Îți poți edita răspunsul precedent pentru a adăuga un citat, după cum urmează: selectează textul și - când apare - apasă butonul citează răspuns. - - E mai ușor pentru toată lumea să citească subiecte care au răspunsuri mai puține și de substanță, decât subiecte formate dintr-o grămadă de răspunsuri individuale, micuțe. - dominating_topic: | - ### Permite și altora să se alăture la conversație - - Acest subiect este important pentru tine și – Ai postat mai mult de %{percent}% din răspunsuri aici. - - Ești sigur că acorzi destul timp și altora ca să-și exprime punctul de vedere? - too_many_replies: | - ### Ai atins limita maximă de răspunsuri pentru acest subiect - - Ne pare rău, dar utilizatorii noi au un număr limitat de %{newuser_max_replies_per_topic} răspunsuri într-un subiect. - - Nu adăuga un nou răspuns, încearcă mai bine să editezi un răspuns precedent, sau să vizitează o altă discuție. - reviving_old_topic: | - ### Reînvii acest subiect? - - Ultimul răspuns la acest subiect a fost dat acum %{days} (de) zile. Răspunsul tău va promova subiectul în vârful listei și va notifica pe toată lumea ce a fost implicată anterior în conversație. - - Ești sigur că dorești să continui această conversație? activerecord: attributes: category: @@ -519,14 +484,11 @@ ro: other: "cu aproape %{count} de ani în urmă" password_reset: no_token: "Ne pare rău, dar link-ul de schimbare a parolei este prea vechi. Selectează butonul Înregistrare și folosește 'Mi-am uitat parola' pentru a obține un nou link." - choose_new: "Alege o parolă nouă" - choose: "Alege o parolă" update: 'Actualizează parola' save: 'Setează parola' title: 'Resetează parola' success: "Ți-ai schimbat cu succes parola și acum ești autentificat." success_unapproved: "Ți-ai schimbat cu succes parola." - continue: "Continuă spre %{site_name}" change_email: confirmed: "Emailul tău a fost actualizat." please_continue: "Continuă la %{site_name}" @@ -797,8 +759,6 @@ ro: facebook_config_warning: 'Serverul e configurat să permită înscrierea și autentificarea cu Facebook (enable_facebook_logins), dar app id și valoarea app secret nu sunt setate. Mergi la Setările site-ului și modifică setările. Vizualizează ghidul pentru mai multe informații.' twitter_config_warning: 'Serverul e configurat să permită înscrierea și autentificarea cu Twitter (enable_twitter_logins),dar cheia și valoarea secretă nu sunt setate. Mergi la Setările site-ului și modifică setarea. Vizualizează ghidul pentru mai multe informații.' github_config_warning: 'Serverul e configurat să permită înscrierea și autentificarea cu GitHub (enable_github_logins), dar id-ul de client și valorile secrete nu sunt setate. Mergi la Setările site-ului și modifică setarea. Vizualizează ghidul pentru mai multe informații.' - s3_config_warning: 'Serverul este configurat să încarce fișierele către s3, dar cel puțin una din următoarele setări nu este potrivită: id_cheie_acces_s3, cheia_acces_secret_s3 sau loc_încărcare_s3. Mergi la Setările site-ului și actualizează setările. Vezi "Cum se fac încărcările de imagine pe S3?" pentru a afla mai multe.' - s3_backup_config_warning: 'Serverul este configurat să încarce backup-urile pe opțiunea s3, dar cel puțin una dintre setările următoare nu este completată: s3_access_key_id, s3_secret_access_key sau s3_backup_bucket. Mergi la Setările site-ului și actualizează setările. Pentru mai multe informații, vizualizează "Cum să setezi încărcările de imagini pe opțiunea S3".' image_magick_warning: 'Serverul este configurat să creeze thumbnail-uri din imagini mari, dar ImageMagick nu e instalat. Instalează ImageMagick descarcă ultima versiune.' failing_emails_warning: 'Există %{num_failed_jobs} (de) sarcini email care au eșuat. Verifică app.yml și asigură-te că setările serverului de mail sunt corecte. Vizualizează sarcini eșuate în Sidekiq.' subfolder_ends_in_slash: "Setările subfolderului sunt incorecte; DISCOURSE_RELATIVE_URL_ROOT se termină cu slash." @@ -851,7 +811,6 @@ ro: max_image_width: "Maximul lățimii unui thumbnail într-o postare" max_image_height: "Maximul înălțimii unui thumbnail într-o postare" category_featured_topics: "Numărul subiectelor afișate după categorie pe /pagina de categorii. După schimbarea valorii, e nevoie de până la 15 minute până ce pagina de categorii se va actualiza." - show_subcategory_list: "Arată lista de sub-categorii în loc de lista de subiecte când se introduce o categorie." fixed_category_positions: "Dacă e bifat, veți putea aranja categoriile într-o ordine fixă. Dacă e nebifat, categoriile sunt listate în ordinea activității." fixed_category_positions_on_create: "Dacă este bifat, ordonarea categoriilor va fi menținută în dialogul de creare a subiectelor (presupune fixed_category_positions)." add_rel_nofollow_to_user_content: "Adaugă atributul rel nofollow la toate conținuturile transmise de către utilizator, cu excepția link-urilor interne (includiv domeniile părinte). Dacă schimbi această setare, postările trebuie refăcute cu: \"rake posts:rebake\"" @@ -946,8 +905,6 @@ ro: invite_passthrough_hours: "Cât timp un utilizator poate folosi o cheie de invitație acceptată anterior pentru autentificare, în ore" invite_only: "Înregistrarea publică este dezactivată, toți utilizatorii noi trebuie să fie exclusiv invitați de un alt membru sau de personalul site-ului." login_required: "Cere autentificare pentru a citi conținutul acestui site, blochează accesul anonim." - min_username_length: "Numărul minim de caractere pe care poate să îl aibă un nume de utilizator." - max_username_length: "Numărul maxim de caractere pe care poate să îl aibă un nume de utilizator." reserved_usernames: "Nume de utilizator pentru care înregistrarea nu este permisă." min_password_length: "Lungimea minimă a parolei." min_admin_password_length: "Lungimea maximă a parolei pentru Admin." @@ -1186,7 +1143,6 @@ ro: digest_posts: "Numărul maxim de postări notorii care să se afișeze în rezumatul-email." digest_other_topics: "Numărul maxim de subiecte care să fie afișate în secțiunea „Noutăți în subiectele și categoriile pe care le urmărești” din rezumatul pe email." digest_min_excerpt_length: "Lungimea minimă (în caractere) a extraselor de postări, ce vor fi incluse în emailul-rezumat." - delete_digest_email_after_days: "Nu trimite emailuri-rezumat utilizatorilor care nu au fost văzuți pe site de mai mult de (n) zile." digest_suppress_categories: "Nu include aceste categorii în emailurile-rezumat." disable_digest_emails: "Dezactivează emailurile-rezumat pentru toți utilizatorii." email_accent_bg_color: "Culoarea accent care să fie folosită ca fundal pentru unele elemente din emailurile HTML. Introdu numele culorii („roșu”) sau valoarea hex ('#FF000')." @@ -1239,7 +1195,6 @@ ro: show_create_topics_notice: "Dacă site-ul are mai puțin de 5 subiecte publice, afișează o notificare prin care se cere adminilor să creeze subiecte." delete_drafts_older_than_n_days: șterge drafturile mai vechi de (n) zile. bootstrap_mode_min_users: "Numărul minim de utilizatori necesar pentru dezactivarea modului bootstrap (0 pentru dezactivare)" - vacuum_db_days: "Rulează VACUUM ANALYZE pentru a recupera spațiul din baza de date după o migrare (0 pentru dezactivare)" prevent_anons_from_downloading_files: "Blochează utilizatorii anonimi de la descărcarea de atașamente. ATENȚIE: aceasta va face ca toate resursele site-ului care sunt postate ca atașamente să nu mai meargă." slug_generation_method: "Alege o metodă de generare de identificator. 'encodat' va genera șir de caractere encodate cu procentaje. 'nimic' va dezactiva complet identificatorii." enable_emoji: "Activează emoji" @@ -1472,43 +1427,8 @@ ro: Dacă dorești să primești în continuare actualizări pe email, poți ignora acest mesaj. invite_mailer: subject_template: "%{invitee_name} te-a invitat la subiectul '%{topic_title}' pe %{site_domain_name}" - text_body_template: | - %{invitee_name} te-a invitat la o discuție - - > **%{topic_title}** - > - > %{topic_excerpt} - - la - - > %{site_title} -- %{descriere_site} - - Dacă ești interesat, click pe adresa dedesubt: - - %{invite_link} - - Aceasta invitație este de la un utilizator de încredere, deci poți răspunde discuției de îndată ce dorești. custom_invite_mailer: subject_template: "%{invitee_name} te-a invitat la subiectul '%{topic_title}' pe %{site_domain_name}" - text_body_template: | - %{invitee_name} te-a invitat la o discuție - - > **%{topic_title}** - > - > %{topic_excerpt} - - pe - - > %{site_title} -- %{descriere_site} - - Mesaj de la %{invitee_name}: - - %{user_custom_message} - - Dacă te interesează, dă click pe link-ul de mai jos: - %{invite_link} - - Această invitație este de la un utilizator verificat, deci poți răspunde de îndată ce dorești. invite_forum_mailer: subject_template: "%{invitee_name} te-a invitat să te alături pe %{site_domain_name}" custom_invite_forum_mailer: @@ -1709,12 +1629,6 @@ ro: ``` csv_export_succeeded: subject_template: "Exportul datelor s-a terminat" - text_body_template: | - Exportul datelor tale a reușit! :dvd: - - %{file_name} (%{file_size}) - - Link-ul de deasupra este disponibil 48 de ore. csv_export_failed: subject_template: "Exportul datelor a eșuat" text_body_template: "Ne pare rău, dar exportul datelor tale a eșuat. Te rugăm să verifici rapoartele sau să contactezi un membru al echipei." @@ -2102,7 +2016,6 @@ ro: follow_topic: "Urmărește acest subiect" join_the_discussion: "Citește mai mult" popular_posts: "Postări notorii" - from_topic_label: "De la" subject_template: "[%{site_name}] Rezumat" unsubscribe: "Acest rezumat este transmis de pe %{site_link} când a trecut ceva vreme de când nu te-am mai văzut. Pentru a te dezabona, %{unsubscribe_link}." click_here: "click aici" @@ -2806,8 +2719,6 @@ ro: performance_report: initial_post_raw: Acest subiect include rapoarte zilnice de performanță referitoare la site-ul tău. initial_topic_title: Rapoarte de performanță website - topic_invite: - user_exists: "Ne pare rău, acest utilizator a fost deja invitat. Nu poți să inviți un utilizator la un subiect decât o singură dată." tags: title: "Etichete" staff_tag_disallowed: "Eticheta \"%{tag}\" poate fi pusă doar de un membru al echipei." diff --git a/config/locales/server.ru.yml b/config/locales/server.ru.yml index 6afaf1dc72..0ec49b1e9b 100644 --- a/config/locales/server.ru.yml +++ b/config/locales/server.ru.yml @@ -113,7 +113,6 @@ ru: default_categories_already_selected: "Нельзя выбрать раздел, используемый в другом списке." s3_upload_bucket_is_required: "Нельзя включить загрузки на S3, пока не задана настройка 's3_upload_bucket'." invite: - accept_invite: "Принять приглашение" not_found: "Неверный код приглашения. Пожалуйста, свяжитесь с администратором сайта." bulk_invite: file_should_be_csv: "Загружаемый файл должен быть в csv-формате." @@ -272,37 +271,12 @@ ru: Больше информации вы найдете в нашем [руководстве пользователя](/guidelines). Данное окно будет показываться пока вы создаете свои первые %{education_posts_text}. avatar: | - ### Как насчет вашей личной картинки? + ### Как насчет изображения для вашей учетной записи? + Вы опубликовали несколько тем и ответы, но ваше изображение профиля не уникален как вы - это просто письмо. - Мы видим, что вы уже написали несколько тем и сообщений, но ваша аватарка не особо привлекает - сейчас на ней просто изображена буква из вашего псевдонима или имени. + Рассматривали ли вы **[посетить свой профиль пользователя] (%{профиль_дорожка})** и загрузить изображение, которое представляет вас? - Рекомендуем проследовать на **[страницу вашей учетной записи](%{profile_path})** и загрузить картинку, которая что-то о вас говорит. Это может быть или смайлик, или ваша фотография, или любая другая картинка. - - На самом деле, следить за дискуссиями и находить интересных собеседников намного проще, когда у всех форумчан есть своя уникальная картинка профиля! Ваша аватарка - это ваш характер и облик на форуме. - sequential_replies: | - ### Лучше совмещать несколько ответов в один - - Вместо того, чтобы писать и отправлять много отдельных ответов подряд, можно ответить всем по порядку в одном сообщении. Для этого нужно вставлять цитату, затем ответ на нее, затем снова цитату, затем ответ, и т.д. Также, можно упоминать участников диалога через их @псевдонимы. - - Вместо нового ответа, сейчас можно начать редактировать свой предыдущий ответ и просто добавить в него новые цитаты и ответы та них. Для этого нужно выделить требуемый текст и нажать на появившуюся кнопку ответить цитированием. - - Для большинства читатей, намного проще читать темы, в которых длинные ответы и их мало, чем когда много коротеньких ответов. - dominating_topic: |2 - - Данная тема является для вас важной – количество ваших ответов превышает %{percent}% процентов. - - Уверены ли вы, что так же даете другим людям возможность высказать свою точку зрения? - too_many_replies: |2 - - Новые пользователи ограничены %{newuser_max_replies_per_topic} ответами в одной и той же теме. - - Вместо добавления нового ответа используйте цитирование в предыдущем ответе или посетите другие темы. - reviving_old_topic: | - ### Возобновить обсуждение в этой теме? - - Последнему ответу в этой теме боле %{days} дней. Ваше сообщение переместит тему наверх списков и оповестит всех ее участников. - - Вы уверены, что хотите возобновить это устаревшее обсуждение? + Это легче следить за ходом обсуждений и найти интересных людей в разговорах, когда каждый человек имеет уникальный профиль картину! activerecord: attributes: category: @@ -571,7 +545,6 @@ ru: title: 'Сбросить пароль' success: "Смена пароля прошла успешно, вы вошли на сайт." success_unapproved: "Смена пароля прошла успешно." - continue: "Перейти на сайт %{site_name}" change_email: confirmed: "Ваш адрес электронной почты обновлен." please_continue: "Перейти на %{site_name}" @@ -837,8 +810,6 @@ ru: facebook_config_warning: 'Сервер позволяет регистрацию и вход на сайт с использованием учетной записи Facebook (enable_facebook_logins), но id и секретные значения не заданы. Пройдите в раздел Настройки сайта и обновите настройки. Ознакомьтесь с данным руководством для получения дополнительной информации.' twitter_config_warning: 'Сервер позволяет регистрацию и вход на сайт с использованием учетной записи Twitter (enable_twitter_logins), но id и секретные значения не заданы. Пройдите в раздел Настройки сайта и обновите настройки. Ознакомьтесь с данным руководством для получения дополнительной информации.' github_config_warning: 'Сервер позволяет регистрацию и вход на сайт с использованием учетной записи GitHub (enable_github_logins), но id и секретные значения не заданы. Пройдите в раздел Настройки сайта и обновите настройки. Ознакомьтесь с данным руководством для получения дополнительной информации.' - s3_config_warning: 'Сервер сконфигурирован на загрузку файлов в хранилище S3, однако не указаны некоторые значения из списка: s3_access_key_id, s3_secret_access_key или s3_upload_bucket. Перейдите в Настройки сайта и установите необходимые значения. Для получения дополнительной информации перейдите по ссылке How to set up image uploads to S3?.' - s3_backup_config_warning: 'Сервер сконфигурирован на загрузку резервных копий в хранилище S3, однако не заданы все необходимые настройки : s3_access_key_id, s3_secret_access_key, s3_backup_bucket. Перейдите в настройки сайта и установите необходимые значения. Для получения дополнительной информации перейдите по ссылке How to set up image uploads to S3?.' image_magick_warning: 'Сервер сконфигурирован на создание превью больших изображений, однако на сервере не установлен ImageMagick. Установите ImageMagick используя системный менеджер пакетов, или пройдите по ссылке для загрузки последней версии.' site_settings: censored_words: "Слова, которые будут автоматически заменены на ■■■■" @@ -872,7 +843,6 @@ ru: max_image_width: "Максимальная ширина уменьшенных версий изображений, показываемых в сообщениях" max_image_height: "Максимальная высота уменьшенных версий изображений, показываемых в сообщениях" category_featured_topics: "Количество тем, отображаемых для одного разделе на странице разделов. После изменения значения потребуется около 15 минут для обновления списков." - show_subcategory_list: "Показывать список подразделов вместо списка тем на страницах разделов." fixed_category_positions: "Если влючено, разделы можно будет отсортировать в определенном порядке. Иначе разделы будут отображаться в порядке активности в них." add_rel_nofollow_to_user_content: "Добавить \"rel nofollow\" для всех ссылок за исключением внутренних (включая родительский домен). Изменение данной настройки потребует обновления всех сообщений с помощью команды \"rake posts:rebake\"" post_excerpt_maxlength: "Максимальная длина краткого изложения сообщения." @@ -938,8 +908,6 @@ ru: invite_passthrough_hours: "Как долго пользователь может воспользоваться ключем приглашения для входа на сайт, указывается в часах" invite_only: "Публичная регистрация отключена. Регистрация только по приглашениям. Новые пользователи могут получить приглашения для регистрации от существующих пользователей или от редакции сайта." login_required: "Требовать авторизации для доступа к сайту, анонимный доступ запретить." - min_username_length: "Минимально допустимая длина псевдонима, символов." - max_username_length: "Максимально допустимая длина псевдонима, символов." reserved_usernames: "Псевдонимы, запрещенные для регистрации" min_password_length: "Минимальная длина пароля" min_admin_password_length: "Минимальная длина пароля для Администратора." @@ -1347,22 +1315,6 @@ ru: subject_template: "Подтвердите, что вы больше не желаете получать обновления по электронной почте от %{site_title}" invite_mailer: subject_template: "%{invitee_name} приглашает вас присоединиться к '%{topic_title}' на сайте %{site_domain_name}" - text_body_template: | - %{invitee_name} пригласил вас поучавствовать в обсуждении - - > **%{topic_title}** - > - > %{topic_excerpt} - - на сайте - - > %{site_title} -- %{site_description} - - Если вы заинтересовались, нажмите ссылку: - - %{invite_link} - - Это персональное приглашение от зарегистрированного пользователя, поэтому вы смело можете сразу же приступать к обсуждению. custom_invite_mailer: subject_template: "%{invitee_name} приглашает Вас присоединиться к '%{topic_title}' на сайте %{site_domain_name}" invite_forum_mailer: @@ -1446,12 +1398,6 @@ ru: csv_export_succeeded: title: "Успешный Экспорт CSV" subject_template: "Экспорт завершен" - text_body_template: | - Экспорт данных прошел успешно. - - Загрузить CSV файл можно по ссылке: %{file_name} (%{file_size}) - - Ссылка будет действать только 48 часов. csv_export_failed: title: "Неудачный Экспорт CSV" subject_template: "Экспорт не удался" @@ -1555,7 +1501,6 @@ ru: follow_topic: "Следить за этой темой" join_the_discussion: "Читать Далее" popular_posts: "Популярные Сообщения" - from_topic_label: "От" more_new: "Новое для Вас" click_here: "нажмите здесь" mailing_list: @@ -1835,8 +1780,6 @@ ru: performance_report: initial_post_raw: Эта тема содержит ежедневные отчеты активности форума. initial_topic_title: Отчеты активности форума - topic_invite: - user_exists: "К сожалению, этот пользователь уже был приглашён. Вы можете пригласить пользователя в тему только один раз." tags: title: "Теги" staff_tag_disallowed: "Тег \"%{tag}\" может быть применён только персоналом." diff --git a/config/locales/server.sk.yml b/config/locales/server.sk.yml index d9e61ec6bd..36fded7227 100644 --- a/config/locales/server.sk.yml +++ b/config/locales/server.sk.yml @@ -33,7 +33,6 @@ sk: anonymous: "Anonymný" emails: incoming: - default_subject: "Prijatý email od %{email}" show_trimmed_content: "Ukázať orezaný obsah" maximum_staged_user_per_email_reached: "Dosiahnutý maximálny počet dočasných používateľov vytvorených emailom." errors: @@ -227,40 +226,6 @@ sk: - Konštruktívna kritika je vítana, avšak kritizujte "nápady", nie ľudí. Pre viac informácií, [pozri návody](/guidelines). Tento panel sa zobrazí iba raz %{education_posts_text}. - avatar: | - ### Čo tak pridať fotku k svojmu účtu? - - Už ste pridali zopár tém a odpovedi, ale Váš profil nie je taký jedinečný ako Vy -- Je to len písmeno. - - Zvážili ste **[pozrieť váš profil](%{profile_path})** a pridať obrázok , ktorý Vás vystihuje? - - Je jednoduchšie sledovať diskusie a nájsť zaujímave osoby v konverzácii pokiaľ ma každý z nich v profile jedinečný obrázok ! - sequential_replies: | - ### Zvážte možnosť odpovedať na viacero príspevkov naraz - - Namiesto množstva postupných odpovedí na tému prosím zvážte použitie jednej odpovede, ktorá bude obsahovať citácie z predchádzajúcich príspevkov, alebo odkazy na @meno - - Ak chcete dať časť svojho vloženého príspevku do úvodzoviek, stačí označiť text a stlačiť tlačidlo quote reply , ktoré sa následne objaví. - - Pre všetkých je jednoduchšie čítať témy, ktoré majú menšiu hĺbku vnorených odpovedi v porovnaní s množstvom malých individuálnych odpovedí. - dominating_topic: | - ### Umožnite ostatným nech sa zapoja do debaty - - Táto téma je pre Vás zjavne dôležitá – prispeli ste do nej viac než %{percent}% odpovedí. - - Ste si istí, že posktujete dostatok času aj ostatným aby prezentovali svoj názor ? - too_many_replies: | - ### Dosiahli ste limit počtu odpovedí na túto tému - - Ľutujeme, noví používatelia môžu dočasne vložiť len %{newuser_max_replies_per_topic} odpovedí na jednu tému. - - Namiesto nového príspevku zvážte možnosť úpravy predchádzajúcich odpovedí, alebo skúste inú tému. - reviving_old_topic: | - ### Oživiť túto tému ? - - Posledná odpoveď k tejto téme je staršia ako %{days} dní. Vaša odpoveď posunie tému na vrchol tém a upozorní všetkých, ktorí sa zapojili do diskusie. - - Ste si istí, že chcete pokračovať v tejto starej diskusii? activerecord: attributes: category: @@ -482,14 +447,11 @@ sk: other: "pred takmer %{count} rokmi" password_reset: no_token: "Ľutujeme, tento odkaz na zmenu hesla je už príliš starý. Stlačte tlačidlo Prihlásiť a použite \"Zabudol som heslo\" pre vytvorenie nového odkazu." - choose_new: "Prosim zadajte nové heslo" - choose: "Prosím zadajte heslo" update: 'Aktualizujte heslo' save: 'Nastavte heslo' title: 'Obnoviť heslo' success: "Heslo bolo úspešne zmenené a ste prihlasený do systému. " success_unapproved: "Heslo bolo úspešne zmenené." - continue: "Pokračujte na %{site_name}" change_email: confirmed: "Vaša emailova adresa bola aktualizovaná" please_continue: "Pokračujte na %{site_name}" @@ -729,8 +691,6 @@ sk: facebook_config_warning: 'Server má nakonfigurovanú podporu registrácie a prihlásenia pomocou Facebooku (enable_facebook_logins), ale údaje "app Id" a tajné hodnoty nie sú nastavené. Navštívte Nastavenia stránky a aktualizujte nastavenia. Chcete vedieť viac? Pozrite si tento návod.' twitter_config_warning: 'Server má nakonfigurovanú podporu registrácie a prihlásenia pomocou Twitteru (enable_twitter_logins), ale kľúč a tajné hodnoty nie sú nastavené. Navštívte Nastavenia stránky a aktualizujte nastavenia. Chcete vedieť viac? Pozrite si tento návod.' github_config_warning: 'Server má nakonfigurovanú podporu registrácie a prihlásenia pomocou GitHub (enable_github_logins), ale identifikačné údaje klienta a jeho tajné hodnoty nie sú nastavené.. Navštívte Nastavenia stránky a aktualizujte nastavenia.Chcete vedieť viac? Pozrite si tento návod.' - s3_config_warning: 'Server má nakonfigurované nahrávanie súborov na S3, ale minimálne jedna z nasledujúcich hodnôt nie je nastavená: s3_access_key_id, s3_secret_access_key, alebo s3_upload_bucket. Navštívte Nastavenia stránky a aktualizujte nastavenia. Chcete vedieť viac? Pozrite si návod ako nastaviť nahrávanie súborov na S3.' - s3_backup_config_warning: 'Server má nakonfigurované nahrávanie záloh na S3, ale minimálne jedna z nasledujúcich hodnôt nie je nastavená: s3_access_key_id, s3_secret_access_key, alebo s3_backup_bucket. Navštívte Nastavenia stránky a aktualizujte nastavenia. Chcete vedieť viac? Pozrite si návod ako nastaviť nahrávanie súborov na S3.' image_magick_warning: 'Server je nakonfigurovaný na vytváranie náhľadov z veľkých obrázkov, ale ImageMagick nie je nainštalovaný. Nainštalujte ImageMagick pomocou Vášho správcu balíčkov, alebo Stiahnite najnovšiu verziu.' failing_emails_warning: 'Existuje %{num_failed_jobs} neuspešných emailých pokusov. Skontrolujte Váš app.yml a uistite sa, že nastavenia email serveru máte správne. Pozrieť neúspešné pokusy v Sidekiq.' subfolder_ends_in_slash: "Vaše nastavenie podadresára je chybné, DISCOURSE_RELATIVE_URL_ROOT je ukončené lomítkom." @@ -768,7 +728,6 @@ sk: max_image_width: "Maximálna šírka náhľadu obrázkov v príspevku" max_image_height: "Maximálna výška náhľadu obrázkov v príspevku" category_featured_topics: "Počet zobrazených tém na jednu kategóriu na stránke /katgórie. Zmena hodnoty sa na stránkach prejaví do 15 minút." - show_subcategory_list: "Zobraz zoznam podkategórií namiesto zoznamu tém po vstupe do menu kategórií" fixed_category_positions: "Ak je to označené, budete môcť zoraďovať kategórie v pevnom poradí. Ak je neoznačené, kategórie budu zoradené podlľa aktivity." fixed_category_positions_on_create: "Ak je označené, triedenie kategórií bude spravované v dialógu na vytváranie témy (vyžaduje fixed_category_positions)." add_rel_nofollow_to_user_content: "Pridať rel nofollow ku všetkému zaslanému používateľskému kontextu s výnimkou interných odkazov (zahrňuje rodičovskú doménu). Ak to zmeníte, musíte vykonať prípaz rebake na všetky príspevky pomocou: \"rake posts:rebake\"" @@ -842,8 +801,6 @@ sk: invite_passthrough_hours: "Ako dlho môže používateľ používať získaný pozývací kľúč na prihlasovanie, v hodinách" invite_only: "Verejná registrácia je vypnutá, všetci noví používatelia musia byť explicitne pozvaní ostatnými členmi alebo obsluhou." login_required: "Požadovať prihlásenie pre čítanie obshau tejto stránky, zakáž anonymný prístup. " - min_username_length: "Minimálna dĺžka používateľského mena v znakoch." - max_username_length: "Maximálna dĺžka používateľského mena v znakoch." reserved_usernames: "Používateľské mená, ktorých registrácia nie je povolená." min_password_length: "Minimálna dĺžka hesla." min_admin_password_length: "Minimálna dĺžka hesla pre Administrátora." @@ -1063,7 +1020,6 @@ sk: notify_about_flags_after: "Ak existujú príznaky ktoré neboli vyriešené po uvedenom počte hodín, pošli email na contact_email. Pre vypnutie nastavte 0." show_create_topics_notice: "Zobraz výzvu žiadajúcu administrátorov o vytvorenie nejakých tém, ak majú stránky menej ako 5 verejných tém." delete_drafts_older_than_n_days: Vymazať návrhy staršie ako (n) dní. - vacuum_db_days: "Spustiť VACUUM ANALYZE na získanie DB miesto po migráciách (pre vypnutie nastavte na 0)" prevent_anons_from_downloading_files: "Zabrániť anonymným používateľom sťahovať prílohy. VAROVANIE: toto nastavenie zneprístupní akékoľvek neobrázkové súbory na stánkach uložené ako prílohy." slug_generation_method: "Vybrať metódu generovania koncovej časti adresy. 'encoded' vygeneruje percentami zakódovaní reťazec. 'none' vypne koncovú časť adresy úplne." enable_emoji: "Zapnúť emoji" @@ -1236,22 +1192,6 @@ sk: Ak chcete pokračovať v prijímaní emailových aktualizácií, môžete tento email ignorovať. invite_mailer: subject_template: "%{invitee_name} Vás pozval '%{topic_title}' na %{site_domain_name}" - text_body_template: | - %{invitee_name} Vás pozval do diskusie - - > **%{topic_title}** - > - > %{topic_excerpt} - - na - - > %{site_title} -- %{site_description} - - Ak Vás to zaujalo, kliknite na odkaz nižšie: - - %{invite_link} - - Táto pozvánka je od dôveryhodného užívateľa, takže môžete okamžite odpovedať na diskusiu . invite_forum_mailer: subject_template: "%{invitee_name} Vás pozval na %{site_domain_name}" invite_password_instructions: diff --git a/config/locales/server.sq.yml b/config/locales/server.sq.yml index b3049632a4..db82f207f1 100644 --- a/config/locales/server.sq.yml +++ b/config/locales/server.sq.yml @@ -34,7 +34,6 @@ sq: anonymous: "Anonim" 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: @@ -136,38 +135,6 @@ sq: - A i shton diçka diskutimit përgjigja juaj? Për më shumë, shikoni [udhëzimet e faqes](/guidelines). Ky njoftim do të shfaqet vetëm për %{education_posts_text}. - avatar: | - ### Pse nuk i vendosni një foto ose avatar llogarisë tuaj? - - Hej, ju keni dërguar disa tema dhe përgjigje në faqe, por nuk keni akoma foto profili. - You've posted a few topics and replies, but your profile picture isn't as unique as you are -- it's just a letter. - - A e dini se mund të shkoni tek **[profili juaj](%{profile_path})** dhe të ngarkoni një foto përfaqësuese? - sequential_replies: | - ### Konsideroni t'i përgjigjeni disa komenteve njëkohësisht - - Është më mirë të postoni një përgjigje me disa citime sesa të dërgoni disa përgjigje njëra pas tjetrës. - - Mund të redaktoni përgjigjet tuaja dhe t'i shtoni citime. - - Kështu do të jetë dhe më e lehtë për të gjithë të lexojnë tema që kanë disa përgjigje të thella në vend të shumë përgjigjeve individuale. - dominating_topic: |+ - ### Lëri edhe të tjerët të marrin pjesë në diskutim - - Duket që kjo temë është e rëndësishme për ju – ju keni postuar mbi %{percent}% të përgjigjeve këtu. - - Ama, a po i lini hapësirë anëtarëve të tjerë të shprehen? - - too_many_replies: | - ### Keni arritur limitin e përgjigjeve tek kjo temë - - Na vjen keq, por anëtarët e rinj nuk mund të postojnë më shumë se %{newuser_max_replies_per_topic} përgjigje në një temë. - reviving_old_topic: | - ### Doni të rizgjoni këtë temë të vjetër? - - Përgjigja e fundit këtu është postuar mbi %{days} ditë më parë. Përgjigja juaj do t'a ngjisë këtë postim në majë të listave dhe do t'ju çojë një njoftim të gjithë pjesëmarrësve në diskutim. - - A jeni të sigurtë që doni të vazhdoni? activerecord: attributes: category: @@ -335,14 +302,11 @@ sq: other: "pothuajse %{count} vite më parë" password_reset: no_token: "Ndjesë, kjo lidhje për ndryshimin e fjalëkalimit është shumë e vjetër. Kliko butonin 'Identifikohu' dhe përdorni 'Kam harruar fjalëkalimin' për të marrë një lidhje të re." - choose_new: "Zgjidhni një fjalëkalim të ri" - choose: "Ju lutem, zgjidhni një fjalëkalim" update: 'Rifresko Fjalëkalimin' save: 'Vendos Fjalëkalim' title: 'Rivendos Fjalëkalimin' success: "Ndryshimi i fjalëkalimit u krye me sukses dhe tashmë ju jeni futur në faqe." success_unapproved: "Ndryshimi i fjalëkalimit u krye me sukses." - continue: "Vazhdo tek %{site_name}" change_email: confirmed: "Adresa e postës u azhornua." please_continue: "Vazhdo tek %{site_name}" @@ -425,6 +389,14 @@ sq: stop_watching_topic: "Ndaloni së ndjekuri këtë temë, %{link}" unwatch_category: "Ndaloni së ndjekuri të gjitha temat në %{category}" all: "Mos më dërgoni më email nga %{sitename}" + user_api_key: + title: "Lejo këtë aplikimi të ketë akses në faqe" + authorize: "Autorizo" + description: "\"%{application_name}\" po kërkon këto të drejta në lidhje me llogarinë tuaj:" + scopes: + notifications: "Leximin dhe pastrimin e njoftimeve" + push: "Njoftime \"push\" drejt shërbimeve të jashtme" + session_info: "Leximin e informacionit të sesionit të llogarisë" reports: visits: title: "Vizitat e përdoruesit" @@ -564,8 +536,6 @@ sq: 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.' site_settings: censored_words: "Fjalët do të zhvendosen automatikisht me ■■■■" @@ -599,7 +569,6 @@ sq: 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\"" @@ -982,43 +951,6 @@ sq: other: "%{count} sinjalizime në pritje për t'u trajtuar" invite_mailer: subject_template: "%{invitee_name} ju ftoi tek tema '%{topic_title}' tek %{site_domain_name}" - text_body_template: |+ - %{invitee_name} ju ftoi në një bisedë - > **%{topic_title}** - > - > %{topic_excerpt} - - tek - - > %{site_title} -- %{site_description} - - Nëse jeni i interesuar, klikoni lidhjen e mëposhtme: - - %{invite_link} - - Kjo ftesë vjen nga një përdorues i besuar, ju mund të merrni pjesë në bisedë menjëherë. - - custom_invite_mailer: - text_body_template: |+ - %{invitee_name} ju ftoi në një bisedë - > **%{topic_title}** - > - > %{topic_excerpt} - - tek - - > %{site_title} -- %{site_description} - - Mesazh nga %{invitee_name}: - - %{user_custom_message} - - Nëse jeni i interesuar, klikoni lidhjen e mëposhtme: - - %{invite_link} - - Kjo ftesë vjen nga një përdorues i besuar, ju mund të merrni pjesë në bisedë menjëherë. - invite_forum_mailer: subject_template: "%{invitee_name} ju ka ftuar të bëheni pjesë e %{site_domain_name}" custom_invite_forum_mailer: @@ -1109,12 +1041,6 @@ sq: ``` 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." diff --git a/config/locales/server.sv.yml b/config/locales/server.sv.yml index 19a812bc5e..7a49900c74 100644 --- a/config/locales/server.sv.yml +++ b/config/locales/server.sv.yml @@ -32,9 +32,10 @@ sv: purge_reason: "Automatiskt borttaget som övergett, avaktiverat konto" disable_remote_images_download_reason: "Nedladdning av externa bilder är inaktiverat eftersom det inte fanns tillräckligt mycket lagringsutrymme tillgängligt." anonymous: "Anonym" + remove_posts_deleted_by_author: "Borttaget av författaren" emails: incoming: - default_subject: "Inkommande e-post från %{email}" + default_subject: "Detta ämnet behöver en titel" show_trimmed_content: "Visa trimmat innehåll" maximum_staged_user_per_email_reached: "Uppnått maximalt antal iscensatta användare skapade per e-post." errors: @@ -71,6 +72,8 @@ sv: has_already_been_used: "har redan använts" inclusion: är inte inkluderad i listan invalid: är ogiltig + is_invalid: "Verkar oklart, det ären komplett mening" + contains_censored_words: "innehåller följande censurerade ord:%(censurerade_ord)" less_than: måste vara mindre än %{count} less_than_or_equal_to: måste vara mindre eller lika med %{count} not_a_number: är inte ett nummer @@ -104,6 +107,11 @@ sv: max_username_length_range: "Du kan inte sätta maximum högre än minimum." default_categories_already_selected: "Du kan inte välja en kategori som används i en annan lista. " s3_upload_bucket_is_required: "Du kan inte aktivera uppladdning till S3 innan du har angivit 's3_upload_bucket'." + invite: + not_found: "Ert invitations lösenord är ogiltigt. Vänlig kontakta webbplatsens administratör." + bulk_invite: + file_should_be_csv: "De uppladdade filerna skall vara i csv format." + error: "Det uppstod ett problem när filerna skulle laddas upp. Vad snäll och försök senare igen." topic_invite: user_exists: "Tyvärr, den användaren har redan bjudits in. Du kan endast bjuda in en användare till ett ämne en gång." backup: @@ -123,6 +131,11 @@ sv: embed: start_discussion: "Starta diskussion" continue: "Fortsätt diskussion" + error: "Fel vid inbäddningen" + referer: "Hänvisning:" + mismatch: "Hänvisningarna matchade inte någon av följande ägare" + no_hosts: "Inga värdar var uppsatta för textinbäddningen" + configure: "konfigurera inbäddningen" more_replies: one: "1 till svar" other: "%{count} till svar" @@ -156,8 +169,10 @@ sv: spamming_host: "Tyvärr, du kan inte posta en länk till det värdnamnet." user_is_suspended: "Avstängda användare är inte tillåtna att göra inlägg" topic_not_found: "Något har gått fel. Kanske har ämnet stängts eller raderats medan du tittade på det?" + not_accepting_pms: "Ledsen, %[användarnamn] tar inte emot meddelande för tillfället." just_posted_that: "är för likt det du nyligen postade" invalid_characters: "innehåller otillåtna tecken" + is_invalid: "verkar oklart, det är en komplett mening" next_page: "nästa sida →" prev_page: "← föregående sida" page_num: "Sida %{num}" @@ -228,46 +243,13 @@ sv: - Konstruktiv kritik välkomnas, men kritisera då *idéer* och inte personer. För mer, [läs våra riktlinjer](/guidelines). Detta meddelande visas enbart vid ditt första %{education_posts_text}. - avatar: | - ### Vad sägs om en ny bild för ditt konto? - - Du har skapat några ämnen och skrivit några svar, men din profilbild är inte lika unik som dig - det är samma standardbild som alla nya användare får. - - Har du inte funderat på att **[besöka din användarprofil](%{profile_path})** och ladda upp ett eget foto som representerar dig? - - Det är lättare att följa diskussioner och hitta intressanta personer i konversationer när alla har en unik profilbild! - sequential_replies: | - ### Överväg att svara på flera inlägg på en och samma gång - - Istället för flera svar i följd till ett ämne, kan du överväga ett enda svar som innehåller citat från tidigare inlägg eller @namn-referenser. - - Du kan redigera ditt tidigare svar och lägga till ett citat genom att markera text och välja knappen citera som dyker upp. - - Det blir lättare för alla att läsa ämnen som har färre in-på-djupet-svar istället för flera små, individuella svar. - dominating_topic: | - ### Låt andra gå med i konversationen - - Detta ämne är uppenbarligen viktigt för dig – du har postat mer än %{percent}% av alla svar här. - - Är du säker på att du ger tillräckligt med tid till andra personer att också få dela med sig av deras synpunkt? - too_many_replies: | - ### Du har nått svarsgränsen för detta ämne - - Tyvärr, men nya användare är tillfälligt begränsade till %{newuser_max_replies_per_topic} svar i samma ämne. - - Istället för att lägga till ytterligare ett svar, vänligen överväg att redigera dina tidigare svar, eller besök andra ämnen. - reviving_old_topic: | - ### Återuppliva detta ämne? - - Senaste svaret i detta ämne är nu över %{days} dagar gammalt. Ditt svar kommer att lyfta upp ämnet till toppen av listan och notifiera alla tidigare involverade i ämnet. - - Är du säker på att du vill fortsätta denna gamla konversation? activerecord: attributes: category: name: "Kategorinamn" topic: title: 'Rubrik' + featured_link: 'Skiss länk' post: raw: "Inlägg" user_profile: @@ -281,12 +263,16 @@ sv: too_many_users: "Du kan endast skicka varningar till en användare åt gången." cant_send_pm: "Tyvärr, du kan inte skicka ett privat medelande till den användaren. " no_user_selected: "Du måste välja en giltig användare." + featured_link: + invalid: "är ogiltig. URL måste innehålla http:// eller http://." + invalid_category: "kan inte redigeras i denna kategori" user: attributes: password: common: "är ett av de 10000 vanligaste lösenorden. Vänligen använd ett säkrare lösenord." same_as_username: "är samma som ditt användarnamn. Vänligen använd ett säkrare lösenord." same_as_email: "är samma som din e-postadress. Vänligen använd ett säkrare lösenord." + same_as_current: "är samma som ert nuvarande lösenord" ip_address: signup_not_allowed: "Registrering är inte tillåtet från detta konto." color_scheme_color: @@ -296,6 +282,10 @@ sv: post_reply: base: different_topic: "Inlägg och svar måste tillhöra samma ämne." + web_hook: + attributes: + payload_url: + invalid: "Webbadressen är ogiltig. Webbadressen skall inkludera :// eller https://. Inga blanktecken är tillåtna" <<: *errors user_profile: no_info_me: "
      Din profils Om Mig-fält är för närvarande tomt, skulle du vilja fylla i det?
      " @@ -306,7 +296,10 @@ sv: meta_category_description: "Diskussion om den här webbplatsen, dess organisation, hur den fungerar och hur vi kan förbättra den." staff_category_name: "Personal" staff_category_description: "Privat kategori för personaldiskussioner. Ämnen är bara synliga för administratörer och moderatorer." + assets_topic_title: "Tillgångar för webb designen" assets_topic_body: "Detta är ett permanent ämne, endast synligt för personal, med syfte att lagra bilder och filer som ska användas till webbplatsens design. Radera ej detta ämne!\n\n\nSå här fungerar det:\n\n\n1. Svara på detta ämne.\n2. Ladda upp alla bilder du vill använda som logotyp, favicon och så vidare här. (Använd verktygfältets uppladdningsikon i inläggsredigeraren, eller dra-och-släpp eller klistra in bilder)\n3. Skicka ditt svar för att posta det.\n4. Högerklicka på bilderna i ditt nya inlägg för att få sökvägen till de uppladdade bilderna, eller klicka på redigera-ikonen för att redigera inlägget och på så sätt hämta sökvägen till bilderna. Kopiera bildernas sökväg. \n5. Klistra in bildernas sökvägar i de [grundläggande inställningarna](/admin/site_settings/category/required).\n\n\nOm du behöver möjliggöra uppladdning av flera olika filtyper, redigera `authorized_extensions` i [inställningarna för filer](/admin/site_settings/category/files)." + discourse_welcome_topic: + title: "Välkommen till diskussionen" lounge_welcome: title: "Välkommen till loungen" body: |2 @@ -370,6 +363,7 @@ sv: create_topic: "Du skapar nya ämnen för snabbt. Var god vänta %{time_left} innan du försöker igen." create_post: "Du svarar för snabbt. Var god vänta %{time_left} innan du försöker igen." delete_post: "Du raderar inlägg för snabbt. Var god vänta %{time_left} innan du försöker igen." + public_group_membership: "Du deltar/lämnar grupper för frekvent. Vad god och vänta %[tid_kvar] innan du försöker igen." topics_per_day: "Du har uppnått maximalt antal nya ämnen idag. Var god vänta %{time_left} innan du försöker igen." pms_per_day: "Du har uppnått maximalt antal inlägg idag. Var god vänta %{time_left} innan du försöker igen." create_like: "Du har uppnått maximalt antal gillningar idag. Var god vänta %{time_left} innan du försöker igen." @@ -460,14 +454,13 @@ sv: other: "nästan %{count} år sedan" password_reset: no_token: "Tyvärr, din lösenordslänk har löpt ut. Klicka på inloggningsknappen och välj \"jag har glömt mitt lösenord\" för att få en ny länk." - choose_new: "Var god välj ett nytt lösenord" - choose: "Var god välj ett lösenord" + choose_new: "Välj ett nytt lösenord" + choose: "Välj ett lösenord" update: 'Uppdatera lösenord' save: 'Välj lösenord' title: 'Återställ lösenord' success: "Du har lyckats med att byta ditt lösenord och är nu inloggad." success_unapproved: "Du lyckades med att byta ditt lösenord." - continue: "Fortsätt till %{site_name}" change_email: confirmed: "Din e-post har uppdaterats." please_continue: "Fortsätt till %{site_name}" @@ -526,8 +519,10 @@ sv: long_form: 'röstade för detta inlägg' user_activity: no_bookmarks: + self: "Du har inga märkta inlägg, märkta inlägg möjliggör att du enkelt når dem vid ett senare tillfälle." others: "Inga bokmärken." no_likes_given: + self: "Du har inte gillat några inlägg." others: "Inga gillade inlägg." topic_flag_types: spam: @@ -571,11 +566,17 @@ sv: not_found_description: "Tyvärr, vi kunde inte hitta den här avprenumerationen. Är det möjligt att länken i din e-post har löpt ut?" log_out: "Logga ut" user_api_key: + title: "Godkänna programåtkomst" authorize: "Auktorisera" read: "läs" read_write: "läs/skriv" + no_trust_level: "Tyvärr har ni inte den nödvändiga förtroendenivån för att få tillgång till användar API" + generic_error: "Ledsen, vi kan inte lämna ut API nycklar, denna funktion kan inaktiveras av administratören" scopes: message_bus: "Live uppdateringar" + notifications: "läs och förtydliga aviseringarna" + push: "Flytta aviseringar till externa service" + session_info: "Läs användar sessions information" read: "Läs alla" write: "Skriv alla" reports: @@ -729,8 +730,6 @@ sv: facebook_config_warning: 'Servern är konfigurerad till att tillåta registrering och inloggning med Facebook (inställningen enable_facebook_logins). men app-id och appens hemlighetsvärden är inte satta. Gå till Webbplatsinställningarna och uppdatera inställningarna. Läs den här guiden för att lära dig mer.' twitter_config_warning: 'Servern är konfigurerad till att tillåta registrering och inloggning med Twitter (inställningen twitter_logins). men nyckel- och hemlighetsvärden är inte satta. Gå till Webbplatsinställningarna och uppdatera inställningarna. Läs den här guiden för att lära dig mer.' github_config_warning: 'Servern är konfigurerad till att tillåta registrering och inloggning med GitHub (inställningen twitter_logins). men klient-id och hemlighetsvärden är inte satta. Gå till Webbplatsinställningarna och uppdatera inställningarna. Läs den här guiden för att lära dig mer.' - s3_config_warning: 'Servern är konfigurerad till att ladda upp filer till s3, men minst en av följande inställningar är inte satt: s3_access_key_id, s3_secret_access_key eller s3_upload_bucket. Gå till Inställningar och uppdatera dem. Se "How to set up image uploads to S3?" för att lära dig mer.' - s3_backup_config_warning: 'Servern är konfigurerad till att ladda upp säkerhetskopior till s3, men minst en av följande inställningar är inte satta: s3_access_key_id, s3_secret_access_key eller s3_backup_bucket. Gå till Webbplatsinställningarna och uppdatera inställningarna. Se "How to set up image uploads to S3?" för att lära dig mer.' image_magick_warning: 'Servern är konfigurerad att skapa ikoner av stora bilder, men ImageMagick är inte installerad. Installera ImageMagick med din föredragna pakethanterare eller ladda hem den senaste utgåvan.' failing_emails_warning: 'Det finns %{num_failed_jobs} e-postutskick som har misslyckats. Kontrollera din app.yml-fil för att säkerställa att serverinställningarna för e-post är korrekta. Se alla misslyckade utskick i Sidekiq.' subfolder_ends_in_slash: "Inställningarna för dina undermappar är inte korrekt; DISCOURSE_RELATIV_URL_ROOT slutar med ett snedstreck." @@ -751,11 +750,15 @@ sv: min_first_post_length: "Lägsta antal tillåtna tecken i första inlägget (ämnestext)" min_private_message_post_length: "Lägst antal tillåtna tecken i inlägg för meddelanden" max_post_length: "Högsta tillåtna längd på inlägg i antal tecken" + topic_featured_link_enabled: "Möjliggör att lägga upp en länk med ämnen." + show_topic_featured_link_in_digest: "Visa ämnet i skiss länken som fanns i det nerkortade emailet." min_topic_title_length: "Lägsta tillåtna längd på ämnesrubrik i antal tecken" max_topic_title_length: "Högsta tillåtna längd på ämnesrubrik i antal tecken" min_private_message_title_length: "Lägst tillåtna längd på rubrik för ett meddelande i antal tecken" min_search_term_length: "Lägsta giltiga teckenlängd på sökterm" search_tokenize_chinese_japanese_korean: "Framtvinga sökning för att tokenisera kinesiska/japanska/koreanska även på webbplatser som inte är på dessa språk" + search_prefer_recent_posts: "Om sökningar på ditt stora forum går långsamt, försök detta alternativ som är ett index av de senaste inläggen först." + search_recent_posts_size: "Hur många nya inlägg för att hålla index" allow_uncategorized_topics: "Tillåt att ämnen skapas utan en kategori. VARNING: Om det finns några okategoriserade ämnen så måste dessa omkategoriseras innan den här inställningen stängs av. " allow_duplicate_topic_titles: "Tillåt ämnen med identiska rubriker." unique_posts_mins: "Hur många minuter innan en användare kan göra ett inlägg med precis samma innehåll igen" @@ -777,7 +780,6 @@ sv: max_image_width: "Maxbredd för bildikoner i ett inlägg" max_image_height: "Maxhöjd för bildikoner i ett inlägg" category_featured_topics: "Antal ämnen som visas per kategori på /kategorier-sidan. Efter att ha ändrat det här värdet så tar det upp till 15 minuter för kategori-sidan att uppdateras." - show_subcategory_list: "Visa listan med underkategorier istället för ämneslistan när en kategori väljs." fixed_category_positions: "Om aktiverad, kommer du kunna ordna kategorier i en bestämd ordning. Om inaktiverad, sorteras kategorierna baserat på aktivitet." fixed_category_positions_on_create: "Kategoriordningen kommer att upprätthållas vid dialogen för skapandet av ämnen om den här bockas i (kräver fixed_category_positions)." add_rel_nofollow_to_user_content: "Lägg till rel nofollow på allt användargenererat innehåll, förutom interna länkar (inklusive förälderdomän). Om du ändrar det här så måste du uppdatera alla inlägg med \"rake posts:rebake\"" @@ -786,6 +788,7 @@ sv: show_pinned_excerpt_mobile: "Visa inte utdrag för klistrade ämnen i mobilen." show_pinned_excerpt_desktop: "Visa inte utdrag för klistrade ämnen på datorn." post_onebox_maxlength: "Maxlängd på ett onebox:at Discourse-inlägg i antal tecken." + onebox_domains_blacklist: "En lista av domäner som aldrig blir oneboxed." logo_url: "Logotypen i övre vänstra sidan av din webbplats bör ha en bred rektangulär form. Om den lämnas blank kommer webbplatsens titel att visas. " digest_logo_url: "Den alternativa logotypen används överst i din webbplats e-postsammanfattning. Den bör ha en bred rektangulär form. Den borde inte vara en SVG-bild. Om den lämnas blank kommer `logo_url` att användas." logo_small_url: "Den lilla logotypen som visas i övre vänstra hörnet av hemsidan när man bläddrar ned i ämnen. Om den lämnas blank kommer hemloggan visas." @@ -853,6 +856,7 @@ sv: prioritize_username_in_ux: "Använd användarnamn först på användarsidan, användarkortet och inlägg (när inaktiverad så visas namnet först)" email_token_valid_hours: "Glömt lösenord / aktivera konto länkar är giltiga i (n) timmar." enable_badges: "Aktivera utmärkelsesystemet" + enable_whispers: "Tiliåt privat kommunikation inom ämnena." allow_index_in_robots_txt: "Specificera i robots.txt att den här webbplatsen tillåter att bli indexerad av sökmotorer. " email_domains_blacklist: "En pipe-avgränsad lista av alla e-postdomän som användare inte tillåts registrera konton med. Exempel: mailinator.com, trashmail.net" email_domains_whitelist: "En pipe-avgränsad lista av alla e-postdomän som användare MÅSTE registrera konton med. VARNING: Användare med e-postdomän som inte finns på listan kommer inte att tillåtas!" @@ -866,17 +870,19 @@ sv: invite_passthrough_hours: "Hur länge en användare kan använda en tidigare utlöst inbjudningsnyckel för att logga in, i timmar" invite_only: "Allmän registrering är avstängt, alla nya användare måste vara explicit inbjudna av andra medlemmar eller personal." login_required: "Kräv autentisering för att läsa innehåll på den här webbplatsen, avvisa anonym tillgång." - min_username_length: "Minsta längd för lösenord i antal tecken." - max_username_length: "Högsta längd för användarnamn i antal tecken." + min_username_length: "Minsta längd på användarnamnet. Varning: om någon existerande användare eller grupp har namn kortare än detta, er sida kommer att gå sönder!" + max_username_length: "Längsta användarnamn. Varning: om någon existerande användare eller grupp har ett namn längre än detta, er sida kommer att gå sönder." reserved_usernames: "Användarnamn som inte tillåter registrering." min_password_length: "Minsta lösenordslängd." min_admin_password_length: "Högsta lösenordslängd för administratör." + password_unique_characters: "Minsta antalet unika tecken som ett lösenord måste ha." block_common_passwords: "Tillåt inte lösenord som är bland de 10000 vanligaste lösenorden." enable_sso: "Aktivera Single sign on via en extern sida (VARNING: ANVÄNDARENS E-POSTADRESS *MÅSTE* VARA VALIDERAD AV DEN EXTERNA SIDAN!)" verbose_sso_logging: "Logga mångordiga SSO relaterade diagnostiker till /logs" enable_sso_provider: "Implementera Discourse SSO leverantörsprotokoll vid /session/sso_provider endpoint, kräver att sso_secret är inställd" sso_url: "URL för single sign on endpoint (måste inkludera http:// eller https://)" sso_secret: "Hemlig sträng som används för att kryptografiskt autentisera SSO-information, se till att den är 10 tecken eller mer" + sso_overrides_bio: "Åsidosätter användar bio i användarprofil och förhindrar användare från att ändra det" sso_overrides_email: "Åsidosätter lokal e-post med externa webbplatsers e-post från SSO-nyttolast vid varje inloggning, och förhindrar lokala ändringar (VARNING: diskrepanser kan inträffa på grund av normalisering av lokala e-poster)" sso_overrides_username: "Åsidosätter lokala användarnamn med externa webbplatsers användarnamn från SSO-nyttolast vid varje inloggning, och förhindrar lokala ändringar. (VARNING: diskrepanser kan inträffa på grund av skillnader i användarnamnets längd/krav)" sso_overrides_name: "Åsidosätter lokala fullständiga namn med externa webbplatsers fullständiga namn från SSO-nyttolast vid varje inloggning, och förhindrar lokala ändringar." @@ -914,6 +920,7 @@ sv: active_user_rate_limit_secs: "Hur frekvent vi uppdaterar 'last_seen_at'-fältet, i sekunder" verbose_localization: "Visa utvidgade lokaliseringstips i gränssnittet" previous_visit_timeout_hours: "Hur länge ett besök varar innan vi betraktar det som ett 'tidigare' besök, i timmar " + rebake_old_posts_count: "Antalet gamla inlägg som kommer att bakas in var 15 minut" rate_limit_create_topic: "Efter att ha skapat ett ämne, måste användare vänta (n) sekunder innan de kan skapa ett nytt." rate_limit_create_post: "Efter att ha skrivit ett inlägg, måste användare vänta (n) sekunder innan de skriver ett nytt." rate_limit_new_user_create_topic: "Efter att ha skapat ett ämne, måste nya användare vänta (n) sekunder innan de kan skapa ett nytt." @@ -928,6 +935,7 @@ sv: max_topic_invitations_per_day: "Max antal ämnesinbjudningar en användare kan skicka per dag." alert_admins_if_errors_per_minute: "Antal felindikeringar per minut för att utlösa ett administratörslarm. Ange 0 för att inaktivera den här funktionen. OBS: kräver omstart." alert_admins_if_errors_per_hour: "Antal felindikeringar per timme för att utlösa ett administratörslarm. Ange 0 för att inaktivera den här funktione. OBS: kräver omstart." + categories_topics: "Antalet ämnen som visas /kategori sida." suggested_topics: "Antal föreslagna ämnen som visas i botten av ett ämne." limit_suggested_to_category: "Visa bara ämnen från den aktuella kategorin bland föreslagna ämnen." suggested_topics_max_days_old: "Föreslagna ämnen bör inte vara mer än n dagar gamla." @@ -947,6 +955,7 @@ sv: default_opengraph_image_url: "URL för standard opengraphbilden." allow_all_attachments_for_group_messages: "Tillåt alla e-postbilagor för gruppmeddelanden." convert_pasted_images_to_hq_jpg: "Konvertera inklistrade bilder till högkvalitativa JPG-filer." + convert_pasted_images_quality: "Kvaliten av den konverterade JPG filen (1 är den lägsta kvaliten, 100 är den bästa kvaliten)." enable_flash_video_onebox: "Aktivera inbäddning av swf- och fic- (Adobe Flash) länkar i onebox:ar. VARNING: det kan introducera säkerhetsrisker." default_invitee_trust_level: "Förvald förtroendenivå (0-4) för inbjudna användare." default_trust_level: "Förvald förtroendenivå (0-4) för alla nya användare. VARNING! En ändring av detta sätter dig i stor risk för skräppost." @@ -976,6 +985,7 @@ sv: tl3_links_no_follow: "Radera ej rel=nofollow från länkarna som lagts upp av användare med förtroendenivå 3." min_trust_to_create_topic: "Lägsta förtroendenivå som krävs för att skapa ett nytt ämne." min_trust_to_edit_wiki_post: "Lägsta förtroendenivå som krävs för att redigera inlägg markerade som wiki. " + min_trust_to_edit_post: "Lägsta förtroende nivån som krävs för att skapa ett inlägg." min_trust_to_allow_self_wiki: "Lägsta förtroendenivå som krävs för att göra användares egna inlägg wiki." min_trust_to_send_messages: "Lägsta förtroendenivå som krävs för att skapa nya privata meddelanden." newuser_max_links: "Antalet länkar en ny användare kan lägga till i ett inlägg." @@ -984,6 +994,7 @@ sv: newuser_max_mentions_per_post: "Max antal @namn-omnämningar en ny användare kan göra i ett inlägg." newuser_max_replies_per_topic: "Max antal svar en ny användare kan göra i ett enda ämne innan någon svarar dem." max_mentions_per_post: "Max antal @namn-omnämningar vem som helst kan göra i ett inlägg." + max_users_notified_per_group_mention: "Maximalt antal användare som kan få ett meddelande om en grupp anges (om tröskeln är uppfyllt kommer inga meddelande att skickas)" create_thumbnails: "Skapa miniatyrer och \"lightboxa\" bilder som är för stora för att passa in i ett inlägg." email_time_window_mins: "Vänta (n) minuter innan något notifikationsmejl skickas ut, för att ge användare chansen att redigera och slutföra deras inlägg." private_email_time_window_seconds: "Vänta (n) sekunder innan någon privat e-postnotifikation skickas ut för att ge användare chansen att redigera och slutföra deras meddelande." @@ -996,12 +1007,14 @@ sv: title_fancy_entities: "Konvertera vanliga ASCII-tecken till fancy HTML-enheter i ämnesrubriker, à la SmartyPants http://daringfireball.net/projects/smartypants/" min_title_similar_length: "Minsta längd för en rubrik innan den kommer att kontrolleras för liknande ämnen." min_body_similar_length: "Minsta längd på ett ämnes innehåll innan den kommer att kontrolleras för liknande ämnen." + desktop_category_page_style: "Visuell stil för den/kategori sidan." category_colors: "En lista över tillåtna hexadecimala färgvärden för kategorier." category_style: "Visuell stil för kategori-utmärkelser." max_image_size_kb: "Högsta bilduppladdningsstorlek i kB. Konfiguration krävs i nginx (client_max_body_size) / apache eller proxy också." max_attachment_size_kb: "Högsta storlek på uppladdad bilaga i kB. Konfiguration krävs i nginx (client_max_body_size) / apace eller proxy också." authorized_extensions: "En lista av alla filändelser som är tillåtna för uppladdning (använd '*' för att aktivera alla filtyper)" max_similar_results: "Hur många liknande ämnen som visas ovanför redigeraren vid författandet av ett nytt ämne. Jämförelsen är baserad på ämnesrubrik och innehåll." + max_image_megapixels: "Maximalt antal megapixlar tillåtet för en bild." title_prettify: "Förhindra vanliga felskrivningar och misstag, inklusive endast versaler, inledande gemen, flera ! och ?, extra . i slutet osv." topic_views_heat_low: "Efter så här många visningar, blir visningsfältet något betonat." topic_views_heat_medium: "Efter så här många visningar, blir visningsfältet måttligt betonat." @@ -1051,8 +1064,16 @@ sv: block_auto_generated_emails: "Blockera inkommande e-post som identifieras som autogenererat." ignore_by_title: "Ignorera inkommande e-post baserat på dess rubrik." mailgun_api_key: "Mailgun Secret API-nyckel att använda för att verifiera webhook-meddelanden." + soft_bounce_score: "Studspoäng har lagt till hos användaren när en tillfällig studs händer." + hard_bounce_score: "Studspoäng har lagt på användarens profil när en permanent studs sker." + bounce_score_threshold: "Max antal studsar före vi stoppar emaila en användare" + bounce_score_threshold_deactivate: "Max antal studsare innan vi inaktiverar en användare" + reset_bounce_score_after_days: "Nollställ studspoäng automatiskt efter X dagar." attachment_content_type_blacklist: "lista av fraser som används till att svartlista bilagor baserade på innehållstyper" attachment_filename_blacklist: "Lista över fraser som används till att svartlista bilagor baserade på filnamnet" + enable_forwarded_emails: "[BETA] Tillåt användare att skapa ett ämne genom att vidarebefordra ett email" + always_show_trimmed_content: "Tillåt visning av trimmade delar av incomna emails. Varning: kan avslöja emailadresser." + manual_polling_enabled: "Flytta emails med hjälp av API för email svar." pop3_polling_enabled: "Poll via POP3 för e-postsvar." pop3_polling_ssl: "Använd SSL vid anslutning till POP3-servern. (Rekommenderat)" pop3_polling_period_mins: "Tidsintervall i minuter mellan varje kontroll av POP3-kontot för e-post. OBS: kräver omstart." @@ -1076,8 +1097,11 @@ sv: allow_animated_thumbnails: "Genererar animerade ikoner av animerade gif:ar." default_avatars: "URL:er till avatarer som kommer att användas utgångsläge för nya användare tills de ändrar dem." automatically_download_gravatars: "Ladda ned Gravatars för användare vid kontoregistrering eller e-postadressbyte." + digest_topics: "Det maximala antalet populära ämnen som visas i email sammanfattningen" + digest_posts: "Det maximala antalet populära inlägg som visas i emailsammanställningen" + digest_other_topics: "Det maximala antalet ämnen som visas i \"Nya ämnen och kategorier som du följer\" sektionen av email sammanfattningen." digest_min_excerpt_length: "Minsta antal inläggsutdrag i e-postsammanfattningen, i tecken." - delete_digest_email_after_days: "Undertryck e-postsammanfattningar för användare som inte har besökt webbplatsen i mer än (n) dagar." + suppress_digest_email_after_days: "Undertryck email sammanfattningar för användare som inte har besökt sidan på (x) dagar." digest_suppress_categories: "Undertryck de här kategorierna från e-postsammanfattningar." disable_digest_emails: "Inaktivera e-postsammanfattningar för alla användare." detect_custom_avatars: "Huruvida det ska kontrolleras att användare har laddat upp anpassade profilbilder." @@ -1085,12 +1109,15 @@ sv: public_user_custom_fields: "En vitlista av anpassade fält för en användare som kan visas publikt. " staff_user_custom_fields: "En vitlista av anpassade fält för en användare som kan visas för personalen." enable_user_directory: "Tillhandahåll en bläddringsbar användarkatalog" + enable_group_directory: "Förse en fil till grupper som surfar" allow_anonymous_posting: "Tillåt användare att växla till anonymt läge" anonymous_posting_min_trust_level: "Lägsta förtroendenivå som krävs för att aktivera anonyma inlägg" anonymous_account_duration_minutes: "Skapa ett nytt anonymt konto var N minut för varje användare för att skydda anonymiteten. Exempel: om satt till 600: så snart som 600 minuter har gått sedan senaste inlägget OCH användaren väljer anon, så skapas ett nytt anonymt konto. " hide_user_profiles_from_public: "Inaktivera användarkort, användarprofiler och användarförteckningar för anonyma användare." + user_website_domains_whitelist: "Användare websidor kommer att verifieras mot dessa domäner. Pipe- avgränsad lista." allow_profile_backgrounds: "Tillåt användare att ladda upp profilbakgrunder." sequential_replies_threshold: "Antal inlägg en användare måste ha skrivit i rad i ett ämne innan användaren blir påmind om för många svar i sekvens. " + get_a_room_threshold: "Antalet inlägg en användare kan göra till samma person inom samma ämnet före det sker en varning." enable_mobile_theme: "Mobila enheter använder ett mobilvänligt tema, med möjligheten att byta till standardsidan. Inaktivera detta om du vill använda en anpassad stilmall som är helt responsiv." dominating_topic_minimum_percent: "Procent av antalet inlägg en användare måste skriva i ett ämne innan de blir påminda om dominering av ämnet. " disable_avatar_education_message: "Inaktivera hjälpmeddelande för byte av avatar." @@ -1101,6 +1128,8 @@ sv: automatically_unpin_topics: "Avklistra automatiskt ämnen när användaren når botten." read_time_word_count: "Ordräknare per minut för att beräkna uppskattad lästid." topic_page_title_includes_category: "Ämnestitel för sidan inkluderar kategorinamnet. " + native_app_install_banner: "Uppmanar återkommande besökare att installera diskussionens special utvecklade app." + max_prints_per_hour_per_user: "Maximalt antal av /printade sidhänvisnigar ( satt till 0 för att inaktivera)" full_name_required: "Fullständigt namn är ett obligatoriskt fält i en användares profil." enable_names: "Visa användarens fullständiga namn på dess profil, användarkort och e-post. Inaktivera för att dölja det fullständiga namnet överallt." display_name_on_posts: "Visa en användares fullständiga namn på deras inlägg som tillägg till deras @användarnamn." @@ -1110,11 +1139,13 @@ sv: default_code_lang: "Standardspråk för syntaxmarkering som appliceras på kodblock från GitHub (lang-auto, ruby, python etc)." warn_reviving_old_topic_age: "En varning visas när någon börjar skriva ett svar på ett ämne och senaste inlägget är äldre än så här många dagar. Ange 0 för att inaktivera." autohighlight_all_code: "Tvinga applicerad syntaxmarkering på alla förformatterade kodblock även när de inte explicit har specifierat språket." + highlighted_languages: "Ingår syntax höjda regler. (Varning: att inkludera för många språk kan ha påverkan på prestandan) se: https://highlightjs.org/static/demo/ för en demo" feed_polling_enabled: "ENDAST INBÄDDNING: Huruvida RSS/ATOM-flöde ska bäddas in som inlägg." feed_polling_url: "ENDAST INBÄDDNING: URL för RSS/ATOM-flöde att bädda in." embed_by_username: "Discourse användarnamn för användaren som skapar inbäddade ämnen." embed_username_key_from_feed: "Nyckel för att hämta discourse användarnamn från flöde. " embed_truncate: "Trunkera de inbäddade inläggen." + allowed_href_schemes: "System tillåtna i länkar i motsatsen till http och https." embed_post_limit: "Högsta antal inlägg att bädda in." embed_username_required: "Användarnamn krävs för skapade av ämne." embed_whitelist_selector: "CSS-väljare för element som tillåts bäddas in. " @@ -1123,7 +1154,6 @@ sv: show_create_topics_notice: "Visa en notis som ber administratörerna att skapa några ämnen om webbplatsen har färre än 5 publika ämnen." delete_drafts_older_than_n_days: Ta bort utkast som är äldre än (n) dagar. bootstrap_mode_min_users: "Minsta antal användare som krävs för att inaktivera bootstrap-läget (ange 0 för att inaktivera)" - vacuum_db_days: "Kör VACUUM ANALYZE för att återvinna DB-utrymme efter migrering (ange 0 för att inaktivera)" prevent_anons_from_downloading_files: "Förhindra anonyma användare från att ladda ned bilagor. VARNING: det kommer att förhindra alla webbplatsens tillgångar som inte är bilder och som lagts upp som bilagor från att fungera." slug_generation_method: "Välj en genereringsmetod för etiketter. Ange 'none' för att inaktivera generering av etiketter. " enable_emoji: "Aktivera emoji" @@ -1131,6 +1161,7 @@ sv: enforce_square_emoji: "Tvinga fram en kvadratisk bildkvot för alla emojis." approve_post_count: "Antalet inlägg från en ny användare eller basanvändare som måste godkännas" approve_unless_trust_level: "Inlägg för användare under den här förtroendenivån måste godkännas" + approve_new_topics_unless_trust_level: "Nya ämnen för användare under denna förtroendenivå måste bli godkända" notify_about_queued_posts_after: "Om det finns inlägg som väntat på att granskas i fler än så här många timmar så skickas ett e-postmeddelande till contact_email. Ange 0 för att inaktivera de här e-postmeddelandena." auto_close_messages_post_count: "Högsta antal inlägg som tillåts i ett meddelande innan det automatiskt stängs (ange 0 för att inaktivera)" auto_close_topics_post_count: "Högsta antal inlägg som tillåts i ett ämne innan det automatiskt stängs (ange 0 för att inaktivera)" @@ -1147,6 +1178,7 @@ sv: default_email_in_reply_to: "Ange standardinställningen till att inkludera ett utdrag av svar till inlägg i e-post." default_other_new_topic_duration_minutes: "Global standardförutsättning för vilken ett ämne anses nytt. " default_other_auto_track_topics_after_msecs: "Global standardtid innan ett ämne är automatiskt bevakat. " + default_other_notification_level_when_replying: "Global standard anmälningsnivå när en användare svarar på ett ämne." default_other_external_links_in_new_tab: "Ange standardinställningen till att öppna externa länkar i en ny flik." default_other_enable_quoting: "Ange standardinställningen till att aktivera svar med citat för markerad text." default_other_dynamic_favicon: "Ange standardinställningen till att visa räknaren för nya/uppdaterade ämnen i webbläsaren." @@ -1156,17 +1188,28 @@ sv: default_categories_watching: "Lista av kategorier som är bevakade som standard." default_categories_tracking: "Lista av kategorier som är följda som standard." default_categories_muted: "Lista av kategorier som är tystade som standard." + default_categories_watching_first_post: "Förteckning över kategorier i vilket första inlägget i varje nytt ämnet kommer att ses som standard." + max_user_api_reqs_per_day: "Maximalt antal användare som API´t kräver per nyckel/dag" + max_user_api_reqs_per_minute: "Maximalt antal användare API kräver på nyckel/minut" + allow_user_api_key_scopes: "Lista över samtliga tillåtna användar-API nycklar " + max_api_keys_per_user: "Maximalt antal användar API nycklar per användare" + min_trust_level_for_user_api_key: "Förtroende nivå som krävs för att generera användar API nycklar" tagging_enabled: "Aktivera taggar för ämnen?" min_trust_to_create_tag: "Lägsta förtroendenivå som krävs för att skapa en tagg." max_tags_per_topic: "Högsta antal taggar som kan tillskrivas ett ämne." max_tag_length: "Högsta antal tecken som kan användas i en tagg." + max_tag_search_results: "När man letar efter taggar , maximalt antal resultat som visas" show_filter_by_tag: "Visa en rullgardin för att filtrera ämneslistor efter taggar." max_tags_in_filter_list: "Högsta antal taggar att visa i filtreringsrullgardinen. De taggar som är mest använda kommer att visas." tags_sort_alphabetically: "Visa taggar i alfabetisk ordning. Standard är att visa i popularitetsordning." tag_style: "Visuell stil för tagg-utmärkelser." staff_tags: "En lista av taggar som endast kan användas av personalen" min_trust_level_to_tag_topics: "Lägsta förtroendenivå som krävs för att tagga ämnen" + suppress_overlapping_tags_in_list: "Om taggen exakt matchar orden i ämnets titel, visa inte taggen" remove_muted_tags_from_latest: "Visa inte ämnen som taggats med dolda taggar i listan med senaste ämnen." + company_short_name: "Företagsnamn (kort)" + company_full_name: "Företagsnamn (hela)" + company_domain: "Företags domän" errors: invalid_email: "Felaktig e-postadress." invalid_username: "Det finns ingen användare med detta användarnamn." @@ -1207,6 +1250,10 @@ sv: redirected_to_top_reasons: new_user: "Välkommen till vårt forum! De här är våra mest populära nya ämnen." not_seen_in_a_month: "Välkommen tillbaka! Vi har inte sett dig på ett tag. Dessa ämnen har varit mest aktiva med du har varit borta. " + merge_posts: + errors: + different_topics: "Inlägg som härrör sig till olika ämnen kan inte läggas ihop." + different_users: "Inlägg som hör till olika användare kan inte lägga ihop." move_posts: new_topic_moderator_post: one: "Ett inlägg har delats in i ett nytt ämne: %{topic_link}" @@ -1283,6 +1330,8 @@ sv: already_logged_in: "Hoppsan, det ser ut som att du försöker acceptera en inbjudan för en annan användare. Logga ut och försök igen om du inte är %{current_user}. " user: no_accounts_associated: "Inga kopplade konton" + deactivated_by_staff: "Avaktiverades av personalen" + activated_by_staff: "Aktiverades av personalen" username: short: "måste var minst %{min} tecken" long: "får högst vara %{max} tecken" @@ -1307,6 +1356,7 @@ sv: one: "1 flagga väntar på att bli hanterad" other: "%{count} flaggor väntar på att bli hanterade" unsubscribe_mailer: + title: "stäng av mail skrivaren" subject_template: "Bekräfta att du inte längre vill motta e-postuppdateringar från %{site_title}" text_body_template: | Någon (kanske du?) begärde att inte längre motta e-postuppdateringar från %{site_domain_name} till den här adressen. @@ -1317,50 +1367,19 @@ sv: Om du vill fortsätta att motta e-postuppdateringar så kan du bortse från det här meddelandet. invite_mailer: + title: "Invitera mail skrivaren" subject_template: "%{invitee_name} har bjudit in dig till '%{topic_title}' på %{site_domain_name}" - text_body_template: | - %{invitee_name} har bjudit in dig till en diskussion - - > **%{topic_title}** - > - > %{topic_excerpt} - - på - - > %{site_title} -- %{site_description} - - Om du är intresserad, klicka på länken nedan: - - %{invite_link} - - Denna inbjudan är från en betrodd användare, så du kan direkt delta och svara i diskussionen. custom_invite_mailer: + title: "Kund inviterar mail skrivare" subject_template: "%{invitee_name} har bjudit in dig till '%{topic_title}' på %{site_domain_name}" - text_body_template: | - %{invitee_name} har bjudit in dig till en diskussion - - > **%{topic_title}** - > - > %{topic_excerpt} - - på - - > %{site_title} -- %{site_description} - - Meddelande från %{invitee_name}: - - %{user_custom_message} - - Om du är intresserad, klick på länken nedan: - - %{invite_link} - - Denna inbjudan är från en betrodd användare, så du kan direkt delta och svara i diskussionen. invite_forum_mailer: + title: "Invitera forumets skrivare" subject_template: "%{invitee_name} har bjudit in dig till %{site_domain_name}" custom_invite_forum_mailer: + title: "Invitera forumets skrivare" subject_template: "%{invitee_name} har bjudit in dig till %{site_domain_name}" invite_password_instructions: + title: "Invitera lösenords instruktioner" subject_template: "Ange lösenord för ditt konto på %{site_name}" text_body_template: | Tack för att du har accepterat inbjudan till %{site_name} -- välkommen hit! @@ -1370,12 +1389,16 @@ sv: (Om länken ovanför har löpt ut, klicka på "jag har glömt mitt lösenord" när du loggar in med din e-postadress). test_mailer: + title: "test mail skrivare" subject_template: "[%{site_name}] E-postlevereringstest" new_version_mailer: + title: "Ny version mail skrivare" subject_template: "[%{site_name}] Ny version av Discourse, uppdatering tillgänglig" new_version_mailer_with_notes: + title: "Ny version mail skrivare med anteckningar" subject_template: "[%{site_name}] uppdatering tillgänglig" queued_posts_reminder: + title: "Påminnelse om köande inlägg" subject_template: one: "[%{site_name}] 1 användare väntar på att granskas" other: "[%{site_name}] %{count} användare väntar på att granskas" @@ -1397,6 +1420,7 @@ sv: temporarily_closed_due_to_flags: "Detta ämne är tillfälligt stängt på grund av ett stort antal flaggor." system_messages: post_hidden: + title: "Gömda inlägg" subject_template: "Inlägg dolt på grund av att det flaggats av forumets medlemmar" text_body_template: | Hej! @@ -1413,6 +1437,7 @@ sv: För ytterligare information, se våra [riktlinjer](%{base_url}/guidelines). welcome_user: + title: "Välkommen Användare" subject_template: "Välkommen till %{site_name}!" text_body_template: | Tack för att du gått med i %{site_name}, och välkommen! @@ -1425,19 +1450,26 @@ sv: (Om du som ny användare behöver komma i kontakt med vår [personal](%{base_url}/about), svara bara på detta meddelande) welcome_invite: + title: "Välkomst invitation" subject_template: "Välkommen till %{site_name}!" backup_succeeded: + title: "Säkerhetskopieringen var framgångsrik" subject_template: "Säkerhetskopia skapades utan problem" backup_failed: + title: "Säkerhetskopieringen misslyckades" subject_template: "Säkerhetskopiering misslyckades" restore_succeeded: + title: "restaureringen lyckades" subject_template: "Återställningen lyckades!" restore_failed: + title: "Restaureringen misslyckades" subject_template: "Återställningen misslyckades" bulk_invite_succeeded: + title: "Mängd inbjudningarna lyckades" subject_template: "Massinbjudning av användare behandlades utan fel " text_body_template: "Din massinbjudning av användare behandlades, %{sent} inbjudningar skickades." bulk_invite_failed: + title: "Mängd invitationerna misslyckades" subject_template: "Massrekrytering av användare genererade fel" text_body_template: | Din massrekrytering av användare behandlades, %{sent} inbjudningar skickades med %{failed} fel. @@ -1448,58 +1480,62 @@ sv: %{logs} ``` csv_export_succeeded: + title: "CSV exporten lyckades" subject_template: "Dataexport lyckades" - text_body_template: | - Din dataexport lyckades! :dvd: - - %{file_name} (%{file_size}) - - Länken ovanför löper ut om 48 timmar. csv_export_failed: + title: "CSV exporten misslyckades" subject_template: "Dataexport misslyckades" text_body_template: "Tyvärr har din dataexport misslyckats. Var god kontrollera loggarna eller kontakta personal." email_reject_insufficient_trust_level: + title: "email avslår otillräcklig förtroendenivå" subject_template: " [%{site_name}] E-postfel -- Otillräcklig förtroendenivå" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ditt konto har inte tillräckligt hög förtroendenivå för att skriva nya inlägg från den e-postadressen. Kontakta personal om du tror att det här är ett misstag. email_reject_user_not_found: + title: "Emailet avslås användare kunde inte finnas" subject_template: "[%{site_name}] E-postfel -- Okänd användare" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ditt svarsmeddelande skickades från en okänd e-postadress. Försök skicka meddelandet från en annan e-postadress, eller kontakta personal. email_reject_screened_email: + title: "Email avslås screenade email" subject_template: "[%{site_name}] E-postfel -- Blockerad e-postadress" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ditt svarsmeddelande skickades från en blockerad e-postadress. Försök skicka svaret från en annan e-postadress eller kontakta personal. email_reject_inactive_user: + title: "Emailet avslås Inaktiverad användare" subject_template: "[%{site_name}] E-postfel -- Inaktiv användare" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Kontot associerat till den här e-postadressen är inte aktiverat. Var god se till att ditt konto är aktiverat innan du skickar e-post. email_reject_blocked_user: + title: "Email avslås blockerad användare" subject_template: "[%{site_name}] E-postfel -- Användare blockerad" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Kontot associerat till den här e-postadressen har blockerats. email_reject_reply_user_not_matching: + title: "Emailet avslås användare hittas ej" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ditt svarsmeddelande skickades från en annan e-postadress än den vi väntat oss, så vi är inte säkra på att det är från samma person. Försök skicka svaret från en annan e-postadress eller kontakta personal. email_reject_no_account: + title: "Emailet avslås det finns inget konto" subject_template: "[%{site_name}] E-postfel -- Okänt konto" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Vi kan inte hitta något konto som matchar din e-postadress. Försök skicka meddelandet från en annan e-postadress eller kontakta personal. email_reject_empty: + title: "Emailet avslås - tomt" subject_template: "[%{site_name}] E-postfel -- Innehåll saknas" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. @@ -1513,24 +1549,28 @@ sv: Vi kunde inte hitta något svar i ditt e-postmeddelande. **Se till att ditt svar är högst upp i e-postmeddelandet** -- vi kan inte hantera inbäddad text. email_reject_invalid_access: + title: "Emailet avslås ogiltig åtkomst" subject_template: "[%{site_name}] E-postfel -- Ogiltig åtkomst" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ditt konto har inte rättighet att skriva nya inlägg i den kategorin. Kontakta personal om du tror att det här är ett misstag. email_reject_strangers_not_allowed: + title: "Emailet avslås okända är ej tillåtna" subject_template: "[%{site_name}] E-postfel -- Ogiltig åtkomst" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Kategorin som du skickat e-postmeddelandet till godkänner endast inlägg från användare med giltiga konton och kända e-postadresser. Kontakta personal om du tror att det här är ett misstag. email_reject_invalid_post: + title: "Emailet avslås ogiltigt inlägg" subject_template: "[%{site_name}] E-postfel -- Inläggsfel" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Några möjliga anledningar är: för komplex formattering, meddelandet är för stort, meddelandet är för litet. Var vänlig försök igen, eller gör ett inlägg via hemsidan om problemet fortsätter. email_reject_invalid_post_specified: + title: "Emailet avslås ogiltigt inlägg specificerat" subject_template: "[%{site_name}] E-postfel -- Inläggsfel" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. @@ -1541,42 +1581,49 @@ sv: Om du kan åtgärda problemet, var vänlig försök igen. email_reject_invalid_post_action: + title: "Emailet avslås ogiltigt inlägg" subject_template: "[%{site_name}] E-postfel -- Ogiltig poståtgärd" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Poståtgärden kändes inte igen. Var vänlig försök igen, eller gör ett inlägg via hemsidan om problemet fortsätter. email_reject_reply_key: + title: "Emailet avvisar svars nyckeln" subject_template: "[%{site_name}] E-postfel -- Okänd svarsnyckel" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Svarsnyckeln i e-postmeddelandet är ogiltigt eller okänt, så vi vet inte vad det är e-postmeddelandet är ett svar till. Kontakta personal. email_reject_bad_destination_address: + title: "Emailet avslås dålig mottagaradress" subject_template: "[%{site_name}] E-postfel -- Okänd mottagaradress" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Inga av mottagaradresserna kunde identifieras. Var god se till att du skickar till en korrekt e-postadress tillhandahållen av personalen. email_reject_topic_not_found: + title: "Emailet avslås ämnet fanns ej" subject_template: "[%{site_name}] E-postfel -- Okänt ämne" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ämnet du försöker svara i finns inte längre, kanske har den raderats? Kontakta personal om du tror att det här är ett misstag. email_reject_topic_closed: + title: "Emailet avslås ämnet är stängt" subject_template: "[%{site_name}] E-postfel -- Ämne avstängt" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ämnet som du svarar i är för närvarande avstängt och tar inte emot svarsmeddelanden. Kontakta personal om du tror att det här är ett misstag. email_reject_auto_generated: + title: "Emailet avslås detta är autogenererat" subject_template: "[%{site_name}] E-postfel -- Autogenererat svar" text_body_template: | Tyvärr har ditt e-postmeddelande till %{destination} (med ämnet %{former_title}) inte kunnat skickas. Ditt e-postmeddelande har flaggats som "autogenererat", vilket betyder att e-postmeddelandet är skapat av en dator och inte skrivet av en människa. Vi kan tyvärr inte acceptera den typen av e-post. Kontakta personal om du tror att det här är ett misstag. email_error_notification: + title: "Email felmeddelanden" subject_template: "[%{site_name}] E-postfel -- POP autentisieringsfel" text_body_template: | Tyvärr uppstod ett autentiseringsproblem vid sökningen efter e-post från POP-servern. @@ -1585,6 +1632,7 @@ sv: Om det finns ett gränssnitt för e-postkontot till POP så kan du behöva logga in och kontrollera dina inställningar där. too_many_spam_flags: + title: "För många skräppost flaggningar" subject_template: "Nytt konto pausat" text_body_template: | Hej! @@ -1605,6 +1653,7 @@ sv: För ytterligare information, se våra [riktlinjer](%{base_url}/guidelines). blocked_by_staff: + title: "Blockerat av personal" subject_template: "Konto tillfälligt pausat" text_body_template: | Hej! @@ -1615,6 +1664,7 @@ sv: För mer information, se våra [riktlinjer](%{base_url}/guidelines). user_automatically_blocked: + title: "Användare blir automatiskt blockerad" subject_template: "Ny användare %{username} blockerad på grund av flaggningar från forumet" text_body_template: | Det här är ett automatiserat meddelande. @@ -1625,6 +1675,7 @@ sv: Du kan också modifiera inställningen `block_new_user` via Webbplatsinställningar. spam_post_blocked: + title: "Skräppost är blockerat" subject_template: "Ny användare %{username} har fått meddelanden blockerade pga. upprepade länkar " text_body_template: | Det här är ett automatiserat meddelande. @@ -1635,6 +1686,7 @@ sv: Du kan också modifiera webbplatsinställningarna `newuser_spam_host_threshold`och `white_listed_spam_host_domains`. unblocked: + title: "Avblockerat" subject_template: "Konto ej längre pausat" text_body_template: | Hej! @@ -1643,6 +1695,7 @@ sv: Du kan nu skriva inlägg och skapa nya ämnen igen. Tack för ditt tålamod. pending_users_reminder: + title: "Påminnelse om väntande användare" subject_template: one: "1 användare väntar på godkännande" other: "%{count} användare väntar på godkännande" @@ -1651,9 +1704,11 @@ sv: [Var vänlig och granska dem på administratörssidan](%{base_url}/admin/users/list/pending). download_remote_images_disabled: + title: "Nerladdningen av externa bilder är avaktiverad" subject_template: "Nedladdning av externa bilder har avaktiverats" text_body_template: "Inställningen `download_remote_images_to_local` har avaktiverats eftersom att diskutrymmet har nått sin övre gräns." dashboard_problems: + title: "Instrumentpanels problem" subject_template: "Problem har upptäckts" text_body_template: | Några problem har rapporterats på din översiktspanel på administrationssidorna. @@ -1701,6 +1756,7 @@ sv: > %{site_title} -- %{site_description} user_invited_to_private_message_pm: + title: "Användare invitera personligt" subject_template: "[%{site_name}] %{username} har bjudit in dig till en privat konversation '%{topic_title}'" text_body_template: | %{header_instructions} @@ -1717,6 +1773,7 @@ sv: %{respond_instructions} user_invited_to_topic: + title: "Användare inviterad till ämnet" subject_template: "[%{site_name}] %{username} bjöd in dig till '%{topic_title}'" text_body_template: | %{header_instructions} @@ -1725,6 +1782,7 @@ sv: %{respond_instructions} user_replied: + title: "Användare svarade" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1735,6 +1793,7 @@ sv: %{respond_instructions} user_replied_pm: + title: "Användare svarade personligen" subject_template: "[%{site_name}] [PM] %{topic_title}" text_body_template: | %{header_instructions} @@ -1745,6 +1804,7 @@ sv: %{respond_instructions} user_quoted: + title: "Användare citerade" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1755,6 +1815,7 @@ sv: %{respond_instructions} user_linked: + title: "Användares länk" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1765,6 +1826,7 @@ sv: %{respond_instructions} user_mentioned: + title: "Användare som nämns" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1775,6 +1837,7 @@ sv: %{respond_instructions} user_group_mentioned: + title: "Användargrupp som nämns" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1785,6 +1848,7 @@ sv: %{respond_instructions} user_posted: + title: "Användare publicerade" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1795,6 +1859,7 @@ sv: %{respond_instructions} user_watching_first_post: + title: "Användare bevakar första inlägget" subject_template: "[%{site_name}] %{topic_title}" text_body_template: | %{header_instructions} @@ -1821,6 +1886,18 @@ sv: %{message} digest: why: "En kortfattad sammanfattning av %{site_link} sedan ditt senaste besök den %{last_seen_at}" + since_last_visit: "Sedan ditt senaste besök" + new_topics: "Nya ämnen" + unread_messages: "olästa meddelanden" + unread_notifications: "Olästa meddelanden" + liked_received: "Gillanden mottagna" + new_posts: "Nytt meddelande" + new_users: "Ny användare" + popular_topics: "Populära ämnen" + follow_topic: "Glöm detta ämne" + join_the_discussion: "Läs mer" + popular_posts: "Populära meddelanden" + more_new: "Nytt för er" subject_template: "[%{site_name}] Sammanfattning" unsubscribe: "Den här sammanfattningen har skickats från %{site_link} där vi inte har sett dig på ett tag. För att säga upp dig %{unsubscribe_link}." click_here: "klicka här" @@ -1835,6 +1912,7 @@ sv: view_this_topic: "Se det här ämnet" back_to_top: "Tillbaka till början" forgot_password: + title: "Glömt lösenord" subject_template: "[%{site_name}] Återställning av lösenord" text_body_template: | Någon bad om att få återställa ditt lösenord på [%{site_name}](%{base_url}). @@ -1844,6 +1922,7 @@ sv: Klicka på följande länk för att välja ett nytt lösenord: %{base_url}/users/password-reset/%{email_token} set_password: + title: "Välj lösenord" subject_template: "[%{site_name}] Ange lösenord" text_body_template: | Någon har begärt att lägga till ett lösenord till ditt konto på [%{site_name}](%{base_url}). Du kan också logga in genom att använda någon av våra alternativa onlinetjänster (Google eller Facebook) som är kopplat till din validerade e-postadress. @@ -1853,6 +1932,7 @@ sv: Följ nedanstående länk för att välja ett nytt lösenord: %{base_url}/users/password-reset/%{email_token} admin_login: + title: "Administratörs login" subject_template: "[%{site_name}] Logga in" text_body_template: | Någon bad om att få återställa ditt lösenord på [%{site_name}](%{base_url}). @@ -1862,6 +1942,7 @@ sv: Klicka på följande länk för att logga in: %{base_url}/users/password-reset/%{email_token} account_created: + title: "Konto skapat" subject_template: "[%{site_name}] Ditt nya konto" text_body_template: | Ett nytt konto har skapats för dig på %{site_name} @@ -1869,12 +1950,14 @@ sv: Klicka på följande länk för att välja ett nytt lösenord för ditt nya konto: %{base_url}/users/password-reset/%{email_token} confirm_new_email: + title: "Bekräfta den nya emailadressen" subject_template: "[%{site_name}] Bekräfta din nya e-postadress" text_body_template: | Bekräfta din nya e-postadress för %{site_name} genom att klicka på länken nedanför: %{base_url}/users/authorize-email/%{email_token} confirm_old_email: + title: "Bekräfta den gamla email adressen" subject_template: "[%{site_name}] Bekräfta din nuvarande e-postadress" text_body_template: | Vänligen bekräfta att du kontrollerar den här e-postadressen innan vi ändrar din e-postadress. @@ -1883,6 +1966,7 @@ sv: %{base_url}/users/authorize-email/%{email_token} notify_old_email: + title: "Meddela gamla epostmeddelanden" subject_template: "[%{site_name}] Din e-postadress har ändrats " text_body_template: | Det här är ett automatiserat meddelande för att informera dig om att din e-postadress för %{site_name} har ändrats. Var vänlig kontakta en administratör om det inte var din avsikt. @@ -1891,6 +1975,7 @@ sv: %{new_email} signup_after_approval: + title: "Bli medlem efter godkännande" subject_template: "Du har blivit godkänd på %{site_name}!" text_body_template: | Välkommen till %{site_name}! @@ -1910,6 +1995,7 @@ sv: (Om du som ny användare behöver komma i kontakt med vår [personal](%{base_url}/about), svara bara på detta meddelande.) signup: + title: "Bli medlem" subject_template: "[%{site_name}] Verifiera ditt nya konto" text_body_template: | Välkommen till %{site_name}! @@ -1967,6 +2053,7 @@ sv: message_to_blank: "message.to är tomt" text_part_body_blank: "text_part.body är tomt" body_blank: "body är tom" + no_echo_mailing_list_mode: "Email list meddelande är inaktiverat för användarens egna meddelanden" color_schemes: base_theme_name: "Bas" about: "Om" @@ -2308,13 +2395,122 @@ sv: performance_report: initial_post_raw: Det här ämnet innehåller dagliga prestandarapporter för din webbplats. initial_topic_title: Prestandarapporter för webbplatsen - topic_invite: - user_exists: "Tyvärr, den användaren har redan bjudits in. Du kan endast bjuda in en användare till ett ämne en gång." tags: title: "Taggar" staff_tag_disallowed: "Taggen \"%{tag}\" kan endast användas av personalen." staff_tag_remove_disallowed: "Taggen \"%{tag}\" kan endast tas bort av personalen." rss_by_tag: "Ämnen taggade med %{tag}" + finish_installation: + congratulations: "Grattis, ert diskussionsforum är installerat" + register: + button: "Registrera" + title: "Registrera ett admin konto" + help: "registrera en nytt konto för att kunna starta" + confirm_email: + title: "Bekräfta er email" + resend_email: + title: "Återsänd aktiverings emial" + safe_mode: + title: "ange felsäkert läge" + description: "I felsäkert läge kan du testa din webplats utan att ladda ner några plugins eller anpassade webplatser." + no_customizations: "Inaktivera alla webplats inställningar" + only_official: "Inaktivera alla inofficiella plugins" + no_plugins: "Inaktivera alla plugins" + enter: "Starta felsäkert läge" + wizard: + title: "Diskussions inställningar" + step: + locale: + title: "Välkomment till ditt diskussionsforum" + fields: + default_locale: + description: "Vilket är standardspråket för din grupp?" + forum_title: + title: "Namn" + fields: + title: + label: "Er forums namn" + placeholder: "Jane´s hangout" + site_description: + label: "Beskriv er grupp i en kort mening" + placeholder: "En plats för Jane och hennes vänner för att diskutera häftiga ämnen" + introduction: + title: "Introduktion" + fields: + welcome: + label: "Välkomst ämne" + one_paragraph: "Var vänlig begränsa er välkomst meddelande till en paragraf." + privacy: + title: "Tillgång" + fields: + privacy: + choices: + open: + label: "Publikt" + description: "Alla har tillgång till denna grupp och kan söka medlemskap" + restricted: + label: "Privat" + description: "Enbart människor som jag har inviterat eller gett tilåtelse till har åtkomst till denna grupp" + contact: + title: "kontakt" + fields: + contact_email: + label: "mail" + placeholder: "namn@exempel.com" + contact_url: + label: "Web sida" + site_contact: + label: "Automatiska meddelanden" + corporate: + title: "Organisation" + fields: + company_short_name: + label: "(korta) företagsnamnet" + company_full_name: + label: "(Hela) företagsnamnet" + company_domain: + label: "Företagsdomän namn" + colors: + title: "Tema" + fields: + theme_id: + description: "Föredrar du en ljus eller mörk färgkarta att starta med? Du kan längre fram skräddarsy utseende och känsla på din sida via Admin, Customize." + choices: + default: + label: "Enkelt ljus" + dark: + label: "Enkelt mörkt" + logos: + title: "Logotyper" + fields: + logo_url: + label: "Primär logo" + description: "Logon i övre vänster sida av din webplats. Använd en bred rektangulär form." + logo_small_url: + label: "Kompakt logo" + icons: + title: "Ikoner" + fields: + favicon_url: + label: "Små ikoner" + apple_touch_icon_url: + label: "Stora ikoner" + homepage: + title: "Hemsida" + fields: + homepage_style: + choices: + latest: + label: "Senaste ämnen" + categories: + label: "Kategorier" + emoji: + title: "Emojer" + description: "Vilken emoj stil föredrar du för din grupp? Du kan addera fler personliga Emojer senare via Admin, Customize, Emoj." + invites: + title: "Invitera personal" + finished: + title: "Er diskussionsgrupp är klar!" activemodel: errors: <<: *errors diff --git a/config/locales/server.te.yml b/config/locales/server.te.yml index aedbb41896..30ff3e5557 100644 --- a/config/locales/server.te.yml +++ b/config/locales/server.te.yml @@ -270,14 +270,11 @@ te: one: "అటో ఇటో ఒక సంవత్సరం వెనుక" other: "అటోఇటో %{count} సంవత్సరాల ముందు" password_reset: - choose_new: "దయచేసి కొత్త సంకేతపదం ఎన్నుకోండి" - choose: "దయచేసి ఒక సంకేతపదం ఎన్నుకోండి" update: 'సంకేతపదం ఉన్నతీకరించండి' save: 'సంకేతపదం అమర్చండి' title: 'సంకేతపదం రీసెట్ చెయ్యండి' success: "మీరు విజయవంతంగా మీ సంకేతపదం మార్చారు ఇంకా ఇప్పుడు లాగిన్ అయ్యారు కూడా." success_unapproved: "మీరు విజయవంతంగా సంకేతపదం మార్చారు." - continue: "%{site_name} కు కొనసాగండి" change_email: confirmed: "మీ ఈమెయిల్ చిరునామా మారింది." please_continue: "%{site_name} కు కొనసాగండి" diff --git a/config/locales/server.tr_TR.yml b/config/locales/server.tr_TR.yml index 70a4e3897c..6f2827dafc 100644 --- a/config/locales/server.tr_TR.yml +++ b/config/locales/server.tr_TR.yml @@ -205,40 +205,6 @@ tr_TR: - Yapıcı eleştirici her zaman kabul edilir, ama *fikirleri* eleştirin, insanları değil. Daha fazlası için, [topluluk yönergelerimize bakın](/guidelines). Bu yazı sadece ilk %{education_posts_text} için görünür. - avatar: | - ### Hesabının bir resmi olsun istemez misin? - - Birkaç konu ve cevap gönderdin, fakat profil resmin senin kadar eşsiz değil - sadece bir harf. - - Hiç **[kullanıcı profiline girmeyi](%{profile_path})** ve seni ifade eden bir resim yüklemeyi düşündün mü? - - Herkes eşsiz bir profil resmine sahip olduğunda tartışmaları takip etmek ve tartışmalarda ilgi çekici insanlar bulmak daha kolaydır! - sequential_replies: | - ### Birden fazla gönderiyi aynı anda cevaplayabilirsin - - Aynı konuya ardı ardına cevaplar yazmak yerine, lütfen önceki gönderilerden alıntı veya @isim referansları içeren tek bir cevap yaz. - - Herhangi bir yazıyı seçince çıkan alıntılayarak cevapla düğmesine tıklayarak alıntı ekleyebilir, bir önceki cevabınızı düzenleyebilirsiniz. - - Az sayıda derinlemesine cevaplardan oluşan konuların okunması, çok fazla kısa ve tekil cevaplardan oluşan konulardan herkes için daha kolay oluyor. - dominating_topic: | - ###Sohbete başkalarının katılmasına izin verin - - Bu konunun sizin için önemli olduğunu görüyoruz – buradaki cevapların %{percent}% oranından daha fazlasını siz göndermişsiniz. - - Diğerlerinin de kendi fikirlerini paylaşmaları için onlara yeteri kadar zaman tanıdığınıza emin misiniz? - too_many_replies: | - ### Bu konu için cevap limitinizi doldurdunuz - - Üzgünüz, ancak geçici olarak, yeni kullanıcılar aynı konu içinde en fazla %{newuser_max_replies_per_topic} cevap yazabiliyorlar. - - Yeni bir cevap yazmak yerine, önceki cevaplarınızı düzenlemeyi, ya da başka konulara göz atmayı düşünün. - reviving_old_topic: | - ### Bu konuyu tekrar canlandırmak mı istediniz? - - Bu başlığa en son %{days} gün önce cevap yazılmış. Cevabınız, bu konuyu listesinin en üstüne taşıyacak ve geçmişte sohbete katılmış olan tüm yazarlara bildirim gönderecek. - - Bu eski sohbeti devam ettirmek istediğinize emin misiniz? activerecord: attributes: category: @@ -411,14 +377,11 @@ tr_TR: other: "neredeyse %{count} yıl önce" password_reset: no_token: "Üzgünüz, bu parola değiştirme bağlantısı çok eski. Yeni bir bağlantı almak için lütfen 'Giriş Yap' tuşuna basın ve 'Parolamı unuttum'u seçin." - choose_new: "Lütfen yeni bir parola seçin" - choose: "Lütfen parola seçin" update: 'Parolayı Güncelle' save: 'Parola Belirle' title: 'Parola Sıfırla' success: "Parolanızı başarıyla değiştirdiniz ve giriş yaptınız." success_unapproved: "Parolanızı başarıyla değiştirdiniz." - continue: "%{site_name} adresine devam edin" change_email: confirmed: "E-posta adresiniz güncellendi." please_continue: "%{site_name} adresine devam edin" @@ -669,8 +632,6 @@ tr_TR: facebook_config_warning: 'Sunucu Facebook (enable_facebook_logins) ile üyelik oluşturulması ve giriş yapılmasına izin veriyor, fakat app ID ve gizli app değerleri henüz ayarlanmamış. Site Ayarları sayfasına gidin ve ayarları güncelleyin. Daha fazla bilgi için bu yönetmeliğe bakın.' twitter_config_warning: 'Sunucu Twitter (enable_twitter_logins) ile üyelik oluşturulması ve giriş yapılmasına izin veriyor, fakat anahtar ve gizli değerler henüz ayarlanmamış. Site Ayarları sayfasına gidin ve ayarları güncelleyin. Daha fazla bilgi için bu yönetmeliğe bakın.' github_config_warning: 'Sunucu GitHub (enable_github_logins) ile üyelik oluşturulması ve giriş yapılmasına izin veriyor, fakat kullanıcı IDsi ve gizli değerler henüz ayarlanmamış. Site Ayarları sayfasına gidin ayarları güncelleyin. Daha fazla bilgi için bu yönetmeliğe bakın.' - s3_config_warning: 'Sunucu s3''e dosya yüklenebilmesi için yapılandırılmış, fakat şunlardan en az biri henüz ayarlanmamış: s3_access_key_id, s3_secret_access_key or s3_upload_bucket. Site Ayarları sayfasına gidin ve ayarları güncelleyin. Daha fazla bilgi için "How to set up image uploads to S3?" konulu gönderiye bakın.' - s3_backup_config_warning: 'Sunucu s3''e yedekleme yüklenebilmesi için yapılandırılmış, fakat şunlardan en az biri henüz ayarlanmamış: s3_access_key_id, s3_secret_access_key or s3_backup_bucket. Site Ayarları sayfasına gidin ve ayarları güncelleyin. Daha fazla bilgi için "How to set up image uploads to S3?" konulu gönderiye bakın.' image_magick_warning: 'Sunucu büyük resimlerin küçük boylarının oluşturulması için yapılandırılmış, fakat ImageMagick henüz kurulmamış. Favori paket yöneticinizi kullanarak ImageMagick kurun veya son sürümünü indirin.' failing_emails_warning: 'Başarısızlıkla sonuçlanmış %{num_failed_jobs} e-posta işlemi bulunuyor. app.yml dosyanızı kontrol edin ve e-posta sunucu ayarlarınızın doğru olduğundan emin olun. Sidekiq''deki başarısız işlemlere göz atın.' subfolder_ends_in_slash: "Alt dizin kurulumunuz hatalı, DISCOURSE_RELATIVE_URL_ROOT sonunda yan çizgi bulunmalı." @@ -713,7 +674,6 @@ tr_TR: max_image_width: "Bir gönderideki küçük resimlerin en fazla genişliği" max_image_height: "Bir gönderideki küçük resimlerin en fazla yüksekliği" category_featured_topics: "/categories sayfasında yer alan kategori başına düşen konu sayısı. Bu değeri değiştirirseniz, değişikliğin kategoriler sayfasına yansıması 15 dakika kadar sürebilir." - show_subcategory_list: "Bir kategoriye girildiğinde konu listesi yerine alt kategori listesini göster." fixed_category_positions: "Seçerseniz, kategoriler için sabit bir sıralama belirleyebileceksiniz. Seçmezseniz, kategoriler etkinlik sırasına göre listelenir. " fixed_category_positions_on_create: "Seçerseniz, konu oluşturma ekranında da kategori sıralaması korunur (fixed_category_positions gerektirir)." add_rel_nofollow_to_user_content: "İç bağlantılar (ana alan adları dahil) hariç, gönderilen tüm kullanıcı içeriklerine rel nofollow ekle. Bu ayarı değiştirirseniz, tüm gönderileri \"rake post:rebake\" ile yeniden işlemeniz gerekir." @@ -800,8 +760,6 @@ tr_TR: invite_passthrough_hours: "Daha önce kabul edilmiş davetiye anahtarının kullanım süresi, saat olarak" invite_only: "Herkese açık kayıt sistemi devre dışı bırakıldı, tüm yeni kullanıcıların bir üye ya da görevli tarafından davet edilmesi gerekir. " login_required: "Bu sitede içerik görüntülenebilmesi için kimlik doğrulamayı zorunlu kıl, isimsiz girişe izin verme." - min_username_length: "Karakter olarak en küçük kullanıcı adı uzunluğu." - max_username_length: "Karakter olarak en büyük kullanıcı adı uzunluğu." reserved_usernames: "Kayıt için izin verilmeyen kullanıcı adları." min_password_length: "Parolanın en az uzunluğu." min_admin_password_length: "Yönetici için parolanın en az uzunluğu." @@ -1042,7 +1000,6 @@ tr_TR: show_create_topics_notice: "Eğer sitede herkese açık konu sayısı 5'den az ise, yöneticiden yeni konular oluşturmasını isteyen bir uyarı iletisi göster. " delete_drafts_older_than_n_days: (n) günden eski taslakları sil. bootstrap_mode_min_users: "bootstrap modunun edilgen olması için gereken en az kullanıcı sayısı (edilgen bırakmak için 0 yapın)" - vacuum_db_days: "Geçiş sonrası DB alanı geri kazanmak için TAM VAKUM ANALİZİ'ni çalıştırın (devre dışı bırakmak için 0 girin)" prevent_anons_from_downloading_files: "Anonim kullanıcıların eklenti indirebilmesini önle. DİKKAT: Bu ayar, eklenti olarak gönderilen resim-dışı site içeriklerinin de çalışmasını engelleyebilir." slug_generation_method: "Slug üretim yöntemi seçin. 'kodlanmış' seçeneği yüzde kodlamalı metin oluşturur. 'hiçbiri' seçeneği slug'ı devre dışı bırakır." enable_emoji: "Emojiyi etkinleştir" @@ -1219,48 +1176,8 @@ tr_TR: Eğer e-posta bildirimlerini almaya devam etmek istiyorsanız, bu e-postayı görmezden gelin. invite_mailer: subject_template: "%{invitee_name} sizi %{site_domain_name} sitesindeki '%{topic_title}' adlı konuya davet etti. " - text_body_template: | - %{invitee_name} sizi - - > %{site_title} -- %{site_description} - - sitesindeki - - > **%{topic_title}** - > - > %{topic_excerpt} - - tartışmasına davet ediyor. - - Eğer ilgileniyorsanız, aşağıdaki bağlantıya tıklayın: - - %{invite_link} - - Bu davet güvenilir bir kullanıcı tarafından gönderilmiştir, cevap yazarak tartışmaya hemen katılabilirsiniz. custom_invite_mailer: subject_template: "%{invitee_name} sizi %{site_domain_name} sitesindeki '%{topic_title}' adlı konuya davet etti " - text_body_template: | - %{invitee_name} sizi - - > %{site_title} -- %{site_description} - - sitesindeki - - > **%{topic_title}** - > - > %{topic_excerpt} - - tartışmasına davet ediyor. - - Ayrıca %{invitee_name} diyor ki: - - %{user_custom_message} - - Eğer ilgileniyorsanız, aşağıdaki bağlantıya tıklayın: - - %{invite_link} - - Bu davet güvenilir bir kullanıcı tarafından gönderilmiştir, cevap yazarak tartışmaya hemen katılabilirsiniz. invite_forum_mailer: subject_template: "%{invitee_name} sizi %{site_domain_name} sitesine katılmanız için davet etti" custom_invite_forum_mailer: @@ -1399,12 +1316,6 @@ tr_TR: ``` csv_export_succeeded: subject_template: "Dışarı veri aktarımı tamamlandı" - text_body_template: | - Dışarı veri aktarımı başarılı! :dvd: - - %{file_name} (%{file_size}) - - Bu bağlantı 48 saat boyunca geçerli olacak. csv_export_failed: subject_template: "Dışarı veri aktarımı başarısız oldu" text_body_template: "Üzgünüz, dışarı veri aktarımı başarısız oldu. Lütfen kayıtları inceleyin veya bir görevli ile iletişime geçin." @@ -2050,8 +1961,6 @@ tr_TR: performance_report: initial_post_raw: Bu konu siteniz hakkında günlük performans raporlarını içerir. initial_topic_title: Site performansı raporları - topic_invite: - user_exists: "Üzgünüz, bu kullanıcı zaten davet edildi. Konuya yalnızca bir kullanıcı davet edebilirsiniz." tags: title: "Etiketler" staff_tag_disallowed: " \"%{tag}\" etiketi yalnızca görevliler tarafından eklenebilir gözüküyor." diff --git a/config/locales/server.uk.yml b/config/locales/server.uk.yml index c5cda74769..ebdab566a6 100644 --- a/config/locales/server.uk.yml +++ b/config/locales/server.uk.yml @@ -18,7 +18,6 @@ uk: log_in: "Вхід" emails: incoming: - default_subject: "Вхідна пошта від %{email}" errors: inactive_user_error: "Таке трапляється, якщо відправник не активний" blocked_user_error: "Таке трапляється, якщо відправника було заблоковано" @@ -109,25 +108,6 @@ uk: trust_level_2: "trust_level_2" trust_level_3: "trust_level_3" trust_level_4: "trust_level_4" - education: - dominating_topic: | - ### Дайте можливість іншим включитися до обговорення - - Ця тема однозначно важлива для Вас – Ви опублікували тут більше %{percent}% відповідей. - - Ви впевнені, що даєте достатньо часу для того, щоб інші люди також мали можливість поділитися своїми думками? - too_many_replies: | - ### Ви досягли обмеження на кількість відповідей для цієї теми - - Даруйте, але нові користувачі мають тимчасове обмеження до %{newuser_max_replies_per_topic} відповідей на одну тему. - - Замість того, щоб додавати нову відповідь, спробуйте відредагувати свої старі відповіді, або відвідайте інші теми. - 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: @@ -190,14 +170,11 @@ uk: few: "%{count} секунд тому" other: "%{count} секунд тому" password_reset: - choose_new: "Будь ласка, оберіть новий пароль" - choose: "Будь ласка, оберіть пароль" update: 'Оновити пароль' save: 'Встановити пароль' title: 'Скинути пароль' success: "Ви успішно змінили свій пароль і зараз Ви в системі." success_unapproved: "Ви успішно змінили свій пароль." - continue: "Продовжити у %{site_name}" change_email: confirmed: "Адресу вашої електронної скриньки оновлено." error: "Під час зміни адреси Вашої електронної скриньки трапилася помилка. Можливо, ця адреса вже використовується?" @@ -324,7 +301,6 @@ uk: 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.' 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.' site_settings: default_locale: "Мова за замовчуванням для цього екземпляра Discourse (Код ISO 639-1)" @@ -335,7 +311,6 @@ uk: queue_jobs: "ТІЛЬКИ ДЛЯ РОЗРОБНИКІВ! УВАГА! За замовчуванням, додавати завдання до черги в sidekiq. Якщо вимкнути, Ваш сайт зламається." crawl_images: "Отримувати зображення з віддалених адрес, щоб встановити правильні розміри ширини і висоти." category_featured_topics: "Кількість тем на одну категорію, що показуються на сторінці /categories. Після зміни цього значення, оновлення категорій займе до 15 хвилин." - show_subcategory_list: "Показувати перелік підкатегорій замість переліку тем при вході у категорію." apple_touch_icon_url: "Піктограма, що використовується для сенсорних пристроїв Apple. Рекмоендований розмір 144px на 144px." email_custom_headers: "Список заголовків електронної пошти, розділених вертикальною рискою" enable_long_polling: "Message bus used for notification can use long polling" diff --git a/config/locales/server.vi.yml b/config/locales/server.vi.yml index 30856cee31..429fda5a49 100644 --- a/config/locales/server.vi.yml +++ b/config/locales/server.vi.yml @@ -32,7 +32,6 @@ vi: anonymous: "Ẩn danh" emails: incoming: - default_subject: "Email đến từ %{email}" show_trimmed_content: "Hiện nội dung đã cắt" errors: empty_email_error: "Xảy ra khi thư nguồn hệ thống nhận được là trống." @@ -208,40 +207,6 @@ vi: - Lời phê bình mang tính đóng góp cũng được chào đón, nhưng bạn nên phê bình *ý tưởng* chứ không phải con người. [Đọc hướng dẫn cộng đồng](/guidelines) để có thêm thông tin. Bảng này chỉ xuất hiện cho bài viết đầu tiên của bạn %{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: | - ### Xem xét việc trả lời nhiều bài viết cùng lúc - - Thay vì trả lời nhiều tuần tự đến từng chủ đề, xin vui lòng xem xét một bài trả lời duy nhất mà bao gồm các trích dẫn từ bài viết trước hoặc dùng tham chiếu @name. - - Bạn có thể sửa bài trả lời trước đó của bạn để thêm một trích dẫn bằng cách bôi đen và nhấn chọn nút quote reply vừa xuất hiện. - - Sẽ dễ dàng hơn cho tất cả mọi người để đọc chủ đề mà có ít câu trả lời sâu với nhiều cấp, trả lời cá nhân - dominating_topic: | - ### Hãy để người khác tham gia vào cuộc thảo luận - - Chủ đề này rõ ràng là quan trọng với bạn & ndash; bạn đã đăng nhiều hơn% %{percent}% của các câu trả lời tại đây. - - Bạn có chắc chắn bạn đang cung cấp đủ thời gian cho những người khác để chia sẻ quan điểm của mình? - too_many_replies: | - ### Bạn đã đạt đến giới hạn trả lời cho chủ đề này - - Chúng tôi xin lỗi, nhưng người dùng mới bị giới hạn %{newuser_max_replies_per_topic} trả lời trong cùng một chủ đề. - - Thay vì thêm một câu trả lời khác, xin vui lòng xem xét chỉnh sửa trả lời trước đó của bạn, hoặc truy cập vào các chủ đề khác. - reviving_old_topic: | - ### Xem lại chủ đề này? - - Câu trả lời cuối cùng cho chủ đề này đã hơn hơn %{days} ngày. Trả lời của bạn sẽ đẩy chủ đề đó lên đầu danh sách và thông báo cho bất cứ ai liên quan đến cuộc thảo luận. - - Bạn có chắc chắn bạn muốn tiếp tục cuộc trò chuyện cũ này? activerecord: attributes: category: @@ -411,14 +376,11 @@ vi: other: "gần %{count} năm trước" password_reset: no_token: "Xin lỗi, liên kết đổi mật khẩu đã cũ. Chọn \"Đăng nhập\" và sử dụng chức năng \"Quên mật khẩu\" để lấy liên kết mới." - choose_new: "Vui lòng chọn mật khẩu mới" - choose: "Bạn phải nhập mật khẩu" update: 'Cập nhật mật khẩu' save: 'Nhập mật khẩu' title: 'Thiết lập lại mật khẩu' success: "Bạn đã thay đổi mật khẩu thành công và đã được đăng nhập." success_unapproved: "Bạn đã thay đổi mật khẩu thành công." - continue: "Tiếp tục đến %{site_name}" change_email: confirmed: "Email của bạn đã được cập nhật." please_continue: "Tiếp tục đến %{site_name}" @@ -649,8 +611,6 @@ vi: facebook_config_warning: 'Máy chủ được cấu hình cho phép đăng ký và đăng nhập với Facebook (enable_facebook_logins), tuy nhiên giá trị của client id và client secret thì không được thiết lập. Truy cập Cấu hình Site và bổ sung các thiết lập đó. Xem hướng dẫn này để biết thêm chi tiết.' twitter_config_warning: 'Máy chủ được cấu hình cho phép đăng ký và đăng nhập với Twitter (enable_twitter_logins), tuy nhiên giá trị của client id và client secret thì không được thiết lập. Truy cập Cấu hình Site và bổ sung các thiết lập đó. Xem hướng dẫn này để biết thêm chi tiết.' github_config_warning: 'Máy chủ được cấu hình cho phép đăng ký và đăng nhập với GitHub (enable_github_logins), tuy nhiên giá trị của client id và client secret thì không được thiết lập. Truy cập Cấu hình Site và bổ sung các thiết lập đó. Xem hướng dẫn này để biết thêm chi tiết.' - s3_config_warning: 'Máy chủ được cấu hình để upload file lên s3, tuy nhiên ít nhất một trong các tùy chỉnh sau đây không được thiết lập: s3_access_key_id, s3_secret_access_key hoặc s3_upload_bucket. Truy cập Thiết lập Site và bổ sung các thiết lập đó. Xem bài viết "How to set up image uploads to S3?" để biết thêm chi tiết.' - s3_backup_config_warning: 'Máy chủ được cấu hình để upload các bản sao lưu dữ liệu lên s3, tuy nhiên ít nhất một trong các tùy chỉnh sau đây không được thiết lập: s3_access_key_id, s3_secret_access_key hoặc s3_backup_bucket. Truy cập Thiết lập Site và bổ sung các thiết lập đó. Xem bài viết "How to set up image uploads to S3?" để biết thêm chi tiết.' image_magick_warning: 'Máy chủ đã cấu hình để tạo hình đại diện nhỏ từ những hình lới, nhưng ImageMagick chưa được cài đặt. Cài ImageMagick sử dụng trình quản lý package yêu thích của bạn hoặc tải về phiên bản mới nhất.' failing_emails_warning: 'Có %{num_failed_jobs} email jobs thấ bại. Kiểm tra app.yml và chắc chắn rằng cấu hình máy chủ email đúng. Xem jobs thất bại ở Sidekiq.' subfolder_ends_in_slash: "Thư mục con của bạn được thiết lập không đúng, DISCOURSE_RELATIVE_URL_ROOT phải được kết thúc bằng dấu gạch chéo." @@ -694,7 +654,6 @@ vi: max_image_width: "Chiều rộng tối đa của ảnh thu nhỏ trong bài viết." max_image_height: "Chiều cao tối đa của ảnh thu nhỏ trong bài viết." category_featured_topics: "Số chủ đề hiện thị mỗi danh mục trong trang /categories. Sau khi thay đổi giá trị này, nó sẽ mất khoảng 15 phút để trang danh mục cập nhật." - show_subcategory_list: "Hiện danh sách chuyên mục con thay vì danh sách chủ đề khi truy cập vào chuyên mục." fixed_category_positions: "Nếu được bật, bạn sẽ có thể sắp xếp chuyên mục theo một thứ tự cố định. Nếu không bật, chuyên mục sẽ được sắp xếp theo thứ tử hoạt động." fixed_category_positions_on_create: "Nếu chọn, sắp xếp danh mục sẽ được thực hiện trong cửa sổ tạo chủ đề (yêu cầu fixed_category_positions)." add_rel_nofollow_to_user_content: "Thêm rel='nofollow' cho tất cả các nội dung mà người dùng gửi, ngoại trừ các liên kết nội bộ (của tên miền chính). Nếu thay đổi, bạn phải thực hiện lại cho tất cả các bài viết với: \"rake posts:rebake\"" @@ -768,8 +727,6 @@ vi: invite_passthrough_hours: "Bao lâu người dùng có thể sử dụng mã lời mời trước đó để đăng nhập, theo giờ" invite_only: "Đăng ký tự do đã khóa, tất cả người dùng phải được mời bởi những thành viên khác hoặc nhân viên." login_required: "Yêu cầu chứng thực để đọc nội dung trên trang web, không cho phép người dùng nặc danh truy cập." - min_username_length: "Chiều dài username tối thiểu." - max_username_length: "Chiều dài username tối đa." reserved_usernames: "Những username không được phép đăng ký." min_password_length: "Chiều dài mật khẩu tối thiểu." min_admin_password_length: "Chiều dài mật khẩu tối thiểu đối với Admin." @@ -1009,7 +966,6 @@ vi: notify_about_flags_after: "Nếu có các đánh dấu chưa được xử lý sau số giờ được thiết lập ở đây, gửi email đến contact_email. Đặt là 0 để vô hiệu hóa." show_create_topics_notice: "Nếu trang có ít hơn 5 chủ đề công khai, hiển thị một thông báo yêu cầu quản trị tạo thêm các chủ đề mới" delete_drafts_older_than_n_days: Xóa các bản nháp cũ hơn (n) ngày. - vacuum_db_days: "Chạy VACUUM ANALYZE để lấy lại khoảng trống DB sau khi migration (đặt là 0 để tắt)" prevent_anons_from_downloading_files: "Cấm khách truy cập tải các tập tin đính kèm. CẢNH BÁO: việc này sẽ chặn những hình ảnh không thuộc giao diện trang hoạt động" slug_generation_method: "Chọn phương thức tạo slug. 'encoded' sẽ tạo ra phần trăm chuỗi mã hóa. 'none' sẽ tắt slug." enable_emoji: "Kích hoạt emoji" @@ -1170,22 +1126,6 @@ vi: Nếu bạn vẫn muốn tiếp tục nhận email cập nhật, xin hãy bỏ qua email này. invite_mailer: subject_template: "%{invitee_name} mời bạn tham gia chủ đề '%{topic_title}' trên %{site_domain_name}" - text_body_template: | - %{invitee_name} đã mời bạn tham gia thảo luận - - > **%{topic_title}** - > - > %{topic_excerpt} - - tại - - > %{site_title} -- %{site_description} - - Nếu bạn quan tâm, xin hãy click liên kết sau: - - %{invite_link} - - Lời mời này đến từ thành viên tin cậy nên bạn có thể tham gia thảo luận ngay. invite_forum_mailer: subject_template: "%{invitee_name} đã mời bạn gia nhập %{site_domain_name}" invite_password_instructions: @@ -1256,12 +1196,6 @@ vi: ``` csv_export_succeeded: subject_template: "Xuất dữ liệu hoàn tất" - text_body_template: | - Dữ liệu của bạn đã được export thành công! :dvd: - - %{file_name} (%{file_size}) - - Liên kết download trên sẽ có hiệu lực trong 48 giờ. csv_export_failed: subject_template: "Xuất dữ liệu thất bại" text_body_template: "Chúng tôi xin lỗi, những dữ liệu bạn xuất bị lỗi. Vui lòng xem log hoặc liên hệ nhân viên." @@ -1915,8 +1849,6 @@ vi: performance_report: initial_post_raw: Chủ đề này bao gồm các báo cáo hiệu suất hàng ngày của website. initial_topic_title: Báo cáo hiệu suất website - topic_invite: - user_exists: "Xin lỗi, thành viên này đã được mời. Bạn chỉ có thể mời một người dùng đến một chủ đề một lần." tags: title: "Thẻ" activemodel: diff --git a/config/locales/server.zh_CN.yml b/config/locales/server.zh_CN.yml index cd8eb7b34f..ad30333651 100644 --- a/config/locales/server.zh_CN.yml +++ b/config/locales/server.zh_CN.yml @@ -105,7 +105,6 @@ zh_CN: default_categories_already_selected: "不能选择一个已经用于另一个列表的分类。" s3_upload_bucket_is_required: "你没有填写“s3_upload_bucket”,不能开启上传至 S3。" invite: - accept_invite: "接受邀请" not_found: "你的邀请码不正确。请联系网站管理员。" bulk_invite: file_should_be_csv: "上传的文件应为 csv 格式。" @@ -233,35 +232,35 @@ zh_CN: 欲查看更多,[请查看我们的社群准则](/guidelines)。此信息面板只会在你发表前 %{education_posts_text} 时显示。 avatar: | - ### 给你的账户设置头像如何? + ### 想更改你的头像吗? - 你已经发表了一些主题和回复,但是你的个人头像并不像你一样独特——只是一些字母而已。 + 你已经发表和回复了几个主题,但你的头像并不像你自己一样独一无二 – 它仅仅是一个字母. - 你考虑过**[访问你的用户页面](%{profile_path})**,再上传一个代表你的图片? + 你想过更改你的头像 **[查看你的个人资料](%{profile_path})** 并上传一张代表你自己的照片吗? - 当所有人都有独特的头像时,这会让专注讨论和找到有趣的人更加轻松。 + 如果每个人都有自己独特的头像会让人更加容易参与讨论和发现有趣的人! sequential_replies: | - ### 考虑一次性回复多个帖子 + ### 考虑只回复帖子一次 - 与其接连回复主题几次,不如在一个回复中引用相关内容或者@用户名引用前面的帖子。 + 与其回复主题多次,不如只回复一次,包括引用前面的帖子或者@用户名。 - 你可以编辑你之前的回复以添加引用。添加引用需要选择文字并且点击出现的引用回复按钮。 + 你可以在你的回复中添加引用。只要选择你想引用的文字,然后点击随后出现的引用回复按钮。 - 当主题中的帖子的内容不是多个小且独立的回复,而是更少的更有深度的帖子时,我们会更认真地阅读这个主题。 + 这样其它人会更容易地看一个长的回复,而不是多个分开的回复。 dominating_topic: | - ### 让其他人加入讨论 + ### 让其他人参与讨论 - 很明显这个主题对你很重要 – 你已经发表的帖子占该主题 %{percent}% 的回复。 + 很明显这个主题对你很重要 – 你发表了占该主题 %{percent}% 的回复。 - 你有让其他人自由地表达他们的观点了吗? + 你有让其他人有足够地时间像你一样表达他们的观点了吗? too_many_replies: | - ### 你发表的回复数量已经达到该主题的回复上限。 + ### 你发表的回复数量已经达到了上限。 - 非常抱歉,但新用户被临时限制,只能在同一主题中回复 %{newuser_max_replies_per_topic} 次。 + 非常抱歉,但新用户被限制只能在同一主题中回复 %{newuser_max_replies_per_topic} 次。 - 想要添加另一个回复不如考虑编辑原先的回复或访问其他主题。 + 与其添加另一个回复不如考虑编辑你以前的回复,或访问其他主题。 reviving_old_topic: | - ### 复活这个主题? + ### 重新激活这个主题? 这个主题的最后一个回复距今已有 %{days} 天了。你的回复将让主题重新出现在列表的顶端并通知原先参与讨论的人。 @@ -296,6 +295,7 @@ zh_CN: same_as_username: "与你的用户名相同。请使用一个更安全的密码。" same_as_email: "与你的邮件地址相同。请使用一个更安全的密码。" same_as_current: "和你当前的密码相同" + unique_characters: "包含太多重复的字符。请使用一个更安全的密码。" ip_address: signup_not_allowed: "不能使用这个账户登录。" color_scheme_color: @@ -472,7 +472,6 @@ zh_CN: title: '重置密码' success: "你的密码已经修改成功,你现在已经登录。" success_unapproved: "你的密码已经修改成功。" - continue: "转入到 %{site_name}" change_email: confirmed: "你的电子邮箱已被更新。" please_continue: "转入到%{site_name}" @@ -743,8 +742,6 @@ zh_CN: facebook_config_warning: '服务器允许使用 Facebook 账号登录(enable_facebook_logins),但是 app id 和 app secret 没有被设定。 到站点设置更新此设定。参考设定指南。' twitter_config_warning: '服务器允许使用 Twitter 账号登录(enable_twitter_logins),但是 key 和 secret 没有被设定。 到站点设置更新此设定。参考设定指南。' github_config_warning: '服务器允许使用 GitHub 账号登录(enable_github_logins),但是 client id 和 secret 没有被设定。 到站点设置更新此设定。参考设定指南。' - s3_config_warning: '服务器被配置为上传文件到 s3,但是至少有一个值未被设定: s3_access_key_id, s3_secret_access_key 或 s3_upload_bucket。到站点设置更新此设定。参考如何设置图片上传至 S3。' - s3_backup_config_warning: '服务器被配置为上传备份到 s3,但是至少有一个值未被设定: s3_access_key_id, s3_secret_access_key 或 s3_upload_bucket。到站点设置更新此设定。参考如何设置图片上传至 S3。' image_magick_warning: '服务器被设置为给大图片创建缩略图,但是 ImageMagick 没有被安装。用你最喜爱的包管理器安装 ImageMagick 或下载最新版。' failing_emails_warning: '有 %{num_failed_jobs} 个邮件任务失败。请检查 app.yml 文件是否正确配置了邮件服务器。查看 Sidekiq 中失败的任务。' subfolder_ends_in_slash: "你的子目录设置不正确;DISCOURSE_RELATIVE_URL_ROOT以斜杠结尾。" @@ -795,7 +792,6 @@ zh_CN: max_image_width: "帖子中图片允许的最大缩略图宽度" max_image_height: "帖子中图片允许的最大缩略图宽度" category_featured_topics: "在分类 /categories 页面中每个分类显示的主题数目。在修改这个值之后,分类页面需要 15 分钟后完成更新。" - show_subcategory_list: "进入分类时显示子分类列表而不是主题列表。" fixed_category_positions: "如果选择,你将可以设置一个固定的分类顺序。如果不选择,分类将按照活动的顺序显示。" fixed_category_positions_on_create: "如果选择了,目录排序将会在话题创建对话框中被包含(要求固定目录位置选项)" add_rel_nofollow_to_user_content: "添加 rel nofollow 属性到所有的用户内容,除了内部链接(包括父域名)。如果你更改了这个,你必须重新调制所有帖子,以该命令:“rake posts:rebake”" @@ -890,11 +886,10 @@ zh_CN: invite_passthrough_hours: "用户多久才能使用一个已经使用过的邀请代码,以小时计" invite_only: "公开注册已禁用,新用户必须被其他成员或管理人员邀请。" login_required: "需要验证才能继续在该站阅读,不允许匿名访问。" - min_username_length: "最小用户名长度。" - max_username_length: "最大用户名长度。" reserved_usernames: "注册时不可使用的用户名。" min_password_length: "最小密码长度。" min_admin_password_length: "管理员最短密码长度" + password_unique_characters: "密码中必须包含几个不同的字符。" block_common_passwords: "不允许使用 10,000 个最常用的密码。" enable_sso: "启用通过外部站点单点登录(警告:用户的邮件地址必须被外部站点验证!)" verbose_sso_logging: "将 SSO 日志详情记录至 /logs" @@ -957,6 +952,8 @@ zh_CN: max_private_messages_per_day: "每个用户每天能发消息数量的最大值。" max_invites_per_day: "每个用户每天能创建的邀请数量的最大值。" max_topic_invitations_per_day: "每个用户每天能创建的邀请至主题数量的最大值。" + max_logins_per_ip_per_hour: "一小时内同一个IP(网络)地址能允许最大的登陆次数。" + max_logins_per_ip_per_minute: "一分钟内同一个IP(网络)地址能允许最大的登陆次数。" alert_admins_if_errors_per_minute: "激活管理员警告的每分钟错误的数量。0 会禁用这个特性。注意:需要重启。" alert_admins_if_errors_per_hour: "激活管理员警告的每小时错误的数量。0 会禁用这个特性。注意:需要重启。" categories_topics: "/categories 页面中显示的主题数。" @@ -1131,7 +1128,7 @@ zh_CN: digest_posts: "邮件摘要中显示的最流行帖子的数量。" digest_other_topics: "邮件摘要中“你关注的主题和分类中的新内容”栏目显示的主题数目上限。" digest_min_excerpt_length: "邮件摘要中显示的帖子摘要字符数下限。" - delete_digest_email_after_days: "不发送摘要邮件给超过(n)天没访问的用户。" + suppress_digest_email_after_days: "停止给(n)天未登陆网站的用户发送摘要邮件。" digest_suppress_categories: "不在摘要邮件中显示这些分类的内容。" disable_digest_emails: "禁用所有用户摘要邮件功能。" email_accent_bg_color: "HTML 邮件中某些元素的背景使用的强调颜色。输入色彩名(“red”)或十六进制值(“#FF0000”)。" @@ -1187,7 +1184,6 @@ zh_CN: show_create_topics_notice: "如果站点只有少于 5 篇的公开帖子时,显示一条请管理员创建帖子的提示。" delete_drafts_older_than_n_days: 删除超过 n 天得草稿。 bootstrap_mode_min_users: "禁用摘要模式的用户数下限(0 为禁用)。" - vacuum_db_days: "在数据库迁移后使用完整扫描回收数据库空间(设置 0 为禁用)" prevent_anons_from_downloading_files: "禁止匿名用户下载附件。警告:这将禁止他们访问任何发表在帖子中的非图片资源。" slug_generation_method: "选择一个链接生成方式。“encoded”将生成以百分号编码的链接。“none”将禁用自定义链接,只生成默认链接。" enable_emoji: "启用绘文字(emoji)" @@ -1368,7 +1364,7 @@ zh_CN: short: "必须超过 %{min} 个字" long: "必须不超过 %{max} 个字" characters: "必须只包含字母、数字和下划线" - unique: "必须是唯一的" + unique: "已被使用" blank: "必须存在" must_begin_with_alphanumeric_or_underscore: "必须以字母、数字或下划线开头" must_end_with_alphanumeric: "必须以字母或数字结尾" @@ -1400,44 +1396,8 @@ zh_CN: 如果你想要继续接受邮件更新,你可以忽略这封邮件。 invite_mailer: subject_template: "%{invitee_name} 邀请你参与 %{site_domain_name} 主题 '%{topic_title}' " - text_body_template: | - %{invitee_name} 邀请你参与讨论 - - > **%{topic_title}** - > - > %{topic_excerpt} - - 位于站点 - - > %{site_title} -- %{site_description} - - 如果你有兴趣,点击下面的链接: - - %{invite_link} - - 这封邀请来组于受信任的用户,所以你可以立即回复。 custom_invite_mailer: subject_template: "%{invitee_name}邀请你'%{topic_title}'在%{site_domain_name}" - text_body_template: | - %{invitee_name}邀请你参与 - - > %{site_title} -- %{site_description} - - 中的 - - > **%{topic_title}** - > - > %{topic_excerpt} - - %{invitee_name}的留言: - - %{user_custom_message} - - 如果你有兴趣,点击下面的链接: - - %{invite_link} - - 这封邀请发自受信任的用户,所以你可以立即回复主题。 invite_forum_mailer: subject_template: "%{invitee_name} 邀请你加入 %{site_domain_name}" custom_invite_forum_mailer: @@ -1576,8 +1536,10 @@ zh_CN: (如果你在新用户级别需要和[管理人员](%{base_url}/about)沟通的话,直接回复这个消息。) welcome_invite: + title: "欢迎邀请" subject_template: "欢迎来到 %{site_name}!" backup_succeeded: + title: "备份成功" subject_template: "备份成功完成" text_body_template: | 备份成功。 @@ -1836,6 +1798,7 @@ zh_CN: 该阈值可以通过站点设置中的 `newuser_spam_host_threshold` 和 `white_listed_spam_host_domains` 更改。 unblocked: + title: "解锁" subject_template: "账户已解除封禁" text_body_template: | 你好, @@ -1851,9 +1814,11 @@ zh_CN: [请在管理栏目中审核他们](%{base_url}/admin/users/list/pending)。 download_remote_images_disabled: + title: "已被禁止下载远程图片" subject_template: "远程图片下载已禁用。" text_body_template: "`download_remote_images_to_local` 设定已被禁用,因为已经达到 ``download_remote_images_threshold` 设定中的磁盘空间限制。" dashboard_problems: + title: "管理面板问题" subject_template: "发现问题了" text_body_template: | 系统在管理员面板中报告了发现的问题。 @@ -2035,7 +2000,6 @@ zh_CN: follow_topic: "关注主题" join_the_discussion: "阅读更多" popular_posts: "流行帖子" - from_topic_label: "来自" more_new: "你关注的新帖" subject_template: "[%{site_name}] 摘要" unsubscribe: "这是封来自%{site_link}的摘要邮件,因为你长时间没有访问而发送。%{unsubscribe_link}取消订阅。" @@ -2062,6 +2026,7 @@ zh_CN: 点击下面的链接来选择一个新密码: %{base_url}/users/password-reset/%{email_token} set_password: + title: "设置密码" subject_template: "[%{site_name}] 设置密码" text_body_template: | 有人请求添加你在 [%{site_name}](%{base_url}) 的密码。除此之外,你可以通过已验证过你邮件地址的在线服务商登录。 @@ -2071,6 +2036,7 @@ zh_CN: 点击下面的链接来选择一个新密码: %{base_url}/users/password-reset/%{email_token} admin_login: + title: "管理员登陆" subject_template: "[%{site_name}]登录" text_body_template: | 有人尝试登录你在[%{site_name}](%{base_url})的账户。 @@ -2080,6 +2046,7 @@ zh_CN: 点击下面的链接登录: %{base_url}/users/admin-login/%{email_token} account_created: + title: "帐号已创建" subject_template: "[%{site_name}] 你的新帐号" text_body_template: | 你在 %{site_name} 上建立了一个新账号 @@ -2087,12 +2054,14 @@ zh_CN: 点击下面的链接来为新账户设置密码: %{base_url}/users/password-reset/%{email_token} confirm_new_email: + title: "确认新邮箱" subject_template: "[%{site_name}] 确认你的新电子邮箱地址" text_body_template: | 点击下面的链接来确认你在%{site_name}上的新电子邮箱地址: %{base_url}/users/authorize-email/%{email_token} confirm_old_email: + title: "确认旧邮箱" subject_template: "[%{site_name}] 确认你的新电子邮箱地址" text_body_template: | 在我们修改你的邮箱地址前,我们需要你确认你拥有当前的邮件账号。在你完成这步之后,我们将确认你的新邮件地址。 @@ -2101,6 +2070,7 @@ zh_CN: %{base_url}/users/authorize-email/%{email_token} notify_old_email: + title: "通知旧邮箱" subject_template: "[%{site_name}] 你的邮箱地址已经修改成功" text_body_template: | 这是%{site_name}自动发出的邮件,以告知你的邮箱地址已经被修改了。如果这是一个错误,请联系站点管理人员。 @@ -2109,6 +2079,7 @@ zh_CN: %{new_email} signup_after_approval: + title: "在审批之后注册" subject_template: "你已经被 %{site_name} 论坛批准加入了!" text_body_template: | 欢迎加入%{site_name}! @@ -2162,6 +2133,7 @@ zh_CN: too_large: "抱歉,你试图上传的文件太大了(最大限制为%{max_size_kb}%KB)。" images: too_large: "抱歉,你试图上传的图片太大了(最大限制为%{max_size_kb}%KB),请裁剪它并重试。" + larger_than_x_megapixels: "对不起,你上传的图片太大(最大支持%{max_image_megapixels}像素),请缩小图片然后再试一次。" size_not_found: "抱歉,我们无法获取图片大小,请检查你的图片是否已损坏。" avatar: missing: "抱歉,我们没法找到与你邮件地址关联的头像。你能再上传一次试试吗?" @@ -2744,8 +2716,6 @@ zh_CN: performance_report: initial_post_raw: 这个主题将用来展示网站每日性能报告。 initial_topic_title: 网站性能报告 - topic_invite: - user_exists: "抱歉,用户已经被邀请了。你可能只想邀请用户参与主题一次。" tags: title: "标签" staff_tag_disallowed: "“%{tag}”只可由管理人员使用。" @@ -2794,9 +2764,11 @@ zh_CN: fields: welcome: label: "欢迎主题" + description: "

      你如何向一个在电梯里的陌生人用一分钟时间介绍你的社群?

      • 谁会参与讨论?
      • 我在这里能找到些什么?
      • 为什么我要来这里?

      你的欢迎主题是初来者首先所需要阅读的。 把它当成你的 一句话 '电梯游说' 或 ' 使命陈述'。

      " one_paragraph: "请限制你的欢迎消息至一段话。" privacy: title: "访问" + description: "

      你的社群是对所有人公开开放吗?还是需要邀请/审批?你可以先做一些设置工作,以后再对所有人开放.

      你同样也可以从主题或用户个人资料页面来发送邀请。

      " fields: privacy: choices: @@ -2836,6 +2808,7 @@ zh_CN: title: "主题" fields: theme_id: + description: "你想喜欢白色还是深色的界面?你可以以后在\"管理员/定制”界面更改这个设置。" choices: default: label: "简洁亮" @@ -2860,6 +2833,7 @@ zh_CN: label: "大图标" description: "现代设备中你站点显示的图标,要在大一点尺寸的情况下表现出色。推荐的尺寸至少要达到144px X 144px。" homepage: + description: "我们建议你在主页显示最后发点的主题,但你也可以选择在主页显示主题分类列表。" title: "主页" fields: homepage_style: @@ -2870,6 +2844,7 @@ zh_CN: label: "分类" emoji: title: "Emoji" + description: "你想使用哪种样式的表情符号?你可以以后在\"管理员/定制/表情符号(Emoji)\"界面增加更多定制的表情符号。" invites: title: "邀请管理人员" description: "你快做完啦!让我们邀请一些工作人员来帮助你创建一些讨论主题以方便你发布社群。" diff --git a/config/locales/server.zh_TW.yml b/config/locales/server.zh_TW.yml index df8a1b6aa5..9e672ace37 100644 --- a/config/locales/server.zh_TW.yml +++ b/config/locales/server.zh_TW.yml @@ -105,7 +105,6 @@ zh_TW: default_categories_already_selected: "不能選擇一個已經用於另一個列表的分類。" s3_upload_bucket_is_required: "你沒有填寫“s3_upload_bucket”,不能開啟上傳至 S3。" invite: - accept_invite: "接受邀請" not_found: "您的邀請碼無效。請聯絡管理人員。" bulk_invite: file_should_be_csv: "上傳的檔案必須是 CSV 格式。" @@ -223,49 +222,24 @@ zh_TW: 更多的幫助信息,[請查看我們的社群準則](/guidelines)。此信息面板只在你發佈前 %{education_posts_text}時顯示。 new-reply: | - 歡迎來到%{site_name} — **感謝你的貢獻!** + 歡迎來到 %{site_name} — **感謝你的參與!** - - 你的回覆是否以某種方式改善了討論? + - 你的回應是否以某些方式改善了討論? - - 請尊重所有社群成員。 + - 務必尊重所有社群成員。 - - 歡迎有建設性的評論,但是評論的應該是觀點,而不是人身攻擊。 + - 歡迎有建設性的評論,但論述時請針對觀點,而別針對個人。 - 欲查看更多,[請查看我們的社群守則](/guidelines)。此訊息面板只會在你發表前 %{education_posts_text} 時顯示。 + [請查看我們的社群守則](/guidelines)以進一步了解。(此訊息只會在你發表 %{education_posts_text} 時顯示) avatar: | - ### 給你的賬戶設置頭像如何? + ### 來個大頭貼吧! - 你已經發表了一些主題和回覆,但是你的個人頭像並不像你一樣獨特——只是一些字母而已。 + 你剛參與了幾個討論話題及回覆,不過你的個人頭像不像你一般獨一無二 + - 因為只有一個字! - 你考慮過**[訪問你的用戶頁面](%{profile_path})**,再上傳一個代表你的圖片? + **[造訪個人檔案](%{profile_path})** 並上傳代表你的頭像吧! - 當所有人都有獨特的頭像時,這會讓專注討論和找到有趣的人更加輕鬆。 - sequential_replies: | - ### 考慮一次性回覆多個帖子 - - 與其接連回覆主題幾次,不如在一個回覆中引用相關內容或者@用戶名引用前面的帖子。 - - 你可以編輯你之前的回覆以添加引用。添加引用需要選擇文字並且點擊出現的引用回覆按鈕。 - - 當主題中的帖子的內容不是多個小且獨立的回覆,而是更少的更有深度的帖子時,我們會更認真地閲讀這個主題。 - dominating_topic: | - ### 讓其他人加入討論 - - 很明顯這個主題對你很重要 – 你已經發表的帖子占該主題 %{percent}% 的回覆。 - - 你有讓其他人自由地表達他們的觀點了嗎? - too_many_replies: | - ### 你發表的回覆數量已經達到該主題的回覆上限。 - - 非常抱歉,但新用戶被臨時限制,只能在同一主題中回覆 %{newuser_max_replies_per_topic} 次。 - - 想要添加另一個回覆不如考慮編輯原先的回覆或訪問其他主題。 - reviving_old_topic: | - ### 復活這個主題? - - 這個主題的最後一個回覆距今已有 %{days} 天了。你的回覆將讓主題重新出現在列表的頂端並通知原先參與討論的人。 - - 你確定要繼續這個老的話題嗎? + 當每個人都有獨特的頭像時,大家能更容易的關注討論內容,以及找到對話中有趣的使用者! activerecord: attributes: category: @@ -472,7 +446,6 @@ zh_TW: title: '重設密碼' success: "密碼修改成功,現在已為你登入。" success_unapproved: "你的密碼已成功修改。" - continue: "繼續連接至 %{site_name}" change_email: confirmed: "你的電子郵箱已更新。" please_continue: "繼續連接至 %{site_name}" @@ -743,8 +716,6 @@ zh_TW: facebook_config_warning: '伺服器允許使用 Facebook 帳號登入 (enable_facebook_logins), 但未有設定 app id 及 app secret values 。 請在 網站設定 裡更改設定。 設定教學指南。' twitter_config_warning: '伺服器允許使用 Twitter 帳號登入 (enable_twitter_logins), 但未有設定 key 和 secret values 。 請在 網站設定 裡更改設定。 設定教學指南。' github_config_warning: '伺服器允許使用 GitHub 帳號登入 (enable_github_logins), 但未有設定 client id 和 secret values。 請在 網站設定 裡更改設定。 設定教學指南。' - s3_config_warning: '伺服器被設定為上傳文件到 s3,但是至少有一個值未被設定: s3_access_key_id, s3_secret_access_key 或 s3_upload_bucket。到設定更新此設定。參考如何設置圖片上傳至 S3。' - s3_backup_config_warning: '伺服器被設置為上傳備份到 s3,但是至少有一個值未被設定: s3_access_key_id, s3_secret_access_key 或 s3_upload_bucket。到設定更新此設定。參考如何設置圖片上傳至 S3。' image_magick_warning: '伺服器被設置為給大圖片創建縮略圖,但是 ImageMagick 沒有被安裝。使用你喜愛的包裝管理器安裝 ImageMagick 或下載最新版。' failing_emails_warning: '有 %{num_failed_jobs} 個郵件任務失敗。請檢查 app.yml 檔案是否正確配置了郵件伺服器。查看 Sidekiq 中失敗的任務。' subfolder_ends_in_slash: "你的子目錄設置不正確;DISCOURSE_RELATIVE_URL_ROOT以斜杠結尾。" @@ -795,7 +766,6 @@ zh_TW: max_image_width: "文章中最大的縮圖寬度" max_image_height: "文章中的允許圖片最大的縮圖高度" category_featured_topics: "在分類 /categories 頁面每個分類顯示的討論話題數目。此數值的改變最多需要 15 分鐘才會反應在分類頁面上。" - show_subcategory_list: "進入分類時顯示子分類列表,而非話題列表" fixed_category_positions: "若勾選,你將能調整並固定分類的順序。若不勾選,分類將會依照活躍程度來排序。" fixed_category_positions_on_create: "如果選擇了,目錄排序將會在話題創建對話框中被包含(要求固定目錄位置選項)" add_rel_nofollow_to_user_content: "添加 rel nofollow 屬性到所有的用戶內容,除了內部鏈接(包括父域名)。如果你更改了這個,你必須重新調制所有帖子,而該命令為:“rake posts:rebake”" @@ -890,8 +860,6 @@ zh_TW: invite_passthrough_hours: "邀請號碼如已被使用,用戶仍可使用多少小時" invite_only: "已經禁止開放註冊,新的使用者必須取得其他用戶,或是管理員的邀請" login_required: "需要登入才能進入網站,不允許匿名操作" - min_username_length: "最少用戶名長度" - max_username_length: "最大用戶名長度" reserved_usernames: "註冊時不可使用的用戶名。" min_password_length: "最小密碼長度" min_admin_password_length: "管理員最短密碼長度" @@ -1079,12 +1047,12 @@ zh_TW: alternative_reply_by_email_addresses: "通過郵件回覆的回覆地址模板,例如:%{reply_key}@reply.example.com|replies+%{reply_key}@example.com" incoming_email_prefer_html: "對進站郵件優先使用 HTML 而不是純文字檔案。可能導致格式問題。" disable_emails: "禁止 Discourse 發送任何郵件" - strip_images_from_short_emails: "忽略郵件中小於 2800 位元組的圖片" + strip_images_from_short_emails: "郵件小於 2800 位元組時去除圖片" short_email_length: "短郵件地址長度(以比特作為單位)" display_name_on_email_from: "在郵件的來自欄顯示暱稱" - unsubscribe_via_email: "允許用戶在發送的郵件“退訂”來退訂郵件訂閲,“退訂”可在主題或正文中。" + unsubscribe_via_email: "允許用戶在發送的郵件「退訂」來退訂郵件訂閲,「退訂」可在主題或正文中。" unsubscribe_via_email_footer: "在發出的郵件底部包含退訂連結" - delete_email_logs_after_days: "在(N)天后刪除郵件日誌。設置為 0 無限期保留" + delete_email_logs_after_days: "在(N)天後刪除郵件日誌。設置為 0 無限期保留" max_emails_per_day_per_user: "每日發送給用戶的最大帖子數量。設置為 0 禁止限制" enable_staged_users: "處理進站郵件時自動創建暫存用戶。" maximum_staged_users_per_email: "處理進站郵件時可創建的最大暫存用戶量。" @@ -1131,7 +1099,6 @@ zh_TW: digest_posts: "郵件摘要中顯示的最流行帖子的數量。" digest_other_topics: "郵件摘要中“你關注的主題和分類中的新內容”欄目顯示的主題數目上限。" digest_min_excerpt_length: "郵件摘要中顯示的帖子摘要字元數下限。" - delete_digest_email_after_days: "不發送摘要郵件給超過(n)天沒訪問的用戶。" digest_suppress_categories: "不在摘要郵件中顯示這些分類的內容。" disable_digest_emails: "禁用所有用戶摘要郵件功能。" email_accent_bg_color: "HTML 郵件中某些元素的背景使用的強調顏色。輸入色彩名(“red”)或十六進制值(“#FF0000”)。" @@ -1187,7 +1154,6 @@ zh_TW: show_create_topics_notice: "如果網站的公開討論話題少於 5 個,顯示通知要求管理員建立一些討論話題。" delete_drafts_older_than_n_days: 刪除超過 n 天得草稿。 bootstrap_mode_min_users: "禁用摘要模式的用戶數下限(0 為禁用)。" - vacuum_db_days: "在資料庫遷移後使用完整掃瞄回收資料庫空間(設置 0 為禁用)" prevent_anons_from_downloading_files: "禁止匿名用戶下載附件。警告:這將禁止他們訪問任何發表在帖子中的非圖片資源。" slug_generation_method: "選擇一個連結生成方式。“encoded”將生成以百分號編碼的連結。“none”將禁用自定義連結,只生成預設連結。" enable_emoji: "啟用表情符號" @@ -1402,45 +1368,9 @@ zh_TW: invite_mailer: title: "邀請 Mailer" subject_template: "%{invitee_name} 邀請你參與在 %{site_domain_name} 討論的話題 '%{topic_title}'" - text_body_template: | - %{invitee_name} 邀請你參與討論 - - > **%{topic_title}** - > - > %{topic_excerpt} - - 位於站點 - - > %{site_title} -- %{site_description} - - 如果你有興趣,點擊下面的連結: - - %{invite_link} - - 這封邀請來組于受信任的用戶,所以你可以立即回覆。 custom_invite_mailer: title: "客製邀請 Mailer" subject_template: "%{invitee_name}邀請你'%{topic_title}'在%{site_domain_name}" - text_body_template: | - %{invitee_name}邀請你參與 - - > %{site_title} -- %{site_description} - - 中的 - - > **%{topic_title}** - > - > %{topic_excerpt} - - %{invitee_name}的留言: - - %{user_custom_message} - - 如果你有興趣,點擊下面的連結: - - %{invite_link} - - 這封邀請發自受信任的用戶,所以你可以立即回覆主題。 invite_forum_mailer: title: "邀請論壇 Mailer" subject_template: "%{invitee_name} 邀請你加入 %{site_domain_name}" @@ -1588,6 +1518,20 @@ zh_TW: welcome_invite: title: "歡迎邀請" subject_template: "歡迎來到 %{site_name}!" + text_body_template: | + 感謝你接受邀請加入 %{site_name} — 歡迎! + + - 我們已為你建立 **%{username}** 帳號。請到 [偏好設定][prefs] 頁面修改帳號名稱或密碼。 + + - 請使用與你的邀請信件 **相同的 email 信箱登入**,不然我們就不知道你來了! + + %{new_user_tips} + + 我們始終相信[社群參與指南守則](%{base_url}/guidelines) 。好好享受你在論壇的時光! + + (身為新的使用者,如果你需要聯絡[工作人員](%{base_url}/about),請直接回覆本訊息) + + [prefs]: %{user_preferences_url} backup_succeeded: title: "備份成功" subject_template: "備份成功完成" @@ -1652,12 +1596,6 @@ zh_TW: csv_export_succeeded: title: "CSV 檔匯出成功" subject_template: "資料匯出完成" - text_body_template: | - 數據成功導出!:dvd: - - %{file_name}(%{file_size}) - - 以上的下載連結將在 48 小時後失效。 csv_export_failed: title: "CSV 檔匯出失敗" subject_template: "資料匯出失敗" @@ -2083,7 +2021,6 @@ zh_TW: follow_topic: "關注主題" join_the_discussion: "閲讀更多" popular_posts: "流行帖子" - from_topic_label: "來自" more_new: "新內容" subject_template: "[%{site_name}] 摘要" unsubscribe: "這是封來自%{site_link}的摘要郵件,因為你長時間沒有訪問而發送。%{unsubscribe_link}取消訂閲。" @@ -2800,8 +2737,6 @@ zh_TW: performance_report: initial_post_raw: 這個主題將用來展示網站每日性能報告。 initial_topic_title: 網站效能報表 - topic_invite: - user_exists: "抱歉,用戶已經被邀請了。你可能只想邀請用戶參與主題一次。" tags: title: "標籤" staff_tag_disallowed: "“%{tag}”只可由管理人員使用。" diff --git a/config/locales/transliterate.vi.yml b/config/locales/transliterate.vi.yml index 7460eefa17..606ed3d052 100644 --- a/config/locales/transliterate.vi.yml +++ b/config/locales/transliterate.vi.yml @@ -143,6 +143,3 @@ vi: Ỷ: "Y" Ỹ: "Y" Đ: "D" - ê: "e" - ù: "u" - à: "a" diff --git a/config/nginx.sample.conf b/config/nginx.sample.conf index 4a3f659d20..c9eb893a7a 100644 --- a/config/nginx.sample.conf +++ b/config/nginx.sample.conf @@ -96,7 +96,7 @@ server { location ~* assets/.*\.(eot|ttf|woff|woff2|ico)$ { expires 1y; - add_header Cache-Control public; + add_header Cache-Control public,immutable; add_header Access-Control-Allow-Origin *; } @@ -116,20 +116,20 @@ server { # asset pipeline enables this # brotli_static on; gzip_static on; - add_header Cache-Control public; + add_header Cache-Control public,immutable; # TODO I don't think this break is needed, it just breaks out of rewrite break; } location ~ ^/plugins/ { expires 1y; - add_header Cache-Control public; + add_header Cache-Control public,immutable; } # cache emojis location ~ /_?emoji.*\.(png|gif|jpg|jpeg)$/ { expires 1y; - add_header Cache-Control public; + add_header Cache-Control public,immutable; } location ~ ^/uploads/ { @@ -146,7 +146,7 @@ server { proxy_set_header X-Sendfile-Type X-Accel-Redirect; proxy_set_header X-Accel-Mapping $public/=/downloads/; expires 1y; - add_header Cache-Control public; + add_header Cache-Control public,immutable; ## optional upload anti-hotlinking rules #valid_referers none blocked mysite.com *.mysite.com; diff --git a/config/routes.rb b/config/routes.rb index 3f1a5be6c7..fc53ffb18f 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -26,7 +26,7 @@ Discourse::Application.routes.draw do mount Sidekiq::Web => "/sidekiq" mount Logster::Web => "/logs" else - # only allow sidekie in master site + # only allow sidekiq in master site mount Sidekiq::Web => "/sidekiq", constraints: AdminConstraint.new(require_master: true) mount Logster::Web => "/logs", constraints: AdminConstraint.new end @@ -150,6 +150,7 @@ Discourse::Application.routes.draw do get "rejected" get "/incoming/:id/raw" => "email#raw_email" get "/incoming/:id" => "email#incoming" + get "/incoming_from_bounced/:id" => "email#incoming_from_bounced" get "preview-digest" => "email#preview_digest" get "send-digest" => "email#send_digest" post "handle_mail" @@ -232,6 +233,7 @@ Discourse::Application.routes.draw do resources :backups, only: [:index, :create], constraints: AdminConstraint.new do member do get "" => "backups#show", constraints: { id: BACKUP_ROUTE_FORMAT } + put "" => "backups#email", constraints: { id: BACKUP_ROUTE_FORMAT } delete "" => "backups#destroy", constraints: { id: BACKUP_ROUTE_FORMAT } post "restore" => "backups#restore", constraints: { id: BACKUP_ROUTE_FORMAT } end @@ -490,7 +492,7 @@ Discourse::Application.routes.draw do get "c/:parent_category_slug/:category_slug/find_by_slug" => "categories#find_by_slug" get "c/:category.rss" => "list#category_feed", format: :rss get "c/:parent_category/:category.rss" => "list#category_feed", format: :rss - get "c/:category" => "list#category_latest" + get "c/:category" => "list#category_default", as: "category_default" get "c/:category/none" => "list#category_none_latest" get "c/:parent_category/:category/(:id)" => "list#parent_category_category_latest", constraints: { id: /\d+/ } get "c/:category/l/top" => "list#category_top", as: "category_top" diff --git a/config/site_settings.yml b/config/site_settings.yml index c735fce0df..1fbc412056 100644 --- a/config/site_settings.yml +++ b/config/site_settings.yml @@ -204,19 +204,12 @@ basic: - monthly - weekly - daily - category_featured_topics: - client: true - default: 3 - min: 1 fixed_category_positions: client: true default: false fixed_category_positions_on_create: client: true default: false - show_subcategory_list: - default: false - client: true enable_badges: client: true default: true @@ -348,13 +341,13 @@ users: min_password_length: client: true default: 10 - min: 1 + min: 8 min_admin_password_length: client: true default: 15 - min: 1 + min: 8 password_unique_characters: - default: 5 + default: 6 min: 1 block_common_passwords: true enforce_global_nicknames: @@ -899,6 +892,14 @@ security: force_https: default: false shadowed_by_global: true + same_site_cookies: + default: Lax + type: enum + choices: + - Lax + - Strict + - Disabled + regex: '^(Lax|Strict|Disabled)$' enable_escaped_fragments: true allow_index_in_robots_txt: true enable_noscript_support: true @@ -983,6 +984,14 @@ rate_limits: max_prints_per_hour_per_user: default: 5 client: true + max_logins_per_ip_per_hour: + min: 1 + max: 20000 + default: 30 + max_logins_per_ip_per_minute: + min: 1 + max: 20000 + default: 6 developer: force_hostname: @@ -1261,11 +1270,6 @@ uncategorized: disable_edit_notifications: false - vacuum_db_days: 90 - last_vacuum: - default: 0 - hidden: true - delete_drafts_older_than_n_days: default: 180 min: 0 diff --git a/db/fixtures/006_badges.rb b/db/fixtures/006_badges.rb index f0d877e9cc..bccee60e10 100644 --- a/db/fixtures/006_badges.rb +++ b/db/fixtures/006_badges.rb @@ -31,32 +31,31 @@ BadgeGrouping.seed do |g| end # BUGFIX -Badge.exec_sql "UPDATE badges - SET badge_grouping_id = -1 - WHERE NOT EXISTS ( - SELECT 1 FROM badge_groupings g - WHERE g.id = badge_grouping_id - ) OR (id < 100 AND badge_grouping_id = #{BadgeGrouping::Other} )" +Badge.exec_sql <<-SQL.squish + UPDATE badges + SET badge_grouping_id = -1 + WHERE NOT EXISTS ( + SELECT 1 + FROM badge_groupings g + WHERE g.id = badge_grouping_id + ) OR (id < 100 AND badge_grouping_id = #{BadgeGrouping::Other}) +SQL -# Trust level system badges. -trust_level_badges = [ - {id: 1, name: "Basic User", type: BadgeType::Bronze}, - {id: 2, name: "Member", type: BadgeType::Bronze}, - {id: 3, name: "Regular", type: BadgeType::Silver}, - {id: 4, name: "Leader", type: BadgeType::Gold} -] - -trust_level_badges.each do |spec| +[ + [Badge::BasicUser, "Basic User", BadgeType::Bronze], + [Badge::Member, "Member", BadgeType::Bronze], + [Badge::Regular, "Regular", BadgeType::Silver], + [Badge::Leader, "Leader", BadgeType::Gold], +].each do |id, name, type| Badge.seed do |b| - b.id = spec[:id] - b.default_name = spec[:name] - b.badge_type_id = spec[:type] - b.query = BadgeQueries.trust_level(spec[:id]) + b.id = id + b.name = name + b.badge_type_id = type + b.query = BadgeQueries.trust_level(id) b.default_badge_grouping_id = BadgeGrouping::TrustLevel b.trigger = Badge::Trigger::TrustLevelChange - # allow title for tl3 and above - b.default_allow_title = spec[:id] > 2 + b.default_allow_title = id > 2 b.default_icon = "fa-user" b.system = true end @@ -64,7 +63,7 @@ end Badge.seed do |b| b.id = Badge::Reader - b.default_name = "Reader" + b.name = "Reader" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = false @@ -77,7 +76,7 @@ end Badge.seed do |b| b.id = Badge::ReadGuidelines - b.default_name = "Read Guidelines" + b.name = "Read Guidelines" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = false @@ -90,7 +89,7 @@ end Badge.seed do |b| b.id = Badge::FirstLink - b.default_name = "First Link" + b.name = "First Link" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -103,7 +102,7 @@ end Badge.seed do |b| b.id = Badge::FirstQuote - b.default_name = "First Quote" + b.name = "First Quote" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -116,7 +115,7 @@ end Badge.seed do |b| b.id = Badge::FirstLike - b.default_name = "First Like" + b.name = "First Like" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -129,7 +128,7 @@ end Badge.seed do |b| b.id = Badge::FirstFlag - b.default_name = "First Flag" + b.name = "First Flag" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -149,7 +148,7 @@ end ].each do |id, name, type, count, trust_level| Badge.seed do |b| b.id = id - b.default_name = name + b.name = name b.default_icon = "fa-user-plus" b.badge_type_id = type b.multiple_grant = false @@ -166,7 +165,7 @@ end Badge.seed do |b| b.id = Badge::FirstShare - b.default_name = "First Share" + b.name = "First Share" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -182,12 +181,10 @@ end [Badge::NiceShare, "Nice Share", BadgeType::Bronze, 25], [Badge::GoodShare, "Good Share", BadgeType::Silver, 300], [Badge::GreatShare, "Great Share", BadgeType::Gold, 1000], -].each do |spec| - - id, name, level, count = spec +].each do |id, name, level, count| Badge.seed do |b| b.id = id - b.default_name = name + b.name = name b.badge_type_id = level b.multiple_grant = true b.target_posts = true @@ -202,7 +199,7 @@ end Badge.seed do |b| b.id = Badge::Welcome - b.default_name = "Welcome" + b.name = "Welcome" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -215,7 +212,7 @@ end Badge.seed do |b| b.id = Badge::Autobiographer - b.default_name = "Autobiographer" + b.name = "Autobiographer" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.query = BadgeQueries::Autobiographer @@ -226,7 +223,7 @@ end Badge.seed do |b| b.id = Badge::Editor - b.default_name = "Editor" + b.name = "Editor" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.query = BadgeQueries::Editor @@ -236,26 +233,22 @@ Badge.seed do |b| b.system = true end -# -# Like system badges. -like_badges = [ - {id: Badge::NicePost, name: "Nice Post", type: BadgeType::Bronze}, - {id: Badge::GoodPost, name: "Good Post", type: BadgeType::Silver}, - {id: Badge::GreatPost, name: "Great Post", type: BadgeType::Gold}, - {id: Badge::NiceTopic, name: "Nice Topic", type: BadgeType::Bronze, topic: true}, - {id: Badge::GoodTopic, name: "Good Topic", type: BadgeType::Silver, topic: true}, - {id: Badge::GreatTopic, name: "Great Topic", type: BadgeType::Gold, topic: true} -] - -like_badges.each do |spec| +[ + [Badge::NicePost, "Nice Post", BadgeType::Bronze, false], + [Badge::GoodPost, "Good Post", BadgeType::Silver, false], + [Badge::GreatPost, "Great Post", BadgeType::Gold, false], + [Badge::NiceTopic, "Nice Topic", BadgeType::Bronze, true], + [Badge::GoodTopic, "Good Topic", BadgeType::Silver, true], + [Badge::GreatTopic, "Great Topic", BadgeType::Gold, true], +].each do |id, name, type, topic| Badge.seed do |b| - b.id = spec[:id] - b.default_name = spec[:name] - b.badge_type_id = spec[:type] + b.id = id + b.name = name + b.badge_type_id = type b.multiple_grant = true b.target_posts = true b.show_posts = true - b.query = BadgeQueries.like_badge(Badge.like_badge_counts[spec[:id]], spec[:topic]) + b.query = BadgeQueries.like_badge(Badge.like_badge_counts[id], topic) b.default_badge_grouping_id = BadgeGrouping::Posting b.trigger = Badge::Trigger::PostAction b.system = true @@ -264,7 +257,7 @@ end Badge.seed do |b| b.id = Badge::OneYearAnniversary - b.default_name = "Anniversary" + b.name = "Anniversary" b.default_icon = "fa-clock-o" b.badge_type_id = BadgeType::Silver b.query = BadgeQueries::OneYearAnniversary @@ -278,11 +271,10 @@ end [Badge::PopularLink, "Popular Link", BadgeType::Bronze, 50], [Badge::HotLink, "Hot Link", BadgeType::Silver, 300], [Badge::FamousLink, "Famous Link", BadgeType::Gold, 1000], -].each do |spec| - id, name, level, count = spec +].each do |id, name, level, count| Badge.seed do |b| b.id = id - b.default_name = name + b.name = name b.badge_type_id = level b.multiple_grant = true b.target_posts = true @@ -300,12 +292,10 @@ end [Badge::Appreciated, "Appreciated", BadgeType::Bronze, 1, 20], [Badge::Respected, "Respected", BadgeType::Silver, 2, 100], [Badge::Admired, "Admired", BadgeType::Gold, 5, 300], -].each do |spec| - id, name, level, like_count, post_count = spec +].each do |id, name, level, like_count, post_count| Badge.seed do |b| b.id = id b.name = name - b.default_name = name b.default_icon = "fa-heart" b.badge_type_id = level b.query = BadgeQueries.liked_posts(post_count, like_count) @@ -321,11 +311,10 @@ end [Badge::ThankYou, "Thank You", BadgeType::Bronze, 20, 10], [Badge::GivesBack, "Gives Back", BadgeType::Silver, 100, 100], [Badge::Empathetic, "Empathetic", BadgeType::Gold, 500, 1000] -].each do |spec| - id, name, level, count, ratio = spec +].each do |id, name, level, count, ratio| Badge.seed do |b| b.id = id - b.default_name = name + b.name = name b.default_icon = "fa-heart" b.badge_type_id = level b.query = BadgeQueries.liked_back(count, ratio) @@ -341,12 +330,10 @@ end [Badge::OutOfLove, "Out of Love", BadgeType::Bronze, 1], [Badge::HigherLove, "Higher Love", BadgeType::Silver, 5], [Badge::CrazyInLove, "Crazy in Love", BadgeType::Gold, 20], -].each do |spec| - id, name, level, count = spec +].each do |id, name, level, count| Badge.seed do |b| b.id = id b.name = name - b.default_name = name b.default_icon = "fa-heart" b.badge_type_id = level b.query = BadgeQueries.like_rate_limit(count) @@ -360,7 +347,7 @@ end Badge.seed do |b| b.id = Badge::FirstMention - b.default_name = "First Mention" + b.name = "First Mention" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -374,7 +361,7 @@ end Badge.seed do |b| b.id = Badge::FirstEmoji - b.default_name = "First Emoji" + b.name = "First Emoji" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -388,7 +375,7 @@ end Badge.seed do |b| b.id = Badge::FirstOnebox - b.default_name = "First Onebox" + b.name = "First Onebox" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true @@ -402,7 +389,7 @@ end Badge.seed do |b| b.id = Badge::FirstReplyByEmail - b.default_name = "First Reply By Email" + b.name = "First Reply By Email" b.badge_type_id = BadgeType::Bronze b.multiple_grant = false b.target_posts = true diff --git a/db/migrate/20170215151505_add_seen_at_to_user_auth_token.rb b/db/migrate/20170215151505_add_seen_at_to_user_auth_token.rb new file mode 100644 index 0000000000..c3ae6c2ef1 --- /dev/null +++ b/db/migrate/20170215151505_add_seen_at_to_user_auth_token.rb @@ -0,0 +1,10 @@ +class AddSeenAtToUserAuthToken < ActiveRecord::Migration + def up + add_column :user_auth_tokens, :seen_at, :datetime + ActiveRecord::Base.exec_sql "UPDATE user_auth_tokens SET seen_at = :now WHERE auth_token_seen", now: Time.zone.now + end + + def down + remove_column :user_auth_tokens, :seen_at + end +end diff --git a/db/migrate/20170221204204_add_show_subcategory_list_to_categories.rb b/db/migrate/20170221204204_add_show_subcategory_list_to_categories.rb new file mode 100644 index 0000000000..454a5d6098 --- /dev/null +++ b/db/migrate/20170221204204_add_show_subcategory_list_to_categories.rb @@ -0,0 +1,14 @@ +class AddShowSubcategoryListToCategories < ActiveRecord::Migration + def up + add_column :categories, :show_subcategory_list, :boolean, default: false + + result = execute("select count(1) from site_settings where name = 'show_subcategory_list' and value = 't'") + if result[0] and result[0]["count"].to_i > 0 + execute "UPDATE categories SET show_subcategory_list = true WHERE parent_category_id IS NULL" + end + end + + def down + remove_column :categories, :show_subcategory_list + end +end diff --git a/db/migrate/20170222173036_make_user_auth_token_index_unique.rb b/db/migrate/20170222173036_make_user_auth_token_index_unique.rb new file mode 100644 index 0000000000..33afe08082 --- /dev/null +++ b/db/migrate/20170222173036_make_user_auth_token_index_unique.rb @@ -0,0 +1,12 @@ +class MakeUserAuthTokenIndexUnique < ActiveRecord::Migration + def up + remove_index :user_auth_tokens, [:auth_token] + remove_index :user_auth_tokens, [:prev_auth_token] + add_index :user_auth_tokens, [:auth_token], unique: true + add_index :user_auth_tokens, [:prev_auth_token], unique: true + end + + def down + # no op, this should always have been unique + end +end diff --git a/db/migrate/20170227211458_add_featured_topics_to_categories.rb b/db/migrate/20170227211458_add_featured_topics_to_categories.rb new file mode 100644 index 0000000000..6d08584007 --- /dev/null +++ b/db/migrate/20170227211458_add_featured_topics_to_categories.rb @@ -0,0 +1,14 @@ +class AddFeaturedTopicsToCategories < ActiveRecord::Migration + def up + add_column :categories, :num_featured_topics, :integer, default: 3 + + result = execute("select value from site_settings where name = 'category_featured_topics' and value != '3'") + if result.count > 0 && result[0]["value"].to_i > 0 + execute "UPDATE categories SET num_featured_topics = #{result[0]["value"].to_i}" + end + end + + def down + remove_column :categories, :num_featured_topics + end +end diff --git a/db/migrate/20170301215150_add_default_view_to_categories.rb b/db/migrate/20170301215150_add_default_view_to_categories.rb new file mode 100644 index 0000000000..a70d1a7bab --- /dev/null +++ b/db/migrate/20170301215150_add_default_view_to_categories.rb @@ -0,0 +1,5 @@ +class AddDefaultViewToCategories < ActiveRecord::Migration + def change + add_column :categories, :default_view, :string, null: true, limit: 50 + end +end diff --git a/db/migrate/20170303070706_add_index_to_topic_view_items.rb b/db/migrate/20170303070706_add_index_to_topic_view_items.rb new file mode 100644 index 0000000000..d3410816c2 --- /dev/null +++ b/db/migrate/20170303070706_add_index_to_topic_view_items.rb @@ -0,0 +1,5 @@ +class AddIndexToTopicViewItems < ActiveRecord::Migration + def change + add_index :topic_views, [:user_id, :viewed_at] + end +end diff --git a/db/migrate/20170307181800_add_path_to_user_auth_token_log.rb b/db/migrate/20170307181800_add_path_to_user_auth_token_log.rb new file mode 100644 index 0000000000..c55e04c225 --- /dev/null +++ b/db/migrate/20170307181800_add_path_to_user_auth_token_log.rb @@ -0,0 +1,5 @@ +class AddPathToUserAuthTokenLog < ActiveRecord::Migration + def change + add_column :user_auth_token_logs, :path, :string + end +end diff --git a/docs/INSTALL-cloud.md b/docs/INSTALL-cloud.md index a3fb2204e6..eff05664f1 100644 --- a/docs/INSTALL-cloud.md +++ b/docs/INSTALL-cloud.md @@ -51,7 +51,7 @@ You will need to be root through the rest of the setup and bootstrap process. - No existing mail server? Check out our [**Recommended Email Providers for Discourse**][mailconfig]. -- For proper email deliverability, you must add valid SPF and DKIM TXT records in your DNS. See your email provider instructions for specifics. +- To ensure mail deliverability, you must add valid [SPF and DKIM records](https://www.google.com/search?q=spf+dkim) in your DNS. See your mail provider instructions for specifics. ### Edit Discourse Configuration diff --git a/docs/INSTALL-email.md b/docs/INSTALL-email.md index 0a18005199..faf7e74289 100644 --- a/docs/INSTALL-email.md +++ b/docs/INSTALL-email.md @@ -22,7 +22,7 @@ Enter these values when prompted by `./discourse-setup` per the [install guide]( We recommend creating an [API Key][sg2] instead of using your SendGrid username and password. -#### [Mailgun][gun] — 10k emails/month +#### [Mailgun][gun] — 10k emails/month (with credit card) SMTP server address? smtp.mailgun.org SMTP user name? [SMTP credentials for your domain under domains tab] diff --git a/lib/admin_user_index_query.rb b/lib/admin_user_index_query.rb index 3c2eeec9d3..8279ad2017 100644 --- a/lib/admin_user_index_query.rb +++ b/lib/admin_user_index_query.rb @@ -10,16 +10,31 @@ class AdminUserIndexQuery attr_reader :params, :trust_levels + SORTABLE_MAPPING = { + 'created' => 'created_at', + 'last_emailed' => "COALESCE(last_emailed_at, to_date('1970-01-01', 'YYYY-MM-DD'))", + 'seen' => "COALESCE(last_seen_at, to_date('1970-01-01', 'YYYY-MM-DD'))", + 'username' => 'username', + 'email' => 'email', + 'trust_level' => 'trust_level', + 'days_visited' => 'user_stats.days_visited', + 'posts_read' => 'user_stats.posts_read_count', + 'topics_viewed' => 'user_stats.topics_entered', + 'posts' => 'user_stats.post_count', + 'read_time' => 'user_stats.time_read' + } + def find_users(limit=100) - find_users_query.includes(:user_stat).limit(limit) + find_users_query.limit(limit) end def count_users find_users_query.count end - def self.orderable_columns - %w(created_at days_visited posts_read_count topics_entered post_count trust_level) + def custom_direction + asc = params[:ascending] + asc.present? && asc ? "ASC" : "DESC" end def initialize_query_with_order(klass) @@ -27,21 +42,25 @@ class AdminUserIndexQuery custom_order = params[:order] if custom_order.present? && - without_dir = custom_order.downcase.sub(/ (asc|desc)$/, '') - if AdminUserIndexQuery.orderable_columns.include?(without_dir) - order << custom_order + without_dir = SORTABLE_MAPPING[custom_order.downcase.sub(/ (asc|desc)$/, '')] + order << "#{without_dir} #{custom_direction}" + end + + if !custom_order.present? + if params[:query] == "active" + order << "COALESCE(last_seen_at, to_date('1970-01-01', 'YYYY-MM-DD')) DESC" + else + order << "users.created_at DESC" end + + order << "users.username" end - if params[:query] == "active" - order << "COALESCE(last_seen_at, to_date('1970-01-01', 'YYYY-MM-DD')) DESC" + if params[:stats].present? && params[:stats] == false + klass.order(order.reject(&:blank?).join(",")) else - order << "users.created_at DESC" + klass.includes(:user_stat).order(order.reject(&:blank?).join(",")) end - - order << "users.username" - - klass.order(order.reject(&:blank?).join(",")) end def filter_by_trust diff --git a/lib/auth/default_current_user_provider.rb b/lib/auth/default_current_user_provider.rb index 0b905f6132..4be651472b 100644 --- a/lib/auth/default_current_user_provider.rb +++ b/lib/auth/default_current_user_provider.rb @@ -50,6 +50,7 @@ class Auth::DefaultCurrentUserProvider @user_token = UserAuthToken.lookup(auth_token, seen: true, user_agent: @env['HTTP_USER_AGENT'], + path: @env['REQUEST_PATH'], client_ip: @request.ip) current_user = @user_token.try(:user) @@ -126,7 +127,8 @@ class Auth::DefaultCurrentUserProvider if !@user_token.legacy && needs_rotation if @user_token.rotate!(user_agent: @env['HTTP_USER_AGENT'], - client_ip: @request.ip) + client_ip: @request.ip, + path: @env['REQUEST_PATH']) cookies[TOKEN_COOKIE] = cookie_hash(@user_token.unhashed_auth_token) end elsif @user_token.legacy @@ -143,6 +145,7 @@ class Auth::DefaultCurrentUserProvider def log_on_user(user, session, cookies) @user_token = UserAuthToken.generate!(user_id: user.id, user_agent: @env['HTTP_USER_AGENT'], + path: @env['REQUEST_PATH'], client_ip: @request.ip) cookies[TOKEN_COOKIE] = cookie_hash(@user_token.unhashed_auth_token) @@ -152,12 +155,18 @@ class Auth::DefaultCurrentUserProvider end def cookie_hash(unhashed_auth_token) - { + hash = { value: unhashed_auth_token, httponly: true, expires: SiteSetting.maximum_session_age.hours.from_now, secure: SiteSetting.force_https } + + if SiteSetting.same_site_cookies != "Disabled" + hash[:same_site] = SiteSetting.same_site_cookies + end + + hash end def make_developer_admin(user) @@ -209,7 +218,11 @@ class Auth::DefaultCurrentUserProvider end def should_update_last_seen? - !(@request.path =~ /^\/message-bus\//) + if @request.xhr? + @env["HTTP_DISCOURSE_VISIBLE".freeze] == "true".freeze + else + true + end end protected diff --git a/lib/auth/google_oauth2_authenticator.rb b/lib/auth/google_oauth2_authenticator.rb index ec1f386ea7..2dfc69da5c 100644 --- a/lib/auth/google_oauth2_authenticator.rb +++ b/lib/auth/google_oauth2_authenticator.rb @@ -8,20 +8,20 @@ class Auth::GoogleOAuth2Authenticator < Auth::Authenticator session_info = parse_hash(auth_hash) google_hash = session_info[:google] - result = Auth::Result.new + result = ::Auth::Result.new result.email = session_info[:email] result.email_valid = session_info[:email_valid] result.name = session_info[:name] result.extra_data = google_hash - user_info = GoogleUserInfo.find_by(google_user_id: google_hash[:google_user_id]) + user_info = ::GoogleUserInfo.find_by(google_user_id: google_hash[:google_user_id]) result.user = user_info.try(:user) if !result.user && !result.email.blank? && result.email_valid result.user = User.find_by_email(result.email) if result.user - GoogleUserInfo.create({user_id: result.user.id}.merge(google_hash)) + ::GoogleUserInfo.create({user_id: result.user.id}.merge(google_hash)) end end @@ -54,7 +54,7 @@ class Auth::GoogleOAuth2Authenticator < Auth::Authenticator h[:email] = hash[:info][:email] h[:name] = hash[:info][:name] - h[:email_valid] = hash[:extra][:raw_info][:email_verified] + h[:email_valid] = extra[:email_verified] h[:google] = { google_user_id: hash[:uid] || extra[:sub], diff --git a/lib/composer_messages_finder.rb b/lib/composer_messages_finder.rb index af738f4e86..41064a632a 100644 --- a/lib/composer_messages_finder.rb +++ b/lib/composer_messages_finder.rb @@ -136,7 +136,7 @@ class ComposerMessagesFinder } end - def check_get_a_room + def check_get_a_room(min_users_posted: 5) return unless educate_reply?(:notified_about_get_a_room) return unless @details[:post_id].present? @@ -146,11 +146,13 @@ class ComposerMessagesFinder last_x_replies = @topic. posts. where(user_id: @user.id). + order('created_at desc'). limit(SiteSetting.get_a_room_threshold). pluck(:reply_to_user_id). find_all {|uid| uid != @user.id && uid == reply_to_user_id} return unless last_x_replies.size == SiteSetting.get_a_room_threshold + return unless @topic.posts.count('distinct user_id') >= min_users_posted UserHistory.create!(action: UserHistory.actions[:notified_about_get_a_room], target_user_id: @user.id, diff --git a/lib/discourse.rb b/lib/discourse.rb index 20227f2dfc..d8e66fa405 100644 --- a/lib/discourse.rb +++ b/lib/discourse.rb @@ -392,4 +392,24 @@ module Discourse [SiteSetting.tos_topic_id, SiteSetting.guidelines_topic_id, SiteSetting.privacy_topic_id] end + cattr_accessor :last_ar_cache_reset + + def self.reset_active_record_cache_if_needed(e) + last_cache_reset = Discourse.last_ar_cache_reset + if e && e.message =~ /UndefinedColumn/ && (last_cache_reset.nil? || last_cache_reset < 30.seconds.ago) + Rails.logger.warn "Clear Active Record cache cause schema appears to have changed!" + Discourse.last_ar_cache_reset = Time.zone.now + Discourse.reset_active_record_cache + end + end + + def self.reset_active_record_cache + ActiveRecord::Base.connection.query_cache.clear + (ActiveRecord::Base.connection.tables - %w[schema_migrations]).each do |table| + table.classify.constantize.reset_column_information rescue nil + end + nil + end + + end diff --git a/lib/discourse_cookie_store.rb b/lib/discourse_cookie_store.rb index 23745a7913..f962ba3a0c 100644 --- a/lib/discourse_cookie_store.rb +++ b/lib/discourse_cookie_store.rb @@ -10,6 +10,9 @@ class ActionDispatch::Session::DiscourseCookieStore < ActionDispatch::Session::C if SiteSetting.force_https cookie[:secure] = true end + unless SiteSetting.same_site_cookies == "Disabled" + cookie[:same_site] = SiteSetting.same_site_cookies + end end cookie_jar(request)[@key] = cookie end diff --git a/lib/discourse_tagging.rb b/lib/discourse_tagging.rb index 4b7245a17d..4d15f60612 100644 --- a/lib/discourse_tagging.rb +++ b/lib/discourse_tagging.rb @@ -4,7 +4,7 @@ module DiscourseTagging TAGS_FILTER_REGEXP = /[\/\?#\[\]@!\$&'\(\)\*\+,;=\.%\\`^\s|\{\}"<>]+/ # /?#[]@!$&'()*+,;=.%\`^|{}"<> - def self.tag_topic_by_names(topic, guardian, tag_names_arg) + def self.tag_topic_by_names(topic, guardian, tag_names_arg, append: false) if SiteSetting.tagging_enabled tag_names = DiscourseTagging.tags_for_saving(tag_names_arg, guardian) || [] @@ -29,6 +29,7 @@ module DiscourseTagging if tag_names.present? category = topic.category + tag_names = tag_names + old_tag_names if append # guardian is explicitly nil cause we don't want to strip all # staff tags that already passed validation diff --git a/lib/discourse_updates.rb b/lib/discourse_updates.rb index 61df22e2aa..3e2f14c682 100644 --- a/lib/discourse_updates.rb +++ b/lib/discourse_updates.rb @@ -7,7 +7,7 @@ module DiscourseUpdates DiscourseVersionCheck.new( installed_version: Discourse::VERSION::STRING, installed_sha: (Discourse.git_version == 'unknown' ? nil : Discourse.git_version), - installed_describe: `git describe --dirty`, + installed_describe: `git describe --dirty --match "v[0-9]*"`, git_branch: Discourse.git_branch, updated_at: nil ) @@ -17,7 +17,7 @@ module DiscourseUpdates critical_updates: critical_updates_available?, installed_version: Discourse::VERSION::STRING, installed_sha: (Discourse.git_version == 'unknown' ? nil : Discourse.git_version), - installed_describe: `git describe --dirty`, + installed_describe: `git describe --dirty --match "v[0-9]*"`, missing_versions_count: missing_versions_count, git_branch: Discourse.git_branch, updated_at: updated_at diff --git a/lib/email.rb b/lib/email.rb index f0fbc28e57..f37d81aa65 100644 --- a/lib/email.rb +++ b/lib/email.rb @@ -7,15 +7,15 @@ require_dependency 'email/styles' module Email def self.is_valid?(email) - return false unless String === email parsed = Mail::Address.new(email) - # Don't allow for a TLD by itself list (sam@localhost) # The Grammar is: (local_part "@" domain) / local_part ... need to discard latter - parsed.address == email && parsed.local != parsed.address && parsed.domain && parsed.domain.split(".").length > 1 + parsed.address == email && + parsed.local != parsed.address && + parsed&.domain.split(".").size > 1 rescue Mail::Field::ParseError false end @@ -26,8 +26,7 @@ module Email end def self.cleanup_alias(name) - # TODO: I'm sure there are more, but I can't find a list - name ? name.gsub(/[:<>,]/, '') : name + name ? name.gsub(/[:<>,"]/, '') : name end end diff --git a/lib/email/message_builder.rb b/lib/email/message_builder.rb index 3a2a6b1756..990fb010b9 100644 --- a/lib/email/message_builder.rb +++ b/lib/email/message_builder.rb @@ -202,16 +202,22 @@ module Email end def alias_email(source) - return source if @opts[:from_alias].blank? && SiteSetting.email_site_title.blank? + return source if @opts[:from_alias].blank? && + SiteSetting.email_site_title.blank? && + SiteSetting.title.blank? + if !@opts[:from_alias].blank? - "#{Email.cleanup_alias(@opts[:from_alias])} <#{source}>" + "\"#{Email.cleanup_alias(@opts[:from_alias])}\" <#{source}>" + elsif source == SiteSetting.notification_email || source == SiteSetting.reply_by_email_address + site_alias_email(source) else - "#{Email.cleanup_alias(SiteSetting.email_site_title)} <#{source}>" + source end end def site_alias_email(source) - "#{Email.cleanup_alias(SiteSetting.email_site_title.presence || SiteSetting.title)} <#{source}>" + from_alias = SiteSetting.email_site_title.presence || SiteSetting.title + "\"#{Email.cleanup_alias(from_alias)}\" <#{source}>" end end diff --git a/lib/email_backup_token.rb b/lib/email_backup_token.rb new file mode 100644 index 0000000000..e1f9e6dac7 --- /dev/null +++ b/lib/email_backup_token.rb @@ -0,0 +1,28 @@ +class EmailBackupToken + + def self.key(user_id) + "email-backup-token:#{user_id}" + end + + def self.generate + SecureRandom.hex + end + + def self.set(user_id) + token = self.generate + $redis.setex self.key(user_id), 1.day.to_i, token + token + end + + def self.get(user_id) + $redis.get self.key(user_id) + end + + def self.del(user_id) + $redis.del self.key(user_id) + end + + def self.compare(user_id, token) + token == self.get(user_id) + end +end diff --git a/lib/file_helper.rb b/lib/file_helper.rb index ecf966a5fd..e79bdd9fa0 100644 --- a/lib/file_helper.rb +++ b/lib/file_helper.rb @@ -28,7 +28,7 @@ class FileHelper private def self.images - @@images ||= Set.new ["jpg", "jpeg", "png", "gif", "tif", "tiff", "bmp", "svg", "webp", "ico"] + @@images ||= Set.new %w{jpg jpeg png gif tif tiff bmp svg webp ico} end def self.images_regexp diff --git a/lib/freedom_patches/translate_accelerator.rb b/lib/freedom_patches/translate_accelerator.rb index 8b734f9c89..0ec215c2ea 100644 --- a/lib/freedom_patches/translate_accelerator.rb +++ b/lib/freedom_patches/translate_accelerator.rb @@ -42,7 +42,7 @@ module I18n end # load it - I18n.backend.load_translations(I18n.load_path.grep Regexp.new("\\.#{locale}\\.yml$")) + I18n.backend.load_translations(I18n.load_path.grep(/\.#{Regexp.escape locale}\.yml$/)) @loaded_locales << locale end @@ -125,7 +125,7 @@ module I18n end def client_overrides_json(locale) - client_json = (overrides_by_locale(locale) || {}).select {|k, _| k.starts_with?('js.') || k.starts_with?('admin_js.')} + client_json = (overrides_by_locale(locale) || {}).select { |k, _| k[/^(admin_js|js)\./] } MultiJson.dump(client_json) end diff --git a/lib/guardian.rb b/lib/guardian.rb index 9f47915490..4a36993884 100644 --- a/lib/guardian.rb +++ b/lib/guardian.rb @@ -158,6 +158,10 @@ class Guardian # make it impossible to be the same user. end + def can_view_action_logs?(target) + is_staff? && target + end + # Can we approve it? def can_approve?(target) is_staff? && target && not(target.approved?) @@ -275,9 +279,7 @@ class Guardian # Have to be a basic level at least @user.has_trust_level?(SiteSetting.min_trust_to_send_messages) && # PMs are enabled - (SiteSetting.enable_private_messages || - @user.username == SiteSetting.site_contact_username || - @user == Discourse.system_user) && + (is_staff? || SiteSetting.enable_private_messages) && # Can't send PMs to suspended users (is_staff? || target.is_a?(Group) || !target.suspended?) && # Blocked users can only send PM to staff diff --git a/lib/guardian/post_guardian.rb b/lib/guardian/post_guardian.rb index b29467ceed..ee72eaf465 100644 --- a/lib/guardian/post_guardian.rb +++ b/lib/guardian/post_guardian.rb @@ -149,7 +149,11 @@ module PostGuardian # Recovery Method def can_recover_post?(post) - is_staff? || (is_my_own?(post) && post.user_deleted && !post.deleted_at) + if is_staff? + post.deleted_at && post.user + else + is_my_own?(post) && post.user_deleted && !post.deleted_at + end end def can_delete_post_action?(post_action) diff --git a/lib/guardian/topic_guardian.rb b/lib/guardian/topic_guardian.rb index ea086ef199..add956351b 100644 --- a/lib/guardian/topic_guardian.rb +++ b/lib/guardian/topic_guardian.rb @@ -52,7 +52,7 @@ module TopicGuardian # Recovery Method def can_recover_topic?(topic) - is_staff? + topic && topic.deleted_at && topic.user && is_staff? end def can_delete_topic?(topic) diff --git a/lib/i18n/backend/discourse_i18n.rb b/lib/i18n/backend/discourse_i18n.rb index 8b2ea23759..99b19724b7 100644 --- a/lib/i18n/backend/discourse_i18n.rb +++ b/lib/i18n/backend/discourse_i18n.rb @@ -7,9 +7,6 @@ module I18n include I18n::Backend::Pluralization def available_locales - # in case you are wondering this is: - # Dir.glob( File.join(Rails.root, 'config', 'locales', 'client.*.yml') ) - # .map {|x| x.split('.')[-2]}.sort LocaleSiteSetting.supported_locales.map(&:to_sym) end @@ -53,6 +50,7 @@ module I18n end protected + def find_results(regexp, results, translations, path=nil) return results if translations.blank? diff --git a/lib/i18n/duplicate_key_finder.rb b/lib/i18n/duplicate_key_finder.rb new file mode 100644 index 0000000000..745b5ce293 --- /dev/null +++ b/lib/i18n/duplicate_key_finder.rb @@ -0,0 +1,17 @@ +require_relative "locale_file_walker" + +class DuplicateKeyFinder < LocaleFileWalker + + def find_duplicates(path) + @keys_with_count = Hash.new { 0 } + handle_document(Psych.parse_file(path)) + @keys_with_count.select { |key, count| count > 1 }.keys + end + + protected + + def handle_scalar(node, depth, parents) + super + @keys_with_count[parents.join('.')] += 1 + end +end diff --git a/lib/locale_file_walker.rb b/lib/i18n/locale_file_walker.rb similarity index 59% rename from lib/locale_file_walker.rb rename to lib/i18n/locale_file_walker.rb index 4f11ea9ff8..e433f1a4e2 100644 --- a/lib/locale_file_walker.rb +++ b/lib/i18n/locale_file_walker.rb @@ -1,28 +1,26 @@ -require 'psych' -require 'set' - class LocaleFileWalker protected + def handle_stream(stream) + stream.children.each { |document| handle_document(document) } + end + def handle_document(document) - # we want to ignore the language (first key), so let's start at -1 + # we want to ignore the locale (first key), so let's start at -1 handle_nodes(document.root.children, -1, []) end def handle_nodes(nodes, depth, parents) - if nodes - consecutive_scalars = 0 - nodes.each do |node| - consecutive_scalars = handle_node(node, depth, parents, consecutive_scalars) - end + return unless nodes + consecutive_scalars = 0 + nodes.each do |node| + consecutive_scalars = handle_node(node, depth, parents, consecutive_scalars) end end def handle_node(node, depth, parents, consecutive_scalars) - node_is_scalar = node.is_a?(Psych::Nodes::Scalar) - - if node_is_scalar - handle_scalar(node, depth, parents) if valid_scalar?(depth, consecutive_scalars) + if node_is_scalar = node.is_a?(Psych::Nodes::Scalar) + valid_scalar?(depth, consecutive_scalars) ? handle_scalar(node, depth, parents) : handle_value(node.value, parents) elsif node.is_a?(Psych::Nodes::Alias) handle_alias(node, depth, parents) elsif node.is_a?(Psych::Nodes::Mapping) @@ -37,6 +35,9 @@ class LocaleFileWalker depth >= 0 && consecutive_scalars.even? end + def handle_value(value, parents) + end + def handle_scalar(node, depth, parents) parents[depth] = node.value end diff --git a/lib/js_locale_helper.rb b/lib/js_locale_helper.rb index e8550b1b88..137dc2d468 100644 --- a/lib/js_locale_helper.rb +++ b/lib/js_locale_helper.rb @@ -7,7 +7,7 @@ module JsLocaleHelper translations = {} Dir["#{Rails.root}/plugins/*/config/locales/client.#{locale_str}.yml"].each do |file| - if plugin_translations = YAML::load(File.open(file))[locale_str] + if plugin_translations = YAML.load_file(file)[locale_str] translations.deep_merge!(plugin_translations) end end @@ -26,7 +26,7 @@ module JsLocaleHelper locale_str = locale.to_s # load default translations - translations = YAML::load(File.open("#{Rails.root}/config/locales/client.#{locale_str}.yml")) + translations = YAML.load_file("#{Rails.root}/config/locales/client.#{locale_str}.yml") # merge translations (plugin translations overwrite default translations) translations[locale_str]['js'].deep_merge!(plugin_translations(locale_str)['js']) if translations[locale_str] && plugin_translations(locale_str) && plugin_translations(locale_str)['js'] @@ -35,23 +35,22 @@ module JsLocaleHelper end end - # purpose-built recursive algorithm ahoy! - def self.deep_delete_matches(deleting_from, *checking_hashes) + # deeply removes keys from "deleting_from" that are already present in "checking_hashes" + def self.deep_delete_matches(deleting_from, checking_hashes) checking_hashes.compact! new_hash = deleting_from.dup deleting_from.each do |key, value| - if value.is_a? Hash - # Recurse - new_at_key = deep_delete_matches(deleting_from[key], *(checking_hashes.map {|h| h[key]})) + if value.is_a?(Hash) + new_at_key = deep_delete_matches(deleting_from[key], checking_hashes.map { |h| h[key] }) if new_at_key.empty? - new_hash.delete key + new_hash.delete(key) else new_hash[key] = new_at_key end else - if checking_hashes.any? {|h| h.include? key} - new_hash.delete key + if checking_hashes.any? { |h| h.include?(key) } + new_hash.delete(key) end end end @@ -66,8 +65,8 @@ module JsLocaleHelper loaded_locales = [] locales.map(&:to_s).each do |locale| - all_translations[locale] = JsLocaleHelper.load_translations locale - merged_translations[locale] = deep_delete_matches(all_translations[locale][locale], *loaded_locales.map { |l| merged_translations[l] }) + all_translations[locale] = load_translations(locale) + merged_translations[locale] = deep_delete_matches(all_translations[locale][locale], loaded_locales.map { |l| merged_translations[l] }) loaded_locales << locale end merged_translations @@ -75,12 +74,11 @@ module JsLocaleHelper end def self.translations_for(locale_str) - locale_sym = locale_str.to_sym - current_locale = I18n.locale - I18n.locale = locale_sym + locale_sym = locale_str.to_sym + site_locale = SiteSetting.default_locale.to_sym - site_locale = SiteSetting.default_locale.to_sym + I18n.locale = locale_sym translations = if Rails.env.development? @@ -100,19 +98,23 @@ module JsLocaleHelper def self.output_locale(locale) locale_str = locale.to_s - translations = translations_for(locale_str).dup + translations = Marshal.load(Marshal.dump(translations_for(locale_str))) - translations[locale_str].keys.each do |k| - translations[locale_str].delete(k) unless k == "js" + translations.keys.each do |locale| + translations[locale].keys.each do |k| + translations[locale].delete(k) unless k == "js" + end end message_formats = strip_out_message_formats!(translations[locale_str]['js']) - result = generate_message_format(message_formats, locale_str) + # I18n result << "I18n.translations = #{translations.to_json};\n" result << "I18n.locale = '#{locale_str}';\n" - # loading moment here cause we must customize it + result << "I18n.pluralizationRules.#{locale_str} = MessageFormat.locale.#{locale_str};\n" if locale_str != "en" + + # moment result << File.read("#{Rails.root}/lib/javascripts/moment.js") result << moment_locale(locale_str) result << moment_formats @@ -136,33 +138,25 @@ module JsLocaleHelper def self.moment_locale(locale_str) # moment.js uses a different naming scheme for locale files locale_str = locale_str.tr('_', '-').downcase - filename = Rails.root + "lib/javascripts/moment_locale/#{locale_str}.js" + filename = "#{Rails.root}/lib/javascripts/moment_locale/#{locale_str}.js" - unless File.exists?(filename) - # try the language without the territory - locale_str = locale_str.partition('-').first - filename = Rails.root + "lib/javascripts/moment_locale/#{locale_str}.js" - end + # try the language without the territory + locale_str = locale_str.split("-")[0] + filename = "#{Rails.root}/lib/javascripts/moment_locale/#{locale_str}.js" unless File.exists?(filename) - if File.exists?(filename) - File.read(filename) << "\n" - end || "" + File.exists?(filename) ? File.read(filename) << "\n" : "" end def self.generate_message_format(message_formats, locale_str) + formats = message_formats.map { |k,v| k.inspect << " : " << compile_message_format(locale_str, v) }.join(", ") + + filename = "#{Rails.root}/lib/javascripts/locale/#{locale_str}.js" + filename = "#{Rails.root}/lib/javascripts/locale/en.js" unless File.exists?(filename) result = "MessageFormat = {locale: {}};\n" - - formats = message_formats.map{|k,v| k.inspect << " : " << compile_message_format(locale_str,v)}.join(", ") - result << "I18n._compiledMFs = {#{formats}};\n\n" - - filename = Rails.root + "lib/javascripts/locale/#{locale_str}.js" - filename = Rails.root + "lib/javascripts/locale/en.js" unless File.exists?(filename) - result << File.read(filename) << "\n\n" - - result << File.read("#{Rails.root}/lib/javascripts/messageformat-lookup.js") - - result + result << "I18n._compiledMFs = {#{formats}};\n" + result << File.read(filename) << "\n" + result << File.read("#{Rails.root}/lib/javascripts/messageformat-lookup.js") << "\n" end def self.reset_context @@ -174,7 +168,7 @@ module JsLocaleHelper @mutex.synchronize do yield @ctx ||= begin ctx = MiniRacer::Context.new - ctx.load(Rails.root + 'lib/javascripts/messageformat.js') + ctx.load("#{Rails.root}/lib/javascripts/messageformat.js") ctx end end @@ -182,7 +176,7 @@ module JsLocaleHelper def self.compile_message_format(locale, format) with_context do |ctx| - path = Rails.root + "lib/javascripts/locale/#{locale}.js" + path = "#{Rails.root}/lib/javascripts/locale/#{locale}.js" ctx.load(path) if File.exists?(path) ctx.eval("mf = new MessageFormat('#{locale}');") ctx.eval("mf.precompile(mf.parse(#{format.inspect}))") diff --git a/lib/onebox/templates/discourse_topic_onebox.hbs b/lib/onebox/templates/discourse_topic_onebox.hbs index c6800ad8b4..8b6d746b71 100644 --- a/lib/onebox/templates/discourse_topic_onebox.hbs +++ b/lib/onebox/templates/discourse_topic_onebox.hbs @@ -1,5 +1,6 @@