پودمان:Legals

از ویکی حقوق
پرش به ناوبری پرش به جستجو

توضیحات این پودمان می‌تواند در پودمان:Legals/توضیحات قرار گیرد.

local p = {}
local converter = require("Module:Numeral converter")

function createItem(colorModifier, iconModifier, catName, subText)
    local s1 = '<div class="content-improvement-item ' .. colorModifier .. ' ' .. iconModifier .. '">'
    local s2 = '[[:رده:' .. catName .. '|<span class="content-improvement-item__subtext-big">'
    local s3 = subText .. '</span>'
    local s4 = '</span></small></span>]]</div>'
    return s1 .. s2 .. s3 .. s4
end




local data = {
    createItem('-color-blue', '-icon-editUndo', 'اصول قانون اساسی', 'فانون اساسی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون مدنی', 'قانون مدنی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون مجازات اسلامی', 'قانون مجازات اسلامی (۱۳۹۲)'),
    createItem('-color-blue', '-icon-editUndo', 'قانون مجازات اسلامی (تعزیرات)', 'قانون مجازات اسلامی (تعزیرات)'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون تجارت', 'قانون تجارت'),
    createItem('-color-blue', '-icon-editUndo', 'مواد لایحه قانونی اصلاح قسمتی از قانون تجارت', 'لایحه اصلاحی قانون تجارت'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون آیین دادرسی مدنی', 'قانون آیین دادرسی مدنی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون آیین دادرسی کیفری', 'قانون آیین دادرسی کیفری'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون مالیات های مستقیم', 'قانون مالیات های مستقیم'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون صدور چک', 'قانون صدور چک'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون حمایت خانواده', 'قانون حمایت خانواده'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون حمایت از حقوق مولفان، مصنفان و هنرمندان', 'قانون حمایت از حقوق مولفان، مصنفان و هنرمندان'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون تشدید مجازات مرتکبین ارتشاء، اختلاس و کلاهبرداری', 'قانون تشدید مجازات مرتکبین ارتشاء، اختلاس و کلاهبرداری'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون روابط موجر و مستاجر 1376', 'قانون روابط موجر و مستاجر'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون اجرای احکام مدنی', 'قانون اجرای احکام مدنی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون تجارت الکترونیکی', 'قانون تجارت الکترونیکی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون کار', 'قانون کار'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون ثبت اسناد و املاک', 'قانون ثبت اسناد و املاک'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون حمایت از کودکان و نوجوانان بی سرپرست و بدسرپرست', 'قانون حمایت از کودکان و نوجوانان بی سرپرست و بدسرپرست'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون امور حسبی', 'قانون امور حسبی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون ثبت احوال', 'قانون ثبت احوال'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون ثبت اسناد و املاک', 'قانون ثبت اسناد و املاک'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون ثبت اختراعات، طرح های صنعتی و علائم تجاری', 'قانون ثبت اختراعات، طرح های صنعتی و علائم تجاری'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون تملک آپارتمان ها', 'قانون تملک آپارتمان ها'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون مجازات جرایم نیروهای مسلح', 'قانون مجازات جرایم نیروهای مسلح'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون داوری تجاری بین المللی', 'قانون داوری تجاری بین المللی'),
    createItem('-color-blue', '-icon-editUndo', 'مواد قانون نحوه اجرای محکومیت‌های مالی', 'قانون نحوه اجرای محکومیت‌های مالی'),
}

function p.main(frame)
    local result = ""
    local dataShuffled = FYShuffle(data)
    for i = 1, 27, 1 do
        result = result .. dataShuffled[i]
    end
    return result
end

-- Source: https://stackoverflow.com/questions/35572435/how-do-you-do-the-fisher-yates-shuffle-in-lua
function FYShuffle(tInput, indexList)
    local tReturn = {}
    for i = #tInput, 1, -1 do
        local j = indexList[#tInput - i + 1]
        tInput[i], tInput[j] = tInput[j], tInput[i]
        table.insert(tReturn, tInput[i])
    end
    return tReturn
end


return p