Paladox has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/244936

Change subject: Update version to 1.6.0
......................................................................

Update version to 1.6.0

Please see CHANGELOG.md for changes.

Change-Id: I2829fae3abd0626c56bb2c3812ade6b97b9d8e2f
---
A .jshintignore
M CHANGELOG.md
M Metrolook.php
M MetrolookTemplate.php
M README.md
M components/common.less
M components/mobile.less
M components/navigation.less
M components/personalMenu.less
M components/tablet.less
M components/tabs.less
M components/watchstar.less
R i18n/arq.json
M i18n/ast.json
A i18n/ba.json
M i18n/be-tarask.json
M i18n/de.json
M i18n/en.json
M i18n/es.json
M i18n/fa.json
M i18n/fi.json
A i18n/fo.json
M i18n/fr.json
M i18n/gl.json
M i18n/he.json
A i18n/hu.json
A i18n/hy.json
M i18n/ia.json
A i18n/jbo.json
A i18n/km.json
M i18n/ko.json
M i18n/ksh.json
M i18n/lb.json
M i18n/mk.json
A i18n/mr.json
A i18n/ms.json
M i18n/nap.json
M i18n/nl.json
A i18n/olo.json
M i18n/pl.json
M i18n/qqq.json
A i18n/ro.json
M i18n/roa-tara.json
M i18n/ru.json
A i18n/scn.json
M i18n/sv.json
M i18n/uk.json
M i18n/vi.json
A i18n/xmf.json
M i18n/zh-hans.json
M i18n/zh-hant.json
M js/mediawiki.searchSuggest.custom.js
M js/metrolook.js
A js/metrolook.search.js
M package.json
55 files changed, 625 insertions(+), 686 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/skins/Metrolook 
refs/changes/36/244936/1

diff --git a/.jshintignore b/.jshintignore
new file mode 100644
index 0000000..9836c42
--- /dev/null
+++ b/.jshintignore
@@ -0,0 +1,3 @@
+node_modules
+
+js/overthrow.js
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2d89d08..5294ae8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,45 @@
 Changelog
 =========
 
+1.6.0
+===
+
+### New features
+
+To set tiles now please do the following
+
+go to MediaWiki:metrolook-tiles
+
+
+Then add
+
+for example
+
+Doint forget to add * in front of the code. It wont work without doing * in 
fornt of code.
+
+* URL to the site|alternative text|image URL
+
+* http://example.com|Example name|http://example.com/example.png
+
+You can now set different tiles for different languges.
+
+(for french)
+
+For example MediaWiki:metrolook-tiles/fr
+
+Renamed settings
+
+VectorUseSimpleSearch -> MetrolookUseSimpleSearch
+
+VectorUseIconWatch -> MetrolookUseIconWatch
+
+
+Remove settings
+
+$wgMetrolookTile1-10
+
+Added missing js file and fix js code.
+
 1.5.0
 ===
 
diff --git a/Metrolook.php b/Metrolook.php
index 3cb1c21..923009b 100644
--- a/Metrolook.php
+++ b/Metrolook.php
@@ -26,7 +26,7 @@
        'name' => 'Metrolook',
        'namemsg' => 'skinname-metrolook',
        'descriptionmsg' => 'metrolook-desc',
-       'version' => '1.5.0',
+       'version' => '1.6.0',
        'url' => 'https://www.mediawiki.org/wiki/Skin:Metrolook',
        'author' => array( 'immewnity', 'Paladox', 'Craig Davison', 'lagleki' ),
        'license-name' => 'GPLv2+',
@@ -71,14 +71,14 @@
  *  - true = use an icon search button
  *  - false = use Go & Search buttons
  */
-$GLOBALS['wgVectorUseSimpleSearch'] = true;
+$GLOBALS['wgMetrolookUseSimpleSearch'] = true;
 
 /**
  * Watch and unwatch as an icon rather than a link.
  *  - true = use an icon watch/unwatch button
  *  - false = use watch/unwatch text link
  */
-$GLOBALS['wgVectorUseIconWatch'] = true;
+$GLOBALS['wgMetrolookUseIconWatch'] = true;
 
 /**
  * Logo
@@ -105,17 +105,7 @@
 
 $GLOBALS['wgMetrolookMobile'] = true;
 
-/* To use tile 5 to 10 please diable this */
 $GLOBALS['wgMetrolookBartile'] = true;
-
-$GLOBALS['wgMetrolookTile1'] = true;
-
-$GLOBALS['wgMetrolookTile2'] = true;
-
-$GLOBALS['wgMetrolookTile3'] = true;
-
-$GLOBALS['wgMetrolookTile4'] = true;
-
 
 // Register modules
 $GLOBALS['wgResourceModules']['skins.metrolook.styles'] = array(
@@ -155,11 +145,10 @@
        ),
        'position' => 'bottom',
        'dependencies' => array(
-                       'jquery.throttle-debounce',
-                       'jquery.client',
-                       'jquery.cookie',
-                       'jquery.tabIndex',
-               ),
+               'jquery.client',
+               'jquery.cookie',
+               'jquery.tabIndex',
+       ),
        'remoteBasePath' => &$GLOBALS['wgStylePath'],
        'localBasePath' => &$GLOBALS['wgStyleDirectory'],
 );
diff --git a/MetrolookTemplate.php b/MetrolookTemplate.php
index 7a68bca..fe3dcc7 100644
--- a/MetrolookTemplate.php
+++ b/MetrolookTemplate.php
@@ -33,6 +33,52 @@
        /** @var string $mPersonalToolsEcho Saves Echo notifications */
        private $mPersonalToolsEcho = '';
 
+       private function getTiles( $messageName = 'metrolook-tiles' ) {
+               /**
+                * The message's format is:
+                * * URL to the site|alternative text|image URL
+                *
+                * For example:
+                * * 
http://www.pidgi.net/wiki/|PidgiWiki|http://images.pidgi.net/pidgiwikitiletop.png
+                * * http://www.pidgi.net/press/|PidgiWiki 
Press|http://images.pidgi.net/pidgipresstiletop.png
+                * * http://www.pidgi.net/jcc/|The 
JCC|http://images.pidgi.net/jcctiletop.png
+                * * http://www.petalburgwoods.com/|Petalburg 
Woods|http://images.pidgi.net/pwntiletop.png
+                */
+               $tileMessage = $this->getSkin()->msg( $messageName );
+               $tiles = '';
+               if ( $tileMessage->isDisabled() ) {
+                       return $tiles;
+               }
+
+               $lines = explode( "\n", 
$tileMessage->inContentLanguage()->text() );
+
+               foreach ( $lines as $line ) {
+                       if ( strpos( $line, '*' ) !== 0 ) {
+                               continue;
+                       } else {
+                               $line = explode( '|', trim( $line, '* ' ), 3 );
+                               $siteURL = $line[0];
+                               $altText = $line[1];
+
+                               // Maybe it's the name of a MediaWiki: message? 
I18n is
+                               // always nice, so at least try it and see what 
happens...
+                               $linkMsgObj = $this->getSkin()->msg( $altText );
+                               if ( !$linkMsgObj->isDisabled() ) {
+                                       $altText = $linkMsgObj->parse();
+                               }
+
+                               $imageURL = $line[2];
+                               $tiles .= '<div class="tile-wrapper"><div 
class="tile">' .
+                                       '<a href="' . htmlspecialchars( 
$siteURL, ENT_QUOTES ) . '"><img src="' .
+                                       htmlspecialchars( $imageURL, ENT_QUOTES 
) .
+                                       '" alt="' . htmlspecialchars( $altText, 
ENT_QUOTES ) . '" /></a>' .
+                               '</div></div>';
+                       }
+               }
+
+               return $tiles;
+       }
+
        /**
         * Outputs the entire contents of the (X)HTML page
         */
@@ -41,7 +87,7 @@
                // Build additional attributes for navigation urls
                $nav = $this->data['content_navigation'];
 
