Ir al contenido
Menú principal
Menú principal
mover a la barra lateral
ocultar
Navegación
Página principal
Cambios recientes
Página aleatoria
Ayuda sobre MediaWiki
Wiki TVenserio
Buscar
Buscar
Crear una cuenta
Acceder
Herramientas personales
Modo oscuro
Crear una cuenta
Acceder
Páginas para editores desconectados
más información
Contribuciones
Discusión
Edición de «
Módulo:Wikidata/Fecha
»
Módulo
Discusión
English
Leer
Editar código
Ver historial
Herramientas
Herramientas
mover a la barra lateral
ocultar
Acciones
Leer
Editar código
Ver historial
General
Lo que enlaza aquí
Cambios relacionados
Páginas especiales
Información de la página
Advertencia:
no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si
inicias sesión
o
creas una cuenta
, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Comprobación antispam. ¡
No
rellenes esto!
local p = {} local Fechas = require( 'Módulo:Fechas') local Romanos = require('Módulo:Números').Romano local enlace local function enlazar(etiqueta) if enlace == 'no' then return etiqueta else return '[['.. etiqueta ..']]' end end function formatear(fechahora, opciones) if opciones['formatoFecha'] == 'timestamp' then return fechahora.time end if fechahora == nil then return 'desconocida' end local etiqueta = fechahora.label local timestamp = fechahora.time local precision = fechahora.precision -- Decodificar el timestamp. --if true then return timestamp end local signo, annoSinSigno, mes, dia = timestamp:match("(%W)(%d+)%-(%d+)%-(%d+)") annoSinSigno = tonumber(annoSinSigno) -- Obtener la era local era = '' if signo == '-' then era = ' a. C.' annoConSigno = - annoSinSigno elseif annoSinSigno == 0 then -- Por comprobar si aún es así. annoSinSigno = 1 annoConSigno = -1 era = ' a. C.' else annoConSigno = annoSinSigno end -- Informar el calendario local calendario local mostrarCalendario = '' if fechahora.calendarmodel == 'http://www.wikidata.org/entity/Q1985786' then calendario = 'juliano' mostrarCalendario = '<sup>juliano</sup>' else calendario = 'gregoriano' end -- Informar el enlace utilizado en la función enlazar. OJO: No debe definirse como local enlace = opciones.enlace if precision == 11 then -- Fecha de la que se conoce el año, el mes y el día if opciones['formatoFecha'] == 'año' then return enlazar(annoSinSigno) .. mostrarCalendario .. era -- Devolver solo el año else return Fechas.Fecha({dia,mes,annoConSigno;enlace=opciones.enlace;calendario=calendario;['mayúscula']=opciones['mayúscula']}) end elseif precision == 10 then -- Fecha de la que se conoce el año y el mes if opciones['formatoFecha'] == 'año' then return enlazar(annoSinSigno) .. mostrarCalendario .. era -- Devolver solo el año else return Fechas.Fecha({'',mes,annoConSigno;enlace=opciones.enlace;calendario=calendario;['mayúscula']=opciones['mayúscula']}) end elseif precision == 9 then -- Fecha de la que se conoce el año return Fechas.Fecha({'','',annoConSigno;enlace=opciones.enlace;calendario=calendario;['mayúscula']=opciones['mayúscula']}) elseif precision == 8 then -- Fecha de la que se conoce la década local decada = math.floor(annoSinSigno/10)*10 return enlazar('años '.. decada .. era) .. mostrarCalendario elseif precision == 7 then -- Fecha de la que se conoce el siglo --Ejemplos: -- Eleno de Céspedes +1600-00-00T00:00:00Z --> siglo XVI -- Margarita Armand Ugón +1901-00-00T00:00:00Z --> siglo XX -- Aéropo I -0700-01-01T00:00:00Z --> siglo VII a. C. -- -0600-01-01T00:00:00Z --> siglo VI a. C. local siglo = Romanos(math.floor((annoSinSigno - 1)/100) + 1) if opciones['mayúscula'] == 'sí' then return enlazar('Siglo ' .. siglo .. era) .. mostrarCalendario else return enlazar('siglo ' .. siglo .. era) .. mostrarCalendario end elseif precision == 6 then -- Fecha de la que se conoce el milenio local milenio = Romanos(math.floor(annoSinSigno/1000)) return enlazar(milenio .. ' milenio'.. era).. mostrarCalendario elseif precision == 5 then -- Fecha de la que se conoce 10 000 años local milenio = Romanos(math.floor(annoSinSigno/1000)) return enlazar(milenio .. ' milenio'.. era) elseif precision == 4 then -- Fecha de la que se conoce 100 000 años local milenio = Romanos(math.floor(annoSinSigno/1000)) return enlazar(milenio.. ' milenio'.. era) elseif precision == 3 then -- Fecha de la que se conoce los millones de años return math.floor(annoSinSigno/1000000) .. ' millones de años' .. era elseif precision == 2 then -- Fecha de la que se conoce los 10 millones de años return math.floor(annoSinSigno/1000000) .. ' millones de años' .. era elseif precision == 1 then -- Fecha de la que se conoce los 100 millones de años return math.floor(annoSinSigno/1000000) .. ' millones de años' .. era else return "<span class=error>Tipo de dato desconocido.</span>" end end function p.FormateaFechaHora(fechahora, opciones, calificativos) local idCircunstancia if calificativos and calificativos["P1480"] and -- circunstancias de la referencia calificativos["P1480"][1] and calificativos["P1480"][1]['datavalue'] and calificativos["P1480"][1]['datavalue']['value'] then idCircunstancia = calificativos["P1480"][1]['datavalue']['value']['numeric-id'] if idCircunstancia == 5727902 then -- circa return '[[circa|c.]] ' .. formatear(fechahora, opciones) end end -- Valor por defecto si no se ha sabido formatear usando el calificativo return formatear(fechahora, opciones) end return p
Resumen:
Ten en cuenta que todas las contribuciones a Wiki TVenserio pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase
Wiki TVenserio:Derechos de autor
para más detalles).
¡No uses textos con copyright sin permiso!
Cancelar
Ayuda de edición
(se abre en una ventana nueva)
Plantilla usada en esta página:
Módulo:Wikidata/Fecha/doc
(
editar
)
Activar o desactivar el límite de anchura del contenido