وحدة:الرئيسية/مختبر

هذه هي النسخة الحالية من هذه الصفحة، وقام بتعديلها عبود السكاف (نقاش | مساهمات) في 01:44، 14 ديسمبر 2016. العنوان الحالي (URL) هو وصلة دائمة لهذه النسخة.

(فرق) → نسخة أقدم | نسخة حالية (فرق) | نسخة أحدث ← (فرق)

خطأ لوا: expandTemplate: template "ملاحظة مختبر الوحدة" does not exist.

--وحدة لقوالب الصفحة الرئيسية

local fgetFAlist = require('وحدة:الرئيسية/مختارة').getFAlist
local fgetGAlist = require('وحدة:الرئيسية/جيدة').getGAlist

local a = {}

--- rnumber : النتيجة هي عدد كل المقالات المختارة/الجيدة
function a.rnumber( frame )
    d = {}

    if(frame.args[1] =='ga' or frame.args[1] =='جيدة' ) then
    	d = fgetGAlist()
	elseif (frame.args[1] =='fa' or frame.args[1] =='مختارة' ) then
		d = fgetFAlist()
	end
	
    return #d 
end

--- rlist : النتيجة هي قائمة عشوائية من 3 مقالات مختارة/جيدة
function a.rlist( frame )
    d = {}
    if(frame.args[1] =='ga' or frame.args[1] =='جيدة' ) then
    	d = fgetGAlist()
	elseif (frame.args[1] =='fa' or frame.args[1] =='مختارة' ) then
		d = fgetFAlist()
	end
    
    math.randomseed( os.time() )
    x = math.random(1,#d) 
    repeat
    	x1 = math.random(1,#d)
	until x1 ~= x
    repeat
    	x2 = math.random(1,#d)
    until (x2 ~= x and x2 ~= x1)

    return "[["..d[x1].."]] – [["..d[x].."]] – [["..d[x2].."]]" 
end

--- rOne : النتيجة هي اسم عشوائي مقالة واحدة مختارة/جيدة
function a.rOne( frame )
    d = {}
    if(frame.args[1] =='ga' or frame.args[1] =='جيدة' ) then
    	d = fgetGAlist()
	elseif (frame.args[1] =='fa' or frame.args[1] =='مختارة' ) then
		d = fgetFAlist()
	end
    
    math.randomseed( os.time() )
    x = math.random(1,#d) 
    return d[x]
--.. mw.getContentLanguage():formatDate('Y-m-d')
end

function a.rOneDay( frame )

    --if(frame.args[1] =='مختارة' or frame.args[1] =='جيدة' ) then           
		local articlesList = mw.loadData('وحدة:الرئيسية/'.. frame.args[1]..'/شهر/'..mw.getContentLanguage():formatDate('m'))
        math.randomseed( os.time() )
		
		for day, articles in pairs(articlesList) do
             if( day == mw.getContentLanguage():formatDate('d') ) then
             	if(#articles>0) then
            	    x = math.random(1,#articles) 
                	return x..'--'..articles[x]
             	else 
                	return day..'*'..#articles ..'*'..'EMPTY'
				end
			end
			return mw.getContentLanguage():formatDate('d')..'*' ..#articlesList['12']..'*'..'EMPTY2'
		end
		return 'EMPTY3'
	--end
	--return frame.args[1]..'EMPTY3'
end

--- plist : النتيجة هي قائمة كل المقالات المختارة/الجيدة
function a.plist(frame)
    local c = ''
    local d = {}
    if(frame.args[1] =='ga' or frame.args[1] =='جيدة' ) then
    	d = fgetGAlist()
	elseif (frame.args[1] =='fa' or frame.args[1] =='مختارة' ) then
		d = fgetFAlist()
	end
    for _,s in ipairs(d) do
       c = c .. "\n* [[" .. s .. "]]"
    end
  return c 
end

return a