Commit graph

1140 commits

Author SHA1 Message Date
Aaron Schulz
3082af5472 Account for $wgSquidMaxage in OutputPage::checkLastModified().
* This deals with the fact that seldom edited pages can end up cached
  with very stale resource (JS/CSS) references since the response to
  IMS GET requests will be 304 Not Modified if page_touched is ancient.
  When squid revalidates its stale cache it will keep getting 304s and
  renewing the TTL on the stale cache.

Bug: 44570
Change-Id: I3889f300012aeabd37e228653279ad19b296e4ae
2013-04-16 06:53:10 +00:00
umherirrender
97234cc884 Added spaces before and removed spaces after 'array'
Fix some other spacing while at it

Change-Id: I13f81533eaf40e06c13cf377c0f08ef5cef01d00
2013-04-14 21:57:46 +02:00
Timo Tijhof
6cbad437fa OutputPage: Set empty modules to state 'ready' instead of 'missing'.
Some cases were already covered by I595b3af190, but in the case
where the module is disabled entirely it was setting it to missing.

This is inconsistent with the behaviour of load.php (which will implement
an empty module resulting in state=ready) and confusing as it
implies there is a problem (a missing module) whereas in fact it
isn't a problem. Modules that depend on it to allow customization
wouldn't load as it will fail on missing dependencies.

Also makes asserting problems (bug 44299) hard as it would have
to whitelist state 'missing' for user/site/user.groups.

Bug: 46857
Change-Id: I46b5bc6f714abe4b66186d7b7a14c69195f00ee1
2013-04-03 22:51:22 +02:00
Trevor Parscal
bc9e97cd3f Merge "Add RL targets support to OutputPage" 2013-03-30 00:13:16 +00:00
Matthew Flaschen
dabbbc7d2a Remove rel="next" that accompanied returnto.
Removed rel="next" link that was put on every
page that had a returnto because otherwise
Firefox (and possibly others) might prefetch
the page, which is not desired in returnto
situations.

Bug: 46680
Change-Id: Ifaf40c663dc25e51bffc317144d9bdc1dab21785
2013-03-29 20:20:50 +00:00
Max Semenik
990cb75cc4 Add RL targets support to OutputPage
The target URI parameter is already used by ResourceLoaderStartUpModule
to filter modules, this change introduces the ability to produce
mobile-aware load.php links in the core and filter out modules not suitable
for current target.

Change-Id: Ie03990e11d9a0ac8cd81dd0aae5c5a95f1d23e81
2013-03-27 20:35:01 +04:00
umherirrender
6c278b6d7e fix some spacing
* Removed spaces around array index
* Removed double spaces or added spaces to begin or end of function
  calls, method signature, conditions or foreachs
* Added braces to one-line ifs
* Changed multi line conditions to one line conditions
* Realigned some arrays

Change-Id: Ia04d2a99d663b07101013c2d53b3b2e872fd9cc3
2013-03-25 22:22:46 +00:00
Yuri Astrakhan
9506e3d812 Spellchecked /includes directory
* Ran spell-checker over code comments in /includes/
* A few spellchecking fixes for wfDebug() calls

Found one very strange (NOOP?) line in Linker.php - see "TODO: BUG?"

Change-Id: Ibb86b51073b980eda9ecce2cf0b8dd33f058adbf
2013-03-13 03:42:41 -04:00
jenkins-bot
6114f05fc1 Merge "Correct case of Title::getPrefixedDBkey() calls" 2013-03-12 15:13:21 +00:00
Tyler Anthony Romeo
4dcc7961df Fixed @param tags to conform with Doxygen format.
Doxygen expects parameter types to come before the
parameter name in @param tags. Used a quick regex
to switch everything around where possible. This
only fixes cases where a primitve variable (or a
primitive followed by other types) is the variable
type. Other cases will need to be fixed manually.

