Модуль:Новости: различия между версиями

Материал из AbduloverA.com
 
(не показаны 4 промежуточные версии этого же участника)
Строка 4: Строка 4:


function p.render_text(frame)
function p.render_text(frame)
     -- local pageName = frame.args[1];
     local pageName = frame.args[1];
     -- local index = frame.args[2];
     local index = frame.args[2];
      
      
     local pageName = "Шаблон:Новости";
     -- local pageName = "Шаблон:Новости";
     local index = 1;
     -- local index = 1;


      
      
Строка 19: Строка 19:
     local rows = {}
     local rows = {}


     for row in content:gmatch("|text=.[^}]+|", "%a") do
     -- for row in content:gmatch("|text=.[^}]+|", "%a") do
    for row in content:gmatch("|text=.[^}]+}-", "%a") do
         table.insert(rows, row)
         table.insert(rows, row)
     end
     end
Строка 25: Строка 26:
     local result = {}
     local result = {}
str_p = rows[tonumber(index)]
str_p = rows[tonumber(index)]
-- mw.log(str_p);
local trunced = string.gsub(str_p, "|text=", "");
local trunced = string.gsub(str_p, "|text=", "");
local str_p = string.gsub(trunced, "|", "");
-- local str_p = string.gsub(trunced, "|", "");
mw.log(str_p);
-- mw.log(trunced);
return str_p;
return trunced;
end  
end  



Текущая версия от 23:38, 27 января 2025

Для документации этого модуля может быть создана страница Модуль:Новости/doc

local p = {}
local str_p = ""


function p.render_text(frame)
    local pageName = frame.args[1];
    local index = frame.args[2];
    
    -- local pageName = "Шаблон:Новости";
    -- local index = 1;

    
    local content = mw.title.new(pageName):getContent()

    if not content then
        return "Страница не найдена или пуста."
    end
	
    local rows = {}

    -- for row in content:gmatch("|text=.[^}]+|", "%a") do
    for row in content:gmatch("|text=.[^}]+}-", "%a") do
        table.insert(rows, row)
    end

    local result = {}
	str_p = rows[tonumber(index)]
	-- mw.log(str_p);
	local trunced = string.gsub(str_p, "|text=", "");
	-- local str_p = string.gsub(trunced, "|", "");
	-- mw.log(trunced);
	return trunced;
end 


function p.render_date(frame)
    local pageName = frame.args[1];
    local index = frame.args[2];
    
    -- local pageName = "Шаблон:Новости";
    -- local index = 1;

    
    local content = mw.title.new(pageName):getContent()

    if not content then
        return "Страница не найдена или пуста."
    end
	
    local rows = {}

    for row in content:gmatch("|date=.[^}]+|", "%a") do
        table.insert(rows, row)
    end

    local result = {}
	str_p = rows[tonumber(index)]
	local trunced = string.gsub(str_p, "|date=", "");
	local str_p = string.gsub(trunced, "|", "");
    mw.log(str_p);

	return str_p;
end 


return p;