-               if ( $GLOBALS['wgVectorUseIconWatch'] ) {
+               if ( $GLOBALS['wgMetrolookUseIconWatch'] ) {
                        $mode = $this->getSkin()->getUser()->isWatched( 
$this->getSkin()->getRelevantTitle() ) ? 'unwatch' : 'watch';
                        if ( isset( $nav['actions'][$mode] ) ) {
                                $nav['views'][$mode] = $nav['actions'][$mode];
@@ -253,27 +299,20 @@
                        <div id="hamburgerIcon">
                                <img
                                class="hamburger"
+                               alt=""
                                src="<?php echo htmlspecialchars(
-                                       $this->getSkin()->getSkinStylePath( 
'images/Transparent.gif' ) ) ?>"
-                               height="40px"
-                               width="40px" />
+                                       $this->getSkin()->getSkinStylePath( 
'images/Transparent.gif' ) ) ?>" />
                        </div>
 
                        <?php
                        if ( $GLOBALS['wgMetrolookSiteName'] ) {
                                ?>
                                <div style="padding-left:10px;">
-                                       <div id="siteLogoBar" 
class="lighthover" style="height:40px;float:left;">
+                                       <div class="lighthover siteLogoBar">
                                                <div class="onhoverbg" 
style="height:40px;float:left;">
                                                        <h4 class="title-name">
                                                                <a href="<?php 
echo $this->data['nav_urls']['mainpage']['href']; ?>">
-                                                                       <div
-                                                                       
class="title-name"
-                                                                       style="
-                                                                       
font-size: 17px; padding-left: 0.4em; padding-right: 0.4em; color: white;
-                                                                       
max-width: auto; height: auto; max-height: 700px; display: inline-block;
-                                                                       
vertical-align:middle;
-                                                                       ">
+                                                                       <span 
class="title-name">
                                                                                
<?php
                                                                                
if ( $GLOBALS['wgMetrolookSiteNameText'] ) {
                                                                                
        ?>
@@ -285,7 +324,7 @@
                                                                                
<?php
                                                                                
}
                                                                                
?>
-                                                                       </div>
+                                                                       </span>
                                                                </a>
                                                        </h4>
                                                </div>
@@ -300,7 +339,7 @@
                                <?php
                                if ( $GLOBALS['wgMetrolookSiteName'] ) {
                                        ?>
-                                       <div id="siteLogoBar" 
class="lighthover" style="height:40px;float:left;">
+                                       <div class="lighthover siteLogoBar">
                                <?php
                                }
                                ?>
@@ -324,9 +363,9 @@
                        if ( $GLOBALS['wgMetrolookDownArrow'] ) {
                                ?>
                                <?php
-                               if ( $GLOBALS['wgMetrolookSiteName'] ){
+                               if ( $GLOBALS['wgMetrolookSiteName'] ) {
                                        ?>
-                                       <div id="siteLogoBar" 
class="lighthover" style="height:40px;float:left;">
+                                       <div class="lighthover siteLogoBar">
                                <?php
                                }
                                ?>
@@ -334,7 +373,7 @@
                                class="downarrow"
                                src="<?php echo htmlspecialchars(
                                        $this->getSkin()->getSkinStylePath( 
'images/Transparent.gif' ) ) ?>"
-                               style="cursor:pointer;" />
+                               />
                                <?php
                                if ( $GLOBALS['wgMetrolookSiteName'] ) {
                                        ?>
@@ -346,178 +385,28 @@
                        }
                        ?>
 
-                       <?php
-                       if ( $GLOBALS['wgMetrolookDownArrow'] ) {
-                               ?>
-                               <div id="top-tile-bar" class="fixed-position">
-                                       <div 
style="vertical-align:top;align:left;">
-                                               <div class="topleft">
-                                                       <div style="align: 
left; margin-left: auto; margin-right: auto; display: none;"
-                                                       class="tilebar" 
id="bartile">
-                                                               <div 
id="tilegrouptable">
-                                                                       <div 
id="tilegroup">
-                                                                               
<?php
-                                                                               
if ( $GLOBALS['wgMetrolookBartile'] ) {
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile1'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="http://www.pidgi.net/wiki/";>
-                                                                               
                                        <img 
src="http://images.pidgi.net/pidgiwikitiletop.png"; />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile2'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="http://www.pidgi.net/press/";>
-                                                                               
                                        <img 
src="http://images.pidgi.net/pidgipresstiletop.png"; />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile3'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;" id="jcctile">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="http://www.pidgi.net/jcc/";>
-                                                                               
                                        <img 
src="http://images.pidgi.net/jcctiletop.png"; />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile4'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="http://www.petalburgwoods.com/";>
-                                                                               
                                        <img 
src="http://images.pidgi.net/pwntiletop.png"; />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
<?php
-                                                                               
} else {
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile5'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="<?php echo $GLOBALS['wgMetrolookURL1'] 
?>">
-                                                                               
                                        <img src="<?php echo 
$GLOBALS['wgMetrolookImage1'] ?>" />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile6'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="<?php echo $GLOBALS['wgMetrolookURL2'] 
?>">
-                                                                               
                                        <img src="<?php echo 
$GLOBALS['wgMetrolookImage2'] ?>" />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile7'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="<?php echo $GLOBALS['wgMetrolookURL3'] 
?>">
-                                                                               
                                        <img src="<?php echo 
$GLOBALS['wgMetrolookImage3'] ?>" />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile8'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="<?php echo $GLOBALS['wgMetrolookURL4'] 
?>">
-                                                                               
                                        <img src="<?php echo 
$GLOBALS['wgMetrolookImage4'] ?>" />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile9'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="<?php echo $GLOBALS['wgMetrolookURL5'] 
?>">
-                                                                               
                                        <img src="<?php echo 
$GLOBALS['wgMetrolookImage5'] ?>" />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
        <?php
-                                                                               
        if ( $GLOBALS['wgMetrolookTile10'] ) {
-                                                                               
                ?>
-                                                                               
                <div style="float:left;padding:5px;">
-                                                                               
                        <div class="tile">
-                                                                               
                                <a href="<?php echo $GLOBALS['wgMetrolookURL6'] 
?>">
-                                                                               
                                        <img src="<?php echo 
$GLOBALS['wgMetrolookImage6'] ?>" />
-                                                                               
                                </a>
-                                                                               
                        </div>
-                                                                               
                </div>
-                                                                               
        <?php
-                                                                               
        }
-                                                                               
        ?>
-                                                                               
<?php
-                                                                               
}
-                                                                               
?>
-                                                                       </div>
-                                                               </div>
-                                                       </div>
-                                               </div>
-                                       </div>
-                               </div>
-                       <?php
-                       }
-                       ?>
-
                        <div id="left-navigation">
                                <?php
-                               if ( $GLOBALS['wgMetrolookUploadButton'] ) {
+                               if ( $GLOBALS['wgMetrolookUploadButton'] && 
$user->isAllowed( 'upload' ) ) {
+                                       if (
+                                               isset( 
$this->data['nav_urls']['upload']['href'] ) &&
+                                               
$this->data['nav_urls']['upload']['href']
+                                       )
+                                       {
+                                               $uploadURL = 
$this->data['nav_urls']['upload']['href'];
+                                       } else {
+                                               $upURL = 
SpecialPage::getTitleFor( 'Upload' )->getFullURL();
+                                               $uploadURL = htmlspecialchars( 
$upURL, ENT_QUOTES );
+                                       }
                                        ?>
-                                       <a href="<?php echo 
$this->data['nav_urls']['upload']['href']; ?>">
-                                               <div
-                                               class="onhoverbg"
-                                               
style="padding-left:0.8em;padding-right:0.8em;float:left;height:40px;font-size:10pt;">
+                                       <a href="<?php echo $uploadURL; ?>">
+                                               <div class="onhoverbg" 
id="uploadbutton">
                                                        <img
                                                        class="uploadbutton"
+                                                       alt=""
                                                        src="<?php echo 
htmlspecialchars(
                                                                
$this->getSkin()->getSkinStylePath( 'images/Transparent.gif' ) ) ?>" />
-                                                               <span 
style="color:#fff;position:relative;top:3px; ">
+                                                               <span 
class="uploadbutton">
                                                                        <?php 
$this->msg( 'uploadbtn' ) ?>
                                                                </span>
                                                </div>
@@ -591,6 +480,30 @@
                                        ?>
                                        <?php $this->renderNavigation( array( 
'SEARCH' ) ); ?>
                                        <?php $this->renderPortals( 
$this->data['sidebar'] ); ?>
+                               </div>
+                       <?php
+                       }
+                       ?>
+
+                       <?php
+                       if ( $GLOBALS['wgMetrolookDownArrow'] ) {
+                               ?>
+                               <div class="top-tile-bar-inner-container">
+                                       <div class="topleft">
+                                               <div class="tilebar" 
id="bartile">
+                                                       <div 
id="tilegrouptable">
+                                                               <div 
id="tilegroup">
+                                                                       <?php
+                                                                       if ( 
$GLOBALS['wgMetrolookBartile'] ) {
+                                                                               
echo $this->getTiles();
+                                                                       } else {
+                                                                               
echo $this->getTiles( 'metrolook-tiles-second' );
+                                                                       }
+                                                                       ?>
+                                                               </div>
+                                                       </div>
+                                               </div>
+                                       </div>
                                </div>
                        <?php
                        }
@@ -816,7 +729,7 @@
 
                                                        <form action="<?php 
$this->text( 'wgScript' ) ?>" id="searchform">
                                                                <?php
-                                                               if ( 
$GLOBALS['wgVectorUseSimpleSearch'] ) {
+                                                               if ( 
$GLOBALS['wgMetrolookUseSimpleSearch'] ) {
                                                                ?>
                                                                <div 
id="simpleSearch">
                                                                        <?php
@@ -862,7 +775,7 @@
 
                                                        <form action="<?php 
$this->text( 'wgScript' ) ?>" id="searchform">
                                                                <?php
-                                                               if ( 
$GLOBALS['wgVectorUseSimpleSearch'] ) {
+                                                               if ( 
$GLOBALS['wgMetrolookUseSimpleSearch'] ) {
                                                                ?>
                                                                <div 
id="simpleSearchSearch">
                                                                        <?php
diff --git a/README.md b/README.md
index 84b2da4..e07f22d 100644
--- a/README.md
+++ b/README.md
@@ -8,11 +8,16 @@
 
 Compatible with MediaWiki 1.23+.
 
-If you would like compatibility with mediawiki 1.26, 1.25, 1.24, 1.22 or 1.21 
please visit 
+If you would like compatibility with older releases of MediaWiki, download the
+appropriate version for your MediaWiki from one of the URLs below:
+
+1.27
+
+https://github.com/paladox/Metrolook/tree/master
 
 1.26
 
-https://github.com/paladox/Metrolook/tree/master
+https://github.com/paladox/Metrolook/tree/REL1_26
 
 1.25
 
@@ -30,196 +35,52 @@
 
 https://github.com/paladox/Metrolook/tree/REL1_21
 
+### Live demo
 
-Please be aware that there are issues in the codes if you see any could you 
point it out it would help. and there are things like logos already set sorry i 
will put a setting there.
+A working demo of the skin is available at 
http://www.pidgi.net/metrolooktest/index.php/Main_Page .
+This is currently using MediaWiki 1.25wmf18 and a snapshot of the test branch 
of the skin.
 
-A working demo of the skin is available at 
http://www.pidgi.net/metrolooktest/index.php/Main_Page . This is currently 
using MediaWiki 1.25wmf18 and a snapshot of the test branch of the skin.
+### On-wiki documentation
 
-## Installation
+Please visit https://www.mediawiki.org/wiki/Skin:Metrolook where the 
documentation is now located.
 
-Download and save in skins/ folder 
+### Mobile design
 
-Add this to LocalSettings.php
+Mobile design now included in the latest release for MediaWiki 1.21+.
+To get mobile design please download Metrolook release 0.2.0, 0.3.10, 1.4, 2.5 
or 3.0 beta 16 or higher.
 
-```php
-require_once "$IP/skins/Metrolook/Metrolook.php";
-```
+Please report any and all bugs, issues and other feedback via the bug tracker 
(see below).
 
-## Settings
+### Bugs
+Bugs and issues should be reported on the MediaWiki Phabricator or GitHub.
+It is strongly recommended that you use Phabricator to report bugs and submit
+feedback, as more developers will see the report and are able to act on it.
 
-1.23 only
+Phabricator is located at:
 
-|Setting|Default|To Enable|To Disable|
-|-------|-------|---------|----------|
-|wgMetrolookLogo| `false` | `$wgMetrolookLogo = true;`| `$wgMetrolookLogo = 
false;`|
-|wgMetrolookSiteName| `true` | `$wgMetrolookSiteName = true;`| 
`$wgMetrolookSiteName = false;`|
-|wgMetrolookSiteNameText| `true` | `$wgMetrolookSiteNameText = true;`| 
`$wgMetrolookSiteNameText = false;`|
-|wgMetrolookSiteText| `There is none` | `$wgMetrolookSiteNameText = false;` 
then do `$wgMetrolookSiteText = 'Enter text here';`| `$wgMetrolookSiteNameText 
= true;`|
-|wgMetrolookSearchBar| `true` | `$wgMetrolookSearchBar = true;`| 
`$wgMetrolookSearchBar = false;`|
-|wgMetrolookDownArrow| `true` | `$wgMetrolookDownArrow = true;`| 
`$wgMetrolookDownArrow = false;`|
-|wgMetrolookLine| `true` | `$wgMetrolookLine = true;`| `$wgMetrolookLine = 
false;`|
-|wgMetrolookUploadButton| `true` | `$wgMetrolookUploadButton = true;`| 
`$wgMetrolookUploadButton = false;`|
-|wgMetrolookMobile| `true` | `$wgMetrolookMobile = true;`| `$wgMetrolookMobile 
= false;`|
-|wgMetrolookBartile| `true` | `$wgMetrolookBartile = true;`| 
`$wgMetrolookBartile = false;`|
-|`$wgMetrolookTileN`<br>Where `N` is between 1 to 4. | `true` | 
`$wgMetrolookTile1 = true;`| `$wgMetrolookTile1 = false;` |
-|`$wgMetrolookTileN`<br>Where `N` is between 5 to 10. | | `$wgMetrolookTile5 = 
true;`| `$wgMetrolookTile5 = false;` |
-|`$wgMetrolookURLN`, `$wgMetrolookImageN`<br>Where `N` is between 1 to 6. |  | 
`$wgMetrolookURL1 = link of website;`<br>`$wgMetrolookImage1 = image link;`| |
-|wgMetrolookFeatures| `$wgMetrolookFeatures'] = array( 'collapsiblenav' => 
array( 'global' => false, 'user' => true ), );` | default is enabled | 
`$wgDefaultUserOptions['skinmetrolook-collapsiblenav'] = 0;` to disable it but 
allow users in preference to enable it. or `$wgMetrolookFeatures = array( 
'collapsiblenav' => array( 'global' => false, 'user' => false ), );` to disable 
everywhere|
+https://phabricator.wikimedia.org/tag/mediawiki-skins-metrolook/
 
-$wgBartile is now used to disable the default tiles or enable them so you can 
have the default tiles or set your self one.
+If, for some reason, you are unable to unwilling to use Phabricator, you can
+submit your bug on GitHub, but it is likely to receive less attention there
+than on Phabricator.
 
-$link and $picture were removed in favour of using $wgMetrolookBartile and 
$wgMetrolookURL1 and $wgMetrolookImage1
+The GitHub bug reporting URL is:
 
-$logo was removed in favour of $wgMetrolookLogo and $wgMetrolookSiteName.
+https://github.com/paladox/Metrolook/issues
 
-
-Note: Tile 5 to 10 is for when you disable bartile.
-
-Note: Image setting should be set like this for example $wgMetrolookImage1 = 
file/to/image or can be set like http://example.com/image.png;
-
-You can shorten youre site name for the top bar with $wgMetrolookSiteText. To 
set it please enable $wgMetrolookSiteNameText by doing $wgMetrolookSiteNameText 
= false then set this $wgMetrolookSiteText = 'Enter text here';
-
-
-## Mobile desgn
-
-Mobile desgn now included in the latest release for MediaWiki 1.21+. Also to 
get mobile desgn please download Metrolook release 0.2.0, 0.3.10, 1.4, 2.5 or 
3.0 beta 16 or higher please.
-
-And please report feedback in the issues tab. And if you could help fix the 
problem and or improve the desgn please open and pull task.
-
-
-## Customizing top bar color
-
-To customise top bar colour ether add it to theme.css which is in metrolook 
skin folder or MediaWiki:Metrolook.css from web browser.
-
-and all you need to do is edit background-colour and the top bar should change 
colour but please remember there is also hover which is when you hover it goes 
a different colour.
-
-```css
-
-/* Add your custom theme overrides here */
-
-/* Top Bar colour and hover colour start */
-
-@import "mediawiki.mixins";
-
-#mw-page-base {
-       height: 2.5em;
-       background-color: dodgerBlue;
-       background-position: bottom left;
-       background-repeat: repeat-x;
-       /* This image is only a fallback (for IE 6-9), so we do not @embed it. 
*/
-       background-image: url('images/page-fade.png');
-       min-width: auto;
-}
-
-@media (max-width:768px) {
-#mw-page-base {
-       height: 2.5em;
-       background-color: dodgerBlue;
-       background-position: bottom left;
-       background-repeat: repeat-x;
-       /* This image is only a fallback (for IE 6-9), so we do not @embed it. 
*/
-       background-image: url('images/page-fade.png');
-       min-width: 24em;
-}
-}
-
-@media only screen and (min-device-width : 768px) and (max-device-width : 
1024px) and (orientation : portrait) {
-#mw-page-base {
-       height: 2.5em;
-       background-color: dodgerBlue;
-       background-position: bottom left;
-       background-repeat: repeat-x;
-       /* This image is only a fallback (for IE 6-9), so we do not @embed it. 
*/
-       background-image: url('images/page-fade.png');
-       min-width: 25em;
-}
-}
-
-@media only screen and (min-device-width : 768px) and (max-device-width : 
1024px) and (orientation : landscape) {
-#mw-page-base {
-       height: 2.5em;
-       background-color: dodgerBlue;
-       background-position: bottom left;
-       background-repeat: repeat-x;
-       /* This image is only a fallback (for IE 6-9), so we do not @embed it. 
*/
-       background-image: url('images/page-fade.png');
-       min-width: 64.7em;
-}
-}
-
-div.vectorTabs a:hover {
-       background-color: blue;
-}
-
-div.onhoverbg:hover {
-       background-color: blue;
-}
-
-img.downarrow:hover{
-       background-color: blue;
-}
-
-div.vectorMenu:hover h5 a {
-       background-color: blue;
-}
-
-div.vectorMenu h5 a {
-       display: inline-block;
-       width: 24px;
-       height: 2em;
-       background-color: dodgerBlue; 
-       .background-image-svg('images/arrow-down-icon.svg', 
'images/arrow-down-icon.png');
-       background-position: 50% 50%; 
-       background-repeat: no-repeat;
-       .transition(background-position 250ms);
-}
-
-div.vectorMenu:hover {
-       background-color: blue;
-}
-
-div.vectorMenu ul {
-       border: solid 2px dodgerBlue;
-       border-top: none;
-
-}
-
-@media (max-width: 768px) {
-#hamburgerIcon:hover {
-       background-color: blue;
-}
-
-img.editbutton:hover {
-       background-color: blue;
-}
-
-div.actionmenu ul {
-       border-top: solid 2px dodgerBlue;
-}
-
-#left-navigation {
-       background-color: dodgerBlue;
-}
-}
-/* To change bullet icon to a circle */
-
-ul {
-       list-style-type: disc;
-       .list-style-image('images/bullet-circle-icon.png');
-}
-
-/* Top Bar colour and hover colour end */
-```
+It is recommended that you spend a while reading the documentation and
+searching the archived discussions before posting a question - it is
+possible that someone has experienced the same issue with this software
+that you are experiencing currently.
 
 ## Known Issues
 
-* Sometimes clicking of bartitle on mobile, it wont let you click off 
sometimes.
-
-## Comming soon
-
-Note plans may change.
+See https://phabricator.wikimedia.org/tag/mediawiki-skins-metrolook/ for a list
+of currently open bugs.
 
 ## Version
+
+5.x.x requires MediaWiki 1.27.
 
 4.x.x requires MediaWiki 1.26.
 
@@ -232,14 +93,3 @@
 0.3.x requires MediaWiki 1.22.
 
 0.2.x requires MediaWiki 1.21.
-
-
-## Removed things
-
-Please do not remove this section. it is for things that have been removed and 
used for if something goes wrong and the problem was because it was removed 
then they can use the things here.
-
-```html
-<link href='http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz:700' 
defer="defer" rel='stylesheet' type='text/css'>
-<meta name="msapplication-TileImage" 
content="http://www.pidgi.net/new/public/images/pidgiwiki.png"/>
-<meta name="msapplication-TileColor" content="#BE0027"/>
-```
diff --git a/components/common.less b/components/common.less
index d887160..49642cb 100644
--- a/components/common.less
+++ b/components/common.less
@@ -26,27 +26,18 @@
        background-color: #f3f3f3;
 }
 
-body {
-       height: 100%;
+.top-tile-bar-inner-container {
+       align: left;
+       vertical-align: top;
 }
-html {
-       height: 100%;
+
+.tile-wrapper {
+       float: left;
+       padding: 5px;
 }
-html,
-body {
-       margin: 0px 0px 0px 0px;
-       padding: 0px 0px 0px 0px;
-       height: 100%;
-}
-#top-tile-bar {
-       background: transparent;
-       left: 0px;
-       height: 200px;
-       position: fixed;
-       z-index: 100;
-}
+
 .tilebar {
-       position: relative;
+       position: fixed;
        left: 0px;
        top: 0px;
        right: 0px;
@@ -54,16 +45,30 @@
        align: right;
        color: #fff;
        background: #1D1D1D;
-       width: 21474836.47em;
        height: 200px;
        display: block;
        z-index: 9999999;
+       margin-left: auto;
+       margin-right: auto;
+       display: none;
 }
+
 .tile:hover {
        outline: 3px #4A4A4A solid;
 }
-.onhoverbg:hover {
-       background: #9F6F40;
+
+.onhoverbg {
+       height: 40px;
+       float: left;
+
+       &:hover {
+               background: #9F6F40;
+       }
+}
+
+.siteLogoBar {
+       float: left;
+       height: 40px;
 }
 
 .topleft {
@@ -106,7 +111,7 @@
        color: black;
        direction: ltr;
        height: auto;
-       position: absolute;
+       position: relative;
        bottom: 0;
        right: 0;
        left: 0;
@@ -175,51 +180,82 @@
        }
 }
 
+
 img.uploadbutton {
-       position:inherit;
+       position: inherit;
        .background-image-svg('images/uploadlogo.svg', 'images/uploadlogo.png');
-       width: 26px; /* width of your image */
-       height: 35px; /* height of your image */
-       margin: 0; /* If you want no margin */
-       padding: 0; /* if your want to padding */
+       width: 26px;
+       height: 35px;
+       margin: 0;
+       padding: 0;
        background-repeat: no-repeat;
 }
 
+span.uploadbutton {
+       color: #fff;
+       position: relative;
+       top: 3px;
+}
+
+#uploadbutton {
+       padding-left:0.8em;
+       padding-right:0.8em;
+}
+
 img.line {
+       float: left;
        position: inherit;
-       .background-image-svg('images/line.svg', 'images/line.png'); 
-       width: 2px; /* width of your image */
-       height: 35px; /* height of your image */
-       margin: 0; /* If you want no margin */
-       padding: 0; /* if your want to padding */
+       .background-image-svg('images/line.svg', 'images/line.png');
+       width: 2px;
+       height: 35px;
+       margin: 0;
+       padding: 0;
        background-repeat: no-repeat;
 }
 
 img.downarrow {
+       cursor: pointer;
        position: inherit;
        .background-image-svg('images/downarrow.svg', 'images/downarrow.png');
-       width: 28px; /* width of your image */
-       height: 40px; /* height of your image */
-       margin: 0; /* If you want no margin */
-       padding: 0; /* if your want to padding */
+       width: 28px;
+       height: 40px;
+       margin: 0;
+       padding: 0;
        background-repeat: no-repeat;
-}
 
-img.downarrow:hover {
-       position: inherit;
-       background: #9F6F40;
-       .background-image-svg('images/downarrow.svg', 'images/downarrow.png');
-       width: 28px; /* width of your image */
-       height: 40px; /* height of your image */
-       margin: 0; /* If you want no margin */
-       padding: 0; /* if your want to padding */
-       background-repeat: no-repeat;
+       &:hover {
+               position: inherit;
+               background: #9F6F40;
+               .background-image-svg('images/downarrow.svg', 
'images/downarrow.png');
+               width: 28px;
+               height: 40px;
+               margin: 0;
+               padding: 0;
+               background-repeat: no-repeat;
+       }
 }
 
 #hamburgerIcon {
        position: fixed;
        top: 40px;
        z-index: 0;
+
+       img.hamburger {
+               height: 40px;
+               width: 40px;
+       }
+}
+
+span.title-name {
+       color: white;
+       display: inline-block;
+       font-size: 17px;
+       height: auto;
+       padding-left: 0.4em;
+       padding-right: 0.4em;
+       max-height: 700px;
+       max-width: auto;
+       vertical-align: middle;
 }
 
 /* Hide empty portlets */
@@ -268,4 +304,3 @@
 .hoverbox:hover {
        background: #9F6F40;
 }
-
diff --git a/components/mobile.less b/components/mobile.less
index fe6abab..96cdece 100644
--- a/components/mobile.less
+++ b/components/mobile.less
@@ -9,7 +9,7 @@
 }
 
 div#mw-head {
-       position: absolute;
+       position: fixed;
        top: 0;
        min-width: 97%;
 
@@ -119,8 +119,9 @@
 }
 
 #siteLogoBar {
-       float: none;
-       margin: 0 auto;
+       float: none !important;
+       margin: 0 auto !important;
+       height: 0 !important;
 }
 
 div#mw-panel {
diff --git a/components/navigation.less b/components/navigation.less
index bdc6432..918f0e7 100644
--- a/components/navigation.less
+++ b/components/navigation.less
@@ -23,7 +23,10 @@
        /* This image is only a fallback (for IE 6-9), so we do not @embed it. 
*/
        background-image: url('images/page-fade.png');
        .vertical-gradient(#CF8B54, #CF8B54, 50%, 100%);
-       min-width: auto;
+       min-width: 100%;
+       position: fixed;
+       top: 0px;
+       z-index: 3;
 }
 
 #mw-head-base {
@@ -37,9 +40,10 @@
 }
 
 div#mw-head {
-       position: absolute;
+       position: fixed;
        top: 0;
        min-width: 100%;
+       z-index: 3;
 
        h5 {
                margin: 0;
@@ -51,7 +55,13 @@
 #left-navigation {
        float: initial;
        /* IE 6 double-margin bug fix */
-       display: inline; 
+       display: inline;
+
+       .onhoverbg {
+               padding-left: 0.8em;
+               padding-right: 0.8em;
+               font-size: 10pt;
+       } 
 }
 
 #right-navigation {
@@ -96,7 +106,7 @@
 /* Panel */
 div#mw-panel {
        font-size: @menu-main-font-size;
-       position: absolute;
+       position: fixed;
        top: 40px;
        bottom: 0px;
        height: auto;
@@ -106,6 +116,7 @@
        padding-top: 1em;
        width: 11em;
        left: 0;
+       z-index: 1;
 
        div.portal {
                margin: 0 0.6em 0 0.7em;
@@ -171,7 +182,7 @@
 /* Panel */
 div#mw-panel-custom {
        font-size: @menu-main-font-size;
-       position: absolute;
+       position: fixed;
        top: 40px;
        bottom: 0;
        height: auto;
@@ -182,6 +193,7 @@
        padding-top: 1em;
        width: 11em;
        left: 0;
+       z-index: 1;
 
        div.portal-custom {
                margin: 0 0.6em 0 0.7em;
diff --git a/components/personalMenu.less b/components/personalMenu.less
index 5149240..37b69e7 100644
--- a/components/personalMenu.less
+++ b/components/personalMenu.less
@@ -85,7 +85,10 @@
        list-style: none;
 }
 
+.mw-echo-overlay{
+       position: fixed !important;
+}
+
 .username-space {
        margin-right: 0.4em;
 }
-
diff --git a/components/tablet.less b/components/tablet.less
index cecdc24..6a070d4 100644
--- a/components/tablet.less
+++ b/components/tablet.less
@@ -16,7 +16,6 @@
 }
 }
 
-
 @media only screen and (min-device-width: 481px) and (max-device-width: 
1024px) and (orientation:landscape) and (orientation:portrait) {
 
 img.searchbar {
@@ -31,10 +30,9 @@
        margin-left: 0px;
 }
 
-
 div#mw-panel {
        font-size: @menu-main-font-size;
-       position: absolute;
+       position: fixed;
        top: 40px;
        bottom: 0;
        height: auto;
@@ -106,7 +104,7 @@
 
 div#mw-panel-custom {
        font-size: @menu-main-font-size;
-       position: absolute;
+       position: fixed;
        top: 40px;
        bottom: 0;
        height: auto;
@@ -180,7 +178,7 @@
        }
 }
 