Change-Id: Ic59fd20856eb0489d70f3469a56ebce0efb3db13
2013-03-11 13:15:01 -04:00
Alexandre Emsenhuber
cd4dd7ca85 Correct case of Title::getPrefixedDBkey() calls
Change-Id: Ic9ef0cc6dbb0a8eb0ee93432299ef59759223e2c
2013-03-09 21:14:22 +01:00
umherirrender
55183ad0b2 Use ContextSource::getLanguage instead of $wgLang
Found two places, where $wgLang is used inside a ContextSource.

Change-Id: I1881a20d3cd9b50eb4af0cd588451ed941f936fa
2013-03-09 17:02:44 +01:00
umherirrender
d63121016d fix some spacing
Added/removed spaces around logical/arithmetic operator
Reduced multiple empty lines to one empty line
Removed wrong tabs before comments at end of line
Removed too many spaces in assigments

Change-Id: I2bba4e72f9b5f88c53324d7b70e6042f1aad8f6b
2013-03-07 17:53:21 +01:00
jenkins-bot
6fedebf971 Merge "Improve documentation for OutputPage->addModuleStyles" 2013-03-01 21:26:21 +00:00
Matthew Flaschen
7d55a773f3 Improve documentation for OutputPage->addModuleStyles
Change-Id: I56392cdb4e0d9fd5cac15ac947962364ae96381f
2013-02-27 03:42:45 -05:00
Matthew Flaschen
910ed234e8 Change new wgUserRegistration format, put in User:
* This is much more useful if it can be passed to new Date.  As a side
effect, this means straight arithmetic comparisons can be done.
* Add a method for this to mediawiki.user (getRegistrationDate).
* Improve docs on server User::getRegistration method by documenting possibility that data is null.

Change-Id: Id7ae0faa930433876939b73d47fc294975e14fb1
2013-02-27 05:55:55 +00:00
Ori Livneh
559cc276e7 Expose additional user attributes as JS vars
This change adds user ID, registration time, and edit count to the
default set of JavaScript configuration variables.

These values are all included in $mCacheVars and so require no additional
database lookups.

Change-Id: Id0adb795567d4ba932104938f2793cdb4084883c
2013-02-26 17:56:21 -08:00
Matthew Flaschen
3869c3f839 Change comment:
From ResourceLoaderStartupScript to ResourceLoaderStartUpModule

Change-Id: Ie5640752bed3d71d7e519385c139fe8490bd7052
2013-02-23 05:42:05 -05:00
Demon
4d87500491 Merge "Allow adding arbitrary properties to OutputPage" 2013-02-22 15:41:43 +00:00
umherirrender
ca31ebad3f fix some spacing
Added/removed spaces after opening/before closing parentheses

Added a space after a comma

Removed unneeded parentheses in condition

Change-Id: I306091347ccaaf11dee0cdfda3019cb0c12be51b
2013-02-09 23:03:53 +01:00
Max Semenik
5397c668ab Allow adding arbitrary properties to OutputPage
Helps to pass extension-specific data

Change-Id: Iea98510abc100128733361f2d2287802f35bb359
2013-02-09 02:58:38 +04:00
umherirrender
1044b0b8df fix some spacing
Change-Id: I8f976013f33c5818e4402604fe8610aa3f43b0c6
2013-02-04 20:18:33 +00:00
Alex Monk
c2c982c4e8 (bug 36537) Rename calls to wfArrayToCGI to wfArrayToCgi
Done with this command:
grep wfArrayToCGI * -R -l -Z | xargs -0 -l sed -i -e 's/wfArrayToCGI/wfArrayToCgi/g' && git checkout -- HISTORY

Change-Id: If7f4d4bfc199289c11c43cf519c2415a1aad1c51
2013-01-28 18:04:20 +00:00
umherirrender
6fbbbd17ca fix some spacing
Change-Id: Ie7bb35871cc99237f3a655f7db22ca1f0646df5e
2013-01-27 14:21:50 +01:00
Niklas Laxström
626af349d1 Check for no title and throw an exception
Fatal errors break test execution, exceptions not

