Aller au contenu

« Module:Episode/SGU/Season1 » : différence entre les versions

De Stargate Wiki Sémantique
Contenu supprimé Contenu ajouté
Page créée avec « -- Module:Episode/SGU/Season1 -- Complete data for Stargate Universe Season 1 (episodes 1–20; overall 1–20) -- Conventions: -- * namespace = "Épisode" -- * page_title uses normalized French title; when French parts (1/2, 1/3, 2/3, 3/3, 2/2) are present AND the French titles of the parts are identical, -- page_title and property include ", 1re partie" / ", 2e partie" / ", 3e partie". -- * title_fr uses wiki-style italics; when French parts are identical... »
 
Aucun résumé des modifications
 
(Une version intermédiaire par le même utilisateur non affichée)
Ligne 1 : Ligne 1 :
-- Module:Episode/SGU/Season1
-- Module:Episode/SGU/Season1
-- Complete data for Stargate Universe Season 1 (episodes 1–20; overall 1–20)
-- Stargate Universe — Saison 1 (VF)
-- Conforme au modèle compact fourni (make_aliases + episodes + export)
-- Conventions:
-- * namespace = "Épisode"
-- * page_title uses normalized French title; when French parts (1/2, 1/3, 2/3, 3/3, 2/2) are present AND the French titles of the parts are identical,
-- page_title and property include ", 1re partie" / ", 2e partie" / ", 3e partie".
-- * title_fr uses wiki-style italics; when French parts are identical, title_fr includes "1{{re}} partie", "2{{e}} partie", "3{{e}} partie".
-- * title_vo uses quoted original title; when VO parts are identical, title_vo includes ", Part 1" / ", Part 2" / ", Part 3".
-- Note: colons in VO multi-part titles have been replaced by commas and quotes are only around the base title.
-- * aliases are lowercase, accents removed, apostrophes removed; VF aliases replace "1 2"/"1 3" by "1re partie", "2 2"/"2 3" by "2e partie", "3 3" by "3e partie".
-- * VO aliases use "part 1" / "part 2" / "part 3" for multi-part VO titles.
-- * For Part 1 episodes with identical French titles, standalone normalized VF and VO aliases are added.


local season = {}
local S1 = {}


----------------------------------------------------------------------
------------------------------------------------------------
-- Fonction utilitaire interne pour générer les alias
-- S01E01 (VF: Air : 1re partie -- VO: Air : Part 1)
------------------------------------------------------------
season["SGU-S01E01"] = {
local function make_aliases(id, title_fr, title_vo, episode)
id = "SGU-S01E01",
namespace = "Épisode",
local a = {}
page_title = "Air, 1re partie",
title_fr = "''Air'', 1{{re}} partie",
title_vo = "\"Air\", Part 1",
season = 1,
episode = 1,
property = "Air, 1re partie",
aliases = {
"sgu s01e01",
"sgu 101",
"sgu 1x01",
"air 1re partie",
"air part 1",
-- standalone normalized aliases for Part 1
"air",
},
}


-- Alias bruts VF / VO
----------------------------------------------------------------------
table.insert(a, title_fr)
-- S01E02 (VF: Air : 2e partie -- VO: Air : Part 2)
table.insert(a, title_vo)
season["SGU-S01E02"] = {
id = "SGU-S01E02",
namespace = "Épisode",
page_title = "Air, 2e partie",
title_fr = "''Air'', 2{{e}} partie",
title_vo = "\"Air\", Part 2",
season = 1,
episode = 2,
property = "Air, 2e partie",
aliases = {
"sgu s01e02",
"sgu 102",
"sgu 1x02",
"air 2e partie",
"air part 2",
},
}


-- Alias techniques
----------------------------------------------------------------------
table.insert(a, id)
-- S01E03 (VF: Air : 3e partie -- VO: Air : Part 3)
table.insert(a, episode)
season["SGU-S01E03"] = {
id = "SGU-S01E03",
namespace = "Épisode",
page_title = "Air, 3e partie",
title_fr = "''Air'', 3{{e}} partie",
title_vo = "\"Air\", Part 3",
season = 1,
episode = 3,
property = "Air, 3e partie",
aliases = {
"sgu s01e03",
"sgu 103",
"sgu 1x03",
"air 3e partie",
"air part 3",
},
}


