Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
| Line 137: | Line 137: | ||
'section': 'fontawesome', | 'section': 'fontawesome', | ||
'pages': { | 'pages': { | ||
' | 'fafilm': { | ||
'layout': 'characters', | 'layout': 'characters', | ||
'label': 'Films Icons', | 'label': 'Films Icons', | ||
//A string is interpreted as a character or string to insert at the cursor position. | |||
//An array with 2 strings will use the first string as the label, and the second string as the string to be inserted. | |||
//An object containing action and label properties will perform the action (used to split text to insert before and after the selection). | |||
'characters': [ | 'characters': [ | ||
'{{#fas:film}}','{{#far:file-video}}','{{#fas:file-video}}','{{#fas:video}}', | '{{#fas:film}}','{{#far:file-video}}','{{#fas:file-video}}','{{#fas:video}}', | ||
'{{#fas:tv}}','{{#fas:upload}}','{{#fas:glasses}}','{{#fas:play}}', | '{{#fas:tv}}','{{#fas:upload}}','{{#fas:glasses}}','{{#fas:play}}', | ||
'{{#fas:stopwatch}}','{{#fas:eye}}' | '{{#fas:stopwatch}}','{{#fas:eye}}', | ||
{ | |||
'action': { | |||
type: 'encapsulate', | |||
options: { | |||
pre: '{{Clear}}' | |||
} | |||
}, | |||
'label':'clear' | |||
} | |||
] | ] | ||
} | } | ||
| Line 151: | Line 163: | ||
'section': 'fontawesome', | 'section': 'fontawesome', | ||
'pages': { | 'pages': { | ||
' | 'fabrand': { | ||
'layout': 'characters', | 'layout': 'characters', | ||
'label': 'Brand Icons', | 'label': 'Brand Icons', | ||
Revision as of 16:46, 30 October 2021
/* Any JavaScript here will be loaded for all users on every page load. */
var customizeToolbar = function () {
/*
*
* jrtools toolbar
*
*/
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'sections': {
'jrtools': {
//'type': 'booklet', // Can be 'booklet' or 'toolbar'
'type': 'toolbar',
'label': 'JR Tools'
// or 'labelMsg': 'section-jrtools-label' for a localized label
}
}
} );
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'jrtools',
'groups': {
'inserts': {
'label': 'Inserts' // or use labelMsg for a localized label, see above
}
}
} );
// strike butt
$('#wpTextbox1').wikiEditor('addToToolbar', {
section: 'jrtools',
group: 'inserts',
tools: {
"strikethrough": {
label: 'Strike',
oouiIcon: 'strikethrough',
type: 'button',
action: {
type: 'encapsulate',
options: {
pre: "<s>",
post: "</s>"
}
}
}
}
});
// dropdown
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
section: 'jrtools',
group: 'inserts',
groups: {
list: {
tools: {
templates: {
label: 'Templates',
type: 'select',
list: {
'Ping-button': {
label: '{{Ping}}',
action: {
type: 'encapsulate',
options: {
pre: '{{Ping|',
post: '}}'
}
}
},
'Clear-button': {
label: 'Clear',
action: {
type: 'encapsulate',
options: {
pre: '{{Clear}}'
}
}
},
'Done-button': {
label: 'Done',
action: {
type: 'encapsulate',
options: {
pre: '{{Done}}'
}
}
}
}
}
}
}
}
} );
/*
*
* fa booklet
*
*/
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'sections': {
'fontawesome': {
'type': 'booklet', // Can be 'booklet' or 'toolbar'
//'type': 'toolbar',
'label': 'Icons'
// or 'labelMsg': 'section-jrtools-label' for a localized label
}
}
} );
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'fontawesome',
'pages': {
'Example': {
'layout': 'table',
'label': 'Examples',
'headings': [
{ html: '<span style="font-size:0.5em;">Name</span>' }, // or use textMsg for localization, see also above
{ text: 'Temperature' },
{ text: 'Swatch' }
],
'rows': [
{
'name': { text: 'Red' },
'temp': { text: 'Warm' },
'swatch': { html: '<div style="width:10px;height:10px;background-color:red;">' }
},
{
'name': { text: 'Blue' },
'temp': { text: 'Cold' },
'swatch': { html: '<div style="width:10px;height:10px;background-color:blue;">' }
},
{
'name': { text: 'Silver' },
'temp': { text: 'Neutral' },
'swatch': { html: '<div style="width:10px;height:10px;background-color:silver;">' }
}
]
}
}
} );
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'fontawesome',
'pages': {
'fafilm': {
'layout': 'characters',
'label': 'Films Icons',
//A string is interpreted as a character or string to insert at the cursor position.
//An array with 2 strings will use the first string as the label, and the second string as the string to be inserted.
//An object containing action and label properties will perform the action (used to split text to insert before and after the selection).
'characters': [
'{{#fas:film}}','{{#far:file-video}}','{{#fas:file-video}}','{{#fas:video}}',
'{{#fas:tv}}','{{#fas:upload}}','{{#fas:glasses}}','{{#fas:play}}',
'{{#fas:stopwatch}}','{{#fas:eye}}',
{
'action': {
type: 'encapsulate',
options: {
pre: '{{Clear}}'
}
},
'label':'clear'
}
]
}
}
} );
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'fontawesome',
'pages': {
'fabrand': {
'layout': 'characters',
'label': 'Brand Icons',
'characters': [
'{{#fab:github}}', '{{#fab:soundcloud}}', '{{#fab:patreon}}', '{{#fab:markdown}}',
'{{#fab:twitch}}', '{{#fab:twitter}}', '{{#fab:wikipedia-w}}', '{{#fab:vimeo}}',
'{{#fab:youtube}}', '{{#fab:youtube-square}}', '{{#fab:creative-commons}}',
'{{#fab:creative-commons-nd}}', '{{#fab:creative-commons-zero}}'
]
}
}
} );
};
/* Check if view is in edit mode and that the required modules are available. Then, customize the toolbar … */
if ( [ 'edit', 'submit' ].indexOf( mw.config.get( 'wgAction' ) ) !== -1 ) {
mw.loader.using( 'user.options' ).then( function () {
// This can be the string "0" if the user disabled the preference ([[phab:T54542#555387]])
if ( mw.user.options.get( 'usebetatoolbar' ) == 1 ) {
$.when(
mw.loader.using( 'ext.wikiEditor' ), $.ready
).then( customizeToolbar );
}
} );
}