Commit graph

376 commits

Author SHA1 Message Date
alistair3149 442f241641
feat(core): add language menu to page tools
In other language menu and language variant menu are merged into a singular menu
with a toggle in page tools. This is the first step towards having better language
handling in the skin.
2022-05-16 00:50:00 -04:00
github-actions e725efa531 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2022-05-16 01:39:00 +00:00
alistair3149 7756c3447f
refactor(core): clean up SkinMustache polyfill for 1.35 2022-05-15 21:37:39 -04:00
alistair3149 508c96ae9d
refactor(core): merge ToC script into core scripts 2022-05-12 17:18:39 -04:00
alistair3149 e0d5eb9657
feat(core): set toc-enabled through Mustache template
Since somewhere around MW 1.37, buildSkinFeatures() no longer have access to OutputPage.
That causes $out->isTOCenabled always return null, which makes ToC
broken for any wikis since 1.37. This should fix the issue for now.
More optimizations on the loading behavior will come soon.
2022-05-12 17:01:01 -04:00
alistair3149 5614d2abdf
refactor(core): make api/ directory to use PSR-4 autoloading
Also make use of the correct namespace
2022-05-11 18:34:25 -04:00
alistair3149 5ccfbcfdeb refactor(core): clean up drawer implementation
This is a part of the site header refactor
* Use relative units
* Add title to toggle button
* Remove unnessecary CSS
* Rewrite HTML classes
* Temporary remove drawer subsearch, it will be re-explored in a later patch
2022-05-10 10:52:36 -04:00
alistair3149 44f9bc0a7c
feat(core): style parenthesis text in FirstHeading differently
Parenthesis text in FirstHeading are commonly used for disambiguation purposes
Therefore it does not have to be as prominent as the title
2022-05-07 00:45:51 -04:00
alistair3149 76a84d9e00 feat(core): add ARIA support to collaspible sections
* Also renamed toggle to indicator since it is misleading. The whole heading is the toggle itself.
2022-04-30 14:48:09 -04:00
Lens0021 2787d49a96
fix: find toolbox explicitly (#448)
The last item in the sidebar is not always the toolbox in some wikis, as result, a wrong portlet is displayed.
2022-04-30 02:54:13 -04:00
alistair3149 8eaaecf957
feat: do not format body content if MobileFrontend is active (#409)
MobileFrontend formats body content to enable features such as collasible headers.
Citizen should not attempt to format it as it will break features in MF.
2022-04-27 15:58:16 -04:00
alistair3149 2c79c061c4 feat: pass styles as style element instead of inline 2022-04-25 20:34:40 -04:00
alistair3149 7dbbc6b777
fix: add null check for user tagline
$editCount can return as null sometimes and throw an error
2022-04-25 02:03:13 -04:00
alistair3149 f05295195a feat: move discussion to the top of the more menu
Also clean up some related-styles
2022-04-24 01:53:47 -04:00
github-actions 2cd9efa4d9 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2022-04-24 00:27:06 +00:00
alistair3149 3c729928d2
feat: sitestats should show exact number when it is <10000 2022-04-23 20:26:05 -04:00
github-actions 673445c718 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2022-04-23 05:32:12 +00:00
alistair3149 a8485ac76a
fix: remove unused debug code 2022-04-23 01:31:22 -04:00
alistair3149 6efff7f5da feat: revamp drawer header
* wgLogo is always visible in the drawer
* Increase the size of wiki name
* Sitestats will now format large numbers into human readable formats (e.g. 12.2K, 3M, etc.)
* Sitestats now use icons instead of text as labels
* Remove wordmark for now, will revisit later
2022-04-23 01:30:02 -04:00
alistair3149 f770e250df
refactor: remove unused method 2022-04-19 18:20:06 -04:00
alistair3149 047f830d1a
fix: FOUC of light theme when user is using auto theme and prefer dark
The prefer-dark script was previously deferred which causes a delay to detect and switch theme for the user. It is now inlined to prevent the delay.
2022-04-19 18:17:53 -04:00
alistair3149 7ecf3a81eb
feat: depreciate theme preferences in MW user preferences
Just local storage is good enough
2022-04-19 17:31:23 -04:00
Lens0021 cebc35fd4b
feat: show footer desc and tagline in the content language (#444) 2022-04-17 12:23:43 -04:00
Lens0021 449278f0be
feat: use template data for page tools if available (#440)
* Use template data for page tools if available

* ci: lint code to MediaWiki standards

Check commit and GitHub actions for more details

* emptyPortlet class is added by the core

* ci: lint code to MediaWiki standards

Check commit and GitHub actions for more details

* Update PageTools.php

* Set toolbox to always valid data

Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2022-04-14 00:30:33 -04:00
github-actions 0c6f22b10d ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2022-03-05 23:14:48 +00:00
Jon Robson 3e6a240c48 buildContentNavigationUrls is deprecated
Using runOnSkinTemplateNavigationHooks as a short term fix.
On the long term, we're hoping to empower skins to have more
control over menus which will hopefully mean a lot of the code
in Citizen can be simplified.

Fixes: #422
2022-02-23 00:49:34 -05:00
alistair3149 42df59f2b4
refactor!: drop security header support 2021-08-31 13:20:51 -04:00
alistair3149 f5a2a831d1
feat: add user customizable line height 2021-08-05 11:24:52 -04:00
github-actions 446faaf7f4 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-07-30 02:49:04 +00:00
alistair3149 d6968e9383
fix: undefined userPage variable 2021-06-22 11:23:42 -04:00
github-actions c0ce609cd4 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-06-20 06:04:43 +00:00
alistair3149 bc59fb82aa
refactor: clean up footer functions 2021-06-20 02:03:43 -04:00
alistair3149 0fa725ad77
refactor: do not load ToC styles when not needed 2021-06-09 13:56:32 -04:00
alistair3149 5fcba674ba feat: avoid loading unnessecary features 2021-06-09 13:49:55 -04:00
alistair3149 82d48ac4e8 refactor: depreciate User->isLoggedIn (T270450) 2021-06-09 13:48:16 -04:00
alistair3149 c43e5279dd feat: remove lazyload modules
It is replaced by the core config `$wgNativeImageLazyLoading`
2021-05-17 16:55:11 -04:00
alistair3149 b2bd79196d
feat: rework search module (#386)
* feat: rewrite search module (WIP)
There are some caveats because it is a WIP
- Messages are not i18n yet
- Missing placeholder suggestion thumbnail
- Only REST mode works
- Missing greeting message when there is no search query
- Code might look like a mess (I learned JS not long ago)

* refactor: remove old search module

* feat: clean up search suggestion styles

* feat: hide overflow for suggestion text

* feat: add action API and various cleanup

* feat: re-add abort controller

* feat: add message support and tweaks

* feat: use virtual config instead of ResourceLoader hook

* fix: missing comma in const definition

* feat: add ARIA attributes
2021-05-17 16:34:14 -04:00
alistair3149 57ff42abcf
feat: do not call HtmlFormatter when the page is not collapsible (#384) 2021-05-13 09:44:34 -04:00
alistair3149 1a636e788a
fix: inline script should not be loaded on other skins (#376) 2021-05-08 12:41:59 -04:00
alistair3149 51ac47691e feat: implement reading preferences
allow visitor to adjust theme, font size, and page width
2021-04-27 13:51:03 -04:00
alistair3149 e722cd0560
feat: add shortcut key to page title tooltip 2021-04-26 11:50:04 -04:00
alistair3149 e2b4a4e49a
feat: show page title on header after scroll
The page header also acts as a jump to top link
2021-04-26 11:39:27 -04:00
alistair3149 2cec33906e
refactor: integrate skins.citizen.scripts.theme into core scripts 2021-04-20 23:42:45 -04:00
alistair3149 013cfbb259
feat: add support for Permissions Policy 2021-04-19 14:17:23 -04:00
alistair3149 8aafb50886
fix: load ToC module when ToC present but not a content page 2021-04-17 21:24:08 -04:00
github-actions ec4b3fa5b4 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-04-17 03:42:35 +00:00
alistair3149 607d87a4f6
doc: add missing documentation 2021-04-16 23:41:41 -04:00
alistair3149 1fe399cd85 feat: add user edit count as user page tagline 2021-04-16 23:35:59 -04:00
github-actions 59b90fb202 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-04-17 02:40:47 +00:00
alistair3149 d89f44a76e
feat: allow tagline to be defined for custom namespaces 2021-04-16 22:39:49 -04:00
alistair3149 2a93a292c7
feat: add contextual tagline for different namespaces 2021-04-12 17:09:35 -04:00
alistair3149 670641e903
feat: use slash as shortcut for search 2021-04-12 15:09:28 -04:00
github-actions 4ee628dde4 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-04-09 17:08:41 +00:00
alistair3149 fccf312e7e
refactor: remove the unnecessary usage of array_merge
also move skin features out of construct
2021-04-09 13:08:01 -04:00
github-actions cb8fb498ab ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-04-09 15:48:47 +00:00
alistair3149 bd3eac63bb
refactor: move Mustache templates to root directory 2021-04-09 11:47:48 -04:00
H. C. Kruse 0e63bb6aef
bug: fix changing theme through UPO (#340) 2021-04-06 08:40:15 -04:00
alistair3149 abffe590b5
refactor: remove cookie theme for local storage
Co-authored-by: H. C. Kruse <6594492+octfx@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2021-04-05 14:24:18 -04:00
alistair3149 f8dbbe01a8
fix: move inline theme script into hook
Co-authored-by: Hannes Kruse <hannes@octofox.de>
2021-04-05 09:56:44 -04:00
alistair3149 83c6735cda
bug: fix parsing raw html (#334)
Co-authored-by: Hannes Kruse <hannes@octofox.de>
2021-04-04 11:39:57 -04:00
alistair3149 bc1c1c9001
Merge pull request #329 from octfx/dev
refactor: Don't create sections if they are disabled
2021-03-26 08:36:00 -04:00
Hannes 88912f71b3
refactor: Don't create sections if they are disabled 2021-03-26 08:00:14 +01:00
alistair3149 41a0793ae1
refactor: use isRegistered instead of isLoggedIn
isLoggedIn is depreciated in 1.36
2021-03-25 15:06:54 -04:00
alistair3149 88aed73f5c
feat: format sitestats with separators 2021-03-23 10:38:30 -04:00
github-actions ad899801ff ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-03-22 21:01:56 +00:00
alistair3149 bbbcaba94d
feat: add site stats to drawer 2021-03-22 17:01:08 -04:00
github-actions 373ba3b50c ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-03-18 16:36:39 +00:00
alistair3149 fd931a13d5
feat: add debug styles 2021-03-18 12:35:18 -04:00
alistair3149 2bed65ee2c
fix: missing doc and file from previous commit 2021-03-16 13:10:54 -04:00
alistair3149 65a7ffd927
feat: add short description support 2021-03-16 13:08:47 -04:00
alistair3149 5ee951c1f8
feat: support wikitext in footer description and tagline 2021-03-13 13:15:41 -05:00
alistair3149 062cdd91a1
feat: add option to use REST API as search suggestion source
Co-authored-by: Hannes <hannes@octofox.de>
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
2021-03-12 14:25:32 -05:00
alistair3149 4fb5005bd0 feat: move ULS button back to personal menu 2021-03-11 21:09:43 -05:00
github-actions 1a72f99dd5 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-03-12 01:44:25 +00:00
alistair3149 b0f7acd6f0
fix: missing edit count for users without expllict groups 2021-03-11 20:43:36 -05:00
alistair3149 77edd0145a
feat: add experimental caching for search suggestion 2021-03-11 20:26:01 -05:00
alistair3149 582776f0cd
refactor: replace addHeadItem with addInlineScript
Use included method in OutputPage as addHeadItem is not specific and does not support nonce
https://doc.wikimedia.org/mediawiki-core/REL1_35/php/classOutputPage.html#ab87aa6f446da87bdf143998ee0ca5297
2021-03-10 20:35:40 -05:00
alistair3149 112ff9a4b5
feat: add user edit count to personal menu 2021-03-09 15:04:48 -05:00
alistair3149 8971eed653
refactor: rename sitelogo to siteinfo 2021-03-05 11:47:58 -05:00
alistair3149 852bcf8b85
feat: tweak header and drawer logo styles 2021-03-05 11:37:27 -05:00
alistair3149 ae9ab0a8d1
bug: fix null pointer
Authored-by: H. C. Kruse <6594492+octfx@users.noreply.github.com>
2021-03-04 16:50:42 -05:00
alistair3149 b8fc3018ff
feat: implement wordmark in header 2021-03-04 15:08:32 -05:00
Hannes 82f220ec64
refactor: Convert html entitie
And only run collapse on content pages
2021-03-03 09:44:18 +01:00
H. C. Kruse 49f6916195
fix: collapsible section issues (#283)
* fix: DOMDocument parser warnings

* minor: Run phpcbf

* minor: Remove linter warnings

* bug: Fix section.js script name
2021-03-03 03:05:13 -05:00
alistair3149 624d896d73
refactor: rename variables and modules 2021-03-02 19:28:54 -05:00
github-actions fcd796d1e2 ci: lint code to MediaWiki standards
Check commit and GitHub actions for more details
2021-03-03 00:14:48 +00:00
alistair3149 669be20879
fix: fix error caused by PHP comments 2021-03-02 19:09:39 -05:00
alistair3149 af5565f490
feat: implement collapsible sections 2021-03-02 17:16:24 -05:00
alistair3149 b35c92d67a
refactor: remove Mustache parameters that are in 1.35 core 2021-02-26 16:34:28 -05:00
alistair3149 5177f6187b
fix: remove unused pagelink template 2021-02-26 16:29:10 -05:00
alistair3149 c795578dad
feat: merge namespace and variant links into more menu 2021-02-26 16:21:11 -05:00
alistair3149 00448a095d
feat: add drawer subsearch part 2 2021-02-03 15:47:32 -05:00
H. C. Kruse 407d367e37 feat: add drawer subsearch (#264)
* bug: Fix display of theme toggle button if set to auto

* feat: Add subsearch script to drawer

An input in the drawer allows to search portal headings and links for matching text
- Hides all portals / links based on the search value

Feature can be enabled by setting `$wgCitizenEnableDrawerSubSearch = true;` in LocalSettings.

* bug: Fix subsearch
2021-02-03 15:01:50 -05:00
alistair3149 6633f89033
fix: fix display of theme toggle button if set to auto (#261)
Co-authored-by: Hannes <hannes@octofox.de>
2021-01-31 12:38:37 -05:00
Hannes 876f2da4bb
feat: Allow to choose the link append portal 2021-01-29 21:49:01 +01:00
alistair3149 96a98da021
feat: use flexbox for overlay menu 2021-01-29 14:54:42 -05:00
Hannes 4275a4c7df refactor: Use UploadWizard link if available 2021-01-28 15:54:18 -05:00
Hannes 97850860b7
fix: Fatal error 2021-01-28 21:09:52 +01:00
alistair3149 190d00dd0f
fix: fix mismatched alias for toolbox links 2021-01-28 14:53:07 -05:00
Hannes cdb05ec7fd
refactor: Move footer and page links/tools 2021-01-28 20:35:31 +01:00