See also bug 42145

PS: how many months does it take to fix a bug that
prevents running unit tests? Answer below.

Change-Id: I0b351a05be9d0850b467046e807651be254dcae2
2013-01-18 19:05:04 +00:00
Matthew Flaschen
11aaf93162 (bug 43942) Skip screen sheets with media queries when printing
* Add test suite, with regression tests as well as tests for the fix.

Change-Id: I66d40673cc610370b66af0129412bc6495673f8d
2013-01-17 16:31:43 -05:00
Tim Starling
e0a78d0a33 Introduce $wgEnableCanonicalServerLink
(bug 43466) If enabled, send a rel=canonical link on every page
indicating the correct server to use. I tested all three callers:
Article, ImagePage and the variant feature in getHeadLinksArray().

Change-Id: I59b7c1d5589825ea390967036190218d5ce2db88
2013-01-07 01:04:05 +00:00
Antoine Musso
cb60d72be1 misc style fix
* makes booleans lower case
* add spaces before open braces

Change-Id: Id88884e08bc23d7730361ee91646f54f5e16920b
2012-12-20 16:09:25 +01:00
Reedy
d0a242abb4 Tidy up some unbalanced returns in methods
Leave a TODO

Change-Id: Ic49ac8630650b341aafb3c17abd22f3a07805d27
2012-12-09 02:59:04 +00:00
Niklas Laxström
35a3759234 Fixing typo
Change-Id: I930c37ad7550c7dd0c4856c22921155dec6ccb3b
2012-12-01 16:02:15 +00:00
Liangent
04ecbe56cb Use wfBCP47() to format language code for IE in Accept-Language.
It's reported that IE is actually sending language code in BCP 47
format (like zh-Hans), instead of uppercasing the whole 2nd part.

Change-Id: I6761191f299373d9267660a7eb14dc0b34cd5a38
2012-11-18 04:00:12 +08:00
Niklas Laxström
fe2ea52ba1 Parser parse requires title, make a caller require valid title too
Change-Id: I8a9cd18c5aa27493a0945765f80136cd0cc4f218
2012-11-16 19:01:04 +00:00
umherirrender
e5f5e95137 Fix indentation whitespace errors
Change-Id: Ie268bee2098c589c050e1b5b0e93fe1b3feca86f
2012-10-26 17:42:13 +02:00
Brion Vibber
966cda2f80 Initial stab at responsive images for screen densities.
* adds $wgResponsiveImages setting, defaulting to true, to enable the feature
* adds 'srcset' attribute with 1.5x and 2x URLs to image links and image thumbs
* adds jquery.hidpi plugin to check pixel density and implement partial 'srcset' polyfill
** $.devicePixelRatio() returns window.devicePixelRatio, with compat fallback for IE 10
** $().hidpi() performs a 'srcset' polyfill for browsers with no native 'srcset' support
* adds mediawiki.hidpi RL script to trigger hidpi loads after main images load

Note that this is a work in progress. There will be places where this doesn't yet work which output their imgs differently. If moving from a low to high-DPI screen on a MacBook Pro Retina display, you won't see images load until you reload.

Confirmed basic images and thumbs in wikitext appear to work in Safari 6, Chrome 21, Firefox 18 nightly on MacBook Pro Retina display, and IE 10 in Windows 8 at 150% zoom, 200% zoom, and 140% and 180%-ratio Metro tablet sizes.

Internally this is still a bit of a hack; Linker::makeImageLink and Linker::makeThumbLink explicitly ask for 1.5x and 2x scaled versions and insert their URLs, if different, into the original thumbnail object which (in default handler) outputs the srcset. This means that a number of places that handle images differently won't see the higher-resolution versions, such as <gallery> and the large thumbnail on the File: description page.

