FANDOM


local p = {}
 
local navMap = {
    {
        "라이트 노벨",
        {        
            { 1, "시리즈 소개", "라이트 노벨" },
            { 2, "제1권", "라이트 노벨/1권" },
            { 3, "제2권", "라이트 노벨/2권" },
            { 4, "제3권", "라이트 노벨/3권" },
            { 5, "제4권", "라이트 노벨/4권" },
            { 6, "제5권", "라이트 노벨/5권" },
            { 7, "제6권", "라이트 노벨/6권" },
            { 8, "제7권", "라이트 노벨/7권" },
            { 9, "제8권", "라이트 노벨/8권" },
            { 10, "제9권", "라이트 노벨/9권" },
            { 11, "제10권", "라이트 노벨/10권" },
            { 12, "제11권", "라이트 노벨/11권" },
            { 13, "제12권", "라이트 노벨/12권" }
        }
    },
    {
        "애니메이션",
        {  
            { 1, "시리즈 소개", "애니메이션" },
            { 14, "제1기", "애니메이션 1기" },
            { 15, "제2기", "애니메이션 2기" },
            { 16, "Blu-ray & DVD", "애니메이션#Blu-ray, DVD" },
            { 17, "주제가 & 캐릭터송", "애니메이션#음악" }
            --{ 18, "관련 이벤트", "애니메이션" },
            --{ 19, "콜라보레이션", "애니메이션" }
        }
    },
    {
        "게임",
        {  
            { 1, "시리즈 소개", "게임" },
            { 20, "내 여동생 포터블", "내 여동생이 이렇게 귀여울 리가 없어 포터블" },
            { 21, "여동생과 사랑하자♪", "내 여동생 메이커 EX 여동생과 사랑하자♪ 포터블" },
            { 22, "내 여동생 포터블 속편", "내 여동생이 이렇게 귀여울 리가 없어 포터블이 계속될 리가 없어" },
            { 23, "내 여동생 HappyenD★", "내 여동생이 이렇게 귀여울 리가 없어 HappyenD★" }
        }
    },
    {
        "코믹스",
        {  
            { 1, "시리즈 소개", "코믹스" },
            { 2, "제1권", "코믹스/1권" },
            { 3, "제2권", "코믹스/2권" },
            { 4, "제3권", "코믹스/3권" },
            { 5, "제4권", "코믹스/4권" },
            { 24, "스핀오프 제1권", "내 후배가 이렇게 귀여울 리가 없어/1권" },
            { 25, "스핀오프 제2권", "내 후배가 이렇게 귀여울 리가 없어/2권" },
            { 26, "스핀오프 제3권", "내 후배가 이렇게 귀여울 리가 없어/3권" }
            --{ 27, "코믹 앤솔로지", "코믹 앤솔로지" },
            --{ 28, "4컷 앤솔로지", "4컷 앤솔로지" }
        }
    },
    {
        "드라마",
        {  
            { 29, "드라마 CD", "드라마 CD" },
            { 30, "오디오 드라마", "오디오 드라마" }
        }
    },
    {
        "라디오",
        {  
            { 1, "시리즈 소개", "라디오" },
            { 14, "제1기", "내 여동생이 (라디오에서도) 이렇게 귀여울 리가 없어" },
            { 15, "제2기", "내 여동생이 (라디오에서도) 이렇게 귀여울 리가 없어." }
            --{ 31, "라디오 CD", "" }
        }
    },
    {
        "캐릭터",
        {  
            { 32, "캐릭터 소개", ":분류:캐릭터" },
            { 33, "코우사카 키리노", "코우사카 키리노" },
            { 34, "쿠로네코", "쿠로네코" },
            { 35, "사오리 버지나", "사오리 버지나" },
            { 36, "아라가키 아야세", "아라가키 아야세" },
            { 37, "쿠루스 카나코", "쿠루스 카나코" },
            { 38, "타무라 마나미", "타무라 마나미" },
            { 39, "코우사카 쿄스케", "코우사카 쿄스케" }
        }
    },
    {
        "관련 인물",
        {  
            { 40, "후시미 츠카사", "후시미 츠카사" },
            { 41, "칸자키 히로", "칸자키 히로" },
            { 42, "애니메이션 제작진", ":분류:애니메이션 제작진" },
            { 43, "게임 제작진", ":분류:게임 제작진" },
            { 44, "성우진", ":분류:성우" }
        }
    },
    {
        "굿즈",
        {  
            { 45, "공식상품 일람", "굿즈" },
            { 46, "피규어 일람", ":분류:피규어 " }
        }
     }
}
local sections = {
    "히스토리",
    "공식 사이트",
    "게시판",
    "도움말"
}
local categories = {
    [ "라노베" ] = "novel",
    [ "코믹스" ] = "comics",
    [ "애니" ] = "anime",
    [ "게임" ] = "game",
    [ "기타" ] =  "etc"
}
 
