Bước tới nội dung

Mô đun:Clade/hidden

Bách khoa toàn thư mở Wikipedia
local p = {}function p.hidden(frame)        local id = mw.getCurrentFrame():getParent().args['id'] or ""    local mode = mw.getCurrentFrame():getParent().args['mode'] or "right"    local expandSymbol = mw.getCurrentFrame():getParent().args['expand-symbol'] or "&#8862;"    local collapseSymbol = mw.getCurrentFrame():getParent().args['collapse-symbol'] or "&#8863;"    local expandText = mw.getCurrentFrame():getParent().args['expand-text'] or ""    local collapseText = mw.getCurrentFrame():getParent().args['collapse-text'] or ""    local initialState = mw.getCurrentFrame():getParent().args['expanded']    expandSymbol = expandSymbol .. expandText    collapseSymbol = collapseSymbol .. collapseText        -- default is content collapsed    local contentState = " mw-collapsed" -- class to collapse content at start    local collapseSymbolState = " mw-collapsed"    local expandSymbolState = ""    if initialState then       contentState = ""       collapseSymbolState =  ""       expandSymbolState = " mw-collapsed"     end    		    -- collapsible element containing the EXPAND SYMBOL and/or text    local expandSymbolString = '<td class="nomobile" style="padding:0 0 0.0em 0;">'                 .. '<div class="mw-collapsible' .. expandSymbolState .. '" id="mw-customcollapsible-expandSymbol' .. id .. '">'                .. '<div class="mw-collapsible-content mw-customtoggle-expandSymbol' .. id .. '">'                .. '<span class="mw-customtoggle-myClade' .. id                 ..             ' mw-customtoggle-collapseSymbol' .. id                 ..             ' mw-customtoggle-expandSymbol' .. id                 ..    '" style="font-size:100%;">' .. expandSymbol .. '</span>'                .. '</div></div></td>'        -- collapsible element containing the CLADE CONTENT     local clade = require( 'Module:Clade' )    local contentString = '<td style="padding:0;" class="clade-interactive" >'                .. '<div class="mw-collapsible' .. contentState .. '" id="mw-customcollapsible-myClade' .. id .. '>'                .. '<div class="mw-collapsible-content mw-customtoggle-NOT_ON_CONTENT" >' -- don't toggle on the content                                .. '\n' .. clade.main(frame)  -- important to start wikitext tables on new line                .. '</div></div></td>'        -- collapsible element containing the COLLAPSE SYMBOL and/or text    local collapseSymbolString = '<td class="nomobile" style="padding:0 0 0.0em 0;">'                .. '<div class="mw-collapsible' .. collapseSymbolState .. '" id="mw-customcollapsible-collapseSymbol' .. id .. '">'                .. '<div class="mw-collapsible-content mw-customtoggle-collapseSymbol' .. id .. '" >'                .. '<span class="mw-customtoggle-expandSymbol' .. id                             .. ' mw-customtoggle-myClade' .. id                             .. ' mw-customtoggle-collapseSymbol' .. id                             .. ' " style="font-size:100%;" >' .. collapseSymbol .. '</span>'                            .. '</div></div></td>'	local tableStyle = frame.args.style or ""	if tableStyle == '{{{style}}}' then tableStyle = "" end 	local cladeString = '<table style="border-spacing:0;margin:0;'..tableStyle ..'"><tr>'    cladeString = cladeString .. expandSymbolString     if mode == "left" then    	cladeString = cladeString .. collapseSymbolString    end    cladeString = cladeString .. contentString     if mode == "right" then    	cladeString = cladeString .. collapseSymbolString    end    -- Note: if we want collapse string left and right it needs an extra element with a different id    cladeString = cladeString ..  '</tr></table>'return p.templateStyle( frame, "Clade hidden/styles.css" ) .. cladeStringendfunction p.toggle(frame)		if 1==2 then return 'some text' end		--local toggleSymbol = 'toggle all'	local toggleSymbol = mw.getCurrentFrame():getParent().args['button'] or ""	local toggleString = '<div class="'                    local i=0    while 	i < 20 do  -- limit on number of toggle elements controlled by the trigger button    	i = i + 1 -- so we start with 1		local target = mw.getCurrentFrame():getParent().args['id'..tostring(i)] 	    	    -- add classes for the three elements of each target: expand symbol, collapse symbol and contents	    if target ~= nil then            toggleString = toggleString .. ' mw-customtoggle-myClade' .. target                 ..             ' mw-customtoggle-collapseSymbol' .. target                 ..             ' mw-customtoggle-expandSymbol' .. target         end    end    toggleString = toggleString  ..  '">' .. toggleSymbol .. '</div>'  return toggleStringend-- <templatestyles src="Clade hidden/styles.css"></templatestyles>function p.templateStyle( frame, src )   return frame:extensionTag( 'templatestyles', '', { src = src } );endreturn p