Commit graph

1498 commits

Author SHA1 Message Date
Piotr Miazga 9d1217e13e PageActions menu elements should be built by using IMenuElement
To simplify and make code reusable all menu elements should be built
by using Builder pattern. This a first step, first we the pageActions
methods should return Group object/IMenuElement objects, then in the
second step we will extract this logic into Director/Builder
classes leaving SkinMinerva class much smaller.

Bug: T221792
Change-Id: Ic51c4ca4139919fc3c5f3ada8b1b2fe5d23031d7
2019-06-05 13:08:33 +02:00
jenkins-bot cb7dfc2dc6 Merge "Untangle watchstar icon" 2019-06-04 22:17:50 +00:00
jenkins-bot 3973853f59 Merge "Adding a reflist.less file to hold Template:Reflist specific styles" 2019-06-04 21:43:18 +00:00
jenkins-bot 36adeaa059 Merge "build: Upgrade wdio-mocha-framework to be node10 compatible" 2019-06-04 18:39:12 +00:00
Piotr Miazga 047618c24d Hygiene: SkinUserPageHelper should support Title = null
In some edge cases the RequestContext::getTitle() can return null
instead of Title object. Similar situations already happened in the
past (see T179833). The RequestContext::getTitle() documentation
says it can return null, therefore code should be resilient and
support such situations, even if there are not common.

Bug: T221792
Change-Id: I842f8c49f20e511fda3b081e59a06586810bc748
2019-06-04 17:17:58 +02:00
Jan Drewniak 7af32bc309 Treat anonymouse user IP pages as UserPages
Ensure SkinUserPageHelper::isUserPage() returns true for user pages
that are IP addresses.

Also adds the page-action menu to all user pages.

Bug: T220114
Change-Id: I3703899bc9ff0042c74260d36f48a388b78b0b6b
2019-06-04 11:53:07 +02:00
James D. Forrester 8234fb6b81 build: Upgrade wdio-mocha-framework to be node10 compatible
Change-Id: I064af803e376271ef7fa832ec8b1e8b9e2de84ce
2019-06-03 14:58:56 -07:00
jenkins-bot 3598618390 Merge "Hygiene: test method names should be written in cameCase" 2019-06-03 17:37:46 +00:00
jenkins-bot 9dd0d21029 Merge "Minerva nav_urls are used only when OverflowMenu is present" 2019-06-03 17:26:03 +00:00
jenkins-bot 89b9d58b93 Merge "temporarily disabling failing browser tests for language selector" 2019-06-03 16:55:26 +00:00
Piotr Miazga b3a7047d65 Hygiene: test method names should be written in cameCase
Change-Id: I12bd086c0ebd42133b6f7171847dbe50f8f7fe30
2019-06-03 18:53:40 +02:00
jenkins-bot 4ef947da28 Merge "Watchstar should respect viewmywatchlist|editmywatchlist permissions" 2019-06-03 16:16:58 +00:00
Jan Drewniak ed9f455545 Adding a reflist.less file to hold Template:Reflist specific styles
Template:Reflist needs a larger column-gap to be consistent with
the Vector skin.

Bug: T150377
Change-Id: I14911f9b0fa46249cf11a591bc5323a227f7c3cc
2019-06-03 14:27:50 +02:00
Jan Drewniak c0b4911670 temporarily disabling failing browser tests for language selector
Bug: T224605
Change-Id: I4dbc3c5355f795adfb162b4a1a649440e0f36ca0
2019-06-03 12:41:15 +02:00
Translation updater bot 89fb347e09 Localisation updates from https://translatewiki.net.
Change-Id: Icd66a27cf3a859798b36886905723254326d53d2
2019-06-02 22:00:52 +02:00
Piotr Miazga 4ec9b06a77 Watchstar should respect viewmywatchlist|editmywatchlist permissions
If viewmywatchlist|editmywatchlist permisions were set to false for
anonymous user, MinervaSkin would show a watchstar icon that links
to LoginPage, even if user was logged in. Clicking watching action
would cause browser to reload the page without any effect.
Under the hood - system would redirect to login, and then the login
page would redirect user back to the article page because user is
logged in.

MinervaSkin should respect viewmywatchlist|editmywatchlist
permissions. If user do not have access to watchlist, do not show
watch icon.

