Candy Crush Soda Wiki
Advertisement
Candy Crush Soda Wiki

Documentation for this module may be created at Module:SortItems/doc

local p = {}
 
local function _sortItems( nativeArgs, orderedList )
    local sortedArgs = {}
    local ord = 1
 
    for iOrd, bOrd in ipairs(orderedList) do
        for iNat, bNat in ipairs(nativeArgs) do
            if bOrd == bNat then
                -- add match to ordered list
                sortedArgs[ord] = bNat
                ord = ord + 1
                break
            end
        end
        if (not nativeArgs[ord] or nativeArgs[ord] =='' ) then
            break -- found all arguments
        end
    end
    return sortedArgs
end
 
function p.displayNewfeatures( frame ) -- old value
    a = frame.args
    if (not a[1]) or (a[1] == '') then
        return ''
    else
        local sorted = _sortItems(a, mw.loadData('Module:OrderedListNewfeatures'))
        return  frame:expandTemplate{ title = 'ShowNewfeatures', args = sorted }
    end
end

function p.displayBlockers( frame )
    a = frame.args
    if (not a[1]) or (a[1] == '') then
        return ''
    else
        local sorted = _sortItems(a, mw.loadData('Module:OrderedListBlockers'))
        return  frame:expandTemplate{ title = 'ShowBlockers', args = sorted }
    end
end
 
function p.displayOtherFeatures( frame )
    a = frame.args
    if (not a[1]) or (a[1] == '') then
        return ''
    else
        local sorted = _sortItems(a, mw.loadData('Module:OrderedListFeatures'))
        return  frame:expandTemplate{ title = 'ShowOtherFeatures', args = sorted }
    end
end
return p
Advertisement