Tema mobile GolemWiki
Go to file
Stephen Niedzielski d2f6c38fe7 Update: page issue icons
- Fix a bug where the all issues endpoint would incorrectly collect
  issues from all sections.

- Update the page issue iconography. This increases the size of the
  delivered code and images by 1743 B minified uncompressed according to
  mw.inspect() (from 16.4 KiB to 18.1 KiB).

- Add support for identifying page issue severity based on template CSS
  classes.

- For multiple issues templates, show the highest priority icon.

Bug: T191528
Change-Id: Ie0a4c83ec7cfb856ec581d058797109746e3cb99
2018-07-17 15:54:17 -05:00
dev-scripts Make svg_check.sh verbose 2017-12-11 16:50:56 +01:00
i18n Localisation updates from https://translatewiki.net. 2018-07-16 22:02:44 +02:00
includes Update: page issue icons 2018-07-17 15:54:17 -05:00
minerva.less Update link color for Minerva skin 2018-03-14 21:56:18 +00:00
resources Update: page issue icons 2018-07-17 15:54:17 -05:00
screenshots Add skin screenshot for the installer 2017-08-11 15:36:05 -04:00
skinStyles Allow non-js users to remember login on grade C browsers 2018-06-20 11:44:23 -07:00
tests Update: page issue icons 2018-07-17 15:54:17 -05:00
.eslintrc.json Enforce lowercase jsdoc types 2018-07-17 08:06:35 -05:00
.gitignore .gitignore /docs/ generated by JSDuck 2017-12-11 16:42:39 +01:00
.gitreview Use track=1 instead of defaultbranch=master in .gitreview 2016-10-24 17:30:30 -07:00
.phpcs.xml Fix some file names to match their class names 2018-04-15 16:12:45 -07:00
.rubocop.yml Port browser tests from MobileFrontend to Minerva 2017-07-11 14:11:03 -07:00
.rubocop_todo.yml Update RuboCop Ruby gem 2017-12-06 16:58:29 +01:00
.stylelintrc.json Use json extension for .stylelintrc 2017-08-19 06:46:12 +00:00
.svgo.yml Hygiene: Bring missing SVGO config file from MobileFrontend 2017-08-30 23:14:55 +00:00
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md 2017-06-07 13:47:45 +04:30
COPYING Add COPYING 2018-04-15 16:13:17 -07:00
Doxyfile Add MinervaNeue Doxyfile 2017-08-15 15:31:57 +00:00
Gemfile Update RuboCop Ruby gem 2017-12-06 16:58:29 +01:00
Gemfile.lock Update RuboCop Ruby gem 2017-12-06 16:58:29 +01:00
Gruntfile.js build: Organise Gruntfile.js more consistently 2017-10-31 14:41:25 -07:00
MinervaNeue.php Add scaffolding for skin 2017-06-01 10:17:24 -07:00
README.md Doc: move config type and defaults near identity 2018-06-29 17:55:14 +00:00
Rakefile Port browser tests from MobileFrontend to Minerva 2017-07-11 14:11:03 -07:00
composer.json build: Updating mediawiki/mediawiki-codesniffer to 20.0.0 2018-05-26 08:37:53 +00:00
jsdoc.json Use jsdoc for generating Minerva documentation 2018-03-15 15:01:41 -07:00
package-lock.json Run `npm test` as a pre-commit hook 2018-05-02 17:18:16 +02:00
package.json Run `npm test` as a pre-commit hook 2018-05-02 17:18:16 +02:00
skin.json Update: page issue icons 2018-07-17 15:54:17 -05:00

README.md

MinervaNeue skin

The MinervaNeue skin is a responsive mobile-first skin for your mediawiki instance.

Installation

See https://www.mediawiki.org/wiki/Skin:MinervaNeue

Development

Coding conventions

Please follow the coding conventions of MobileFrontend: https://www.mediawiki.org/wiki/MobileFrontend/Coding_conventions

Config

The following configuration options will apply only to the default mobile skin - Minerva.

$wgMinervaAlwaysShowLanguageButton

  • Type: Boolean
  • Default: true

Whether to show the language switcher button even if no languages are available for the page.

$wgMinervaEnableSiteNotice

  • Type: Boolean
  • Default: false

Controls whether site notices should be shown. See https://www.mediawiki.org/wiki/Manual:$wgSiteNotice.

$wgMinervaApplyKnownTemplateHacks

  • Type: Boolean
  • Default: false

When enabled and hacks.less exists, hacks.less workarounds are included in stylesheet. These should only be needed for Wikimedia based wikis or wikis using common templates such as Template:Infobox on those wikis.

$wgMinervaPageActions

  • Type: Array
  • Default: ['edit', 'talk', 'watch', 'switch-language']

Controls which page actions, if any, are displayed. Allowed: edit, watch, talk, and switch-language.

$wgMinervaCustomLogos

  • Type: Array
  • Default: []

Make the logos configurable.

Currently, copyright, copyright-fallback, copyright-width, and copyright-height elements are supported.

  • copyright is the URL of the logo displayed in the header and footer
  • copyright-fallback is the URL of the fallback logo displayed on non-supported browsers like IE8 or Opera Mini
  • copyright-width (optional) is the width in pixels of the copyright image you want to display
  • copyright-height (optional) is the height in pixels of the copyright image you want to display
  • If the actual copyright dimensions are 200x30, then you may want to set the width and height to 100 and 15 respectively (in order to support retina screens).
  • Note that if -width and -height are not used sysadmin should ensure the image used is appropriately sized (suggested dimensions < 120px width and 18px height).

Example:

[
  'copyright' => '/images/mysite_copyright_logo.png',
  'copyright-width' => 100,
  'copyright-height' => 15,
]

Example with fallback URL:

[
  'copyright' => '/images/mysite_copyright_logo.svg',
  'copyright-fallback' => '/images/mysite_copyright_logo.svg.png',
  'copyright-width' => 100,
  'copyright-height' => 15,
]

$wgMinervaAlwaysShowLanguageButton

  • Type: Boolean
  • Default: true

Whether to show the language switcher button even if no languages are available for the page.

$wgMinervaABSamplingRate

  • Type: Number
  • Default: 0

On a scale of 0 to 1, determines the chance a user has of entering an AB test. A test is divided into 3 buckets, "control" "A" and "B". Users that are selected for the test have an equal chance of entering bucket "A" or "B", the remaining users fall into the "control" bucket and are excluded from the test.

1 - would run test on 100% of users (50% in A and 50% in B, 0 in control). 0.5 - would run test on 50% of users (25% in A, 25% in B, 50% in control). 0.05 - would run test on 5% of users (2.5% in A, 2.5% in B, 95% in control). 0 would disable the test and place all users in "control".

Group assignment is universal no matter how many tests are running since both wgMinervaABSamplingRate and mw.user.sessionId() are globals.

Group membership can be debugged from the console via:

  const AB = mw.mobileFrontend.require('skins.minerva.scripts/AB')
  new AB(
    'WME.PageIssuesAB',
    mw.config.get( 'wgMinervaABSamplingRate', 0 ),
    mw.user.sessionId()
  ).getBucket()

And since session ID is an input in calculating the group, reassignment occurs when clearing it: mw.storage.session.remove('mwuser-sessionId').