Bug: T221792
Change-Id: I26a1133a7ccff6a4adcdc72d594d0902bfa8ff79
2019-05-31 17:34:35 +00:00
Translation updater bot af7c282e79 Localisation updates from https://translatewiki.net.
Change-Id: I70f7f8562de9d7c68e8c40a8727e38edfb10f1e3
2019-05-30 22:25:02 +02:00
jenkins-bot bed22c9221 Merge "QA: Don't chain things that cannot be chained" 2019-05-30 20:01:36 +00:00
jenkins-bot 797fadde48 Merge "Fix z-index issue with button on action=history page" 2019-05-30 19:28:51 +00:00
Piotr Miazga 82a2edf585 Untangle watchstar icon
The SkinMinerva::createWatchPageAction() was depending upon
$tpl['content_navigation']['actions'] object, which is created by
SkinTemplate::buildContentNavigationUrls(). Although only 'watch'
and 'unwatch' keys were used, moreover, code was using only 'href'
property from both 'watch' and 'unwatch'. All other props are
overrided, not used when rendering. Also the title of unwatch
icon was set to "watch this page" which was incorrect.

This system was bit complex to manage (we should provide dependencies
not pass the whole 'content_navigation']['actions'] array). It would
also make further refactoring more difficult, as watchstar icon
shouldn't depened on quicktemplate stuff. We were using only href
attribute which is super easy to calculate.

Changes:
 - do not depend upon $actions, get href by using $title->getLocalUrl
 - set proper title for unwatch icon
 - simplified SkinMinerva::createWatchPageAction() logic

Bug: T221792
Change-Id: I9609949b60a7e2f2f0a947c05c80c89be32d4cb1
2019-05-29 17:37:40 +02:00
jdlrobson 94c0926614 QA: Don't chain things that cannot be chained
Causing builds to fail on
https://integration.wikimedia.org/ci/view/Reading-Web/job/selenium-daily-beta-Minerva/58/console

Bug: T223676
Change-Id: Ia285f8bd2f61e6e59aa38cd1909b450328eb053c
2019-05-28 15:43:39 +02:00
Translation updater bot dc729b0a66 Localisation updates from https://translatewiki.net.
Change-Id: I2ac2ab1b33ac61cf350e5e07c796ea43b000b435
2019-05-27 21:58:25 +02:00
Jan Drewniak 650198b7bb Fix z-index issue with button on action=history page
When opening/closing the main navigation, the large blue button
on the action=history page is visible above the opaque page content.

This changes the z-index when the main navigation is enabled.

Bug: T219895
Change-Id: I724c2419800a4aec0b55b18be920d8bf7e47fa60
2019-05-27 16:48:09 +02:00
Santhosh Thottingal 80484b74de
Fix a comment about SkinMinerva::buildPersonalUrls
Change-Id: Iaff610894ee34f343a735990614e569b4682a4f2
2019-05-27 12:10:20 +05:30
Translation updater bot cc92cb47e2 Localisation updates from https://translatewiki.net.
Change-Id: I600b8e36342bbc69f538fe37259fe02f0ee73fb2
2019-05-23 22:42:28 +02:00
Translation updater bot 4a54748cfe Localisation updates from https://translatewiki.net.
Change-Id: Iaa9428aac013c27cd7fa14167abada01590bac03
2019-05-22 22:06:01 +02:00
jenkins-bot a1b175a11a Merge "skins.minerva.scripts: Remove use of deprecated ext.eventLogging.subscriber" 2019-05-22 19:49:45 +00:00
Timo Tijhof 9ef2e2e88f skins.minerva.scripts: Remove use of deprecated ext.eventLogging.subscriber
Was trimmed down and merged into 'ext.eventLogging'.

Bug: T221281
Change-Id: Idd03f92950a05bef31b7ad843600504281ec39f2
2019-05-22 20:03:56 +01:00
Jan Drewniak 078aab76d8 Adds AMC styles for action=history page
Styles the action=history page to resemble it's desktop
counterpart for users in AMC mode.

Bug: T219895
Change-Id: Ide359724a4628f69ef03acee7718d70c698b8faf
2019-05-22 14:24:43 +02:00
jenkins-bot 42dce8db1a Merge "Add a LESS z-index variable for elements that sit above page content" 2019-05-22 00:54:28 +00:00
Translation updater bot 2fc8dd0204 Localisation updates from https://translatewiki.net.
Change-Id: If661b9ee8ddd326eb116e72255ad05a8eec048e3
2019-05-20 21:57:52 +02:00
jenkins-bot c4b31067ab Merge "Provide IMenuEntry interface" 2019-05-17 13:12:09 +00:00
Translation updater bot 9937a8a72d Localisation updates from https://translatewiki.net.
Change-Id: I26ee2e60d9bcc94bd8e816503fc402814f98ec92
2019-05-16 08:32:09 +02:00
Translation updater bot 1f00a454b2 Localisation updates from https://translatewiki.net.
Change-Id: I8c917a7c48fb9d230570eff8a928b9a121abdb7f
2019-05-15 08:12:17 +02:00
jenkins-bot 7a83809f4d Merge "Minerva shouldn't call Skin::getNewTalks() twice" 2019-05-14 15:34:44 +00:00
Piotr Miazga 39a2078472 Minerva shouldn't call Skin::getNewTalks() twice
The Skin::getNewTalks() is already called in SkinTemplate::prepareQuickTemplate.
There is no need to call this function again, as is pretty heavy. Instead of
calling it second time, just re-use the value stored in the QuickTemplate

