এক্সটেনশন:উইকিভালোবাসা

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:WikiLove and the translation is 55% complete.

Outdated translations are marked like this.
Other languages:
Afrikaans • ‎Deutsch • ‎English • ‎Nederlands • ‎dansk • ‎español • ‎français • ‎română • ‎русский • ‎עברית • ‎فارسی • ‎বাংলা • ‎සිංහල • ‎中文 • ‎日本語 • ‎한국어
মিডিয়াউইকি এক্সটেনশন ম্যানুয়াল
OOjs UI icon advanced.svg
WikiLove
মুক্তির অবস্থা: stable
WikiLove-screenshot-2014.png
Implementation User interface
বিবরণ ব্যবহারকারী আলাপ পাতায় ইতিবাচক প্রতিক্রিয়া যোগ করার সহয় প্রক্রিয়া।
লেখক(গণ) Ryan Kaldari, Jan Paul Posma, Brandon Harris (নকশা)
সর্বশেষ সংস্করণ 1.2
MediaWiki 1.27+ - WikiLove master should only be used with core's master; otherwise, use matching branches (e.g. WikiLove REL1_27 with core REL1_27, or matching WMF release branches).
Database changes হ্যাঁ
লাইসেন্স MIT License
ডাউনলোড
$wgWikiLoveGlobal
$wgWikiLoveTabIcon
$wgWikiLoveLogging
Translate the WikiLove extension if it is available at translatewiki.net
Check usage and version matrix.
Issues Open tasks · Report a bug

উইকিভালোবাসা উইকিপিডিয়ায় এবং সম্ভবত অন্যান্য উইকিসমূহে উইকিভালোবাসার বিস্তারে উৎসাহিত করার জন্য নকশাকৃত একটি এক্সটেনশন। বিশেষভাবে, এটি কয়েকটি বাটন ক্লিক করেই কোনো ব্যবহারকারী আলাপ পাতায় পুরষ্কার, উপহার, এবং আমন্ত্রণ যোগ করার সুবধিা প্রদান করে।

Specifically, it makes adding awards, gifts, and invitations to user talk pages as simple as clicking a few buttons.

ডাউনলোড

The extension can be retrieved directly from Git [?]:

  • Browse code
  • Some extensions have tags for stable releases.
  • Each branch is associated with a past MediaWiki release. There is also a "master" branch containing the latest alpha version (might require an alpha version of MediaWiki).

Extract the snapshot and place it in the extensions/WikiLove/ directory of your MediaWiki installation.

If you are familiar with git and have shell access to your server, you can also obtain the extension as follows:

cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/WikiLove.git

ইনস্টলেশন

  • ডাউনলোড করুন এবং আপনার extensions/ ফোল্ডারে WikiLove নামক ডিরেক্টরির মধ্যে ফাইল(গুলি) নিন।
  • আপনার LocalSettings.php-এর নীচের অংশে নিম্নলিখিত কোড যোগ করুন:
    wfLoadExtension( 'WikiLove' );
    
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • Yes করা হয়েছে – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

আপনি যদি বিল্ট-ইন পদক ব্যবহার করতে চান তাহলে, আপনার InstantCommons সক্রিয় থাকতে হবে। এই কাজের জন্য, LocalSettings.php পাতায় এটি যোগ করুন:

$wgUseInstantCommons = true;

এক্সটেনশনটি বর্তমানে সক্রিয় হয়ে গেছে। ইন্টারফেস চালু করতে আমার পছন্দ সম্পাদনা ট্যাবে যান।

এছাড়াও আপনি আপনার LocalSettings.php পাতায় এই কনফিগারেশন অপশন ব্যবহার করতে পারেন:

  • $wgWikiLoveGlobal - সকল ব্যবহারকারীদের জন্য এই এক্সটেনশন সক্রিয় করতে, ব্যবহারকারী পছন্দ বাতিল করুন (ডিফল্ট: false)
    • টীকা: আপনি ডিফল্ট দ্বারা সেটিং সক্রিয় করতে পারেন কিন্তু এখনও ব্যবহারকারীদের এটি ব্যবহার করে বন্ধ করার (অপ্ট-আউট) অপশন দেবে:
