User:TidB/Operation Cleanup/Filters

From Team Fortress Wiki
< User:TidB‎ | Operation Cleanup
Revision as of 20:20, 14 December 2014 by TidB (talk | contribs) (Removing {{code|{{DISPLAYTITLE}}}} from certain pages)
Jump to: navigation, search

Test page; will poot filter concepts for User:WindBOT here. Later (my favorite word).

As I haven't looked into both wikitools' and WindBOT's code too much, this is really just a concept.

Removing {{DISPLAYTITLE}} from certain pages

def check_displaytitle(t, **kwargs):
    displaytitle_notrequired = ["Cosmetic items", "Weapons", "Patches", "Tools", "Action items"]
    displaytitle_required = ["Major updates", "Content Packs"]  # Set because these are also in the "patches" category
    if t.getName().startswith("DISPLAYTITLE:"):  # why do we need a getter method btw?
        categories = kwargs["article"].getCategories()  # I'm just guessing the return type is a list, will check later
        print kwargs["article"].title
        language = kwargs["article"].title.split("/")[-1]  # I know it's ugly, but I dunno if there are easier sources to get the language code. It's cleaner to check it with a list, though
        if [c for c in displaytitle_notrequired if "Category:{}/{}".format(c, language) in categories]:
            return None
    return t
addTemplateFilter(check_displaytitle)

Removing the name parameter from item infoboxes

def name_parameter(t, **kwargs):
    if t.getName() == "Item infobox":  # 'getName()' seems to return the stripped name; no newlines
        t.delParam("name")
    return t
addTemplateFilter(name_parameter)