-.mw-body {
+div#content {
        margin-left: 11em;
        padding: 1.25em 1.5em 1.5em 1.5em;
        /* @embed */
@@ -191,7 +189,7 @@
        color: black;
        direction: ltr;
        height: auto;
-       position: absolute;
+       position: fixed;
        bottom: 0;
        right: 0em;
        left: 0;
@@ -209,21 +207,18 @@
                margin: 0.5em 0;
        }
 
-       h2 {
+       h1,
+       h2,
+       #firstHeading {
                font-family: @content-heading-font-family;
                line-height: @heading-line-height;
                margin-bottom: 0.25em;
                padding: 0;
        }
 
-       h1 {
+       h1,
+       #firstHeading {
                font-size: @content-heading-font-size;
-       }
-       
-       .mw-body-content {
-               h1 {
-                       margin-top: 1em;
-               }
        }
 
        h2 {
@@ -242,7 +237,7 @@
        }
 
        h3 {
-               font-size: 1.2em;
+               font-size: 1.17em;
        }
 
        h3,
@@ -261,32 +256,11 @@
                font-size: 100%; /* (reset) */
                font-family: @content-font-family;
        }
-
-       .firstHeading {
-               /* Change the default from mediawiki.skinning CSS to let 
indicators float into heading area */
-               overflow: visible;
-       }
-
-       .mw-indicators {
-               float: right;
-               line-height: @content-line-height;
-               font-size: @content-font-size;
-               /* Ensure that this is displayed on top of .mw-body-content and 
clickable */
-               position: relative;
-               z-index: 1;
-       }
-
-       .mw-indicator {
-               display: inline-block;
-               zoom: 1;
-               *display: inline;
-       }
 }
 
 div#mw-head {
