Extension:WikiLove/tr

WikiLove uzantısı, VikiSevgi'nin Vikipedi ve muhtemelen diğer vikilerde yayılmasını desteklemek için tasarlanmış bir uzantıdır. Özellikle, kullanıcı mesaj sayfalarına birkaç düğmeyi tıklamak kadar ödül, hediye ve davet eklemeyi kolaylaştırır.

Kurulum
Yerleşik ödülleri kullanmak istiyorsanız, InstantCommons etkinleştirilmiş olmalıdır. Bunu yapmak için bunu LocalSettings.php dosyasına ekleyin: Uzantı şimdi etkin olmalıdır. Arayüzü açmak için tercihlerinizdeki düzenleme sekmesine gidin.

Bu yapılandırma seçeneklerini LocalSettings.php dosyanızda da kullanabilirsiniz:
 * - kullanıcı tercihini kaldırarak uzantıyı tüm kullanıcılar için etkinleştirin (varsayılan: false)
 * Not: Ayrıca ayarı varsayılan olarak etkinleştirebilirsiniz, ancak yine de kullanıcılara aşağıdakileri kullanarak seçeneği kapatma (opt-out) seçeneği sunabilirsiniz:


 * - bunları destekleyen kaplamalar için bir simge kullanın (yani Vector) (varsayılan: true)
 * - WikiLove uygulamasının günlüğe kaydedilmesini etkinleştir (varsayılan: false); bu otomatik olarak istatistiksel sorgular için kullanabileceğiniz bir  veritabanı tablosu oluşturur

Kullanım
Hesabınızın WikiLove uygulamasını kullanmasını sağlamak için, tercihlerinizdeki düzenleme sekmesine gidin ve "Laburatuvar özellikleri" altında WikiLove'u açın (veya bazı sürümlerde "Genel seçenekler" altında).

WikiLove'u kullanmak için kullanıcının konuşma sayfasına gidin ve kalp simgesini tıklayın. Oradan talimatları izleyin.

Özel yapılandırma
WikiLove ürününü tek bir düzenleyici için (tüm viki yerine) nasıl özelleştireceğinizi öğrenmek için kullanım belgeleri konusuna bakın.

MediaWiki:WikiLove.js sayfasını düzenleyerek kendi vikiniz için seçenekleri özelleştirebilirsiniz. Burada yapılandırmayı yerleşik seçeneklerle yapıldığı gibi değiştirebilirsiniz:. Özel WikiLove yapılandırmalarına bazı örnekler:
 * Wikipedia
 * sq:MediaWiki:WikiLove.js (completely replaces all WikiLove configuration)
 * pt:MediaWiki:WikiLove.js (completely replaces all WikiLove configuration)
 * ml:MediaWiki:WikiLove.js
 * en:MediaWiki:WikiLove.js
 * Wikimedia Commons

öğesinin üst kısmındaki seçenekler, size kolaylık sağlamak için bazı varsayılan ayarlardır. Türlerden veya alt türlerden belirli özellikleri atlarsanız, bu varsayılanlar kullanılır. Sonra türlerin listesi var. Her tür  (gerekli) ve   (isteğe bağlı) özelliklerine sahip olabilir. Ayrıca, bir türün alt türlerin bir listesi olabilir veya olmayabilir, bu durumda ek özellikler türün kendisine atanır.

Türün alt türleri varsa, bunlar  nesne listesinde listelenir. İsteğe bağlı olarak, tür ayrıca açılır menünün üzerindeki etiketi belirten  özelliğine de sahip olabilir. Her alt tip aşağıdaki özelliklere sahip olabilir:


 * - açılır menüdeki ad
 * - Alt türün tanımı
 * - Eklenmekte olan iletinin başlığı, yani aradaki bölüm
 * - Mesaj kutusunun başlığı
 * - Mesaj kutusunun metni (ayrıntılar için aşağıya bakın)
 * - Mesaj kutusunun resmi


 * - Resim seçme galerisi (ayrıntılar için aşağıya bakın)
 * - Kullanıcının düzenleyebileceği alanlar dizisi; bu değerleri içerebilir:
 * - Resim boyutu (ör. )
 * - Arka plan rengi (geçerli CSS renkleri, ör.  veya  )
 * - Kenar rengi (aynı)

