Module:Setlist/Songs: Difference between revisions

Jump to navigation Jump to search
no edit summary
mNo edit summary
Tag: Reverted
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 7: Line 7:
     ["March To The Sea"] = {"Twenty One Pilots"},
     ["March To The Sea"] = {"Twenty One Pilots"},
     ["Johnny Boy"] = {"Twenty One Pilots"},
     ["Johnny Boy"] = {"Twenty One Pilots"},
     ["Oh Ms Believer"] = {"Twenty One Pilots"},
     ["Oh, Ms. Believer"] = {"Twenty One Pilots"},
     ["Air Catcher"] = {"Twenty One Pilots"},
     ["Air Catcher"] = {"Twenty One Pilots"},
     ["Trapdoor"] = {"Twenty One Pilots"},
     ["Trapdoor"] = {"Twenty One Pilots"},
Line 88: Line 88:
     ["Paladin Strait"] = {"Clancy"},
     ["Paladin Strait"] = {"Clancy"},
     ["Time To Say Goodbye"] = {"Johnny Boy"}
     ["Time To Say Goodbye"] = {"Johnny Boy"}
    -- ... и т.д.
}
}
-- Определяем цвета альбомов
-- Определяем цвета альбомов
local albumColors = {
local albumColors = {
Line 99: Line 99:
     ["Scaled And Icy"] = "#b3e7fa",
     ["Scaled And Icy"] = "#b3e7fa",
     ["Johnny Boy"] = "#CECECE",
     ["Johnny Boy"] = "#CECECE",
    ["Non-Album"] = "white",
}
}
-- Определяем ссылки для альбомов
-- Определяем ссылки для альбомов
local albumLinks = {
local albumLinks = {
     ["Twenty One Pilots"] = "Twenty One Pilots (album)",
     ["Twenty One Pilots"] = "Twenty One Pilots (album)",
     ["Regional at Best"] = "Regional at Best",
     ["Regional At Best"] = "Regional at Best",
     ["Vessel"] = "Vessel (album)",
     ["Vessel"] = "Vessel",
     ["Blurryface"] = "Blurryface (album)",
     ["Blurryface"] = "Blurryface (album)",
     ["Trench"] = "Trench (album)",
     ["Trench"] = "Trench (album)",
Line 111: Line 111:
     ["Johnny Boy (EP)"] = "Johnny Boy",
     ["Johnny Boy (EP)"] = "Johnny Boy",
}
}
-- Функция для получения таблицы песен в зависимости от даты
local function getSongsForDate(date)
    -- Дата выхода Vessel: 8 января 2013 года
    local vesselReleaseDate = os.time{year=2013, month=1, day=8}
    local modifiedSongs = {}
    -- Проходим по всем песням в исходной таблице
    for song, albums in pairs(songs) do
        if #albums == 1 then
            -- Если песня в одном альбоме, оставляем как есть
            modifiedSongs[song] = albums
        elseif #albums == 2 and albums[1] == "Regional At Best" and albums[2] == "Vessel" then
            -- Если песня в обоих альбомах, выбираем альбом в зависимости от даты
            if date < vesselReleaseDate then
                modifiedSongs[song] = {"Regional At Best"}
            else
                modifiedSongs[song] = {"Vessel"}
            end
        else
            -- Для всех остальных случаев (хотя в текущих данных таких нет)
            modifiedSongs[song] = albums
        end
    end
    return modifiedSongs
end
-- Возвращаем модуль с таблицами и функцией
return {
return {
     songs = songs,
     songs = songs,
     albumColors = albumColors,
     albumColors = albumColors,
     albumLinks = albumLinks,
     albumLinks = albumLinks,
    getSongsForDate = getSongsForDate
}
}

Navigation menu