Modul:Partier se

Från Järnvägsdata
Version från den 23 februari 2019 kl. 17.48 av Jan Karlsson (diskussion | bidrag) (1 version importerades)

local p = {} function lansvis( t )

   local lok = { ['01'] = 'Modul:Partier se/01',
                 ['03'] = 'Modul:Partier se/03',
                 ['04'] = 'Modul:Partier se/04',
                 ['05'] = 'Modul:Partier se/05',
                 ['06'] = 'Modul:Partier se/06',
                 ['07'] = 'Modul:Partier se/07',
                 ['08'] = 'Modul:Partier se/08',
                 ['09'] = 'Modul:Partier se/09',
                 ['10'] = 'Modul:Partier se/10',
                 ['12'] = 'Modul:Partier se/12',
                 ['13'] = 'Modul:Partier se/13',
                 ['14'] = 'Modul:Partier se/14',
                 ['17'] = 'Modul:Partier se/17',
                 ['18'] = 'Modul:Partier se/18',
                 ['19'] = 'Modul:Partier se/19',
                 ['20'] = 'Modul:Partier se/20',
                 ['21'] = 'Modul:Partier se/21',
                 ['22'] = 'Modul:Partier se/22',
                 ['23'] = 'Modul:Partier se/23',
                 ['24'] = 'Modul:Partier se/24',
                 ['25'] = 'Modul:Partier se/25'
   }
   return lok[t]

end

