مسابقه دانش‌دخت
اسلامیکال از تاریخ ۱۵ دی تا ۲۰ بهمن، میزبان یک همایه با موضوع زنان است. شما می‌توانید در مسابقه مقاله‌نویسی دانش‌دخت، شرکت کنید و با نگارش مقاله، از جوایز آن بهره‌مند باشید. اگر به موضوعات مربوط با زنان علاقه‌مندید، این فرصت را از دست ندهید. فهرستی از مقالات پیشنهادی جهت ایجاد یا ویرایش در اینجا وجود دارد.

پودمان:RandomContentImprovementItems: تفاوت میان نسخه‌ها

از اسلامیکال
پرش به ناوبری پرش به جستجو
بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
خط ۱۰: خط ۱۰:


local data = {
local data = {
     createItem('-color-blue', '-icon-editUndo', 'بدون منبع', 'مقاله‌های نیازمند به منبع'),
     createItem('-color-blue', '-icon-editUndo', 'اصطلاحات قرآنی', 'اصطلاحات قرآنی'),
     createItem('-color-green', '-icon-tableMergeCells', 'تست2', 'تست22'),
     createItem('-color-green', '-icon-tableMergeCells', 'اصطلاحات حدیثی', 'اصطلاحات حدیثی'),
     createItem('-color-blue', '-icon-searchCaseSensitive', 'تست3', 'تست33'),
     createItem('-color-blue', '-icon-searchCaseSensitive', 'اصطلاحات کلامی', 'اصطلاحات کلامی'),
     createItem('-color-red', '-icon-alert', 'تست4', 'تست44'),
     createItem('-color-red', '-icon-alert', 'اصطلاحات فقهی', 'اصطلاحات فقهی'),
     -- createItem('-color-blue', '-icon-tag', 'تست5', 'تست55'),
     -- createItem('-color-blue', '-icon-tag', 'مذاهب اسلامی', 'مذاهب اسلامی'),
     createItem('-color-red', '-icon-language', 'تست6', 'تست66'),
     createItem('-color-red', '-icon-language', 'خلفای اسلامی', 'خلفای اسلامی'),
     createItem('-color-green', '-icon-link', 'تست7', 'تست77'),
     createItem('-color-green', '-icon-link', 'کشورهای اسلامی', 'کشورهای اسلامی'),
     createItem('-color-green', '-icon-history', 'تست8', 'تست88'),
     createItem('-color-red', '-icon-reference', 'میراث اسلامی', 'میراث اسلامی'),
     createItem('-color-gray', '-icon-code', 'تست9', 'تست99'),
     createItem('-color-blue', '-icon-eye', 'امپراتوری‌های مسلمان', 'امپراتوری‌های مسلمان'),
     createItem('-color-red', '-icon-reference', 'شب1', 'شب11'),
     createItem('-color-green', '-icon-history', 'تقویم اسلامی', 'تقویم اسلامی'),
     createItem('-color-blue', '-icon-eye', 'شب2', 'شب22'),
     createItem('-color-gray', '-icon-code', 'زیارتگاه‌ها‏', 'زیارتگاه‌ها‏'),
     createItem('-color-blue', '-icon-help', 'شب3', 'شب33'),
     createItem('-color-blue', '-icon-help', 'آرامگاه‌ها', 'آرامگاه‌ها'),
     createItem('-color-blue', '-icon-add', 'شب4', 'شب44'),
     createItem('-color-green', '-icon-halfBright', 'مسجدها', 'مسجدها'),
     createItem('-color-green', '-icon-halfBright', 'شب5', 'شب55'),
     createItem('-color-blue', '-icon-add', 'مکان‌های مقدس اسلامی', 'مکان‌های مقدس اسلامی'),
     -- createItem('-color-green', '-icon-articleSearch', 'شب6', 'شب66'),
     -- createItem('-color-green', '-icon-articleSearch', 'کتاب‌ها', 'کتاب‌ها'),
     createItem('-color-blue', '-icon-block', 'شب7', 'شب77')
     createItem('-color-blue', '-icon-block', 'پادشاهان مسلمان', 'پادشاهان مسلمان')
}
}



نسخهٔ ‏۲۰ مهٔ ۲۰۲۴، ساعت ۱۶:۵۷

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

local p = {}

function createItem(colorModifier, iconModifier, catName, subText)
    local s1 = '<div class="content-improvement-item ' .. colorModifier .. ' ' .. iconModifier .. '">'
    local s2 = '[[:رده:' .. catName .. '|<span><span class="content-improvement-item__number">'
    local s3 = mw.getLanguage('vi'):formatNum(mw.site.stats.pagesInCategory(catName, pages))
    local s4 = '</span> مورد</span> <span>' .. subText .. '</span>]]</div>'
    return s1 .. s2 .. s3 .. s4
end

local data = {
    createItem('-color-blue', '-icon-editUndo', 'اصطلاحات قرآنی', 'اصطلاحات قرآنی'),
    createItem('-color-green', '-icon-tableMergeCells', 'اصطلاحات حدیثی', 'اصطلاحات حدیثی'),
    createItem('-color-blue', '-icon-searchCaseSensitive', 'اصطلاحات کلامی', 'اصطلاحات کلامی'),
    createItem('-color-red', '-icon-alert', 'اصطلاحات فقهی', 'اصطلاحات فقهی'),
    -- createItem('-color-blue', '-icon-tag', 'مذاهب اسلامی', 'مذاهب اسلامی'),
    createItem('-color-red', '-icon-language', 'خلفای اسلامی', 'خلفای اسلامی'),
    createItem('-color-green', '-icon-link', 'کشورهای اسلامی', 'کشورهای اسلامی'),
    createItem('-color-red', '-icon-reference', 'میراث اسلامی', 'میراث اسلامی'),
    createItem('-color-blue', '-icon-eye', 'امپراتوری‌های مسلمان', 'امپراتوری‌های مسلمان'),
    createItem('-color-green', '-icon-history', 'تقویم اسلامی', 'تقویم اسلامی'),
    createItem('-color-gray', '-icon-code', 'زیارتگاه‌ها‏', 'زیارتگاه‌ها‏'),
    createItem('-color-blue', '-icon-help', 'آرامگاه‌ها', 'آرامگاه‌ها'),
    createItem('-color-green', '-icon-halfBright', 'مسجدها', 'مسجدها'),
    createItem('-color-blue', '-icon-add', 'مکان‌های مقدس اسلامی', 'مکان‌های مقدس اسلامی'),
    -- createItem('-color-green', '-icon-articleSearch', 'کتاب‌ها', 'کتاب‌ها'),
    createItem('-color-blue', '-icon-block', 'پادشاهان مسلمان', 'پادشاهان مسلمان')
}

function p.main(frame)
    local result = ""
    local dataShuffled = FYShuffle(data)
    for i = 1, 9, 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)
    math.randomseed(os.time())
    local tReturn = {}
    for i = #tInput, 1, -1 do
        local j = math.random(i)
        tInput[i], tInput[j] = tInput[j], tInput[i]
        table.insert(tReturn, tInput[i])
    end
    return tReturn
end

return p