Commit graph

391 commits

Author SHA1 Message Date
Chad Horohoe
783d4e0862 Remove @static from all over the place. That's what the static keyword is for, this being PHP5 and all 2011-04-21 00:07:09 +00:00
Brian Wolff
35c61744a6 (bug 23816) Add tracking category for any page with a broken image.
Note this considers a link to a non-existent image to be broken. A link
to an image that exists but does not have a handler is not considered broken.
2011-04-20 19:43:47 +00:00
Sam Reed
3a0ed7a044 * (bug 28532) wfMsgExt() and wfMsgWikiHtml() use $wgOut->parse()
* (bug 16129) Transcluded special pages expose strip markers when they output parsed messages

Also adding some related documentation during my travels around the code
2011-04-18 12:43:53 +00:00
Happy-melon
2c9cfd7cce Refactor the factory/i18n/list/etc static methods from SpecialPage into their own class; there's no reason we need to be parsing them in every single SpecialPage subclass. Leave all the methods as stubs in SpecialPage.php; if we required PHP 5.3 they could be replaced by a a __callStatic() magic method, but that doesn't work on PHP 5.2.
Also make a few changes to the functions available.  SpecialPageFactory::resolveAlias() now takes an optional subpage and returns array(<name>,<subpage>).  Similarly merge getPage() and getPageByAlias().  There were many examples of (extensions particularly) making dubious assumptions about the presence or absence of subpages or canonical-ness.

