48,407
edits
No edit summary |
No edit summary |
||
| Line 35: | Line 35: | ||
local family_with_proto_language_icon = family_icon | local family_with_proto_language_icon = family_icon | ||
local function format_node(code, is_protolanguage_or_has_protolanguage) | local function format_node(code, is_protolanguage_or_has_protolanguage) | ||
local canonical_name, category_name, class, icon, tooltip | local canonical_name, category_name, class, icon, tooltip | ||
if regular_languages[code] then | if regular_languages[code] then | ||
canonical_name = regular_languages[code][1] | canonical_name = regular_languages[code][1] | ||
| Line 41: | Line 41: | ||
class = "familytree-lang" | class = "familytree-lang" | ||
if is_protolanguage_or_has_protolanguage then | if is_protolanguage_or_has_protolanguage then | ||
class = class .. ' familytree-protolang' | |||
icon = proto_language_icon | icon = proto_language_icon | ||
end | end | ||
| Line 65: | Line 66: | ||
.. '[[:Category:' .. (category_name or canonical_name) .. '|' | .. '[[:Category:' .. (category_name or canonical_name) .. '|' | ||
.. canonical_name | .. canonical_name | ||
.. ' <span class="familytree-code | .. ' <span class="familytree-code">(' .. code .. ')</span>]]' | ||
.. (icon and ' <span class="familytree-icon | .. (icon and ' <span class="familytree-icon">' .. icon .. '</span>' or '') | ||
.. '</span>' | .. '</span>' | ||
end | end | ||
| Line 174: | Line 174: | ||
if not val[1] then | if not val[1] then | ||
result:insert('<li | result:insert('<li>' .. prefix .. branch .. options.sterile_branch_text | ||
.. language_or_family_node .. '</li>') | .. language_or_family_node .. '</li>') | ||
else | else | ||
local customcollapsible_id = get_customcollapsible_id() | local customcollapsible_id = get_customcollapsible_id() | ||
result:insert('<li | result:insert('<li>' .. prefix .. branch | ||
.. '<span class="familytree-toggle mw-customtoggle-' | .. '<span class="familytree-toggle mw-customtoggle-' | ||
.. customcollapsible_id .. '">───┬</span>') | .. customcollapsible_id .. '">───┬</span>') | ||
| Line 203: | Line 203: | ||
p.are_all_children_etymology_languages(val) | p.are_all_children_etymology_languages(val) | ||
local collapsible_ul = '<ul | local collapsible_ul = '<ul class="mw-collapsible' | ||
.. (all_children_are_etymology_languages | .. (all_children_are_etymology_languages | ||
and ' familytree-only-etym-children' | and ' familytree-only-etym-children' | ||
| Line 213: | Line 213: | ||
if flag then | if flag then | ||
result:insert(top_node | result:insert(top_node | ||
.. collapsible_ul .. '<li | .. collapsible_ul .. '<li>' .. prefix | ||
.. (i == length and no_break_space or "│") | .. (i == length and no_break_space or "│") | ||
.. level_separator .. "│") | .. level_separator .. "│") | ||
| Line 318: | Line 318: | ||
end | end | ||
local result = Array('<div class="familytree | local result = Array('<div class="familytree"><ul>') | ||
local tree_options = { | local tree_options = { | ||
| Line 331: | Line 331: | ||
for i, subtable in ipairs(nested_data) do | for i, subtable in ipairs(nested_data) do | ||
-- top language name | -- top language name | ||
result:insert('<li | result:insert('<li>') | ||
-- name me! | -- name me! | ||
| Line 353: | Line 353: | ||
local customcollapsible_id = get_customcollapsible_id() | local customcollapsible_id = get_customcollapsible_id() | ||
result:insert('<span class="familytree-toptoggle mw-customtoggle-' | result:insert('<span class="familytree-toptoggle mw-customtoggle-' | ||
.. customcollapsible_id .. '" style="display: none | .. customcollapsible_id .. '" style="display: none;">') | ||
result:insert(options.collapsed and expandtext or collapsetext) | result:insert(options.collapsed and expandtext or collapsetext) | ||
result:insert('</span>') | result:insert('</span>') | ||
if flag then | if flag then | ||
result:insert('<li | result:insert('<li>') | ||
result:insert(next_node) | result:insert(next_node) | ||
end | end | ||
-- tree | -- tree | ||
result:insert('<ul | result:insert('<ul class="mw-collapsible') | ||
if options.collapsed then | if options.collapsed then | ||
result:insert(' mw-collapsed') | result:insert(' mw-collapsed') | ||
| Line 378: | Line 378: | ||
result:insert('</ul></div>') | result:insert('</ul></div>') | ||
result:insert(require("Module:TemplateStyles")("Module:family tree/style.css")) | |||
return result:concat() | return result:concat() | ||