-       position: absolute;
+       position: fixed;
        top: 0;
-       min-width: 99%;
 
        h5 {
                margin: 0;
@@ -301,7 +275,6 @@
        background-repeat: repeat-x;
        /* This image is only a fallback (for IE 6-9), so we do not @embed it. 
*/
        background-image: url('images/page-fade.png');
-       min-width: 62em;
 }
 
 #p-search {
@@ -364,7 +337,7 @@
 
 div#mw-panel {
        font-size: @menu-main-font-size;
-       position: absolute;
+       position: fixed;
        top: 40px;
        bottom: 0;
        height: auto;
@@ -436,7 +409,7 @@
 
 div#mw-panel-custom {
        font-size: @menu-main-font-size;
-       position: absolute;
+       position: fixed;
        top: 40px;
        bottom: 0;
        height: auto;
@@ -510,7 +483,7 @@
        }
 }
 
-.mw-body {
+div#content {
        margin-left: 11em;
        padding: 1.25em 1.5em 1.5em 1.5em;
        /* @embed */
@@ -521,7 +494,7 @@
        color: black;
        direction: ltr;
        height: auto;
-       position: absolute;
+       position: fixed;
        bottom: 0;
        right: 0;
        left: 0;
@@ -539,21 +512,18 @@
                margin: 0.5em 0;
        }
 
-       h2 {
+       h1,
+       h2,
+       #firstHeading {
                font-family: @content-heading-font-family;
                line-height: @heading-line-height;
                margin-bottom: 0.25em;
                padding: 0;
        }
 
-       h1 {
+       h1,
+       #firstHeading {
                font-size: @content-heading-font-size;
-       }
-       
-       .mw-body-content {
-               h1 {
-                       margin-top: 1em;
-               }
        }
 
        h2 {
@@ -572,7 +542,7 @@
        }
 
        h3 {
-               font-size: 1.2em;
+               font-size: 1.17em;
        }
 
        h3,
@@ -591,32 +561,11 @@
                font-size: 100%; /* (reset) */
                font-family: @content-font-family;
        }
