Commit graph

3833 commits

Author SHA1 Message Date
jdlrobson 342a3a0ec3 referencesKey is now a static function and renamed
There seems to be no reason for this to be a member function

Per suggestion of Ori, It should also be clearer
it is a getter so it is now prefixed with get
There are no consumers according to Github so a rename is safe

Change-Id: I414959d4cc107135ccbd0739f2fc7d62ca8d04c5
2016-02-26 19:01:41 +00:00
cenarium d63c51ebf2 Merge LinksUpdateConstructed hook into LinksUpdate
This merges the content of the LinksUpdateConstructed hook callback
into the LinksUpdate hook callback since it's fine to defer saving
to the cache.

Change-Id: Iad6008a31aaf659af3c560858df278335bc57c8f
2016-02-26 19:00:54 +00:00
Translation updater bot 17d30cc0a7 Localisation updates from https://translatewiki.net.
Change-Id: If943f6841bcf18f2fad6ee6025adfad82534ddcd
2016-02-25 22:17:31 +01:00
jenkins-bot 22668e53e2 Merge "Change a condition with == to something more precise" 2016-02-24 21:29:23 +00:00
jenkins-bot 3abaad1a27 Merge "Add array type hints and more specific documentation" 2016-02-24 21:29:20 +00:00
Translation updater bot 59dc0e9ba2 Localisation updates from https://translatewiki.net.
Change-Id: I1fac9242bc2827f7a828f2b332b81c95d5d48704
2016-02-24 22:00:45 +01:00
Thiemo Mättig 4eeb884e98 Add array type hints and more specific documentation
The two public functions ref() and references() are called from
Parser::extensionSubstitution(). Everything else is derived from that.

Change-Id: Ib9bb37ac0303f0e90149f5b1c4f4aa3bcf08b957
2016-02-24 20:57:10 +00:00
Amir E. Aharoni adf113af86 Change a condition with == to something more precise
It can be both NULL and an empty string here.
Tests for both cases are added in the following patches:
Ia6c10419a7a92dac642db6ea21908927a5830b69
Ibb3bb1ab3450a34889dcd66b34542f2dd25fdc2b

Change-Id: Ia2b2b6545bb889de59a363a2c1d7569cbc971361
2016-02-24 20:56:12 +00:00
cenarium 469217073a Use span with css instead of strong for cite errors
Change-Id: I9b8954b56646ca9c4632788824346e6116de3146
2016-02-24 18:57:37 +00:00
Bryan Davis 1920b6b80d Use inLanguage() in CiteDataModule
Avoid unstubbing $wgUser during ResourceLoader actions by getting
messages in the language specified in the ResourceLoaderContext.

Bug: T127916
Change-Id: If4034ef7f5a98723cb8d526a067ddcc571a43b76
2016-02-23 17:57:45 -07:00
Translation updater bot 8f904a37d2 Localisation updates from https://translatewiki.net.
Change-Id: I6b6c45210bce9703febfcdb885c7efdef623cf65
2016-02-23 22:31:39 +01:00
Translation updater bot c3c10ab9c9 Localisation updates from https://translatewiki.net.
Change-Id: I05ceb4aa6217f3f9345b69eb4daa1ce14d6f7053
2016-02-22 21:38:12 +01:00
Translation updater bot a729388d98 Localisation updates from https://translatewiki.net.
Change-Id: If038f276f7246339b4e85c108e677d74aac8f73b
2016-02-19 22:06:01 +01:00
Translation updater bot d431fa00a8 Localisation updates from https://translatewiki.net.
Change-Id: I3f5a017fed203a2b2fb1bdf72d49188df094ffb3
2016-02-18 22:14:35 +01:00
jenkins-bot bf3df3fce6 Merge "Use div for references in section preview" 2016-02-18 11:06:09 +00:00
cenarium a6f023902b Use div for references in section preview
This uses a div instead of a span to wrap the section displaying
references in section preview. It also adds an id for the section
header specifically, and does not display the header if its message
is disabled.

Bug: T127188
Change-Id: If3df97319358706f7646f451ff2f4948537130e8
2016-02-18 09:56:52 +00:00
cenarium b991617bc6 Avoid calculating md5 when not caching references
In the old caching system for references, the cache key needs the md5 of
the references, but it shouldn't be calculated when one is not using
this caching system.