I didn't deprecate SpecialPage::getTitleFor() as it's got over six hundred calls.  I'm rather undecided on the best position of getPage()/executePath().  Although the latter needs cleanup anyway.
2011-04-17 11:31:11 +00:00
Alexandre Emsenhuber
4207ab0c63 * (bug 28511) Use [] syntax instead of {} for string offset access 2011-04-17 07:59:58 +00:00
Leo Koppelkamm
cca68b8800 r85922: Fixing another table bordercase 2011-04-15 22:36:09 +00:00
Leo Koppelkamm
b4ec34def9 Followup to r86064 (List with double line-breaks inside tables). Also contains patch for Bug 16700 by Mormegil (Additional linebreak though nested templates). Parsertests for both 2011-04-14 19:28:45 +00:00
Leo Koppelkamm
a163fa3c55 Fix for r85990, which broke lists inside tables; adding test for it 2011-04-14 18:45:04 +00:00
Leo Koppelkamm
3dde00f863 Fixing line-break issues with r85922 2011-04-14 10:02:51 +00:00
Platonides
0677784244 Move </td> and </th> to its own line (unless it's an empty cell)
Fixes the other r86004 test case and r86010 one.
2011-04-13 23:50:33 +00:00
Platonides
887f4eff82 Follow up r85922 moving the </caption> to another line, fixing one of the tests added in r86004. 2011-04-13 23:19:27 +00:00
Platonides
6c0cf20425 Readd support for headings inside tables, broken in r85922 and reported on its CodeReview.
Added testcase for it.
It changes again Parser24.
2011-04-13 22:20:14 +00:00
Leo Koppelkamm
b186286631 Tables: Fix Bug 20078, add test for it 2011-04-13 20:01:23 +00:00
Leo Koppelkamm
86cad27b2b Followup to r85922: Adapt to MW-coding style 2011-04-13 19:46:09 +00:00
Leo Koppelkamm
1c0a4d3611 Followup to r85922: Output th instead of td for tfoot 2011-04-13 12:44:33 +00:00
Leo Koppelkamm
f9b4b296ce Followup to r85922: Fix STRICT error, rmv redundant whitespace 2011-04-13 11:24:38 +00:00
Leo Koppelkamm
109f7bcb9d 2011-04-12 21:27:24 +00:00
Brion Vibber
ff0524b3bc Initial stab at breaking math/texvc out to Math extension.
* (bug 14202) $wgUseTeX has been superseded by the Math extension. To re-enable
  math conversion after upgrading, obtain the Math extension from SVN or from
  http://www.mediawiki.org/wiki/Extension:Math and add to LocalSettings.php:
  require_once "$IP/extensions/Math/Math.php";

This is an initial stab, and a few things remain to be cleaned up:
* messages need to be moved from core to extension
* MW_MATH_* constants should be moved to the extension from core
* old back-compat math names interfaces using those constants should be removed from message files
* classic edit toolbar's math button should be added from the extension (or else dropped) -- currently there's not a clean hook, but could do it by JS
* couple of things like the 'armourMath' function on Language & LanguageConverter may want to be redone just as an unconditional, if that's simpler.

Setting $wgUseTeX alone will no longer have any affect. The var's still there for the moment as a few bits still need to be fully moved out from core.
2011-04-09 00:39:40 +00:00
Sam Reed
decb7d223b Cleaning up my w/c again. Add documentation 2011-04-08 23:53:59 +00:00
Aaron Schulz
3a49b629e6 Follow-up changes to r84610:
* Cleaned up mImageTimeKeys format
* ImageMap: Removed redundant addImage call (makeImage handes this)
* ParserFunctions: added time/sha1 to addImage() call
* Removed excess ampersands in hooks
* Added some function doc comments
2011-04-04 01:22:08 +00:00
Daniel Friesen
e844afb09c Followup r85244; Define all methods as static, implement a DummyLinker to forward calls for passing to hooks and finish off anything in the way. 2011-04-03 12:04:04 +00:00
Daniel Friesen
c817a24081 Drop connetion between Skin and Linker and turn Linker into a staticly usable class. 2011-04-03 11:44:11 +00:00
Jack Phoenix
7afd378a4d mark some public functions as such 2011-04-02 14:48:22 +00:00
Aaron Schulz
0a5016f4e0 Follow-up r84659: no need to pass parser by reference to event handlers 2011-03-24 08:44:42 +00:00
Aaron Schulz
67955599f8 * Replaced crufty BeforeParserMakeImageLinkObj/BeforeGalleryFindFile hooks with BeforeParserFetchFileAndTile hook
* Updated the only calling extension (these was basically single-purpose hooks)
2011-03-24 01:44:48 +00:00
Aaron Schulz
045859614b Straighten out dependency handling from r84610 (files) and before (templates) 2011-03-23 18:23:55 +00:00
Aaron Schulz
a2e9b8be7e * Put parser output file version tracking to core
* Added some ParserOutput accessors
* A few cleanups to fetchFile()
2011-03-23 17:35:40 +00:00
Aaron Schulz
d5460bce86 * Made BeforeParserMakeImageLinkObj/BeforeGalleryFindFile let hooks set sha1 parameter
* Made FlaggedRevs specify files by sha1,timestamp to handle renames with no redirects. This makes them handled as well as templates in this regard. (bug 27836) 
* Moved BeforeGalleryFindFile hook to proper place (don't trigger for non-NS_FILE titles)
* Removed unused mRevisionId field from ImageGallery
* Removed old hotfix from makeMediaLinkObj(); all the current callers would crash beforehand if the title was null anyway
* Updated hook docs (some prior params were missing)
* Broke some long lines and cleaned up some whitespace
* TODO: track file info in core rather than fr_fileSHA1Keys and ugly, duplicated, queries. This should be easy to do now.
2011-03-23 03:13:37 +00:00
Sam Reed
60578c163d Reinstate some lines added during r84357
I guess they're used on some code paths... As it's not an unconditional return...
2011-03-21 15:18:11 +00:00
Sam Reed
4569f31e09 * (Bug 14005) editing section 0 of an existing but empty page gives no such section error
Tested, with minor tweak. Also removed now un-needed code

Patch by Harry Burt
2011-03-19 23:23:32 +00:00
Alexandre Emsenhuber
479efc31eb Fix fatal from r83823 2011-03-19 13:00:11 +00:00
Alexandre Emsenhuber
b974497da8 Changed LinkHolderArray::makeHolder() to use Linker::link() instead of Linker::makeBrokenLinkObj() and Linker::makeColouredLinkObj() 2011-03-15 16:47:55 +00:00
Happy-melon
9ccbe5f7e4 Accept empty square bracket pairs in external links: http://www.example.com?foo[]=bar and [http://www.example.com?foo[]=bar link]. Used for MultiSelect arrays, which feature quite heavily in bugzilla search urls, etc. 2011-03-15 15:09:49 +00:00
Alexandre Emsenhuber
876115459b Make Parser::makeKnownLinkHolder() call Linker::linkKnown() instead of deprecated Linker::makeKnownLinkObj() 2011-03-13 14:00:38 +00:00
Alexandre Emsenhuber
9e0c678ddf Only call ParserOptions::getNumberHeadings() when needed for the benefit of cache sharing when this is not used.
Also fixed a bug in ParserOutput when no option is used; otherwise getUsedOptions() will return false and throw warnings in ParserOptions::optionsHash().
2011-03-06 21:16:22 +00:00
Sam Reed
e1f5c11aee More bits of documentation 2011-02-27 15:23:41 +00:00
Mark A. Hershberger
25f5ca8254 * EOL w/s cleanup
* Normalize function names to eliminate two references to “HalfParsedDATA”
2011-02-24 20:23:49 +00:00
Sam Reed
ccffe43a91 Add a couple of type hints noticed when poking bug 27673 2011-02-24 11:59:51 +00:00
Tim Starling
be3710c312 Fixes for r82645:
* Fixed several obvious bugs in the $wgCiteCacheReferences helper functions, missed due to inadequate testing.
* Don't save complete Title objects to memcached, they contain cached data with a short lifetime.
* Fixed a doc comment.
2011-02-23 23:42:04 +00:00
Mark A. Hershberger
fcf56ed2f3 (Bug #27634) TOC title appears in wrong language
Patch from P.Copp
2011-02-23 20:32:57 +00:00
Tim Starling
a20350dd31 * Rewrote StripState to not use ReplacementArray. The memory usage of FSS was excessive when there were many (>10k) strip items. I used preg_replace_callback(), which is slower than strtr() in the simplest case, but much faster than it when the markers have different lengths, which they usually do.
* It was not necessary to preserve the $stripState->general->setPair() interface since it wasn't used by any extensions.
* Moved StripState to its own file.
* Refactored serialiseHalfParsedText() and unserialiseHalfParsedText() so that the bulk of the functionality is in the relevant modules, instead of using scary direct access to object member variables. Made it support the new StripState. It seemed like a lot of work to go to to support an "emergency optimisation" feature in Cite. Cite updates will be in a subsequent commit.
* Fixed spelling of serialiseHalfParsedText() and unserialiseHalfParsedText(), there is unavoidable interface breakage anyway, due to cache object versioning. 
* Moved transparent tags to their own function, as requested in a fixme comment.
* Added documentation for markerSkipCallback().
* Removed OnlyIncludeReplacer, unused since MW 1.12.
2011-02-23 06:58:15 +00:00
Platonides
78e4547bea Rename startExternalParse() when used for internal usage, per r80818 CR. 2011-02-22 15:05:08 +00:00
Mark A. Hershberger
690ebe937a (Bug #27467) preload can leave UNIQ
Patch to fix from P.Copp
2011-02-19 19:18:02 +00:00
Sam Reed
7d98280f3e More function and variable documentation 2011-02-19 01:02:56 +00:00
Platonides
aeb547b465 Adding more wfProfileOut() 2011-02-10 16:11:34 +00:00
Alexandre Emsenhuber
195eafd6ef * Add a amtitle param to meta=allmessages
Only used used when amenableparser is passed; the user can now define the page used for {{PAGENAME}} and related stuff instead of being hardcoded to "API"
2011-02-09 15:19:45 +00:00
Platonides
a601b4f677 Revert r81738. Extensions calling clearState() with no mOptions fixed. 2011-02-08 16:32:30 +00:00
Brion Vibber
7d158675b2 Tweak for r79018: fatal errors due to something calling parser clearState when mOptions wasn't defined 2011-02-08 13:31:30 +00:00
Daniel Friesen
d06c054971 Switch <editsection> to <mw:editsection> and start hiding these editsection tags from Tidy so it doesn't break them. 2011-02-06 01:38:33 +00:00
Daniel Friesen
1455b81f0c Kill off Linker::getExternalLinkAttributes. 2011-02-05 23:06:36 +00:00