HideElements

Von $1

    Inhaltsverzeichnis
    keine Gliederung

    Version seit 18:55, 11 Aug 2026

    zu dieser Version.

    Zurück zu Versionshistorie.

    Zeige aktuelle Version

    // HideElements
    // by neilw, 2009
    //
    // 1.00    8/3/2009    neilw
    //
    // Usage:  HideElements(elements, byuser)
    //    elements:    list of strings OR "all".  If list of strings, each element may be one of the following
    //        page elements to hide:  "tags", "files", "images", "comments".  If "all", hide all.
    //    byuser:      hide the above elements only for users without write permission on the page
    //
    
    var allowed_elements = {
    
    pinfo:"div.desctext",
    tags:"div.pageTags",
    files:"div.b-attachments",
    images:"div.gallery",
    upload:"div#anchor-files",
    comments:"div#comments",
    history:"div.modified",
    menu:"div.site",
    options:"div.options",
    notification:"div.info",
    title:"div.t-title",
    header:"div#header",
    secure:"div.restricted",
    coverview:"div.pagemetalinks",
    pagenavigation:"div.pageBar",
    pagealert:"div#deki-page-alerts",
    secure:"div.pbar_soptions2",
    user1:"div.userAuthPre",
    user2:"div.userAuth",
    user3:"div.userAuthPost",
    search:"fieldset.search",
    follow:"div.toggle",
    location:"div.hierarchy",
    navt:"div.customcustom1",
    navtools:"div.hierarchy",
    navl:"div.siteNav",
    login:"div.userAuth",
    mindtouch:"div.MindTouch",
    bodyfooter:"div.bodyFooter"
    };
    
    var elements = $0 ?? $elements;
    var byuser = $1 ?? $byuser ?? false;
    
    var selectors = [];
    
    if (elements != nil) {
        if (elements == "all")
            let selectors = map.values(allowed_elements);
        else if (elements is not list)
            <p> "ERROR: HidePageElements: first argument (ELEMENTS) must be a list of strings" </p>;
        else {
            var errors = [];
            foreach (var e in elements) {
                let e = string.tolower(e);
                if (e is not str || !list.contains(map.keys(allowed_elements), e))
                    let errors ..= [ e ];
                else
                    let selectors ..= [ allowed_elements[e] ];
            }
            if (#errors)
                <div>
                    "ERROR: HidePageElements: bad elements: " .. string.serialize(errors) .. "; allowed elements are:";
                    <ul> foreach (var ae in map.keys(allowed_elements)) <li> ae </li>; </ul>;
                </div>;
        }
    }
    if (#selectors && (!byuser || !wiki.pagepermissions().update))
        <style type="text/css"> string.join(selectors, ",").."{ display:none; }" </style>;
    

     
    Use the language selection below for English Utilise le sélecteur de langue ci-dessous pour français Per l'italiano, utilizzare la selezione della lingua qui sotto Schön sprichst du deutsch :-)