-
-       .firstHeading {
-               /* Change the default from mediawiki.skinning CSS to let 
indicators float into heading area */
-               overflow: visible;
-       }
-
-       .mw-indicators {
-               float: right;
-               line-height: @content-line-height;
-               font-size: @content-font-size;
-               /* Ensure that this is displayed on top of .mw-body-content and 
clickable */
-               position: relative;
-               z-index: 1;
-       }
-
-       .mw-indicator {
-               display: inline-block;
-               zoom: 1;
-               *display: inline;
-       }
 }
 
 div#mw-head {
-       position: absolute;
+       position: fixed;
        top: 0;
-       min-width: 92.750%;
 
        h5 {
                margin: 0;
diff --git a/components/tabs.less b/components/tabs.less
index 7d0e0ac..d95dfde 100644
--- a/components/tabs.less
+++ b/components/tabs.less
@@ -203,7 +203,6 @@
 }
 
 div.vectorMenu div.menu {
-       position: relative;
        display: none;
        clear: both;
        text-align: left;
diff --git a/components/watchstar.less b/components/watchstar.less
index 1a6d1fc..bcbbe5d 100644
--- a/components/watchstar.less
+++ b/components/watchstar.less
@@ -1,4 +1,4 @@
-@import "mediawiki.mixins.rotation"
+@import "mediawiki.mixins.rotation";
 
 /* Watch/Unwatch Icon Styling */
 #ca-unwatch.icon a,
@@ -11,7 +11,7 @@
        padding-top: 3.1em;
        margin-top: 0;
        /* Only applied in IE6 */
-       margin-top: -0.8em !ie;
+       _margin-top: -0.8em;
        height: 0;
        overflow: hidden;
        background-position: 5px 60%;
diff --git a/i18n/en-gb.json b/i18n/arq.json
similarity index 68%
rename from i18n/en-gb.json
rename to i18n/arq.json
index e6b6cec..8d60c20 100644
--- a/i18n/en-gb.json
+++ b/i18n/arq.json
@@ -1,9 +1,9 @@
 {
        "@metadata": {
                "authors": [
-                       "Caliburn"
+                       "Bachounda"
                ]
        },
        "metrolook-desc": "Metrolook skin for MediaWiki",
-       "metrolook-guest": "Guest"
+       "metrolook-guest": "ضيف"
 }
diff --git a/i18n/ast.json b/i18n/ast.json
index 2bcdfe9..2cbd6da 100644
--- a/i18n/ast.json
+++ b/i18n/ast.json
@@ -4,6 +4,7 @@
                        "Xuacu"
                ]
        },
-       "metrolook-desc": "Aspeutu Metrolook pa MediaWiki",
+       "metrolook-desc": "Metrolook ye una aspeutu deriváu de Vector 
[https://en.wikipedia.org/wiki/Metro_(design_language) inspiráu por Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Permitir plegar los 
elementos de la barra llateral nel aspeutu Metrolook",
        "metrolook-guest": "Invitáu"
 }
diff --git a/i18n/ba.json b/i18n/ba.json
new file mode 100644
index 0000000..b1b237a
--- /dev/null
+++ b/i18n/ba.json
@@ -0,0 +1,8 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Рустам Нурыев"
+               ]
+       },
+       "metrolook-guest": "Ҡунаҡ"
+}
diff --git a/i18n/be-tarask.json b/i18n/be-tarask.json
index a9091ad..e4435ca 100644
--- a/i18n/be-tarask.json
+++ b/i18n/be-tarask.json
@@ -4,6 +4,7 @@
                        "Red Winged Duck"
                ]
        },
-       "metrolook-desc": "Тэма афармленьня Metrolook для MediaWiki",
+       "metrolook-desc": "Metrolook — адгалінаваньне тэмы афармленьня Vector, 
натхнёная [https://en.wikipedia.org/wiki/Metro_(design_language) Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Дазволіць згортваць блёкі ў 
бакавым мэню ў тэме афармленьня «Metrolook»",
        "metrolook-guest": "Госьць"
 }
diff --git a/i18n/de.json b/i18n/de.json
index dffda24..7788b67 100644
--- a/i18n/de.json
+++ b/i18n/de.json
@@ -5,6 +5,7 @@
                        "Purodha"
                ]
        },
-       "metrolook-desc": "Fügt die Benutzeroberfläche „Metrolook“ zu MediaWiki 
hinzu",
+       "metrolook-desc": "Metrolook ist eine 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro-inspirierte] 
Abspaltung der Benutzeroberfläche „Vector“",
+       "skinmetrolook-collapsiblenav-preference": "Aktiviert das Einklappen 
von Elementen in der Seitenleiste in der Benutzeroberfläche „Metrolook“",
        "metrolook-guest": "Gast"
 }
diff --git a/i18n/en.json b/i18n/en.json
index c238405..b70309c 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -5,7 +5,11 @@
                ]
        },
        "skinname-metrolook": "Metrolook",
+       "metrolook-desc": "Metrolook is a 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro-inspired] fork of 
the Vector skin",
+       "metrolook.css": "/* CSS placed here will affect users of the Metrolook 
skin */",
+       "metrolook.js": "/* Any JavaScript here will be loaded for users using 
the Metrolook skin */",
        "skinmetrolook-collapsiblenav-preference": "Enable collapsing of items 
in the sidebar in Metrolook skin",
-       "metrolook-desc": "Metrolook skin for MediaWiki",
-       "metrolook-guest": "Guest"
+       "metrolook-guest": "Guest",
+       "metrolook-tiles": "* 
http://www.pidgi.net/wiki/|PidgiWiki|http://images.pidgi.net/pidgiwikitiletop.png\n*
 http://www.pidgi.net/press/|PidgiWiki 
Press|http://images.pidgi.net/pidgipresstiletop.png\n* 
http://www.petalburgwoods.com/|Petalburg 
Woods|http://images.pidgi.net/pwntiletop.png\n* 
http://burstcade.pidgi.net/|Burstcade|http://images.pidgi.net/burstcadetiletop.png";,
+       "metrolook-tiles-second": ""
 }
diff --git a/i18n/es.json b/i18n/es.json
index fb2a3c2..40dabbd 100644
--- a/i18n/es.json
+++ b/i18n/es.json
@@ -1,9 +1,11 @@
 {
        "@metadata": {
                "authors": [
-                       "Macofe"
+                       "Macofe",
+                       "Fitoschido"
                ]
        },
-       "metrolook-desc": "Apariencia Metrolook para MediaWiki",
+       "metrolook-desc": "Metrolook es una apariencia derivada de Vector 
[https://en.wikipedia.org/wiki/Metro_(design_language) inspirada en Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Permitir plegar los 
elementos de la barra lateral en la apariencia Metrolook",
        "metrolook-guest": "Invitado"
 }
diff --git a/i18n/fa.json b/i18n/fa.json
index 13addfa..bdf0c44 100644
--- a/i18n/fa.json
+++ b/i18n/fa.json
@@ -4,6 +4,7 @@
                        "Reza1615"
                ]
        },
-       "metrolook-desc": "پوسته مترلوک برای مدیاویکی",
+       "metrolook-desc": "مترلوک یک 
انشعاب[https://en.wikipedia.org/wiki/Metro_(design_language) Metro-inspired]  
برای پوستهٔ برداری است",
+       "skinmetrolook-collapsiblenav-preference": "در پوسته مترولوک در نوار 
کناری جمع‌شوندگی آیتم‌ها را فعال کن",
        "metrolook-guest": "مهمان"
 }
diff --git a/i18n/fi.json b/i18n/fi.json
index a97bd32..23019e2 100644
--- a/i18n/fi.json
+++ b/i18n/fi.json
@@ -1,9 +1,10 @@
 {
        "@metadata": {
                "authors": [
-                       "McSalama"
+                       "McSalama",
+                       "Pitke"
                ]
        },
-       "metrolook-desc": "Metrolook-teema MediaWikiin",
+       "metrolook-desc": "Metrolook on Metro-designkuvailukielen innoittama 
versio Vector-ulkoasusta",
        "metrolook-guest": "Vieras"
 }
diff --git a/i18n/fo.json b/i18n/fo.json
new file mode 100644
index 0000000..e27ab8c
--- /dev/null
+++ b/i18n/fo.json
@@ -0,0 +1,9 @@
+{
+       "@metadata": {
+               "authors": [
+                       "EileenSanda"
+               ]
+       },
+       "metrolook-desc": "Metrolook útsjónd fyri MediaWiki",
+       "metrolook-guest": "Gestur"
+}
diff --git a/i18n/fr.json b/i18n/fr.json
index 709dd79..a8de492 100644
--- a/i18n/fr.json
+++ b/i18n/fr.json
@@ -2,9 +2,12 @@
        "@metadata": {
                "authors": [
                        "Linedwell",
-                       "Nicolapps"
+                       "Nicolapps",
+                       "Wladek92",
+                       "VictorBrice"
                ]
        },
-       "metrolook-desc": "Skin Metrolook pour MediaWiki",
+       "metrolook-desc": " Metrolook est fourchette d'a 
[https://en.wikipedia.org/wiki/Metro_(design_language) inspiré par la métro] du 
Vectorskin",
+       "skinmetrolook-collapsiblenav-preference": "Activer le repli des 
éléments dans la barre latérale de navigation pour l'habillage Metrolook",
        "metrolook-guest": "Invité"
 }
