Modul:Reference

Fra Martinus Wiki

Dokumentation for dette modul kan oprettes på Modul:Reference/dok

local p = {}

function p.hallo(frame)
  bogTitler = {}
  bogTitler["LB1"] = "Livets Bog 1"
  bogTitler["LB2"] = "Livets Bog 2"
  bogTitler["LB3"] = "Livets Bog 3"
  bogTitler["LB4"] = "Livets Bog 4"
  bogTitler["LB5"] = "Livets Bog 5"
  bogTitler["LB6"] = "Livets Bog 6"
  bogTitler["LB7"] = "Livets Bog 7"

  bogIDer = {}
  bogIDer["LB1"] = 51
  bogIDer["LB2"] = 52
  bogIDer["LB3"] = 53
  bogIDer["LB4"] = 54
  bogIDer["LB5"] = 55
  bogIDer["LB6"] = 56
  bogIDer["LB7"] = 57
  bogIDer["dev1"] = 61
  bogIDer["dev2"] = 62
  bogIDer["dev3"] = 63
  bogIDer["dev4"] = 64
  bogIDer["dev5"] = 65
  bogIDer["dev6"] = 66

  -- første arg er et nummer? dvs. Livets Bog
  if ( tonumber(frame.args['bog']) ~= nil) then
    styknummer = tonumber(frame.args['bog'])
    
    if styknummer < 1 then
      return 'Styknummeret lavere end 0 og findes ikke i [[Livets Bog]]'
    end

    if styknummer > 2664 then
      return 'Styknummeret er højere end 2664 og findes ikke i [[Livets Bog]]'
    end

    if styknummer < 289 then
      return createLBReference("LB1", 51, styknummer)
    end

    if styknummer < 639 then
      return createLBReference("LB2", 52, styknummer)
    end

    if styknummer < 1053 then
      return createLBReference("LB3", 53, styknummer)
    end

    if styknummer < 1591 then
      return createLBReference("LB4", 54, styknummer)
    end

    if styknummer < 1939 then
      return createLBReference("LB5", 55, styknummer)
    end  

    if styknummer < 2396 then
      return createLBReference("LB6", 56, styknummer)
    end

    if styknummer < 2665 then
      return createLBReference("LB7", 57, styknummer)
    end    

    return 'Is the number: ' .. frame.args['bog'] .. 'stk nummer: ' .. styknummer
  end

  -- Symbolbøger
  if frame.args['bog'] == "dev 1" then
    -- DEV1 err bog 61
    return createSymbolbogReference(61, 1, 1)
  end


  -- Småbøger
  if frame.args['bog'] == "småbog" then
    return 'Småbog fundet'
  end

  -- Symboler
  if frame.args['bog'] == "symbol" then
    return createSymbolReference(1)
  end

  -- Artikler
  if frame.args['bog'] == "artikel" then
    return 'Artikel fundet'
  end
  
  -- foredrag
  if frame.args['bog'] == "foredrag" then
    return 'Artikel fundet'
  end

  -- Kosmos
  if frame.args['bog'] == "kosmos" then
    return 'Kosmos fundet'
  end 

  -- Antager det er LB angivet bog, stk.
  if mw.ustring.sub( frame.args['bog'], 1, 2 ) == "LB" then
    return '[[' .. bogTitler[frame.args['bog']] .. ']], stk. ' .. frame.args['stykke'] .. '. https://www.martinus.dk/da/onlinebibliotek/dtt/index.php?bog=' .. bogIDer[frame.args['bog']] .. '&stk=' .. frame.args['stykke']
  end

  -- Andre bøger 
  return 'Intet genkendt. Tjek [[Hjælp:Referencer_til_Martinus_værk|reference]].'

end

function createLBReference (bogForkortelse, bogID, styknummer)
    return '[[' .. bogTitler[bogForkortelse] .. ']], [https://www.martinus.dk/da/onlinebibliotek/dtt/index.php?bog=' .. bogID .. '&stk=' .. styknummer .. ' stk. ' .. styknummer ..']'
end

function createSymbolReference (symbolnummer)
-- needs to switch on symbolbog
  return '[[Symbol ' .. symbolnummer .. ' nr. ' .. ']], [https://www.martinus.dk/da/onlinebibliotek/dtt/index.php?bog=' .. '&stk=' .. symbolnummer .. ' stk. ' .. symbolnummer ..']'
end

function createSymbolbogReference (symbolbogID, symbol, stykke)
  return '[https://www.martinus.dk/da/onlinebibliotek/dtt/index.php?bog=' .. symbolbogID .. '&stk' .. symbol .. '&pkt' ..  stykke .. ']'
end

return p