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ştir

Bu 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ştir

Ana (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ştir

Bu 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çin ad 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 ve templateErrorCategory uygulanır.