diff --git a/i18n/gl.json b/i18n/gl.json
index 84268b8..aaf454c 100644
--- a/i18n/gl.json
+++ b/i18n/gl.json
@@ -1,9 +1,11 @@
 {
        "@metadata": {
                "authors": [
-                       "Elisardojm"
+                       "Elisardojm",
+                       "Toliño"
                ]
        },
-       "metrolook-desc": "Aparencia Metrolook para MediaWiki",
+       "metrolook-desc": "Metrolook é unha aparencia derivada da aparencia 
Vector e [https://en.wikipedia.org/wiki/Metro_(design_language) inspirada en 
Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Permitir pregar os 
elementos da barra lateral na aparencia Metrolook",
        "metrolook-guest": "Invitado"
 }
diff --git a/i18n/he.json b/i18n/he.json
index fa3ee2c..bf8e780 100644
--- a/i18n/he.json
+++ b/i18n/he.json
@@ -1,9 +1,11 @@
 {
        "@metadata": {
                "authors": [
-                       "Yona b"
+                       "Yona b",
+                       "Amire80"
                ]
        },
-       "metrolook-desc": "עיצוב מטרולוק למדיה־ויקי",
+       "metrolook-desc": "עיצוב מטרולוק למדיה־ויקי הוא פיצול מעיצוב וקטור 
[https://en.wikipedia.org/wiki/Metro_(design_language) בהשראת מטרו]",
+       "skinmetrolook-collapsiblenav-preference": "הפעלת הסתרת פריטים בסרגל 
הצד בעיצוב מטרולוק",
        "metrolook-guest": "אורח"
 }
diff --git a/i18n/hu.json b/i18n/hu.json
new file mode 100644
index 0000000..3e6ab9b
--- /dev/null
+++ b/i18n/hu.json
@@ -0,0 +1,10 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Tacsipacsi"
+               ]
+       },
+       "metrolook-desc": "A Metrolook egy 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro] által inspirált 
módosítása a Vector felületnek",
+       "skinmetrolook-collapsiblenav-preference": "Elemek becsukásának 
engedélyezése az oldalsávon Metrolook felületen",
+       "metrolook-guest": "Vendég"
+}
diff --git a/i18n/hy.json b/i18n/hy.json
new file mode 100644
index 0000000..ab32a44
--- /dev/null
+++ b/i18n/hy.json
@@ -0,0 +1,8 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Vahe Gharakhanyan"
+               ]
+       },
+       "metrolook-guest": "Հյուր"
+}
diff --git a/i18n/ia.json b/i18n/ia.json
index f8388d5..726e2a9 100644
--- a/i18n/ia.json
+++ b/i18n/ia.json
@@ -4,6 +4,7 @@
                        "McDutchie"
                ]
        },
-       "metrolook-desc": "Apparentia Metrolook pro MediaWiki",
+       "metrolook-desc": "Metrolook es un variante del apparentia Vector 
[https://en.wikipedia.org/wiki/Metro_(design_language) inspirate per Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Permitter de plicar 
elementos in le barra lateral in le apparentia Metrolook",
        "metrolook-guest": "Hospite"
 }
diff --git a/i18n/jbo.json b/i18n/jbo.json
new file mode 100644
index 0000000..4052b74
--- /dev/null
+++ b/i18n/jbo.json
@@ -0,0 +1,11 @@
+{
+       "@metadata": {
+               "authors": [
+                       "lagleki"
+               ]
+       },
+       "skinname-metrolook": "la Metroluk",
+       "metrolook-desc": "la Metroluk noi taxfu xau la'oi MediaWiki",
+       "skinmetrolook-collapsiblenav-preference": "lo taxfu be fa la Metroluk 
zo'u e'a polje lo pagbu",
+       "metrolook-guest": "vitke"
+}
diff --git a/i18n/km.json b/i18n/km.json
new file mode 100644
index 0000000..987e223
--- /dev/null
+++ b/i18n/km.json
@@ -0,0 +1,8 @@
+{
+       "@metadata": {
+               "authors": [
+                       "គីមស៊្រុន"
+               ]
+       },
+       "metrolook-guest": "ភ្ញៀវ"
+}
diff --git a/i18n/ko.json b/i18n/ko.json
index 433c58f..ddc356c 100644
--- a/i18n/ko.json
+++ b/i18n/ko.json
@@ -5,6 +5,7 @@
                ]
        },
        "skinname-metrolook": "메트로룩",
-       "metrolook-desc": "미디어위키를 위한 메트로룩 스킨",
+       "metrolook-desc": "메트로룩은 벡터 스킨의 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro에서 영감을 얻은] 포크입니다",
+       "skinmetrolook-collapsiblenav-preference": "메트로룩 스킨에서 사이드바 항목 접기 활성화",
        "metrolook-guest": "손님"
 }
diff --git a/i18n/ksh.json b/i18n/ksh.json
index 3eadce2..8385d8c 100644
--- a/i18n/ksh.json
+++ b/i18n/ksh.json
@@ -4,6 +4,7 @@
                        "Purodha"
                ]
        },
-       "metrolook-desc": "De Bovverfläsch „Metrolook“ för et MehdijaWikki.",
+       "metrolook-desc": "De Bedeenbovverfläsch „Metrolook“ es ene vum 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro] aanjerähschte 
Övverärbeijdong vun dä Bovverfläsch Vektor.",
+       "skinmetrolook-collapsiblenav-preference": "Donn et Zosammefallde vun 
de Enndrähsch en de  lengkleß aan de Sigg en de Bedehnbovverfläsch „Metrolook“ 
zohlohße.",
        "metrolook-guest": "Jaß"
 }
diff --git a/i18n/lb.json b/i18n/lb.json
index bdb34bc..7997aca 100644
--- a/i18n/lb.json
+++ b/i18n/lb.json
@@ -4,6 +4,7 @@
                        "Robby"
                ]
        },
-       "metrolook-desc": "\"Metrolook\" Interface fir MediaWiki",
+       "metrolook-desc": "\"Metrolook\" ass eng vum 
[https://en.wikipedia.org/wiki/Metro_(design_language)Metro-inspiréiert] 
Versioun vum Vector-Interface",
+       "skinmetrolook-collapsiblenav-preference": "Zesummeklappe vun Objeten 
am Navigatiouns-Menü am Interface Metrolook aschalten",
        "metrolook-guest": "Gaascht"
 }
diff --git a/i18n/mk.json b/i18n/mk.json
index 80fb497..7f48703 100644
--- a/i18n/mk.json
+++ b/i18n/mk.json
@@ -4,6 +4,10 @@
                        "Bjankuloski06"
                ]
        },
-       "metrolook-desc": "Руво „Метроизглед“ за МедијаВики",
+       "skinname-metrolook": "Метроизглед",
+       "metrolook-desc": "„Метроизглед“ е варијанта на рувото „Векторско“ 
инспирирано од дизајнерскиот јазик 
[https://en.wikipedia.org/wiki/Metro_(design_language) Метро]",
+       "metrolook.css": "/* Тука поставениот CSS ќе се применува врз 
корисниците на рувото „Метроизглед“ */",
+       "metrolook.js": "/* Тука поставениот JavaScript  ќе им се вчитува на 
корисниците што го користат рувото „Метроизглед“ */",
+       "skinmetrolook-collapsiblenav-preference": "Овозможи расклоп на ставки 
во страничникот на рувото „Метроизглед“",
        "metrolook-guest": "Гостин"
 }
diff --git a/i18n/mr.json b/i18n/mr.json
new file mode 100644
index 0000000..3a9d150
--- /dev/null
+++ b/i18n/mr.json
@@ -0,0 +1,9 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Suyog"
+               ]
+       },
+       "metrolook-desc": "मेट्रोलुक स्कीन मेडियाविकी साठी",
+       "metrolook-guest": "पाहूणा"
+}
diff --git a/i18n/ms.json b/i18n/ms.json
new file mode 100644
index 0000000..b5312c6
--- /dev/null
+++ b/i18n/ms.json
@@ -0,0 +1,9 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Anakmalaysia"
+               ]
+       },
+       "metrolook-desc": "Rupa Metrolook untuk MediaWiki",
+       "metrolook-guest": "Tetamu"
+}
diff --git a/i18n/nap.json b/i18n/nap.json
index 63e4d40..92bf538 100644
--- a/i18n/nap.json
+++ b/i18n/nap.json
@@ -4,6 +4,7 @@
                        "C.R."
                ]
        },
-       "metrolook-desc": "Skin Metrolook pe' MediaWiki",
+       "metrolook-desc": "Metrolook è n'ata sponta d' 'o Vector skin 
[https://en.wikipedia.org/wiki/Metro_(design_language) inspirata a Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Appiccia 'a funzione 'e 
avarrucà ll'item ncopp' 'o sidebar into' 'o skin Metrolook",
        "metrolook-guest": "Mmitato"
 }
diff --git a/i18n/nl.json b/i18n/nl.json
index 308c2be..932d276 100644
--- a/i18n/nl.json
+++ b/i18n/nl.json
@@ -1,8 +1,12 @@
 {
        "@metadata": {
                "authors": [
-                       "Sjoerddebruin"
+                       "Sjoerddebruin",
+                       "Siebrand",
+                       "Esketti"
                ]
        },
+       "skinmetrolook-collapsiblenav-preference": "Inschakelen instorten van 
de items in de zijbalk in Metrolook huid",
+       "metrolook-desc": "Metrolookuiterlijk voor MediaWiki",
        "metrolook-guest": "Gast"
 }
diff --git a/i18n/olo.json b/i18n/olo.json
new file mode 100644
index 0000000..3257d62
--- /dev/null
+++ b/i18n/olo.json
@@ -0,0 +1,8 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Mashoi7"
+               ]
+       },
+       "metrolook-guest": "Gost'u"
+}
diff --git a/i18n/pl.json b/i18n/pl.json
index 82a48b6..10da8d6 100644
--- a/i18n/pl.json
+++ b/i18n/pl.json
@@ -1,9 +1,11 @@
 {
        "@metadata": {
                "authors": [
-                       "Chrumps"
+                       "Chrumps",
+                       "The Polish"
                ]
        },
-       "metrolook-desc": "Skórka Metrolook dla MediaWiki",
+       "metrolook-desc": "Metrolook jest forkiem skórki Wektor wzorowanym na 
[https://pl.wikipedia.org/wiki/Modern_UI Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Włącz zwijanie sekcji menu 
bocznego w skórce Wektor",
        "metrolook-guest": "Gość"
 }
diff --git a/i18n/qqq.json b/i18n/qqq.json
index 60d964e..deaaee3 100644
--- a/i18n/qqq.json
+++ b/i18n/qqq.json
@@ -3,11 +3,16 @@
                "authors": [
                        "paladox",
                        "Liuxinyu970226",
-                       "Umherirrender"
+                       "Umherirrender",
+                       "Raymond"
                ]
        },
        "skinname-metrolook": "{{optional}}",