At some point we may wish to redo some of how the MediaHandler stuff works so that requesting a single thumbnail automatically produces the extra sizes in all circumstances. We might also consider outputting a 'srcset' or multiple src sizes in 'imageinfo' API requests, which would make ApiForeignRepo/InstantCommons more efficient. (Currently it has to make three requests for each image to get the three sizes.)

Change-Id: Id80ebd07a1a9f401a2c2bfeb21aae987e5aa863b
2012-10-11 10:54:21 -07:00
IAlex
408a3df1dc Merge "Remove unused variables." 2012-10-09 10:23:38 +00:00
Siebrand Mazeland
632ce2a8fd Remove unused variables.
Change-Id: I4b76cbbca22555eacb8ef4de58993b485f7cdd18
2012-10-09 09:43:14 +00:00
Siebrand Mazeland
d4b046a893 Update docs for return and exception info
* Removed some inline tabs in the process.
* IDE fixed some incorrect leading spaces, too.

Change-Id: Ic9303eff6db4424ac3f1fa2816839692b43e6190
2012-10-09 09:41:58 +00:00
Siebrand
2b7464152b Merge "Merge branch 'Wikidata' into master." 2012-10-09 09:39:47 +00:00
daniel
329d5b3516 Merge branch 'Wikidata' into master.
This introduces the ContentHandler facility into MediaWiki,
see docs/contenthandler.txt.

For convenient review, a squashed version is available at
https://gerrit.wikimedia.org/r/27191

The ContentHandler facility is a major building block of the Wikidata project.
It has been discussed repeatedly on wikitech-l.

Change-Id: I3804e2d5f6f59e6a39db80744bdf61bfe8c14f98
2012-10-09 11:34:24 +02:00
Siebrand
2bc2e0b254 Merge "Use parseAsBlock() instead of parse() to show the error message in OutputPage::showErrorPage()" 2012-10-09 08:58:25 +00:00
umherirrender
22dd67ea3c Avoid direct access to $wgGroupPermissions
Created a new method User::groupHasPermission and check also
$wgRevokePermissions for the given right

Change-Id: I41edb091fa35c8c68b6f95cc5fd208ea99418cdb
2012-10-09 06:41:23 +00:00
daniel
bb51a58e57 Cleanup of Wikidata branch.
This cleans up several issues raised in comments to I3b2dad3a,
mostly style and merge artifacts.

Change-Id: I99f5e300a671db1353db151cd187ffd2e4478d03
2012-10-08 17:34:47 +02:00
daniel
c546fae8ed merge latest master into Wikidata branch
Change-Id: Id4e0f40c03679c13d8934a6add99b5cd86d0437d
2012-10-08 13:58:54 +02:00
Alexandre Emsenhuber
9c7557faef Use parseAsBlock() instead of parse() to show the error message in OutputPage::showErrorPage()
When a message name is passed, addWikiMsgArray() is used, so it adds a <p> arround the
result. Do the same when a Message object is passed to that method.

Change-Id: Ie97ad9a921ae3fc6d327531b0ace64b6a08e1fa2
2012-10-06 17:28:09 +02:00
umherirrender
cb6657a178 Add missing version number to wfDeprecated calls
Change-Id: I8b9efaf5eafc6cfecb34d401574ce978899d3990
2012-10-05 20:26:00 +02:00
Timo Tijhof
1f987fb5ee (bug 40448) Replace legacy mwsuggest with mediawiki.searchSuggest
The module has been broken for a while now, but nobody noticed
because in plain core it is disabled by default, and in the
bundle we ship with Extension:Vector (and its SimpleSearch).

This commit removed the mediawiki.legacy.mwsuggest module (and
related components that become obsolete with its deletion) and
replaces it with the new mediawiki.searchSuggest module, which is
based on SimpleSearch from Extension:Vector (where it will be
removed soon).