-- Variantes usuelles
----------------------------------------------------------------------
table.insert(a, id:gsub("-", " "))
-- S01E04 (VF: Ombre et Lumière : 1re partie -- VO: Darkness)
table.insert(a, id:gsub("S(%d%d)E(%d%d)", "%1x%2"))
season["SGU-S01E04"] = {
id = "SGU-S01E04",
namespace = "Épisode",
page_title = "Ombre et Lumière, 1re partie",
title_fr = "''Ombre et Lumière'', 1{{re}} partie",
title_vo = "\"Darkness\"",
season = 1,
episode = 4,
property = "Ombre et Lumière, 1re partie",
aliases = {
"sgu s01e04",
"sgu 104",
"sgu 1x04",
"ombre et lumiere 1re partie",
-- standalone normalized aliases for Part 1
"ombre et lumiere",
"darkness",
},
}


return a
----------------------------------------------------------------------
end
-- S01E05 (VF: Ombre et Lumière : 2e partie -- VO: Light)
season["SGU-S01E05"] = {
id = "SGU-S01E05",
namespace = "Épisode",
page_title = "Ombre et Lumière, 2e partie",
title_fr = "''Ombre et Lumière'', 2{{e}} partie",
title_vo = "\"Light\"",
season = 1,
episode = 5,
property = "Ombre et Lumière, 2e partie",
aliases = {
"sgu s01e05",
"sgu 105",
"sgu 1x05",
"ombre et lumiere 2e partie",
"light",
},
}


----------------------------------------------------------------------
------------------------------------------------------------
-- Données des épisodes SGU Saison 1 (selon fichier joint)
-- S01E06 (VF: Eau -- VO: Water)
------------------------------------------------------------
season["SGU-S01E06"] = {
id = "SGU-S01E06",
namespace = "Épisode",
page_title = "Eau",
title_fr = "''Eau''",
title_vo = "\"Water\"",
season = 1,
episode = 6,
property = "Eau",
aliases = {
"sgu s01e06",
"sgu 106",
"sgu 1x06",
"eau",
"water",
},
}


