Modul:PageTree: Unterschied zwischen den Versionen
update
w>Tsor K (Schützte „Modul:PageTree“ ([Bearbeiten=Nur angemeldete, nicht neue Benutzer] (unbeschränkt) [Verschieben=Nur Administratoren] (unbeschränkt))) |
w>PerfektesChaos (update) |
||
| Zeile 1: | Zeile 1: | ||
--[=[ 2014-05- | --[=[ 2014-05-18 | ||
Module:pageTree | Module:pageTree | ||
]=] | ]=] | ||
| Zeile 47: | Zeile 47: | ||
return r | return r | ||
end -- facility() | end -- facility() | ||
local function fade( ask ) | |||
-- Check whether page is to be hidden | |||
-- ask -- string, with page name | |||
-- Returns true if to be hidden | |||
local r = false | |||
for k, v in pairs( Current.hide ) do | |||
if ask:match( v ) then | |||
r = true | |||
break -- for k, v | |||
end | |||
end -- for k, v | |||
return r | |||
end -- fade() | |||
| Zeile 474: | Zeile 490: | ||
if e.list == false then | if e.list == false then | ||
let = Current.list | let = Current.list | ||
elseif Current.hide then | |||
let = not fade( v.seed ) | |||
else | else | ||
let = lift | let = lift | ||
| Zeile 499: | Zeile 517: | ||
for k, v in pairs( Current.pages ) do | for k, v in pairs( Current.pages ) do | ||
let = true | let = true | ||
if | if v.list == false and | ||
( not Current.list or k == true ) then | |||
let = false | let = false | ||
elseif Current.level and v.seed:find( "/" ) then | elseif Current.level and v.seed:find( "/" ) then | ||
let = false | let = false | ||
elseif Current.hide then | |||
let = not fade( v.seed ) | |||
end | end | ||
if let then | if let then | ||
| Zeile 655: | Zeile 676: | ||
-- Returns string with story, or false | -- Returns string with story, or false | ||
local r | local r | ||
if args.series and args.service and args.suite then | if type( args.series ) == "string" and | ||
type( args.service ) == "string" and | |||
type( args.suite ) == "string" then | |||
Current.series = args.series | Current.series = args.series | ||
Current.service = args.service | Current.service = args.service | ||
Current.suite = args.suite | Current.suite = args.suite | ||
if type( args.hide ) == "table" then | |||
Current.hide = args.hide | |||
elseif type( args.suppress ) == "string" then | |||
Current.hide = { } | |||
table.insert( Current.hide, args.suppress ) | |||
end | |||
if Current.series:match( "[:/]$" ) then | if Current.series:match( "[:/]$" ) then | ||
Current.start = args.series | Current.start = args.series | ||