Moduuli:Verkkoviite
Siirry navigaatioon
Siirry hakuun
host_from_url()
Funktio palauttaa url-osoitteen host-osan {{verkkoviite}}-mallineessa käytettäväksi.. Mikäli palautettava teksti alkaa sanalla "www.", niin tämä poistetaan palautettavasta tekstistä.
- Parametrit
- url = url-osoite, josta palautettava arvo luetaan jos
site
taipublisher
-parametreja ei ole määritelty - site = teksti joka näytetään jos se on määritelty
- publisher = mikäli tässä on jokin arvo, niin ei yritetä hakea automaattista arvoa url-parametrista
Esimerkit
- url-parametri täytetty, site ja publisher tyhjiä
{{#invoke:verkkoviite|host_from_url|url=https://fi.wikipedia.org/wiki/Moduuli:Verkkoviite|site=|publisher=}}
- →
fi.wikipedia.org
- url-alkaa tekstillä www
{{#invoke:verkkoviite|host_from_url|url=https://www.wikipedia.org/wiki/Moduuli:Verkkoviite|site=|publisher=}}
- →
wikipedia.org
- url ja site -parametrit täytetty, publisher tyhjä
{{#invoke:verkkoviite|host_from_url|url=https://fi.wikipedia.org/wiki/Moduuli:Verkkoviite|site=site-parametri|publisher=}}
- →
site-parametri
- url, site ja publisher -parametrit täytetty
{{#invoke:verkkoviite|host_from_url|url=https://fi.wikipedia.org/wiki/Moduuli:Verkkoviite|site=site-parametri|publisher=publisher-parametri}}
- →
site-parametri
- url on tyhjä, mutta site-parametri on määritelty
{{#invoke:verkkoviite|host_from_url|url=|site=site-parametri|publisher=}}
- →
site-parametri
- url ja publisher -parametrit täytetty. Site-parametri on tyhjä
{{#invoke:verkkoviite|host_from_url|url=https://fi.wikipedia.org/wiki/Moduuli:Verkkoviite|site=|publisher=publisher-parametri}}
- →
- url ja site ovat tyhjiä
{{#invoke:verkkoviite|host_from_url|url=|site=|publisher=}}
- →
- url on virheellinen
{{#invoke:verkkoviite|host_from_url|url=https:www.wikipedia.org/wiki/Moduuli:Verkkoviite|site=|publisher=}}
- →
local t={}
-- Palauttaa url-osoitteen perusteella arvon sivusto-parametrille
function t.host_from_url(frame)
local url=frame.args.url or "";
local site=frame.args.site or "";
local publisher=frame.args.publisher or ""
-- Mikäli site on määritelty, niin käytetään sitä
if site ~= "" then
return site
end
-- Mikäli publisher on määritelty, niin ei tarvita host:ia kertomaan lähdettä
if publisher ~= "" then
return ""
end
if url == "" then
return ""
end
local u=mw.uri.new(url)
-- poistetaan "www" alusta
local ret=""
if u.host ~= nil then
ret=string.gsub( u.host, "^www.", "", 1 )
end
return ret
end
return t;