Modül:Şablon Ayrıştırıcı

Bu modül için bir Modül:Şablon Ayrıştırıcı/belge belgelendirmesi oluşturabilirsiniz

local p = {}

function string.starts(String,Start)
   return string.sub(String,1,string.len(Start))==Start
end

local function sablonayristir(frame)
	local args = frame:getParent().args
	local sablon = args['sablon']
        if sablon then
	    a, b = string.find(sablon, "|left|150px]] '''")
	    a1, b1 = string.find(string.sub(sablon, a+16), "'''")
	    if a1 == 1 then
	    	a1, b1 = string.find(string.sub(sablon, a+16+a1), "'''")
	    end
            
            if string.starts(string.sub(sablon, a+16, a+16+a1), "'") then
                a = a + 1
            end
            --return string.sub(sablon, a+16)
            return string.sub(sablon, a+16, a+16+a1)
        else
            return ""
        end
end
	
function p.gsrayristir(frame)
    local args = frame:getParent().args
    local sablon = args['sablon']
    local istek = args['istek']
    if sablon and istek then    
        a, b = string.find(sablon, "Dosya:")
        a1,b1 = string.find(string.sub(sablon, b), "|")
        local image = string.sub(sablon, b+1, a+a1+3)

        a, b = string.find(sablon, "px|center |")
        local t_a= a
        a1,b1 = string.find(string.sub(sablon, b+1), "]]")
        local baslik = string.sub(sablon, b+1, a+b1+8)

        a, b = string.find(string.sub(sablon, t_a+b1+25), '<small>')
        local aciklama = string.sub(string.sub(sablon, t_a+b1+25), 1, a-5)
    
        ureten_bool = true
        a, b = string.find(sablon, "<small>Üreten: ")
        if not a then
            a, b = string.find(sablon, "<small>Üreten : ")
            if not a then
                ureten_bool = false
            else
                a = a + 1
            end
        end
        
        if ureten_bool then
            a1,b1 = string.find(string.sub(sablon, b), "</small><br />")
            local ureten = string.sub(sablon, b+1, a+b1)

            if string.starts(ureten, "Bilinmiyor") then
                ureten = ureten
            elseif string.starts(ureten, "Bilinmemekte") then
                ureten = ureten
            else
                ureten = ureten .. " tarafından üretilmiştir."
            end
        else
            ureten = ""
        end      
    
        if istek == '0' then
    	    return image
        elseif istek == '1' then
    	    return baslik
        elseif istek == '2' then
    	    return aciklama
        elseif istek == '3' then
    	    return ureten
        end
    else
        return ""
    end
end

function p.gmayristir(frame)
    local args = frame:getParent().args
    local sablon = args['sablon']
    local istek = args['istek']

    if sablon and istek then
        a, b = string.find(sablon, "<big>")
        a1, b1 = string.find(sablon, "</big>")
        local ilk = string.sub(sablon, a+5+3, b1-6-3)
    
        a, b = string.find(sablon, "|}")
        local digerSablon =  string.sub(sablon, b+8)
    
        a, b = string.find(digerSablon, "<big>")
        a1, b1 = string.find(digerSablon, "</big>")
        local ikinci = string.sub(digerSablon, a+5+3, b1-6-3)

         if istek == '0' then
    	    return ilk
        elseif istek == '1' then
    	    return ikinci
        end
    else
        return ""
    end
end

function p.gmmaddeayristir(frame)
    local args = frame:getParent().args
    local sablon = args['sablon']
    local istek = args['istek']
    
    if sablon and istek then
        a, b = string.find(sablon, "Resim:")
        a1, b1 = string.find(sablon, '|- style="Verdana, Arial, Helvetica, ')
        local ilk = "[["..string.sub(sablon, a, a1-4)

        a, b = string.find(sablon, "|}")
        local digerSablon =  string.sub(sablon, b+8)
    
        a, b = string.find(digerSablon, "Resim:")
        a1, b1 = string.find(digerSablon, '|- style="Verdana, Arial, Helvetica, ')
        local ikinci = "[["..string.sub(digerSablon, a, a1-4)

        if istek == '0' then
    	    return ilk
        elseif istek == '1' then
    	    return ikinci
        end
    else
        return ""
    end
end

function p.tbayristir(frame)
    local args = frame:getParent().args
    local sablon = args['sablon']
    local istek = args['istek']
    
    if sablon and istek then
        return string(sablon, "Daha fazlası...", "")
    else
        return ""
    end
end

function p.payristir(frame)
    local args = frame:getParent().args
    local the_p = args['param']
    a, b = string.find(the_p, "<p>")
    a1, b1 = string.find(the_p, "</p>")
    return string.sub(the_p, a, a1)
end

function p.deneme(frame)
	return sablonayristir(frame)
end

return p