$wgDefaultUserOptions['wikilove-enabled'] = 1;
  • $wgWikiLoveTabIcon - স্কিনে সমর্থনযোগ্য একটি আইকন ব্যবহার করুন (অর্থাত ভেক্টর) (ডিফল্ট: true)
  • $wgWikiLoveLogging - উইকিলাভ প্রদান করতে লগিং সক্রিয় করুন (ডিপল্ট: false); এটি স্বয়ংক্রিয়ভাবে একটি ডাটাবেস টেবিল wikilove_log তৈরি করবে যা আপনি পরিসংখ্যানগত প্রশ্নের জন্য ব্যবহার করতে পারেন।
WikiLove 1.0 supported MW 1.17+

ব্যবহার

উইকিভালোবাসা ব্যবহার করতে আপনার অ্যাকাউন্ট সক্রিয় করার জন্য, আমার পছন্দ সম্পাদনা ট্যাবে যান এবং "ল্যাবস ফিচার"-এর অধীন থাকা (বা, কিছু সংস্করণে, "সাধারণ বিকল্পসমূহ"-এর অধীনে থাকে।) উইকিভালোবাসা সক্রিয় করুন।

উইকিভালোবাস ব্যবহার করার জন্য, কোনো ব্যবহারকারী আলাপ পাতায় যান এবং হার্ট আইকনে ক্লিক করুন। সেখান থেকে নির্দেশাবলী অনুসরণ করুন।

নিজস্ব কনফিগারেশন

একটি সম্পাদকের জন্য উইকিভালোবাসা সম্পাদনা শিখতে (বরং একটি সম্পূর্ণ উইকির চেয়ে), দেখুন ব্যবহারকারী নথি

আপনি MediaWiki:WikiLove.js পৃষ্ঠা সম্পাদনা করার মাধ্যমে আপনার নিজস্ব উইকির জন্য অপশন কাস্টমাইজ করতে পারেন। এখানে, আপনি যেমন বিল্ট-ইন অপশন: defaultOptions.js এর সঙ্গে সম্পন্নকৃত কনফিগারেশন একইভাবে পরিবর্তন করতে পারেন। এখানে কাস্টম উইকিভালোবাসা কনফিগারেশনের কিছু উদাহরণ রয়েছে: [$malayalam Malayalam Wikipedia], [$eng English Wikipedia], [$commons Wikimedia Commons], [$sturmkrieg English Sturmkrieg]।

আপনার সুবিধার জন্য defaultOptions.js এর উপরের কিছু অপশন ডিফল্ট সেটিংস রয়েছে। যদি আপনি ধরণ বা উপধরণসমূকে নির্দিষ্ট বৈশিষ্ট্য উপেক্ষা করতে চান, এই ডিফল্ট ব্যবহার করতে হবে (defaultText, defaultBackgroundColor, defaultBorderColor, defaultImageSize, defaultImage)। তারপর সেখানে ধরনের তালিকা আসবে। প্রতিটি ধরনের প্রোপার্টিজ name (আবশ্যক) এবং icon (ঐচ্ছিক) থাকতে হবে। উপরন্তু, একটি ধরণ একটি উপশাখার একটি তালিকা থাকতে অথবা নাও থাকতে পারে, সেক্ষেত্রেও অতিরিক্ত প্রোপার্টিজ ধরণ নির্ধারিত হবে।

If you omit certain properties from types or subtypes, these defaults will be used (defaultText, defaultBackgroundColor, defaultBorderColor, defaultImageSize, defaultImage). Then there is the list of types. Each type can have the properties name (required) and icon (optional). Furthermore, a type can have a list of subtypes, or not, in which case the additional properties will be assigned to the type itself.

যদি ধরনেরর একটি উপধরণ থাকে, সেগুলো একটি বস্তু তালিকায় subtypes তালিকাভুক্ত হবে। বৈকল্পিকভাবে, এছাড়াও ধরনের পোপার্টিজ select থাকতে পারে, যা ড্রপ ডাউন মেনুর উপরের স্তরে নির্দিষ্ট করে। প্রতিটি উপধরনের নিম্নলিখিত প্রোপার্টিজ থাকতে পারে:

