مدیاویکی:Gadget-twinkleblock-2020.js: تفاوت میان نسخه‌ها

ترجمه و کمی بومی‌سازی پیام‌ها
جز (۱ نسخه واردشده)
fa.wikipedia.org>Jeeputer
(ترجمه و کمی بومی‌سازی پیام‌ها)
خط ۱۱۳: خط ۱۱۳:


Twinkle.block.isRegistered = !!userinfo.userid;
Twinkle.block.isRegistered = !!userinfo.userid;
relevantUserName = Twinkle.block.isRegistered ? 'User:' + mw.config.get('wgRelevantUserName') : mw.config.get('wgRelevantUserName');
relevantUserName = Twinkle.block.isRegistered ? 'کاربر:' + mw.config.get('wgRelevantUserName') : mw.config.get('wgRelevantUserName');


if (blockinfo) {
if (blockinfo) {
خط ۱۵۹: خط ۱۵۹:


if (blockBox) {
if (blockBox) {
field_preset = new Morebits.quickForm.element({ type: 'field', label: 'Preset', name: 'field_preset' });
field_preset = new Morebits.quickForm.element({ type: 'field', label: 'پیش‌تنظیمات', name: 'field_preset' });
field_preset.append({
field_preset.append({
type: 'select',
type: 'select',
خط ۳۳۴: خط ۳۳۴:
type: 'select',
type: 'select',
name: 'template',
name: 'template',
label: 'Choose talk page template:',
label: 'انتخاب الگوی صفحهٔ بحث:',
event: Twinkle.block.callback.change_template,
event: Twinkle.block.callback.change_template,
list: Twinkle.block.callback.filtered_block_groups(blockGroup, true),
list: Twinkle.block.callback.filtered_block_groups(blockGroup, true),
خط ۳۴۳: خط ۳۴۳:
name: 'article',
name: 'article',
display: 'none',
display: 'none',
label: 'Linked page',
label: 'صفحه برای پیونددهی',
value: '',
value: '',
tooltip: 'A page can be linked within the notice, perhaps if it was the primary target of disruption. Leave empty for no page to be linked.'
tooltip: 'صفحه‌ای که احتمالاً هدف اخلالگری بوده‌است را می توان در درون اعلان پیوند داد. برای این که به هیچ صفحه‌ای پیوند داده نشود، این جعبه را خالی بگذارید.'
});
});


خط ۳۵۳: خط ۳۵۳:
name: 'area',
name: 'area',
display: 'none',
display: 'none',
label: 'Area blocked from',
label: 'محدودهٔ قطع دسترسی موردی',
value: '',
value: '',
tooltip: 'توضیح اختیاری صفحات یا مکانهای نام کاربر از ویرایش مسدود شده است.' // localized
tooltip: 'توضیح اختیاری صفحات یا مکانهای نام کاربر از ویرایش مسدود شده است.' // localized
خط ۳۶۳: خط ۳۶۳:
name: 'template_expiry',
name: 'template_expiry',
display: 'none',
display: 'none',
label: 'Period of blocking: ',
label: 'مدت زمان قطع دسترسی: ',
value: '',
value: '',
tooltip: 'مدت زمان مسدود شدن برای نمونه ، ۲۴ ساعت ، ۲ هفته ، نامشخص و غیره ...' // localized
tooltip: 'مدت زمان مسدود شدن برای نمونه ، ۲۴ ساعت ، ۲ هفته ، نامشخص و غیره ...' // localized
خط ۳۷۱: خط ۳۷۱:
type: 'input',
type: 'input',
name: 'block_reason',
name: 'block_reason',
label: '"You have been blocked for ..." ',
label: '«دسترسی شما قطع شده‌است زیرا ...» ',
display: 'none',
display: 'none',
tooltip: 'یک دلیل اختیاری برای جایگزینی دلیل عمومی پیش فرض. فقط برای الگوهای بستن عمومی موجود است.', // localized
tooltip: 'یک دلیل اختیاری برای جایگزینی دلیل عمومی پیش فرض. فقط برای الگوهای بستن عمومی موجود است.', // localized
خط ۳۹۷: خط ۳۹۷:
name: 'notalk',
name: 'notalk',
checked: Twinkle.block.field_template_options.notalk,
checked: Twinkle.block.field_template_options.notalk,
tooltip: 'Make the block template state that the user\'s talk page access has been removed'
tooltip: 'الگوی بحث را طوری تنظیم کن که به قطع دسترسی کاربر از ویرایش در بحث خودش نیز اشاره کند'
},
},
{
{
خط ۴۰۳: خط ۴۰۳:
name: 'noemail_template',
name: 'noemail_template',
checked: Twinkle.block.field_template_options.noemail_template,
checked: Twinkle.block.field_template_options.noemail_template,
tooltip: 'If the area is not provided, make the block template state that the user\'s email access has been removed'
tooltip: 'اگر محدودهٔ قطع دسترسی موردی ارائه نشده‌است، الگوی قطع دسترسی را طوری تنظیم کن که به قطع دسترسی کاربر به ارسال ایمیل نیز اشاره کند'
},
},
{
{
خط ۴۰۹: خط ۴۰۹:
name: 'nocreate_template',
name: 'nocreate_template',
checked: Twinkle.block.field_template_options.nocreate_template,
checked: Twinkle.block.field_template_options.nocreate_template,
tooltip: 'If the area is not provided, make the block template state that the user\'s ability to create accounts has been removed'
tooltip: 'اگر محدودهٔ قطع دسترسی موردی ارائه نشده‌است، الگوی قطع دسترسی را طوری تنظیم کن که غیرفعال شدن قابلیت ایجاد حساب برای کاربر نیز اشاره کند'
}
}
]
]
خط ۴۴۱: خط ۴۴۱:
language: {
language: {
errorLoading: function() {
errorLoading: function() {
return 'Incomplete or invalid search term';
return 'عبارت جستجوی ناقص یا نامعتبر';
}
}
},
},
خط ۴۹۲: خط ۴۹۲:
},
},
templateResult: Morebits.select2.highlightSearchMatches,
templateResult: Morebits.select2.highlightSearchMatches,
placeholder: 'Select namespaces to block user from'
placeholder: 'انتخاب فضای نام برای قطع دسترسی موردی کاربر'
});
});


