Fandom Developers Wiki

DiscussionTemplates allows users to send a message wall post with a template of their choice. The button for this script can be found next to the submit button in the editor when creating a new message wall conversation. Note that due to how Discussions and etc is designed, only basic wikitext works, and things such as backgrounds won't work.

Installation

Usage

The config options are:

  • templates: Object with your list of templates in it (key is the label, value being an object with name, which is the template name (including namespace), and title, being the title of the message)
  • wikiList: A list of wikis to select to replace $WIKI with (the placeholder being in your template), using format of 'key': 'https://community.fandom.com/fr', this is not required if you don't use the placeholder
  • allowedGroups is an optional array, that if defined, restricts running of the script to only users in the listed usergroups.

$USER is also supported, and is replaced with the username of the user whose wall you're on.

For example:

window.DiscussionTemplates = {
    templates: {
        'item-1': {
            name: 'Template:Item 1',
            title: 'Title 1'
        },
        'item-2': {
            name: 'Template:Item-2',
            title: 'This is title 2'
        },
        item3: {
            name: 'Template:Name3',
            title: 'Title2'
        }
    },
    wikiList: {
        de: 'https://example.fandom.com/de',
        es: 'https://example-es.fandom.com',
        fi: 'https://example.fandom.com/fi'
    },
    allowedGroups: ['sysop', 'rollback']
};

Using configuration options with Fandom Developers Wiki scripts

The instructions on this page describe how to use configuration options with a script. Here on the Fandom Developers Wiki, many scripts provide optional configuration settings as a mean to alter or enhance the default behavior of the script. When installing configuration options in your JavaScript file, please note that they need to go above the import statement in order to work — unless the directions say otherwise. In case MediaWiki:ImportJS is used to load the scripts, it will be executed last.

Configuration options load too late, don't work
// 1. AjaxRC import statement
importArticles({
    type: 'script',
    articles: [
        'u:dev:MediaWiki:AjaxRC.js'
    ]
});

// 2. AjaxRC configuration option
window.ajaxRefresh = 30000;
Proper placement of configuration options
// 1. AjaxRC configuration option
window.ajaxRefresh = 30000;

// 2. AjaxRC import statement
importArticles({
    type: 'script',
    articles: [
        'u:dev:MediaWiki:AjaxRC.js'
    ]
});
Text above can be found here (edit)