Development:Index: Difference between revisions
From COMP15212 Wiki
pc>Yuron No edit summary |
W81054ch [PHRhYmxlIGNsYXNzPSJ0d3BvcHVwIj48dHI+PHRkIGNsYXNzPSJ0d3BvcHVwLWVudHJ5dGl0bGUiPkdyb3Vwczo8L3RkPjx0ZD51c2VyPGJyIC8+YnVyZWF1Y3JhdDxiciAvPmludGVyZmFjZS1hZG1pbjxiciAvPnN5c29wPGJyIC8+PC90ZD48L3RyPjwvdGFibGU+] (talk | contribs) m (1 revision imported) |
(No difference)
|
Revision as of 10:22, 9 August 2019
This page details information related to the development of this Mediawiki-driven website, serving as documentation for the code written for the wiki. For information regarding how to make use of this wiki's features once it's been set up, refer to Help:Index.
Extensions
- Semantic Mediawiki is used to provide:
- Page summaries
- Priority levels
- Paths
- Dependencies
- Scribunto (Lua scripting) is used to provide:
- Article dependencies (Lua is needed to support adding an arbitrary number of dependencies to a single box)
- A Syntax Highlighting extension is used to provide syntax highlighting for code in the wiki.
- Widgets is used to provide:
- Page demonstrations (List of widgets)
- UserDash is the extension that drives most other features specific to this site, including:
- Special:Profile, various graphs related to a user's progress through this wiki.
- Special:Dashboard, a page directed towards guiding a user to their next page to read.
- The rating and page tagging system
- Page graphs, summoned by the </pagegraph> tag (though a separate template is used to actually include the pagegraph)
- Contents page
- The skin Chameleon is used to provide a Bootstrap look to the wiki.
- The Bootstrap extension the Chameleon skin comes with does not include tooltip.js from Bootstrap. Replace line 68 in extensions/Bootstrap/src/Definition/V4ModuleDefinition with
'tooltip' => [ 'styles' => 'tooltip', 'scripts' => 'tooltip.js', 'dependencies' => [ 'popper', 'js-util' ] ],>
to fix this. This needs to be done every time Composer is used to update components, as this change would be overwritten.
- The Bootstrap extension the Chameleon skin comes with does not include tooltip.js from Bootstrap. Replace line 68 in extensions/Bootstrap/src/Definition/V4ModuleDefinition with
Migration
- First, copy over the wiki installation, including the extensions, skin, and custom configurations in LocalSettings.php, or start from a fresh installation and append the needed extensions/configurations to LocalSettings.php afterwards.
- Second, migrate all pages in the wiki:
- cd to the installation directory of MediaWiki.
- Run
php maintenance/dumpBackup.php --current > backup.xml
to dump all pages into backup.xml - Restore backup.xml with the special page Special:Import on the target server
- Special:Import also requires an "interwiki prefix", which doesn't matter for a migration
- Third, migrate all images:
- Run the bespoke
exportImage.sh
on the source server to obtain MediaFiles.zip in the home directory - Copy MediaFiles.zip to ~/ (user directory) on the destination
- Run the bespoke importImage.sh on the destination to restore images
- Run the bespoke
- Lastly, refresh the extension databases with
php maintenance/update.php
, and refresh the Semantic Mediawiki database withphp extensions/SemanticMediaWiki/maintenance/rebuildData.php
Further setup
For the rating chart in Special:Profile to work properly, the values UDStartYear, UDStartMonth, UDStartDay, UDStartHour, UDEndWeek and UDVacationWeeks in extensions/UserDash/extension.json must be set to sensible values.