-       "skinmetrolook-collapsiblenav-preference": "The message refers to the 
sidebar, whose sections a re collapsible in Metrolook skin (some of them 
collapsed by default and some no); the preference disables collapsing entirely 
and is among \"Advanced options\" in the \"Appearence\" section.",
-       "metrolook-desc": 
"{{desc|name=Metrolook|url=https://www.mediawiki.org/wiki/Skin:Metrolook}}";,
-       "metrolook-guest": "Used for descbribing you as a guest editing the 
wiki.\n{{Identical|Guest}}"
+       "metrolook-desc": 
"{{desc|what=skin|name=Metrolook|url=https://www.mediawiki.org/wiki/Skin:Metrolook}}";,
+       "metrolook.css": "{{optional}}",
+       "metrolook.js": "{{optional}}",
+       "skinmetrolook-collapsiblenav-preference": "The message refers to the 
sidebar, whose sections are collapsible in Metrolook skin (some of them 
collapsed by default and some no); the preference disables collapsing entirely 
and is among \"Advanced options\" in the \"Appearence\" section.",
+       "metrolook-guest": "Used for descbribing you as a guest editing the 
wiki.\n{{Identical|Guest}}",
+       "metrolook-tiles": "Used to configure the first set of tiles, which are 
displayed when <code>$wgMetrolookBartile</code> is set to 
<code>true</code>.\nThe message's format is:\n\n* URL to the site|alternative 
text|image URL\n\nFor example:\n\n* 
http://www.pidgi.net/wiki/|PidgiWiki|http://images.pidgi.net/pidgiwikitiletop.png\n*
 http://www.pidgi.net/press/|PidgiWiki 
Press|http://images.pidgi.net/pidgipresstiletop.png\n* 
http://www.pidgi.net/jcc/|The JCC|http://images.pidgi.net/jcctiletop.png\n* 
http://www.petalburgwoods.com/|Petalburg 
Woods|http://images.pidgi.net/pwntiletop.png";,
+       "metrolook-tiles-second": "Used to configure the second set of tiles, 
which are displayed when <code>$wgMetrolookBartile</code> is set to 
<code>false</code>. The format is same as that of 
[[MediaWiki:Metrolook-tiles]]."
 }
diff --git a/i18n/ro.json b/i18n/ro.json
new file mode 100644
index 0000000..e4b3356
--- /dev/null
+++ b/i18n/ro.json
@@ -0,0 +1,11 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Strainu",
+                       "Minisarm"
+               ]
+       },
+       "metrolook-desc": "Metrolook este o variantă a aspectului Vector 
[https://en.wikipedia.org/wiki/Metro_(design_language) inspirată de limbajul 
Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Permite restrângerea 
elementelor din bara laterală în tema Metrolook",
+       "metrolook-guest": "Oaspete"
+}
diff --git a/i18n/roa-tara.json b/i18n/roa-tara.json
index f250811..c9a8edb 100644
--- a/i18n/roa-tara.json
+++ b/i18n/roa-tara.json
@@ -4,6 +4,7 @@
                        "Joetaras"
                ]
        },
-       "metrolook-desc": "Skin Metrolook pe MediaUicchi",
+       "metrolook-desc": "Skin Metrolook jè 'nu sotte skin de Vector 
[https://en.wikipedia.org/wiki/Metro_(design_language) ispirate a Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Abbilite 'a chiusure de le 
vôsce jndr'à barre laterale d'u skin Metrolook",
        "metrolook-guest": "Ospite"
 }
diff --git a/i18n/ru.json b/i18n/ru.json
index 1ed03e9..6123123 100644
--- a/i18n/ru.json
+++ b/i18n/ru.json
@@ -4,6 +4,7 @@
                        "Okras"
                ]
        },
-       "metrolook-desc": "Тема оформления MediaWiki Metrolook",
+       "metrolook-desc": "Metrolook — это основанная на принципах интерфейса 
[https://ru.wikipedia.org/wiki/Metro (интерфейс)|Metro] модификация темы 
оформления «Векторное»",
+       "skinmetrolook-collapsiblenav-preference": "Разрешить сворачивать блоки 
в левом меню в теме «Metrolook»",
        "metrolook-guest": "Гость"
 }
diff --git a/i18n/scn.json b/i18n/scn.json
new file mode 100644
index 0000000..69dc1b5
--- /dev/null
+++ b/i18n/scn.json
@@ -0,0 +1,11 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Pippinu",
+                       "Sarvaturi"
+               ]
+       },
+       "metrolook-desc": "Peddi Metrolook pi MediaWiki",
+       "skinmetrolook-collapsiblenav-preference": "Cunzenti di strìnciri 
l'elimenti dâ sbarra latirali ntâ peddi Metrolook",
+       "metrolook-guest": "Òspiti"
+}
diff --git a/i18n/sv.json b/i18n/sv.json
index f5d35d7..fb5fa06 100644
--- a/i18n/sv.json
+++ b/i18n/sv.json
@@ -1,9 +1,12 @@
 {
        "@metadata": {
                "authors": [
-                       "Lokal Profil"
+                       "Lokal Profil",
+                       "WikiPhoenix"
                ]
        },
-       "metrolook-desc": "Metrolook-utseende för MediaWiki",
+       "skinname-metrolook": "Metrolook",
+       "metrolook-desc": "Metrolook är en 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro-inspirerad] 
version av utseendet Vector",
+       "skinmetrolook-collapsiblenav-preference": "Aktivera möjligheten att 
kollapsa objekt i sidofältet av Metrolook-utseendet",
        "metrolook-guest": "Gäst"
 }
diff --git a/i18n/uk.json b/i18n/uk.json
index a62b1f2..9739689 100644
--- a/i18n/uk.json
+++ b/i18n/uk.json
@@ -4,6 +4,7 @@
                        "Ата"
                ]
        },
-       "metrolook-desc": "Тема оформлення MediaWiki Metrolook",
+       "metrolook-desc": "Metrolook — це відгалуження теми оформлення Вектор, 
[https://en.wikipedia.org/wiki/Metro_(design_language) навіяне Metro]",
+       "skinmetrolook-collapsiblenav-preference": "Дозволити згортання 
елементів бічного меню в темі «Metrolook»",
        "metrolook-guest": "Гість"
 }
diff --git a/i18n/vi.json b/i18n/vi.json
index 58e199f..8ed304e 100644
--- a/i18n/vi.json
+++ b/i18n/vi.json
@@ -4,6 +4,9 @@
                        "Minh Nguyen"
                ]
        },
-       "metrolook-desc": "Giao diện Metrolook dành cho MediaWiki",
+       "metrolook-desc": "Metrolook là một giao diện dựa trên Vectơ mà phỏng 
theo [https://en.wikipedia.org/wiki/Metro_(design_language) Metro]",
+       "metrolook.css": "/* Mã CSS tại đây sẽ ảnh hưởng đến những người dùng 
sử dụng giao diện Metrolook */",
+       "metrolook.js": "/* Mã JavaScript tại đây sẽ được tải khi người dùng sử 
dụng giao diện Metrolook */",
+       "skinmetrolook-collapsiblenav-preference": "Bật trình đơn chuyển hướng 
gấp lại được ở bên phải trong giao diện Metrolook",
        "metrolook-guest": "Khách"
 }
diff --git a/i18n/xmf.json b/i18n/xmf.json
new file mode 100644
index 0000000..f93264e
--- /dev/null
+++ b/i18n/xmf.json
@@ -0,0 +1,8 @@
+{
+       "@metadata": {
+               "authors": [
+                       "Silovan"
+               ]
+       },
+       "metrolook-guest": "სუმარი"
+}
diff --git a/i18n/zh-hans.json b/i18n/zh-hans.json
index dfa7268..721de05 100644
--- a/i18n/zh-hans.json
+++ b/i18n/zh-hans.json
@@ -4,6 +4,8 @@
                        "Liuxinyu970226"
                ]
        },
-       "metrolook-desc": "用于MediaWiki的Metrolook皮肤",
+       "metrolook-desc": 
"Metrolook是一种[https://en.wikipedia.org/wiki/Metro_(design_language) 
受Metro启发]的Vector皮肤复制品",
+       "metrolook.css": "/* 这里放置的CSS将影响使用Metrolook皮肤的用户 */",
+       "skinmetrolook-collapsiblenav-preference": "在Metrolook皮肤的侧边栏启用折叠项目",
        "metrolook-guest": "访客"
 }
diff --git a/i18n/zh-hant.json b/i18n/zh-hant.json
index 204989c..81ec70c 100644
--- a/i18n/zh-hant.json
+++ b/i18n/zh-hant.json
@@ -4,6 +4,7 @@
                        "Cwlin0416"
                ]
        },
-       "metrolook-desc": "MediaWiki 的 Metrolook 外觀",
+       "metrolook-desc": "Metrolook 是 Vector 外觀的 
[https://en.wikipedia.org/wiki/Metro_(design_language) Metro-inspired] 分支",
+       "skinmetrolook-collapsiblenav-preference": "開啟 Metrolook 外觀的側邊欄項目摺疊功能",
        "metrolook-guest": "訪客"
 }
diff --git a/js/mediawiki.searchSuggest.custom.js 
b/js/mediawiki.searchSuggest.custom.js
index 2a39109..79ff8ab 100644
--- a/js/mediawiki.searchSuggest.custom.js
+++ b/js/mediawiki.searchSuggest.custom.js
@@ -22,8 +22,9 @@
                        konqueror: [['>=', '4.11']],
                        docomo: false,
                        blackberry: false,
