<templatestyles src="Modul:Dokumentacija/styles.css"></templatestyles>
Dokumentacija modula[stvori]
local p = {}
local vrts_vazece = {}
---/////////////////////--
-- OVDJE DODATI NOVE ISPRAVNE DOPUSNICE (na dno popisa) - u obliku
-- vrts_vazece['podnaslov'] = ID vrijednost VRTS zahtjeva
vrts_vazece['AGM d.o.o.'] = '2021020410007871'
vrts_vazece['Klobuk.info'] = '2010042710011831'
vrts_vazece['Martina Zadro'] = '2021020410008174'
vrts_vazece['Dalibor Grubačević'] = '2021030910012327'
vrts_vazece['U potrazi za Markom Polom - TV serijal'] = '2021032610006338'
vrts_vazece['Željko Luketić'] = '2021031610007856'
vrts_vazece['Marin Sabolović'] = '2021031810008066'
vrts_vazece['Vitomir Ivanjek'] = '2021032610010289'
vrts_vazece['Goran Ugrin'] = '2021032610011921'
vrts_vazece['Ante Tadić'] = '2021040610009924'
vrts_vazece['Ministarstvo kulture Republike Hrvatske'] = '2021043010005276'
vrts_vazece['Hrvatsko kulturno vijeće'] = '2021070910003946'
vrts_vazece['Mladen Burnać'] = '2021080810003811'
vrts_vazece['Petar Milić'] = '2021081910003603'
vrts_vazece['Sage Croatia'] = '2021093010009111'
vrts_vazece['Orijentacijski klub Vihor Zagreb'] = '2021102910005918'
vrts_vazece['Darija Dolanski Majdak'] = '2021102710009543'
vrts_vazece['Ivan Mance'] = '2021122810007791'
vrts_vazece['Udruženje Divanhana'] = '2022013010005396'
vrts_vazece['Hrvatsko planinarsko društvo Sniježnica'] = '2022021510005314'
vrts_vazece['Damir Rogulja'] = '2022030610001628'
vrts_vazece['Matija Jakšeković'] = '2020090110003486'
vrts_vazece['Grad Beli Manastir'] = '2022110210012421'
vrts_vazece['Dubravka Oraić Tolić'] = '2022120510007205'
vrts_vazece['Hrvatski registar tamburaša'] = '2023082310002432'
vrts_vazece['Istrapedia'] = '2023072610005239'
vrts_vazece['Milan Bošnjak'] = '2024040510007691'
vrts_vazece['Hrvatska udruga Benedikt'] = '2024060310004532'
vrts_vazece['Dijana Žilić: In memoriam dr. sc. Marini Ilakovac Kveder'] = '2024010410005691'
----------------------
local vrts_nevazece = {}
---/////////////////////--
-- OVDJE DODATI NOVE NEVAŽEĆE DOPUSNICE (na dno popisa) - u obliku
-- vrts_nevazece['podnaslov'] = {'a.hr', 'b.hr', 'c.hr' } (web stranice za koje nemamo dopusnicu)
vrts_nevazece['Leksikografski zavod "Miroslav Krleža"'] = {'enciklopedija.hr', 'lzmk.hr', 'croatia.eu'}
vrts_nevazece['Hrvatski državni arhiv'] = {'arhiv.hr'}
vrts_nevazece['Javna ustanova "Priroda"'] = {'ju-priroda.hr'}
vrts_nevazece['Grad Crikvenica'] = {'crikvenica.hr'}
vrts_nevazece['Primorsko-goranska županija'] = {'pgz.hr'}
vrts_nevazece['Hrvatska akademija znanosti i umjetnosti'] = {'hazu.hr'}
function v_dohvatiNaslov(id)
for naslov, identifikator in pairs(vrts_vazece) do
if identifikator == id then
return naslov
end
end
return ''
end
function v_dohvatiID(ime)
return vrts_vazece[ime] or ''
end
function p.ispis(frame)
local ret = ''
if frame.args['1'] == 'vazece' then
ret = '{| class="wikitable sortable" style="text-align: center;"'
.. '\n|-'
.. '\n! Dopusnica'
.. '\n! VRTS identifikator'
.. '\n! Kategorija za praćenje'
for val, param in pairs(vrts_vazece) do
local catname = 'Dopusnica - ' .. val
ret = ret .. '\n|-'
.. '\n| ' .. val .. ' || ' .. '[[:ticket:'.. param..'|'.. param ..']]'
ret = ret .. '|| [[:Kategorija:' .. catname .. '|' .. catname ..']]'
..' (' .. frame:preprocess('{{PAGESINCAT:'..catname..'|all}}') ..' stavki)'
-- ..' (' .. frame:preprocess('{{PAGESINCAT:'..catname..'|pages}}') ..' str., '
-- .. frame:preprocess('{{PAGESINCAT:'..catname..'|subcats}}') ..' kat., '
-- .. frame:preprocess('{{PAGESINCAT:'..catname..'|files}}') .. ' dat.)'
end
ret = ret .. '\n|-'
.. '\n|}'
return ret
else if frame.args['1'] == 'nevazece' then
ret = '{| class="wikitable sortable" style="text-align: center;"'
.. '\n|-'
.. '\n! Dopusnica'
.. '\n! poveznice'
.. '\n! Kategorija za praćenje'
for i, params in pairs(vrts_nevazece) do
for j, param in ipairs(params) do
if j == 1 then
ret = ret .. '\n|-'
.. '\n| '.. i .. '|| <code>' .. param .. '</code>'
elseif j == 2 then
ret = ret .. '<code>' .. param .. '</code>'
else
ret = ret .. ', <code>' .. param .. '</code>'
end
end
local catname = 'Dopusnica - ' .. i
ret = ret .. '|| [[:Kategorija:' .. catname .. '|' .. catname ..']]'
..' (' .. frame:preprocess('{{PAGESINCAT:'..catname..'|all}}') ..' stavki)'
-- ..' (' .. frame:preprocess('{{PAGESINCAT:'..catname..'|pages}}') ..' str., '
-- .. frame:preprocess('{{PAGESINCAT:'..catname..'|subcats}}') ..' kat., '
-- .. frame:preprocess('{{PAGESINCAT:'..catname..'|files}}') .. ' dat.)'
end
ret = ret .. '\n|-'
.. '\n|}'
return ret
end
end
end
function p.samo_kategorija(frame)
local retval = ''
local naslovArg = frame.args['naslov'] or ''
local naslov = ''
local id = frame.args['id'] or ''
if string.find(naslovArg, "LZMK")
or string.find(naslovArg, "Hrvatsk[aeiou] enciklopedij[aeiou]")
or string.find(naslovArg, "Istarsk[aeiou] enciklopedij[aeiou]")
or string.find(naslovArg, "Hrvatskog biografskog leksikona")
or string.find(naslovArg, "Proleksis")
or string.find(naslovArg, "[Cc]roatia.eu")
or string.find(naslovArg, "Hrvatska[:,] zemlja,? i ljudi") then
naslov = 'Leksikografski zavod "Miroslav Krleža"'
else naslov = naslovArg
end
if naslov ~= '' then
retval = 'Sav sadržaj pod ovom dopusnicom popisan je [[:Kategorija:Dopusnica - '
.. naslov .. '|ovdje]].[[Kategorija:Dopusnica - '.. naslov .. ']]'
else if v_dohvatiNaslov(id) ~= '' then
retval = 'Sav sadržaj pod ovom dopusnicom popisan je [[:Kategorija:Dopusnica - '
.. v_dohvatiNaslov(id) .. '|ovdje]].[[Kategorija:Dopusnica - '.. v_dohvatiNaslov(id) .. ']]'
else retval = '<span class="error"><b>Dopusnica nije povezana s modulom!</b></span> [[Kategorija:Dopusnice koje nisu povezane s modulom]]'
end
end
if naslov ~= '' and id ~= '' then
if v_dohvatiNaslov(id) ~= v_dohvatiID(naslov) then
retval = retval .. '[[Kategorija:VRTS predlošci s nepoklapanjem u identifikatorima]]'
end
end
return retval
end
function provjeri_poveznice(frame)
local match = 'no'
if vrts_nevazece[string.gsub(frame.args['naslov'] or '', '_', ' ')] ~= nil then
match = 'yes'
else
for val, params in pairs(vrts_nevazece) do
for i, param in pairs(params) do
local HTTPregex = 'https?://' .. param
local dotregex = '%.' .. param
if string.find(frame.args['url1'] or '', HTTPregex) or string.find(frame.args['url2'] or '', HTTPregex)
or string.find(frame.args['url1'] or '', dotregex) or string.find(frame.args['url2'] or '', dotregex) then
match = 'yes'
end
end
end
end
return match
end
function p.main(frame)
local retstring ='';
local nocat = frame.args['nocat']
local title = mw.title.getCurrentTitle()
if title.nsText == 'Wikipedija' then
nocat = 'yes'
end
if provjeri_poveznice(frame) == 'yes' then
retstring = '<span class="error"><b>Dopusnica nije važeća!</b></span>'
if nocat ~= 'yes' then retstring = retstring .. '[[Kategorija:Članci s nevažećom dopusnicom]]' end
elseif vrts_vazece[frame.args['naslov']] ~= nil then -- ako vrijednost postoji
retstring = 'Dopusnica za korištenje materijala s ove stranice '
..'arhivirana je u [[Wikipedija:VRT|VRTS-u]] pod brojem '
.. '[[:ticket:'.. vrts_vazece[frame.args['naslov']]..'|'.. vrts_vazece[frame.args['naslov']] ..']].'
if nocat ~= 'yes' then retstring = retstring .. '[[Kategorija:Članci s potvrđenom dopusnicom]]' end
else
retstring = '<span class="error">Dopusnica nije potvrđena [[Wikipedija:VRT|VRTS-om]].</span>'
if nocat ~= 'yes' then retstring = retstring .. '[[Kategorija:Članci s nepotvrđenom dopusnicom]]' end
end
return retstring..'<br />'..p.samo_kategorija(frame)
end
return p