Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Friction Design Archive

This archive collects Tactics, Patterns, Models, Taxonomies, Toolkits, Archetypes, Principles, Symptoms, Philosophies, Manifestos, and Emerging Approaches related to Friction Design.

MediaWiki:Common.js: Difference between revisions

MediaWiki interface page
No edit summary
No edit summary
Line 60: Line 60:
     } );
     } );
} );
} );
//test-banner


/* Inject Unloop Banner above everything */
/* Inject Unloop Banner above everything */
Line 73: Line 71:
                       '<a href="https://frictiondesign.fba.up.pt/unloop/" style="color: inherit; text-decoration: underline;">Visit the official page</a>';
                       '<a href="https://frictiondesign.fba.up.pt/unloop/" style="color: inherit; text-decoration: underline;">Visit the official page</a>';
      
      
 
    // Style it directly for high priority
     banner.style.cssText = 'background: #00ff00; color: #143109; text-align: center; padding: 15px; font-family: "Hanken Grotesk", sans-serif; font-size: 14px; line-height: 1.5; position: relative; ;
    // Using your established neon-green (#00ff00) and dark-green (#143109)
     banner.style.cssText = 'background: #00ff00; color: #143109; text-align: center; padding: 15px; font-family: "Hanken Grotesk", sans-serif; font-size: 14px; line-height: 1.5; position: relative; z-index: 10001; border-bottom: 2px solid #143109;';
      
      
     // This places it at the absolute top of the <body>
     // This places it at the absolute top of the <body>
     document.body.prepend(banner);
     document.body.prepend(banner);
})();
})();

Revision as of 22:05, 29 January 2026

/* Any JavaScript here will be loaded for all users on every page load. */

// Test if JavaScript is loading
console.log('MediaWiki:Common.js is loaded!');

// Wait for the document to be fully ready
jQuery(function($) {
    // Check if the button exists on the page
    var button = document.getElementById('trigger-citizen-search');
    if (!button) {
        console.log('Search button not found.');
        return;
    }

    // Add the click event listener
    button.addEventListener('click', function() {
        console.log('Search button was clicked!'); // Check if this appears in console

        // Try multiple possible selectors for the Citizen search trigger
        var selectors = [
            '#citizen-search-details summary',
            '.citizen-search-trigger',
            '.citizen-search__button',
            '[title*="earch"]' // Matches elements with "search" in the title
        ];

        var triggerClicked = false;
        for (var i = 0; i < selectors.length; i++) {
            var element = document.querySelector(selectors[i]);
            if (element) {
                console.log('Found trigger with selector:', selectors[i]);
                element.click();
                triggerClicked = true;
                break; // Stop after the first successful click
            }
        }

        // Fallback if no trigger was found
        if (!triggerClicked) {
            console.log('No search trigger found. Falling back to search page.');
            window.location.href = mw.config.get('wgScriptPath') + '/Special:Search';
        }
    });
});

//Homepage About Button

$( function() {
    mw.loader.using( 'oojs-ui' ).then( function() {
        var aboutButton = new OO.ui.ButtonWidget( {
            label: 'MORE ABOUT THIS PROJECT',
            href: 'https://frictiondesign.fba.up.pt/mediawiki/index.php/Frictiondesign:About',
            target: '_self',
            flags: [ 'progressive' ],
            classes: [ 'fda-hero-button' ]
        } );
        
        // Append to your specific container
        $( '#fda-button-container' ).append( aboutButton.$element );
    } );
} );

/* Inject Unloop Banner above everything */
(function() {
    var banner = document.createElement('div');
    banner.id = 'unloop-symposium-banner';
    
    // Updated content with the construction notice and a line break
    banner.innerHTML = 'Website under construction, please pardon our dust.<br>' + 
                       '<strong>UNLOOP SYMPOSIUM:</strong> June 26, 2026 — ' + 
                       '<a href="https://frictiondesign.fba.up.pt/unloop/" style="color: inherit; text-decoration: underline;">Visit the official page</a>';
    
    // Style it directly for high priority
    // Using your established neon-green (#00ff00) and dark-green (#143109)
    banner.style.cssText = 'background: #00ff00; color: #143109; text-align: center; padding: 15px; font-family: "Hanken Grotesk", sans-serif; font-size: 14px; line-height: 1.5; position: relative; z-index: 10001; border-bottom: 2px solid #143109;';
    
    // This places it at the absolute top of the <body>
    document.body.prepend(banner);
})();