-- [[틀:대문/프런트]] 참조
function p.navigation( frame )
 
    local ul = mw.html.create( "ul" )
    local li
    local innerUl
    local innerli
    local innerNavMap
 
    for i = 1, #navMap do
        li = mw.html.create( "li" ):addClass( "nav-item-" .. i )
        ul:node( li )
        li:wikitext( "[[#|" .. navMap[i][1] .. "]]" )
 
        innerUl = mw.html.create( "ul" )
        li:node( innerUl )
 
        innerNavMap = navMap[i][2]
 
        for j = 1, #innerNavMap do
            innerLi = mw.html.create( "li" ):addClass( "subnav-item-" .. innerNavMap[j][1] )
            innerUl:node( innerLi )
            innerLi:wikitext( "[[" .. innerNavMap[j][3] .. "|" .. innerNavMap[j][2] .. "]]" )
        end
    end
 
    return ul:done()
 
end
 
-- [[틀:대문/섹션]] 참조
function p.section( frame )
 
    local title = frame.args[1]
    local linkTo = frame.args[2]
    local index = -1
 
    for i = 1, #sections do
        if title == sections[i] then
            index = i
        end
    end
 
    local container = mw.html.create( "div" ):addClass( "oi-section oi-section-" .. index )
    local head = mw.html.create( "div" ):addClass( "oi-section__head" )
    local body = mw.html.create( "div" ):addClass( "oi-section__body" )
 
    container:node( head ):node( body )
 
    local h2 = mw.html.create( "h2" ):addClass( "sprite-ui text-hide" )
    local append = mw.html.create( "span" ):addClass( "append" )
 
    head:node( h2 ):node( append )
 
    h2:node( title )
 
    if linkTo ~= "" then
        append:wikitext(
            "[[" .. linkTo .. "|<span class=\"oi-more sprite-ui text-hide\">더 보기</span>]]"
        )
    end
 
    body:node( frame:expandTemplate{ title = "대문/" .. title } )
 
    return container:done()
 
end
 
-- [[틀:역사]], [[틀:대문/히스토리]] 참조
function p.history( frame )
    local formatISODate = require( "Module:Date" )._formatISODate
    local category = frame.args["분류"]
 
    local container, timestamp, info, headline, content, tag
 
    container = mw.html.create( "dl" ):addClass( "oi-event" )
 
    timestamp = container:tag( "dt" )
        :addClass( "oi-event__timestamp" )
        :wikitext( formatISODate( frame.args[1], frame.args[2], frame.args[3] ) )
 
    info = container:tag( "dd" )
        :addClass( "oi-event__info" )
 
    headline = info:tag( "div" )
        :addClass( "oi-event__headline" )
 
    tag = headline:tag( "span" )
        :addClass( "oi-event__tag " .. categories[category] )
        :wikitext( category )
 
    headline:wikitext( " " .. frame.args["제목"] )
 
    content = info:tag( "div" )
        :addClass( "oi-event__content" )
 
    if frame.args["형식"] ~= "압축" then
        content:newline():wikitext( frame.args["내용"] ):newline()
    end
 
    return container:done()
 
end
 
return p

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on FANDOM

Random Wiki