Alt türler kullanılmadığında, bu seçenekler (ilk ikisi hariç) türün kendisine eklenmelidir.

ve  alanlarında (ve daha önce bahsedilen   içinde), otomatik olarak değiştirilecek birkaç kod kullanabilirsiniz:
 * $1 - Kullanıcı mesaj
 * $2 - Başlık
 * $3 - Resim adı
 * $4 - Resim boyutu
 * $5 - Arka plan rengi
 * $6 - Kenar rengi
 * $7 - Alıcının kullanıcı adı

Kullanıcının resimleri seçmesini kolaylaştırmak için önceden tanımlanmış görüntülerle bir galeri oluşturabilirsiniz. Bunun için aşağıdaki özelliklere sahip bir  özelliği oluşturun:


 * - Bir dizi resim adı
 * - Galerideki resimlerin maksimum genişliği (piksel olarak); 3 resim için  önerilir
 * - Galerideki görüntülerin maksimum yüksekliği (piksel olarak)
 * - Gösterilecek rastgele resim sayısı (isteğe bağlı); atlanırsa tüm görüntüler gösterilir

Varsayılan ödüllerde olduğu gibi, Wikimedia Commons'taki resimleri kullanabilirsiniz. Daha önce de belirtildiği gibi, bunun için InstantCommons etkinleştirmeniz gerekir.

VikiSevgi türlerini kaldırma
Varsayılan VikiSevgi türlerinden bazılarını kaldırmak isterseniz, bunları $.wikiLoveOptions nesnesinden silebilirsiniz. Vikinizin MediaWiki:WikiLove.js sayfasında kullanabileceğiniz bazı örnekler:

Yeni VikiSevgi türleri ekleme
İşte yeni bir köpek yavrusu türü ekleme örneği:

Aralarından seçim yapabileceğiniz resim galerisine sahip yeni bir kirpi türü eklemeye bir örnek:

Mevcut gıda türü altında yeni bir falafel alt türü ekleme örneği:

Aksaklıklar ve sorunlar
Düzenlemeye çalıştığınız tartışma sayfası daha sonra Special:SpamRegex içine eklenmiş bir kelime içeriyorsa, bir yıldız veya başka bir ödül eklemek için arayüzü kullanma denemeleri başarısız olur. Bunun nedeni, sayfanın yasaklanmış bir kelime içerdiği için düzenlenememesidir. Kelimeyi sayfadan veya filtreden kaldırmak sorunu çözecektir.

API belgesi
VikiSevgi, kullanıcıların konuşma sayfalarına mesaj göndermek için özel bir wikilove API'si kullanır. API temel olarak mevcut bazı API'lerin etrafındaki ince bir pakettir. Kullanıcının mesaj sayfası bir vikimetin sayfasıysa, API'sini kullanır. Bir Flow sayfasıysa, API'sini kullanır. Ve bu bir LiquidThreads sayfasıysa, API'sini kullanır.

API'yi çağırmak için  parametresini kullanın.

Parametreler:


 * - VikiSevgi gönderilecek kullanıcı veya kullanıcı mesaj sayfasının başlığı (gerekli)
 * - Raw wikitext to add in the new section (required)
 * - Actual message the user has entered, for logging purposes (doesn't include the image and HTML formatting)
 * - Edit token. You can get one of these through prop=info (required)
 * - Subject header of the new page section (required)
 * - 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)
 * - Content of the optional e-mail message to send to the user

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

Design for version 1.0


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.

Rationale
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.

Use of Whimsical Style
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 style may be abandoned based on user feedback.

Note on Nomenclature
Some template types, such as welcome templates, are not technically "awards".

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.

Dialog Behavior
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 WikiLove system requires JavaScript.

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.

Email Notification
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.

Site Configuration
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.

Data Storage
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:


 * From User - The username of the person who is giving the award
 * To User - The username of the person receiving the award
 * Template - the name of the template awarded
 * Timestamp - when the award was given
 * Award Text - Optional; this would be the text of the award

Special:WikiLoveStatistics
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.

Future Thinking
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.