function p.partisnack(frame)

   local args = frame.args
   local white = 'white'
   local black = 'black'

   local color = {
   	

['al'] = { ['a'] = 'AL', ['n'] = 'Arbetarlistan', ['l'] = 'Arbetarlistan', ['f'] = '#cc0000' , ['t'] = white }, ['apk'] = { ['a'] = 'APK', ['n'] = 'Arbetarpartiet kommunisterna', ['l'] = 'Sveriges kommunistiska parti (1995)', ['f'] = '#640000' , ['t'] = white },

['bl'] = { ['a'] = 'BL' , ['n'] = 'Borgerlig lista', ['l'] = 'Samlingslista', ['f'] = '#b9d3ee' , ['t'] = black },

['c'] = { ['a'] = 'C', ['n'] = 'Centerpartiet', ['l'] = 'Centerpartiet', ['f'] = '#009933', ['t'] = black },

['fgls'] = { ['a'] = 'FGLS', ['n'] = 'Fri grupp för lägre skatt', ['l'] = 'Fri grupp för lägre skatt', ['f'] = 'orange', ['t'] = black }, ['fi'] = { ['a'] = 'FI', ['n'] = 'Feministiskt initiativ', ['l'] = 'Feministiskt initiativ', ['f'] = '#D9308E', ['t'] = white }, ['fk'] = { ['a'] = 'FRK', ['n'] = 'Frihetliga kommunalfolket', ['l'] = 'Frihetliga kommunalfolket', ['f'] = '#660000', ['t'] =white }, ['fp'] = { ['a'] = 'FP', ['n'] = 'Folkpartiet liberalerna', ['l'] = 'Folkpartiet', ['f'] = '#6BB7EC', ['t'] = black}, ['fr'] = { ['a'] = 'FR', ['n'] = 'Frisinnade folkpartiet', ['l'] = 'Frisinnade folkpartiet', ['f'] = '#64b2ff', ['t'] = black}, ['frp'] = { ['a'] = 'FRP', ['n'] = 'Framstegspartiet', ['l'] = 'Framstegspartiet (Sverige)', ['f'] = '#818200', ['t'] = white},

['k'] = { ['a'] = 'SKP', ['n'] = 'Sveriges kommunistiska parti', ['l'] = 'Sveriges kommunistiska parti (1995)', ['f'] = '#500000', ['t']= white }, ['kp'] = { ['a'] = 'KP', ['n'] = 'Kommunistiska Partiet', ['l'] = 'Kommunistiska Partiet', ['f'] = '#660000', ['t'] = white }, ['kd'] = { ['a'] = 'KD', ['n'] = 'Kristdemokraterna', ['l'] = 'Kristdemokraterna (Sverige)', ['f'] = '#231977', ['t'] = white }, ['krvp'] = { ['a'] ='KrVP',['n'] = 'Kristna Värdepartiet', ['l'] = 'Kristna Värdepartiet', ['f'] = '#660876', ['t'] = white }, ['kv'] = { ['a'] = 'KV', ['n'] = 'Kommunens Väl', ['l'] = 'Kommunens Väl', ['f'] = '#ffa500', ['t'] = black },

['jl'] = { ['a'] = 'JL', ['n'] = 'Junilistan', ['l'] = 'Junilistan', ['f'] = '#ffa500', ['t'] = white},

	['l'] =	    { ['a'] = 'L',    ['n'] = 'Liberalerna',                ['l'] = 'Liberalerna',               ['f'] = '#6BB7EC',  ['t'] = black},

['lpo'] = { ['a'] = 'LPo', ['n'] = 'Landsbygdspartiet oberoende', ['l'] = 'Landsbygdspartiet oberoende', ['f'] = '#4CB04C', ['t'] = white }, ['ls'] = { ['a'] = 'LS', ['n'] = 'Liberal samling', ['l'] = 'Liberal samling', ['f'] = '#9fccec', ['t'] = black }, ['lp'] = { ['a'] = 'LP', ['n'] = 'Liberala partiet', ['l'] = 'Sveriges liberala parti', ['f'] = '#33C7FF', ['t'] = black },

['m'] = { ['a'] = 'M', ['n'] = 'Moderata samlingspartiet', ['l'] = 'Moderaterna', ['f'] = '#1B49DD', ['t'] = white }, ['mf'] = { ['a'] = 'MF', ['n'] = 'Medborgarförbundet', ['l'] = 'Medborgarförbundet', ['f'] = '#320080', ['t'] = white }, ['med'] = { ['a'] = 'MED', ['n'] = 'Medborgerlig samling', ['l'] = 'Medborgerlig samling (2010-talet)', ['f'] = '#506d28', ['t'] = white }, ['mp'] = { ['a'] = 'MP', ['n'] = 'Miljöpartiet de gröna', ['l'] = 'Miljöpartiet', ['f'] = '#83CF39', ['t'] = black },

['nd'] = { ['a'] = 'ND', ['n'] = 'Nationaldemokraterna', ['l'] = 'Nationaldemokraterna', ['f'] = '#FF9900', ['t'] = black }, ['nsap'] = { ['a'] = 'NSAP', ['n'] = 'Nationalsocialistiska Arbetarepartiet', ['l'] = 'Nationalsocialistiska Arbetarepartiet', ['f'] = '#8b4513', ['t'] = white }, ['nsb'] = { ['a'] = 'NSB', ['n'] = 'Nationalsocialistiska Blocket', ['l'] = 'Nationalsocialistiska blocket', ['f'] = '#8b4513', ['t'] = white }, ['nyd'] = { ['a'] = 'NYD', ['n'] = 'Ny Demokrati', ['l'] = 'Ny demokrati', ['f'] = 'yellow', ['t'] = black },

['pp'] = { ['a'] = 'PP', ['n'] = 'Piratpartiet', ['l'] = 'Piratpartiet (Sverige)', ['f'] = '#572B85', ['t'] = white },

['rs'] = { ['a'] = 'RS', ['n'] = 'Rättvisepartiet Socialisterna', ['l'] = 'Rättvisepartiet Socialisterna', ['f']= '#990000', ['t'] = white },

['s'] = { ['a'] = 'S', ['n'] = 'Sveriges socialdemokratiska arbetareparti', ['l'] = 'Socialdemokraterna (Sverige)', ['f'] = '#EE2020', ['t'] = black }, ['sd'] = { ['a'] = 'SD', ['n'] = 'Sverigedemokraterna', ['l'] = 'Sverigedemokraterna', ['f'] = '#DDDD00', ['t'] = black }, ['skp'] = { ['a'] = 'SKP', ['n'] = 'Sveriges kommunistiska parti', ['l'] = 'Sveriges kommunistiska parti (1967)', ['f'] = '#500000', ['t'] = white }, ['sl'] = { ['a'] = 'SL', ['n'] = 'Samlingslista', ['l'] = 'Samlingslista', ['f'] = 'lightgrey', ['t'] = black }, ['snf'] = { ['a'] = 'SNF', ['n'] = 'Sveriges Nationella Förbund', ['l'] = 'Sveriges nationella förbund', ['f'] = '#996908', ['t'] = white}, ['soc.p'] = { ['a'] = 'SOC', ['n'] = 'Socialistiska partiet', ['l'] = 'Socialistiska Partiet (Sverige)', ['f'] = '#660000', ['t'] = white}, ['sp'] = { ['a'] = 'SP', ['n'] = 'Socialistiska partiet', ['l'] = 'Socialistiska partiet (1929)', ['f'] = '#660000', ['t'] = white }, ['soc'] = { ['a'] = 'SP', ['n'] = 'Socialistiska partiet', ['l'] = 'Socialistiska partiet (1929)', ['f'] = '#660000', ['t'] = white }, ['spi'] = { ['a'] = 'SPI', ['n'] = 'SPI Välfärden', ['l'] = 'SPI Välfärden', ['f'] = '#FFFF99', ['t'] = black }, ['snsp'] = { ['a'] = 'SNSP', ['n'] = 'Svenska nationalsocialistiska partiet', ['l'] = 'Svenska nationalsocialistiska partiet', ['f'] = '#8b4513', ['t'] = white }, ['svp'] = { ['a'] = 'SVP', ['n'] = 'Svenskarnas parti', ['l'] = 'Svenskarnas parti', ['f'] = '#8b4513', ['t'] = white },

['v'] = { ['a'] = 'V', ['n'] = 'Vänsterpartiet', ['l'] = 'Vänsterpartiet', ['f'] = '#AF0000', ['t'] = white },

['övrigt'] = { ['a'] = 'ÖVR', ['n'] = 'Övriga partier', ['l'] = 'Lista över politiska partier i Sverige', ['f'] = 'gray', ['t'] = white }, ['övr'] = { ['a'] = 'ÖVR', ['n'] = 'Övriga partier', ['l'] = 'Lista över politiska partier i Sverige', ['f'] = 'gray', ['t'] = white }, ['övrig'] = { ['a'] = 'ÖVR', ['n'] = 'Övriga partier', ['l'] = 'Lista över politiska partier i Sverige', ['f'] = 'gray', ['t'] = white }, ['ö'] = { ['a'] = 'ÖVR', ['n'] = 'Övriga partier', ['l'] = 'Lista över politiska partier i Sverige', ['f'] = 'gray', ['t'] = white }, ['övriga'] = { ['a'] = 'ÖVR', ['n'] = 'Övriga partier', ['l'] = 'Lista över politiska partier i Sverige', ['f'] = 'gray', ['t'] = white }

   }

   local parti = mw.text.trim(args[1])
   if parti == 'demonstration' then 
   	return color
   end

