MediaWiki: Editor.js

Aus Joachim Camerarius (1500-1574)
Wechseln zu: Navigation, Suche
let customizeToolbar = function () {
$('#wpTextbox1').wikiEditor('addToToolbar', {
    //Create new toolbar section Camerarius which is itself a toolbar               
    sections: {
        camerarius: {
            type: 'toolbar',
            label: 'Camerarius-Attribute',
            //Create dropdown part of the toolbar
            'groups': {
                'format': {
                    'tools': {
                        'Attribute': {
                            'label': 'Attribute-Allgemein',
                            'type': 'select',
                            'list': {
                                'Auftraggeber': {
                                    'label': 'Auftraggeber',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Auftraggeber::',
                                            'periMsg': 'Auftragsgeber',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Beeinflusser': {
                                    'label': 'Beeinflusser',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Beeinflusser::',
                                            'periMsg': 'Beeinflusser',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Briefpartner': {
                                    'label': 'Briefpartner',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Briefpartner::',
                                            'periMsg': 'Briefpartner',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Erwähnte Körperschaft': {
                                    'label': 'Erwähnte Körperschaft',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Erwähnte Körperschaft::',
                                            'periMsg': 'Körperschaft',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Erwähnte Person': {
                                    'label': 'Erwähnte Person',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Erwähnte Person::',
                                            'periMsg': 'Adressat',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Erwähnter Ort': {
                                    'label': 'Erwähnter Ort',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Erwähnter Ort::',
                                            'periMsg': 'Ort',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Erwähntes Werk': {
                                    'label': 'Erwähntes Werk',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Erwähntes Werk::',
                                            'periMsg': 'Erwähntes Werkt',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Forschungsliteratur': {
                                    'label': 'Forschungsliteratur',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Forschungsliteratur::',
                                            'periMsg': 'Forschungsliteratur',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Gesprächspartner': {
                                    'label': 'Gesprächspartner',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Gesprächspartner::',
                                            'periMsg': 'Gesprächspartner',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Initiator': {
                                    'label': 'Initiator',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Initiator::',
                                            'periMsg': 'Initiator',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Lehrer': {
                                    'label': 'Lehrer',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Lehrer::',
                                            'periMsg': 'Lehrer',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Schüler': {
                                    'label': 'Schüler',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Schüler::',
                                            'periMsg': 'Schüler',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Student': {
                                    'label': 'Student',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Student::',
                                            'periMsg': 'Student',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Unterstützer': {
                                    'label': 'Unterstützer',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Unterstützer::',
                                            'periMsg': 'Unterstützer',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Werkadressat': {
                                    'label': 'Werkadressat',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Werkadressat::',
                                            'periMsg': 'Adressat',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Widmender': {
                                    'label': 'Widmender',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Widmender::',
                                            'periMsg': 'Widmender',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Widmungsempfänger': {
                                    'label': 'Widmungsempfänger',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Widmungsempfänger::',
                                            'periMsg': 'Widmungsempfänger',
                                            'post': ']]'
                                        }
                                    }
                                },
                                'Nachrufempfänger': {
                                    'label': 'Nachrufempfänger',
                                    'action': {
                                        'type': 'encapsulate',
                                        'options': {
                                            'pre': '[[Nachruf auf::',
                                            'periMsg': 'Nachruf auf',
                                            'post': ']]'
                                        }
                                    }
                                },
                            }
                        },
                        //Create the button parts
                        'Beschreibungen': {
                            'label': 'Beschreibungen',
                            'type': 'button',
                            'icon': {
                                'default': 'format-bold-B.png',
                                'en': 'format-bold-B.png',
                                'de': 'format-bold-B.png'
                            },
                            'action': {
                                'type': 'encapsulate',
                                'options': {
                                    'pre': "{{Beschreibungen|",
                                    'periMsg': 'Seitenname',
                                    'post': "}}"
                                }
                            }
                        },
                        'MBW': {
                            'label': 'MBW',
                            'type': 'button',
                            'icon': {
                                'default': 'Mbutton.png',
                                'en': 'Mbutton.png',
                                'de': 'Mbutton.png'
                            },
                            'action': {
                                'type': 'encapsulate',
                                'options': {
                                    'pre': "[http://www.haw.uni-heidelberg.de/forschung/forschungsstellen/melanchthon/mbw-online.de.html MBW], Nr. ",
                                    'periMsg': 'Nr.'
                                }
                            }
                        },
                        'Link': {
                            'label': 'Verlinkung',
                            'type': 'button',
                            'icon': {
                                'default': 'insert-ilink.png',
                                'en': 'insert-ilink.png',
                                'de': 'insert-ilink.png'
                            },
                            'action': {
                                'type': 'encapsulate',
                                'options': {
                                    'pre': "[[",
                                    'periMsg': 'Text',
                                    'post': "]]"
                                }
                            }
                        },
                    }
                }
            }
        }
    }
});
};

/* Check if view is in edit mode and that the required modules are available. Then, customize the toolbar … */
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -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.toolbar' ), $.ready
			).then( customizeToolbar );
		}
	} );
}