Optionally, the type can also have the property select, which specifies the label above the dropdown menu. Each subtype can have the following properties:

  • option - ড্রপডাউন মেনুর নাম
  • descr - বর্ণনা যখন উপধরণ নির্বাচন করা হবে
  • header - বার্তার শিরোলেখ যে যোগ করা হচ্ছে, অর্থাত এই অংশের মধ্যে যা যোগ কার হবে == ... ==
  • title - বার্তা বক্স শিরোনাম
  • text - বার্তা বক্সের লেখা (বিস্তারিত জানার জন্য নিচে দেখুন)
  • image - বার্তা বক্সের চিত্র
  • gallery - একটি চিত্র নির্বাচনের জন্য গ্যালারি (বিস্তারিত জানার জন্য নিচে দেখুন)
  • fields - ক্ষেত্র এরে যে ব্যবহারকারী সম্পাদনা করতে পারেন; এই মান থাকতে পারে: header, title, image, message
  • imageSize - চিত্রের আকার (উদাহরণস্বরূপ 100px)
  • backgroundColor - পটভূমির রং (যে কোন সিএসএস বৈধ রঙ, উদাহরণস্বরূপ #fdffe7 বা yellow)
  • borderColor - সীমানার রঙ (অনুরূপ)

যখন উপধরণ ব্যবহৃত হবে না, এই অপশন (প্রথম দুইটি ব্যতীত) ধরণ যোগ করা প্রয়োজন।

In the text and email fields (as well as in defaultText, mentioned earlier), you can use a few codes that will be substituted automatically:

  • $1 - User message
  • $2 - Title
  • $3 - Image name
  • $4 - Image size
  • $5 - Background color
  • $6 - Border color
  • $7 - Username of the recipient

To make it easy for the user to select images, you can create a gallery with predefined images. For this, create a gallery property, which has the following properties:

  • imageList - চিত্র নামের একটি অ্যারে
  • width - গ্যালারিতে চিত্রের সর্বোচ্চ প্রস্থ (পিক্সেল অনুযায়ী); ৩ টি চিত্রের জন্য 145 সুপারিশকৃত
  • height - গ্যালারিতে চিত্রের সর্বোচ্চ উচ্চতা (পিক্সেল অনুযায়ী)
  • number - এলোপাতাড়ি চিত্র সংখ্যা দেখানোর জন্য (ঐচ্ছিক); যদি সকল চিত্র দেখানো উপেক্ষা করতে চান

আপনি উইকিমিডিয়া কমন্স থেকে চিত্র ব্যবহার করতে পারেন, নির্ধারিত পদক হিসাবে। পছন্দ পূর্বে উল্লেখ করতে, আপনাকে InstantCommons সক্ষম করতে হবে।

Be sure to start your MediaWiki:WikiLove.js page with //<nowiki> and end it with //</nowiki> so that any Wikitext code (such as signatures or {{subst:foo}}) doesn't get expanded within the JavaScript.

আইটেম সরানো হচ্ছে

If you just want to remove some of the default WikiLove types, you can delete them from the $.wikiLoveOptions object. Here are some examples that you could use in your wiki's MediaWiki:WikiLove.js page:

// Delete the Random Acts of Kindness Barnstar from the barnstars list
delete $.wikiLoveOptions.types.barnstar.subtypes.kindness;
// খাদ্য এবং পানীয়ের তালিকা হতে পনিরেরবার্গার বাদকরণ
delete $.wikiLoveOptions.types.food.subtypes.cheeseburger;
// বিড়ালের বাচ্চাদের ইন্টারফেস সম্পূর্ণরূপে বাদকরণ
delete $.wikiLoveOptions.types.kitten;

Adding new WikiLove types

Here's an example of adding a new puppy type:

$.wikiLoveOptions.types.puppy = {
	name: 'Puppy', // name of the type (appears in the types menu)
	fields: [ 'header', 'message' ], // fields to ask for in form
	header: 'You get a puppy!', // header that appears at the top of the talk page post (optional)
	text: '[[File:2009-08-16 Puppy at Duke East 1.jpg|left|150px]]\n$1\n\n~~'+'~~<br style="clear: both;"/>', // $1 is the custom message
	icon: 'http://www.mysite.com/images/wikilove-icon-puppy.png' // appears in the types menu
};

Here's an example of adding a new hedgehog type with a gallery of images to choose from:

$.wikiLoveOptions.types.hedgehog = {
	name: 'Hedgehogs', // name of the type (appears in the types menu)
	fields: [ 'header', 'message' ], // fields to ask for in form
	header: 'A hedgehog for you!', // header that appears at the top of the talk page post (optional)
	text: '[[$3|left|150px]]\n$1\n\n~~'+'~~\n<br style="clear: both"/>', // $3 is the image filename, $1 is the message
	gallery: {
		imageList: [ 'Hedgehog1.jpg', 'Orizo5.jpg', 'Erinaceus europaeus LC0119.jpg' ],
		width: 145, // maximum width of the images in the gallery
		height: 150, // maximum height of the images in the gallery
		number: 3 // number of random images to show (optional)
	},
	icon: 'http://www.mysite.com/images/wikilove-icon-hedgehog.png' // appears in the types menu

Here's an example of adding a new falafel subtype under the existing food type:

$.wikiLoveOptions.types.food.subtypes.falafel = {
    fields: [ 'header', 'message' ], // fields to ask for in form
    option: 'Falafel', // option listed in the select list
    descr: 'Falafel is a popular Middle Eastern street food made from ground chickpeas or fava beans and topped with salads, vegetables, and sauces. It is typically served in a pocket of pita bread.',
    header: 'Some falafel for you!', // header that appears at the top of the talk page post (optional)
    image: 'Falafel award.png', // image for the item
    imageSize: '120px' // size to display image (optional)
};


গ্লিচ এবং সমস্যাসমূহ

If the talk page you are attempting to edit contains a word that has been subsequently added to Special:SpamRegex, attempts to use the interface to add a barnstar or other award will fail. This is because the page cannot be edited, as it contains a forbidden word. Removing the word from the page or from the filter will fix the problem.

এপিআই নথি

WikiLove uses a special wikilove API to post messages to users' talk pages. The API is basically just a thin wrapper around some existing APIs. If the user's talk page is a Wikitext page, it uses the edit API. If it's a Flow page, it uses the flow API. And if it's a LiquidThreads page, it uses the threadaction API.

এপিআই কল অনুক্রমে করার জন্য, এই পরামিতি ব্যবহার করুন action=wikilove

পরামিতিসমূহ:

  • title - ব্যবহারকারী বা ব্যবহারকারীর আলাপ পাতার শিরোনাম যাকে উইকিভালোবাস পাঠানো হবে (আবশ্যক)
  • text - নতুন অধ্যায় র উইকিটেক্সট যোগ করতে (আবশ্যক)
  • message - ব্যবহারকারীর যোগ করা প্রকৃত বার্তা, লগিং উদ্দেশ্যের জন্য (doesn't include the image and HTML formatting)
  • token - সম্পাদনা টোকেন। You can get one of these through prop=info (আবশ্যক)
  • subject - নতুন পৃষ্ঠা পরিচ্ছেদের বিষয় শিরোনাম (আবশ্যক)
  • type - Type of WikiLove (for statistics); this corresponds with a type selected in the left menu, and optionally a subtype after that (e.g. "barnstar-normal" or "kitten") (optional)
  • email - ব্যবহারকারী পাঠাতে ঐচ্ছিক ইমেল বার্তার বিষয়বস্তু

উদাহরণ:

 api.php?action=wikilove&title=User:Dummy&text=Love&subject=Hi&token=%2B\

সংস্করণ ১.০-এর জন্য নকশা

উইকিভালোবাসা ডায়ালগ প্রথমে লোড হবে
The WikiLove dialog upon selecting an award category
The WikiLove dialog upon filling out details for an award
প্রাকদর্শন মোডে উইকিভালোবাসা ডায়ালগ
পদক নির্বাচন প্যানের উপর কার্সার রেখে দেখুন

This document describes the design and behavior of the WikiLove system of positive feedback for Wikipedia. This tool is designed to promote the spread of WikiLove within Wikipedia. Specifically, it makes adding awards and gifts to user talk pages as simple as clicking a few buttons.

মূলনীতি

Wikipedia, as a community, has several mechanisms for indicating displeasure or to provide negative feedback to its users. Certain gadgets, such as Twinkle, are heavily engineered towards warning, blocking, and reverting.

Since Wikipedia is in need of positive reinforcement, especially for new users, a system designed specifically and only towards positive feedback is desired.

কিম্ভূতকিমাকার শৈলী ব্যবহার

The system has a heavy style of "whimsy" to its design. This is intentional and is intended to align closer to the expectations of users of modern websites. Further, the entire principle of "awards" is in and of itself whimsical (e.g., cookies and kittens).

এই শৈলী ব্যবহারকারী প্রতিক্রিয়ার উপর ভিত্তি করে পরিত্যক্ত হতে পারে।

বৈজ্ঞানিক পরিভাষা দ্রষ্টব্য

কিছু টেমপ্লেটের ধরণ, যেমন স্বাগতম টেমপ্লেট, কারিগরিভাবে "পদক" নয়।

This document uses the term award interchangeably with template. Since the system is user-focused, and not intended directly for power-users, user-facing nomenclature has been used.

প্রক্রিয়া

কথোপকথন আচরণ

The WikiLove dialog is modal. Initiating it (from anywhere) will cause it to appear over the text of the page. It can be dismissed with a simple click.

উইকিভালোবাস পদ্ধতির জাভাস্ক্রিপ্ট প্রয়োজন।

The user will initially be presented with a short set of easy-to-understand instructions and a list of available award categories.

Upon selecting an award type, the user is presented with a section in which they can add details to the award (such as a short message).

Note that some award categories (e.g., "cookie") will not have a secondary award creation step and will go directly to "Preview".

The user then clicks the "preview" button, which will load a preview of the award so that they may see how it will look on the user's talk page.

Once the user is satisfied, they may click the "Send WikiLove" button. At this time, AJAX calls to the server API will be fired, adding the template to the user's talk page.

ইমেইল নোটিফিকেশন

Since most new users are unlikely to be aware that they even have talk pages, they may not be aware that they have received the WikiLove in question.

Accordingly, the server will email the recipient (if they have provided an email address) informing them of the WikiLove as well as short instructions on how to access their talk page.

সাইট কনফিগারেশন

Initially, the awards that can be given are to be defined in the gadget itself. If this system is elevated to an extension, then the names of the awards and the templates should be defined in the site's LocalSettings.php.

Alternatively, such information can be stored in the database. An administration console would be required to add or subtract available awards and award categories.

ডেটা সংরক্ষণাগার

For statistics gathering purposes, every time an award is given, data is tracked and stored in the database. A simple table, written to via the API, is all that need be required:

  • ব্যবহারকারীর কাছ থেকে - The username of the person who is giving the award
  • ব্যবহারকারীর প্রতি - The username of the person receiving the award
  • টেমপ্লেট - the name of the template awarded
  • টাইমস্ট্যাম্প - when the award was given
  • পদক বার্তা - Optional; this would be the text of the award

বিশেষ:উইকিভালোবাস পরিসংখ্যান

In the future, it should be possible to create a page, Special:WikiLoveStatistics, that could be used to see how often the system is used as well as providing insight into who gives the most love, what awards are most popular, and who receives the most awards.

This will help to provide a global overview of community health. The more awards given, the healthier the community.

ভবিষ্যৎ ভাবনাসমূহ

Phase two of this project could result in "Send WikiLove" links being dynamically added to signatures on talk pages. This would allow for WikiLove to be sent in a much easier manner, directly from other talk pages.

আরো দেখুন