Change-Id: I83c17d1df5c5e620ea21d1bf955b86ce94bc119a
2016-02-18 08:17:48 +01:00
Translation updater bot 0a77a3d2a3 Localisation updates from https://translatewiki.net.
Change-Id: If55b6a83078af460d6bb0ec18f7b58a33e778822
2016-02-17 22:47:27 +01:00
Translation updater bot 0d19805e2f Localisation updates from https://translatewiki.net.
Change-Id: I2b42c59b28c6a848eb8ebde54999e24bcd053987
2016-02-16 23:09:47 +01:00
Translation updater bot c6c08ee600 Localisation updates from https://translatewiki.net.
Change-Id: Ic5771efd4dc1ebe8472d9cac0330f361f5fda0c4
2016-02-15 21:38:47 +01:00
Translation updater bot 6c1832eff3 Localisation updates from https://translatewiki.net.
Change-Id: I17ebea1a2f9f9dee8dcdbeb595a20b4de6da490a
2016-02-14 21:29:28 +01:00
Translation updater bot e8775d456b Localisation updates from https://translatewiki.net.
Change-Id: I276aa229677a7a11f87887005999696816b1bc17
2016-02-13 23:00:01 +01:00
jenkins-bot d6bc770016 Merge "Change Mediawiki:Cite error ref_no_key text" 2016-02-12 22:49:38 +00:00
darthbhyrava d8775b5450 Change Mediawiki:Cite error ref_no_key text
Clarified error message by changing it to "The opening <ref> tag is malformed or has a bad name".

Bug: T115810
Change-Id: I0c9cb8f5e81ebdb194c57f24a5792b682dd290dc
2016-02-12 22:59:10 +01:00
jenkins-bot 194532751b Merge "#cite_note and #cite_ref links generated from empty references are broken" 2016-02-12 21:42:56 +00:00
Translation updater bot 3002dc168b Localisation updates from https://translatewiki.net.
Change-Id: Ib1479d7480034b40f87bbf617effda82d01f2b5d
2016-02-12 22:07:27 +01:00
Petr Matas 216b60cb9a #cite_note and #cite_ref links generated from empty references are broken
Bug: T126241
Change-Id: I1e84d3361424e57e9f115a665f77d686a80a9135
2016-02-12 20:49:43 +00:00
jenkins-bot 068c7a84e1 Merge "Store references in page_props and cache" 2016-02-12 19:56:34 +00:00
Translation updater bot 9278810612 Localisation updates from https://translatewiki.net.
Change-Id: I8bf8383aace365a83eb96fd295c42403315567bf
2016-02-11 21:37:38 +01:00
Translation updater bot 2832914298 Localisation updates from https://translatewiki.net.
Change-Id: I81d3303bc6edafa83d2f7f57058c3f93a3788be2
2016-02-10 21:08:46 +01:00
cenarium 70e14ebaeb Store references in page_props and cache
This stores references in page_props during links update in
compressed JSON form. If the size is too big, it's broken up
in several parts to fit, which is very unlikely to occur more
than once.

When the data is retrieved from the db, it's always cached. If
set in config, it's also saved in the cache on parse. If not,
the cache is invalidated when references are modified.

Uses cases include : section preview to also show refs defined
elsewhere on the page (T124840) and MobileFrontend (T123328).
For the later, this still needs API support (T123290).

There's a soft dependency on the core change
I0c73b3d181f32502da75687857ae9aeff731f559.

Bug: T125329
Change-Id: I7b106254b8f264f93b0f0c9cfa89f65adeeea4f0
2016-02-10 14:47:02 +01:00
Ed Sanders eb58f79f8d VE: Fix i18n names broken during migration
Bug: T126373
Change-Id: I682bdaa71bc9a8675c79bae0b2f54955de207945
2016-02-10 00:44:54 +00:00
Translation updater bot 483dbf8766 Localisation updates from https://translatewiki.net.
Change-Id: Ic2292a71f7acb6b323b24a7a3bff25288bbd15c1
2016-02-09 21:39:13 +01:00
Translation updater bot c859818a70 Localisation updates from https://translatewiki.net.
Change-Id: I73ebc11c27e1383d26cfa639c0af4a3b5ea78f3e
2016-02-08 22:11:25 +01:00
Translation updater bot 150f87b498 Localisation updates from https://translatewiki.net.
Change-Id: If0384d482faa450737c68bb7b368b36327703542
2016-02-07 22:14:02 +01:00
cenarium 71889ff017 In section preview, add preview of references to its own section
This is to make it apparent that this isn't part of the preview
of the section itself. A span class is also added.

