Extension:PageTriage/tr

PageTriage, yeni oluşturulan maddelerin önceliklendirilmesi için zengin özelliklere sahip bir arayüz sağlamayı amaçlayan bir uzantıdır. Yeni maddeleri incelemek, etiketlemek ve geliştirmek için ek işlevler eklerken "yeni sayfa devriyesi" temel işlevinin yerini alması amaçlanmıştır. Bir Special:NewPagesFeed sayfası ve "patrol" iznine sahip olanlar için yeni sayfalara bir sayfa iyileştirme araç çubuğu ekler. Wikimedia Vakfı'nın Özellik Mühendislik ekibi tarafından geliştirilmiştir. Ek ayrıntılar için Page Curation sayfasına bakın.

Önemli bir not, yapılandırma ve kodun bir kısmının İngilizce Vikipedi'nin iş akışlarına özgü olduğu ve şu anda kurulduğu için uzantının uluslararasılaşmasının neredeyse imkansız olduğudur. (T50552 sayfasına bakın.)

Kurulum
Uzantının gerçekten çalıştığını görmek için:


 * Anonim bir kullanıcı olarak yeni bir taslak sayfası ekleyin.
 * Special:NewPagesFeed sayfasını ziyaret edin

Yeni sayfa "", "" vb. olarak işaretlenmiş şekilde görünmelidir. Sayfa iyileştirme araç çubuğunu görmek için:


 * "sysop" iznine sahip bir kullanıcı olarak oturum açın veya "patrol" iznine sahip bir grup ekleyin ve bu gruba bir kullanıcı ekleyin ve bu kullanıcı olarak oturum açın.
 * Special:NewPagesFeed sayfasını ziyaret edin
 * Şimdi yeni sayfanın yanında bir "" düğmesi görmelisiniz.
 * Bunu tıklayın ve yeni sayfada sayfa iyileştirme araç çubuğunu görmelisiniz.

Uzantı yapılandırması
Uzantı, 'patrol' hakkına dayanmaktadır. Devriye gezintisini yapılandırma hakkında daha fazla bilgi için, bkz. sayfasına bakın.

Aşağıdaki yapılandırma değişkenleri LocalSettings.php dosyanızdan ayarlanabilir:

Yapılandırma değişkenlerinin tam listesi için extension.json sayfasına bakın.

Viki üzerinde yapılandırma
PageTriage'in çoğunu viki üzerinde  ve   sayfaları üzerinden yapılandırmak mümkündür, ancak yapılandırmanın yapısı gelecekte değişebilir (İngilizce Vikipedi'nin yanı sıra vikilere daha iyi uyum sağlamak için).

Aşağıdakilere bakarak yapılandırmanın nasıl çalıştığı hakkında genel bir fikir edinebilirsiniz:

Bu dosyaların her ikisi de aynı şekilde çalışır.

(etiket ekle) ve (silme için aday göster) düğmelerinin altındaki iyileştirme araç çubuğunda listelenen iyileştirme şablonlarını tanımlayan iki üst düzey jQuery değişkeni vardır. Bunlar:

"Ana" ve "Kullanıcı", iyileştirme yapılan sayfanın ad alanını ifade eder. Yukarıdaki üç kümedeki her bir alt öğe, araç çubuğunun sol tarafında gösterilen sekmeleri tanımlar ve aşağıdaki forma sahiptir:

Ardından, listelenen gerçek şablonlar yukarıdaki  değişkeni altında tanımlanır. Her silme şablonu aşağıdaki forma sahiptir:

Şu anda bazı etiketlerin bulunması gerekir:



Örnek
Dolayısıyla, yerleşik silme şablonlarından herhangi birini kullanmak istemiyorsanız (NewPagesFeed_Templates.xml üzerinden içe aktarılabilir) ardından,  sayfanızın altına aşağıdakileri ekleyerek hepsini tek bir tane ile değiştirebilirsiniz:

İstemci tarafı kancalar
PageTriage, diğer betiklerin ve araçların onunla bütünleşmesine izin vermek için özel bir eylem kuyruğu sistemi sağlar. Bu, vaatleri kullanması dışında  ile benzer. Bu,  modülü kullanılarak yapılır. Nasıl yapılacağına ilişkin belgeler için içindeki sistem nasıl çalıştığını yorumlara bakın.