if color[parti] then return color[parti] else if string.len(parti) > 2 then

           local modulnamn = lansvis(string.sub(parti, 1, 2))
           if modulnamn == nil then
               return 'INGET SÅDANT LÄN ' .. parti .. 
           end
           local modden = require( modulnamn )

           local resultat = modden.partisnack(frame)

           if resultat == nil then
               return 'error5'
           end

           return resultat
       end
       return 'INGET SÅDANT PARTI'
   end

return 'INGET SÅDANT PARTI' end

function hamta(text) if text == "Partier se" or text == "Partier se/dok" then return "Modul:Partier se" elseif string.sub(text, 1, 11) == "Partier se/" then return "Modul:" .. string.sub(text, 1, 13) end end

function p.demo(frame) local a = hamta(mw.title.getCurrentTitle().text) local color = nil local kort = 'demonstration' frame.args = { kort }

if a == "Modul:Partier se" then color = p.partisnack(frame) else local c1 = require(a).partisnack color = c1(frame) end local r = r = mw.text.tag('th', {}, 'Parameter 1') r = r .. mw.text.tag('th', {}, 'Partibeteckning
(Parameter 2 = a)') r = r .. mw.text.tag('th', {}, 'Partinamn
(Parameter 2 = n)') r = r .. mw.text.tag('th', {}, 'Länk
(Parameter 2 = l)') r = r .. mw.text.tag('th', {}, 'Bakgrundsfärg
(Parameter 2 = f)') r = r .. mw.text.tag('th', {}, 'Textfärg
(Parameter 2 = t)') r = r .. mw.text.tag('th', {}, 'Typisk användning') r = mw.text.tag('tr', {}, r)

   local a = {}
   for i, n in pairs(color) do table.insert(a, i) end
   table.sort(a)
   for i0,j0 in ipairs(a) do 
     for i,j in pairs(color) do
       if i == j0 then 
       c = mw.text.tag('td', {}, i)

c = c .. mw.text.tag('td', {}, j['a']) c = c .. mw.text.tag('td', {}, j['n']) c = c .. mw.text.tag('td', {}, '[[' .. j['l'] .. ']]') c = c .. mw.text.tag('td', {}, j['f']) c = c .. mw.text.tag('td', {}, j['t']) local c2 = mw.text.tag('div', {style="background:" .. j['f'] .. "; color:".. j['t'] .. "; text-align:center;"}, j['a']) c = c .. mw.text.tag('td', {}, c2) r = r .. mw.text.tag('tr', {}, c)

   	end 
     end
   end

return mw.text.tag('table', {class="wikitable sortable"}, r) end

function p.genvag(frame) local args = frame:getParent().args if args[1] and args[2] then local kort = args[1]

       frame.args = { kort }

local c = p.partisnack(frame) if type(c) == 'table' then return c[args[2]] else return c end end end

return p