Change-Id: I0e9491405f4d760278db3a423ee14e8f80720291
2019-05-14 16:09:18 +02:00
Piotr Miazga 6905b85d67 Provide IMenuEntry interface
The Group shouldn't depend upon concrete MenuEntry definition.
Different Menus can present different MenuElements. Code should
allow easy extensions, not limit only to single MenuEntry
definition.

Changes:
 - introduced IMenuEntry interface
 - MenuEntry implements IMenuEntry
 - removed isJSOnly from logic as it's related only to one menu
 element (Watchstar) and Group shouldn't be aware of some special
 handling for some elements. The IMenuEntry shouldn't define this
 method
 - getName, getComponents, getCSSClasses should have defined return
 types

Bug: 1221792
Change-Id: I0646df734e869c26bfa8c3a772200e8258a8acce
2019-05-14 13:12:37 +02:00
Jan Drewniak 20013d1e3d Add a LESS z-index variable for elements that sit above page content
`@z-indexAboveContent` is a variable that places element above the
page content, but below the drawers. Initially added for the
fixed/sticky position button on the action=history page.

Bug: T219895
Change-Id: Ib773dd976221a60a0ea666c1a9a1104a0ba17613
2019-05-14 12:17:45 +02:00
Piotr Miazga 6c70498e91 Hygiene: Deduplicate MenuEntry uniqness check code
The check to verify uniqness of the MenuEntry $name existed
twice, in insert() and in insideAfter() methods. To respect
"do not repeat" yourself rule, we should keep this check
in one place only.

Bug: T221792
Change-Id: I973b0427623e579f97ae47f7c80dc2a9db2fcca7
2019-05-14 11:38:39 +02:00
Translation updater bot 863f1a7265 Localisation updates from https://translatewiki.net.
Change-Id: I7ed41c19734c7062473b38e6a84b7746dc396e3c
2019-05-13 22:48:39 +02:00
Translation updater bot cece9ae956 Localisation updates from https://translatewiki.net.
Change-Id: I29a101693b7472515b6bc38d3593b96dc44b983e
2019-05-12 22:01:26 +02:00
Translation updater bot 26474f796d Localisation updates from https://translatewiki.net.
Change-Id: I3ca5955082a5bfcc0bf34ecabff43d8253c34740
2019-05-10 08:35:21 +02:00
jenkins-bot 3d73282dc9 Merge "JSON content: Fix table margins" 2019-05-09 17:31:21 +00:00
Volker E 9845433bf1 Remove unused 'sectionAnchor.less'
File is not referenced and not in use as MF removes class.

Change-Id: I4fb9f887f38b991ac809903a120844d24fbbcac6
2019-05-09 08:07:43 -07:00
jenkins-bot cd7a50682f Merge "Skip the flaking watchstar test" 2019-05-09 12:00:45 +00:00
jdlrobson d455b88080 Skip the flaking watchstar test
Additional changes to tests:
* pageExists uses brower.call to avoid token error in talk
* use a before rather than beforeEach for creating articles
to avoid an unnecessary API action

Bug: T222517
Change-Id: I44cda7d62e5e4e58ed38b15ae13fdb0c8dc2e900
2019-05-08 13:50:47 -07:00
Translation updater bot c6cb52a8c3 Localisation updates from https://translatewiki.net.
Change-Id: I94c931de753fc933baf58c216158c4570e0812b2
2019-05-08 22:02:13 +02:00
Ed Sanders 8e352f7824 Connect initMediaViewer to wikipage.content hook
This means if new content is added to the page, it
will be connected to the media viewer code.

Depends-On: I79caa6d1b83ec2a618ca703607165197add4e100
Change-Id: I9936ee1decaa5de6677bc33ebe726ff6253d6ac5
2019-05-08 18:41:22 +00:00
Ed Sanders d6dc73063d JSON content: Fix table margins
Change-Id: I50a2203adb66e634f9d995225075dc29a34ab4dd
2019-05-08 11:37:57 -07:00
jenkins-bot b503d36560 Merge "MinervaNeue doesn't need PersonalUrls" 2019-05-08 18:35:04 +00:00