actionQueue modülü, mw.hook  tetikledikten sonra kullanılabilir. PageTriage, eylem kuyruğu işleyicisine aşağıda belirtilen diğer verilere ek olarak aşağıdaki verileri içeren bir Nesne verecektir:


 * — İncelenen sayfanın kimliği.
 * — Ad alanı dahil sayfanın başlığı.
 * — PageTriage kullananların kullanıcı adı.
 * — Sayfayı oluşturan kişinin kullanıcı adı.
 * — Sayfanın şu anda incelenmiş olarak işaretlenip işaretlenmeyeceği.

Kullanılabilir eylemler

 * — İnceleyen, bir sayfayı silmek için etiketlediğinde tetiklenir. İşleyiciye verilen veriler ayrıca şunları içerir:
 * — Sayfaya eklenen tüm şablonların bir nesnesi. Anahtarlar şablon başlığıdır ve değerler, hızlı silme kodu gibi şeyler dahil olmak üzere bir meta veri nesnesidir.
 * — Bir sayfanın inceleme durumu değiştiğinde tetiklenir. Ayrıca şunları içerir:
 * — İnceleyicinin, sayfayı oluşturan kişi için eklediği kişisel mesaj. Bu boş olabilir.
 * — Sayfaya bakım etiketleri eklendiğinde tetiklenir. Ayrıca şunları içerir:
 * — Sayfaya eklenen tüm şablonların başlıkları dizisi.
 * — İnceleyicinin, sayfayı oluşturan kişi için eklediği kişisel mesaj. Bu boş olabilir.

Örnek
Eylem kuyruğunu kullanmak için, yukarıda belirtilen bir eylem başlatıldığında çalıştırılacak bir işlevi kaydedin. PageTriage, sayfayı yenilemek gibi başka bir şey yapmadan önce eşzamansız kodların tamamlanmasını bekler. Örneğin, bir sayfa incelendi olarak işaretlendikten sonra Sandbox ile düzenlemek için şunu kullanabilirsiniz:

API
PageTriage, kullanılabilecek aşağıdaki API uç noktalarını ekler:


 * - Mark a page as reviewed or unreviewed.
 * - Retrieves the list of pages in the queue, and each page's metadata, including their reviewed status. To retrieve one page, you must provide the page_id. To provide multiple pages, you must select one of showreviewed/showunreviewed, and one of showredirs/showdeleted/showothers, or no pages will be returned.
 * - Sıradaki sayfaların sayısı ve en iyi yorumcularla ilgili istatistikleri alır
 * - Mark an article as a potential copyright violation.
 * - Add clean-up tags or deletion templates to a page.

Special:Log
The following logs are created by the extension:

Status codes
There are status codes used to track whether a page is reviewed or not. These are the values given when you query,  , and  :


 * Unreviewed
 * 0 - unreviewed
 * Reviewed
 * 1 - reviewed (someone clicked the green check mark in the Page Curation toolbar)
 * 2 - patrolled (someone clicked the "Mark as patrolled" link at the bottom right corner of a page)
 * 3 - autopatrolled (someone with the  user right created the page, or moved the page from a non-tracked namespace to a tracked namespace)
 * no result - will occur if the page is not in a tracked namespace (mainspace, userspace, and draftspace), if the article was created before PageTriage was installed, or if the article was reviewed for longer than 30 days (these records are deleted by a cron job)

Via the API
To check the review status of pages using an API query, you can use, and check the   field. Follow the directions above to interpret the values of this field.

Sample JavaScript code:

Via SQL
To check the review status of pages using an SQL query, you need to query the  table and the   field. Follow the directions above to interpret the values of this field.

NOINDEX
NOINDEX refers to the HTML code, which can be inserted into a page to stop the page from appearing in search engine results. In default installations of MediaWiki, all pages are indexed unless they contain the wikicode. When  is set to true, PageTriage will take over deciding what pages are indexed.

In regards to the requirement "Page is in  table", there are several ways a for a page to get into this table:
 * If the wikitext has the  magic word, noindex the page if ALL of the following are true:
 * Page age is less than
 * Page is in  table
 * If the wikitext doesn't have the  magic word, noindex the page if ALL of the following are true:
 * is turned on
 * Page age is less than
 * Page is in  table
 * Page is marked as unpatrolled (ptrp_status = 0)
 * Not been deleted by a PageTriage cron job
 * One cron job deletes redirects older than 30 days old, regardless of patrol status
 * Another cron job deletes reviewed pages after 30 days of being reviewed
 * In a namespace that PageTriage is configured to patrol
 * Isn't an article that is so old it predates the installation of PageTriage

Ayrıca bakınız

 * commons:Category:PageTriage extension