Modül:İleti kutusu/belge
Bu Lua modülü yaklaşık 141.000 (ki bu ≈%4 oranına tekabül ediyor) sayfada kullanılmaktadır. Lütfen yapacağınız değişiklikleri büyük ölçekli aksamaları ve sunucuya gereksiz yük binmesini önlemek için öncelikle şablonun deneme tahtası ile test senaryosu alt sayfalarında ya da kendi kullanıcı sayfanızda test ediniz. Testten geçen değişiklikler daha sonra bu sayfaya tek bir düzenlemede eklenebilir. Eğer yapmayı planladığınız değişiklikler ile istediğiniz sonucu elde edemiyorsanız tartışma sayfasında görüş alışverişinde bulununuz. |
Bu modül sistem iletilerinde kullanılmaktadır. Yapılacak olan değişiklikler Vikipedi arayüzüne anında yansıyacaktır. Sunuculara ek yük binmesine ve olası hataların arayüze yansımasına engel olmak için yapılacak olan deneme-yanılma değişikliklerinin öncelikle deneme tahtası ile test senaryosu alt sayfalarında ya da kişisel kullanıcı alanında sınanması gerekmektedir. Sınamadan geçen değişiklikler eğer istenen sonucu veriyorsa bir kerede bu modüla eklenebilirler. Eğer konuyla ilgili yardıma ihtiyaç duyuyorsanız lütfen tartışma sayfasında görüş alışverişinde bulunun. |
Bu modül {{bikutu}}, {{çikutu}}, {{dikutu}}, {{kikutu}}, {{mikutu}}, {{sikutu}} ve {{tikutu}} şablonlarının yürütülmesinde kullanılmaktadır. Direkt olarak sayfalarda kullanılmak için tasarlanmayan bu üst modülün işlevlerinden yararlanmak için sıralanan ileti şablonları kullanılmalıdır.
Kullanımı
değiştirBu modülü başka bir Lua modülünde kullanmak için öncelikle söz konusu modüle çağrılması gerekir:
local messageBox = require('Modül:İleti kutusu')
İleti kutusu oluşturmak için main
işlevi kullanılmalıdır. Böylece kutu türü (dizgi olarak) ve ileti kutusunda kullanılacak olarak parametreler çağrılmış olur.
local box = messageBox.main( boxType, {
param1 = param1,
param2 = param2,
-- Daha fazla parametre...
})
Kullanılabilir yedi kutu türü bulunmaktadır:
Kutu kodu | Şablon | Kapsam |
---|---|---|
fmbox |
{{bikutu}} | Başlık ve altlık ileti kutuları için |
mbox |
{{çikutu}} | Birden fazla ad alanında kullanılacak ileti kutuları için |
imbox |
{{dikutu}} | Dosya ad alanında kullanılacak ileti kutuları için |
cmbox |
{{kikutu}} | Kategori ad alanında kullanılacak ileti kutuları için |
ambox |
{{mikutu}} | Madde ad alanında kullanılacak ileti kutuları için |
tmbox |
{{tikutu}} | Tartışma ad alanında kullanılacak ileti kutuları için |
ombox |
{{sikutu}} | Diğer ad alanlarında kullanılacak ileti kutuları için |
Kutulara tanımlı parametreler için şablon belgelemesine bakılabilir.
#invoke ile kullanım
değiştirAna (main
) işlevin yanı sıra her kutu türü için ayrı işlevler de tanımlı bulunmaktadır. Bu işlevlere {{#invoke:İleti kutusu|mbox|...}}
, {{#invoke:İleti kutusu|ambox|...}}
şeklinde kutu kodlarını tanımlayarak erişim sağlanabilir. Bu işlevler diğer modüllerden çağrıldıklarında çalışacaktır ancak yalnızca #invoke çağrısı ile iletilen değişkenleri işlemek için kullanılan kodlara erişebileceklerinden main
işlevini çağırmak verimli bir kullanım biçimi olacaktır.
Teknik detaylar
değiştirBu modül yukarıda listelenen her kutu türü için aynı temel kodu kullansa da yapılandırma verilerindeki farklılıklar kutuları birbirlerinden ayırmaktadır. Yapılandırma komutları ve ne anlama geldikleri aşağıda açıklanmıştır:
types
- ileti kutusunun tür parametresi tarafından kullanılan verileri içeren tablodur. Tablo anahtarları, tür parametresine iletilebilecek değerlerden müteşekkil olup bu tablo değerleri türler tarafından kullanılan sınıfları ve resimleri saklamaktadırlar.default
- tür parametresine hiçbir değer girilmezse veya geçersiz bir değer belirtilmişse kullanılacak olan varsayılan tür ayarı.showInvalidTypeError
- tür parametresine girilen değer geçersizse hata gösterilip gösterilmeyeceğine dair ayar.allowBlankParams
- boş değerler modüle iletilen parametrelerden çıkarılır. Ancak allowBlankParams tablosunda yer alan parametrelere girilen boşluk karakteri korunur.allowSmall
- ileti kutusunun "küçük=evet" komutu ile daha küçük boyutta bir sürümünün oluşturulmasına dair ayar.smallParam
- küçük parametresine girilecek özelleştirilebilir değer. Örneğin "left" şeklinde ayarlanmışsa "küçük=left" komutu ile küçük boyutta bir mesaj kutusu oluşturulabilir.smallClass
- küçük ileti kutusu için kullanılacak sınıf.substCheck
- yk ([y]erine [k]oyma) denetiminin yapılıp yapılmayacağına dair ayar.classes
- ileti kutusunda kullanılacak sınıf dizisi.imageEmptyCell
- resim belirtilmemişse boş<td>...</td>
hücresinin kullanılıp kullanılmayacağına dair ayar. Ekranın tamamına yayılmayan ileti kutularının boyut aralıklarını korumak için kullanılır.imageEmptyCellStyle
- boş resim hücrelerinin biçimlendirilip biçimlendirilmeyeceğine dair ayar.imageCheckBlank
- "resim=blank" komutu hiçbir resmin görüntülenmemesini sağlar.imageSmallSize
- küçük ileti kutularında kullanılan resimler otomatik olarak 30x30 piksel olarak ayarlanır. Bu ayar ile özel boyut belirlenebilir.imageCellDiv
- resmin<div>...</div>
içine alınıp izin verilen en büyük boyuta zorlanmasına dair ayar.useCollapsibleTextFields
- "sorun", "çözüm", "tartışma" vb. daraltılabilen metin alanlarının kullanılıp kullanılmayacağına dair ayar. Şu anda yalnızca {{mikutu}}'da kullanılmaktadır.imageRightNone
- ileti kutusunun sağ tarafındaki resmin gizlenmesine dair ayar. "sağresim=none" komutu sağ tarafta hiçbir resmin görüntülenmesine izin vermez.sectionDefault
- "altbaşlık" parametresi için varsayılan ad.useCollapsibleTextFields
komuuna bağlı olarak çalışır.allowMainspaceCategories
- ana ad alanında kategorilere izin verilmesine dair ayar.templateCategory
- şablonun kullanıldığı sayfalara yerleştirilecek ana kategorinin adı.templateCategoryRequireName
- şablona tanımlı kategoriyi görüntülemek içinad
parametresinin gerekli olup olmadığına dair ayar.templateErrorCategory
- şablon tarafından kullanılacak olan hata kategorisinin adı.templateErrorParamsToCheck
- kullanılıp kullanılmadığı denetlenecek olan parametre adları. Herhangi biri eksikse hata olarak algılanır vetemplateErrorCategory
uygulanır.