Bug: T125981
Change-Id: I62c8dca8ee42e79c6b7cd7f837f4e7ee65f77770
2016-02-07 16:34:09 +00:00
James D. Forrester f7d5029426 i18n: Grab last few i18n updates from VE after the move
Change-Id: Ib71727e9c93b426dca8eb15e1bca9f745e3ef205
2016-02-05 14:04:29 -08:00
Ed Sanders 8b0e9c728c VisualEditor: Bring in unit tests from VE
Change-Id: I7da5f25f61d0c7f2331ab927c35d8f6a975041b8
2016-02-05 13:41:43 -08:00
Ed Sanders f641f44628 VE: Fix toolbar hack
Change-Id: I2cad81a89ae0c55d4209bfef3a1db239381996ca
2016-02-04 23:06:06 +00:00
jenkins-bot 07db923b86 Merge "VisualEditor: Move code for Cite into this repo" 2016-02-04 17:05:57 +00:00
Ed Sanders 18f616b9b8 VisualEditor: Move code for Cite into this repo
This code has been developed over three years now in the repo of MediaWiki's
integration of VisualEditor. It has grown and developed significantly during
that time, but now is pretty stable. A number of hacks inside the MediaWiki-
VisualEditor code base have been used to prevent this code from being loaded
on wikis where the Cite extension is not deployed, but this state of affairs
is and always was meant to be temporary.

This code is under the MIT licence which is a tad messy, but not impossible.
It's clearly labelled as such. The list of authors has been updated to take
into account the influx of new functionality.

Bug: T41621
Bug: T104928
Change-Id: I39936ed83d5a60471a0a75da753f498e80aef234
2016-02-04 08:41:54 -08:00
Translation updater bot 052d3baec2 Localisation updates from https://translatewiki.net.
Change-Id: I05504b439d995b3b9006c2589cd4061e84e6746e
2016-02-03 23:04:20 +01:00
jenkins-bot 2f7ba9997d Merge "Rollback all, then redo all, when fixing out-of-order tags; not one-by-one" 2016-02-02 20:36:50 +00:00
Bartosz Dziewoński e116699480 Rollback all, then redo all, when fixing out-of-order tags; not one-by-one
Imagine the following wikitext:

  <ref name=r/>
  <references>
  <ref name=r>A</ref>
  <ref name=r>B</ref>
  </references>

This is simple. Cite would see these as the following operations, in
order:

1. Use only:       <ref name=r/>
2. References block
3. Define only:    <ref name=r>A</ref>
4. Define only:    <ref name=r>B</ref>

<ref name=r> is defined twice with different content and we get an
error message.

Now, imagine the following wikitext:

  <ref name=r/>
  {{#tag:references|
  <ref name=r>A</ref>
  <ref name=r>B</ref>
  }}

Cite would see these as the following operations, in order:
1. Use only:       <ref name=r/>
2. Use and define: <ref name=r>A</ref>
3. Use and define: <ref name=r>B</ref>
4. References block

When the 'references' block appears, Cite notices that the tag has
parsed content, and deduces that it was called with #tag. We need to
undo the last operations to update internal bookkeeping, as the last
two 'ref' tags do not actually represent ref usages, as we assumed,
but only definitions.

5. Undo:          <ref name=r> reused
6. Define only:   <ref name=r>B</ref>
7. Undo:          <ref name=r> defined
(Right now, it appears to Cite that <ref name=r> was never defined!)
8. Define only: <ref name=r>A</ref>

Thus we get no errors, although we should.

This patch changes the order of the rollback operations:

5. Undo:          <ref name=r> reused
6. Undo:          <ref name=r> defined
7. Define only:   <ref name=r>A</ref>
8. Define only:   <ref name=r>B</ref>

Aha! <ref name=r> is defined twice with different content! We get an
error correctly.

Bug: T124227
Change-Id: I61766c4104856323987cca9a5e4ff85a76b3618b
2016-02-02 21:21:30 +01:00
Translation updater bot 9ff9da3b45 Localisation updates from https://translatewiki.net.
Change-Id: I9c1d78c8a99234aecc0f8ae935659bdb7efdd8d8
2016-01-29 22:40:21 +01:00
Translation updater bot 56ce70cf71 Localisation updates from https://translatewiki.net.
Change-Id: Ia7b63e33dfc0d48bc1fd0ac0fea9a331b211cb3e
2016-01-27 21:39:04 +01:00
Translation updater bot c509bfa9ac Localisation updates from https://translatewiki.net.
Change-Id: I42a3bdf5b6adc5cd6ca002aec859f5e2521a6518
2016-01-25 22:28:39 +01:00
Translation updater bot 7b70ded3e0 Localisation updates from https://translatewiki.net.
Change-Id: If244499b6fc7824b0a6c14e65be0d5be72641898
2016-01-24 21:19:23 +01:00
Translation updater bot e6a6162fb9 Localisation updates from https://translatewiki.net.
Change-Id: I3f24b447054f73f1ab7505af66343d9501113eba
2016-01-23 22:24:25 +01:00
Translation updater bot 9b65d63af6 Localisation updates from https://translatewiki.net.
Change-Id: I853eae9b1b1145bb0732e46f04d5a18ff7723d30
2016-01-21 21:54:23 +01:00