local episodes = {
----------------------------------------------------------------------
{
-- S01E07 (VF: Terre -- VO: Earth)
id = "SGU-S01E01",
season["SGU-S01E07"] = {
id = "SGU-S01E07",
series = "SGU",
namespace = "Épisode",
season = 1,
page_title = "Terre",
episode = 1,
title_fr = "''Terre''",
namespace = "Épisode",
title_vo = "\"Earth\"",
page_title = "Air, 1re partie",
season = 1,
title_fr = "Air, 1{{re}} partie",
episode = 7,
title_vo = "Air, Part 1",
aliases = make_aliases("SGU-S01E01", "Air 1re partie", "Air part 1", "1")
property = "Terre",
aliases = {
"sgu s01e07",
"sgu 107",
"sgu 1x07",
"terre",
"earth",
},
},
{
}
id = "SGU-S01E02",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E08 (VF: Les Naufragés du temps -- VO: Time)
episode = 2,
season["SGU-S01E08"] = {
id = "SGU-S01E08",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Air, 2e partie",
page_title = "Les Naufragés du temps",
title_fr = "Air, 2{{e}} partie",
title_fr = "''Les Naufragés du temps''",
title_vo = "Air, Part 2",
aliases = make_aliases("SGU-S01E02", "Air 2e partie", "Air part 2", "2")
title_vo = "\"Time\"",
season = 1,
episode = 8,
property = "Les Naufragés du temps",
aliases = {
"sgu s01e08",
"sgu 108",
"sgu 1x08",
"les naufrages du temps",
"time",
},
},
{
}
id = "SGU-S01E03",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E09 (VF: Un nouvel espoir -- VO: Life)
episode = 3,
season["SGU-S01E09"] = {
id = "SGU-S01E09",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Air, 3e partie",
page_title = "Un nouvel espoir",
title_fr = "Air, 3{{e}} partie",
title_fr = "''Un nouvel espoir''",
title_vo = "Air, Part 3",
aliases = make_aliases("SGU-S01E03", "Air 3e partie", "Air part 3", "3")
title_vo = "\"Life\"",
season = 1,
episode = 9,
property = "Un nouvel espoir",
aliases = {
"sgu s01e09",
"sgu 109",
"sgu 1x09",
"un nouvel espoir",
"life",
},
},
{
}
id = "SGU-S01E04",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E10 (VF: Soupçons -- VO: Justice)
episode = 4,
season["SGU-S01E10"] = {
id = "SGU-S01E10",
namespace = "Épisode",
page_title = "Ombre et Lumière, 1re partie",
namespace = "Épisode",
title_fr = "Ombre et Lumière, 1{{re}} partie",
page_title = "Soupçons",
title_fr = "''Soupçons''",
title_vo = "Darkness",
aliases = make_aliases("SGU-S01E04", "Ombre et lumiere 1re partie", "Darkness", "4")
title_vo = "\"Justice\"",
season = 1,
episode = 10,
property = "Soupçons",
aliases = {
"sgu s01e10",
"sgu 110",
"sgu 1x10",
"soupcons",
"justice",
},
},
{
}
id = "SGU-S01E05",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E11 (VF: Premier Contact -- VO: Space)
episode = 5,
season["SGU-S01E11"] = {
id = "SGU-S01E11",
namespace = "Épisode",
page_title = "Ombre et Lumière, 2e partie",
namespace = "Épisode",
title_fr = "Ombre et Lumière, 2{{e}} partie",
page_title = "Premier Contact",
title_fr = "''Premier Contact''",
title_vo = "Light",
aliases = make_aliases("SGU-S01E05", "Ombre et lumiere 2e partie", "Light", "5")
title_vo = "\"Space\"",
season = 1,
episode = 11,
property = "Premier Contact",
aliases = {
"sgu s01e11",
"sgu 111",
"sgu 1x11",
"premier contact",
"space",
},
},
{
}
id = "SGU-S01E06",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E12 (VF: Mutinerie -- VO: Divided)
episode = 6,
season["SGU-S01E12"] = {
id = "SGU-S01E12",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Eau",
page_title = "Mutinerie",
title_fr = "Eau",
title_fr = "''Mutinerie''",
title_vo = "Water",
aliases = make_aliases("SGU-S01E06", "Eau", "Water", "6")
title_vo = "\"Divided\"",
season = 1,
episode = 12,
property = "Mutinerie",
aliases = {
"sgu s01e12",
"sgu 112",
"sgu 1x12",
"mutinerie",
"divided",
},
},
{
}
id = "SGU-S01E07",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E13 (VF: Éden -- VO: Faith)
episode = 7,
season["SGU-S01E13"] = {
id = "SGU-S01E13",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Terre",
page_title = "Éden",
title_fr = "Terre",
title_fr = "''Éden''",
title_vo = "Earth",
aliases = make_aliases("SGU-S01E07", "Terre", "Earth", "7")
title_vo = "\"Faith\"",
season = 1,
episode = 13,
property = "Éden",
aliases = {
"sgu s01e13",
"sgu 113",
"sgu 1x13",
"eden",
"faith",
},
},
{
}
id = "SGU-S01E08",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E14 (VF: Regrets éternels -- VO: Human)
episode = 8,
season["SGU-S01E14"] = {
id = "SGU-S01E14",
namespace = "Épisode",
page_title = "Les Naufragés du temps",
namespace = "Épisode",
page_title = "Regrets éternels",
title_fr = "Les Naufragés du temps",
title_fr = "''Regrets éternels''",
title_vo = "Time",
aliases = make_aliases("SGU-S01E08", "Les naufrages du temps", "Time", "8")
title_vo = "\"Human\"",
season = 1,
episode = 14,
property = "Regrets éternels",
aliases = {
"sgu s01e14",
"sgu 114",
"sgu 1x14",
"regrets eternels",
"human",
},
},
{
}
id = "SGU-S01E09",

series = "SGU",
----------------------------------------------------------------------
-- S01E15 (VF: Seuls au monde -- VO: Lost)
season = 1,
episode = 9,
season["SGU-S01E15"] = {
id = "SGU-S01E15",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Un nouvel espoir",
page_title = "Seuls au monde",
title_fr = "Un nouvel espoir",
title_fr = "''Seuls au monde''",
title_vo = "Life",
aliases = make_aliases("SGU-S01E09", "Un nouvel espoir", "Life", "9")
title_vo = "\"Lost\"",
season = 1,
episode = 15,
property = "Seuls au monde",
aliases = {
"sgu s01e15",
"sgu 115",
"sgu 1x15",
"seuls au monde",
"lost",
},
},
{
}
id = "SGU-S01E10",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E16 (VF: À la dérive -- VO: Sabotage)
episode = 10,
season["SGU-S01E16"] = {
id = "SGU-S01E16",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Soupçons",
page_title = la dérive",
title_fr = "Soupçons",
title_fr = "''À la dérive''",
title_vo = "Justice",
aliases = make_aliases("SGU-S01E10", "Soupcons", "Justice", "10")
title_vo = "\"Sabotage\"",
season = 1,
episode = 16,
property = "À la dérive",
aliases = {
"sgu s01e16",
"sgu 116",
"sgu 1x16",
"a la derive",
"sabotage",
},
},
{
}
id = "SGU-S01E11",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E17 (VF: La Somme de toutes les peurs -- VO: Pain)
episode = 11,
season["SGU-S01E17"] = {
id = "SGU-S01E17",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Premier Contact",
page_title = "La Somme de toutes les peurs",
title_fr = "Premier Contact",
title_vo = "Space",
title_fr = "''La Somme de toutes les peurs''",
aliases = make_aliases("SGU-S01E11", "Premier contact", "Space", "11")
title_vo = "\"Pain\"",
season = 1,
episode = 17,
property = "La Somme de toutes les peurs",
aliases = {
"sgu s01e17",
"sgu 117",
"sgu 1x17",
"la somme de toutes les peurs",
"pain",
},
},
{
}
id = "SGU-S01E12",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E18 (VF: Ennemi intérieur -- VO: Subversion)
episode = 12,
season["SGU-S01E18"] = {
id = "SGU-S01E18",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Mutinerie",
page_title = "Ennemi intérieur",
title_fr = "Mutinerie",
title_fr = "''Ennemi intérieur''",
title_vo = "Divided",
aliases = make_aliases("SGU-S01E12", "Mutinerie", "Divided", "12")
title_vo = "\"Subversion\"",
season = 1,
episode = 18,
property = "Ennemi intérieur",
aliases = {
"sgu s01e18",
"sgu 118",
"sgu 1x18",
"ennemi interieur",
"subversion",
},
},
{
}
id = "SGU-S01E13",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E19 (VF: L'Assaut : 1re partie -- VO: Incursion : Part 1)
episode = 13,
season["SGU-S01E19"] = {
id = "SGU-S01E19",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Éden",
title_fr = "Éden",
page_title = "L'Assaut, 1re partie",
title_fr = "''L'Assaut'', 1{{re}} partie",
title_vo = "Faith",
title_vo = "\"Incursion\", Part 1",
aliases = make_aliases("SGU-S01E13", "Eden", "Faith", "13")
season = 1,
episode = 19,
property = "L'Assaut, 1re partie",
aliases = {
"sgu s01e19",
"sgu 119",
"sgu 1x19",
"lassaut 1re partie",
"incursion part 1",
-- standalone normalized aliases for Part 1
"lassaut",
"incursion",
},
},
{
}
id = "SGU-S01E14",

series = "SGU",
----------------------------------------------------------------------
season = 1,
-- S01E20 (VF: L'Assaut : 2e partie -- VO: Incursion : Part 2)
episode = 14,
season["SGU-S01E20"] = {
id = "SGU-S01E20",
namespace = "Épisode",
namespace = "Épisode",
page_title = "Regrets éternels",
page_title = "L'Assaut, 2e partie",
title_fr = "Regrets éternels",
title_fr = "''L'Assaut'', 2{{e}} partie",
title_vo = "Human",
aliases = make_aliases("SGU-S01E14", "Regrets eternels", "Human", "14")
title_vo = "\"Incursion\", Part 2",
season = 1,
},
{
episode = 20,
property = "L'Assaut, 2e partie",
id = "SGU-S01E15",
aliases = {
series = "SGU",
"sgu s01e20",
season = 1,
"sgu 120",
episode = 15,
"sgu 1x20",
namespace = "Épisode",
"lassaut 2e partie",
page_title = "Seuls au monde",
"incursion part 2",
title_fr = "Seuls au monde",
title_vo = "Lost",
aliases = make_aliases("SGU-S01E15", "Seuls au monde", "Lost", "15")
},
{
id = "SGU-S01E16",
series = "SGU",
season = 1,
episode = 16,
namespace = "Épisode",
page_title = "À la dérive",
title_fr = "À la dérive",
title_vo = "Sabotage",
aliases = make_aliases("SGU-S01E16", "A la derive", "Sabotage", "16")
},
{
id = "SGU-S01E17",
series = "SGU",
season = 1,
episode = 17,
namespace = "Épisode",
page_title = "La Somme de toutes les peurs",
title_fr = "La Somme de toutes les peurs",
title_vo = "Pain",
aliases = make_aliases("SGU-S01E17", "La somme de toutes les peurs", "Pain", "17")
},
{
id = "SGU-S01E18",
series = "SGU",
season = 1,
episode = 18,
namespace = "Épisode",
page_title = "Ennemi intérieur",
title_fr = "Ennemi intérieur",
title_vo = "Subversion",
aliases = make_aliases("SGU-S01E18", "Ennemi interieur", "Subversion", "18")
},
{
id = "SGU-S01E19",
series = "SGU",
season = 1,
episode = 19,
namespace = "Épisode",
page_title = "L'Assaut, 1re partie",
title_fr = "L'Assaut, 1{{re}} partie",
title_vo = "Incursion, Part 1",
aliases = make_aliases("SGU-S01E19", "Lassaut 1re partie", "Incursion part 1", "19")
},
{
id = "SGU-S01E20",
series = "SGU",
season = 1,
episode = 20,
namespace = "Épisode",
page_title = "L'Assaut, 2e partie",
title_fr = "L'Assaut, 2{{e}} partie",
title_vo = "Incursion, Part 2",
aliases = make_aliases("SGU-S01E20", "Lassaut 2e partie", "Incursion part 2", "20")
},
},
}
}


----------------------------------------------------------------------
------------------------------------------------------------
-- Export des épisodes
-- Alias → ID mapping (lowercased, accents removed, apostrophes removed)
------------------------------------------------------------
-- VF aliases: "1 2"/"1 3" replaced by "1re partie", "2 2"/"2 3" by "2e partie", "3 3" by "3e partie"
for _, ep in ipairs(episodes) do
-- VO aliases: use "part 1" / "part 2" / "part 3" for multi-part VO titles
S1[ep.id] = ep
----------------------------------------------------------------------
end

season["sgu s01e01"] = "SGU-S01E01"
season["sgu 101"] = "SGU-S01E01"
season["sgu 1x01"] = "SGU-S01E01"
season["air 1re partie"] = "SGU-S01E01"
season["air part 1"] = "SGU-S01E01"
season["air"] = "SGU-S01E01"

season["sgu s01e02"] = "SGU-S01E02"
season["sgu 102"] = "SGU-S01E02"
season["sgu 1x02"] = "SGU-S01E02"
season["air 2e partie"] = "SGU-S01E02"
season["air part 2"] = "SGU-S01E02"

season["sgu s01e03"] = "SGU-S01E03"
season["sgu 103"] = "SGU-S01E03"
season["sgu 1x03"] = "SGU-S01E03"
season["air 3e partie"] = "SGU-S01E03"
season["air part 3"] = "SGU-S01E03"

season["sgu s01e04"] = "SGU-S01E04"
season["sgu 104"] = "SGU-S01E04"
season["sgu 1x04"] = "SGU-S01E04"
season["ombre et lumiere 1re partie"] = "SGU-S01E04"
season["ombre et lumiere"] = "SGU-S01E04"
season["darkness"] = "SGU-S01E04"

season["sgu s01e05"] = "SGU-S01E05"
season["sgu 105"] = "SGU-S01E05"
season["sgu 1x05"] = "SGU-S01E05"
season["ombre et lumiere 2e partie"] = "SGU-S01E05"
season["light"] = "SGU-S01E05"

season["sgu s01e06"] = "SGU-S01E06"
season["sgu 106"] = "SGU-S01E06"
season["sgu 1x06"] = "SGU-S01E06"
season["eau"] = "SGU-S01E06"
season["water"] = "SGU-S01E06"

season["sgu s01e07"] = "SGU-S01E07"
season["sgu 107"] = "SGU-S01E07"
season["sgu 1x07"] = "SGU-S01E07"
season["terre"] = "SGU-S01E07"
season["earth"] = "SGU-S01E07"

season["sgu s01e08"] = "SGU-S01E08"
season["sgu 108"] = "SGU-S01E08"
season["sgu 1x08"] = "SGU-S01E08"
season["les naufrages du temps"] = "SGU-S01E08"
season["time"] = "SGU-S01E08"

season["sgu s01e09"] = "SGU-S01E09"
season["sgu 109"] = "SGU-S01E09"
season["sgu 1x09"] = "SGU-S01E09"
season["un nouvel espoir"] = "SGU-S01E09"
season["life"] = "SGU-S01E09"

season["sgu s01e10"] = "SGU-S01E10"
season["sgu 110"] = "SGU-S01E10"
season["sgu 1x10"] = "SGU-S01E10"
season["soupcons"] = "SGU-S01E10"
season["justice"] = "SGU-S01E10"

season["sgu s01e11"] = "SGU-S01E11"
season["sgu 111"] = "SGU-S01E11"
season["sgu 1x11"] = "SGU-S01E11"
season["premier contact"] = "SGU-S01E11"
season["space"] = "SGU-S01E11"

season["sgu s01e12"] = "SGU-S01E12"
season["sgu 112"] = "SGU-S01E12"
season["sgu 1x12"] = "SGU-S01E12"
season["mutinerie"] = "SGU-S01E12"
season["divided"] = "SGU-S01E12"

season["sgu s01e13"] = "SGU-S01E13"
season["sgu 113"] = "SGU-S01E13"
season["sgu 1x13"] = "SGU-S01E13"
season["eden"] = "SGU-S01E13"
season["faith"] = "SGU-S01E13"

season["sgu s01e14"] = "SGU-S01E14"
season["sgu 114"] = "SGU-S01E14"
season["sgu 1x14"] = "SGU-S01E14"
season["regrets eternels"] = "SGU-S01E14"
season["human"] = "SGU-S01E14"

season["sgu s01e15"] = "SGU-S01E15"
season["sgu 115"] = "SGU-S01E15"
season["sgu 1x15"] = "SGU-S01E15"
season["seuls au monde"] = "SGU-S01E15"
season["lost"] = "SGU-S01E15"

season["sgu s01e16"] = "SGU-S01E16"
season["sgu 116"] = "SGU-S01E16"
season["sgu 1x16"] = "SGU-S01E16"
season["a la derive"] = "SGU-S01E16"
season["sabotage"] = "SGU-S01E16"

season["sgu s01e17"] = "SGU-S01E17"
season["sgu 117"] = "SGU-S01E17"
season["sgu 1x17"] = "SGU-S01E17"
season["la somme de toutes les peurs"] = "SGU-S01E17"
season["pain"] = "SGU-S01E17"

season["sgu s01e18"] = "SGU-S01E18"
season["sgu 118"] = "SGU-S01E18"
season["sgu 1x18"] = "SGU-S01E18"
season["ennemi interieur"] = "SGU-S01E18"
season["subversion"] = "SGU-S01E18"

season["sgu s01e19"] = "SGU-S01E19"
season["sgu 119"] = "SGU-S01E19"
season["sgu 1x19"] = "SGU-S01E19"
season["lassaut 1re partie"] = "SGU-S01E19"
season["incursion part 1"] = "SGU-S01E19"
season["lassaut"] = "SGU-S01E19"
season["incursion"] = "SGU-S01E19"

season["sgu s01e20"] = "SGU-S01E20"
season["sgu 120"] = "SGU-S01E20"
season["sgu 1x20"] = "SGU-S01E20"
season["lassaut 2e partie"] = "SGU-S01E20"
season["incursion part 2"] = "SGU-S01E20"

----------------------------------------------------------------------
-- Return table
----------------------------------------------------------------------


return season
return S1

Dernière version du 1 juin 2026 à 21:15

Documentation icon Documentation module[créer]
-- Module:Episode/SGU/Season1
-- Stargate Universe — Saison 1 (VF)
-- Conforme au modèle compact fourni (make_aliases + episodes + export)

local S1 = {}

------------------------------------------------------------
-- Fonction utilitaire interne pour générer les alias
------------------------------------------------------------
local function make_aliases(id, title_fr, title_vo, episode)
    local a = {}

    -- Alias bruts VF / VO
    table.insert(a, title_fr)
    table.insert(a, title_vo)

    -- Alias techniques
    table.insert(a, id)
    table.insert(a, episode)

    -- Variantes usuelles
    table.insert(a, id:gsub("-", " "))
    table.insert(a, id:gsub("S(%d%d)E(%d%d)", "%1x%2"))

    return a
end

------------------------------------------------------------
-- Données des épisodes SGU Saison 1 (selon fichier joint)
------------------------------------------------------------

local episodes = {
    {
        id = "SGU-S01E01",
        series = "SGU",
        season = 1,
        episode = 1,
        namespace = "Épisode",
        page_title = "Air, 1re partie",
        title_fr = "Air, 1{{re}} partie",
        title_vo = "Air, Part 1",
        aliases = make_aliases("SGU-S01E01", "Air 1re partie", "Air part 1", "1")
    },
    {
        id = "SGU-S01E02",
        series = "SGU",
        season = 1,
        episode = 2,
        namespace = "Épisode",
        page_title = "Air, 2e partie",
        title_fr = "Air, 2{{e}} partie",
        title_vo = "Air, Part 2",
        aliases = make_aliases("SGU-S01E02", "Air 2e partie", "Air part 2", "2")
    },
    {
        id = "SGU-S01E03",
        series = "SGU",
        season = 1,
        episode = 3,
        namespace = "Épisode",
        page_title = "Air, 3e partie",
        title_fr = "Air, 3{{e}} partie",
        title_vo = "Air, Part 3",
        aliases = make_aliases("SGU-S01E03", "Air 3e partie", "Air part 3", "3")
    },
    {
        id = "SGU-S01E04",
        series = "SGU",
        season = 1,
        episode = 4,
        namespace = "Épisode",
        page_title = "Ombre et Lumière, 1re partie",
        title_fr = "Ombre et Lumière, 1{{re}} partie",
        title_vo = "Darkness",
        aliases = make_aliases("SGU-S01E04", "Ombre et lumiere 1re partie", "Darkness", "4")
    },
    {
        id = "SGU-S01E05",
        series = "SGU",
        season = 1,
       episode = 5,
        namespace = "Épisode",
        page_title = "Ombre et Lumière, 2e partie",
        title_fr = "Ombre et Lumière, 2{{e}} partie",
        title_vo = "Light",
        aliases = make_aliases("SGU-S01E05", "Ombre et lumiere 2e partie", "Light", "5")
    },
    {
        id = "SGU-S01E06",
        series = "SGU",
        season = 1,
        episode = 6,
        namespace = "Épisode",
        page_title = "Eau",
        title_fr = "Eau",
        title_vo = "Water",
        aliases = make_aliases("SGU-S01E06", "Eau", "Water", "6")
    },
    {
        id = "SGU-S01E07",
        series = "SGU",
        season = 1,
        episode = 7,
        namespace = "Épisode",
        page_title = "Terre",
        title_fr = "Terre",
        title_vo = "Earth",
        aliases = make_aliases("SGU-S01E07", "Terre", "Earth", "7")
    },
    {
        id = "SGU-S01E08",
        series = "SGU",
        season = 1,
        episode = 8,
        namespace = "Épisode",
        page_title = "Les Naufragés du temps",
        title_fr = "Les Naufragés du temps",
        title_vo = "Time",
        aliases = make_aliases("SGU-S01E08", "Les naufrages du temps", "Time", "8")
    },
    {
        id = "SGU-S01E09",
        series = "SGU",
        season = 1,
        episode = 9,
        namespace = "Épisode",
        page_title = "Un nouvel espoir",
        title_fr = "Un nouvel espoir",
        title_vo = "Life",
        aliases = make_aliases("SGU-S01E09", "Un nouvel espoir", "Life", "9")
    },
    {
        id = "SGU-S01E10",
        series = "SGU",
        season = 1,
        episode = 10,
        namespace = "Épisode",
        page_title = "Soupçons",
        title_fr = "Soupçons",
        title_vo = "Justice",
        aliases = make_aliases("SGU-S01E10", "Soupcons", "Justice", "10")
    },
    {
        id = "SGU-S01E11",
        series = "SGU",
        season = 1,
        episode = 11,
        namespace = "Épisode",
        page_title = "Premier Contact",
        title_fr = "Premier Contact",
        title_vo = "Space",
        aliases = make_aliases("SGU-S01E11", "Premier contact", "Space", "11")
    },
    {
        id = "SGU-S01E12",
        series = "SGU",
        season = 1,
        episode = 12,
        namespace = "Épisode",
        page_title = "Mutinerie",
        title_fr = "Mutinerie",
        title_vo = "Divided",
        aliases = make_aliases("SGU-S01E12", "Mutinerie", "Divided", "12")
    },
    {
        id = "SGU-S01E13",
        series = "SGU",
        season = 1,
        episode = 13,
        namespace = "Épisode",
        page_title = "Éden",
        title_fr = "Éden",
        title_vo = "Faith",
        aliases = make_aliases("SGU-S01E13", "Eden", "Faith", "13")
    },
    {
        id = "SGU-S01E14",
        series = "SGU",
        season = 1,
        episode = 14,
        namespace = "Épisode",
        page_title = "Regrets éternels",
        title_fr = "Regrets éternels",
        title_vo = "Human",
        aliases = make_aliases("SGU-S01E14", "Regrets eternels", "Human", "14")
    },
    {
        id = "SGU-S01E15",
        series = "SGU",
        season = 1,
        episode = 15,
        namespace = "Épisode",
        page_title = "Seuls au monde",
        title_fr = "Seuls au monde",
        title_vo = "Lost",
        aliases = make_aliases("SGU-S01E15", "Seuls au monde", "Lost", "15")
    },
    {
        id = "SGU-S01E16",
        series = "SGU",
        season = 1,
        episode = 16,
        namespace = "Épisode",
        page_title = "À la dérive",
        title_fr = "À la dérive",
        title_vo = "Sabotage",
        aliases = make_aliases("SGU-S01E16", "A la derive", "Sabotage", "16")
    },
    {
        id = "SGU-S01E17",
        series = "SGU",
        season = 1,
        episode = 17,
        namespace = "Épisode",
        page_title = "La Somme de toutes les peurs",
        title_fr = "La Somme de toutes les peurs",
        title_vo = "Pain",
        aliases = make_aliases("SGU-S01E17", "La somme de toutes les peurs", "Pain", "17")
    },
    {
        id = "SGU-S01E18",
        series = "SGU",
        season = 1,
        episode = 18,
        namespace = "Épisode",
        page_title = "Ennemi intérieur",
        title_fr = "Ennemi intérieur",
        title_vo = "Subversion",
        aliases = make_aliases("SGU-S01E18", "Ennemi interieur", "Subversion", "18")
    },
    {
        id = "SGU-S01E19",
        series = "SGU",
        season = 1,
        episode = 19,
        namespace = "Épisode",
        page_title = "L'Assaut, 1re partie",
        title_fr = "L'Assaut, 1{{re}} partie",
        title_vo = "Incursion, Part 1",
        aliases = make_aliases("SGU-S01E19", "Lassaut 1re partie", "Incursion part 1", "19")
    },
    {
        id = "SGU-S01E20",
        series = "SGU",
        season = 1,
        episode = 20,
        namespace = "Épisode",
        page_title = "L'Assaut, 2e partie",
        title_fr = "L'Assaut, 2{{e}} partie",
        title_vo = "Incursion, Part 2",
        aliases = make_aliases("SGU-S01E20", "Lassaut 2e partie", "Incursion part 2", "20")
    },
}

------------------------------------------------------------
-- Export des épisodes
------------------------------------------------------------
for _, ep in ipairs(episodes) do
    S1[ep.id] = ep
end

return S1