İçeriğe atla

Modül:Kanun

Hukukipedia sitesinden
13.46, 31 Ağustos 2026 tarihinde Admin (mesaj | katkılar) tarafından oluşturulmuş 473 numaralı sürüm (Kanun maddeleri için otomatik liste modülü oluştur)
(fark) ← Önceki sürüm | Güncel sürüm (fark) | Sonraki sürüm → (fark)

Bu modül için bir Modül:Kanun/belge belgelendirmesi oluşturabilirsiniz

local p = {}

function p.maddeListesi(frame)
    local sayi = tonumber(frame.args["sayı"] or frame.args["madde_sayısı"] or "0") or 0
    sayi = math.floor(sayi)

    if sayi < 1 then
        return '<div class="hk-law-empty">Madde sayısı belirtilmemiş.</div>'
    end

    -- Yanlışlıkla aşırı büyük listeler oluşturulmasını önler.
    if sayi > 2000 then
        sayi = 2000
    end

    local kok = frame.args["kök"]
    if not kok or kok == "" then
        kok = mw.title.getCurrentTitle().prefixedText
    end

    local nav = mw.html.create("nav")
        :addClass("hk-law-articles")
        :attr("aria-label", "Kanun maddeleri")

    nav:tag("div")
        :addClass("hk-law-articles-title")
        :wikitext("Kanun maddeleri")
        :done()

    local liste = nav:tag("ol")
    for i = 1, sayi do
        local madde = "Madde " .. i
        local hedef = mw.title.new(kok .. "/" .. madde)
        local li = liste:tag("li")
        li:tag("a")
            :attr("href", hedef:fullUrl())
            :wikitext(madde)
            :done()
        li:done()
    end
    liste:done()

    return tostring(nav)
end

return p