The following and all references to it in core have been removed,
I also made sure that they weren't used in any of extensions/*.
Only matches in extensions/Settings and some file that dumped the startup module, and in extensions/Vector which are addressed in
I1d5bf81a8a0266c51c99d41eefacc0f4b3ae4b76.

Had to make a few updates to jquery.suggestions to make it work
in other skins. So far it was only used in Vector, but now that
it is used in mediawiki.searchSuggest, I noticed several issues
in other skins. Most importantly the fact that it assumed the
default offset was from the right corner, which isn't the case in
Monobook where the search bar is on the left (in the sidebar).

It now detects the appropiate origin corner automatically, and
also takes directionality of the page into account.

It also uses the correct font-size automatically. Previously it
used font-size: 0.8; but that only works in Vector. Every skin
seems to have its own way of making a sane font-size. In Monobook
the <body> has an extra small font-size which is then fixed in
div#globalWrapper, and in Vector it is extra large, which is then
fixed as well deeper in the document. Either way, the size on
<body> can't be used, and since this suggestions box is appended
to the <body> (it is a generic jQuery plugin without knowledge of
the document, and even if we could give it knowledge inside
the configuration, it'd have to be per-skin). So I removed the
Vector specific font-size and let it handle it automatically.
This was needed because it is now used in all skins.

Removed modules:
* mediawiki.legacy.mwsuggest:
  > Replaced with mediawiki.searchSuggest.

Removed messages:
* search-mwsuggest-enabled
* search-mwsuggest-disabled
  > No longer used.

Removed mw.config.values:
* wgMWSuggestTemplate
  > Obsolete.

* wgSearchNamespaces
  > Obsolete.

Removed server-side settings:
* $wgEnableMWSuggest
  > Suggestions are now enabled by default and can be disabled
    through the user preference `disablesuggest` still.
    They can be disabled by default site-wide or hidden from
    prefs through the standard mechanisms for that.

* $wgMWSuggestTemplate
  > Obsolete.

Removed methods
* SearchEngine::getMWSuggestTemplate()
  > Obsolete.

Filters:
 $ ack mwsuggest -i -Q --ignore-dir=languages/messages
 $ ack wgSearchNamespaces -Q

Message changes:
* vector-simplesearch-preference
  > It was wrong, it didn't activate search suggestions, that
    was handled by the Vector extension. This preference in
    MediaWiki core controls whether the SimpleSearch bar HTML
    and CSS will be used (e.g. the rectangle search box with
    the magnifying class instead of the browser-default input
    field with the plain submit buttons).

* searchsuggest-search
* searchsuggest-containing
  These come from Extension:Vector message and should be imported
  by translatewiki:
  - vector-simplesearch-search
  - vector-simplesearch-containing

Change-Id: Icd721011b40bb8d2c20aefa8b359a3e45413a07f
2012-10-02 04:51:51 +02:00
Catrope
87f5596f5e Merge "Added protocol option to Linker and OutputPage::addReturnTo." 2012-09-28 20:25:11 +00:00
Tyler Anthony Romeo
0a1e291036 Added protocol option to Linker and OutputPage::addReturnTo.
Added new argument to the Linker options array to allow
the forcing of an HTTP or HTTPS protocol. In order to facilitate
this, a protocol argument was added to Title::getLinkURL.

Also, an options argument was added to OutputPage::addReturnTo
so that options can be passed to the linker and so that the
returnto URL can be forced to a certain protocol.

Change-Id: Ia9cc11e310ad6ef23c221bdba3a4834e7c5556e7
2012-09-27 13:47:42 -04:00
Siebrand Mazeland
143623d590 Document that setSubtitle() and addSubtitle() need safe HTML
Change-Id: Id5431fc20fb9e9cc755e6a3c393146888a5b666e
2012-09-21 15:32:35 -07:00
daniel
12166f46b4 merged master (2012-09-11)
Change-Id: I8e953eaa22f9d331b0af5e780fbeff6d702b23e3
2012-09-11 11:43:02 +02:00