-                       ipod: false,
-                       iphone: false
+                       // Support for iOS 6 or higher. It has not been tested 
on iOS 5 or lower
+                       ipod: [ [ '>=', 6 ] ],
+                       iphone: [ [ '>=', 6 ] ]
                };
 
                if ( !$.client.test( map ) ) {
diff --git a/js/metrolook.js b/js/metrolook.js
index 3244aa8..2309db3 100644
--- a/js/metrolook.js
+++ b/js/metrolook.js
@@ -1,142 +1,97 @@
-var openDiv, $;
-function toggleDiv(divID) {
-       $("#" + divID).fadeToggle(150, function() {
-               openDiv = $(this).is(':visible') ? divID : null;
-       });
+/* global $ */
+var openDiv;
+function toggleDiv( divID ) {
+       $( '#' + divID ).fadeToggle( 150, function() {
+               openDiv = $( this ).is( ':visible' ) ? divID : null;
+       } );
 }
 
-$(document).click(function(e) {
-       if (!$(e.target).closest('#'+openDiv).length) {
-               toggleDiv(openDiv);
+$( document ).click( function( e ) {
+       if ( !$( e.target ).closest( '#' + openDiv ).length ) {
+               toggleDiv( openDiv );
        }
-});
+} );
 
-function is_touch_device() {
-       return !!('ontouchstart' in window);
+function isTouchDevice() {
+       return !!( 'ontouchstart' in window );
 }
 
-$(document).ready(function() {
-       if (is_touch_device()) {
-               if ( 
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|CriOS|Opera 
Mini|Mobile|mobile/i.test(navigator.userAgent) ) {
-                       $( '#usermenu > div' ).toggleClass( 'no-js js' );
-                       $( '#usermenu .js div' ).hide();
-                       $( '#usermenu .js' ).click(function(e) {
-                               $( '#usermenu .js div' ).fadeToggle(150);
-                               $( '#usermenu' ).toggleClass( 'active' );
-                               e.stopPropagation();
-                       });
+function isMobileUserAgent() {
+       return !!( 
/mobi|alcatel|Android|android|kindle|webOS|webos|iPhone|iPad|iPod|Tablet|PlayBook|Wii|Silk|BlackBerry|playstation|phone|nintendo|htc[-_]|IEMobile|CriOS|Opera
 Mini|opera.m|palm|panasonic|philips|samsung|Mobile|mobile/i.test( 
navigator.userAgent ) );
+}
 
-                       $(document).click(function() {
-                               if ($( '#usermenu .js div' ).is( ':visible' )) {
-                                       $( '#usermenu .js div', 
this).fadeOut(150);
-                                       $( '#usermenu' ).removeClass( 'active' 
);
-                               }
-                       });
-               }
-       }
-});
+$( function() {
+       if ( isTouchDevice() && isMobileUserAgent() ) {
+               $( '#usermenu > div' ).toggleClass( 'no-js js' );
+               $( '#usermenu .js div' ).hide();
+               $( '#usermenu .js' ).click( function( e ) {
+                       $( '#usermenu .js div' ).fadeToggle( 150 );
+                       $( '#usermenu' ).toggleClass( 'active' );
+                       e.stopPropagation();
+               } );
 
-$(function () {
-       if (is_touch_device()) {
-               if ( 
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|CriOS|Opera 
Mini|Mobile|mobile/i.test(navigator.userAgent) ) {
-                       $( '.actionmenu > div' ).toggleClass('no-js js');
-                       $( '.actionmenu .js div' ).hide();
-                       $( '.actionmenu .js' ).click(function(e) {
-                               $( '.actionmenu .js div' ).fadeToggle(150);
-                               $( '.clicker' ).toggleClass( 'active' );
-                               e.stopPropagation();
-                       });
+               $( '.actionmenu > div' ).toggleClass( 'no-js js' );
+               $( '.actionmenu .js div' ).hide();
+               $( '.actionmenu .js' ).click( function( e ) {
+                       $( '.actionmenu .js div' ).fadeToggle( 150 );
+                       $( '.clicker' ).toggleClass( 'active' );
+                       e.stopPropagation();
+               } );
 
-                       $(document).click(function() {
-                               if ($( '.actionmenu .js div' ).is( ':visible' 
)) {
-                                       $( '.actionmenu .js div', 
this).fadeOut(150);
-                                       $( '.clicker' ).removeClass( 'active' );
-                               }
-                       });
-               }
-       }
-});
+               $( document ).click( function() {
+                       if ( $( '.actionmenu .js div' ).is( ':visible' ) ) {
+                               $( '.actionmenu .js div', this ).fadeOut( 150 );
+                               $( '.clicker' ).removeClass( 'active' );
+                       }
 
-$(function () {
-       $( '#hamburgerIcon' ).click(function(e) {
-               $( '#mw-panel' ).fadeToggle(150);
+                       if ( $( '#usermenu .js div' ).is( ':visible' ) ) {
+                               $( '#usermenu .js div', this ).fadeOut( 150 );
+                               $( '#usermenu' ).removeClass( 'active' );
+                       }
+               } );
+       } // end mobile-only code
+
+       $( '#hamburgerIcon' ).click( function( e ) {
+               $( '#mw-panel, #mw-panel-custom' ).fadeToggle( 150 );
                $( '.clicker' ).toggleClass( 'active' );
-               e.stopPropagation();
-       });
-       $( '#hamburgerIcon' ).click(function() {
-               if ($( '#mw-panel' ).is( ':visible' )) {
-                       $( '#mw-panel', this).fadeOut(150);
+               if (
+                       $( '#mw-panel' ).is( ':visible' ) ||
+                       $( '#mw-panel-custom' ).is( ':visible' )
+               )
+               {
+                       $( '#mw-panel, #mw-panel-custom', this ).fadeOut( 150 );
                        $( '.clicker' ).removeClass( 'active' );
                }
-       });
-});
-
-$(function () {
-       $( '#hamburgerIcon' ).click(function(e) {
-               $( '#mw-panel-custom' ).fadeToggle(150);
-               $('.clicker').toggleClass('active');
                e.stopPropagation();
-       });
-       $( '#hamburgerIcon' ).click(function() {
-               if ($( '#mw-panel-custom' ).is( ':visible' )) {
-                       $( '#mw-panel-custom', this).fadeOut(150);
-                       $( '.clicker' ).removeClass('active');
+       } );
+
+       $( 'img.editbutton' ).click( function( e ) {
+               $( '#left-navigation' ).fadeToggle( 150 );
+               $( '.clicker' ).toggleClass( 'active' );
+               if ( $( '#left-navigation' ).is( ':visible' ) ) {
+                       $( '#left-navigation', this ).fadeOut( 150 );
+                       $( '.clicker' ).removeClass( 'active' );
                }
-       });
-});
-
-$(function () {
-       if (is_touch_device()) {
-               if ( 
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|CriOS|Opera 
Mini|Mobile|mobile/i.test(navigator.userAgent) ) {
-                       var $wgMetrolookMobile = true;
-                       if ($wgMetrolookMobile) {
-                           $( '#p-search' ).hide();
-                           $( 'img.searchbar' ).click(function(e) {
-                                   $( '#p-search' ).fadeToggle(150);
-                                   $('.clicker').toggleClass( 'active' );
-                                   e.stopPropagation();
-                           });
-                           $( 'img.searchbar').click(function() {
-                                   if ($( '#p-search' ).is( ':visible' )) {
-                                       $( '#p-search', this).fadeOut(150);
-                                           $( '.clicker' ).removeClass( 
'active' );
-                                   }
-                           });
-                       } else {
-                               $( 'img.searchbar' ).hide();
-                       }               
-               }
-       }
-});
-
-$(function () {
-var $wgMetrolookMobile = true;
-       if ($wgMetrolookMobile) {
-           $('img.editbutton').click(function(e) {
-                   $('#left-navigation').fadeToggle(150);
-                   $('.clicker').toggleClass('active');
-                   e.stopPropagation();
-           });
-           $('img.editbutton').click(function() {
-                   if ($('#left-navigation').is(':visible')) {
-                           $('#left-navigation', this).fadeOut(150);
-                           $('.clicker').removeClass('active');
-                   }
-           });
-       } else {
-               $( 'img.editbutton' ).hide();
-       }
-});
-
-$(function () {
-       $('img.downarrow').click(function(e) {
-               $( 'img.downarrow' ).on( 'click', toggleDiv( 'bartile' ) );
                e.stopPropagation();
-       });
-       $('img.downarrow').click(function() {
-               if ($('#bartile').is(':visible')) {
-                       $('#bartile', this).fadeOut(150);
-                       $('.clicker').removeClass('active');
+       } );
+
+       $( 'img.downarrow' ).click( function( e ) {
+               toggleDiv( 'bartile' );
+               if ( $( '#bartile' ).is( ':visible' ) ) {
+                       $( '#bartile', this ).fadeOut( 150 );
+                       $( '.clicker' ).removeClass( 'active' );
                }
-       });
-});
+               e.stopPropagation();
+       } );
+
+       // Listen to clicks (taps on mobile) to the black bar and if it was
+       // clicked/tapped (instead of an individual tile), dismiss the menu.
+       // This improves usability especially on lower-end mobile devices with
+       // smaller screens.
+       // Fixes https://phabricator.wikimedia.org/T105785
+       $( '#tilegroup' ).not( '.tile-wrapper' ).on( 'click', function() {
+               if ( $( '#bartile' ).is( ':visible' ) ) {
+                       toggleDiv( 'bartile' );
+               }
+       } );
+} );
diff --git a/js/metrolook.search.js b/js/metrolook.search.js
new file mode 100644
index 0000000..a6d9987
--- /dev/null
+++ b/js/metrolook.search.js
@@ -0,0 +1,30 @@
+/* global $ */
+
+function isTouchDevice() {
+       return !!('ontouchstart' in window);
+}
+
+/* This is here to fix js issue with iPad (all models) */
+$(function () {
+       if( isTouchDevice() ) {
+               if( 
/mobi|alcatel|Android|android|webOS|webos|iPhone|iPod|Wii|Silk|BlackBerry|playstation|phone|nintendo|htc[-_]|IEMobile|CriOS|Opera
 
Mini|opera.m|palm|panasonic|philips|samsung|Mobile|mobile/i.test(navigator.userAgent)
 ) {
+                       $( '#p-search' ).hide();
+                       $( 'img.searchbar' ).click(function(e) {
+                               $( '#p-search' ).fadeToggle(150);
+                               $('.clicker').toggleClass( 'active' );
+                               e.stopPropagation();
+                       });
+                       $( 'img.searchbar').click(function() {
+                               if ($( '#p-search' ).is( ':visible' )) {
+                                       $( '#p-search', this).fadeOut(150);
+                                       $( '.clicker' ).removeClass( 'active' );
+                               }
+                       });
+               }
+
+               /* Fix search bar not showing on iPad */
+               if( /kindle|iPad|PlayBook|Tablet/i.test(navigator.userAgent) ) {
+                       $( '#p-search' ).show();
+               }
+       }
+});
diff --git a/package.json b/package.json
index d1896df..637aa4b 100644
--- a/package.json
+++ b/package.json
@@ -5,7 +5,7 @@
   "devDependencies": {
     "grunt": "0.4.5",
     "grunt-cli": "0.1.13",
-    "grunt-contrib-jshint": "0.11.2",
+    "grunt-contrib-jshint": "0.11.3",
     "grunt-jscs": "1.8.0",
     "grunt-jsonlint": "1.0.4"
   }

-- 
To view, visit https://gerrit.wikimedia.org/r/244936
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I2829fae3abd0626c56bb2c3812ade6b97b9d8e2f
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/skins/Metrolook
Gerrit-Branch: REL1_23
Gerrit-Owner: Paladox <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to