* Added a new hook, 'UserGetRightsRemove', which can be used to remove rights
from user. Unlike the 'UserGetRights' it will ensure that removed rights
will not be reinserted.
+* (T197535) Extensions can now specify PHP versions and PHP extensions they
+ depend on.
=== External library changes in 1.32 ===
exceptions will now include the "Wikimedia\Rdbms\" prefix in the class name.
* The code including an exception class name is deprecated. In the future,
all internal errors will use code "internal_api_error".
-* …
+* (T212356) When using action=delete on pages with many revisions, the module
+ may return a boolean-true 'scheduled' and no 'logid'. This signifies that the
+ deletion will be processed via the job queue.
=== Action API internal changes in 1.33 ===
* A number of deprecated methods for API documentation, intended for overriding
=== Other changes in 1.33 ===
* (T208871) The hard-coded Google search form on the database error page was
removed.
+* (T201747) Html::openElement() warns if given an element name wiht a space
+ in it.
* …
== Compatibility ==
$wgGrantPermissions['editmycssjs']['editmyuserjs'] = true;
$wgGrantPermissions['editmyoptions']['editmyoptions'] = true;
+$wgGrantPermissions['editmyoptions']['editmyuserjson'] = true;
$wgGrantPermissions['editinterface'] = $wgGrantPermissions['editpage'];
$wgGrantPermissions['editinterface']['editinterface'] = true;
// consistency and better compression.
$element = strtolower( $element );
+ // Some people were abusing this by passing things like
+ // 'h1 id="foo" to $element, which we don't want.
+ if ( strpos( $element, ' ' ) !== false ) {
+ wfWarn( __METHOD__ . " given element name with space '$element'" );
+ }
+
// Remove invalid input types
if ( $element == 'input' ) {
$validTypes = [
*/
private $options = [
'changed' => true,
+ // newrev is true if prepareUpdate is handling the creation of a new revision,
+ // as opposed to a null edit or a forced update.
+ 'newrev' => false,
'created' => false,
'moved' => false,
'restored' => false,
// Override fields defined in $this->options with values from $options.
$this->options = array_intersect_key( $options, $this->options ) + $this->options;
- if ( isset( $this->pageState['oldId'] ) ) {
- $oldId = $this->pageState['oldId'];
+ if ( $this->revision ) {
+ $oldId = $this->pageState['oldId'] ?? 0;
+ $this->options['newrev'] = ( $revision->getId() !== $oldId );
} elseif ( isset( $this->options['oldrevision'] ) ) {
/** @var Revision|RevisionRecord $oldRev */
$oldRev = $this->options['oldrevision'];
$oldId = $oldRev->getId();
+ $this->options['newrev'] = ( $revision->getId() !== $oldId );
} else {
$oldId = $revision->getParentId();
}
// Save it to the parser cache. Use the revision timestamp in the case of a
// freshly saved edit, as that matches page_touched and a mismatch would trigger an
// unnecessary reparse.
- $timestamp = $this->options['changed'] ? $this->revision->getTimestamp()
- : $output->getTimestamp();
+ $timestamp = $this->options['newrev'] ? $this->revision->getTimestamp()
+ : $output->getCacheTime();
$this->parserCache->save(
$output, $wikiPage, $this->getCanonicalParserOptions(),
$timestamp, $this->revision->getId()
* @since 1.29
* @param StatusValue $status
* @param string[] $types 'warning' and/or 'error'
+ * @param string[] $filter Message keys to filter out (since 1.33)
*/
- public function addMessagesFromStatus( StatusValue $status, $types = [ 'warning', 'error' ] ) {
- $this->getErrorFormatter()->addMessagesFromStatus( $this->getModulePath(), $status, $types );
+ public function addMessagesFromStatus(
+ StatusValue $status, $types = [ 'warning', 'error' ], array $filter = []
+ ) {
+ $this->getErrorFormatter()->addMessagesFromStatus(
+ $this->getModulePath(), $status, $types, $filter
+ );
}
/**
$editingRestriction = 'partial';
}
- $pageRestrictions = implode( "\n", $params['pagerestrictions'] );
+ $pageRestrictions = implode( "\n", (array)$params['pagerestrictions'] );
}
if ( $params['userid'] !== null ) {
$status = self::delete( $pageObj, $user, $reason, $params['tags'] );
}
- if ( !$status->isGood() ) {
+ if ( !$status->isOk() ) {
$this->dieStatus( $status );
}
+ $this->addMessagesFromStatus( $status, [ 'warning' ], [ 'delete-scheduled' ] );
// Deprecated parameters
if ( $params['watch'] ) {
$r = [
'title' => $titleObj->getPrefixedText(),
'reason' => $reason,
- 'logid' => $status->value
];
+ if ( $status->hasMessage( 'delete-scheduled' ) ) {
+ $r['scheduled'] = true;
+ }
+ if ( $status->value !== null ) {
+ // Scheduled deletions don't currently have a log entry available at this point
+ $r['logid'] = $status->value;
+ }
$this->getResult()->addValue( null, $this->getModuleName(), $r );
}
* @param string|null $modulePath
* @param StatusValue $status
* @param string[]|string $types 'warning' and/or 'error'
+ * @param string[] $filter Messages to filter out (since 1.33)
*/
public function addMessagesFromStatus(
- $modulePath, StatusValue $status, $types = [ 'warning', 'error' ]
+ $modulePath, StatusValue $status, $types = [ 'warning', 'error' ], array $filter = []
) {
if ( $status->isGood() || !$status->getErrors() ) {
return;
->inLanguage( $this->lang )
->title( $this->getDummyTitle() )
->useDatabase( $this->useDB );
- $this->addWarningOrError( $tag, $modulePath, $msg );
+ if ( !in_array( $msg->getKey(), $filter, true ) ) {
+ $this->addWarningOrError( $tag, $modulePath, $msg );
+ }
}
}
'dnt',
'origin',
/* MediaWiki whitelist */
+ 'user-agent',
'api-user-agent',
] );
foreach ( $requestedHeaders as $rHeader ) {
* Encodes a value into an array format
*
* @param mixed $value
- * @return array
+ * @return array|mixed
* @throws RuntimeException
*/
public static function encode( $value ) {
- if ( is_scalar( $value ) || $value === null ) {
- // [V]alue
- return [ 'v', $value ];
+ if ( is_array( $value ) ) {
+ // [a]rray
+ return [ 'a', array_map( 'LCStoreStaticArray::encode', $value ) ];
}
if ( is_object( $value ) ) {
- // [S]erialized
+ // [s]erialized
return [ 's', serialize( $value ) ];
}
- if ( is_array( $value ) ) {
- // [A]rray
- return [ 'a', array_map( 'LCStoreStaticArray::encode', $value ) ];
+ if ( is_scalar( $value ) || $value === null ) {
+ // Scalar value, written directly without array
+ return $value;
}
throw new RuntimeException( 'Cannot encode ' . var_export( $value, true ) );
/**
* Decode something that was encoded with encode
*
- * @param array $encoded
+ * @param mixed $encoded
* @return array|mixed
* @throws RuntimeException
*/
- public static function decode( array $encoded ) {
+ public static function decode( $encoded ) {
+ if ( !is_array( $encoded ) ) {
+ // Scalar values are written directly without array
+ return $encoded;
+ }
+
$type = $encoded[0];
$data = $encoded[1];
switch ( $type ) {
- case 'v':
- return $data;
- case 's':
- return unserialize( $data );
case 'a':
return array_map( 'LCStoreStaticArray::decode', $data );
+ case 's':
+ return unserialize( $data );
+ case 'v':
+ // Support: MediaWiki 1.32 and earlier
+ // Backward compatibility with older file format
+ return $data;
default:
throw new RuntimeException(
'Unable to decode ' . var_export( $encoded, true ) );
"config-help-restart": "Vil du rydde alle gemte data, du har indtastet og genstarte installationen?",
"config-restart": "Ja, genstart den",
"config-env-php": "PHP $1 er installeret.",
+ "config-env-hhvm": "HHVM $1 er installeret.",
+ "config-apc": "[https://secure.php.net/apc APC] er installeret",
+ "config-apcu": "[https://secure.php.net/apcu APCu] er installeret",
"config-db-type": "Databasetype:",
"config-db-host": "Databasevært:",
"config-db-name": "Databasenavn (ingen bindestreg):",
"config-ns-generic": "Projekt",
"config-ns-site-name": "Samme som wikinavnet: $1",
"config-ns-other": "Andet (angiv)",
+ "config-ns-other-default": "MyWiki",
"config-admin-box": "Administratorkonto",
"config-admin-name": "Dit brugernavn:",
"config-admin-password": "Adgangskode:",
"config-admin-password-confirm": "Tast adgangskoden igen:",
+ "config-admin-name-blank": "Indtast et administratorbrugernavn.",
"config-admin-email": "E-postadresse:",
"config-admin-error-bademail": "Du har indtastet en ugyldig e-mailadresse.",
"config-optional-continue": "Stil mig flere spørgsmål.",
"config-extensions": "Udvidelser",
"config-install-step-done": "udført",
"config-install-step-failed": "mislykkedes",
+ "config-install-extensions": "Inkluderer udvidelser",
"config-install-database": "Opsætter database",
"config-install-user-alreadyexists": "Brugeren \"$1\" findes allerede",
"config-install-user-create-failed": "Oprettelse af brugeren \"$1\" mislykkedes: $2",
"config-install-tables": "Opretter tabeller",
+ "config-install-keys": "Genererer hemmelige nøgler",
"config-install-mainpage-exists": "Forsiden findes allerede, springer over",
"config-install-mainpage-failed": "Kunne ikke indsætte forside: $1",
"config-help": "hjælp",
"config-logo": "URL'ey Logoy:",
"config-extensions": "Olekeni",
"config-skins": "Temey",
- "config-install-step-done": "qeyd ke",
+ "config-install-step-done": "temam",
"config-install-step-failed": "ebe ser nêkewt",
"config-install-schema": "Şema dek",
"config-install-pg-commit": "Vırnayışa cemaati",
"config-page-existingwiki": "Постојећи вики",
"config-help-restart": "Желите ли да обришете све сачуване податке које сте унели и поново покренете процес инсталације?",
"config-restart": "Да, покрени поново",
- "config-welcome": "=== Провера окружења ===\nСада ће се извршити основна провера како би се утврдило да ли је ово окружење погодно за MediaWiki инсталацију.\nНе заборавите да укључите ове информације ако тражите подршку како завршити инсталацију.",
- "config-sidebar": "* [https://www.mediawiki.org MediaWiki почетна]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents Водич за кориснике]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Contents Водич за администраторе]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ ЧПП]\n----\n* <doclink href=Readme>Прочитај ме</doclink>\n* <doclink href=ReleaseNotes>Напомене о издању</doclink>\n* <doclink href=Copying>Копирање</doclink>\n* <doclink href=UpgradeDoc>Надоградња</doclink>",
+ "config-welcome": "=== Провера окружења ===\nСада ће се извршити основна провера како би се утврдило да ли је ово окружење погодно за инсталацију MediaWiki-ја.\nНе заборавите да укључите ове информације ако тражите подршку како завршити инсталацију.",
+ "config-sidebar": "* [https://www.mediawiki.org Почетна страна MediaWiki-ја]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents Водич за кориснике]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Contents Водич за администраторе]\n* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ ЧПП]\n----\n* <doclink href=Readme>Прочитај ме</doclink>\n* <doclink href=ReleaseNotes>Напомене о издању</doclink>\n* <doclink href=Copying>Копирање</doclink>\n* <doclink href=UpgradeDoc>Надоградња</doclink>",
"config-env-good": "Окружење је проверено.\nМожете да инсталирате MediaWiki.",
"config-env-bad": "Окружење је проверено.\nНе можете да инсталирате MediaWiki.",
"config-env-php": "PHP $1 је инсталиран.",
*/
protected $editor;
+ /**
+ * Extensions that have hooks for
+ * UpdateUserMailerFormattedPageStatus (to provide additional
+ * pageStatus indicators) need a way to make sure that, when their
+ * hook is called in SendWatchlistemailNotification, they only
+ * handle notifications using their pageStatus indicator.
+ *
+ * @since 1.33
+ * @return string
+ */
+ public function getPageStatus() {
+ return $this->pageStatus;
+ }
+
/**
* @deprecated since 1.27 use WatchedItemStore::updateNotificationTimestamp directly
*
* Needless to say, it's really not a good idea to use a non-unique index
* for this! That won't page right.
*
- * @return string|array
+ * @return string|string[]
*/
abstract function getIndexField();
* page_len,page_id avoids temp tables (given a page_len index). This would
* also work if page_id was non-unique but we had a page_len,page_id index.
*
- * @return array
+ * @return string[]|array[]
*/
protected function getExtraSortFields() {
return [];
// TODO replace with clear_last_error when requirements are bumped to PHP7
set_error_handler( function () {
}, 0 );
- // phpcs:ignore Generic.PHP.NoSilencedErrors.Discouraged
- @trigger_error( '' );
+ \MediaWiki\suppressWarnings();
+ trigger_error( '' );
+ \MediaWiki\restoreWarnings();
restore_error_handler();
$readPipes = array_filter( $pipes, function ( $fd ) use ( $desc ) {
}
$status = $currentBlock->update();
+ // TODO handle failure
$logaction = 'reblock';
if ( (bool)$currentBlock->mHideName ) {
$data['HideUser'] = true;
}
+
+ $block = $currentBlock;
}
} else {
$logaction = 'block';
$logEntry->setComment( $data['Reason'][0] );
$logEntry->setPerformer( $performer );
$logEntry->setParameters( $logParams );
- # Relate log ID to block IDs (T27763)
- $blockIds = array_merge( [ $status['id'] ], $status['autoIds'] );
- $logEntry->setRelations( [ 'ipb_id' => $blockIds ] );
+ # Relate log ID to block ID (T27763)
+ $logEntry->setRelations( [ 'ipb_id' => $block->getId() ] );
$logId = $logEntry->insert();
if ( !empty( $data['Tags'] ) ) {
if ( isset( $data['Tags'] ) ) {
$logEntry->setTags( $data['Tags'] );
}
+ $logEntry->setRelations( [ 'ipb_id' => $block->getId() ] );
$logId = $logEntry->insert();
$logEntry->publish( $logId );
}
$this->getDateRangeCond( $startTimestamp, $endTimestamp );
- // This property on IndexPager is set by $this->getIndexField() in parent::__construct().
- // We need to reassign it here so that it is used when the actual query is ran.
- $this->mIndexField = $this->getIndexField();
-
// Most of this code will use the 'contributions' group DB, which can map to replica DBs
// with extra user based indexes or partioning by user. The additional metadata
// queries should use a regular replica DB since the lookup pattern is not all by user.
$ipRangeConds = $user->isAnon() ? $this->getIpRangeConds( $this->mDb, $this->target ) : null;
if ( $ipRangeConds ) {
$queryInfo['tables'][] = 'ip_changes';
+ /**
+ * These aliases make `ORDER BY rev_timestamp, rev_id` from {@see getIndexField} and
+ * {@see getExtraSortFields} use the replicated `ipc_rev_timestamp` and `ipc_rev_id`
+ * columns from the `ip_changes` table, for more efficient queries.
+ * @see https://phabricator.wikimedia.org/T200259#4832318
+ */
+ $queryInfo['fields'] = array_merge(
+ [
+ 'rev_timestamp' => 'ipc_rev_timestamp',
+ 'rev_id' => 'ipc_rev_id',
+ ],
+ array_diff( $queryInfo['fields'], [
+ 'rev_timestamp',
+ 'rev_id',
+ ] )
+ );
$queryInfo['join_conds']['ip_changes'] = [
'LEFT JOIN', [ 'ipc_rev_id = rev_id' ]
];
}
/**
- * Override of getIndexField() in IndexPager.
- * For IP ranges, it's faster to use the replicated ipc_rev_timestamp
- * on the `ip_changes` table than the rev_timestamp on the `revision` table.
- * @return string Name of field
+ * @return string
*/
public function getIndexField() {
- if ( $this->isQueryableRange( $this->target ) ) {
- return 'ipc_rev_timestamp';
- } else {
- return 'rev_timestamp';
- }
+ // Note this is run via parent::__construct() *before* $this->target is set!
+ return 'rev_timestamp';
+ }
+
+ /**
+ * @return string[]
+ */
+ protected function getExtraSortFields() {
+ // Note this is run via parent::__construct() *before* $this->target is set!
+ return [ 'rev_id' ];
}
function doBatchLookups() {
"Macofe",
"Archaeodontosaurus",
"Neriman2003",
- "Fitoschido"
+ "Fitoschido",
+ "Toghrul Rahimli"
]
},
"tog-underline": "Keçidlərin altını xətlə:",
"editingsection": "Redaktə $1 (bölmə)",
"editingcomment": "Redaktə et $1 (yeni bölmə)",
"editconflict": "Eyni vaxtda redaktə: $1",
+ "explainconflict": "Siz məqaləni redaktə etməyə başlamazdan əvvəl başqa bir istifadəçi onu redaktə etmişdir. Yuxarıdakı mətn bölməsində hazırda mövcud olan səhifə mətni göstərilmişdir. Sizin düzəlişləriniz aşağıdakı mətn bölməsində göstərilmişdir. Siz dəyişiklikləri mövcud mətn ilə birləşdirməli olacaqsınız. \"$1\" düyməsini sıxdıqda <strong>yalnız</strong> yuxarıdakı mətn yayımlanacaq.",
"yourtext": "Mətniniz",
"storedversion": "Qeyd edilmiş versiya",
"editingold": "'''DİQQƏT! Siz bu səhifənin köhnə versiyasını redaktə edirsiniz. Məqaləni yaddaşda saxlayacağınız halda bu versiyadan sonra edilmiş hər bir dəyişiklik itiriləcək.'''",
"prefs-personal": "İstifadəçi profili",
"prefs-rc": "Son dəyişikliklər",
"prefs-watchlist": "İzləmə siyahısı",
+ "prefs-editwatchlist": "İzləmə siyahısını redaktə et",
+ "prefs-editwatchlist-label": "İzləmə siyahısındakıları redaktə et",
+ "prefs-editwatchlist-edit": "İzləmə siyahısındakı başlıqlara bax və ləğv et",
+ "prefs-editwatchlist-raw": "Mətn kimi redaktə et",
+ "prefs-editwatchlist-clear": "İzləmə siyahısını təmizlə",
"prefs-watchlist-days": "İzləmə siyahısında göstərilən maksimal günlərin sayı:",
"prefs-watchlist-days-max": "Maksimum $1 {{PLURAL:$1|gün|gün}}",
"prefs-watchlist-edits": "İzləmə siyahısında göstərilən maksimal redaktələrin sayı:",
"prefs-watchlist-edits-max": "Maksimum say: 1000",
"prefs-watchlist-token": "İzləmə siyahısı nişanı:",
+ "prefs-watchlist-managetokens": "Tokenləri idarə et",
"prefs-misc": "Digər seçimlər",
"prefs-resetpass": "Parolu dəyiş",
"prefs-changeemail": "E-poçtu dəyiş və ya sil",
"prefs-advancedwatchlist": "Ətraflı variantlar",
"prefs-displayrc": "Görüntü variantları",
"prefs-displaywatchlist": "Görüntü variantları",
+ "prefs-changesrc": "Dəyişikliklərin göstərişi",
+ "prefs-pageswatchlist": "İzlənilmiş səhifələr",
"prefs-diffs": "Fərqlər",
"userrights": "İstifadəçi haqları",
"userrights-lookup-user": "İstifadəçi seçimi",
"sp-contributions-username": "IP-ünvanı və ya istifadəçi adı:",
"sp-contributions-toponly": "Son redaktə olan dəyişiklikləri göstər",
"sp-contributions-newonly": "Yalnız yeni səhifə yaradılan dəyişiklikləri göstər",
+ "sp-contributions-hideminor": "Kiçik redaktələri gizlət",
"sp-contributions-submit": "Axtar",
"whatlinkshere": "Bu səhifəyə bağlantılar",
"whatlinkshere-title": "\"$1\" məqaləsinə keçid verən səhifələr",
"special-characters-group-thai": "Tay",
"special-characters-group-lao": "Lao",
"special-characters-group-khmer": "Khmer",
- "mw-widgets-usersmultiselect-placeholder": "Əlavə et..."
+ "mw-widgets-dateinput-no-date": "Tarix seçilməyib",
+ "mw-widgets-usersmultiselect-placeholder": "Əlavə et...",
+ "date-range-from": "Tarixindən:",
+ "date-range-to": "Tarixədək:"
}
"rcfilters-group-results-by-page": "دییشیکلیکلری صفحهلرینه گؤره سیرالا",
"rcfilters-activefilters": "چالیشقان فیلترلر",
"rcfilters-activefilters-hide": "گیزلت",
+ "rcfilters-activefilters-hide-tooltip": "چالیشقان فیترلر بؤلومونو گیزلت",
"rcfilters-advancedfilters": "گئنیش فیلترلر",
"rcfilters-limit-title": "دَییشدیرمه ساییسی",
"rcfilters-date-popup-title": "آختاریش چاغی",
"rcfilters-filtergroup-userExpLevel": "ایشلدن آدیازدیرما و تجروبهسی",
"rcfilters-filter-user-experience-level-registered-label": "آدیازدیریلمیش",
"rcfilters-filter-user-experience-level-unregistered-label": "آدیازدیریلمامیش",
+ "rcfilters-filter-user-experience-level-newcomer-label": "یئنی گلنلر",
"rcfilters-filter-user-experience-level-learner-label": "اؤیرننلر",
"rcfilters-filter-user-experience-level-experienced-label": "تجروبهلی ایشلدنلر",
"rcfilters-filtergroup-automated": "اوْتوماتیک دییشدیرمهلر",
"rcfilters-filter-major-label": "کیچیک اوْلمایان دییشدیرمهلر",
"rcfilters-filtergroup-watchlist": "ایزلنمیش صفحهلر",
"rcfilters-filter-watchlist-watched-label": "ایزلنمیش",
+ "rcfilters-filter-watchlist-notwatched-label": "ایزلنمهمیش",
"rcfilters-filtergroup-changetype": "دَییشیکلیک نوعو",
"rcfilters-filter-pageedits-label": "صفحه دییشدیرمهلری",
"rcfilters-filter-newpages-label": "صفحه یاراتما",
"filedelete-reason-otherlist": "Іншая прычына",
"filedelete-reason-dropdown": "* Звычайныя прычыны выдаленьня\n** парушэньне аўтарскіх правоў\n** файл-дублікат",
"filedelete-edit-reasonlist": "Рэдагаваць прычыны выдаленьня",
- "filedelete-maintenance": "Выдаленьне і аднаўленьне файлаў часова забароненае па прычыне падтрымкі.",
+ "filedelete-maintenance": "Выдаленьне і аднаўленьне файлаў часова забароненае праз тэхнічныя працы.",
"filedelete-maintenance-title": "Немагчыма выдаліць файл",
"mimesearch": "Пошук па MIME",
"mimesearch-summary": "Гэта старонка дазваляе адбор файлаў па іх MIME-тыпе.\nФармат уводу: тып_зьместу/падтып або тып_зьместу/*, напрыклад, <code>image/jpeg</code>.",
"prefs-advancedwatchlist": "Разширени настройки",
"prefs-displayrc": "Настройки за показване на списъка",
"prefs-displaywatchlist": "Видими настройки",
+ "prefs-changesrc": "Показвани промени",
"prefs-tokenwatchlist": "Маркер",
"prefs-diffs": "Разлики",
"prefs-help-prefershttps": "Това предпочитание ще бъде активирано при следващото влизане.",
"ns-specialprotected": "N'haller ket kemmañ ar pajennoù en esaouenn anv {{ns:special}}.",
"titleprotected": "Gwarezet eo bet an titl-mañ p'eo bet krouet gant [[User:$1|$1]].\nSetu amañ perak <em>$2</em>.",
"filereadonlyerror": "Dibosupl kemmañ ar restr \"$1\" abalamour m'emañ ar c'havlec'h restroù \"$2\" e mod lenn nemetken.\n\n\"$3\" eo an abeg roet gant merour ar reizhiad en deus prennet anezhi.",
+ "invalidtitle": "Titl direizh",
"invalidtitle-knownnamespace": "Titl direizh gant an esaouenn anv \"$2\" hag an destenn \"$3\"",
"invalidtitle-unknownnamespace": "Titl direizh gant an niverenn esaouenn anv $1 hag an destenn \"$2\" dianav",
"exception-nologin": "N'oc'h ket kevreet",
"subject-preview": "Rakwelet an danvez :",
"previewerrortext": "C'hoarvezet ez eus ur fazi e-ser klask rakwelet ho kemmoù",
"blockedtitle": "Implijer stanket",
- "blockedtext": "'''Stanket eo bet ho kont implijer pe ho chomlec'h IP'''\n\nGant $1 eo bet graet.\nSetu an abeg evit se : ''$2''.\n\n* Stanket adalek : $8\n* Stanket betek : $6\n* Pad ar stankadenn : $7\n\nGallout a rit mont e darempred gant $1 pe gant unan eus ar [[{{MediaWiki:Grouppage-sysop}}|verourien]] all evit eskemm ganto war se. N'hallit implijout an arc'hwel 'kas ur postel d'an implijer-mañ' nemet ma'z eus bet spisaet ganeoc'h ur chomlec'h postel reizh en ho [[Special:Preferences|penndibaboù kont]] ha ma n'eo ket bet stanket.\n$3 eo ho chomlec'h IP, ha #$5 eo niverenn an identelezh stanket.\nMerkit anezho en ho koulennoù bep tro.",
+ "blockedtext": "<strong>Stanket eo bet ho kont implijer pe ho chomlec'h IP</strong>\n\nGant $1 eo bet graet.\nSetu an abeg evit se : <em>$2</em>.\n\n* Stanket adalek : $8\n* Stanket betek : $6\n* Kont stanket : $7\n\nGallout a rit mont e darempred gant $1 pe gant unan eus ar [[{{MediaWiki:Grouppage-sysop}}|verourien]] all evit eskemm ganto war se. N'hallit implijout an arc'hwel ''{{int:emailuser}} nemet ma'z eus bet spisaet ganeoc'h ur chomlec'h postel reizh en ho [[Special:Preferences|penndibaboù kont]] ha ma n'eo ket bet stanket.\n$3 eo ho chomlec'h IP, ha #$5 eo niverenn an identelezh stanket.\nMerkit anezho en ho koulennoù bep tro.",
"autoblockedtext": "Stanket eo bet ho chomlec'h IP ent emgefreek rak implijet e veze gant un implijer all bet stanket gant $1.\nSetu aze an abeg :\n\n: ''$2''\n\n* Deroù ar stankadenn : $8\n* Termen ar stankadenn : $6\n* Kont stanket : $7\n\nGallout a rit mont e darempred gant $1 pe gant unan eus ar\n[[{{MediaWiki:Grouppage-sysop}}|verourien]] all ma kavit abeg er stankadenn.\n\nNotennit mat ne c'hallot implijout an dibarzh \"kas ur postel d'an implijer\" nemet ma'z eus bet merket ganeoc'h ur chomlec'h postel reizh en ho [[Special:Preferences|penndibaboù implijer]] ha ma n'eo ket bet stanket ivez.\n\n$3 eo ho chomlec'h IP evit poent ha #$5 ho niverenn stankadenn.\nMerkit mat an titouroù-se war kement goulenn savet ganeoc'h.\n\n$5 eo ho niverenn stankadenn. Merkit mat an niverenn-se pa rit goulennoù.",
"systemblockedtext": "Stanket eo bet hoc'h anv implijer pe ho chomlec'h IP ent emgefre gant MediaWiki.\nSetu perak :\n\n:<em>$2</em>\n\n* Deroù ar stankadenn : $8\n* Termen ar stankadenn : $6\n* Hinienn a sell ar stankadenn outi : $7\n\n$3 eo ho chomlec'h IP diouzhtu.\nMerkit mat ar munudoù skrivet a-us er c'hlemmoù a c'halljec'h ober.",
"blockednoreason": "n'eus bet roet abeg ebet",
"diff-paragraph-moved-toold": "Ar rannbennad azo bet fiñvet. Klikit evit mont davet al lec'hiadur gozh.",
"difference-missing-revision": "!!{{PLURAL:$2|Un adweladur|$2 adweladurioù}} eus an disheñvelder ($1) {{PLURAL:$2|n'eo ket bet kavet|n'int ket bet adkavet}}.\n\nC'hoarvezout a ra peurliesañ pa vez heuliet ul liamm disheñvel dispredet war-zu ur bajenn zo bet dilamet.\nGallout a reot kavout munudoù e [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} renabl an dilamadurioù].",
"searchresults": "Disoc'hoù enklask",
+ "search-filter-title-prefix-reset": "Klask an holl bajennoù",
"searchresults-title": "Disoc'hoù klask evit \"$1\"",
"titlematches": "Klotadurioù gant an titloù",
"textmatches": "Klotadurioù en testennoù",
"prefs-watchlist-edits": "Niver a gemmoù da ziskouez er roll evezhiañ astennet :",
"prefs-watchlist-edits-max": "Niver brasañ : 1000",
"prefs-watchlist-token": "Jedouer evit ar roll evezhiañ :",
+ "prefs-watchlist-managetokens": "Merañ ar jedoueroù",
"prefs-misc": "Penndibaboù liesseurt",
"prefs-resetpass": "Cheñch ar ger-tremen",
"prefs-changeemail": "Cheñch ar chomlec'h postel pe dilemel anezhañ",
"recentchangeslinked-feed": "Heuliañ ar pajennoù liammet",
"recentchangeslinked-toolbox": "Heuliañ ar pajennoù liammet",
"recentchangeslinked-title": "Kemmoù a denn da \"$1\"",
- "recentchangeslinked-summary": "Merkañ anv ur bajenn evit gwelet ar c'hemmoù war ar pajennoù liammet da pe adalek ar bajenn-se (evit gwelet izili ur rummad bennak, skrivañ Rummad:anv ar rummad).\nE <strong>tev</strong> emañ kemmoù ar pajennoù zo war ho [[Special:Watchlist|roll evezhiañ]].",
+ "recentchangeslinked-summary": "Merkañ anv ur bajenn evit gwelet ar c'hemmoù war ar pajennoù liammet da pe adalek ar bajenn-se (evit gwelet izili ur rummad bennak, skrivañ {{ns:category}}:Anv ar rummad).\nE <strong>tev</strong> emañ kemmoù ar pajennoù zo war ho [[Special:Watchlist|roll evezhiañ]].",
"recentchangeslinked-page": "Anv ar bajenn :",
"recentchangeslinked-to": "Diskouez ar c'hemmoù war-du ar pajennoù liammet kentoc'h eget re ar bajenn lakaet",
"recentchanges-page-added-to-category": "[[:$1]] ouzhpennet d'ar rummad",
"filehist-filesize": "Ment ar restr",
"filehist-comment": "Notenn",
"imagelinks": "Implij ar restr",
- "linkstoimage": "Liammet eo {{PLURAL:$1|ar bajenn-mañ|an $1 pajenn-mañ}} ouzh ar restr-mañ :",
- "linkstoimage-more": "Ouzhpenn $1 {{PLURAL:$1|bajenn zo liammet ouzh|pajenn zo liammet ouzh}} ar restr-mañ.\nNe laka ar roll-mañ war wel nemet {{PLURAL:$1|ar bajenn gentañ liammet ouzh|an $1 pajenn gentañ liammet ouzh}} ar rest-mañ.\nUr [[Special:WhatLinksHere/$2|roll klok]] a c'haller da gaout.",
- "nolinkstoimage": "N'eus liamm ebet war-du ar skeudenn-mañ war pajenn ebet.",
+ "linkstoimage": "Implijout a ra {{PLURAL:$1|ar bajenn da heul|an $1 pajenn da heul}} ar restr-mañ :",
+ "linkstoimage-more": "Ouzhpenn $1 {{PLURAL:$1|bajenn zo liammet ouzh|pajenn zo liammet ouzh}} ar restr-mañ.\nNe ziskwel ar roll-mañ nemet {{PLURAL:$1|ar bajenn gentañ|an $1 pajenn gentañ}} a implij ar restr-mañ.\nUr [[Special:WhatLinksHere/$2|roll klok]] a c'haller da gaout.",
+ "nolinkstoimage": "Pajenn ebet ne implij ar restr-mañ.",
"morelinkstoimage": "Gwelet [[Special:WhatLinksHere/$1|liammoù ouzhpenn]] war-du ar restr-mañ.",
"linkstoimage-redirect": "$1 (adkas restr) $2",
"duplicatesoffile": "Un eil eus ar restr-mañ eo {{PLURAL:$1|ar restr da-heul|ar restroù da-heul}}, ([[Special:FileDuplicateSearch/$2|evit gouzout hiroc'h]]) :",
"deadendpages": "Pajennoù dall (hep liamm diabarzh)",
"deadendpagestext": "Ar pajennoù da-heul n'int ket liammet ouzh pajenn ebet all eus {{SITENAME}}.",
"protectedpages": "Pajennoù gwarezet",
+ "protectedpages-filters": "Siloù :",
"protectedpages-indef": "Gwarezoù da badout hepken",
"protectedpages-summary": "Rollañ a ra ar bajenn-mañ ar pajennoù zo gwarezet evit ar mare. Evit kaout roll ar pajennoù n'haller ket krouiñ, sellet ouzh [[{{#special:ProtectedTitles}}|{{int:protectedtitles}}]].",
"protectedpages-cascade": "Gwarez dre skalierad hepken",
"ipb-disableusertalk": "Mirout ouzh an implijer-mañ da implijout e bajenn gaozeal dezhañ e-unan e-keit hag emañ stanket",
"ipb-change-block": "Adstankañ an implijer-mañ gant an hevelep arventennoù",
"ipb-confirm": "Kadarnaat ar stankadenn",
+ "ipb-type-label": "Seurt",
+ "ipb-pages-label": "Pajennoù",
"badipaddress": "Kamm eo ar chomlec'h IP.",
"blockipsuccesssub": "Stankadenn deuet da benn vat",
"blockipsuccesstext": "Stanket eo bet [[Special:Contributions/$1|$1]].<br />\nSellit ouzh [[Special:BlockList|roll ar chomlec'hioù IP ha kontoù stanket]] evit gwiriañ ar stankadennoù.",
"createaccountblock": "Harzet eo ar c'hrouiñ kontoù",
"emailblock": "Postel stanket",
"blocklist-nousertalk": "n'hall ket kemmañ e bajenn gaozeal dezhañ e-unan",
+ "blocklist-editing": "O kemmañ",
+ "blocklist-editing-sitewide": "o kemmañ (al lec'hienn a-bezh)",
"ipblocklist-empty": "Goullo eo roll ar stankadennoù.",
"ipblocklist-no-results": "An anv implijer pe ar chomlec'h IP goulennet n'eo ket stanket anezhañ.",
"blocklink": "stankañ",
"pageinfo-display-title": "Titl diskwelet",
"pageinfo-default-sort": "Alc'hwez rummañ dre ziouer",
"pageinfo-length": "Ment ar bajenn (en oktedoù)",
+ "pageinfo-namespace": "Esaouenn anv",
"pageinfo-article-id": "Niverenn ar bajenn",
"pageinfo-language": "Yezh ar bajenn",
"pageinfo-language-change": "kemmañ",
"confirm-unwatch-top": "Lemel ar bajenn-mañ a-ziwar ho roll evezhiañ",
"confirm-rollback-button": "Mat eo",
"confirm-rollback-top": "Disteurel ar c'hemmoù graet er bajenn-mañ ?",
+ "confirm-mcrundo-title": "Dizober ur c'hemm",
+ "mcrundofailed": "Dizober c'hwitet",
+ "mcrundo-missingparam": "Arventennoù rekis d'ar reked a vank.",
"quotation-marks": "« $1 »",
"imgmultipageprev": "← pajenn gent",
"imgmultipagenext": "pajenn war-lerc'h →",
"tag-mw-contentmodelchange": "cheñch ar patrom danvez",
"tag-mw-contentmodelchange-description": "KEmmoù a [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:ChangeContentModel cheñch patrom danvez] ur bajenn",
"tag-mw-new-redirect": "Adkas nevez",
+ "tag-mw-removed-redirect": "Nullañ an adkas",
+ "tag-mw-blank": "Goullonderiñ",
+ "tag-mw-replace": "Erlerc'hiet",
+ "tag-mw-rollback": "Dizober",
"tag-mw-undo": "Dizober",
"tags-title": "Tikedennoù",
"tags-intro": "Rollañ a ra ar bajenn-mañ an tikedennoù a c'hall ar meziant implijout da verkañ kemmoù hag o zalvoudegezh.",
"mw-widgets-titleinput-description-redirect": "adkas war-zu $1",
"mw-widgets-categoryselector-add-category-placeholder": "Ouzhpennañ ur rummad...",
"mw-widgets-usersmultiselect-placeholder": "Ouzhpennañ muioc'h...",
+ "mw-widgets-titlesmultiselect-placeholder": "Ouzhpennañ muioc'h...",
"date-range-from": "Adalek deiziañ an :",
"date-range-to": "Betek deiziad an :",
"sessionmanager-tie": "N'hallet ket kevrediñ meur a seurt reked dilesañ : $1.",
"recentchangescount": "ژمارەی گۆڕانکارییەکان کە نیشان ئەدرێن لە حاڵەتی دیفاڵت:",
"prefs-help-recentchangescount": "زۆرترین ژمارە: ١٠٠٠",
"prefs-help-watchlist-token2": "ئەمە کلیلێکی تایبەتیی پێڕستی چاودێرییەکەتە. ھەرکەسێک بیزانێت دەتوانێت پێڕستی چاودێرییەکەت ببینێت، بۆیە لای خۆت بیپارێزە.\nئەگەر پێویستی کرد، [[Special:ResetTokens|دەتوانیت بیگۆڕیت]].",
+ "prefs-help-tokenmanagement": "دەتوانیت کلیلی نهێنی هەژمارەکەت ببینیت و بگۆڕیت، کە پێڕستی چاودێریتی پێ دەبینرێت. هەرکەسێک ئەم کلیلە بزانێت دەتوانێت پێڕستی چاودێریت ببینێت، بۆیە مەیدە بە کەس.",
"savedprefs": "ھەڵبژاردەکانت پاشەکەوت کران",
"savedrights": "گرووپەکانی بەکارھێنەر بۆ $1 پاشەکەوت کران.",
"timezonelegend": "ناوچەی کاتی:",
"prefs-advancedwatchlist": "هەڵبژاردە پێشکەوتووەکان",
"prefs-displayrc": "ھەڵبژاردەکانی نیشاندان",
"prefs-displaywatchlist": "ھەڵبژاردەکانی نیشاندان",
+ "prefs-changesrc": "ئەو گۆڕانکارییانەی نیشان دەدرێن",
+ "prefs-changeswatchlist": "ئەو گۆڕانکارییانەی نیشان دەدرێن",
+ "prefs-pageswatchlist": "پەڕە چاودێریکراوەکان",
"prefs-tokenwatchlist": "نیشانە",
"prefs-diffs": "جیاوازییەکان",
"prefs-help-prefershttps": "بەکارخستنی ئەم تایبەتمەندییە کاریگەری لەسەر چوونەژوورەوەی داھاتووت دروست دەکات",
"changecontentmodel-reason-label": "هۆکار:",
"changecontentmodel-submit": "گۆڕین",
"log-name-contentmodel": "لۆگی گۆڕینی مۆدێلی ناوەڕۆک",
+ "logentry-contentmodel-new": "$1 پەڕەی $3ی بە مۆدێلی ناوەڕۆکی نابنچینەیی «$5» دروست کرد.",
"logentry-contentmodel-change": "$1 {{GENDER:$2|مۆدێلی}} ناوەڕۆکی پەڕەی $3ی لە «$4» گۆڕی بە «$5»",
"logentry-contentmodel-change-revertlink": "گەڕاندنەوە",
"logentry-contentmodel-change-revert": "گەڕاندنەوە",
"grant-delete": "Mazat stránky, revize a protokolovací záznamy",
"grant-editinterface": "Editovat jmenný prostor MediaWiki a celoprojektový/uživatelský JSON",
"grant-editmycssjs": "Editovat váš uživatelský CSS/JSON/JavaScript",
- "grant-editmyoptions": "Změna vašich uživatelských nastavení",
+ "grant-editmyoptions": "Změna vašich uživatelských nastavení a konfigurace JSON",
"grant-editmywatchlist": "Upravovat váš seznam sledovaných stránek",
"grant-editsiteconfig": "Editovat celoprojektové a uživatelské CSS/JS",
"grant-editpage": "Editovat existující stránky",
"mcrundofailed": "Vrácení editace zpět se nezdařilo",
"mcrundo-missingparam": "V požadavku chybí povinné parametry.",
"mcrundo-changed": "Od chvíle, kdy jste si prohlédli rozdíl, se stránka změnila. Zkontrolujte prosím novou změnu.",
+ "mcrundo-parse-failed": "Nepodařilo se analyzovat novou revizi: $1",
"ellipsis": "…",
"percent": "$1 %",
"quotation-marks": "„$1“",
"Saederup92",
"Fitoschido",
"Jorn Ari",
- "Fnielsen"
+ "Fnielsen",
+ "Weblars"
]
},
"tog-underline": "Understreg henvisninger:",
"prefs-editwatchlist-clear": "Ryd din overvågningsliste",
"prefs-watchlist-days": "Antal dage der skal vises i overvågningslisten:",
"prefs-watchlist-days-max": "Højst $1 {{PLURAL:$1|dag|dage}}",
- "prefs-watchlist-edits": "Maksimalt antal redigeringer der vises i overvågningsliste:",
+ "prefs-watchlist-edits": "Maksimalt antal redigeringer der vises i overvågningslisten:",
"prefs-watchlist-edits-max": "Maks. 1000",
- "prefs-watchlist-token": "Overvågningslistenøgle:",
+ "prefs-watchlist-token": "Nøgle til overvågningsliste:",
+ "prefs-watchlist-managetokens": "Håndtér nøgler",
"prefs-misc": "Forskelligt",
"prefs-resetpass": "Skift adgangskode",
"prefs-changeemail": "Skift eller fjern e-mailadresse",
"stub-threshold-disabled": "Deaktiveret",
"recentchangesdays": "Antal dage som skal vises i seneste ændringer:",
"recentchangesdays-max": "(maks. $1 {{PLURAL:$1|dag|dage}})",
- "recentchangescount": "Antal redigeringer som skal vises som standard i sidste ændringer, sidehistorikker og logger:",
+ "recentchangescount": "Antal redigeringer der som standard vises i seneste ændringer, sidehistorikker og logger:",
"prefs-help-recentchangescount": "Maksimalt antal: 1000",
"prefs-help-watchlist-token2": "Dette er den hemmelige nøgle til web-feed af din overvågningsliste.\nHvis andre kender den, vil man være i stand til at læse din overvågningsliste, så del den ikke.\n[[Special:ResetTokens|Klik her]] hvis du har brug at nulstille den.",
+ "prefs-help-tokenmanagement": "Du kan se og nulstille den hemmelige nøgle for din konto som kan få tilgang til din overvågningsliste via feeds. Alle som har nøglen vil kunne læse din overvågningsliste, så del den derfor ikke.",
"savedprefs": "Dine indstillinger er blevet gemt.",
"savedrights": "Brugergrupperne for {{GENDER:$1|$1}} er blevet gemt.",
"timezonelegend": "Tidszone:",
"prefs-changesrc": "Ændringer vist",
"prefs-changeswatchlist": "Ændringer vist",
"prefs-pageswatchlist": "Overvågede sider",
- "prefs-tokenwatchlist": "Mærke",
+ "prefs-tokenwatchlist": "Nøgle",
"prefs-diffs": "Forskelle",
"prefs-help-prefershttps": "Denne indstilling træder i kraft næste gang du logger på.",
"prefswarning-warning": "Du har foretaget ændringer af dine indstillinger, som ikke er gemt endnu.\nHvis du forlader denne side uden at klikke \"$1\", vil dine indstillinger ikke blive opdateret.",
"rcfilters-watchlist-showupdated": "Ændringer til sider du ikke har besøgt siden ændringerne blev gjort vises med <strong>fed</strong>, med faste markører.",
"rcfilters-preference-label": "Brug grænsefladesnittet uden JavaScript",
"rcfilters-watchlist-preference-label": "Brug grænsefladesnittet uden JavaScript",
+ "rcfilters-watchlist-preference-help": "Indlæser overvågningslisten uden mulighed for søgning med filter eller fremhævelse.",
"rcfilters-filter-showlinkedto-label": "Vis ændringer på sider der linker til",
"rcfilters-target-page-placeholder": "Indtast et sidenavn (eller en kategori)",
"rcnotefrom": "Nedenfor er op til '''$1''' {{PLURAL:$5|ændring|ændringer}} siden '''$2''' vist.",
"tags-delete": "slet",
"tags-activate": "aktiver",
"tags-deactivate": "deaktiver",
- "tags-hitcount": "{{PLURAL:$1|en ændring|$1 ændringer}}",
+ "tags-hitcount": "{{PLURAL:$1|1 ændring|$1 ændringer}}",
"tags-create-heading": "Opret et nyt mærke",
"tags-create-explanation": "Som standard vil nye mærker blive gjort tilgængelige for brugere og robotter.",
"tags-create-tag-name": "Mærkenavn:",
"grant-delete": "Seiten, Versionen und Logbucheinträge löschen",
"grant-editinterface": "Den MediaWiki-Namensraum und wikiweites/Benutzer-JSON bearbeiten",
"grant-editmycssjs": "Dein Benutzer-CSS/JSON/JavaScript bearbeiten",
- "grant-editmyoptions": "Deine Benutzereinstellungen bearbeiten",
+ "grant-editmyoptions": "Deine Benutzereinstellungen und JSON-Konfiguration bearbeiten",
"grant-editmywatchlist": "Deine Beobachtungsliste bearbeiten",
"grant-editsiteconfig": "Wikiweites und Benutzer-CSS/JS bearbeiten",
"grant-editpage": "Vorhandene Seiten bearbeiten",
"subject": "Mewzu:",
"minoredit": "No yew vırnayışo werdiyo",
"watchthis": "Şıma bewnê ena perre",
- "savearticle": "Perre qeyd ke",
+ "savearticle": "Pele qeyd ke",
"savechanges": "Vırnayışan qeyd kerê",
"publishpage": "Riperri bare ke",
"publishchanges": "Vırnayışan qeyd ke",
"explainconflict": "Wexta ke şıma pel vurneyene yewna ten zi pel vurna.\nNuşteyo corin; halê pelo nıkayin mocneno.\nVurnayişê şıma cêr de mocya ( musya).\nVurnayişanê peyinan şıma gani qayd bıkeri.\nWexta ke şıma butonê \"$1\" tıkna '''teyna''' nuşteyo corin qayd beno.",
"yourtext": "nuşteyê şıma",
"storedversion": "Nuşteyo qaydbiyaye",
- "editingold": "'''İqaz: Şıma ena perre sera yew çım ra viyarnayışê kıhani vırnenê.'''\nEger şıma ey qeyd kerê, pêro vırnayışê ke çım ra viyarnayış ra heta ewro biy, ê benê vıni.",
+ "editingold": "'''İqaz: Şıma ena pele sera yew çım ra viyarnayışê kıhani vurnenê.'''\nEger şıma ey qeyd kerê, pêro vurnayışê ke çımraviyarnayış ra heta ewro biy, ê benê vıni.",
"yourdiff": "pêverronayiş",
"copyrightwarning": "'''Recay iqazi:'''Sitey {{SITENAME}} ra iştıraki pêro umışiya $2 zerre deyo (teferuatan rê $1 bıvênê).\n\nİştırakê şıma, şıma qayıl niyê ke yewna merdımi kerpeyina bıvurnê ya zi yewna cayi ra vıla kerê ke, iştırakiştıraq = iştırak. mekewê.<br />\nFına zi qayılê ke iştıraq kewê, şıma qayılê ke şar vaco eno nuşte fılan kesi nusnayo ya zi meqemanê resmiyan ra zanayışê cı û malumatê cı esto / cayanê xoseran ra gırewtışi rê şıma garanti danê. '''Tiya de şıma werê telifi ra ke mısade nêgırewto, eserê cı tiya vıla mekerê! '''",
"copyrightwarning2": "Ney bızanê ke nuşteyê ke şıma ruşnenê (şawenê) keyepela {{SITENAME}} herkes eşkeno nê nuşteyanê şıma ser kay bıkero. Eke şıma qayil niyê kes bıvurno, nuşteyanê xo meerzê ita. <br />\nWexto ke şıma nuşteyi zi erzenê ita; şıma gani teahud bıdê koti ra ardo (qandê teferuati ra referans: $1).",
"feedback-bugnew": "Mı kontrol kı. Xetay newi xeber kı.",
"feedback-bugornote": "Jew mersela teferruato teknik esta şıma reca malumatê şıma hazıro se [ $1 jew xırab rapor] bıvinê.Zewbi zi, formê cerê xo rê şenê karfiyê. Vatışê xo pela da \"[ $3 $2 ]\", namey karber dê xoya piya u wasteriya karfiye.",
"feedback-cancel": "Peyd kı",
- "feedback-close": "Biya star",
+ "feedback-close": "Temam",
"feedback-error1": "Xeta: APIi ra peyniyê nêşınasiyay",
"feedback-error2": "Xeta: Timar kerdış nebı",
"feedback-error3": "Xeta: API ra cewab çıno",
"grant-delete": "Delete pages, revisions, and log entries",
"grant-editinterface": "Edit the MediaWiki namespace and sitewide/user JSON",
"grant-editmycssjs": "Edit your user CSS/JSON/JavaScript",
- "grant-editmyoptions": "Edit your user preferences",
+ "grant-editmyoptions": "Edit your user preferences and JSON configuration",
"grant-editmywatchlist": "Edit your watchlist",
"grant-editsiteconfig": "Edit sitewide and user CSS/JS",
"grant-editpage": "Edit existing pages",
"grant-delete": "Supprimer les pages, les révisions et les entrées du journal",
"grant-editinterface": "Modifier l’espace de noms MediaWiki et le JSON du site/utilisateur",
"grant-editmycssjs": "Modifier votre CSS/JSON/JavaScript utilisateur",
- "grant-editmyoptions": "Modifier vos préférences utilisateur",
+ "grant-editmyoptions": "Modifier vos préférences utilisateur et votre configuration JSON",
"grant-editmywatchlist": "Modifier votre liste de suivi",
"grant-editsiteconfig": "Modifier les CSS/JS du site et ceux de l'utilisateur",
"grant-editpage": "Modifier des pages existantes",
"grant-delete": "מחיקת דפים, גרסאות ורשומות יומן",
"grant-editinterface": "עריכת מרחב השם מדיה ויקי וקובצי JSON של האתר כולו ושל משתמשים",
"grant-editmycssjs": "עריכת CSS/JSON/JavaScript שלך",
- "grant-editmyoptions": "עריכת העדפות המשתמש שלך",
+ "grant-editmyoptions": "ער×\99×\9bת ×\94×¢×\93פ×\95ת ×\94×\9eשת×\9eש ×\95תצ×\95רת ×\94Ö¾JSON ש×\9c×\9a",
"grant-editmywatchlist": "עריכת רשימת המעקב שלך",
"grant-editsiteconfig": "עריכת קובצי CSS/JS של האתר כולו ושל משתמשים",
"grant-editpage": "עריכת דפים קיימים",
"userlogin-createanother": "Másik felhasználói fiók létrehozása",
"createacct-emailrequired": "E-mail-cím",
"createacct-emailoptional": "E-mail-cím (opcionális)",
- "createacct-email-ph": "Add meg e-mail címed",
+ "createacct-email-ph": "Add meg e-mail-címed",
"createacct-another-email-ph": "Add meg az e-mail-címet",
"createaccountmail": "Átmeneti, véletlenszerű jelszó beállítása és kiküldése a megadott e-mail-címre",
"createaccountmail-help": "A jelszó megismerése nélkül készíthető valaki másnak fiók.",
"sp-contributions-logs": "registrari",
"sp-contributions-talk": "diskutez",
"sp-contributions-userrights": "yuri dil {{GENDER:$1|uzero}} pri administrado",
+ "sp-contributions-blocked-notice": "Ca uzero nun esas blokusata.\nVu povas vidar la lasta etiketo pri blokuso adinfre:",
"sp-contributions-blocked-notice-anon": "Ica IP-adreso esas nune blokusita.\nLa maxim recenta etiketo pri blokuso esas videbla adinfre, por refero:",
"sp-contributions-search": "Serchar kontributadi",
"sp-contributions-username": "IP-adreso od uzantonomo:",
"returnto": "$1 എന്ന താളിലേക്ക് മടങ്ങുക.",
"tagline": "{{SITENAME}} സംരംഭത്തിൽ നിന്ന്",
"help": "സഹായം",
+ "help-mediawiki": "മീഡിയവിക്കി സംബന്ധിച്ച സഹായം",
"search": "തിരയൂ",
"search-ignored-headings": " #<!-- ഈ വരി ഇതേ പോലെ വിടുക --> <pre>\n# തിരച്ചിലിൽ അവഗണിക്കപ്പെടുന്ന തലക്കെട്ടുകൾ.\n# താളിന്റെ തലക്കെട്ടുകളുടെ സൂചികവത്കരണം നടന്നാലുടൻ ഇവിടെ വരുത്തുന്ന മാറ്റങ്ങൾ ഫലത്തിൽ വരുന്നതാണ്.\n# ശൂന്യമായ തിരുത്ത് ചെയ്ത് താൾ വീണ്ടും സൂചികാവത്കരിക്കാവുന്നതാണ്.\n# എഴുത്തുരീതി ഇനി കൊടുക്കുന്നു:\n# * \"#\" അക്ഷരത്തിൽ തുടങ്ങി വരിയുടെ അവസാനം വരെയുള്ള എന്തും സൂചനാക്കുറിപ്പ് ആയിരിക്കും.\n# * ശൂന്യമല്ലാത്ത ഓരോ വരിയും അക്ഷരവ്യത്യാസമില്ലാതെ അവഗണിക്കപ്പെടാനുള്ള തലക്കെട്ടായിരിക്കും\nഅവലംബം\nപുറത്തേക്കുള്ള കണ്ണികൾ\nഇതും കാണുക\n #</pre> <!-- ഈ വരി ഇതേ പോലെ വിടുക-->",
"searchbutton": "തിരയൂ",
"badarticleerror": "താങ്കൾ ചെയ്യാനുദ്ദേശിക്കുന്നത് ഈ താളിൽ സാദ്ധ്യമല്ല",
"cannotdelete": "\"$1\" എന്ന താൾ അഥവാ പ്രമാണം നീക്കം ചെയ്യാൻ കഴിഞ്ഞില്ല.\nഅതു മിക്കവാറും മറ്റാരെങ്കിലും നീക്കം ചെയ്തിട്ടുണ്ടാവാം.",
"cannotdelete-title": "\"$1\" എന്ന താൾ മായ്ക്കാൻ കഴിയില്ല",
+ "delete-scheduled": "\"$1\" താൾ മായ്ക്കാൻ നിശ്ചയിച്ചിരിക്കുന്നു.\nദയവായി കാത്തിരിക്കുക.",
"delete-hook-aborted": "മായ്ക്കൽ കൊളുത്തിനാൽ റദ്ദാക്കിയിരിക്കുന്നു.\nവിശദീകരണമൊന്നും നൽകിയിട്ടില്ല.",
"no-null-revision": "\"$1\" എന്ന താളിന് പുതിയ ശൂന്യമായ മാറ്റമുള്ള നാൾപ്പതിപ്പ് സൃഷ്ടിക്കാൻ കഴിഞ്ഞില്ല",
"badtitle": "അസാധുവായ തലക്കെട്ട്",
"cascadeprotected": "\"നിർഝരിത\" (cascading) സൗകര്യം ഉപയോഗിച്ച് തിരുത്തൽ നടത്തുന്നതിനു സംരക്ഷണം ഏർപ്പെടുത്തിയിട്ടുള്ള {{PLURAL:$1|താഴെ കൊടുത്തിട്ടുള്ള താളിന്റെ|താഴെ കൊടുത്തിട്ടുള്ള താളുകളുടെ}} ഭാഗമാണ് ഈ താൾ. അതിനാൽ ഈ താൾ തിരുത്താൻ സാധിക്കില്ല:\n$2",
"namespaceprotected": "'''$1''' നാമമേഖലയിലുള്ള താളുകൾ തിരുത്താൻ താങ്കൾക്ക് അനുവാദമില്ല.",
"customcssprotected": "ഈ സി.എസ്.എസ്. താളിൽ മറ്റൊരു ഉപയോക്താവിന്റെ സ്വകാര്യസജ്ജീകരണങ്ങൾ ഉൾക്കൊള്ളുന്നു, അതിനാൽ താങ്കൾക്ക് ഈ താൾ തിരുത്താൻ അനുവാദമില്ല.",
+ "customjsonprotected": "ഈ ജെസൺ താളിൽ മറ്റൊരു ഉപയോക്താവിന്റെ സ്വകാര്യസജ്ജീകരണങ്ങൾ ഉൾക്കൊള്ളുന്നു, അതിനാൽ താങ്കൾക്ക് ഈ താൾ തിരുത്താൻ അനുവാദമില്ല.",
"customjsprotected": "ഈ ജാവാസ്ക്രിപ്റ്റ് താളിൽ മറ്റൊരു ഉപയോക്താവിന്റെ സ്വകാര്യസജ്ജീകരണങ്ങൾ ഉൾക്കൊള്ളുന്നു, അതിനാൽ താങ്കൾക്ക് ഈ താൾ തിരുത്താൻ അനുവാദമില്ല.",
+ "sitecssprotected": "എല്ലാ സന്ദർശകരേയും ബാധിക്കാനിടയുള്ളതിനാൽ ഈ സി.എസ്.എസ്. താൾ തിരുത്താൻ താങ്കൾക്ക് അനുമതി ഇല്ല.",
+ "sitejsonprotected": "എല്ലാ സന്ദർശകരേയും ബാധിക്കാനിടയുള്ളതിനാൽ ഈ ജെസൺ താൾ തിരുത്താൻ താങ്കൾക്ക് അനുമതി ഇല്ല.",
+ "sitejsprotected": "എല്ലാ സന്ദർശകരേയും ബാധിക്കാനിടയുള്ളതിനാൽ ഈ ജാവാസ്ക്രിപ്റ്റ് താൾ തിരുത്താൻ താങ്കൾക്ക് അനുമതി ഇല്ല.",
"mycustomcssprotected": "ഈ സി.എസ്.എസ്. താൾ തിരുത്താനുള്ള അനുമതി താങ്കൾക്കില്ല.",
+ "mycustomjsonprotected": "ഈ ജെസൺ താൾ തിരുത്താനുള്ള അനുമതി താങ്കൾക്കില്ല.",
"mycustomjsprotected": "ഈ ജാവാസ്ക്രിപ്റ്റ് താൾ തിരുത്താനുള്ള അനുമതി താങ്കൾക്കില്ല.",
"myprivateinfoprotected": "താങ്കൾക്ക് സ്വന്തം സ്വകാര്യവിവരങ്ങൾ തിരുത്താനുള്ള അനുമതിയില്ല.",
"mypreferencesprotected": "താങ്കൾക്ക് സ്വന്തം ക്രമീകരണങ്ങൾ തിരുത്താനുള്ള അനുമതിയില്ല.",
"passwordtooshort": "രഹസ്യവാക്കിൽ കുറഞ്ഞതു {{PLURAL:$1|ഒരു അക്ഷരം|$1 അക്ഷരങ്ങൾ}} ഉണ്ടായിരിക്കണം.",
"passwordtoolong": "രഹസ്യവാക്കിൽ പരമാവധി {{PLURAL:$1|ഒരു അക്ഷരം|$1 അക്ഷരങ്ങൾ}} മാത്രമേ പാടുള്ളു.",
"passwordtoopopular": "പരക്കെ ഉപയോഗിക്കുന്ന രഹസ്യവാക്കുകൾ ഉപയോഗിക്കരുത്. ദയവായി ഊഹിച്ചെടുക്കാൻ ബുദ്ധിമുട്ടുള്ള രഹസ്യവാക്ക് തിരഞ്ഞെടുക്കുക.",
+ "passwordinlargeblacklist": "വളരെ സാധാരണമായി ഉപയോഗിക്കപ്പെടുന്ന രഹസ്യവാക്കുകളുടെ പട്ടികയിൽ പെട്ട രഹസ്യവാക്കാണ് നൽകിയത്. ദയവായി ഒരു അനന്യമായ രഹസ്യവാക്ക് തിരഞ്ഞെടുക്കുക.",
"password-name-match": "താങ്കളുടെ രഹസ്യവാക്ക് ഉപയോക്തൃനാമത്തിൽ നിന്നും വ്യത്യസ്തമായിരിക്കണം.",
"password-login-forbidden": "ഈ ഉപയോക്തൃനാമത്തിന്റെയും രഹസ്യവാക്കിന്റെയും ഉപയോഗം നിരോധിച്ചിരിക്കുന്നു.",
"mailmypassword": "രഹസ്യവാക്ക് പുനഃക്രമീകരിക്കുക",
"changepassword-throttled": "കുറഞ്ഞ സമയത്തിനുള്ളിൽ താങ്കൾ നിരവധി തവണ പ്രവേശിക്കാൻ ശ്രമിച്ചിരിക്കുന്നു.\nവീണ്ടും ശ്രമിക്കുന്നതിനു മുമ്പ് ദയവായി $1 കാത്തിരിക്കുക.",
"botpasswords": "യന്ത്രത്തിനുള്ള രഹസ്യവാക്കുകൾ",
"botpasswords-disabled": "യാന്ത്രിക രഹസ്യവാക്കുകൾ അനുവദനീയമല്ല.",
+ "botpasswords-label-needsreset": "(രഹസ്യവാക്ക് പുനഃസജ്ജീകരിക്കേണ്ടതുണ്ട്)",
"botpasswords-label-appid": "യന്ത്രത്തിന്റെ പേര്:",
"botpasswords-label-create": "സൃഷ്ടിക്കുക",
"botpasswords-label-update": "പുതുക്കുക",
"passwordreset-emailsentemail": "താങ്കളുടെ അംഗത്വത്തിന് നൽകിയിട്ടുള്ള ഇമെയിൽ വിലാസം ഇതാണെങ്കിൽ, രഹസ്യവാക്ക് പുനർസജ്ജീകരണ ഇമെയിൽ അയക്കുന്നതാണ്.",
"passwordreset-emailsentusername": "ഈ ഉപയോക്തൃനാമത്തിന് ഒരു ഇമെയിൽ വിലാസം ചേർത്തിട്ടുണ്ടെങ്കിൽ, രഹസ്യവാക്ക് പുനർസജ്ജീകരണ ഇമെയിൽ അയക്കുന്നതാണ്.",
"passwordreset-invalidemail": "അസാധുവായ ഇമെയിൽ വിലാസം",
+ "passwordreset-nodata": "ഉപയോക്തൃനാമമോ ഇമെയിൽ വിലാസമോ നൽകിയിട്ടില്ല",
"changeemail": "ഇമെയിൽ വിലാസം മാറ്റുക അല്ലെങ്കിൽ നീക്കംചെയ്യുക",
"changeemail-header": "താങ്കളുടെ ഇമെയിൽ വിലാസത്തിൽ മാറ്റംവരുത്താൻ ഈ ഫോം പൂരിപ്പിച്ചു നൽകുക.താങ്കളുടെ അംഗത്വവുമായി ഏതെങ്കിലുമൊരു ഇമെയിൽ വിലാസത്തിനുള്ള ബന്ധം ഒഴിവാക്കാൻ ഫോം പൂരിപ്പിക്കുമ്പോൾ പുതിയ ഇമെയിൽ വിലാസത്തിനുള്ള ഭാഗം ഒഴിച്ചിടുക.",
"changeemail-no-info": "ഈ താൾ നേരിട്ടു കാണുന്നതിന് താങ്കൾ ലോഗിൻ ചെയ്തിരിക്കണം.",
"subject-preview": "വിഷയം എങ്ങനെയുണ്ടെന്ന് കാണുക:",
"previewerrortext": "താങ്കളുടെ മാറ്റങ്ങൾ എങ്ങനെയുണ്ടെന്ന് കാണാൻ ശ്രമിച്ചപ്പോൾ പിഴവുണ്ടായി.",
"blockedtitle": "ഉപയോക്താവിനെ തടഞ്ഞിരിക്കുന്നു",
+ "blocked-email-user": "<strong>ഇമെയിൽ അയക്കുന്നതിൽ നിന്നും താങ്കളുടെ ഉപയോക്തൃനാമത്തെ തടഞ്ഞിരിക്കുന്നു. ഈ വിക്കിയിലെ മറ്റ് താളുകൾ താങ്കൾക്ക് തിരുത്താവുന്നതാണ്.</strong> [[Special:MyContributions|അംഗത്വത്തിന്റെ സംഭാവനകളിൽ]] ഈ തടയലിന്റെ പൂർണ്ണവിവരങ്ങൾ താങ്കൾക്ക് കാണാവുന്നതാണ്.\n\nതടയൽ നടപ്പിലാക്കിയത് $1 ആണ്.\n\nനൽകിയിട്ടുള്ള കാരണം <em>$2</em> എന്നാണ്.\n\n* തടയൽ തുടങ്ങിയത്: $8\n* തടയൽ അവസാനിക്കുന്നത്: $6\n* തടയാൻ ഉദ്ദേശിച്ചത്: $7\n* തടയൽ ഐ.ഡി. #$5",
+ "blockedtext-partial": "<strong>താങ്കളുടെ ഉപയോക്തൃനാമത്തെ അല്ലെങ്കിൽ ഐ.പി. വിലാസത്തെ ഈ താളിൽ മാറ്റങ്ങൾ വരുത്തുന്നതിൽ നിന്നും തടഞ്ഞിരിക്കുന്നു. ഈ വിക്കിയിലെ മറ്റ് താളുകൾ താങ്കൾക്ക് തിരുത്താവുന്നതാണ്.</strong> [[Special:MyContributions|അംഗത്വത്തിന്റെ സംഭാവനകളിൽ]] ഈ തടയലിന്റെ പൂർണ്ണവിവരങ്ങൾ താങ്കൾക്ക് കാണാവുന്നതാണ്.\n\nതടയൽ നടപ്പിലാക്കിയത് $1 ആണ്.\n\nനൽകിയിട്ടുള്ള കാരണം <em>$2</em> എന്നാണ്.\n\n* തടയൽ തുടങ്ങിയത്: $8\n* തടയൽ അവസാനിക്കുന്നത്: $6\n* തടയാൻ ഉദ്ദേശിച്ചത്: $7\n* തടയൽ ഐ.ഡി. #$5",
"blockedtext": "<strong>താങ്കളുടെ ഉപയോക്തൃനാമത്തേയോ താങ്കൾ ഇപ്പോൾ ലോഗിൻ ചെയ്തിട്ടുള്ള ഐ.പി. വിലാസത്തേയോ ഈ വിക്കി തിരുത്തുന്നതിൽ നിന്നു തടഞ്ഞിരിക്കുന്നു</strong>\n\n$1 ആണ് ഈ തടയൽ നടത്തിയത്. <em>$2</em> എന്നതാണു് അതിനു രേഖപ്പെടുത്തിയിട്ടുള്ള കാരണം.\n\n* തടയലിന്റെ തുടക്കം: $8\n* തടയലിന്റെ കാലാവധി: $6\n* തടയപ്പെട്ട ഉപയോക്താവ്: $7\n\nഈ തടയലിനെ പറ്റി ചർച്ച ചെയ്യാൻ താങ്കൾക്ക് $1 എന്ന ഉപയോക്താവിനേയോ മറ്റ് [[{{MediaWiki:Grouppage-sysop}}|കാര്യനിർവാഹകരെയോ]] സമീപിക്കാവുന്നതാണ്. [[Special:Preferences|താങ്കളുടെ ക്രമീകരണങ്ങളിൽ]] താങ്കൾ സാധുവായ ഇമെയിൽ വിലാസം കൊടുത്തിട്ടുണ്ടെങ്കിൽ, അതു അയക്കുന്നതിൽ നിന്നു താങ്കൾ തടയപ്പെട്ടിട്ടില്ലെങ്കിൽ, \"{{int:emailuser}}\" എന്ന സംവിധാനം ഉപയോഗിച്ച് താങ്കൾക്ക് മറ്റുപയോക്താക്കളുമായി ബന്ധപ്പെടാം. താങ്കളുടെ നിലവിലുള്ള ഐ.പി. വിലാസം $3 ഉം, താങ്കളുടെ തടയൽ ഐ.ഡി. #$5 ഉം ആണ്. ഇവ രണ്ടും താങ്കൾ കാര്യനിർവാഹകനെ ബന്ധപ്പെടുമ്പോൾ ചേർക്കുക.",
"autoblockedtext": "താങ്കളുടെ ഐ.പി. വിലാസം സ്വയം തടയപ്പെട്ടിരിക്കുന്നു, മറ്റൊരു ഉപയോക്താവ് ഉപയോഗിച്ച കാരണത്താൽ $1 എന്ന കാര്യനിർവാഹകനാണ് തടഞ്ഞുവെച്ചത്.\nഇതിനു കാരണമായി നൽകിയിട്ടുള്ളത്:\n\n:<em>$2</em>\n\n* തടയൽ തുടങ്ങിയത്: $8\n* തടയൽ അവസാനിക്കുന്നത്: $6\n* തടയാൻ ഉദ്ദേശിച്ചത്: $7\n\nഈ തടയലിനെ കുറിച്ച് ചർച്ച ചെയ്യാൻ താങ്കൾക്കു $1 എന്ന കാര്യനിവാഹകനേയോ മറ്റു [[{{MediaWiki:Grouppage-sysop}}|കാര്യനിർവാഹകരെയോ]] ബന്ധപ്പെടാവുന്നതാണ്.\n\nശ്രദ്ധിക്കുക [[Special:Preferences|താങ്കളുടെ ക്രമീകരണങ്ങളിൽ]] സാധുവായ ഇമെയിൽ വിലാസം രേഖപ്പെടുത്താതിരിക്കുകയോ, അത് ഉപയോഗിക്കുന്നതിൽ നിന്ന് താങ്കളെ തടയുകയോ ചെയ്തിട്ടുണ്ടെങ്കിൽ \"{{int:emailuser}}\" എന്ന സംവിധാനം പ്രവർത്തന രഹിതമായിരിക്കും.\n\nതാങ്കളുടെ നിലവിലുള്ള ഐ.പി. വിലാസം $3 ആണ്, താങ്കളുടെ തടയലിന്റെ ഐ.ഡി. #$5 ആകുന്നു.\nദയവായി മുകളിൽ കൊടുത്തിരിക്കുന്ന വിവരങ്ങളെല്ലാം താങ്കൾ നടത്തുന്ന അന്വേഷണങ്ങളിൽ ഉൾപ്പെടുത്തുവാൻ ശ്രദ്ധിക്കുക.",
"systemblockedtext": "താങ്കളുടെ ഉപയോക്തൃനാമം അല്ലെങ്കിൽ ഐ.പി. വിലാസം മീഡിയവിക്കി സ്വയം തടഞ്ഞിരിക്കുന്നു.\nതടയാനുള്ള കാരണം:\n\n:<em>$2</em>\n\n* തടയൽ തുടങ്ങിയത്: $8\n* തടയൽ കാലഹരണപ്പെടുന്നത്: $6\n* തടയാനുദ്ദേശിച്ചയാൾ: $7\n\nതാങ്കളുടെ നിലവിലെ ഐ.പി. വിലാസം $3 ആണ്.\nതാങ്കൾക്കെന്തെങ്കിലും ചോദ്യങ്ങളുണ്ടെങ്കിൽ മുകളിലെ എല്ലാ വിവരങ്ങളും ഉൾപ്പെടുത്തുക.",
"editpage-invalidcontentmodel-title": "ഉള്ളടക്ക രീതി പിന്തുണയ്ക്കുന്നില്ല",
"editpage-notsupportedcontentformat-title": "ഉള്ളടക്ക ഫോർമാറ്റ് പിന്തുണയ്ക്കുന്നില്ല",
"editpage-notsupportedcontentformat-text": "ഉള്ളടക്കത്തിന്റെ ഫോർമാറ്റ് ആയ $1 ഉള്ളടക്ക രീതിയായ $2 പിന്തുണയ്ക്കുന്നില്ല.",
+ "slot-name-main": "മുഖ്യം",
"content-model-wikitext": "വിക്കിഎഴുത്ത്",
"content-model-text": "വെറും എഴുത്ത്",
"content-model-javascript": "ജാവാസ്ക്രിപ്റ്റ്",
"timezonelegend": "സമയ മേഖല:",
"localtime": "പ്രാദേശിക സമയം:",
"timezoneuseserverdefault": "വിക്കിയിൽ സ്വതേയുള്ളത് ഉപയോഗിക്കുക ($1)",
- "timezoneuseoffset": "മറ്റുള്ളത് (എന്താണെന്നു നൽകുക)",
+ "timezoneuseoffset": "മറ്റുള്ളവ (എന്താണ് വ്യത്യാസമെന്ന് നൽകുക)",
+ "timezone-useoffset-placeholder": "ഉദാഹരണമായിട്ടുള്ള വിലകൾ: \"-07:00\" അല്ലെങ്കിൽ \"01:00\"",
"servertime": "സെർവർ സമയം:",
"guesstimezone": "സമയവ്യത്യാസം ബ്രൗസറിൽ നിന്നും ശേഖരിക്കൂ",
"timezoneregion-africa": "ആഫ്രിക്ക",
"grant-group-high-volume": "ഉയർന്ന തോതിലുള്ള പ്രവൃത്തികൾ നടത്തുക",
"grant-group-customization": "ഇച്ഛാനുസരണമാക്കലുകളും ക്രമീകരണങ്ങളും",
"grant-group-administration": "കാര്യനിർവ്വാഹക ജോലികൾ നടത്തുക",
+ "grant-group-private-information": "താങ്കളെക്കുറിച്ചുള്ള സ്വകാര്യവിവരങ്ങൾ എടുക്കുന്നു",
"grant-group-other": "വിവിധ പ്രവൃത്തികൾ",
"grant-blockusers": "ഉപയോക്താക്കളെ തടയുക, തടയൽ നീക്കുക",
"grant-createaccount": "അംഗത്വങ്ങൾ സൃഷ്ടിക്കുക",
"rcfilters-watchlist-edit-watchlist-button": "താങ്കൾ ശ്രദ്ധിക്കുന്ന താളുകളുടെ പട്ടിക തിരുത്തുക",
"rcfilters-watchlist-showupdated": "മാറ്റങ്ങൾ ഉണ്ടായ ശേഷം താങ്കൾ സന്ദർശിക്കാത്ത താളുകളിലെ മാറ്റങ്ങൾ, തളിക അടയാളത്തോടൊപ്പം <strong>കടുപ്പിച്ച്</strong> കാണിച്ചിരിക്കുന്നു.",
"rcfilters-preference-label": "ജാവാസ്ക്രിപ്റ്റ്-രഹിത സമ്പർക്കമുഖം ഉപയോഗിക്കുക",
- "rcfilters-preference-help": "à´\85à´°à´¿à´ªàµ\8dà´ªà´\95à´³ും പ്രമുഖമാക്കിക്കാട്ടൽ സൗകര്യവും ഇല്ലാതെ സമീപകാലമാറ്റങ്ങൾ എടുക്കുക",
+ "rcfilters-preference-help": "à´\85à´°à´¿à´ªàµ\8dà´ªà´\95ൾ തിരയലും പ്രമുഖമാക്കിക്കാട്ടൽ സൗകര്യവും ഇല്ലാതെ സമീപകാലമാറ്റങ്ങൾ എടുക്കുക",
"rcfilters-watchlist-preference-label": "ജാവാസ്ക്രിപ്റ്റ്-രഹിത സമ്പർക്കമുഖം ഉപയോഗിക്കുക",
- "rcfilters-watchlist-preference-help": "à´\85à´°à´¿à´ªàµ\8dà´ªà´\95à´³ും പ്രമുഖമാക്കിക്കാട്ടൽ സൗകര്യവും ഇല്ലാതെ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക എടുക്കുക.",
+ "rcfilters-watchlist-preference-help": "à´\85à´°à´¿à´ªàµ\8dà´ªà´\95ൾ തിരയലും പ്രമുഖമാക്കിക്കാട്ടൽ സൗകര്യവും ഇല്ലാതെ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക എടുക്കുക.",
"rcfilters-filter-showlinkedfrom-label": "കണ്ണി ചേർക്കപ്പെട്ട താളുകളിലെ മാറ്റങ്ങൾ കാണിക്കുക",
"rcfilters-filter-showlinkedfrom-option-label": "തിരഞ്ഞെടുത്ത താളിൽ <strong>കണ്ണി ചേർക്കപ്പെട്ട താളുകൾ</strong>",
"rcfilters-filter-showlinkedto-label": "കണ്ണി ചേർക്കപ്പെട്ട താളുകളിലെ മാറ്റങ്ങൾ കാണിക്കുക",
"pageinfo-display-title": "പ്രദർശിപ്പിക്കേണ്ട തലക്കെട്ട്",
"pageinfo-default-sort": "സ്വതേയുള്ള ക്രമപ്പെടുത്തൽ ചാവി",
"pageinfo-length": "താളിന്റെ നീളം (ബൈറ്റിൽ)",
+ "pageinfo-namespace": "നാമമേഖല",
"pageinfo-article-id": "താളിന്റെ ഐ.ഡി.",
"pageinfo-language": "താളിന്റെ ഉള്ളടക്കത്തിന്റെ ഭാഷ",
"pageinfo-language-change": "മാറ്റുക",
"version-specialpages": "പ്രത്യേക താളുകൾ",
"version-parserhooks": "പാഴ്സർ കൊളുത്തുകൾ",
"version-variables": "ചരങ്ങൾ",
+ "version-editors": "എഡിറ്റർമാർ",
"version-antispam": "പാഴെഴുത്ത് തടയൽ",
"version-other": "മറ്റുള്ളവ",
"version-mediahandlers": "മീഡിയ കൈകാര്യോപകരണങ്ങൾ",
"redirect-file": "പ്രമാണത്തിന്റെ പേര്",
"redirect-logid": "രേഖയുടെ ഐ.ഡി.",
"redirect-not-exists": "വില കണ്ടെത്താൻ കഴിഞ്ഞില്ല",
+ "redirect-not-numeric": "വില അക്കത്തിലല്ല",
"fileduplicatesearch": "ഒരേ പ്രമാണത്തിന്റെ പലപകർപ്പുകളുണ്ടോയെന്നു തിരയുക",
"fileduplicatesearch-summary": "ഒരേ പ്രമാണം തന്നെ വിവിധ പേരിലുണ്ടോയെന്നു ഹാഷ് വാല്യൂവധിഷ്ഠിതമായി തിരയുക.",
"fileduplicatesearch-filename": "പ്രമാണത്തിന്റെ പേര്:",
"log-action-filter-delete": "മായ്ക്കലിന്റെ തരം:",
"log-action-filter-import": "ഇറക്കുമതിയുടെ തരം:",
"log-action-filter-move": "മാറ്റലിന്റെ തരം:",
+ "log-action-filter-newusers": "അംഗത്വസൃഷ്ടിയുടെ തരം:",
+ "log-action-filter-patrol": "റോന്തുചുറ്റലിന്റെ തരം:",
+ "log-action-filter-protect": "സംരക്ഷണത്തിന്റെ തരം:",
+ "log-action-filter-rights": "അവകാശമാറ്റത്തിന്റെ തരം:",
+ "log-action-filter-suppress": "ഒതുക്കലിന്റെ തരം:",
+ "log-action-filter-upload": "അപ്ലോഡിന്റെ തരം:",
"log-action-filter-all": "എല്ലാം",
"log-action-filter-block-block": "തടയൽ",
"log-action-filter-block-reblock": "തടയലിൽ വരുത്തുന്ന മാറ്റം",
"log-action-filter-delete-revision": "നാൾപ്പതിപ്പ് മായ്ക്കൽ",
"log-action-filter-import-interwiki": "ട്രാൻസ്വിക്കി ഇറക്കുമതി",
"log-action-filter-import-upload": "എക്സ്.എം.എൽ. അപ്ലോഡ് വഴിയുള്ള ഇറക്കുമതി",
+ "log-action-filter-managetags-create": "ടാഗ് സൃഷ്ടി",
"log-action-filter-protect-protect": "സംരക്ഷണം",
"log-action-filter-protect-unprotect": "സംരക്ഷണമൊഴിവാക്കൽ",
"log-action-filter-protect-move_prot": "സംരക്ഷണം മാറ്റി",
"usercssyoucanpreview": "'''Conziglie:''' Ause 'u buttone \"{{int:showpreview}}\" pe condrollà 'u CSS nuève apprime de reggistrà.",
"userjsyoucanpreview": "'''Conziglie:''' Ause 'u buttone \"{{int:showpreview}}\" pe condrollà 'u JavaScript nuève apprime de reggistrà.",
"usercsspreview": "'''Arrecuerdete ca tu ste vide sulamende in andeprime 'u CSS tue.'''\n'''Non g'à state angore reggistrete ninde!'''",
+ "userjsonpreview": "<strong>Arrecuerdete ca tu ste teste/'ndruche sulamende in andeprime 'a configurazione JSON tue.\nNon g'à state angore reggistrete ninde!</strong>",
"userjspreview": "'''Arrecuerdete ca tu ste vide/teste sulamende in andeprime 'u JavaScript tue.'''\n'''Non g'à state angore reggistrete ninde!'''",
"sitecsspreview": "'''Arrecuerdete ca tu ste vide sulamende in andeprime 'u CSS tune.'''\n'''Non g'à state angore reggistrate ninde!'''",
+ "sitejsonpreview": "<strong>Arrecuerdete ca tu ste 'ndruche sulamende in andeprime 'a configurazione JSON tue.\nNon g'à state angore reggistrete ninde!</strong>",
"sitejspreview": "'''Arrecuerdete ca tu ste vide sulamende in andeprime 'u codece JavaScript tune.'''\n'''Non g'à state angore reggistrate ninde!'''",
"userinvalidconfigtitle": "<strong>Attenziò:</strong> Non ge stè 'nu skin \"$1\".\nArrecuerdete ca jndr'à le file personalizzete .css, .json e .js s'ause scrivere le titele cu le lettere piccenne, pe esembie {{ns:user}}:Foo/vector.css è diverse da {{ns:user}}:Foo/Vector.css.",
"updated": "(Cangiete)",
]
},
"tog-underline": "Подчёркивание ссылок:",
- "tog-hideminor": "СкÑ\80Ñ\8bваÑ\82Ñ\8c малÑ\8bе пÑ\80авки из поÑ\81ледниÑ\85 изменений",
+ "tog-hideminor": "СкÑ\80Ñ\8bваÑ\82Ñ\8c малÑ\8bе изменениÑ\8f из Ñ\81пиÑ\81ка Ñ\81вежиÑ\85 пÑ\80авок",
"tog-hidepatrolled": "Скрывать патрулированные правки в списке свежих правок",
"tog-newpageshidepatrolled": "Скрывать отпатрулированные страницы в списке новых страниц",
"tog-hidecategorization": "Скрывать категоризацию страниц",
"tog-showhiddencats": "Показывать скрытые категории",
"tog-norollbackdiff": "Не показывать разницу версий после выполнения отката",
"tog-useeditwarning": "Предупреждать, когда я покидаю страницу с несохранёнными изменениями",
- "tog-prefershttps": "\nВсегда используйте безопасное соединение при входе в систему",
+ "tog-prefershttps": "Всегда использовать защищённое соединение после представления системе",
"underline-always": "Всегда",
"underline-never": "Никогда",
"underline-default": "Использовать настройки браузера",
"helppage-top-gethelp": "Помощь",
"mainpage": "Заглавная страница",
"mainpage-description": "Заглавная страница",
- "policy-url": "Project:Политика вики",
+ "policy-url": "Project:Правила",
"portal": "Портал сообщества",
"portal-url": "Project:Портал сообщества",
"privacy": "Политика конфиденциальности",
"pagetitle": "$1 — {{SITENAME}}",
"pagetitle-view-mainpage": "{{SITENAME}}",
"backlinksubtitle": "← $1",
- "retrievedfrom": "Ð\9fолÑ\83Ñ\87ено оÑ\82 \"$1\"",
+ "retrievedfrom": "Ð\98Ñ\81Ñ\82оÑ\87ник â\80\94 $1",
"youhavenewmessages": "{{PLURAL:$3|Вы получили}} $1 ($2).",
"youhavenewmessagesfromusers": "{{PLURAL:$4|Вы получили}} $1 от {{PLURAL:$3|$3 участника|$3 участников|1=другого участника}} ($2).",
"youhavenewmessagesmanyusers": "Вы получили $1 от множества пользователей ($2).",
"collapsible-expand": "развернуть",
"confirmable-confirm": "{{GENDER:$1|Вы}} уверены?",
"confirmable-yes": "Да",
- "confirmable-no": "нет",
+ "confirmable-no": "Ð\9dет",
"thisisdeleted": "Просмотреть или восстановить $1?",
"viewdeleted": "Просмотреть $1?",
"restorelink": "{{PLURAL:$1|$1 удалённую правку|$1 удалённые правки|$1 удалённых правок|1=удалённую правку}}",
"sort-descending": "Упорядочить по убыванию",
"sort-ascending": "Упорядочить по возрастанию",
"nstab-main": "Статья",
- "nstab-user": "\nСтраница пользователя",
+ "nstab-user": "{{GENDER:{{ROOTPAGENAME}}|Участник|Участница}}",
"nstab-media": "Мультимедиа",
"nstab-special": "Служебная страница",
"nstab-project": "О проекте",
"showingresultsinrange": "Ниже показано до {{PLURAL:$1|<strong>1</strong> результата|<strong>$1</strong> результата|<strong>$1</strong> результатов}} в диапазоне от <strong>$2</strong> до <strong>$3</strong>.",
"search-showingresults": "{{PLURAL:$4|1=Результат <strong>$1</strong> из <strong>$3</strong>|Результаты <strong>$1—$2</strong> из <strong>$3</strong>}}",
"search-nonefound": "Соответствий запросу не найдено.",
- "search-nonefound-thiswiki": "Нет результатов, соответствующих запросу на этом сайте.",
+ "search-nonefound-thiswiki": "Нет результатов, соответствующих запросу, на этом сайте.",
"powersearch-legend": "Расширенный поиск",
"powersearch-ns": "Поиск в пространствах имён:",
"powersearch-togglelabel": "Отметить:",
"tog-minordefault": "Подразумевано означавај све измене као мање",
"tog-previewontop": "Прикажи претпреглед пре оквира за уређивање",
"tog-previewonfirst": "Прикажи претпреглед при првој измени",
- "tog-enotifwatchlistpages": "Ð\9fоÑ\88аÑ\99и ми имеÑ\98л када се промени страница или датотека са мог списка надгледања",
- "tog-enotifusertalkpages": "Ð\9fоÑ\88аÑ\99и ми имеÑ\98л кад се промени моја корисничка страница за разговор",
- "tog-enotifminoredits": "ТакоÑ\92е ми поÑ\88аÑ\99и имеÑ\98л код мањих измена страница и датотека",
- "tog-enotifrevealaddr": "Ð\9eÑ\82кÑ\80иÑ\98 моÑ\98Ñ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83 Ñ\83 имеÑ\98ловима обавеÑ\88Ñ\82еÑ\9aа",
+ "tog-enotifwatchlistpages": "Ð\9fоÑ\88аÑ\99и ми е-поÑ\80Ñ\83кÑ\83 када се промени страница или датотека са мог списка надгледања",
+ "tog-enotifusertalkpages": "Ð\9fоÑ\88аÑ\99и ми е-поÑ\80Ñ\83кÑ\83 кад се промени моја корисничка страница за разговор",
+ "tog-enotifminoredits": "Ð\9fоÑ\88аÑ\99и ми е-поÑ\80Ñ\83кÑ\83 и код мањих измена страница и датотека",
+ "tog-enotifrevealaddr": "Ð\9eÑ\82кÑ\80иÑ\98 моÑ\98Ñ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е Ñ\83 е-поÑ\80Ñ\83кама за обавеÑ\88Ñ\82аваÑ\9aе",
"tog-shownumberswatching": "Прикажи број корисника који надгледају",
"tog-oldsig": "Ваш постојећи потпис:",
"tog-fancysig": "Сматрај потпис као викитекст (без аутоматског повезивања)",
"tog-watchlisthideanons": "Сакриј измене анонимних корисника са списка надгледања",
"tog-watchlisthidepatrolled": "Сакриј патролиране измене са списка надгледања",
"tog-watchlisthidecategorization": "Сакриј категоризацију страница",
- "tog-ccmeonemails": "Ð\9fоÑ\88аÑ\99и ми копиÑ\98е имеÑ\98лова које пошаљем другим корисницима",
+ "tog-ccmeonemails": "Ð\9fоÑ\88аÑ\99и ми копиÑ\98е е-поÑ\80Ñ\83ка које пошаљем другим корисницима",
"tog-diffonly": "Не приказуј садржај странице испод разлика",
"tog-showhiddencats": "Прикажи скривене категорије",
"tog-norollbackdiff": "Не приказуј разлику након извршеног враћања",
"navigation-heading": "Мени за навигацију",
"errorpagetitle": "Грешка",
"returnto": "Назад на страницу „$1”.",
- "tagline": "Из {{GRAMMAR:генитив|{{SITENAME}}}}",
+ "tagline": "Извор: {{SITENAME}}",
"help": "Помоћ",
"help-mediawiki": "Помоћ о MediaWiki-ју",
"search": "Претрага",
"toolbox": "Алатке",
"tool-link-userrights": "Промена {{GENDER:$1|корисничких}} група",
"tool-link-userrights-readonly": "Приказ {{GENDER:$1|корисничких}} група",
- "tool-link-emailuser": "СлаÑ\9aе имеÑ\98ла {{GENDER:$1|коÑ\80иÑ\81никÑ\83|коÑ\80иÑ\81ници}}",
+ "tool-link-emailuser": "СлаÑ\9aе е-поÑ\80Ñ\83ке {{GENDER:$1|коÑ\80иÑ\81никÑ\83|коÑ\80иÑ\81ниÑ\86и|коÑ\80иÑ\81никÑ\83/ци}}",
"imagepage": "Прикажи страницу датотеке",
"mediawikipage": "Прикажи страницу поруке",
"templatepage": "Прикажи страницу шаблона",
"pool-errorunknown": "Непозната грешка",
"pool-servererror": "Услуга бројача редова није доступна ($1).",
"poolcounter-usage-error": "Грешка при употреби: $1",
- "aboutsite": "О {{GRAMMAR:датив|{{SITENAME}}}}",
- "aboutpage": "Project:О_{{GRAMMAR:датив|{{SITENAME}}}}",
+ "aboutsite": "О пројекту {{SITENAME}}",
+ "aboutpage": "Project:О_пројекту_{{SITENAME}}",
"copyright": "Садржај је доступан под лиценцом $1 осим ако је другачије наведено.",
"copyrightpage": "{{ns:project}}:Ауторска права",
"currentevents": "Актуелности",
"userlogout": "Одјава",
"notloggedin": "Нисте пријављени",
"userlogin-noaccount": "Немате налог?",
- "userlogin-joinproject": "Придружите се {{GRAMMAR:датив|{{SITENAME}}}}",
+ "userlogin-joinproject": "Придружите се пројекту {{SITENAME}}",
"createaccount": "Отварање налога",
"userlogin-resetpassword-link": "Заборавили сте лозинку?",
"userlogin-helplink2": "Помоћ при пријављивању",
"userlogin-loggedin": "Већ сте пријављени као {{GENDER:$1|$1}}.\nКористите доњи образац да бисте се пријавили као други корисник.",
"userlogin-reauth": "Морате да се поново пријавите да бисте верификовали да сте {{GENDER:$1|$1}}.",
"userlogin-createanother": "Отвори још један налог",
- "createacct-emailrequired": "Ð\98меÑ\98л-адÑ\80еÑ\81а",
- "createacct-emailoptional": "Ð\98меÑ\98л-адÑ\80еÑ\81а (опционално)",
- "createacct-email-ph": "УнеÑ\81иÑ\82е имеÑ\98л-адÑ\80еÑ\81Ñ\83",
- "createacct-another-email-ph": "УнеÑ\81иÑ\82е имеÑ\98л-адÑ\80еÑ\81Ñ\83",
- "createaccountmail": "Ð\9aоÑ\80иÑ\81Ñ\82и пÑ\80ивÑ\80еменÑ\83, наÑ\81Ñ\83миÑ\87нÑ\83 лозинкÑ\83 и поÑ\88аÑ\99и Ñ\98е на наведенÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83",
+ "createacct-emailrequired": "Ð\90дÑ\80еÑ\81а е-поÑ\88Ñ\82е",
+ "createacct-emailoptional": "Ð\90дÑ\80еÑ\81а е-поÑ\88Ñ\82е (опционално)",
+ "createacct-email-ph": "УнеÑ\81иÑ\82е адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е",
+ "createacct-another-email-ph": "УнеÑ\81иÑ\82е адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е",
+ "createaccountmail": "Ð\9aоÑ\80иÑ\81Ñ\82и пÑ\80ивÑ\80еменÑ\83, наÑ\81Ñ\83миÑ\87нÑ\83 лозинкÑ\83 и поÑ\88аÑ\99и Ñ\98е на наведенÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е",
"createaccountmail-help": "Може се користити да се некоме отвори налог без сазнања лозинке.",
"createacct-realname": "Право име (опционално)",
"createacct-reason": "Разлог",
"password-name-match": "Лозинка се мора разликовати од корисничког имена.",
"password-login-forbidden": "Коришћење овог корисничког имена и лозинке је забрањено.",
"mailmypassword": "Ресетуј лозинку",
- "passwordremindertitle": "Нова привремена лозинка за {{GRAMMAR:акузатив|{{SITENAME}}}}",
+ "passwordremindertitle": "{{SITENAME}} — привремена лозинка",
"passwordremindertext": "Неко са IP адресе $1 је затражио нову лозинку на викију {{SITENAME}} ($4).\nСтворена је привремена лозинка за {{GENDER:$2|корисника|корисницу|корисника}} $2 која гласи $3.\nУколико је ово ваш захтев, сада се пријавите и поставите нову лозинку.\nПривремена лозинка истиче за {{PLURAL:$5|један дан|$5 дана}}.\n\nАко је неко други затражио промену лозинке, или сте се сетили ваше лозинке и не желите да је мењате, занемарите ову поруку.",
- "noemail": "Не постоји имејл-адреса за {{GENDER:$1|корисника|корисницу}} $1.",
- "noemailcreate": "Ð\9cоÑ\80аÑ\82е да наведеÑ\82е важеÑ\9bÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83.",
- "passwordsent": "Ð\9dова лозинка Ñ\98е поÑ\81лаÑ\82а на имеÑ\98л-адÑ\80еÑ\81Ñ\83 {{GENDER:$1|коÑ\80иÑ\81ника|коÑ\80иÑ\81нице}} $1.\nПоново се пријавите након што је примите.",
+ "noemail": "{{GENDER:$1|Корисник „$1” није навео|Корисница „$1” није навела|Корисник/ца „$1” није навео/ла}} адресу е-поште.",
+ "noemailcreate": "Ð\9cоÑ\80аÑ\82е да наведеÑ\82е важеÑ\9bÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е.",
+ "passwordsent": "Ð\9dова лозинка Ñ\98е поÑ\81лаÑ\82а на адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е {{GENDER:$1|коÑ\80иÑ\81ника|коÑ\80иÑ\81ниÑ\86е|коÑ\80иÑ\81ника/це}} $1.\nПоново се пријавите након што је примите.",
"blocked-mailpassword": "Уређивање са ваше IP адресе је блокирано. Ради спречавања злоупотребе, забрањена је и функција враћања лозинке са ње.",
- "eauthentsent": "Ð\98меÑ\98л о поÑ\82вÑ\80ди Ñ\98е поÑ\81лаÑ\82 на наведенÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83.\nÐ\9fÑ\80е било коÑ\98иÑ\85 дÑ\80Ñ\83гиÑ\85 Ñ\81лаÑ\9aа имеÑ\98лова на налог, моÑ\80аÑ\9bеÑ\82е пÑ\80аÑ\82иÑ\82и Ñ\83пÑ\83Ñ\82Ñ\81Ñ\82ва Ñ\83 имеÑ\98лÑ\83 да бисте потврдили да је налог заиста ваш.",
+ "eauthentsent": "Ð\95-поÑ\80Ñ\83ка о поÑ\82вÑ\80ди Ñ\98е поÑ\81лаÑ\82а на наведенÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е.\nÐ\9fÑ\80е било коÑ\98иÑ\85 дÑ\80Ñ\83гиÑ\85 Ñ\81лаÑ\9aа е-поÑ\80Ñ\83ка на налог, моÑ\80аÑ\9bеÑ\82е пÑ\80аÑ\82иÑ\82и Ñ\83пÑ\83Ñ\82Ñ\81Ñ\82ва Ñ\83 е-поÑ\80Ñ\83Ñ\86и да бисте потврдили да је налог заиста ваш.",
"throttled-mailpassword": "Порука за промену лозинке је послата у {{PLURAL:$1|1=последњих сат времена|последња $1 сата|последњих $1 сати}}.\nДа бисмо спречили злоупотребу, подсетник шаљемо само једном у року од {{PLURAL:$1|1=сат времена|$1 сата|$1 сати}}.",
"mailerror": "Грешка при слању поруке: $1",
"acct_creation_throttle_hit": "Посетиоци овог викија који користе вашу IP адресу су отворили {{PLURAL:$1|1=један налог|$1 налога}} у претходних $2, што је највећа дозвољена вредност у овом временском периоду.\nКао резултат тога, ти посетиоци тренутно не могу отварати више налога.",
- "emailauthenticated": "Ð\92аÑ\88а имеÑ\98л-адÑ\80еÑ\81а је потврђена на дан $2 у $3 ч.",
- "emailnotauthenticated": "Ð\92аÑ\88а имеÑ\98л-адÑ\80еÑ\81а Ñ\98оÑ\88 ниÑ\98е поÑ\82вÑ\80Ñ\92ена.\nÐ\9dиÑ\98едан имеÑ\98л неÑ\9bе да бÑ\83де поÑ\81лаÑ\82 ни у једном од следећих случајева.",
- "noemailprefs": "Ð\9dаведиÑ\82е имеÑ\98л-адÑ\80еÑ\81Ñ\83 у подешавањима за оспособљавање ових функција.",
- "emailconfirmlink": "Потврдите своју имејл-адресу",
- "invalidemailaddress": "Ð\98меÑ\98л-адÑ\80еÑ\81а не може да бÑ\83де пÑ\80иÑ\85ваÑ\9bена Ñ\98еÑ\80 Ñ\98е Ñ\83 неважеÑ\9bем обликÑ\83.\nУнеÑ\81иÑ\82е иÑ\81пÑ\80авну адресу или оставите празно поље.",
+ "emailauthenticated": "Ð\92аÑ\88а адÑ\80еÑ\81а е-поÑ\88Ñ\82е је потврђена на дан $2 у $3 ч.",
+ "emailnotauthenticated": "Ð\92аÑ\88а адÑ\80еÑ\81а е-поÑ\88Ñ\82е Ñ\98оÑ\88 ниÑ\98е поÑ\82вÑ\80Ñ\92ена.\nÐ\9dиÑ\98една е-поÑ\80Ñ\83ка неÑ\9bе биÑ\82и поÑ\81лаÑ\82а ни у једном од следећих случајева.",
+ "noemailprefs": "Ð\9dаведиÑ\82е адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е у подешавањима за оспособљавање ових функција.",
+ "emailconfirmlink": "Потврдите адресу е-поште",
+ "invalidemailaddress": "Ð\9dиÑ\98е могÑ\83Ñ\9bе пÑ\80иÑ\85ваÑ\82иÑ\82и адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е Ñ\98еÑ\80 Ñ\98е Ñ\83 неважеÑ\9bем Ñ\84оÑ\80маÑ\82Ñ\83.\nУнеÑ\81иÑ\82е добÑ\80о Ñ\84оÑ\80маÑ\82иÑ\80ану адресу или оставите празно поље.",
"cannotchangeemail": "Адресе е-поште налога не могу се променити на овом викију.",
- "emaildisabled": "Овај сајт не може да шаље имејлове.",
+ "emaildisabled": "Ова локација не може да шаље е-поруке.",
"accountcreated": "Налог је отворен",
"accountcreatedtext": "Кориснички налог [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) је отворен.",
"createaccount-title": "Отварање корисничког налога за {{SITENAME}}",
- "createaccount-text": "Ð\9dеко Ñ\98е оÑ\82воÑ\80ио налог Ñ\81а ваÑ\88ом имеÑ\98л-адÑ\80еÑ\81ом на пÑ\80оÑ\98екÑ\82Ñ\83 {{SITENAME}} ($4) под именом â\80\9e$2â\80\9c и Ñ\81а лозинком â\80\9e$3â\80\9c.\nОдмах требате да се пријавите и промените своју лозинку.\n\nМожете да занемарите ову поруку, ако је овај налог отворен грешком.",
+ "createaccount-text": "Ð\9dеко Ñ\98е оÑ\82воÑ\80ио налог Ñ\81а ваÑ\88ом адÑ\80еÑ\81ом е-поÑ\88Ñ\82е на пÑ\80оÑ\98екÑ\82Ñ\83 {{SITENAME}} ($4) под именом â\80\9e$2â\80\9d и Ñ\81а лозинком â\80\9e$3â\80\9d.\nОдмах требате да се пријавите и промените своју лозинку.\n\nМожете да занемарите ову поруку, ако је овај налог отворен грешком.",
"login-throttled": "Превише пута сте покушали да се пријавите.\nСачекајте $1 пре него што покушате поново.",
"login-abort-generic": "Неуспешна пријава – прекинуто",
"login-migrated-generic": "Ваш налог је мигриран. Ваше корисничко више не постоји на овом викију.",
"pt-createaccount": "Отварање налога",
"pt-userlogout": "Одјави ме",
"php-mail-error-unknown": "Непозната грешка у функцији PHP mail().",
- "user-mail-no-addy": "Ð\9fокÑ\83Ñ\88али Ñ\81Ñ\82е да поÑ\88аÑ\99еÑ\82е имеÑ\98л без имеÑ\98л-адÑ\80еÑ\81е.",
- "user-mail-no-body": "Ð\9fокÑ\83Ñ\88ано Ñ\81лаÑ\9aе имеÑ\98ла Ñ\81 празним или неразумно кратким садржајем.",
+ "user-mail-no-addy": "Ð\9fокÑ\83Ñ\88али Ñ\81Ñ\82е да поÑ\88аÑ\99еÑ\82е е-поÑ\80Ñ\83кÑ\83 без адÑ\80еÑ\81е е-поÑ\88Ñ\82е.",
+ "user-mail-no-body": "Ð\9fокÑ\83Ñ\88али Ñ\81Ñ\82е да поÑ\88аÑ\99еÑ\82е е-поÑ\80Ñ\83кÑ\83 Ñ\81а празним или неразумно кратким садржајем.",
"changepassword": "Промена лозинке",
"resetpass_announce": "Да бисте завршили пријаву, подесите нову лозинку овде.",
"resetpass_text": "<!-- Овде унесите текст -->",
"resetpass-submit-cancel": "Откажи",
"resetpass-wrong-oldpass": "Неважећа привремена или тренутна лозинка.\nМожда сте већ променили лозинку или сте захтевали нову привремену лозинку.",
"resetpass-recycled": "Унели сте садашњу лозинку, да бисте променили лозинку морате унети нову.",
- "resetpass-temp-emailed": "Ð\9fÑ\80иÑ\98авили Ñ\81Ñ\82е Ñ\81е Ñ\81а пÑ\80ивÑ\80еменим кодом из имеÑ\98ла.\nÐ\94а биÑ\81Ñ\82е завÑ\80Ñ\88или пÑ\80иÑ\98авÑ\99иваÑ\9aе морате поставити нову лозинку овде:",
+ "resetpass-temp-emailed": "Ð\9fÑ\80иÑ\98авили Ñ\81Ñ\82е Ñ\81е Ñ\81а пÑ\80ивÑ\80еменим кодом из е-поÑ\80Ñ\83ке.\nÐ\94а биÑ\81Ñ\82е завÑ\80Ñ\88или пÑ\80иÑ\98авÑ\99иваÑ\9aе, морате поставити нову лозинку овде:",
"resetpass-temp-password": "Привремена лозинка:",
"resetpass-abort-generic": "Промену лозинке је прекинуо додатак.",
"resetpass-expired": "Ваша лозинка је истекла. Поставите нову лозинку да бисте се пријавили.",
"resetpass-expired-soft": "Ваша лозинка је истекла и морате је променити. Поставите нову лозинку или кликните „{{int:authprovider-resetpass-skip-label}}“ да је промените касније.",
"resetpass-validity-soft": "Ваша лозинка није важећа: $1\n\nИзаберите нову одмах или кликните на „{{int:authprovider-resetpass-skip-label}}“ да је промените касније.",
"passwordreset": "Ресетовање лозинке",
- "passwordreset-text-one": "Ð\9fопÑ\83ниÑ\82е оваÑ\98 обÑ\80азаÑ\86 да биÑ\81Ñ\82е добили пÑ\80ивÑ\80еменÑ\83 лозинкÑ\83 на имеÑ\98л.",
- "passwordreset-text-many": "{{PLURAL:$1|Ð\98Ñ\81пÑ\83ниÑ\82е Ñ\98едно од поÑ\99а како биÑ\81Ñ\82е добили пÑ\80ивÑ\80еменÑ\83 лозинкÑ\83 пÑ\83Ñ\82ем имеÑ\98ла.}}",
+ "passwordreset-text-one": "Ð\9fопÑ\83ниÑ\82е оваÑ\98 обÑ\80азаÑ\86 да биÑ\81Ñ\82е пÑ\80имили пÑ\80ивÑ\80еменÑ\83 лозинкÑ\83 пÑ\83Ñ\82ем е-поÑ\88Ñ\82е.",
+ "passwordreset-text-many": "{{PLURAL:$1|Ð\98Ñ\81пÑ\83ниÑ\82е Ñ\98едно од поÑ\99а да биÑ\81Ñ\82е пÑ\80имили пÑ\80ивÑ\80еменÑ\83 лозинкÑ\83 пÑ\83Ñ\82ем е-поÑ\88Ñ\82е.}}",
"passwordreset-disabled": "Ресетовање лозинке је онемогућено на овом викију.",
- "passwordreset-emaildisabled": "Ð\98меÑ\98л Ñ\98е онемогÑ\83Ñ\9bен на овом викију.",
+ "passwordreset-emaildisabled": "ФÑ\83нкÑ\86иÑ\98а е-поÑ\88Ñ\82е Ñ\98е онемогÑ\83Ñ\9bена на овом викију.",
"passwordreset-username": "Корисничко име:",
"passwordreset-domain": "Домен:",
- "passwordreset-email": "Ð\98меÑ\98л-адÑ\80еÑ\81а:",
+ "passwordreset-email": "Ð\90дÑ\80еÑ\81а е-поÑ\88Ñ\82е:",
"passwordreset-emailtitle": "Детаљи налога на викију {{SITENAME}}",
- "passwordreset-emailtext-ip": "Ð\9dеко (веÑ\80оваÑ\82но ви, Ñ\81а IP адÑ\80еÑ\81е $1) заÑ\82Ñ\80ажио Ñ\98е Ñ\80еÑ\81еÑ\82оваÑ\9aе ваÑ\88е \nлозинке за пÑ\80оÑ\98екаÑ\82 {{SITENAME}} ($4). СледеÑ\9bи коÑ\80иÑ\81ниÑ\87ки {{PLURAL:$3|налог Ñ\98е повезан|налози Ñ\81Ñ\83 повезани}} \nÑ\81а овом имеÑ\98л адÑ\80еÑ\81ом:\n\n$2\n\n{{PLURAL:$3|Ð\9eва пÑ\80ивÑ\80емена лозинка|Ð\9eве пÑ\80ивÑ\80емене лозинке}} Ñ\9bе иÑ\81Ñ\82еÑ\9bи за {{PLURAL:$5|Ñ\98едан дан|$5 дана}}.\nÐ\9eдмаÑ\85 Ñ\82Ñ\80ебаÑ\82е да Ñ\81е пÑ\80иÑ\98авиÑ\82е и одабеÑ\80иÑ\82е новÑ\83 лозинкÑ\83. Ð\90ко Ñ\98е неко дÑ\80Ñ\83ги напÑ\80авио оваÑ\98 \nзаÑ\85Ñ\82ев или Ñ\81Ñ\82е Ñ\81е Ñ\81еÑ\82или Ñ\81воÑ\98е пÑ\80вобиÑ\82не лозинке, а не \nжелиÑ\82е да Ñ\98е пÑ\80омениÑ\82е, можеÑ\82е да занемаÑ\80иÑ\82е овÑ\83 поÑ\80Ñ\83кÑ\83 и наÑ\81Ñ\82авиÑ\82е да коÑ\80иÑ\81Ñ\82иÑ\82е Ñ\81воÑ\98Ñ\83 Ñ\81Ñ\82аÑ\80Ñ\83 \nлозинку.",
- "passwordreset-emailtext-user": "{{GENDER:$1|Корисник је затражио|Корисница је затражила}} подсетник о подацима за пријаву на викију {{SITENAME}} ($4).\nСледећи {{PLURAL:$3|кориснички налог је повезан|кориснички налози су повезани}} са овом имејл-адресом:\n\n$2\n\n{{PLURAL:$3|Привремена лозинка истиче|Привремене лозинке истичу}} за {{PLURAL:$5|један дан|$5 дана}}.\nПријавите се и изаберите нову лозинку. Ако је неко други захтевао ову радњу или сте се сетили лозинке и не желите да је мењате, занемарите ову поруку.",
+ "passwordreset-emailtext-ip": "Ð\9dеко (веÑ\80оваÑ\82но ви, Ñ\81а IP адÑ\80еÑ\81е $1) заÑ\82Ñ\80ажио Ñ\98е Ñ\80еÑ\81еÑ\82оваÑ\9aе ваÑ\88е \nлозинке за пÑ\80оÑ\98екаÑ\82 {{SITENAME}} ($4). СледеÑ\9bи коÑ\80иÑ\81ниÑ\87ки {{PLURAL:$3|налог Ñ\98е повезан|налози Ñ\81Ñ\83 повезани}} \nÑ\81а овом адÑ\80еÑ\81ом е-поÑ\88Ñ\82е:\n\n$2\n\n{{PLURAL:$3|Ð\9eва пÑ\80ивÑ\80емена лозинка|Ð\9eве пÑ\80ивÑ\80емене лозинке}} иÑ\81Ñ\82еÑ\9bи Ñ\9bе за {{PLURAL:$5|Ñ\98едан дан|$5 дана}}.\nÐ\9eдмаÑ\85 Ñ\82Ñ\80ебаÑ\82е да Ñ\81е пÑ\80иÑ\98авиÑ\82е и одабеÑ\80иÑ\82е новÑ\83 лозинкÑ\83. \nÐ\90ко Ñ\98е неко дÑ\80Ñ\83ги напÑ\80авио оваÑ\98 заÑ\85Ñ\82ев или Ñ\81Ñ\82е Ñ\81е Ñ\81еÑ\82или \nоÑ\80игиналне лозинке, а не желиÑ\82е да Ñ\98е пÑ\80омениÑ\82е, \nможеÑ\82е да занемаÑ\80иÑ\82е овÑ\83 поÑ\80Ñ\83кÑ\83 и наÑ\81Ñ\82авиÑ\82е да \nкоÑ\80иÑ\81Ñ\82иÑ\82е Ñ\81воÑ\98Ñ\83 Ñ\81Ñ\82аÑ\80Ñ\83 лозинку.",
+ "passwordreset-emailtext-user": "Корисник/ца $1 затражио/ла је ресетовање ваше лозинке на пројекту {{SITENAME}} ($4).\nСледећи кориснички {{PLURAL:$3|налог је повезан|налози су повезани}} са овом адресом е-поште:\n\n$2\n\n{{PLURAL:$3|Привремена лозинка истиче|Привремене лозинке истичу}} за {{PLURAL:$5|један дан|$5 дана}}.\nОдмах требате да се пријавите и одаберите нову лозинку. \nАко је неко други направио овај захтев или сте се сетили \nоригиналне лозинке, а не желите да је промените, \nможете да занемарите ову поруку и наставите да \nкористите своју стару лозинку.",
"passwordreset-emailelement": "Корисничко име: \n$1\n\nПривремена лозинка: \n$2",
- "passwordreset-emailsentemail": "Ð\90ко Ñ\98е ова имеÑ\98л-адÑ\80еÑ\81а повезана Ñ\81а ваÑ\88им налогом, онда Ñ\9bе имеÑ\98л о Ñ\80еÑ\81еÑ\82оваÑ\9aÑ\83 лозинке биÑ\82и поÑ\81лаÑ\82.",
- "passwordreset-emailsentusername": "Ð\90ко поÑ\81Ñ\82оÑ\98и имеÑ\98л-адÑ\80еÑ\81а повезана Ñ\81а овим коÑ\80иÑ\81ниÑ\87ким именом, онда Ñ\9bе имеÑ\98л о Ñ\80еÑ\81еÑ\82оваÑ\9aÑ\83 лозинке биÑ\82и поÑ\81лаÑ\82.",
+ "passwordreset-emailsentemail": "Ð\90ко Ñ\98е ова адÑ\80еÑ\81а е-поÑ\88Ñ\82е повезана Ñ\81а ваÑ\88им налогом, онда Ñ\9bе е-поÑ\80Ñ\83ка о Ñ\80еÑ\81еÑ\82оваÑ\9aÑ\83 лозинке биÑ\82и поÑ\81лаÑ\82а.",
+ "passwordreset-emailsentusername": "Ð\90ко поÑ\81Ñ\82оÑ\98и адÑ\80еÑ\81а е-поÑ\88Ñ\82е повезана Ñ\81а овим коÑ\80иÑ\81ниÑ\87ким именом, онда Ñ\9bе е-поÑ\80Ñ\83ка о Ñ\80еÑ\81еÑ\82оваÑ\9aÑ\83 лозинке биÑ\82и поÑ\81лаÑ\82а.",
"passwordreset-nocaller": "Позивалац се мора навести",
"passwordreset-nosuchcaller": "Позивалац не постоји: $1",
"passwordreset-ignored": "Ресетовање лозинке није успело. Можда послужилац није конфигурисан?",
- "passwordreset-invalidemail": "Ð\9dеважеÑ\9bа имеÑ\98л-адÑ\80еÑ\81а",
+ "passwordreset-invalidemail": "Ð\9dеважеÑ\9bа адÑ\80еÑ\81а е-поÑ\88Ñ\82е",
"passwordreset-nodata": "Корисничко име и адреса е-поште нису наведени",
- "changeemail": "Ð\9fÑ\80омена или Ñ\83клаÑ\9aаÑ\9aе имеÑ\98л-адÑ\80еÑ\81е",
- "changeemail-header": "Ð\9fопÑ\83ниÑ\82е оваÑ\98 обÑ\80азаÑ\86 да би Ñ\81Ñ\82е пÑ\80оменили ваÑ\88Ñ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83. Ð\90ко биÑ\81Ñ\82е желели да Ñ\83клониÑ\82е повезаноÑ\81Ñ\82 било коÑ\98е имеÑ\98л-адÑ\80еÑ\81е Ñ\81а ваÑ\88ег налога, оÑ\81Ñ\82авиÑ\82е пÑ\80азно поÑ\99е за новÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83 када шаљете образац.",
+ "changeemail": "Ð\9fÑ\80омена или Ñ\83клаÑ\9aаÑ\9aе адÑ\80еÑ\81е е-поÑ\88Ñ\82е",
+ "changeemail-header": "Ð\94овÑ\80Ñ\88иÑ\82е оваÑ\98 обÑ\80азаÑ\86 да би Ñ\81Ñ\82е пÑ\80оменили адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е. Ð\90ко биÑ\81Ñ\82е желели да Ñ\83клониÑ\82е повезаноÑ\81Ñ\82 било коÑ\98е адÑ\80еÑ\81е е-поÑ\88Ñ\82е Ñ\81а ваÑ\88ег налога, оÑ\81Ñ\82авиÑ\82е пÑ\80азно поÑ\99е за новÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е када шаљете образац.",
"changeemail-no-info": "Морате бити пријављени да бисте приступили овој страници.",
- "changeemail-oldemail": "Ð\90кÑ\82Ñ\83елна имеÑ\98л-адÑ\80еÑ\81а:",
- "changeemail-newemail": "Ð\9dова имеÑ\98л-адÑ\80еÑ\81а:",
+ "changeemail-oldemail": "ТÑ\80енÑ\83Ñ\82на адÑ\80еÑ\81а е-поÑ\88Ñ\82е:",
+ "changeemail-newemail": "Ð\9dова адÑ\80еÑ\81а е-поÑ\88Ñ\82е:",
"changeemail-newemail-help": "Ово поље треба да оставите празно ако желите да уклоните адресу е-поште. Нећете бити у могућности да ресетујете заборављену лозинку и нећете примати е-поруке са овог викија ако је адреса е-поште уклоњена.",
"changeemail-none": "(ништа)",
"changeemail-password": "Ваша лозинка за пројекат {{SITENAME}}:",
- "changeemail-submit": "Ð\9fÑ\80омени имеÑ\98л",
+ "changeemail-submit": "Ð\9fÑ\80омени е-поÑ\88Ñ\82Ñ\83",
"changeemail-throttled": "Превише пута сте покушали да се пријавите.\nМолимо вас да сачекате $1 пре него што покушате поново.",
- "changeemail-nochange": "УнеÑ\81иÑ\82е дÑ\80Ñ\83гÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83.",
+ "changeemail-nochange": "УнеÑ\81иÑ\82е дÑ\80Ñ\83гÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е.",
"resettokens": "Ресетовање токена",
"resettokens-text": "Овде можете да ресетујете токене који омогућавају приступ одређеним приватним подацима повезаним са вашим налогом.\n\nТребали бисте то урадити ако их случајно поделите са неким или ако је ваш налог угрожен.",
"resettokens-no-tokens": "Нема жетона за ресетовање.",
"subject-preview": "Преглед теме:",
"previewerrortext": "Дошло је до грешке при покушају прегледа промена.",
"blockedtitle": "Корисник је блокиран",
- "blocked-email-user": "<strong>Ð\92аÑ\88ем коÑ\80иÑ\81ниÑ\87ком именÑ\83 Ñ\98е блокиÑ\80ано Ñ\81лаÑ\9aе имеÑ\98лова. Још увек можете да уређујете друге странице на овом викију.</strong> Можете да видите потпуне детаље блокаде на [[Special:MyContributions|доприносима налога]].\n\nБлокаду је извршио/ла $1.\n\nНаведен је следећи разлог: <em>$2</em>.\n\n* Почетак блокаде: $8\n* Истек блокаде: $6\n* Намењена кориснику/ци или IP адреси: $7\n* ID блокаде #$5",
+ "blocked-email-user": "<strong>Ð\92аÑ\88ем коÑ\80иÑ\81ниÑ\87ком именÑ\83 Ñ\98е блокиÑ\80ано Ñ\81лаÑ\9aе е-поÑ\80Ñ\83ка. Још увек можете да уређујете друге странице на овом викију.</strong> Можете да видите потпуне детаље блокаде на [[Special:MyContributions|доприносима налога]].\n\nБлокаду је извршио/ла $1.\n\nНаведен је следећи разлог: <em>$2</em>.\n\n* Почетак блокаде: $8\n* Истек блокаде: $6\n* Намењена кориснику/ци или IP адреси: $7\n* ID блокаде #$5",
"blockedtext-partial": "<strong>Вашем корисничком имену или IP адреси је блокирано прављење промена на овој страници. Још увек можете да уређујете друге странице на овом викију.</strong> Можете да видите потпуне детаље блокаде на [[Special:MyContributions|доприносима налога]].\n\nБлокаду је извршио/ла $1.\n\nНаведен је следећи разлог: <em>$2</em>.\n\n* Почетак блокаде: $8\n* Истек блокаде: $6\n* Намењена кориснику/ци или IP адреси: $7\n* ID блокаде #$5",
"blockedtext": "<strong>Ваше корисничко име или IP адреса је блокирана.</strong>\n\nБлокирање је {{GENDER:$4|извршио|извршила}} $1.\nРазлог је <em>$2</em>.\n\n* Почетак блокирања: $8\n* Истек блокирања: $6\n* Блокирани: $7\n\nМожете да се обратите {{GENDER:$4|кориснику|корисници}} $1 или [[{{MediaWiki:Grouppage-sysop}}|администратору]] ради дискусије о блокирању.\nНе можете да користите могућност „{{int:emailuser}}” осим ако сте унели валидну имејл адресу у својим [[Special:Preferences|подешавањима]] налога и нисте блокирани од коришћења исте.\nВаша тренутна IP адреса је $3, а ID блокирања #$5.\nНаведите све информације одозго при стварању било каквих упита.",
- "autoblockedtext": "Ваша IP адреса је аутоматски блокирана јер ју је користио други корисник, кога је {{GENDER:$4|блокирао|блокирала}} $1.\nРазлог:\n\n:<em>$2</em>\n\n* Почетак блокаде: $8\n* Крај блокаде: $6\n* Име корисника: $7\n\nМожете да контактирате {{GENDER:$4|корисника|корисницу}} $1 или другог [[{{MediaWiki:Grouppage-sysop}}|администратора]] да бисте расправљали о блокади.\n\nЗапамтите да не можете да користите функцију „{{int:emailuser}}“ осим ако сте навели важећу имејл-адресу у својим [[Special:Preferences|подешавањима]].\n\nВаша тренутна IP адреса је $3, а ID блокаде $5.\nУкључите све горње детаље при прављењу било каквих упита.",
+ "autoblockedtext": "Ваша IP адреса је аутоматски блокирана јер ју је користио други корисник, кога је {{GENDER:$4|блокирао|блокирала|блокирао/ла}} $1.\nРазлог:\n\n:<em>$2</em>\n\n* Почетак блокаде: $8\n* Крај блокаде: $6\n* Име корисника: $7\n\nМожете да контактирате {{GENDER:$4|корисника|корисницу|корисника/цу}} $1 или другог [[{{MediaWiki:Grouppage-sysop}}|администратора]] да бисте расправљали о блокади.\n\nЗапамтите да не можете да користите функцију „{{int:emailuser}}“ осим ако сте навели важећу адресу е-поште у [[Special:Preferences|подешавањима]].\n\nВаша тренутна IP адреса је $3, а ID блокаде $5.\nУкључите све горње детаље при прављењу било каквих упита.",
"blockednoreason": "разлог није наведен",
"whitelistedittext": "$1 да бисте уређивали странице.",
- "confirmedittext": "Морате да потврдите своју имејл адресу пре уређивања страница.\nПоставите и потврдите имејл адресу преко [[Special:Preferences|подешавања]].",
+ "confirmedittext": "Морате да потврдите адресу е-поште пре уређивања страница.\nПоставите и проверите ваљаност адресе преко [[Special:Preferences|подешавања]].",
"nosuchsectiontitle": "Није могуће пронаћи одељак",
"nosuchsectiontext": "Покушали сте да уредите одељак који не постоји.\nМожда је премештен или избрисан док сте прегледали страницу.",
"loginreqtitle": "Потребна је пријава",
"prefs-watchlist-managetokens": "Управљање токенима",
"prefs-misc": "Разно",
"prefs-resetpass": "Промена лозинке",
- "prefs-changeemail": "Ð\9fÑ\80омена или Ñ\83клаÑ\9aаÑ\9aе имеÑ\98л-адÑ\80еÑ\81е",
- "prefs-setemail": "Ð\9fоÑ\81Ñ\82авÑ\99аÑ\9aе имеÑ\98л-адÑ\80еÑ\81е",
- "prefs-email": "Ð\9eпÑ\86иÑ\98е имеÑ\98ла",
+ "prefs-changeemail": "Ð\9fÑ\80омена или Ñ\83клаÑ\9aаÑ\9aе адÑ\80еÑ\81е е-поÑ\88Ñ\82е",
+ "prefs-setemail": "Ð\9fоÑ\81Ñ\82авÑ\99аÑ\9aе адÑ\80еÑ\81е е-поÑ\88Ñ\82е",
+ "prefs-email": "Ð\9eпÑ\86иÑ\98е е-поÑ\88Ñ\82е",
"prefs-rendering": "Изглед",
"saveprefs": "Сачувај",
"restoreprefs": "Врати сва подешавања на подразумеване вредности (у свим одељцима)",
"timezoneregion-europe": "Европа",
"timezoneregion-indian": "Индијски океан",
"timezoneregion-pacific": "Тихи океан",
- "allowemail": "Ð\94озволи пÑ\80имаÑ\9aе имеÑ\98лова од дÑ\80Ñ\83гиÑ\85 коÑ\80иÑ\81ника",
- "email-allow-new-users-label": "Ð\94озволи пÑ\80имаÑ\9aе имеÑ\98лова од новајлија",
- "email-blacklist-label": "Ð\97абÑ\80ани пÑ\80имаÑ\9aе имеÑ\98лова од Ñ\81ледеÑ\9bиÑ\85 коÑ\80иÑ\81ника:",
+ "allowemail": "Ð\94озволи дÑ\80Ñ\83гим коÑ\80иÑ\81ниÑ\86има да ми Ñ\88аÑ\99Ñ\83 е-поÑ\80Ñ\83ке",
+ "email-allow-new-users-label": "Ð\94озволи пÑ\80имаÑ\9aе е-поÑ\80Ñ\83ка од новајлија",
+ "email-blacklist-label": "Ð\97абÑ\80ани овим коÑ\80иÑ\81ниÑ\86има да ми Ñ\88аÑ\99Ñ\83 е-поÑ\80Ñ\83ке:",
"prefs-searchoptions": "Претрага",
"prefs-namespaces": "Именски простори",
"default": "подразумевано",
"prefs-custom-js": "прилагођени JavaScript",
"prefs-common-config": "Дељени CSS/JSON/JavaScript за све теме:",
"prefs-reset-intro": "Можете користити ову страницу да поново поставите своја подешавања на подразумеване вредности сајта.\nОво се не може опозвати.",
- "prefs-emailconfirm-label": "Ð\9fоÑ\82вÑ\80да имеÑ\98ла:",
- "youremail": "Ð\98меÑ\98л:",
+ "prefs-emailconfirm-label": "Ð\9fоÑ\82вÑ\80да е-поÑ\88Ñ\82е:",
+ "youremail": "Ð\95-поÑ\88Ñ\82а:",
"username": "{{GENDER:$1|Корисничко име}}:",
"prefs-memberingroups": "{{GENDER:$2|Члан|Чланица}} {{PLURAL:$1|групе|група}}:",
"prefs-memberingroups-type": "$1",
"gender-male": "Он уређује вики странице",
"gender-female": "Она уређује вики странице",
"prefs-help-gender": "Постављање овог подешавања је опционално.\nСофтвер користи дату вредност да би вам се обратио и споменуо вас другима користећи одговарајући граматички род.\nОва информација ће бити јавна.",
- "email": "Ð\98меÑ\98л",
+ "email": "Ð\95-поÑ\88Ñ\82а",
"prefs-help-realname": "Право име је опционално.\nАко је наведено, биће коришћено за приписивање вашег рада.",
- "prefs-help-email": "Ð\98меÑ\98л адÑ\80еÑ\81а је опционална, али је потребна за ресетовање лозинке, ако је заборавите.",
- "prefs-help-email-others": "ТакоÑ\92е можеÑ\82е изабÑ\80аÑ\82и да допÑ\83Ñ\81Ñ\82иÑ\82е дÑ\80Ñ\83гима да ваÑ\81 конÑ\82акÑ\82иÑ\80аÑ\98Ñ\83 пÑ\80еко имеÑ\98ла пÑ\83Ñ\82ем везе на ваÑ\88оÑ\98 коÑ\80иÑ\81ниÑ\87коÑ\98 Ñ\81Ñ\82Ñ\80аниÑ\86и или Ñ\81Ñ\82Ñ\80аниÑ\86и за Ñ\80азговоÑ\80.\nÐ\92аÑ\88а имеÑ\98л адÑ\80еÑ\81а неће бити приказана другим корисницима који вас контактирају.",
- "prefs-help-email-required": "Ð\9fоÑ\82Ñ\80ебна Ñ\98е имеÑ\98л-адÑ\80еÑ\81а.",
+ "prefs-help-email": "Ð\90дÑ\80еÑ\81а е-поÑ\88Ñ\82е је опционална, али је потребна за ресетовање лозинке, ако је заборавите.",
+ "prefs-help-email-others": "ТакоÑ\92е можеÑ\82е оабÑ\80аÑ\82и да допÑ\83Ñ\81Ñ\82иÑ\82е дÑ\80Ñ\83гима да ваÑ\81 конÑ\82акÑ\82иÑ\80аÑ\98Ñ\83 пÑ\80еко е-поÑ\88Ñ\82е пÑ\83Ñ\82ем везе на ваÑ\88оÑ\98 коÑ\80иÑ\81ниÑ\87коÑ\98 Ñ\81Ñ\82Ñ\80аниÑ\86и или Ñ\81Ñ\82Ñ\80аниÑ\86и за Ñ\80азговоÑ\80.\nÐ\92аÑ\88а адÑ\80еÑ\81а е-поÑ\88Ñ\82е неће бити приказана другим корисницима који вас контактирају.",
+ "prefs-help-email-required": "Ð\9fоÑ\82Ñ\80ебна Ñ\98е адÑ\80еÑ\81а е-поÑ\88Ñ\82е.",
"prefs-info": "Основне информације",
"prefs-i18n": "Интернационализација",
"prefs-signature": "Потпис",
"right-viewsuppressed": "прегледање измена скривених од свих корисника",
"right-suppressionlog": "прегледање приватних дневника",
"right-block": "блокирање даљих измена других корисника",
- "right-blockemail": "блокирање корисника да шаљу имејл",
+ "right-blockemail": "блокирање функције слања е-порука кориснику",
"right-hideuser": "блокирање корисничког имена и његово сакривање од јавности",
"right-ipblock-exempt": "заобилажење IP блокада, аутоблокада и блокада опсега",
"right-unblockself": "деблокирање самог себе",
"right-editmyuserjs": "уређивање сопствених JavaScript датотека",
"right-viewmywatchlist": "преглед сопственог списка надгледања",
"right-editmywatchlist": "уређивање сопственог списка надгледања; неке предузете радње ће свеједно додати странице на списак и без овог права",
- "right-viewmyprivateinfo": "пÑ\80еглед Ñ\81воÑ\98иÑ\85 пÑ\80иваÑ\82ниÑ\85 подаÑ\82ака (нпÑ\80. имеÑ\98л-адÑ\80еÑ\81Ñ\83, право име)",
- "right-editmyprivateinfo": "Ñ\83Ñ\80еÑ\92иваÑ\9aе Ñ\81опÑ\81Ñ\82вениÑ\85 пÑ\80иваÑ\82ниÑ\85 подаÑ\82ака (нпÑ\80. имеÑ\98л-адÑ\80еÑ\81е, правог имена)",
+ "right-viewmyprivateinfo": "пÑ\80еглед Ñ\81опÑ\81Ñ\82вениÑ\85 пÑ\80иваÑ\82ниÑ\85 подаÑ\82ака (нпÑ\80. адÑ\80еÑ\81е е-поÑ\88Ñ\82е, право име)",
+ "right-editmyprivateinfo": "Ñ\83Ñ\80еÑ\92иваÑ\9aе Ñ\81опÑ\81Ñ\82вениÑ\85 пÑ\80иваÑ\82ниÑ\85 подаÑ\82ака (нпÑ\80. адÑ\80еÑ\81е е-поÑ\88Ñ\82е, правог имена)",
"right-editmyoptions": "уређивање сопствених подешавања",
"right-rollback": "брзо враћање измена последњег корисника који је мењао одређену страницу",
"right-markbotedits": "означавање враћених измена као измене бота",
"right-userrights-interwiki": "уређивање корисничких права на другим викијима",
"right-siteadmin": "закључавање и откључавање базе података",
"right-override-export-depth": "извоз страница укључујући и повазене странице до дубине од пет веза",
- "right-sendemail": "Ñ\81лаÑ\9aе имеÑ\98ла другим корисницима",
+ "right-sendemail": "Ñ\81лаÑ\9aе е-поÑ\80Ñ\83ка другим корисницима",
"right-managechangetags": "прављење и (де)активирање [[Special:Tags|ознака]]",
"right-applychangetags": "примењивање [[Special:Tags|ознака]] на нечије промене",
"right-changetags": "додавање и уклањање разних [[Special:Tags|ознака]] на појединачним изменама и уносима у дневницима",
"grant-group-page-interaction": "Уређивање страница",
"grant-group-file-interaction": "Интеракција са медијима",
"grant-group-watchlist-interaction": "Уређивање вашег списка надгледања",
- "grant-group-email": "Ð\9fоÑ\88аÑ\99и имеÑ\98л",
+ "grant-group-email": "Ð\9fоÑ\88аÑ\99и е-поÑ\80Ñ\83кÑ\83",
"grant-group-high-volume": "Извршавање великог броја радњи",
"grant-group-customization": "Прилагођавање и подешавања",
"grant-group-administration": "Извршавање административних радњи",
"grant-privateinfo": "Приступи приватним информацијама",
"grant-protect": "Закључавање и откључавање страница",
"grant-rollback": "Враћање промена на страницама",
- "grant-sendemail": "СлаÑ\9aе имеÑ\98лова другим корисницима",
+ "grant-sendemail": "СлаÑ\9aе е-поÑ\80Ñ\83ка другим корисницима",
"grant-uploadeditmovefile": "Отпремање, замена и премештање датотека",
"grant-uploadfile": "Отпремање нових датотека",
"grant-basic": "Основна права",
"action-userrights": "уређујете сва корисничка права",
"action-userrights-interwiki": "уређујете корисничка права корисника на другим викијима",
"action-siteadmin": "закључавате или откључавате базу података",
- "action-sendemail": "Ñ\88аÑ\99еÑ\82е имеÑ\98лове",
+ "action-sendemail": "Ñ\88аÑ\99еÑ\82е е-поÑ\80Ñ\83ке",
"action-editmyoptions": "уређујете сопствена подешавања",
"action-editmywatchlist": "уређујете сопствени списак надгледања",
"action-viewmywatchlist": "прегледате сопствени списак надгледања",
"trackingcategories-nodesc": "Опис није доступан.",
"trackingcategories-disabled": "Категорија је онемогућена",
"mailnologin": "Нема адресе за слање",
- "mailnologintext": "Ð\9cоÑ\80аÑ\82е биÑ\82и [[Special:UserLogin|пÑ\80иÑ\98авÑ\99ени]] и имаÑ\82и ваÑ\99анÑ\83 имеÑ\98л адÑ\80еÑ\81Ñ\83 Ñ\83 [[Special:Preferences|подеÑ\88аваÑ\9aима]] да биÑ\81Ñ\82е Ñ\81лали имеÑ\98лове другим корисницима.",
- "emailuser": "Ð\9fоÑ\88аÑ\99и имеÑ\98л овом кориснику/ци",
- "emailuser-title-target": "СлаÑ\9aе имеÑ\98ла {{GENDER:$1|коÑ\80иÑ\81никÑ\83|коÑ\80иÑ\81ници}}",
- "emailuser-title-notarget": "СлаÑ\9aе имеÑ\98ла коÑ\80иÑ\81никÑ\83",
+ "mailnologintext": "Ð\9cоÑ\80аÑ\82е да Ñ\81е [[Special:UserLogin|пÑ\80иÑ\98авиÑ\82е]] и имаÑ\82е важеÑ\9bи адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е Ñ\83 [[Special:Preferences|подеÑ\88аваÑ\9aима]] да биÑ\81Ñ\82е Ñ\81лали е-поÑ\80Ñ\83ке другим корисницима.",
+ "emailuser": "Ð\9fоÑ\88аÑ\99и е-поÑ\80Ñ\83кÑ\83 овом кориснику/ци",
+ "emailuser-title-target": "СлаÑ\9aе е-поÑ\80Ñ\83ке {{GENDER:$1|коÑ\80иÑ\81никÑ\83|коÑ\80иÑ\81ниÑ\86и|коÑ\80иÑ\81никÑ\83/ци}}",
+ "emailuser-title-notarget": "СлаÑ\9aе е-поÑ\80Ñ\83ке коÑ\80иÑ\81никÑ\83/Ñ\86и",
"emailpagetext": "Можете да користите доњи образац да пошаљете имејл {{GENDER:$1|овом кориснику|овој корисници}}.\nИмејл који сте унели у вашим [[Special:Preferences|подешавањима]] ће се приказати у пољу „Од“, тако да ће прималац моћи да вам одговори директно.",
- "defemailsubject": "{{SITENAME}} â\80\94 Ð\98меÑ\98л од {{GENDER:$1|коÑ\80иÑ\81ника|коÑ\80иÑ\81нице}} „$1”",
- "usermaildisabled": "Ð\9aоÑ\80иÑ\81ниÑ\87ки имеÑ\98л Ñ\98е онемогÑ\83Ñ\9bен",
- "usermaildisabledtext": "Ð\9dе можеÑ\82е да Ñ\88аÑ\99еÑ\82е имеÑ\98лове другим корисницима на овом викију",
- "noemailtitle": "Ð\9dема имеÑ\98л-адÑ\80еÑ\81е",
- "noemailtext": "Ð\9eваÑ\98 коÑ\80иÑ\81ник ниÑ\98е навео важеÑ\9bÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83.",
- "nowikiemailtext": "Ð\9eваÑ\98 коÑ\80иÑ\81ник Ñ\98е одлÑ\83Ñ\87ио да не пÑ\80има имеÑ\98лове од других корисника.",
+ "defemailsubject": "{{SITENAME}} â\80\94 е-поÑ\80Ñ\83ка од {{GENDER:$1|коÑ\80иÑ\81ника|коÑ\80иÑ\81ниÑ\86е|коÑ\80иÑ\81ника/це}} „$1”",
+ "usermaildisabled": "Ð\9aоÑ\80иÑ\81ниÑ\87ка е-поÑ\88Ñ\82а Ñ\98е онемогÑ\83Ñ\9bена",
+ "usermaildisabledtext": "Ð\9dе можеÑ\82е да Ñ\88аÑ\99еÑ\82е е-поÑ\80Ñ\83ке другим корисницима на овом викију",
+ "noemailtitle": "Ð\9dема адÑ\80еÑ\81е е-поÑ\88Ñ\82е",
+ "noemailtext": "Ð\9eваÑ\98 коÑ\80иÑ\81ник ниÑ\98е навео важеÑ\9bÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е.",
+ "nowikiemailtext": "Ð\9eваÑ\98 коÑ\80иÑ\81ник Ñ\98е одабÑ\80ао да не пÑ\80има е-поÑ\80Ñ\83ке од других корисника.",
"emailnotarget": "Непостојеће или наважеће корисничко име примаоца.",
"emailtarget": "Унос корисничког имена примаоца",
"emailusername": "Корисничко име:",
"emailusernamesubmit": "Пошаљи",
- "email-legend": "СлаÑ\9aе имеÑ\98ла дÑ\80Ñ\83гом коÑ\80иÑ\81никÑ\83 пројекта {{SITENAME}}",
+ "email-legend": "СлаÑ\9aе е-поÑ\80Ñ\83ке коÑ\80иÑ\81никÑ\83/Ñ\86и пројекта {{SITENAME}}",
"emailfrom": "Од:",
"emailto": "За:",
"emailsubject": "Тема:",
"emailmessage": "Порука:",
"emailsend": "Пошаљи",
- "emailccme": "Ð\9fоÑ\88аÑ\99и ми копиÑ\98Ñ\83 поÑ\80Ñ\83ке на моÑ\98 имеÑ\98л.",
+ "emailccme": "Ð\9fоÑ\88аÑ\99и ми е-поÑ\80Ñ\83кÑ\83 Ñ\81а копиÑ\98ом моÑ\98е поÑ\80Ñ\83ке.",
"emailccsubject": "Копија поруке кориснику/ци $1: $2",
- "emailsent": "Ð\98меÑ\98л Ñ\98е поÑ\81лаÑ\82",
- "emailsenttext": "Ð\92аÑ\88а имеÑ\98л порука је послата.",
- "emailuserfooter": "Овај имејл је {{GENDER:$1|послао|послала}} $1 {{GENDER:$2|кориснику|корисници}} $2 помоћу опције „{{int:emailuser}}“ на викију {{SITENAME}}. Ако одговорите на овај имејл, {{GENDER:$2|Ваш}} имејл ће бити непосредно прослеђен ка {{GENDER:$1|првобитном пошиљаоцу}}, чиме ћете {{GENDER:$2|му|јој}} открити {{GENDER:$2|своју}} имејл адресу.",
+ "emailsent": "Ð\95-поÑ\80Ñ\83ка Ñ\98е поÑ\81лаÑ\82а",
+ "emailsenttext": "Ð\92аÑ\88а е-порука је послата.",
+ "emailuserfooter": "Ову е-поруку је {{GENDER:$1|послао|послала|послао/ла}} $1 {{GENDER:$2|кориснику|корисници|кориснику/ци}} $2 помоћу опције „{{int:emailuser}}” на пројекту {{SITENAME}}. Ако одговорите на ову е-поруку, {{GENDER:$2|ваша}} е-порука биће непосредно прослеђена ка {{GENDER:$1|оригиналном пошиљаоцу}}, чиме ћете {{GENDER:$2|му|јој}} открити {{GENDER:$2|адресу е-поште}}.",
"usermessage-summary": "Слање системске поруке.",
"usermessage-editor": "Уређивач системских порука",
"usermessage-template": "MediaWiki:UserMessage",
"notanarticle": "Није страница са садржајем",
"notvisiblerev": "Последња измена другог корисника је избрисана.",
"watchlist-details": "Имате {{PLURAL:$1|$1 страницу|$1 странице|$1 страница}} на свом списку надгледања (плус странице за разговор).",
- "wlheader-enotif": "Ð\9eбавеÑ\88Ñ\82еÑ\9aе имеÑ\98лом је омогућено.",
+ "wlheader-enotif": "Ð\9eбавеÑ\88Ñ\82аваÑ\9aе е-поÑ\80Ñ\83ком је омогућено.",
"wlheader-showupdated": "Странице које су промењене откад сте их последњи пут посетили су <strong>подебљане</strong>.",
"wlnote": "Испод {{PLURAL:$1|је последња промена|су последње <strong>$1</strong> промене|је последњих <strong>$1</strong> промена}} у {{PLURAL:$2|претходном сату|претходна <strong>$2</strong> сата|претходних <strong>$2</strong> сати}}, закључно са $3, $4.",
"wlshowlast": "Прикажи последњих $1 сати, $2 дана",
"ipbreason-dropdown": "*Најчешћи разлози за блокирање\n** Уметање лажних информација\n** Уклањање садржаја са страница\n** Додавање непожељних веза до спољашњих сајтова\n** Уношење бесмислица/графита у странице\n** Непристојно понашање\n** Употреба више налога\n** Неприхватљиво корисничко име",
"ipb-hardblock": "Спречи пријављене кориснике да уређују с ове IP адресе",
"ipbcreateaccount": "Онемогући отварање налога",
- "ipbemailban": "Спречи корисника да шаље имејлове",
+ "ipbemailban": "Спречи функцију слања е-поруке корисника",
"ipbenableautoblock": "Аутоматски блокирај последњу IP адресу овог корисника и све даљње адресе с којих покуша да уређује",
"ipbsubmit": "Блокирај овог корисника",
"ipbother": "Друго време:",
"anononlyblock": "само анонимни",
"noautoblockblock": "аутоматско блокирање је онемогућено",
"createaccountblock": "отварање налога је онемогућено",
- "emailblock": "имеÑ\98л Ñ\98е онемогÑ\83Ñ\9bен",
+ "emailblock": "е-поÑ\88Ñ\82а Ñ\98е онемогÑ\83Ñ\9bена",
"blocklist-nousertalk": "забрањено уређивање сопствене странице за разговор",
"blocklist-editing": "уређивање",
"blocklist-editing-sitewide": "уређивање (на целом сајту)",
"unblocklink": "деблокирај",
"change-blocklink": "промени блокаду",
"contribslink": "доприноси",
- "emaillink": "поÑ\88аÑ\99и имеÑ\98л",
+ "emaillink": "поÑ\88аÑ\99и е-поÑ\80Ñ\83кÑ\83",
"autoblocker": "Аутоматски сте блокирани јер делите IP адресу с корисником/цом [[User:$1|$1]].\nРазлог блокирања корисника/це $1 је „$2“",
"blocklogpage": "Дневник блокирања",
"blocklog-showlog": "{{GENDER:$1|Овај корисник је раније блокиран|Ова корисница је раније блокирана}}.\nДневник блокирања је наведен испод као референца:",
"block-log-flags-anononly": "само анонимни корисници",
"block-log-flags-nocreate": "онемогућено отварање налога",
"block-log-flags-noautoblock": "аутоматско блокирање је онемогућено",
- "block-log-flags-noemail": "имеÑ\98л Ñ\98е онемогÑ\83Ñ\9bен",
+ "block-log-flags-noemail": "е-поÑ\88Ñ\82а Ñ\98е онемогÑ\83Ñ\9bена",
"block-log-flags-nousertalk": "забрањено уређивање сопствене странице за разговор",
"block-log-flags-angry-autoblock": "проширено аутоматско блокирање је омогућено",
"block-log-flags-hiddenname": "корисничко име је сакривено",
"tooltip-ca-move": "Преместите ову страницу",
"tooltip-ca-watch": "Додајте ову страницу на списак надгледања",
"tooltip-ca-unwatch": "Уклоните ову страницу са списка надгледања",
- "tooltip-search": "Претражите {{GRAMMAR:акузатив|{{SITENAME}}}}",
+ "tooltip-search": "Претражите пројекат {{SITENAME}}",
"tooltip-search-go": "Идите на страницу са тачно овим именом ако постоји",
"tooltip-search-fulltext": "Претражите странице са овим текстом",
"tooltip-p-logo": "Посетите главну страну",
"tooltip-feed-rss": "RSS фид за ову страницу",
"tooltip-feed-atom": "Atom фид за ову страницу",
"tooltip-t-contributions": "Списак доприноса {{GENDER:$1|овог корисника|ове кориснице|овог корисника}}",
- "tooltip-t-emailuser": "Ð\9fоÑ\88аÑ\99иÑ\82е имеÑ\98л {{GENDER:$1|овом коÑ\80иÑ\81никÑ\83|овоÑ\98 коÑ\80иÑ\81ници}}",
+ "tooltip-t-emailuser": "Ð\9fоÑ\88аÑ\99иÑ\82е е-поÑ\80Ñ\83кÑ\83 {{GENDER:$1|овом коÑ\80иÑ\81никÑ\83|овоÑ\98 коÑ\80иÑ\81ниÑ\86и|коÑ\80иÑ\81никÑ\83/ци}}",
"tooltip-t-info": "Више информација о овој страници",
"tooltip-t-upload": "Отпремите датотеке",
"tooltip-t-specialpages": "Списак свих посебних страница",
"exif-urgency-other": "Прилагођени приоритет ($1)",
"namespacesall": "сви",
"monthsall": "све",
- "confirmemail": "Ð\9fоÑ\82вÑ\80да имеÑ\98л-адÑ\80еÑ\81е",
- "confirmemail_noemail": "Ð\9dиÑ\81Ñ\82е поÑ\81Ñ\82авили важеÑ\9bÑ\83 имеÑ\98л-адÑ\80еÑ\81Ñ\83 у [[Special:Preferences|корисничким подешавањима]].",
+ "confirmemail": "Ð\9fоÑ\82вÑ\80да адÑ\80еÑ\81е е-поÑ\88Ñ\82е",
+ "confirmemail_noemail": "Ð\9dиÑ\81Ñ\82е поÑ\81Ñ\82авили важеÑ\9bÑ\83 адÑ\80еÑ\81Ñ\83 е-поÑ\88Ñ\82е у [[Special:Preferences|корисничким подешавањима]].",
"confirmemail_text": "{{SITENAME}} захтева да проверите ваљаност имејл-адресе пре него што почнете да користите функцију имејла.\nАктивирајте дугме испод да бисте послали мејл за потврду на своју адресу.\nМејл ће укључивати везу са кодом;\nучитајте везу у свом прегледачу да бисте потврдили да је ваша имејл-адреса важећа.",
"confirmemail_pending": "Код за потврду вам је већ послат имејлом.\nАко сте недавно отворили налог, можда треба да сачекате неколико минута да пристигне пре него што поново затражите нови код.",
"confirmemail_send": "Пошаљи код за потврду",
"confirmemail_sent": "Потврдна порука је послата.",
"confirmemail_oncreate": "Кôд за потврду је послат на вашу имејл-адресу.\nОвај кôд није неопходан за пријављивање, али ћете морати да га наведете пре омогућавања било каквих функција заснованих на имејлу на викију.",
- "confirmemail_sendfailed": "{{SITENAME}} не може да поÑ\88аÑ\99е имеÑ\98л поÑ\82вÑ\80дÑ\83.\nÐ\9fÑ\80овеÑ\80иÑ\82е да ли Ñ\98е имеÑ\98л адÑ\80еÑ\81а пÑ\80авилно напиÑ\81ана.\n\nÐ\93Ñ\80еÑ\88ка: $1",
+ "confirmemail_sendfailed": "{{SITENAME}} не може да поÑ\88аÑ\99е е-поÑ\80Ñ\83кÑ\83 за поÑ\82вÑ\80дÑ\83.\nÐ\9fÑ\80овеÑ\80иÑ\82е да ли Ñ\98е адÑ\80еÑ\81а е-поÑ\88Ñ\82е Ñ\81адÑ\80жи неважеÑ\9bе знаке.\n\nÐ\9fоÑ\88иÑ\99алаÑ\86 Ñ\98е вÑ\80аÑ\82ио гÑ\80еÑ\88кÑ\83: $1",
"confirmemail_invalid": "Неважећи код за потврду.\nКод је можда истекао.",
- "confirmemail_needlogin": "$1 да бисте потврдили своју имејл-адресу.",
- "confirmemail_success": "Ð\92аÑ\88а имеÑ\98л-адÑ\80еÑ\81а је потврђена.\nСада можете да се [[Special:UserLogin|пријавите]] и уживате у викију.",
- "confirmemail_loggedin": "Ð\92аÑ\88а имеÑ\98л-адÑ\80еÑ\81а је сада потврђена.",
- "confirmemail_subject": "{{SITENAME}} â\80\93 поÑ\82вÑ\80да имеÑ\98л-адÑ\80еÑ\81е",
+ "confirmemail_needlogin": "$1 да бисте потврдили адресу е-поште.",
+ "confirmemail_success": "Ð\92аÑ\88а адÑ\80еÑ\81а е-поÑ\88Ñ\82е је потврђена.\nСада можете да се [[Special:UserLogin|пријавите]] и уживате у викију.",
+ "confirmemail_loggedin": "Ð\92аÑ\88а адÑ\80еÑ\81а е-поÑ\88Ñ\82е је сада потврђена.",
+ "confirmemail_subject": "{{SITENAME}} â\80\93 поÑ\82вÑ\80да адÑ\80еÑ\81е е-поÑ\88Ñ\82е",
"confirmemail_body": "Неко, вероватно Ви, са IP адресе $1,\nрегистровао је налог „$2“ са овом имејл адресом на пројекту {{SITENAME}}.\n\nДа бисте потврдили да овај налог стварно припада вама и активирали функцију имејла на пројекту {{SITENAME}}, отворите ова у прегледачу:\n\n$3\n\nАко ви *нисте* регистровали налог, пратите ову везу\nда бисте отказали потврду имејл адресе:\n\n$5\n\nОвај код за потврду истиче у $4.",
"confirmemail_body_changed": "Неко, вероватно Ви, с IP адресе $1,\nпроменио је имејл адресу налога „$2“ у ову адресу на пројекту {{SITENAME}}.\n\nДа бисте потврдили да овај налог стварно припада вама и поново активирали функцију имејла, отворите следећу везу у прегледачу:\n\n$3\n\nАко налог *не* припада вама, пратите следећу везу да откажете потврду имејл адресе:\n\n$5\n\nОвај код за потврду истиче $6 у $7",
"confirmemail_body_set": "Неко, вероватно Ви, с IP адресе $1,\nпроменио је имејл адресу налога „$2“ у ову адресу на {{SITENAME}}.\n\nДа бисмо потврдили да овај налог стварно припада вама и поново активирали\nфункцију имејла на {{SITENAME}}, отворите следећу везу у прегледачу:\n\n$3\n\nАко налог *не* припада вама, пратите следећу везу да откажете потврду имејл адресе:\n\n$5\n\nОвај код за потврду истиче $4.",
- "confirmemail_invalidated": "Ð\9fоÑ\82вÑ\80да имеÑ\98л адÑ\80еÑ\81е је отказана",
- "invalidateemail": "Ð\9eÑ\82казиваÑ\9aе поÑ\82вÑ\80де имеÑ\98ла",
+ "confirmemail_invalidated": "Ð\9fоÑ\82вÑ\80да адÑ\80еÑ\81е е-поÑ\88Ñ\82е је отказана",
+ "invalidateemail": "Ð\9eÑ\82казиваÑ\9aе поÑ\82вÑ\80де е-поÑ\88Ñ\82е",
"notificationemail_subject_changed": "Регистрована имејл адреса на пројекту {{SITENAME}} је промењена",
"notificationemail_subject_removed": "Регистрована имејл адреса на пројекту {{SITENAME}} је уклоњена",
"notificationemail_body_changed": "Неко, вероватно Ви је променио имејл адресу налога из $2“ у „$3“ са IP адресе $1 на сајту {{SITENAME}}.\n\nАко ово нисте били Ви, одмах обавестите администраторе сајта.",
"log-action-filter-newusers-create": "отворио анониман корисник",
"log-action-filter-newusers-create2": "отворио регистрован корисник",
"log-action-filter-newusers-autocreate": "аутоматски отворен",
- "log-action-filter-newusers-byemail": "оÑ\82ваÑ\80аÑ\9aе лозинком поÑ\81ланом на имеÑ\98лÑ\83",
+ "log-action-filter-newusers-byemail": "оÑ\82ваÑ\80аÑ\9aе лозинком поÑ\81ланом е-поÑ\80Ñ\83ком",
"log-action-filter-patrol-patrol": "ручно",
"log-action-filter-patrol-autopatrol": "аутоматско",
"log-action-filter-protect-protect": "закључавање",
"authmanager-password-help": "Лозинка за потврду идентитета.",
"authmanager-domain-help": "Домен за спољашњу потврду идентитета.",
"authmanager-retype-help": "Поновите лозинку да би сте потврдили.",
- "authmanager-email-label": "Ð\98меÑ\98л",
- "authmanager-email-help": "Ð\98меÑ\98л-адÑ\80еÑ\81а",
+ "authmanager-email-label": "Ð\95-поÑ\88Ñ\82а",
+ "authmanager-email-help": "Ð\90дÑ\80еÑ\81а е-поÑ\88Ñ\82е:",
"authmanager-realname-label": "Право име",
"authmanager-realname-help": "Право име корисника",
"authmanager-provider-password": "Потврда идентитета лозинком",
"grant-delete": "Radera sidor, revideringar och loggposter",
"grant-editinterface": "Redigera JSON för MediaWiki-namnrymden och hela webbplatsen/användare",
"grant-editmycssjs": "Redigera din egen CSS/JSON/JavaScript",
- "grant-editmyoptions": "Redigera dina användarinställningar",
+ "grant-editmyoptions": "Redigera dina användarinställningar och JSON-konfiguration",
"grant-editmywatchlist": "Redigera din bevakningslista",
"grant-editsiteconfig": "Redigera CSS/JS för hela webbplatsen och användare",
"grant-editpage": "Redigera befintliga sidor",
"login-userblocked": "Hinarang ang tagagamit na ito. Hindi pinahihintulutan ang paglalagda.",
"wrongpassword": "Mali ang ipinasok na password o pangalan ng tagagamit.\nPakisubok muli.",
"wrongpasswordempty": "Walang laman ang ipinasok na password.\nPakisubok muli.",
- "passwordtooshort": "Ang mga password ay dapat mayroong {{PLURAL:$1|1 panitik|$1 panitik}} (karakter).",
+ "passwordtooshort": "Ang mga password ay kailangan di bababa sa $1 karakter.",
"passwordtoolong": "Ang mga password ay hindi maaaring mas mahaba sa {{PLURAL:$1|1 panitik|$1 panitik}}.",
"passwordtoopopular": "Hindi maaaring gamitin ang mga piniling pangkaraniwang password. Mangyaring pumili ng higit na natatanging password na mahirap hulaan.",
"password-name-match": "Dapat magkaiba ang password mo sa bansag o username mo.",
"tog-watchlisthidebots": "زیرِنظر فہرست سے روبہ جاتی ترامیم چھپائیں",
"tog-watchlisthideminor": "زیرِنظر فہرست سے معمولی ترامیم چھپائیں",
"tog-watchlisthideliu": "زیرِنظر فہرست سے داخلِ نوشتہ شدہ صارفین کی ترامیم چھپائیں",
- "tog-watchlistreloadautomatically": "کسÛ\8c Ù\85Ù\82طار Ù\85Û\8cÚº تبدÛ\8cÙ\84Û\8c Ú©Û\92 بعد زÛ\8cر Ù\86ظر Ù\81Û\81رست Ú©Ù\88 Ø®Ù\88دکار Ø·Ù\88ر پر تازÛ\81 کرÛ\8cÚº (جاÙ\88ا اسکرپٹ درکار)",
+ "tog-watchlistreloadautomatically": "کسی مقطر میں تبدیلی کے بعد زیر نظر فہرست کو خودکار طور پر تازہ کریں (جاوا اسکرپٹ درکار)",
"tog-watchlistunwatchlinks": "زیر نظر فہرست کے اندراجات میں زیر نظر کرنے اور ہٹانے کے براہ راست روابط شامل کریں (اس سہولت کے لیے جاوا اسکرپٹ درکار ہے)",
"tog-watchlisthideanons": "زیرِنظر فہرست سے نامعلوم صارفین کی ترامیم چھپائیں",
"tog-watchlisthidepatrolled": "زیرِنظر فہرست سے مراجع شدہ ترامیم چھپائیں",
"whatlinkshere-hidetrans": "استعمالات $1",
"whatlinkshere-hidelinks": "روابط $1",
"whatlinkshere-hideimages": "تصویر کے روابط $1",
- "whatlinkshere-filters": "Ù\85Ù\82طارات",
+ "whatlinkshere-filters": "مقطرات",
"whatlinkshere-submit": "ٹھیک",
"autoblockid": "خودکار پابندی #$1",
"block": "صارف مسدود کریں",
"allmessagescurrent": "موجودہ متن",
"allmessagestext": "ذیل میں میڈیاویکی نام فضا میں دستیاب نظامی پیغامات کی فہرست موجود ہے۔\nاگر آپ میڈیاویکی کا ترجمہ کرنا چاہتے ہیں تو [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation میڈیاویکی مقامیت کاری] اور [https://translatewiki.net translatewiki.net] ملاحظہ فرمائیں۔",
"allmessagesnotsupportedDB": "اس صفحہ کو استعمال نہیں کیا جا سکتا کیونکہ <strong>$wgUseDatabaseMessages</strong> کو غیر فعال کر دیا گیا ہے۔",
- "allmessages-filter-legend": "Ù\85Ù\82طار",
+ "allmessages-filter-legend": "مقطر",
"allmessages-filter": "تلاش بلحاظ:",
"allmessages-filter-unmodified": "غیر تبدیل شدہ",
"allmessages-filter-all": "تمام",
"anonusers": "{{SITENAME}} {{PLURAL:$2|کا|کے}} گمنام {{PLURAL:$2|{{GENDER:$1|صارف}}|صارفین}} $1",
"creditspage": "صفحہ کے انتسابات",
"nocredits": "اس صفحہ کے انتسابات سے متعلق معلومات دستیاب نہیں ہیں۔",
- "spamprotectiontitle": "Ù\85Ù\82طار Ù\81اضÙ\84 کارÛ\8c",
- "spamprotectiontext": "آپ جس عبارت کو محفوظ کرنا چاہتے ہیں اسے مقطار فاضل کاری نے ممنوع کر رکھا ہے۔\nعین ممکن ہے یہ فہرست سیاہ میں درج کسی بیرونی سائٹ کے ربط کی وجہ سے ہو رہا ہو۔",
- "spamprotectionmatch": "Ø°Û\8cÙ\84 Ù\85Û\8cÚº Ù\85Ù\88جÙ\88د Ù\85تÙ\86 Ú©Ù\88 Ù\85Ù\82طار Ù\81اضÙ\84 کارÛ\8c Ù\86Û\92 رÙ\88Ú© دÛ\8cا Û\81Û\92: $1",
+ "spamprotectiontitle": "مقطر فاضل کاری",
+ "spamprotectiontext": "آپ جس عبارت کو محفوظ کرنا چاہتے ہیں اس پر مقطر فاضل کاری نے پابندی عائد کر رکھی ہے۔\nعین ممکن ہے کہ فہرست سیاہ میں درج کسی بیرونی ویب سائٹ کے ربط کی وجہ سے ایسا ہو رہا ہو۔",
+ "spamprotectionmatch": "ذیل میں موجود متن کو مقطر فاضل کاری نے روک دیا ہے: $1",
"spambot_username": "میڈیاویکی محافظ فاضل کاری",
"spam_reverting": "اس آخری نسخہ کی جانب واپس پھیرا جا رہا ہے جس میں $1 کے روابط شامل نہیں",
"spam_blanking": "$1 کے روابط پر مشتمل تمام نسخے، صفائی جاری ہے",
"newimages": "نئی فائلوں کی گیلری",
"imagelisttext": "ذیل میں $2 <strong>$1</strong> {{PLURAL:$1|فائل|فائلوں}} کی فہرست موجود ہے۔",
"newimages-summary": "اس خصوصی صفحہ میں تازہ ترین اپلوڈ شدہ فائلوں کی فہرست موجود ہے۔",
- "newimages-legend": "Ù\85Ù\82طار",
+ "newimages-legend": "مقطر",
"newimages-label": "فائل کا نام (یا اس کا جزو):",
"newimages-user": "آئی پی پتہ یا صارف نام",
"newimages-newbies": "محض نئے کھاتوں کی شراکتیں دکھائیں",
"intentionallyblankpage": "اس صفحہ کو دانستہ خالی چھوڑا گیا ہے۔",
"external_image_whitelist": "#اس سطر کو ہو بہو ایسا ہی رہنے دیں<pre>\n#ذیل میں ریجیکس کی عبارتیں درج کریں (محض // کے درمیان)\n#ان عبارتوں کی بیرونی تصویروں کے روابط سے مطابقت کی جائے گی\n#جو مطابق ہو جائیں وہ تصویر کے طور پر نظر آئیں گے ورنہ محض تصویر کا ربط ظاہر ہوگا\n# علامت # سے شرع ہونے والی سطروں کو تبصرہ سمجھا جائے گا\n#چھوٹے بڑے حروف کو نظر انداز کیا جائے گا\n\nریجیکس کی تمام عبارتوں کو اس سطر کے اوپر رکھیں۔ اس سطر کو ہو بہو ایسا ہی رہنے دیں</pre>",
"tags": "درست تبدیلی کے ٹیگ",
- "tag-filter": "Ù\85Ù\82طار [[Special:Tags|Ù¹Û\8cÚ¯]]:",
- "tag-filter-submit": "Ù\85Ù\82طار",
+ "tag-filter": "مقطر [[Special:Tags|ٹیگ]]:",
+ "tag-filter-submit": "مقطر",
"tag-list-wrapper": "[[Special:Tags|{{PLURAL:$1|ٹیگ}}]]: $2",
"tag-mw-contentmodelchange": "مواد کے ماڈل میں تبدیلی",
"tag-mw-contentmodelchange-description": "ترامیم جو صفحہ کے [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:ChangeContentModel مواد کے ماڈل کو تبدیل کرتی ہیں]",
"prefs-email": "電子郵件選項",
"prefs-rendering": "外觀",
"saveprefs": "儲存",
- "restoreprefs": "還原所有預設設定 (所有項目)",
+ "restoreprefs": "還原所有預設設定(所有項目)",
"prefs-editing": "編輯",
"searchresultshead": "搜尋",
"stub-threshold": "短頁面連結格式門檻值 ($1):",
"rollback-missingparam": "請求缺少必要參數。",
"rollback-missingrevision": "無法載入修訂資料。",
"cantrollback": "無法還原編輯;\n此頁面的最後貢獻者是唯一的作者。",
- "alreadyrolled": "無法還原由 [[User:$2|$2]] ([[User talk:$2|對話]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]] 所作的最後一次編輯 [[:$1]],已有其他人編輯或還原了該頁面。\n\n最後一次編輯該頁面的使用者是 [[User:$3|$3]] ([[User talk:$3|對話]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]])。",
+ "alreadyrolled": "無法還原由[[User:$2|$2]]([[User talk:$2|對話]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]])所作的最後一次編輯[[:$1]],已有其他人編輯或還原了該頁面。\n\n最後一次編輯該頁面的使用者是[[User:$3|$3]]([[User talk:$3|對話]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]])。",
"editcomment": "編輯摘要為:<em>$1</em>。",
"revertpage": "已還原[[Special:Contributions/$2|$2]]([[User talk:$2|對話]])的編輯為最後由[[User:$1|$1]]所修訂的版本",
"revertpage-nouser": "已還原隱藏使用者的編輯為最後 {{GENDER:$1|[[User:$1|$1]]}} 修訂的版本",
parent::tearDown();
}
+ /**
+ * @expectedException PHPUnit_Framework_Error_Notice
+ * @expectedExceptionMessage given element name with space
+ * @covers Html::openElement
+ */
+ public function testOpenElement() {
+ Html::openElement( 'span id="x"' );
+ }
+
/**
* @covers Html::element
* @covers Html::rawElement
RevisionSlotsUpdate $update,
User $user,
$comment,
- $id,
+ $id = 0,
$parentId = 0
) {
$rev = new MutableRevisionRecord( $title );
$rev->applyUpdate( $update );
$rev->setUser( $user );
$rev->setComment( CommentStoreComment::newUnsavedComment( $comment ) );
- $rev->setId( $id );
$rev->setPageId( $title->getArticleID() );
$rev->setParentId( $parentId );
+ if ( $id ) {
+ $rev->setId( $id );
+ }
+
return $rev;
}
// TODO: test category membership update (with setRcWatchCategoryMembership())
}
+ /**
+ * @covers \MediaWiki\Storage\DerivedPageDataUpdater::doParserCacheUpdate()
+ */
+ public function testDoParserCacheUpdate() {
+ if ( $this->hasMultiSlotSupport() ) {
+ MediaWikiServices::getInstance()->getSlotRoleRegistry()->defineRoleWithModel(
+ 'aux',
+ CONTENT_MODEL_WIKITEXT
+ );
+ }
+
+ $page = $this->getPage( __METHOD__ );
+ $this->createRevision( $page, 'Dummy' );
+
+ $user = $this->getTestUser()->getUser();
+
+ $update = new RevisionSlotsUpdate();
+ $update->modifyContent( 'main', new WikitextContent( 'first [[Main]]' ) );
+
+ if ( $this->hasMultiSlotSupport() ) {
+ $update->modifyContent( 'aux', new WikitextContent( 'Aux [[Nix]]' ) );
+ }
+
+ // Emulate update after edit ----------
+ $pcache = MediaWikiServices::getInstance()->getParserCache();
+ $pcache->deleteOptionsKey( $page );
+
+ $rev = $this->makeRevision( $page->getTitle(), $update, $user, 'rev', null );
+ $rev->setTimestamp( '20100101000000' );
+ $rev->setParentId( $page->getLatest() );
+
+ $updater = $this->getDerivedPageDataUpdater( $page );
+ $updater->prepareContent( $user, $update, false );
+
+ $rev->setId( 11 );
+ $updater->prepareUpdate( $rev );
+
+ // Force the page timestamp, so we notice whether ParserOutput::getTimestamp
+ // or ParserOutput::getCacheTime are used.
+ $page->setTimestamp( $rev->getTimestamp() );
+ $updater->doParserCacheUpdate();
+
+ // The cached ParserOutput should not use the revision timestamp
+ $cached = $pcache->get( $page, $updater->getCanonicalParserOptions(), true );
+ $this->assertInternalType( 'object', $cached );
+ $this->assertSame( $updater->getCanonicalParserOutput(), $cached );
+
+ $this->assertSame( $rev->getTimestamp(), $cached->getCacheTime() );
+ $this->assertSame( $rev->getId(), $cached->getCacheRevisionId() );
+
+ // Emulate forced update of an old revision ----------
+ $pcache->deleteOptionsKey( $page );
+
+ $updater = $this->getDerivedPageDataUpdater( $page );
+ $updater->prepareUpdate( $rev );
+
+ // Force the page timestamp, so we notice whether ParserOutput::getTimestamp
+ // or ParserOutput::getCacheTime are used.
+ $page->setTimestamp( $rev->getTimestamp() );
+ $updater->doParserCacheUpdate();
+
+ // The cached ParserOutput should not use the revision timestamp
+ $cached = $pcache->get( $page, $updater->getCanonicalParserOptions(), true );
+ $this->assertInternalType( 'object', $cached );
+ $this->assertSame( $updater->getCanonicalParserOutput(), $cached );
+
+ $this->assertGreaterThan( $rev->getTimestamp(), $cached->getCacheTime() );
+ $this->assertSame( $rev->getId(), $cached->getCacheRevisionId() );
+ }
+
+ /**
+ * @return bool
+ */
private function hasMultiSlotSupport() {
global $wgMultiContentRevisionSchemaMigrationStage;
'aux',
CONTENT_MODEL_WIKITEXT
);
+
+ $this->tablesUsed[] = 'logging';
+ $this->tablesUsed[] = 'recentchanges';
}
private function getDummyTitle( $method ) {
$this->doBlock( [ 'expiry' => '' ] );
}
+ public function testBlockWithoutRestrictions() {
+ $this->setMwGlobals( [
+ 'wgEnablePartialBlocks' => true,
+ ] );
+
+ $this->doBlock();
+
+ $block = Block::newFromTarget( $this->mUser->getName() );
+
+ $this->assertTrue( $block->isSitewide() );
+ $this->assertCount( 0, $block->getRestrictions() );
+ }
+
public function testBlockWithRestrictions() {
$this->setMwGlobals( [
'wgEnablePartialBlocks' => true,
$this->assertFalse( Title::newFromText( $name )->exists() );
}
+ public function testBatchedDelete() {
+ $this->setMwGlobals( 'wgDeleteRevisionsBatchSize', 1 );
+
+ $name = 'Help:' . ucfirst( __FUNCTION__ );
+ for ( $i = 1; $i <= 3; $i++ ) {
+ $this->editPage( $name, "Revision $i" );
+ }
+
+ $apiResult = $this->doApiRequestWithToken( [
+ 'action' => 'delete',
+ 'title' => $name,
+ ] )[0];
+
+ $this->assertArrayHasKey( 'delete', $apiResult );
+ $this->assertArrayHasKey( 'title', $apiResult['delete'] );
+ $this->assertSame( $name, $apiResult['delete']['title'] );
+ $this->assertArrayHasKey( 'scheduled', $apiResult['delete'] );
+ $this->assertTrue( $apiResult['delete']['scheduled'] );
+ $this->assertArrayNotHasKey( 'logid', $apiResult['delete'] );
+
+ // Run the jobs
+ JobQueueGroup::destroySingletons();
+ $jobs = new RunJobs;
+ $jobs->loadParamsAndArgs( null, [ 'quiet' => true ], null );
+ $jobs->execute();
+
+ $this->assertFalse( Title::newFromText( $name )->exists( Title::GAID_FOR_UPDATE ) );
+ }
+
public function testDeleteNonexistent() {
$this->setExpectedException( ApiUsageException::class,
"The page you specified doesn't exist." );
];
}
+ public function testAddMessagesFromStatus_filter() {
+ $result = new ApiResult( 8388608 );
+ $formatter = new ApiErrorFormatter( $result, Language::factory( 'qqx' ), 'plaintext', false );
+
+ $status = Status::newGood();
+ $status->warning( 'mainpage' );
+ $status->warning( 'parentheses', 'foobar' );
+ $status->warning( wfMessage( 'mainpage' ) );
+ $status->error( 'mainpage' );
+ $status->error( 'parentheses', 'foobaz' );
+ $formatter->addMessagesFromStatus( 'status', $status, [ 'warning', 'error' ], [ 'mainpage' ] );
+ $this->assertSame( [
+ 'errors' => [
+ [
+ 'code' => 'parentheses',
+ 'text' => '(parentheses: foobaz)',
+ 'module' => 'status',
+ ApiResult::META_CONTENT => 'text',
+ ],
+ ApiResult::META_INDEXED_TAG_NAME => 'error',
+ ],
+ 'warnings' => [
+ [
+ 'code' => 'parentheses',
+ 'text' => '(parentheses: foobar)',
+ 'module' => 'status',
+ ApiResult::META_CONTENT => 'text',
+ ],
+ ApiResult::META_INDEXED_TAG_NAME => 'warning',
+ ],
+ ApiResult::META_TYPE => 'assoc',
+ ], $result->getResultData() );
+ }
+
/**
* @dataProvider provideIsValidApiCode
* @covers ApiErrorFormatter::isValidApiCode
<?php
+use Wikimedia\TestingAccessWrapper;
+
/**
* @group Database
*/
* @param array $inputOpts Input options
* @param array $expectedOpts Expected options
*/
- public function testDateFilterOptionProcessing( $inputOpts, $expectedOpts ) {
+ public function testDateFilterOptionProcessing( array $inputOpts, array $expectedOpts ) {
$this->assertArraySubset( $expectedOpts, ContribsPager::processDateFilter( $inputOpts ) );
}
[ '2001:db8::/9999' ],
];
}
+
+ /**
+ * @covers \ContribsPager::getExtraSortFields
+ * @covers \ContribsPager::getIndexField
+ * @covers \ContribsPager::getQueryInfo
+ */
+ public function testUniqueSortOrderWithoutIpChanges() {
+ $pager = new ContribsPager( new RequestContext(), [
+ 'start' => '',
+ 'end' => '',
+ ] );
+
+ /** @var ContribsPager $pager */
+ $pager = TestingAccessWrapper::newFromObject( $pager );
+ $queryInfo = $pager->buildQueryInfo( '', 1, false );
+
+ $this->assertNotContains( 'ip_changes', $queryInfo[0] );
+ $this->assertArrayNotHasKey( 'ip_changes', $queryInfo[5] );
+ $this->assertContains( 'rev_timestamp', $queryInfo[1] );
+ $this->assertContains( 'rev_id', $queryInfo[1] );
+ $this->assertSame( [ 'rev_timestamp DESC', 'rev_id DESC' ], $queryInfo[4]['ORDER BY'] );
+ }
+
+ /**
+ * @covers \ContribsPager::getExtraSortFields
+ * @covers \ContribsPager::getIndexField
+ * @covers \ContribsPager::getQueryInfo
+ */
+ public function testUniqueSortOrderOnIpChanges() {
+ $pager = new ContribsPager( new RequestContext(), [
+ 'target' => '116.17.184.5/32',
+ 'start' => '',
+ 'end' => '',
+ ] );
+
+ /** @var ContribsPager $pager */
+ $pager = TestingAccessWrapper::newFromObject( $pager );
+ $queryInfo = $pager->buildQueryInfo( '', 1, false );
+
+ $this->assertContains( 'ip_changes', $queryInfo[0] );
+ $this->assertArrayHasKey( 'ip_changes', $queryInfo[5] );
+ $this->assertSame( 'ipc_rev_timestamp', $queryInfo[1]['rev_timestamp'] );
+ $this->assertSame( 'ipc_rev_id', $queryInfo[1]['rev_id'] );
+ $this->assertSame( [ 'rev_timestamp DESC', 'rev_id DESC' ], $queryInfo[4]['ORDER BY'] );
+ }
+
}