خط ۵۲۳: خط ۵۲۳:


if (Twinkle.block.hasBlockLog) {
if (Twinkle.block.hasBlockLog) {
var $blockloglink = $('<a target="_blank" href="' + mw.util.getUrl('Special:Log', {action: 'view', page: mw.config.get('wgRelevantUserName'), type: 'block'}) + '">block log</a>)');
var $blockloglink = $('<a target="_blank" href="' + mw.util.getUrl('ویژه:سیاهه‌ها', {action: 'view', page: mw.config.get('wgRelevantUserName'), type: 'block'}) + '">سیاهه بسته‌شدن</a>)');


Morebits.status.init($('div[name="hasblocklog"] span').last()[0]);
Morebits.status.init($('div[name="hasblocklog"] span').last()[0]);
Morebits.status.warn('This user has been blocked in the past', $blockloglink[0]);
Morebits.status.warn('این کاربر در گذشته قطع دسترسی شده‌است', $blockloglink[0]);
}
}


خط ۵۳۳: خط ۵۳۳:
// list=blocks without bkprops (as we do in fetchUerInfo)
// list=blocks without bkprops (as we do in fetchUerInfo)
// returns partial: '' if the user is partially blocked
// returns partial: '' if the user is partially blocked
var statusStr = relevantUserName + ' is ' + (Twinkle.block.currentBlockInfo.partial === '' ? 'partially blocked' : 'blocked sitewide');
var statusStr = relevantUserName + ' به‌صورت ' + (Twinkle.block.currentBlockInfo.partial === '' ? 'موردی' : 'کلی') + 'قطع دسترسی شد';
if (Twinkle.block.currentBlockInfo.expiry === 'infinity') {
if (Twinkle.block.currentBlockInfo.expiry === 'infinity') {
statusStr += ' (indef)';
statusStr += ' (بی‌پایان)';
} else if (new Morebits.date(Twinkle.block.currentBlockInfo.expiry).isValid()) {
} else if (new Morebits.date(Twinkle.block.currentBlockInfo.expiry).isValid()) {
statusStr += ' (expires ' + new Morebits.date(Twinkle.block.currentBlockInfo.expiry).calendar('utc') + ')';
statusStr += ' (منقضی در ' + new Morebits.date(Twinkle.block.currentBlockInfo.expiry).calendar('utc') + ')';
}
}
var infoStr = 'برای تغییر مسدود شدن سوال کنید'; // localized
var infoStr = 'برای تغییر قطع دسترسی سوال کنید'; // localized
if (Twinkle.block.currentBlockInfo.partial === undefined && partialBox) {
if (Twinkle.block.currentBlockInfo.partial === undefined && partialBox) {
infoStr += ', converting to a partial block';
infoStr += '، تبدیل به قطع دسترسی موردی';
} else if (Twinkle.block.currentBlockInfo.partial === '' && !partialBox) {
} else if (Twinkle.block.currentBlockInfo.partial === '' && !partialBox) {
infoStr += ', converting to a sitewide block';
infoStr += '، تبدیل به قطع دسترسی کلی';
}
}
Morebits.status.warn(statusStr, infoStr);
Morebits.status.warn(statusStr, infoStr);
خط ۶۰۲: خط ۶۰۲:
nocreate: true,
nocreate: true,
nonstandard: true,
nonstandard: true,
reason: '{{anonblock}} <!-- Likely a school based on behavioral evidence -->',
reason: '{{anonblock}} <!-- بر پایه شواهد، احتمالاً مبتنی بر مدرسه است -->',
templateName: 'anonblock',
templateName: 'anonblock',
sig: '~~~~'
sig: '~~~~'
خط ۷۲۹: خط ۷۲۹:
pageParam: true,
pageParam: true,
reason: 'نقض سیایت شرح حال [[ویکی‌پدیا:زندگی‌نامه زندگان|زندگی‌نامه زندگان]] ', // localized
reason: 'نقض سیایت شرح حال [[ویکی‌پدیا:زندگی‌نامه زندگان|زندگی‌نامه زندگان]] ', // localized
summary: 'You have been blocked from editing for violations of Wikipedia\'s [[ویکی‌پدیا:زندگی‌نامه زندگان]]'
summary: 'دسترسی ویرایش شما به‌دلیل نقض [[ویکی‌پدیا:زندگی‌نامه زندگان|سیاست زندگی‌نامهٔ زندگان]] قطع شده‌است'
},
},
'uw-block': {
'uw-block': {
خط ۷۶۲: خط ۷۶۲:
pageParam: true,
pageParam: true,
reason: 'اجرای اسکریپت [[ویکی‌پدیا:ربات|ربات]] بدون [[ویکی‌پدیا:سیاست ربات‌رانی/درخواست مجوز|مجوز]]', // localized
reason: 'اجرای اسکریپت [[ویکی‌پدیا:ربات|ربات]] بدون [[ویکی‌پدیا:سیاست ربات‌رانی/درخواست مجوز|مجوز]]', // localized
summary: 'You have been blocked from editing because it appears you are running a [[ویکی‌پدیا:ربات]] without [[ویکی‌پدیا:سیاست ربات‌رانی/درخواست مجوز]]' // localized
summary: 'دسترسی ویرایشی شما قطع شده‌است. چرا که به‌نظر می‌رسد در حال راندن یک  [[ویکی‌پدیا:ربات|ربات]] بدون کسب [[ویکی‌پدیا:سیاست ربات‌رانی/درخواست مجوز|مجوز]] هستید' // localized
},
},
'uw-botublock': {
'uw-botublock': {
expiry: 'infinity',
expiry: 'infinity',
forRegisteredOnly: true,
forRegisteredOnly: true,
reason: '{{Uw-botublock}} <!-- Username implies a bot, soft block -->',
reason: '{{Uw-botublock}} <!-- نام کاربری نمایندهٔ ربات است، قطع دسترسی نرم -->',
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما نشان می دهد که این یک حساب [[ویکی‌پدیا:ربات|ربات]] است ، که در حال حاضر تأیید نشده است.' // localized
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما نشان می دهد که این یک حساب [[ویکی‌پدیا:ربات|ربات]] است ، که در حال حاضر تأیید نشده است.' // localized
},
},
خط ۷۷۳: خط ۷۷۳:
expiry: 'infinity',
expiry: 'infinity',
forRegisteredOnly: true,
forRegisteredOnly: true,
reason: '{{Uw-causeblock}} <!-- Username represents a non-profit, soft block -->',
reason: '{{Uw-causeblock}} <!-- نام کاربری نمایندهٔ یک سازمان ناسودبر است، قطع دسترسی نرم -->',
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما این تصور را ایجاد می‌کند که این حساب نماینده یک گروه، سازمان یا وب سایت است' // localized
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما این تصور را ایجاد می‌کند که این حساب نماینده یک گروه، سازمان یا وب سایت است' // localized
},
},
خط ۷۸۹: خط ۷۸۹:
nocreate: true,
nocreate: true,
pageParam: true,
pageParam: true,
reason: '[[WP:Copyright violations|Copyright violations]]',
reason: '[[وپ:حق تکثیر|نقض حق تکثیر]]',
summary: 'برای ادامه [[WP:COPYVIO|نقض حق نسخه برداری]] از ویرایش منع شده‌اید' // localized
summary: 'دسترسی ویرایشی شما به دلیل نقض مداوم [[وپ:حت|حق تکثیر]] قطع شده‌است' // localized
},
},
'uw-dblock': {
'uw-dblock': {
خط ۸۰۸: خط ۸۰۸:
autoblock: true,
autoblock: true,
nocreate: true,
nocreate: true,
reason: 'Deliberately triggering the [[ویکی‌پدیا:پالایه ویرایش]]', // localized
reason: 'راه‌اندازی عمدی [[ویکی‌پدیا:پالایه ویرایش|پالایهٔ ویرایش]]', // localized
summary: 'شما به دلیل ویرایش‌های مخرب که مرتباً باعث [[ویکی‌پدیا:پالایه ویرایش|پالایه ویرایش]] شده‌اند، از ویرایش منع شده‌اید.' // localized
summary: 'شما به دلیل ویرایش‌های مخرب که مرتباً باعث [[ویکی‌پدیا:پالایه ویرایش|پالایه ویرایش]] شده‌اند، از ویرایش منع شده‌اید.' // localized
},
},
خط ۸۲۳: خط ۸۲۳:
nocreate: true,
nocreate: true,
pageParam: true,
pageParam: true,
reason: '[[ویکی‌پدیا:حمله شخصی ممنوع|حمله شخصی ممنوع]] یا [[ویکی‌پدیا:آزار و اذیت|آزار و اذیت]]', // localized
reason: '[[ویکی‌پدیا:حمله شخصی ممنوع|حملهٔ شخصی]] یا [[ویکی‌پدیا:آزار و اذیت|آزار و اذیت]]', // localized
summary: 'شما به دلیل [[ویکی‌پدیا:آزار و اذیت|آزار و اذیت]] سایر کاربران از ویرایش منع شده‌اید.'
summary: 'شما به دلیل [[ویکی‌پدیا:آزار و اذیت|آزار و اذیت]] سایر کاربران از ویرایش منع شده‌اید.'
},
},
خط ۸۳۶: خط ۸۳۶:
expiry: 'infinity',
expiry: 'infinity',
nocreate: true,
nocreate: true,
reason: 'Making [[ویکی‌پدیا:تهدید قانونی ممنوع|تهدید قانونی ممنوع]]', // localized
reason: '[[ویکی‌پدیا:تهدید قانونی ممنوع|تهدید قانونی]]', // localized
summary: 'شما به دلیل [[ویکی‌پدیا:تهدید قانونی ممنوع|تهدید قانونی ممنوع]] از ویرایش منع شده‌اید.' // localized
summary: 'شما به دلیل [[ویکی‌پدیا:تهدید قانونی ممنوع|تهدید قانونی ممنوع]] از ویرایش منع شده‌اید.' // localized
},
},
خط ۸۴۵: خط ۸۴۵:
reason: 'روشن است که [[ویکی‌پدیا:ما برای ساختن دانشنامه اینجا هستیم|برای ساختن دانشنامه اینجا نیستید.]]', // localized
reason: 'روشن است که [[ویکی‌پدیا:ما برای ساختن دانشنامه اینجا هستیم|برای ساختن دانشنامه اینجا نیستید.]]', // localized
forRegisteredOnly: true,
forRegisteredOnly: true,
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا به نظر می‌رسد که شما در اینجا برای [[ویکی‌پدیا:ما برای ساختن دانشنامه اینجا هستیم|ساختن دانشنامه]] نیستید' // localized
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا به نظر می‌رسد که شما برای [[ویکی‌پدیا:ما برای ساختن دانشنامه اینجا هستیم|ساختن دانشنامه]] اینجا نیستید' // localized
},
},
'uw-npblock': {
'uw-npblock': {
خط ۸۶۵: خط ۸۶۵:
nocreate: true,
nocreate: true,
reason: 'استفاده از ویکی‌پدیا به عنوان [[ویکی‌پدیا:هرزنامه|هرزنامه]]', // localized
reason: 'استفاده از ویکی‌پدیا به عنوان [[ویکی‌پدیا:هرزنامه|هرزنامه]]', // localized
summary: 'به دلیل استفاده از ویکی‌پدیا [[ویکی‌پدیا:هرزنامه|هرزنامه]] از ویرایش منع شده‌اید.' // localized
summary: 'به دلیل استفاده از ویکی‌پدیا برای انتشار [[ویکی‌پدیا:هرزنامه|هرزنامه]] از ویرایش منع شده‌اید.' // localized
},
},
'uw-soablock': {
'uw-soablock': {
خط ۸۹۳: خط ۸۹۳:
expiry: 'infinity',
expiry: 'infinity',
forRegisteredOnly: true,
forRegisteredOnly: true,
reason: '{{Uw-softerblock}} <!-- Promotional username, soft block -->',
reason: '{{Uw-softerblock}} <!-- نام کاربری تبلیغاتی، قطع دسترسی نرم -->',
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما این تصور را ایجاد می‌کند که این حساب نماینده یک گروه، سازمان یا وب سایت است' // localized
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما این تصور را ایجاد می‌کند که این حساب نماینده یک گروه، سازمان یا وب سایت است' // localized
},
},
خط ۹۰۱: خط ۹۰۱:
forRegisteredOnly: true,
forRegisteredOnly: true,
nocreate: true,
nocreate: true,
reason: '{{Uw-spamublock}} <!-- Promotional username, promotional edits -->',
reason: '{{Uw-spamublock}} <!-- نام کاربری تبلیغاتی، ویرایش‌های تبلیغاتی -->',
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا حساب شما فقط برای [[ویکی‌پدیا:هرزنامه|هرزنامه یا تبلیغات]] استفاده می‌شود و [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما نقض خط مشی نام کاربری است.' // localized
summary: 'شما به‌طور نامحدود از ویرایش منع شده‌اید زیرا حساب شما فقط برای [[ویکی‌پدیا:هرزنامه|هرزنامه یا تبلیغات]] استفاده می‌شود و [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما نقض خط مشی نام کاربری است.' // localized
},
},
خط ۹۲۲: خط ۹۲۲:
expiry: 'infinity',
expiry: 'infinity',
forRegisteredOnly: true,
forRegisteredOnly: true,
reason: '{{Uw-ublock}} <!-- Username violation, soft block -->',
reason: '{{Uw-ublock}} <!-- نقض سیاست نام کاربر، قطع دسترسی نرم -->',
reasonParam: true,
reasonParam: true,
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] ناقض قوانین است.' // localized
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] ناقض قوانین است.' // localized
خط ۹۴۵: خط ۹۴۵:
forRegisteredOnly: true,
forRegisteredOnly: true,
nocreate: true,
nocreate: true,
reason: '{{Uw-uhblock}} <!-- Username violation, hard block -->',
reason: '{{Uw-uhblock}} <!-- نقض سیاست نام کاربر، قطع دسترسی سخت -->',
reasonParam: true,
reasonParam: true,
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما نقض آشکار خط مشی نام کاربری است.' // localized
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:سیاست نام کاربری|نام کاربری]] شما نقض آشکار خط مشی نام کاربری است.' // localized
خط ۹۷۸: خط ۹۷۸:
nocreate: true,
nocreate: true,
pageParam: true,
pageParam: true,
reason: '{{Uw-vaublock}} <!-- Username violation, vandalism-only account -->',
reason: '{{Uw-vaublock}} <!-- نقض سیاست نام کاربر، حساب ایجادشده تنها برای خرابکاری -->',
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:حساب ساخته‌شده برای خرابکاری|حساب شما]] برای خرابکاری ایجاد شده‌است و ناقض [[ویکی‌پدیا:سیاست نام کاربری|سیاست نام کاربری]] است.' // localized
summary: 'شما به طور نامحدود از ویرایش منع شده‌اید زیرا [[ویکی‌پدیا:حساب ساخته‌شده برای خرابکاری|حساب شما]] برای خرابکاری ایجاد شده‌است و ناقض [[ویکی‌پدیا:سیاست نام کاربری|سیاست نام کاربری]] است.' // localized
},
},
خط ۱٬۰۱۴: خط ۱٬۰۱۴:
pageParam: false,
pageParam: false,
reasonParam: true,
reasonParam: true,
reason: 'Misusing [[ویکی‌پدیا:حساب زاپاس|حساب زاپاس]]', // localized
reason: 'سوءاستفاده از [[ویکی‌پدیا:حساب زاپاس|حساب زاپاس]]', // localized
summary: 'به دلیل سوء استفاده از [[ویکی‌پدیا:حساب زاپاس|چندین حساب]] از [[ویکی‌پدیا:قطع دسترسی موردی|ایجاد حساب کاربری]] منع شده‌اید.' // localized
summary: 'به دلیل سوء استفاده از [[ویکی‌پدیا:حساب زاپاس|چندین حساب]] از [[ویکی‌پدیا:قطع دسترسی موردی|ایجاد حساب کاربری]] منع شده‌اید.' // localized
},
},
خط ۱٬۰۹۷: خط ۱٬۰۹۷:
Twinkle.block.blockGroups = [
Twinkle.block.blockGroups = [
{
{
label: 'Common block reasons',
label: 'دلایل معمول برای بستن',
list: [
list: [
{ label: 'anonblock', value: 'anonblock' },
{ label: 'ناشناس', value: 'anonblock' },
{ label: 'anonblock - likely a school', value: 'anonblock - school' },
{ label: 'ناشناس - احتمالاً مدرسه', value: 'anonblock - school' },
{ label: 'school block', value: 'school block' },
{ label: 'بستن مدرسه', value: 'school block' },
{ label: 'Generic block (custom reason)', value: 'uw-block' }, // ends up being default for registered users
{ label: 'بستن عمومی (دلیل سفارشی)', value: 'uw-block' }, // ends up being default for registered users
{ label: 'Generic block (custom reason) - IP', value: 'uw-ablock', selected: true }, // set only when blocking IP
{ label: 'بستن عمومی (دلیل سفارشی) - آی‌پی', value: 'uw-ablock', selected: true }, // set only when blocking IP
{ label: 'Generic block (custom reason) - indefinite', value: 'uw-blockindef' },
{ label: 'بستن عمومی (دلیل سفارشی) - بی‌پایان', value: 'uw-blockindef' },
{ label: 'Disruptive editing', value: 'uw-disruptblock' },
{ label: 'ویرایش اخلالگرانه', value: 'uw-disruptblock' },
{ label: 'Inappropriate use of user talk page while blocked', value: 'uw-talkrevoked' },
{ label: 'استفادهٔ نادرست از صفحهٔ بحث کاربری در زمان بسته‌بودن', value: 'uw-talkrevoked' },
{ label: 'Not here to build an encyclopedia', value: 'uw-nothereblock' },
{ label: 'برای کمک به دانشنامه اینجا نیست', value: 'uw-nothereblock' },
{ label: 'Unsourced content', value: 'uw-ucblock' },
{ label: 'محتوای بدون منبع', value: 'uw-ucblock' },
{ label: 'Vandalism', value: 'uw-vblock' },
{ label: 'خرابکاری', value: 'uw-vblock' },
{ label: 'Vandalism-only account', value: 'uw-voablock' }
{ label: 'حساب ایجادشده تنها برای خرابکاری', value: 'uw-voablock' }
]
]
},
},
{
{
label: 'Extended reasons',
label: 'دلایل گسترده',
list: [
list: [
{ label: 'Advertising', value: 'uw-adblock' },
{ label: 'تبلیغات', value: 'uw-adblock' },
{ label: 'Arbitration enforcement', value: 'uw-aeblock' },
{ label: 'حکم هیئت', value: 'uw-aeblock' },
{ label: 'Block evasion - IP', value: 'uw-ipevadeblock' },
{ label: 'دور زدن قطع دسترسی - آی‌پی', value: 'uw-ipevadeblock' },
{ label: 'BLP violations', value: 'uw-bioblock' },
{ label: 'نقض سیاست زندگی‌نامه زندگان', value: 'uw-bioblock' },
{ label: 'Copyright violations', value: 'uw-copyrightblock' },
{ label: 'نقض حق تکثیر', value: 'uw-copyrightblock' },
{ label: 'Creating nonsense pages', value: 'uw-npblock' },
{ label: 'ایجاد صفحه‌های نامفهوم', value: 'uw-npblock' },
{ label: 'Edit filter-related', value: 'uw-efblock' },
{ label: 'مرتبط با پالایهٔ ویرایش', value: 'uw-efblock' },
{ label: 'Edit warring', value: 'uw-ewblock' },
{ label: 'جنگ ویرایشی', value: 'uw-ewblock' },
{ label: 'Generic block with talk page access revoked', value: 'uw-blocknotalk' },
{ label: 'بستن عمومی و گرفتن دسترسی صفحهٔ بحث', value: 'uw-blocknotalk' },
{ label: 'Harassment', value: 'uw-hblock' },
{ label: 'آزار و اذیت', value: 'uw-hblock' },
{ label: 'Legal threats', value: 'uw-lblock' },
{ label: 'تهدید قانونی', value: 'uw-lblock' },
{ label: 'Personal attacks or harassment', value: 'uw-pablock' },
{ label: 'حملهٔ شخصی یا آزار و اذیت', value: 'uw-pablock' },
{ label: 'Possible compromised account', value: 'uw-compblock' },
{ label: 'حساب به خطر افتاده', value: 'uw-compblock' },
{ label: 'Removal of content', value: 'uw-dblock' },
{ label: 'حذف محتوا، خالی‌کردن', value: 'uw-dblock' },
{ label: 'Sock puppetry (master)', value: 'uw-sockblock' },
{ label: 'زاپاس‌بازی (اصلی)', value: 'uw-sockblock' },
{ label: 'Sock puppetry (puppet)', value: 'uw-spoablock' },
{ label: 'زاپاس‌بازی (زاپاس)', value: 'uw-spoablock' },
{ label: 'Social networking', value: 'uw-socialmediablock' },
{ label: 'استفاده از ویکی‌پدیا مانند شبکه‌های اجتماعی', value: 'uw-socialmediablock' },
{ label: 'Spam', value: 'uw-sblock' },
{ label: 'هرزنگاری', value: 'uw-sblock' },
{ label: 'Spam/advertising-only account', value: 'uw-soablock' },
{ label: 'حساب ایجادشده برای هرزنگاری/تبلیغات', value: 'uw-soablock' },
{ label: 'Unapproved bot', value: 'uw-botblock' },
{ label: 'ربات بدون مجوز', value: 'uw-botblock' },
{ label: 'Undisclosed paid editing', value: 'uw-upeblock' },
{ label: 'ویرایش دستمزدی فاش‌نشده', value: 'uw-upeblock' },
{ label: 'Violating the three-revert rule', value: 'uw-3block' }
{ label: 'نقض قاعدهٔ سه‌برگردان', value: 'uw-3block' }
]
]
},
},
{
{
label: 'Username violations',
label: 'نقض سیاست نام کاربری',
list: [
list: [
{ label: 'Bot username', value: 'uw-botublock' },
{ label: 'نام کاربری ربات', value: 'uw-botublock' },
{ label: 'Promotional username, hard block', value: 'uw-spamublock' },
{ label: 'نام کاربری تبلیغاتی، بستن نرم', value: 'uw-spamublock' },
{ label: 'Promotional username, soft block', value: 'uw-softerblock' },
{ label: 'نام کاربری تبلیغاتی، بستن نرم', value: 'uw-softerblock' },
{ label: 'Similar username soft block', value: 'uw-ublock-double' },
{ label: 'نام کاربری مشابه، بستن نرم', value: 'uw-ublock-double' },
{ label: 'Username violation, soft block', value: 'uw-ublock' },
{ label: 'نقض سیاست نام کاربری، بستن نرم', value: 'uw-ublock' },
{ label: 'Username violation, hard block', value: 'uw-uhblock' },
{ label: 'نقض سیاست نام کاربری، بستن سخت', value: 'uw-uhblock' },
{ label: 'Username impersonation hard block', value: 'uw-uhblock-double' },
{ label: 'جعل هویت نام کاربری، بستن سخت', value: 'uw-uhblock-double' },
{ label: 'Username represents a well-known person, soft block', value: 'uw-ublock-wellknown' },
{ label: 'نام کاربری نمایندهٔ شخص شناخته‌شده است، بستن نرم', value: 'uw-ublock-wellknown' },
{ label: 'Username represents a non-profit, soft block', value: 'uw-causeblock' },
{ label: 'نام کاربری نمایندهٔ سازمان ناسودبر است، بستن نرم', value: 'uw-causeblock' },
{ label: 'Username violation, vandalism-only account', value: 'uw-vaublock' }
{ label: 'نقض سیاست نام کاربری، حساب ایجادشده برای خرابکاری', value: 'uw-vaublock' }
]
]
},
},
{
{
label: 'Templated reasons',
label: 'دلایل آماده',
list: [
list: [
{ label: 'blocked proxy', value: 'blocked proxy' },
{ label: 'پروکسی باز', value: 'blocked proxy' },
{ label: 'CheckUser block', value: 'CheckUser block', disabled: !Morebits.userIsInGroup('checkuser') },
{ label: 'بستن بازرسی کاربر', value: 'CheckUser block', disabled: !Morebits.userIsInGroup('checkuser') },
{ label: 'checkuserblock-account', value: 'checkuserblock-account', disabled: !Morebits.userIsInGroup('checkuser') },
{ label: 'بستن بازرسی کاربر-حساب', value: 'checkuserblock-account', disabled: !Morebits.userIsInGroup('checkuser') },
{ label: 'checkuserblock-wide', value: 'checkuserblock-wide', disabled: !Morebits.userIsInGroup('checkuser') },
{ label: 'بستن بازرسی کاربر-کلی', value: 'checkuserblock-wide', disabled: !Morebits.userIsInGroup('checkuser') },
{ label: 'colocationwebhost', value: 'colocationwebhost' },
{ label: 'میزبانی‌وب‌سرور', value: 'colocationwebhost' },
{ label: 'oversightblock', value: 'oversightblock', disabled: !Morebits.userIsInGroup('oversight') },
{ label: 'بستن پنهان‌گر', value: 'oversightblock', disabled: !Morebits.userIsInGroup('oversight') },
// { label: 'rangeblock', value: 'rangeblock' }, // placeholder for when we add support for rangeblocks
// { label: 'rangeblock', value: 'rangeblock' }, // placeholder for when we add support for rangeblocks
{ label: 'spamblacklistblock', value: 'spamblacklistblock' },
{ label: 'بستن نام کاربری تبلیغاتی', value: 'spamblacklistblock' },
{ label: 'tor', value: 'tor' },
{ label: 'تور', value: 'tor' },
{ label: 'webhostblock', value: 'webhostblock' },
{ label: 'بستن میزبانی وب', value: 'webhostblock' },
{ label: 'zombie proxy', value: 'zombie proxy' }
{ label: 'زامبی پراکسی', value: 'zombie proxy' }
]
]
}
}
خط ۱٬۱۷۵: خط ۱٬۱۷۵:
Twinkle.block.blockGroupsPartial = [
Twinkle.block.blockGroupsPartial = [
{
{
label: 'Common partial block reasons',
label: 'دلایل معمول برای قطع دسترسی موردی',
list: [
list: [
{ label: 'Generic partial block (custom reason)', value: 'uw-pblock', selected: true },
{ label: 'بستن موردی عمومی (دلیل سفارشی)', value: 'uw-pblock', selected: true },
{ label: 'Generic partial block (custom reason) - indefinite', value: 'uw-pblockindef' },
{ label: 'بستن موردی عمومی (دلیل سفارشی) - بی‌پایان', value: 'uw-pblockindef' },
{ label: 'Edit warring', value: 'uw-ewpblock' }
{ label: 'جنگ ویرایشی', value: 'uw-ewpblock' }
]
]
},
},
{
{
label: 'Extended partial block reasons',
label: 'دلایل قابل تعمیم قطع دسترسی موردی',
list: [
list: [
{ label: 'Arbitration enforcement', value: 'uw-aepblock' },
{ label: 'حکم هیئت نظارت', value: 'uw-aepblock' },
{ label: 'Email harassment', value: 'uw-epblock' },
{ label: 'آزار و اذیت با ایمیل', value: 'uw-epblock' },
{ label: 'Misusing multiple accounts', value: 'uw-acpblock' },
{ label: 'سوءاستفاده از چند حساب', value: 'uw-acpblock' },
{ label: 'Misusing multiple accounts - indefinite', value: 'uw-acpblockindef' }
{ label: 'سوءاستفاده از چند حساب - بی‌پایان', value: 'uw-acpblockindef' }
]
]
}
}
خط ۱٬۲۵۱: خط ۱٬۲۵۱:
Twinkle.block.callback.toggle_see_alsos = function twinkleblockCallbackToggleSeeAlso() {
Twinkle.block.callback.toggle_see_alsos = function twinkleblockCallbackToggleSeeAlso() {
var reason = this.form.reason.value.replace(
var reason = this.form.reason.value.replace(
new RegExp('( <!--|;) ' + 'see also ' + Twinkle.block.seeAlsos.join(' and ') + '( -->)?'), ''
new RegExp('( <!--|;) ' + 'همچنین ببینید: ' + Twinkle.block.seeAlsos.join(' و ') + '( -->)?'), ''
);
);


خط ۱٬۲۶۶: خط ۱٬۲۶۶:
this.form.reason.value = reason;
this.form.reason.value = reason;
} else if (reason.indexOf('{{') !== -1) {
} else if (reason.indexOf('{{') !== -1) {
this.form.reason.value = reason + ' <!-- see also ' + seeAlsoMessage + ' -->';
this.form.reason.value = reason + ' <!-- همچنین ببینید ' + seeAlsoMessage + ' -->';
} else {
} else {
this.form.reason.value = reason + '; see also ' + seeAlsoMessage;
this.form.reason.value = reason + '؛ همچنین ببینید ' + seeAlsoMessage;
}
}
};
};
خط ۱٬۲۹۷: خط ۱٬۲۹۷:


// disable autoblock if blocking a bot
// disable autoblock if blocking a bot
if (Twinkle.block.isRegistered && relevantUserName.search(/bot\b/i) > 0) {
if (Twinkle.block.isRegistered && relevantUserName.search(/(?:بات\C|bot)\b/i) > 0) { // این عبارت باقاعده باید بهبود داده‌شود. الان اگر بعد از بات چیزی باشد، شناسایی نمی‌کند
data.autoblock = false;
data.autoblock = false;
}
}
خط ۱٬۳۱۲: خط ۱٬۳۱۲:


if (data.prependReason && data.reason) {
if (data.prependReason && data.reason) {
form.reason.value = data.reason + '; ' + form.reason.value;
form.reason.value = data.reason + '؛ ' + form.reason.value;
} else {
} else {
form.reason.value = data.reason || '';
form.reason.value = data.reason || '';
خط ۱٬۳۶۶: خط ۱٬۳۶۶:
expiry: form.template_expiry ? form.template_expiry.value : form.expiry.value,
expiry: form.template_expiry ? form.template_expiry.value : form.expiry.value,
hardblock: Twinkle.block.isRegistered ? form.autoblock.checked : form.hardblock.checked,
hardblock: Twinkle.block.isRegistered ? form.autoblock.checked : form.hardblock.checked,
indefinite: (/indef|infinit|never|\*|max/).test(form.template_expiry ? form.template_expiry.value : form.expiry.value),
indefinite: (/indef|infinit|never|بی‌پایان|نامعین|\*|max/).test(form.template_expiry ? form.template_expiry.value : form.expiry.value),
reason: form.block_reason.value,
reason: form.block_reason.value,
template: form.template.value,
template: form.template.value,
خط ۱٬۳۷۹: خط ۱٬۳۷۹:
var templateText = Twinkle.block.callback.getBlockNoticeWikitext(params);
var templateText = Twinkle.block.callback.getBlockNoticeWikitext(params);


form.previewer.beginRender(templateText, 'User_talk:' + mw.config.get('wgRelevantUserName')); // Force wikitext/correct username
form.previewer.beginRender(templateText, 'بحث_کاربر:' + mw.config.get('wgRelevantUserName')); // Force wikitext/correct username
};
};


خط ۱٬۴۱۶: خط ۱٬۴۱۶:
if (blockoptions.partial) {
if (blockoptions.partial) {
if (blockoptions.disabletalk && blockoptions.namespacerestrictions.indexOf('3') === -1) {
if (blockoptions.disabletalk && blockoptions.namespacerestrictions.indexOf('3') === -1) {
return alert('Partial blocks cannot prevent talk page access unless also restricting them from editing User talk space!');
return alert('در قطع دسترسی‌های موردی نمی‌توان دسترسی صفحهٔ بحث راه گرفت؛ مگر آن که دسترسی به ویرایش در فضای نام بحث کاربر نیز گرفته شود!');
}
}
if (!blockoptions.namespacerestrictions && !blockoptions.pagerestrictions) {
if (!blockoptions.namespacerestrictions && !blockoptions.pagerestrictions) {
if (!blockoptions.noemail && !blockoptions.nocreate) { // Blank entries technically allowed [[phab:T208645]]
if (!blockoptions.noemail && !blockoptions.nocreate) { // Blank entries technically allowed [[phab:T208645]]
return alert('No pages or namespaces were selected, nor were email or account creation restrictions applied; please select at least one option to apply a partial block!');
return alert('هیچ صفحه یا فضای نامی انتخاب نشده‌است و محدودیتی برای ایمیل یا ایجاد حساب نیز اعمال نشده‌است؛ لطفاً برای قطع دسترسی موردی، دست کم یک گزینه را انتخاب کنید!');
} else if (!confirm('You are about to block with no restrictions on page or namespace editing, are you sure you want to proceed?')) {
} else if (!confirm('شما در حال قطع دسترسی کاربر بدون اعمال محدودیت ویرایشی در صفحه یا فضای نام خاصی هستید؛ آیا می‌خواهید ادامه دهید؟')) {
return;
return;
}
}
خط ۱٬۴۲۷: خط ۱٬۴۲۷:
}
}
if (!blockoptions.expiry) {
if (!blockoptions.expiry) {
return alert('Please provide an expiry!');
return alert('لطفاً زمان منقضی‌شدن را مشخص کنید!');
}
}
if (!blockoptions.reason) {
if (!blockoptions.reason) {
return alert('Please provide a reason for the block!');
return alert('لطفاً دلیلی برای قطع دسترسی ارائه دهید!');
}
}


Morebits.simpleWindow.setButtonsEnabled(false);
Morebits.simpleWindow.setButtonsEnabled(false);
Morebits.status.init(e.target);
Morebits.status.init(e.target);
var statusElement = new Morebits.status('Executing block');
var statusElement = new Morebits.status('اجرای قطع دسترسی');
blockoptions.action = 'block';
blockoptions.action = 'block';
blockoptions.user = mw.config.get('wgRelevantUserName');
blockoptions.user = mw.config.get('wgRelevantUserName');
خط ۱٬۴۷۵: خط ۱٬۴۷۵:
letype: 'block',
letype: 'block',
lelimit: 1,
lelimit: 1,
letitle: 'User:' + blockoptions.user,
letitle: 'کاربر:' + blockoptions.user,
bkusers: blockoptions.user
bkusers: blockoptions.user
}).then(function(data) {
}).then(function(data) {
خط ۱٬۴۸۳: خط ۱٬۴۸۳:


if (logid !== Twinkle.block.blockLogId || !!block !== !!Twinkle.block.currentBlockInfo) {
if (logid !== Twinkle.block.blockLogId || !!block !== !!Twinkle.block.currentBlockInfo) {
var message = 'The block status of ' + mw.config.get('wgRelevantUserName') + ' has changed. ';
var message = 'وضعیت قطع دسترسی ' + mw.config.get('wgRelevantUserName') + ' تغییر یافت. ';
if (block) {
if (block) {
message += 'New status: ';
message += 'وضعیت تازه: ';
} else {
} else {
message += 'Last entry: ';
message += 'آخرین مدخل: ';
}
}


خط ۱٬۴۹۳: خط ۱٬۴۹۳:
if (logevents.params.duration) {
if (logevents.params.duration) {
if (logevents.params.duration === 'infinity') {
if (logevents.params.duration === 'infinity') {
logExpiry = 'indefinitely';
logExpiry = 'نامعین';
} else {
} else {
var expiryDate = new Morebits.date(logevents.params.expiry);
var expiryDate = new Morebits.date(logevents.params.expiry);
logExpiry += (expiryDate.isBefore(new Date()) ? ', expired ' : ' until ') + expiryDate.calendar();
logExpiry += (expiryDate.isBefore(new Date()) ? '، منقضی‌شده ' : ' تا ') + expiryDate.calendar();
}
}
} else { // no duration, action=unblock, just show timestamp
} else { // no duration, action=unblock, just show timestamp
logExpiry = ' ' + new Morebits.date(logevents.timestamp).calendar();
logExpiry = ' ' + new Morebits.date(logevents.timestamp).calendar();
}
}
message += Morebits.string.toUpperCaseFirstChar(logevents.action) + 'ed by ' + logevents.user + logExpiry +
' for "' + logevents.comment + '". Do you want to override with your settings?';
message += 'به‌دلیل «' + logevents.comment + '» برای مدتی ' + logExpiry + ' توسط ' + logevents.user + ' ' + Morebits.string.toUpperCaseFirstChar(logevents.action) === 'block' ? 'بسته' : 'block' + ' شده‌است. آیا می‌خواهید تنظیمات خود را جایگزین کنید؟';
/* message += Morebits.string.toUpperCaseFirstChar(logevents.action) + 'ed by ' + logevents.user + logExpiry +
' for "' + logevents.comment + '". Do you want to override with your settings?'; // localized above */


if (!confirm(message)) {
if (!confirm(message)) {
خط ۱٬۵۲۶: خط ۱٬۵۲۹:
Twinkle.block.callback.issue_template(templateoptions);
Twinkle.block.callback.issue_template(templateoptions);
} else {
} else {
return alert('Please give Twinkle something to do!');
return alert('لطفاً کاری برای توینکل تعیین کنید تا انجامش دهد!');
}
}
};
};


Twinkle.block.callback.issue_template = function twinkleblockCallbackIssueTemplate(formData) {
Twinkle.block.callback.issue_template = function twinkleblockCallbackIssueTemplate(formData) {
var userTalkPage = 'User_talk:' + mw.config.get('wgRelevantUserName');
var userTalkPage = 'بحث_کاربر:' + mw.config.get('wgRelevantUserName');


var params = $.extend(formData, {
var params = $.extend(formData, {
خط ۱٬۵۴۴: خط ۱٬۵۴۷:
Morebits.wiki.actionCompleted.notice = 'عمل انجام شد، بارگیری صفحهٔ بحث کاربر تا چند ثانیهٔ دیگر'; // localized
Morebits.wiki.actionCompleted.notice = 'عمل انجام شد، بارگیری صفحهٔ بحث کاربر تا چند ثانیهٔ دیگر'; // localized


var wikipedia_page = new Morebits.wiki.page(userTalkPage, 'User talk page modification');
var wikipedia_page = new Morebits.wiki.page(userTalkPage, 'ویرایش صفحهٔ بحث کاربر');
wikipedia_page.setCallbackParameters(params);
wikipedia_page.setCallbackParameters(params);
wikipedia_page.setFollowRedirect(true);
wikipedia_page.setFollowRedirect(true);
خط ۱٬۵۸۳: خط ۱٬۵۸۶:
var makeSentence = function (array) {
var makeSentence = function (array) {
if (array.length < 3) {
if (array.length < 3) {
return array.join(' and ');
return array.join(' و ');
}
}
var last = array.pop();
var last = array.pop();
return array.join(', ') + ', and ' + last;
return array.join('، ') + ' و ' + last;


};
};
text += '|area=' + (params.indefinite ? 'certain ' : 'from certain ');
text += '|area=' + (params.indefinite ? 'اختصاصاً ' : 'اختصاصاً از ');
if (params.pagerestrictions.length) {
if (params.pagerestrictions.length) {
text += 'pages (' + makeSentence(params.pagerestrictions.map(function(p) {
text += 'صفحه‌های (' + makeSentence(params.pagerestrictions.map(function(p) {
return '[[:' + p + ']]';
return '[[:' + p + ']]';
}));
}));
text += params.namespacerestrictions.length ? ') and certain ' : ')';
text += params.namespacerestrictions.length ? ') و به‌طور ویژه از ' : ')';
}
}
if (params.namespacerestrictions.length) {
if (params.namespacerestrictions.length) {
خط ۱٬۶۰۱: خط ۱٬۶۰۴:
return menuFormattedNamespaces[id];
return menuFormattedNamespaces[id];
});
});
text += '[[ویکی‌پدیا:فضای نام]] (' + makeSentence(namespaceNames) + ')'; // localized
text += '[[ویکی‌پدیا:فضای نام|فضا(های) نام]] (' + makeSentence(namespaceNames) + ')'; // localized
}
}
} else if (params.area) {
} else if (params.area) {
کاربر ناشناس