Extension:Gadgets/tr

Gadgets uzantısı, kullanıcıların diğer viki kullanıcılarının sağladığı JavaScript veya CSS tabanlı "küçük araçlar" seçmeleri için bir yol sağlar.

Küçük araçlar, MediaWiki ad alanındaki sayfalarda bulunan JavaScript ve/veya CSS üzerinden oluşur. Her küçük araç, MediaWiki:Gadgets-definition cinsinden bir satırla tanımlanır ve küçük araç için bir ad ve açıklama ile kullandığı JS ve CSS pasajlarının bir listesini sağlar (aşağıdaki "Kullanım" bölümüne bakın).

Küçük araçlar MediaWiki ad alanında (küçük araçları ve gerçek kod pasajlarına tanımlayan liste) bulunduğundan, yalnızca hizmetliler (1.32'den itibaren arabirim hizmetlileri) kodu düzenleyebilir. Olması gerektiği gibi: Yalnızca viki topluluğu tarafından özellikle güvenilen kullanıcılar, diğer kullanıcılar tarafından kullanılan JavaScript kodunu düzenleyebilmelidir, çünkü JavaScript hesapları ele geçirmek veya insanları gözetlemek için kolayca kullanılabilir.

Kullanım
üzerinde bağlı olarak küçük araçları tanımlamanın iki yolu vardır. ise (varsayılan değer), kullanılabilir küçük araçların listesi MediaWiki:Gadgets-definition olarak tanımlanır. Alternatif bir şekilde,,   olarak ayarlandığında Gadget definition ad alanındaki sayfalarda tanımlanan Küçük araç tanımları.

En az bir geçerli küçük araç ile oluşturulduktan sonra, burada tanımlanan küçük araçlar $2 "Küçük araçlar" bölümünde görünür, böylece kullanıcılar kullanmak istedikleri küçük araçları seçebilirler. MediaWiki:Gadgets-definition ile tanımlanan küçük araçlara genel bir bakış, kolay düzenleme için ilgili sistem mesajlarına bağlantılar ile birlikte Special:Gadgets üzerinde de gösterilir. Varsayılan olmayan gadget kullanımına ilişkin istatistikler Special:GadgetUsage altında görülebilir.

MediaWiki Küçük Araç Tanımını Kullanma
MediaWiki:Gadgets-definition içindeki bir veya daha fazla "*" (yıldız) karakteriyle başlayan her satır bir küçük aracı tanımlar; aşağıdaki forma sahip olmalıdır:

* gadget_name [seçenekler (çıkarılabilir)] | sayfa adları

İlk alan (örnekte " gadget_name ") küçük aracın dahili adıdır ve viki sözdizimini kullanarak küçük aracın kısa bir açıklamasını içeren bir sistem mesajına (örnekte MediaWiki:Gadget- gadget_name ) kaynağında bulunur.

Biçim seçenekleri:

[seçenek1 | seçenek2 | ... seçenekN]

boşluk bırakılabilir. Tek bir seçenek, tek bir seçenek adından oluşabilir (bu durumda bir işaret seçeneğidir) veya virgülle ayrılmış bir değerler listesi içerebilir:

option = value1, value2, value3

Örnekler: * mygadget|mygadget.js|mygadget.css veya * mygadget[ResourceLoader]|mygadget.js|mygadget.css veya * mygadget[rights=foo,bar]|mygadget.js|mygadget.css veya * mygadget[ ResourceLoader | rights=foo, bar ] | mygadget.js | mygadget.css

Gadget Definition Ad Alanını Kullanma
Gadget definition:mygadget sayfanın oluşturulması ve içine aşağıdaki JSON kodunun yerleştirilmesi  ile aynı etkiye sahiptir.

Yukarıdaki örnekte Gadget:Mygadget.js ve Gadget:mygadget.css kullanılmıştır. Küçük araç tanımı ad alanında  seçeneğinin her zaman true olduğunu unutmayın.

Seçenekler
Küçük araçlarınızı için ekstra bağımlılıklar belirleyebilirsiniz, örneğin:

* mygadget[ResourceLoader|dependencies=jquery.ui, jquery.effects.clip]|mygadget.js|mygadget.css

Here, we ask ResourceLoader to load modules  and   with mygadget. Note that gadgets can't depend on scripts from pages, static files or external URLs, only on modules already registered in ResourceLoader. To make a script from a page depend on another script from a page, each should be a gadget which registers itself as a module in ResourceLoader, then they can be made to have dependencies using the following syntax:

* childgadget[ResourceLoader|dependencies=ext.gadget.parentgadget]|childgadget.js To enable a gadget by default, use " ": * mygadget[ResourceLoader|default|dependencies=mediawiki.util]|mygadget.js|mygadget.css To make the gadget available only to users with appropriate permissions, set the  option, for example: * ImprovedDeletion [rights=delete] | ImprovedDeletion.js Makes the gadget available only to users who can actually delete pages.

Note that restrictions are based on permissions, not user groups like administrators or bureaucrats. İşte bazı gerçek örnekler:

* modrollback[ResourceLoader|rights=rollback]|modrollback.js * UTCLiveClock[ResourceLoader|rights=purge]|UTCLiveClock.js * Ajax_sysop[ResourceLoader|rights=patrol,rollback,markbotedits,delete]|Ajax_sysop.js

support
Each gadget's CSS is always loaded via the ResourceLoader.

However, older JavaScript is often incompatible with RL, so every gadget must be explicitly marked as compatible in order to have its scripts loaded by RL. Aksi takdirde, düz eski  kullanılacaktır.

Every gadget that at least partially uses ResourceLoader (that is, that has styles or compatible scripts) has its own RL module.

The modules are named.

Sayfalar
The remaining fields on the line refer to the JavaScript or CSS code that makes up the gadget, contained in system messages (MediaWiki:Gadget-mygadget.js and MediaWiki:Gadget-mygadget.css in the example); the names of those messages must end with ".js" or ".css", respectively.

A gadget can use any number of code messages, specifically, common code can be put into a code message used by several gadgets, in addition to their own specific code, e.g:

* frobinator|commonStuff.js|frob.js|frob.css|pretty.css * l33t|commonStuff.js|tools.js|l33t.js Please note that if your code contains strings that could be interpreted as wiki syntax (e.g. the signature code ), you may want to enclose your code into  and put these tags in JavaScript or CSS comments so they're not interpreted when actually used.

See the first and last lines of MediaWiki:Gadget-externalsearch-bar.js for an example.

Bölümler
The list of gadgets in MediaWiki:Gadgets-definition can be broken into sections using lines that start and end with two or more "=" (equals) characters, enclosing the name of a system message that defines the section's name, for example:

== interface-gadgets ==

Bu, MediaWiki:Gadget-section-interface-gadgets sayfasında tanımlanan başlık ile yeni bir bölüm tanımlar.

Yapılacaklar

 * Temel küçük araçlar yerine getirin