From f6d65e533c62f6deb21342d4901ece24497b433e Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Thu, 4 Jun 2015 07:31:04 +0200 Subject: Update to MediaWiki 1.25.1 --- extensions/Cite/Cite.i18n.php | 35 --- extensions/Cite/Cite.php | 97 +------ extensions/Cite/Cite_body.php | 108 ++++--- extensions/Cite/Gruntfile.js | 19 ++ extensions/Cite/SpecialCite.alias.php | 430 ---------------------------- extensions/Cite/SpecialCite.i18n.php | 35 --- extensions/Cite/SpecialCite.php | 92 +----- extensions/Cite/SpecialCite_body.php | 186 ------------ extensions/Cite/citeParserTests.txt | 2 +- extensions/Cite/extension.json | 52 ++++ extensions/Cite/i18n/af.json | 12 + extensions/Cite/i18n/an.json | 25 ++ extensions/Cite/i18n/ar.json | 33 +++ extensions/Cite/i18n/arc.json | 8 + extensions/Cite/i18n/arq.json | 8 + extensions/Cite/i18n/arz.json | 22 ++ extensions/Cite/i18n/as.json | 27 ++ extensions/Cite/i18n/ast.json | 28 ++ extensions/Cite/i18n/az.json | 14 + extensions/Cite/i18n/azb.json | 9 + extensions/Cite/i18n/ba.json | 25 ++ extensions/Cite/i18n/bcc.json | 22 ++ extensions/Cite/i18n/bcl.json | 27 ++ extensions/Cite/i18n/be-tarask.json | 30 ++ extensions/Cite/i18n/bg.json | 21 ++ extensions/Cite/i18n/bgn.json | 8 + extensions/Cite/i18n/bn.json | 24 ++ extensions/Cite/i18n/br.json | 28 ++ extensions/Cite/i18n/bs.json | 27 ++ extensions/Cite/i18n/bto.json | 9 + extensions/Cite/i18n/ca.json | 28 ++ extensions/Cite/i18n/ce.json | 28 ++ extensions/Cite/i18n/core/af.json | 12 - extensions/Cite/i18n/core/an.json | 26 -- extensions/Cite/i18n/core/ar.json | 34 --- extensions/Cite/i18n/core/arc.json | 8 - extensions/Cite/i18n/core/arz.json | 23 -- extensions/Cite/i18n/core/as.json | 28 -- extensions/Cite/i18n/core/ast.json | 29 -- extensions/Cite/i18n/core/az.json | 14 - extensions/Cite/i18n/core/azb.json | 9 - extensions/Cite/i18n/core/ba.json | 26 -- extensions/Cite/i18n/core/bcc.json | 22 -- extensions/Cite/i18n/core/bcl.json | 28 -- extensions/Cite/i18n/core/be-tarask.json | 31 -- extensions/Cite/i18n/core/bg.json | 22 -- extensions/Cite/i18n/core/bn.json | 25 -- extensions/Cite/i18n/core/br.json | 29 -- extensions/Cite/i18n/core/bs.json | 27 -- extensions/Cite/i18n/core/bto.json | 9 - extensions/Cite/i18n/core/ca.json | 29 -- extensions/Cite/i18n/core/ce.json | 14 - extensions/Cite/i18n/core/cs.json | 33 --- extensions/Cite/i18n/core/cu.json | 8 - extensions/Cite/i18n/core/cy.json | 29 -- extensions/Cite/i18n/core/da.json | 32 --- extensions/Cite/i18n/core/de-ch.json | 9 - extensions/Cite/i18n/core/de-formal.json | 12 - extensions/Cite/i18n/core/de.json | 34 --- extensions/Cite/i18n/core/diq.json | 41 --- extensions/Cite/i18n/core/dsb.json | 28 -- extensions/Cite/i18n/core/el.json | 31 -- extensions/Cite/i18n/core/en.json | 40 --- extensions/Cite/i18n/core/eo.json | 28 -- extensions/Cite/i18n/core/es.json | 44 --- extensions/Cite/i18n/core/et.json | 28 -- extensions/Cite/i18n/core/eu.json | 9 - extensions/Cite/i18n/core/fa.json | 34 --- extensions/Cite/i18n/core/fi.json | 33 --- extensions/Cite/i18n/core/fo.json | 10 - extensions/Cite/i18n/core/fr.json | 43 --- extensions/Cite/i18n/core/frp.json | 28 -- extensions/Cite/i18n/core/fur.json | 8 - extensions/Cite/i18n/core/gag.json | 8 - extensions/Cite/i18n/core/gl.json | 30 -- extensions/Cite/i18n/core/grc.json | 8 - extensions/Cite/i18n/core/gsw.json | 27 -- extensions/Cite/i18n/core/gu.json | 30 -- extensions/Cite/i18n/core/he.json | 31 -- extensions/Cite/i18n/core/hi.json | 32 --- extensions/Cite/i18n/core/hr.json | 29 -- extensions/Cite/i18n/core/hsb.json | 28 -- extensions/Cite/i18n/core/ht.json | 18 -- extensions/Cite/i18n/core/hu.json | 29 -- extensions/Cite/i18n/core/ia.json | 28 -- extensions/Cite/i18n/core/id.json | 31 -- extensions/Cite/i18n/core/ig.json | 8 - extensions/Cite/i18n/core/ilo.json | 28 -- extensions/Cite/i18n/core/io.json | 8 - extensions/Cite/i18n/core/is.json | 22 -- extensions/Cite/i18n/core/it.json | 34 --- extensions/Cite/i18n/core/ja.json | 32 --- extensions/Cite/i18n/core/jut.json | 15 - extensions/Cite/i18n/core/jv.json | 42 --- extensions/Cite/i18n/core/ka.json | 36 --- extensions/Cite/i18n/core/kk-arab.json | 10 - extensions/Cite/i18n/core/kk-cyrl.json | 26 -- extensions/Cite/i18n/core/kk-latn.json | 10 - extensions/Cite/i18n/core/km.json | 9 - extensions/Cite/i18n/core/ko.json | 33 --- extensions/Cite/i18n/core/krc.json | 8 - extensions/Cite/i18n/core/ksh.json | 33 --- extensions/Cite/i18n/core/kw.json | 10 - extensions/Cite/i18n/core/lb.json | 27 -- extensions/Cite/i18n/core/li.json | 27 -- extensions/Cite/i18n/core/lrc.json | 12 - extensions/Cite/i18n/core/lt.json | 19 -- extensions/Cite/i18n/core/lv.json | 12 - extensions/Cite/i18n/core/mg.json | 8 - extensions/Cite/i18n/core/min.json | 36 --- extensions/Cite/i18n/core/mk.json | 30 -- extensions/Cite/i18n/core/ml.json | 31 -- extensions/Cite/i18n/core/mn.json | 8 - extensions/Cite/i18n/core/mr.json | 32 --- extensions/Cite/i18n/core/ms.json | 29 -- extensions/Cite/i18n/core/mt.json | 24 -- extensions/Cite/i18n/core/nb.json | 29 -- extensions/Cite/i18n/core/nds-nl.json | 8 - extensions/Cite/i18n/core/nds.json | 20 -- extensions/Cite/i18n/core/nl.json | 31 -- extensions/Cite/i18n/core/nn.json | 22 -- extensions/Cite/i18n/core/oc.json | 27 -- extensions/Cite/i18n/core/or.json | 28 -- extensions/Cite/i18n/core/pag.json | 4 - extensions/Cite/i18n/core/pl.json | 32 --- extensions/Cite/i18n/core/pms.json | 29 -- extensions/Cite/i18n/core/pnb.json | 26 -- extensions/Cite/i18n/core/ps.json | 8 - extensions/Cite/i18n/core/pt-br.json | 31 -- extensions/Cite/i18n/core/pt.json | 35 --- extensions/Cite/i18n/core/qqq.json | 53 ---- extensions/Cite/i18n/core/qu.json | 22 -- extensions/Cite/i18n/core/ro.json | 27 -- extensions/Cite/i18n/core/roa-tara.json | 28 -- extensions/Cite/i18n/core/ru.json | 45 --- extensions/Cite/i18n/core/rue.json | 26 -- extensions/Cite/i18n/core/sa.json | 26 -- extensions/Cite/i18n/core/sah.json | 26 -- extensions/Cite/i18n/core/scn.json | 33 --- extensions/Cite/i18n/core/sh.json | 8 - extensions/Cite/i18n/core/si.json | 30 -- extensions/Cite/i18n/core/sk.json | 26 -- extensions/Cite/i18n/core/sl.json | 31 -- extensions/Cite/i18n/core/sq.json | 27 -- extensions/Cite/i18n/core/sr-ec.json | 33 --- extensions/Cite/i18n/core/sr-el.json | 31 -- extensions/Cite/i18n/core/stq.json | 25 -- extensions/Cite/i18n/core/su.json | 8 - extensions/Cite/i18n/core/sv.json | 34 --- extensions/Cite/i18n/core/ta.json | 13 - extensions/Cite/i18n/core/te.json | 20 -- extensions/Cite/i18n/core/tg-cyrl.json | 17 -- extensions/Cite/i18n/core/tg-latn.json | 17 -- extensions/Cite/i18n/core/th.json | 26 -- extensions/Cite/i18n/core/tk.json | 22 -- extensions/Cite/i18n/core/tl.json | 38 --- extensions/Cite/i18n/core/tly.json | 8 - extensions/Cite/i18n/core/tr.json | 31 -- extensions/Cite/i18n/core/tt-cyrl.json | 8 - extensions/Cite/i18n/core/ttt.json | 8 - extensions/Cite/i18n/core/tzm.json | 10 - extensions/Cite/i18n/core/ug-arab.json | 8 - extensions/Cite/i18n/core/uk.json | 45 --- extensions/Cite/i18n/core/vec.json | 26 -- extensions/Cite/i18n/core/vep.json | 8 - extensions/Cite/i18n/core/vi.json | 30 -- extensions/Cite/i18n/core/vo.json | 14 - extensions/Cite/i18n/core/yi.json | 25 -- extensions/Cite/i18n/core/yue.json | 13 - extensions/Cite/i18n/core/zh-hans.json | 37 --- extensions/Cite/i18n/core/zh-hant.json | 32 --- extensions/Cite/i18n/cs.json | 32 +++ extensions/Cite/i18n/cu.json | 8 + extensions/Cite/i18n/cy.json | 28 ++ extensions/Cite/i18n/da.json | 31 ++ extensions/Cite/i18n/de-ch.json | 9 + extensions/Cite/i18n/de-formal.json | 12 + extensions/Cite/i18n/de.json | 33 +++ extensions/Cite/i18n/diq.json | 40 +++ extensions/Cite/i18n/dsb.json | 27 ++ extensions/Cite/i18n/el.json | 31 ++ extensions/Cite/i18n/en.json | 52 ++++ extensions/Cite/i18n/eo.json | 30 ++ extensions/Cite/i18n/es.json | 43 +++ extensions/Cite/i18n/et.json | 27 ++ extensions/Cite/i18n/eu.json | 9 + extensions/Cite/i18n/fa.json | 33 +++ extensions/Cite/i18n/fi.json | 32 +++ extensions/Cite/i18n/fo.json | 9 + extensions/Cite/i18n/fr.json | 43 +++ extensions/Cite/i18n/frp.json | 27 ++ extensions/Cite/i18n/frr.json | 8 + extensions/Cite/i18n/fur.json | 8 + extensions/Cite/i18n/fy.json | 8 + extensions/Cite/i18n/gag.json | 8 + extensions/Cite/i18n/gl.json | 29 ++ extensions/Cite/i18n/gom-deva.json | 8 + extensions/Cite/i18n/grc.json | 8 + extensions/Cite/i18n/gsw.json | 26 ++ extensions/Cite/i18n/gu.json | 29 ++ extensions/Cite/i18n/he.json | 30 ++ extensions/Cite/i18n/hi.json | 31 ++ extensions/Cite/i18n/hr.json | 29 ++ extensions/Cite/i18n/hsb.json | 27 ++ extensions/Cite/i18n/ht.json | 18 ++ extensions/Cite/i18n/hu.json | 28 ++ extensions/Cite/i18n/hy.json | 8 + extensions/Cite/i18n/ia.json | 27 ++ extensions/Cite/i18n/id.json | 30 ++ extensions/Cite/i18n/ig.json | 8 + extensions/Cite/i18n/ilo.json | 27 ++ extensions/Cite/i18n/io.json | 8 + extensions/Cite/i18n/is.json | 25 ++ extensions/Cite/i18n/it.json | 33 +++ extensions/Cite/i18n/ja.json | 31 ++ extensions/Cite/i18n/jut.json | 15 + extensions/Cite/i18n/jv.json | 41 +++ extensions/Cite/i18n/ka.json | 35 +++ extensions/Cite/i18n/kk-arab.json | 10 + extensions/Cite/i18n/kk-cyrl.json | 25 ++ extensions/Cite/i18n/kk-latn.json | 10 + extensions/Cite/i18n/km.json | 9 + extensions/Cite/i18n/ko.json | 32 +++ extensions/Cite/i18n/krc.json | 8 + extensions/Cite/i18n/ksh.json | 32 +++ extensions/Cite/i18n/kw.json | 9 + extensions/Cite/i18n/lb.json | 26 ++ extensions/Cite/i18n/lez.json | 8 + extensions/Cite/i18n/li.json | 26 ++ extensions/Cite/i18n/lrc.json | 20 ++ extensions/Cite/i18n/lt.json | 18 ++ extensions/Cite/i18n/lv.json | 11 + extensions/Cite/i18n/mai.json | 8 + extensions/Cite/i18n/mg.json | 8 + extensions/Cite/i18n/min.json | 35 +++ extensions/Cite/i18n/mk.json | 29 ++ extensions/Cite/i18n/ml.json | 30 ++ extensions/Cite/i18n/mn.json | 8 + extensions/Cite/i18n/mr.json | 31 ++ extensions/Cite/i18n/ms.json | 29 ++ extensions/Cite/i18n/mt.json | 23 ++ extensions/Cite/i18n/nap.json | 27 ++ extensions/Cite/i18n/nb.json | 31 ++ extensions/Cite/i18n/nds-nl.json | 8 + extensions/Cite/i18n/nds.json | 19 ++ extensions/Cite/i18n/ne.json | 8 + extensions/Cite/i18n/nl.json | 30 ++ extensions/Cite/i18n/nn.json | 21 ++ extensions/Cite/i18n/oc.json | 26 ++ extensions/Cite/i18n/or.json | 27 ++ extensions/Cite/i18n/pa.json | 8 + extensions/Cite/i18n/pag.json | 4 + extensions/Cite/i18n/pfl.json | 8 + extensions/Cite/i18n/pl.json | 31 ++ extensions/Cite/i18n/pms.json | 28 ++ extensions/Cite/i18n/pnb.json | 25 ++ extensions/Cite/i18n/ps.json | 8 + extensions/Cite/i18n/pt-br.json | 30 ++ extensions/Cite/i18n/pt.json | 34 +++ extensions/Cite/i18n/qqq.json | 53 ++++ extensions/Cite/i18n/qu.json | 21 ++ extensions/Cite/i18n/ro.json | 31 ++ extensions/Cite/i18n/roa-tara.json | 27 ++ extensions/Cite/i18n/ru.json | 44 +++ extensions/Cite/i18n/rue.json | 25 ++ extensions/Cite/i18n/sa.json | 25 ++ extensions/Cite/i18n/sah.json | 25 ++ extensions/Cite/i18n/scn.json | 32 +++ extensions/Cite/i18n/sh.json | 8 + extensions/Cite/i18n/si.json | 29 ++ extensions/Cite/i18n/sk.json | 25 ++ extensions/Cite/i18n/sl.json | 30 ++ extensions/Cite/i18n/special/ace.json | 8 - extensions/Cite/i18n/special/af.json | 14 - extensions/Cite/i18n/special/am.json | 12 - extensions/Cite/i18n/special/an.json | 13 - extensions/Cite/i18n/special/ar.json | 15 - extensions/Cite/i18n/special/arc.json | 13 - extensions/Cite/i18n/special/arn.json | 14 - extensions/Cite/i18n/special/arz.json | 14 - extensions/Cite/i18n/special/as.json | 15 - extensions/Cite/i18n/special/ast.json | 15 - extensions/Cite/i18n/special/av.json | 8 - extensions/Cite/i18n/special/az.json | 10 - extensions/Cite/i18n/special/azb.json | 15 - extensions/Cite/i18n/special/ba.json | 14 - extensions/Cite/i18n/special/bar.json | 14 - extensions/Cite/i18n/special/bcc.json | 12 - extensions/Cite/i18n/special/bcl.json | 15 - extensions/Cite/i18n/special/be-tarask.json | 15 - extensions/Cite/i18n/special/be.json | 13 - extensions/Cite/i18n/special/bg.json | 14 - extensions/Cite/i18n/special/bn.json | 13 - extensions/Cite/i18n/special/bo.json | 9 - extensions/Cite/i18n/special/bpy.json | 5 - extensions/Cite/i18n/special/br.json | 14 - extensions/Cite/i18n/special/bs.json | 13 - extensions/Cite/i18n/special/bto.json | 8 - extensions/Cite/i18n/special/bxr.json | 8 - extensions/Cite/i18n/special/ca.json | 17 -- extensions/Cite/i18n/special/cdo.json | 11 - extensions/Cite/i18n/special/ce.json | 15 - extensions/Cite/i18n/special/ceb.json | 8 - extensions/Cite/i18n/special/ckb.json | 13 - extensions/Cite/i18n/special/co.json | 6 - extensions/Cite/i18n/special/cs.json | 17 -- extensions/Cite/i18n/special/cu.json | 9 - extensions/Cite/i18n/special/cy.json | 14 - extensions/Cite/i18n/special/da.json | 17 -- extensions/Cite/i18n/special/de.json | 15 - extensions/Cite/i18n/special/diq.json | 16 -- extensions/Cite/i18n/special/dsb.json | 13 - extensions/Cite/i18n/special/ee.json | 4 - extensions/Cite/i18n/special/el.json | 17 -- extensions/Cite/i18n/special/en.json | 14 - extensions/Cite/i18n/special/eo.json | 16 -- extensions/Cite/i18n/special/es.json | 19 -- extensions/Cite/i18n/special/et.json | 15 - extensions/Cite/i18n/special/eu.json | 15 - extensions/Cite/i18n/special/ext.json | 11 - extensions/Cite/i18n/special/fa.json | 17 -- extensions/Cite/i18n/special/fi.json | 17 -- extensions/Cite/i18n/special/fj.json | 4 - extensions/Cite/i18n/special/fo.json | 12 - extensions/Cite/i18n/special/fr.json | 18 -- extensions/Cite/i18n/special/frp.json | 13 - extensions/Cite/i18n/special/frr.json | 14 - extensions/Cite/i18n/special/fur.json | 12 - extensions/Cite/i18n/special/fy.json | 13 - extensions/Cite/i18n/special/ga.json | 12 - extensions/Cite/i18n/special/gd.json | 8 - extensions/Cite/i18n/special/gl.json | 15 - extensions/Cite/i18n/special/grc.json | 14 - extensions/Cite/i18n/special/gsw.json | 16 -- extensions/Cite/i18n/special/gu.json | 15 - extensions/Cite/i18n/special/gv.json | 12 - extensions/Cite/i18n/special/ha.json | 4 - extensions/Cite/i18n/special/haw.json | 10 - extensions/Cite/i18n/special/he.json | 15 - extensions/Cite/i18n/special/hi.json | 16 -- extensions/Cite/i18n/special/hif-latn.json | 8 - extensions/Cite/i18n/special/hil.json | 8 - extensions/Cite/i18n/special/hr.json | 15 - extensions/Cite/i18n/special/hsb.json | 14 - extensions/Cite/i18n/special/ht.json | 12 - extensions/Cite/i18n/special/hu.json | 16 -- extensions/Cite/i18n/special/hy.json | 13 - extensions/Cite/i18n/special/ia.json | 15 - extensions/Cite/i18n/special/id.json | 16 -- extensions/Cite/i18n/special/ie.json | 8 - extensions/Cite/i18n/special/ig.json | 13 - extensions/Cite/i18n/special/ilo.json | 13 - extensions/Cite/i18n/special/io.json | 12 - extensions/Cite/i18n/special/is.json | 14 - extensions/Cite/i18n/special/it.json | 16 -- extensions/Cite/i18n/special/ja.json | 19 -- extensions/Cite/i18n/special/jut.json | 11 - extensions/Cite/i18n/special/jv.json | 15 - extensions/Cite/i18n/special/ka.json | 17 -- extensions/Cite/i18n/special/kk-arab.json | 8 - extensions/Cite/i18n/special/kk-cyrl.json | 13 - extensions/Cite/i18n/special/kk-latn.json | 8 - extensions/Cite/i18n/special/kl.json | 8 - extensions/Cite/i18n/special/km.json | 14 - extensions/Cite/i18n/special/kn.json | 11 - extensions/Cite/i18n/special/ko.json | 17 -- extensions/Cite/i18n/special/krc.json | 10 - extensions/Cite/i18n/special/krj.json | 8 - extensions/Cite/i18n/special/ksh.json | 14 - extensions/Cite/i18n/special/ku-latn.json | 11 - extensions/Cite/i18n/special/kw.json | 14 - extensions/Cite/i18n/special/la.json | 16 -- extensions/Cite/i18n/special/lad.json | 8 - extensions/Cite/i18n/special/lb.json | 15 - extensions/Cite/i18n/special/lez.json | 10 - extensions/Cite/i18n/special/lfn.json | 8 - extensions/Cite/i18n/special/lg.json | 12 - extensions/Cite/i18n/special/li.json | 15 - extensions/Cite/i18n/special/lmo.json | 9 - extensions/Cite/i18n/special/lo.json | 6 - extensions/Cite/i18n/special/lrc.json | 13 - extensions/Cite/i18n/special/lt.json | 14 - extensions/Cite/i18n/special/lus.json | 13 - extensions/Cite/i18n/special/lv.json | 11 - extensions/Cite/i18n/special/lzh.json | 5 - extensions/Cite/i18n/special/mg.json | 8 - extensions/Cite/i18n/special/mhr.json | 8 - extensions/Cite/i18n/special/min.json | 14 - extensions/Cite/i18n/special/mk.json | 16 -- extensions/Cite/i18n/special/ml.json | 15 - extensions/Cite/i18n/special/mn.json | 12 - extensions/Cite/i18n/special/mr.json | 15 - extensions/Cite/i18n/special/mrj.json | 8 - extensions/Cite/i18n/special/ms.json | 16 -- extensions/Cite/i18n/special/mt.json | 15 - extensions/Cite/i18n/special/mwl.json | 8 - extensions/Cite/i18n/special/myv.json | 9 - extensions/Cite/i18n/special/nah.json | 12 - extensions/Cite/i18n/special/nan.json | 7 - extensions/Cite/i18n/special/nb.json | 14 - extensions/Cite/i18n/special/nds-nl.json | 14 - extensions/Cite/i18n/special/nds.json | 12 - extensions/Cite/i18n/special/ne.json | 6 - extensions/Cite/i18n/special/niu.json | 8 - extensions/Cite/i18n/special/nl.json | 16 -- extensions/Cite/i18n/special/nn.json | 16 -- extensions/Cite/i18n/special/nov.json | 9 - extensions/Cite/i18n/special/nso.json | 8 - extensions/Cite/i18n/special/oc.json | 14 - extensions/Cite/i18n/special/or.json | 15 - extensions/Cite/i18n/special/os.json | 8 - extensions/Cite/i18n/special/pag.json | 7 - extensions/Cite/i18n/special/pam.json | 7 - extensions/Cite/i18n/special/pcd.json | 8 - extensions/Cite/i18n/special/pdc.json | 8 - extensions/Cite/i18n/special/pfl.json | 11 - extensions/Cite/i18n/special/pl.json | 14 - extensions/Cite/i18n/special/pms.json | 16 -- extensions/Cite/i18n/special/pnb.json | 13 - extensions/Cite/i18n/special/pnt.json | 8 - extensions/Cite/i18n/special/ps.json | 13 - extensions/Cite/i18n/special/pt-br.json | 14 - extensions/Cite/i18n/special/pt.json | 17 -- extensions/Cite/i18n/special/qqq.json | 22 -- extensions/Cite/i18n/special/qu.json | 13 - extensions/Cite/i18n/special/rm.json | 9 - extensions/Cite/i18n/special/rmy.json | 10 - extensions/Cite/i18n/special/ro.json | 20 -- extensions/Cite/i18n/special/roa-tara.json | 14 - extensions/Cite/i18n/special/ru.json | 17 -- extensions/Cite/i18n/special/rue.json | 14 - extensions/Cite/i18n/special/rup.json | 8 - extensions/Cite/i18n/special/sa.json | 15 - extensions/Cite/i18n/special/sah.json | 13 - extensions/Cite/i18n/special/scn.json | 12 - extensions/Cite/i18n/special/sd.json | 4 - extensions/Cite/i18n/special/sgs.json | 9 - extensions/Cite/i18n/special/sh.json | 11 - extensions/Cite/i18n/special/si.json | 14 - extensions/Cite/i18n/special/sk.json | 15 - extensions/Cite/i18n/special/sl.json | 15 - extensions/Cite/i18n/special/sma.json | 8 - extensions/Cite/i18n/special/sn.json | 4 - extensions/Cite/i18n/special/so.json | 14 - extensions/Cite/i18n/special/sq.json | 14 - extensions/Cite/i18n/special/sr-ec.json | 19 -- extensions/Cite/i18n/special/sr-el.json | 17 -- extensions/Cite/i18n/special/stq.json | 12 - extensions/Cite/i18n/special/su.json | 13 - extensions/Cite/i18n/special/sv.json | 17 -- extensions/Cite/i18n/special/sw.json | 13 - extensions/Cite/i18n/special/sxu.json | 10 - extensions/Cite/i18n/special/szl.json | 10 - extensions/Cite/i18n/special/ta.json | 15 - extensions/Cite/i18n/special/te.json | 14 - extensions/Cite/i18n/special/tet.json | 13 - extensions/Cite/i18n/special/tg-cyrl.json | 12 - extensions/Cite/i18n/special/tg-latn.json | 12 - extensions/Cite/i18n/special/th.json | 14 - extensions/Cite/i18n/special/tk.json | 13 - extensions/Cite/i18n/special/tl.json | 14 - extensions/Cite/i18n/special/tly.json | 8 - extensions/Cite/i18n/special/tn.json | 4 - extensions/Cite/i18n/special/to.json | 5 - extensions/Cite/i18n/special/tr.json | 17 -- extensions/Cite/i18n/special/tru.json | 8 - extensions/Cite/i18n/special/ts.json | 8 - extensions/Cite/i18n/special/tt-cyrl.json | 13 - extensions/Cite/i18n/special/tyv.json | 9 - extensions/Cite/i18n/special/tzm.json | 8 - extensions/Cite/i18n/special/udm.json | 8 - extensions/Cite/i18n/special/ug-arab.json | 8 - extensions/Cite/i18n/special/ug-latn.json | 9 - extensions/Cite/i18n/special/uk.json | 16 -- extensions/Cite/i18n/special/ur.json | 6 - extensions/Cite/i18n/special/uz.json | 8 - extensions/Cite/i18n/special/vec.json | 15 - extensions/Cite/i18n/special/vep.json | 14 - extensions/Cite/i18n/special/vi.json | 15 - extensions/Cite/i18n/special/vo.json | 13 - extensions/Cite/i18n/special/wa.json | 8 - extensions/Cite/i18n/special/wuu.json | 7 - extensions/Cite/i18n/special/xal.json | 8 - extensions/Cite/i18n/special/yi.json | 13 - extensions/Cite/i18n/special/yo.json | 8 - extensions/Cite/i18n/special/yue.json | 8 - extensions/Cite/i18n/special/zh-hans.json | 16 -- extensions/Cite/i18n/special/zh-hant.json | 17 -- extensions/Cite/i18n/sq.json | 26 ++ extensions/Cite/i18n/sr-ec.json | 32 +++ extensions/Cite/i18n/sr-el.json | 30 ++ extensions/Cite/i18n/stq.json | 24 ++ extensions/Cite/i18n/su.json | 8 + extensions/Cite/i18n/sv.json | 34 +++ extensions/Cite/i18n/ta.json | 12 + extensions/Cite/i18n/tcy.json | 8 + extensions/Cite/i18n/te.json | 20 ++ extensions/Cite/i18n/tg-cyrl.json | 17 ++ extensions/Cite/i18n/tg-latn.json | 17 ++ extensions/Cite/i18n/th.json | 26 ++ extensions/Cite/i18n/tk.json | 21 ++ extensions/Cite/i18n/tl.json | 37 +++ extensions/Cite/i18n/tly.json | 8 + extensions/Cite/i18n/tr.json | 30 ++ extensions/Cite/i18n/tt-cyrl.json | 8 + extensions/Cite/i18n/ttt.json | 8 + extensions/Cite/i18n/tzm.json | 10 + extensions/Cite/i18n/ug-arab.json | 8 + extensions/Cite/i18n/uk.json | 44 +++ extensions/Cite/i18n/ur.json | 8 + extensions/Cite/i18n/vec.json | 25 ++ extensions/Cite/i18n/vep.json | 8 + extensions/Cite/i18n/vi.json | 29 ++ extensions/Cite/i18n/vo.json | 14 + extensions/Cite/i18n/yi.json | 25 ++ extensions/Cite/i18n/yue.json | 13 + extensions/Cite/i18n/zh-hans.json | 36 +++ extensions/Cite/i18n/zh-hant.json | 32 +++ extensions/Cite/modules/ext.cite.css | 13 + extensions/Cite/modules/ext.specialcite.css | 14 - 520 files changed, 3575 insertions(+), 6868 deletions(-) delete mode 100644 extensions/Cite/Cite.i18n.php create mode 100644 extensions/Cite/Gruntfile.js delete mode 100644 extensions/Cite/SpecialCite.alias.php delete mode 100644 extensions/Cite/SpecialCite.i18n.php delete mode 100644 extensions/Cite/SpecialCite_body.php create mode 100644 extensions/Cite/extension.json create mode 100644 extensions/Cite/i18n/af.json create mode 100644 extensions/Cite/i18n/an.json create mode 100644 extensions/Cite/i18n/ar.json create mode 100644 extensions/Cite/i18n/arc.json create mode 100644 extensions/Cite/i18n/arq.json create mode 100644 extensions/Cite/i18n/arz.json create mode 100644 extensions/Cite/i18n/as.json create mode 100644 extensions/Cite/i18n/ast.json create mode 100644 extensions/Cite/i18n/az.json create mode 100644 extensions/Cite/i18n/azb.json create mode 100644 extensions/Cite/i18n/ba.json create mode 100644 extensions/Cite/i18n/bcc.json create mode 100644 extensions/Cite/i18n/bcl.json create mode 100644 extensions/Cite/i18n/be-tarask.json create mode 100644 extensions/Cite/i18n/bg.json create mode 100644 extensions/Cite/i18n/bgn.json create mode 100644 extensions/Cite/i18n/bn.json create mode 100644 extensions/Cite/i18n/br.json create mode 100644 extensions/Cite/i18n/bs.json create mode 100644 extensions/Cite/i18n/bto.json create mode 100644 extensions/Cite/i18n/ca.json create mode 100644 extensions/Cite/i18n/ce.json delete mode 100644 extensions/Cite/i18n/core/af.json delete mode 100644 extensions/Cite/i18n/core/an.json delete mode 100644 extensions/Cite/i18n/core/ar.json delete mode 100644 extensions/Cite/i18n/core/arc.json delete mode 100644 extensions/Cite/i18n/core/arz.json delete mode 100644 extensions/Cite/i18n/core/as.json delete mode 100644 extensions/Cite/i18n/core/ast.json delete mode 100644 extensions/Cite/i18n/core/az.json delete mode 100644 extensions/Cite/i18n/core/azb.json delete mode 100644 extensions/Cite/i18n/core/ba.json delete mode 100644 extensions/Cite/i18n/core/bcc.json delete mode 100644 extensions/Cite/i18n/core/bcl.json delete mode 100644 extensions/Cite/i18n/core/be-tarask.json delete mode 100644 extensions/Cite/i18n/core/bg.json delete mode 100644 extensions/Cite/i18n/core/bn.json delete mode 100644 extensions/Cite/i18n/core/br.json delete mode 100644 extensions/Cite/i18n/core/bs.json delete mode 100644 extensions/Cite/i18n/core/bto.json delete mode 100644 extensions/Cite/i18n/core/ca.json delete mode 100644 extensions/Cite/i18n/core/ce.json delete mode 100644 extensions/Cite/i18n/core/cs.json delete mode 100644 extensions/Cite/i18n/core/cu.json delete mode 100644 extensions/Cite/i18n/core/cy.json delete mode 100644 extensions/Cite/i18n/core/da.json delete mode 100644 extensions/Cite/i18n/core/de-ch.json delete mode 100644 extensions/Cite/i18n/core/de-formal.json delete mode 100644 extensions/Cite/i18n/core/de.json delete mode 100644 extensions/Cite/i18n/core/diq.json delete mode 100644 extensions/Cite/i18n/core/dsb.json delete mode 100644 extensions/Cite/i18n/core/el.json delete mode 100644 extensions/Cite/i18n/core/en.json delete mode 100644 extensions/Cite/i18n/core/eo.json delete mode 100644 extensions/Cite/i18n/core/es.json delete mode 100644 extensions/Cite/i18n/core/et.json delete mode 100644 extensions/Cite/i18n/core/eu.json delete mode 100644 extensions/Cite/i18n/core/fa.json delete mode 100644 extensions/Cite/i18n/core/fi.json delete mode 100644 extensions/Cite/i18n/core/fo.json delete mode 100644 extensions/Cite/i18n/core/fr.json delete mode 100644 extensions/Cite/i18n/core/frp.json delete mode 100644 extensions/Cite/i18n/core/fur.json delete mode 100644 extensions/Cite/i18n/core/gag.json delete mode 100644 extensions/Cite/i18n/core/gl.json delete mode 100644 extensions/Cite/i18n/core/grc.json delete mode 100644 extensions/Cite/i18n/core/gsw.json delete mode 100644 extensions/Cite/i18n/core/gu.json delete mode 100644 extensions/Cite/i18n/core/he.json delete mode 100644 extensions/Cite/i18n/core/hi.json delete mode 100644 extensions/Cite/i18n/core/hr.json delete mode 100644 extensions/Cite/i18n/core/hsb.json delete mode 100644 extensions/Cite/i18n/core/ht.json delete mode 100644 extensions/Cite/i18n/core/hu.json delete mode 100644 extensions/Cite/i18n/core/ia.json delete mode 100644 extensions/Cite/i18n/core/id.json delete mode 100644 extensions/Cite/i18n/core/ig.json delete mode 100644 extensions/Cite/i18n/core/ilo.json delete mode 100644 extensions/Cite/i18n/core/io.json delete mode 100644 extensions/Cite/i18n/core/is.json delete mode 100644 extensions/Cite/i18n/core/it.json delete mode 100644 extensions/Cite/i18n/core/ja.json delete mode 100644 extensions/Cite/i18n/core/jut.json delete mode 100644 extensions/Cite/i18n/core/jv.json delete mode 100644 extensions/Cite/i18n/core/ka.json delete mode 100644 extensions/Cite/i18n/core/kk-arab.json delete mode 100644 extensions/Cite/i18n/core/kk-cyrl.json delete mode 100644 extensions/Cite/i18n/core/kk-latn.json delete mode 100644 extensions/Cite/i18n/core/km.json delete mode 100644 extensions/Cite/i18n/core/ko.json delete mode 100644 extensions/Cite/i18n/core/krc.json delete mode 100644 extensions/Cite/i18n/core/ksh.json delete mode 100644 extensions/Cite/i18n/core/kw.json delete mode 100644 extensions/Cite/i18n/core/lb.json delete mode 100644 extensions/Cite/i18n/core/li.json delete mode 100644 extensions/Cite/i18n/core/lrc.json delete mode 100644 extensions/Cite/i18n/core/lt.json delete mode 100644 extensions/Cite/i18n/core/lv.json delete mode 100644 extensions/Cite/i18n/core/mg.json delete mode 100644 extensions/Cite/i18n/core/min.json delete mode 100644 extensions/Cite/i18n/core/mk.json delete mode 100644 extensions/Cite/i18n/core/ml.json delete mode 100644 extensions/Cite/i18n/core/mn.json delete mode 100644 extensions/Cite/i18n/core/mr.json delete mode 100644 extensions/Cite/i18n/core/ms.json delete mode 100644 extensions/Cite/i18n/core/mt.json delete mode 100644 extensions/Cite/i18n/core/nb.json delete mode 100644 extensions/Cite/i18n/core/nds-nl.json delete mode 100644 extensions/Cite/i18n/core/nds.json delete mode 100644 extensions/Cite/i18n/core/nl.json delete mode 100644 extensions/Cite/i18n/core/nn.json delete mode 100644 extensions/Cite/i18n/core/oc.json delete mode 100644 extensions/Cite/i18n/core/or.json delete mode 100644 extensions/Cite/i18n/core/pag.json delete mode 100644 extensions/Cite/i18n/core/pl.json delete mode 100644 extensions/Cite/i18n/core/pms.json delete mode 100644 extensions/Cite/i18n/core/pnb.json delete mode 100644 extensions/Cite/i18n/core/ps.json delete mode 100644 extensions/Cite/i18n/core/pt-br.json delete mode 100644 extensions/Cite/i18n/core/pt.json delete mode 100644 extensions/Cite/i18n/core/qqq.json delete mode 100644 extensions/Cite/i18n/core/qu.json delete mode 100644 extensions/Cite/i18n/core/ro.json delete mode 100644 extensions/Cite/i18n/core/roa-tara.json delete mode 100644 extensions/Cite/i18n/core/ru.json delete mode 100644 extensions/Cite/i18n/core/rue.json delete mode 100644 extensions/Cite/i18n/core/sa.json delete mode 100644 extensions/Cite/i18n/core/sah.json delete mode 100644 extensions/Cite/i18n/core/scn.json delete mode 100644 extensions/Cite/i18n/core/sh.json delete mode 100644 extensions/Cite/i18n/core/si.json delete mode 100644 extensions/Cite/i18n/core/sk.json delete mode 100644 extensions/Cite/i18n/core/sl.json delete mode 100644 extensions/Cite/i18n/core/sq.json delete mode 100644 extensions/Cite/i18n/core/sr-ec.json delete mode 100644 extensions/Cite/i18n/core/sr-el.json delete mode 100644 extensions/Cite/i18n/core/stq.json delete mode 100644 extensions/Cite/i18n/core/su.json delete mode 100644 extensions/Cite/i18n/core/sv.json delete mode 100644 extensions/Cite/i18n/core/ta.json delete mode 100644 extensions/Cite/i18n/core/te.json delete mode 100644 extensions/Cite/i18n/core/tg-cyrl.json delete mode 100644 extensions/Cite/i18n/core/tg-latn.json delete mode 100644 extensions/Cite/i18n/core/th.json delete mode 100644 extensions/Cite/i18n/core/tk.json delete mode 100644 extensions/Cite/i18n/core/tl.json delete mode 100644 extensions/Cite/i18n/core/tly.json delete mode 100644 extensions/Cite/i18n/core/tr.json delete mode 100644 extensions/Cite/i18n/core/tt-cyrl.json delete mode 100644 extensions/Cite/i18n/core/ttt.json delete mode 100644 extensions/Cite/i18n/core/tzm.json delete mode 100644 extensions/Cite/i18n/core/ug-arab.json delete mode 100644 extensions/Cite/i18n/core/uk.json delete mode 100644 extensions/Cite/i18n/core/vec.json delete mode 100644 extensions/Cite/i18n/core/vep.json delete mode 100644 extensions/Cite/i18n/core/vi.json delete mode 100644 extensions/Cite/i18n/core/vo.json delete mode 100644 extensions/Cite/i18n/core/yi.json delete mode 100644 extensions/Cite/i18n/core/yue.json delete mode 100644 extensions/Cite/i18n/core/zh-hans.json delete mode 100644 extensions/Cite/i18n/core/zh-hant.json create mode 100644 extensions/Cite/i18n/cs.json create mode 100644 extensions/Cite/i18n/cu.json create mode 100644 extensions/Cite/i18n/cy.json create mode 100644 extensions/Cite/i18n/da.json create mode 100644 extensions/Cite/i18n/de-ch.json create mode 100644 extensions/Cite/i18n/de-formal.json create mode 100644 extensions/Cite/i18n/de.json create mode 100644 extensions/Cite/i18n/diq.json create mode 100644 extensions/Cite/i18n/dsb.json create mode 100644 extensions/Cite/i18n/el.json create mode 100644 extensions/Cite/i18n/en.json create mode 100644 extensions/Cite/i18n/eo.json create mode 100644 extensions/Cite/i18n/es.json create mode 100644 extensions/Cite/i18n/et.json create mode 100644 extensions/Cite/i18n/eu.json create mode 100644 extensions/Cite/i18n/fa.json create mode 100644 extensions/Cite/i18n/fi.json create mode 100644 extensions/Cite/i18n/fo.json create mode 100644 extensions/Cite/i18n/fr.json create mode 100644 extensions/Cite/i18n/frp.json create mode 100644 extensions/Cite/i18n/frr.json create mode 100644 extensions/Cite/i18n/fur.json create mode 100644 extensions/Cite/i18n/fy.json create mode 100644 extensions/Cite/i18n/gag.json create mode 100644 extensions/Cite/i18n/gl.json create mode 100644 extensions/Cite/i18n/gom-deva.json create mode 100644 extensions/Cite/i18n/grc.json create mode 100644 extensions/Cite/i18n/gsw.json create mode 100644 extensions/Cite/i18n/gu.json create mode 100644 extensions/Cite/i18n/he.json create mode 100644 extensions/Cite/i18n/hi.json create mode 100644 extensions/Cite/i18n/hr.json create mode 100644 extensions/Cite/i18n/hsb.json create mode 100644 extensions/Cite/i18n/ht.json create mode 100644 extensions/Cite/i18n/hu.json create mode 100644 extensions/Cite/i18n/hy.json create mode 100644 extensions/Cite/i18n/ia.json create mode 100644 extensions/Cite/i18n/id.json create mode 100644 extensions/Cite/i18n/ig.json create mode 100644 extensions/Cite/i18n/ilo.json create mode 100644 extensions/Cite/i18n/io.json create mode 100644 extensions/Cite/i18n/is.json create mode 100644 extensions/Cite/i18n/it.json create mode 100644 extensions/Cite/i18n/ja.json create mode 100644 extensions/Cite/i18n/jut.json create mode 100644 extensions/Cite/i18n/jv.json create mode 100644 extensions/Cite/i18n/ka.json create mode 100644 extensions/Cite/i18n/kk-arab.json create mode 100644 extensions/Cite/i18n/kk-cyrl.json create mode 100644 extensions/Cite/i18n/kk-latn.json create mode 100644 extensions/Cite/i18n/km.json create mode 100644 extensions/Cite/i18n/ko.json create mode 100644 extensions/Cite/i18n/krc.json create mode 100644 extensions/Cite/i18n/ksh.json create mode 100644 extensions/Cite/i18n/kw.json create mode 100644 extensions/Cite/i18n/lb.json create mode 100644 extensions/Cite/i18n/lez.json create mode 100644 extensions/Cite/i18n/li.json create mode 100644 extensions/Cite/i18n/lrc.json create mode 100644 extensions/Cite/i18n/lt.json create mode 100644 extensions/Cite/i18n/lv.json create mode 100644 extensions/Cite/i18n/mai.json create mode 100644 extensions/Cite/i18n/mg.json create mode 100644 extensions/Cite/i18n/min.json create mode 100644 extensions/Cite/i18n/mk.json create mode 100644 extensions/Cite/i18n/ml.json create mode 100644 extensions/Cite/i18n/mn.json create mode 100644 extensions/Cite/i18n/mr.json create mode 100644 extensions/Cite/i18n/ms.json create mode 100644 extensions/Cite/i18n/mt.json create mode 100644 extensions/Cite/i18n/nap.json create mode 100644 extensions/Cite/i18n/nb.json create mode 100644 extensions/Cite/i18n/nds-nl.json create mode 100644 extensions/Cite/i18n/nds.json create mode 100644 extensions/Cite/i18n/ne.json create mode 100644 extensions/Cite/i18n/nl.json create mode 100644 extensions/Cite/i18n/nn.json create mode 100644 extensions/Cite/i18n/oc.json create mode 100644 extensions/Cite/i18n/or.json create mode 100644 extensions/Cite/i18n/pa.json create mode 100644 extensions/Cite/i18n/pag.json create mode 100644 extensions/Cite/i18n/pfl.json create mode 100644 extensions/Cite/i18n/pl.json create mode 100644 extensions/Cite/i18n/pms.json create mode 100644 extensions/Cite/i18n/pnb.json create mode 100644 extensions/Cite/i18n/ps.json create mode 100644 extensions/Cite/i18n/pt-br.json create mode 100644 extensions/Cite/i18n/pt.json create mode 100644 extensions/Cite/i18n/qqq.json create mode 100644 extensions/Cite/i18n/qu.json create mode 100644 extensions/Cite/i18n/ro.json create mode 100644 extensions/Cite/i18n/roa-tara.json create mode 100644 extensions/Cite/i18n/ru.json create mode 100644 extensions/Cite/i18n/rue.json create mode 100644 extensions/Cite/i18n/sa.json create mode 100644 extensions/Cite/i18n/sah.json create mode 100644 extensions/Cite/i18n/scn.json create mode 100644 extensions/Cite/i18n/sh.json create mode 100644 extensions/Cite/i18n/si.json create mode 100644 extensions/Cite/i18n/sk.json create mode 100644 extensions/Cite/i18n/sl.json delete mode 100644 extensions/Cite/i18n/special/ace.json delete mode 100644 extensions/Cite/i18n/special/af.json delete mode 100644 extensions/Cite/i18n/special/am.json delete mode 100644 extensions/Cite/i18n/special/an.json delete mode 100644 extensions/Cite/i18n/special/ar.json delete mode 100644 extensions/Cite/i18n/special/arc.json delete mode 100644 extensions/Cite/i18n/special/arn.json delete mode 100644 extensions/Cite/i18n/special/arz.json delete mode 100644 extensions/Cite/i18n/special/as.json delete mode 100644 extensions/Cite/i18n/special/ast.json delete mode 100644 extensions/Cite/i18n/special/av.json delete mode 100644 extensions/Cite/i18n/special/az.json delete mode 100644 extensions/Cite/i18n/special/azb.json delete mode 100644 extensions/Cite/i18n/special/ba.json delete mode 100644 extensions/Cite/i18n/special/bar.json delete mode 100644 extensions/Cite/i18n/special/bcc.json delete mode 100644 extensions/Cite/i18n/special/bcl.json delete mode 100644 extensions/Cite/i18n/special/be-tarask.json delete mode 100644 extensions/Cite/i18n/special/be.json delete mode 100644 extensions/Cite/i18n/special/bg.json delete mode 100644 extensions/Cite/i18n/special/bn.json delete mode 100644 extensions/Cite/i18n/special/bo.json delete mode 100644 extensions/Cite/i18n/special/bpy.json delete mode 100644 extensions/Cite/i18n/special/br.json delete mode 100644 extensions/Cite/i18n/special/bs.json delete mode 100644 extensions/Cite/i18n/special/bto.json delete mode 100644 extensions/Cite/i18n/special/bxr.json delete mode 100644 extensions/Cite/i18n/special/ca.json delete mode 100644 extensions/Cite/i18n/special/cdo.json delete mode 100644 extensions/Cite/i18n/special/ce.json delete mode 100644 extensions/Cite/i18n/special/ceb.json delete mode 100644 extensions/Cite/i18n/special/ckb.json delete mode 100644 extensions/Cite/i18n/special/co.json delete mode 100644 extensions/Cite/i18n/special/cs.json delete mode 100644 extensions/Cite/i18n/special/cu.json delete mode 100644 extensions/Cite/i18n/special/cy.json delete mode 100644 extensions/Cite/i18n/special/da.json delete mode 100644 extensions/Cite/i18n/special/de.json delete mode 100644 extensions/Cite/i18n/special/diq.json delete mode 100644 extensions/Cite/i18n/special/dsb.json delete mode 100644 extensions/Cite/i18n/special/ee.json delete mode 100644 extensions/Cite/i18n/special/el.json delete mode 100644 extensions/Cite/i18n/special/en.json delete mode 100644 extensions/Cite/i18n/special/eo.json delete mode 100644 extensions/Cite/i18n/special/es.json delete mode 100644 extensions/Cite/i18n/special/et.json delete mode 100644 extensions/Cite/i18n/special/eu.json delete mode 100644 extensions/Cite/i18n/special/ext.json delete mode 100644 extensions/Cite/i18n/special/fa.json delete mode 100644 extensions/Cite/i18n/special/fi.json delete mode 100644 extensions/Cite/i18n/special/fj.json delete mode 100644 extensions/Cite/i18n/special/fo.json delete mode 100644 extensions/Cite/i18n/special/fr.json delete mode 100644 extensions/Cite/i18n/special/frp.json delete mode 100644 extensions/Cite/i18n/special/frr.json delete mode 100644 extensions/Cite/i18n/special/fur.json delete mode 100644 extensions/Cite/i18n/special/fy.json delete mode 100644 extensions/Cite/i18n/special/ga.json delete mode 100644 extensions/Cite/i18n/special/gd.json delete mode 100644 extensions/Cite/i18n/special/gl.json delete mode 100644 extensions/Cite/i18n/special/grc.json delete mode 100644 extensions/Cite/i18n/special/gsw.json delete mode 100644 extensions/Cite/i18n/special/gu.json delete mode 100644 extensions/Cite/i18n/special/gv.json delete mode 100644 extensions/Cite/i18n/special/ha.json delete mode 100644 extensions/Cite/i18n/special/haw.json delete mode 100644 extensions/Cite/i18n/special/he.json delete mode 100644 extensions/Cite/i18n/special/hi.json delete mode 100644 extensions/Cite/i18n/special/hif-latn.json delete mode 100644 extensions/Cite/i18n/special/hil.json delete mode 100644 extensions/Cite/i18n/special/hr.json delete mode 100644 extensions/Cite/i18n/special/hsb.json delete mode 100644 extensions/Cite/i18n/special/ht.json delete mode 100644 extensions/Cite/i18n/special/hu.json delete mode 100644 extensions/Cite/i18n/special/hy.json delete mode 100644 extensions/Cite/i18n/special/ia.json delete mode 100644 extensions/Cite/i18n/special/id.json delete mode 100644 extensions/Cite/i18n/special/ie.json delete mode 100644 extensions/Cite/i18n/special/ig.json delete mode 100644 extensions/Cite/i18n/special/ilo.json delete mode 100644 extensions/Cite/i18n/special/io.json delete mode 100644 extensions/Cite/i18n/special/is.json delete mode 100644 extensions/Cite/i18n/special/it.json delete mode 100644 extensions/Cite/i18n/special/ja.json delete mode 100644 extensions/Cite/i18n/special/jut.json delete mode 100644 extensions/Cite/i18n/special/jv.json delete mode 100644 extensions/Cite/i18n/special/ka.json delete mode 100644 extensions/Cite/i18n/special/kk-arab.json delete mode 100644 extensions/Cite/i18n/special/kk-cyrl.json delete mode 100644 extensions/Cite/i18n/special/kk-latn.json delete mode 100644 extensions/Cite/i18n/special/kl.json delete mode 100644 extensions/Cite/i18n/special/km.json delete mode 100644 extensions/Cite/i18n/special/kn.json delete mode 100644 extensions/Cite/i18n/special/ko.json delete mode 100644 extensions/Cite/i18n/special/krc.json delete mode 100644 extensions/Cite/i18n/special/krj.json delete mode 100644 extensions/Cite/i18n/special/ksh.json delete mode 100644 extensions/Cite/i18n/special/ku-latn.json delete mode 100644 extensions/Cite/i18n/special/kw.json delete mode 100644 extensions/Cite/i18n/special/la.json delete mode 100644 extensions/Cite/i18n/special/lad.json delete mode 100644 extensions/Cite/i18n/special/lb.json delete mode 100644 extensions/Cite/i18n/special/lez.json delete mode 100644 extensions/Cite/i18n/special/lfn.json delete mode 100644 extensions/Cite/i18n/special/lg.json delete mode 100644 extensions/Cite/i18n/special/li.json delete mode 100644 extensions/Cite/i18n/special/lmo.json delete mode 100644 extensions/Cite/i18n/special/lo.json delete mode 100644 extensions/Cite/i18n/special/lrc.json delete mode 100644 extensions/Cite/i18n/special/lt.json delete mode 100644 extensions/Cite/i18n/special/lus.json delete mode 100644 extensions/Cite/i18n/special/lv.json delete mode 100644 extensions/Cite/i18n/special/lzh.json delete mode 100644 extensions/Cite/i18n/special/mg.json delete mode 100644 extensions/Cite/i18n/special/mhr.json delete mode 100644 extensions/Cite/i18n/special/min.json delete mode 100644 extensions/Cite/i18n/special/mk.json delete mode 100644 extensions/Cite/i18n/special/ml.json delete mode 100644 extensions/Cite/i18n/special/mn.json delete mode 100644 extensions/Cite/i18n/special/mr.json delete mode 100644 extensions/Cite/i18n/special/mrj.json delete mode 100644 extensions/Cite/i18n/special/ms.json delete mode 100644 extensions/Cite/i18n/special/mt.json delete mode 100644 extensions/Cite/i18n/special/mwl.json delete mode 100644 extensions/Cite/i18n/special/myv.json delete mode 100644 extensions/Cite/i18n/special/nah.json delete mode 100644 extensions/Cite/i18n/special/nan.json delete mode 100644 extensions/Cite/i18n/special/nb.json delete mode 100644 extensions/Cite/i18n/special/nds-nl.json delete mode 100644 extensions/Cite/i18n/special/nds.json delete mode 100644 extensions/Cite/i18n/special/ne.json delete mode 100644 extensions/Cite/i18n/special/niu.json delete mode 100644 extensions/Cite/i18n/special/nl.json delete mode 100644 extensions/Cite/i18n/special/nn.json delete mode 100644 extensions/Cite/i18n/special/nov.json delete mode 100644 extensions/Cite/i18n/special/nso.json delete mode 100644 extensions/Cite/i18n/special/oc.json delete mode 100644 extensions/Cite/i18n/special/or.json delete mode 100644 extensions/Cite/i18n/special/os.json delete mode 100644 extensions/Cite/i18n/special/pag.json delete mode 100644 extensions/Cite/i18n/special/pam.json delete mode 100644 extensions/Cite/i18n/special/pcd.json delete mode 100644 extensions/Cite/i18n/special/pdc.json delete mode 100644 extensions/Cite/i18n/special/pfl.json delete mode 100644 extensions/Cite/i18n/special/pl.json delete mode 100644 extensions/Cite/i18n/special/pms.json delete mode 100644 extensions/Cite/i18n/special/pnb.json delete mode 100644 extensions/Cite/i18n/special/pnt.json delete mode 100644 extensions/Cite/i18n/special/ps.json delete mode 100644 extensions/Cite/i18n/special/pt-br.json delete mode 100644 extensions/Cite/i18n/special/pt.json delete mode 100644 extensions/Cite/i18n/special/qqq.json delete mode 100644 extensions/Cite/i18n/special/qu.json delete mode 100644 extensions/Cite/i18n/special/rm.json delete mode 100644 extensions/Cite/i18n/special/rmy.json delete mode 100644 extensions/Cite/i18n/special/ro.json delete mode 100644 extensions/Cite/i18n/special/roa-tara.json delete mode 100644 extensions/Cite/i18n/special/ru.json delete mode 100644 extensions/Cite/i18n/special/rue.json delete mode 100644 extensions/Cite/i18n/special/rup.json delete mode 100644 extensions/Cite/i18n/special/sa.json delete mode 100644 extensions/Cite/i18n/special/sah.json delete mode 100644 extensions/Cite/i18n/special/scn.json delete mode 100644 extensions/Cite/i18n/special/sd.json delete mode 100644 extensions/Cite/i18n/special/sgs.json delete mode 100644 extensions/Cite/i18n/special/sh.json delete mode 100644 extensions/Cite/i18n/special/si.json delete mode 100644 extensions/Cite/i18n/special/sk.json delete mode 100644 extensions/Cite/i18n/special/sl.json delete mode 100644 extensions/Cite/i18n/special/sma.json delete mode 100644 extensions/Cite/i18n/special/sn.json delete mode 100644 extensions/Cite/i18n/special/so.json delete mode 100644 extensions/Cite/i18n/special/sq.json delete mode 100644 extensions/Cite/i18n/special/sr-ec.json delete mode 100644 extensions/Cite/i18n/special/sr-el.json delete mode 100644 extensions/Cite/i18n/special/stq.json delete mode 100644 extensions/Cite/i18n/special/su.json delete mode 100644 extensions/Cite/i18n/special/sv.json delete mode 100644 extensions/Cite/i18n/special/sw.json delete mode 100644 extensions/Cite/i18n/special/sxu.json delete mode 100644 extensions/Cite/i18n/special/szl.json delete mode 100644 extensions/Cite/i18n/special/ta.json delete mode 100644 extensions/Cite/i18n/special/te.json delete mode 100644 extensions/Cite/i18n/special/tet.json delete mode 100644 extensions/Cite/i18n/special/tg-cyrl.json delete mode 100644 extensions/Cite/i18n/special/tg-latn.json delete mode 100644 extensions/Cite/i18n/special/th.json delete mode 100644 extensions/Cite/i18n/special/tk.json delete mode 100644 extensions/Cite/i18n/special/tl.json delete mode 100644 extensions/Cite/i18n/special/tly.json delete mode 100644 extensions/Cite/i18n/special/tn.json delete mode 100644 extensions/Cite/i18n/special/to.json delete mode 100644 extensions/Cite/i18n/special/tr.json delete mode 100644 extensions/Cite/i18n/special/tru.json delete mode 100644 extensions/Cite/i18n/special/ts.json delete mode 100644 extensions/Cite/i18n/special/tt-cyrl.json delete mode 100644 extensions/Cite/i18n/special/tyv.json delete mode 100644 extensions/Cite/i18n/special/tzm.json delete mode 100644 extensions/Cite/i18n/special/udm.json delete mode 100644 extensions/Cite/i18n/special/ug-arab.json delete mode 100644 extensions/Cite/i18n/special/ug-latn.json delete mode 100644 extensions/Cite/i18n/special/uk.json delete mode 100644 extensions/Cite/i18n/special/ur.json delete mode 100644 extensions/Cite/i18n/special/uz.json delete mode 100644 extensions/Cite/i18n/special/vec.json delete mode 100644 extensions/Cite/i18n/special/vep.json delete mode 100644 extensions/Cite/i18n/special/vi.json delete mode 100644 extensions/Cite/i18n/special/vo.json delete mode 100644 extensions/Cite/i18n/special/wa.json delete mode 100644 extensions/Cite/i18n/special/wuu.json delete mode 100644 extensions/Cite/i18n/special/xal.json delete mode 100644 extensions/Cite/i18n/special/yi.json delete mode 100644 extensions/Cite/i18n/special/yo.json delete mode 100644 extensions/Cite/i18n/special/yue.json delete mode 100644 extensions/Cite/i18n/special/zh-hans.json delete mode 100644 extensions/Cite/i18n/special/zh-hant.json create mode 100644 extensions/Cite/i18n/sq.json create mode 100644 extensions/Cite/i18n/sr-ec.json create mode 100644 extensions/Cite/i18n/sr-el.json create mode 100644 extensions/Cite/i18n/stq.json create mode 100644 extensions/Cite/i18n/su.json create mode 100644 extensions/Cite/i18n/sv.json create mode 100644 extensions/Cite/i18n/ta.json create mode 100644 extensions/Cite/i18n/tcy.json create mode 100644 extensions/Cite/i18n/te.json create mode 100644 extensions/Cite/i18n/tg-cyrl.json create mode 100644 extensions/Cite/i18n/tg-latn.json create mode 100644 extensions/Cite/i18n/th.json create mode 100644 extensions/Cite/i18n/tk.json create mode 100644 extensions/Cite/i18n/tl.json create mode 100644 extensions/Cite/i18n/tly.json create mode 100644 extensions/Cite/i18n/tr.json create mode 100644 extensions/Cite/i18n/tt-cyrl.json create mode 100644 extensions/Cite/i18n/ttt.json create mode 100644 extensions/Cite/i18n/tzm.json create mode 100644 extensions/Cite/i18n/ug-arab.json create mode 100644 extensions/Cite/i18n/uk.json create mode 100644 extensions/Cite/i18n/ur.json create mode 100644 extensions/Cite/i18n/vec.json create mode 100644 extensions/Cite/i18n/vep.json create mode 100644 extensions/Cite/i18n/vi.json create mode 100644 extensions/Cite/i18n/vo.json create mode 100644 extensions/Cite/i18n/yi.json create mode 100644 extensions/Cite/i18n/yue.json create mode 100644 extensions/Cite/i18n/zh-hans.json create mode 100644 extensions/Cite/i18n/zh-hant.json delete mode 100644 extensions/Cite/modules/ext.specialcite.css (limited to 'extensions/Cite') diff --git a/extensions/Cite/Cite.i18n.php b/extensions/Cite/Cite.i18n.php deleted file mode 100644 index 79601ad1..00000000 --- a/extensions/Cite/Cite.i18n.php +++ /dev/null @@ -1,35 +0,0 @@ - and for adding - * citations to pages - * - * @file - * @ingroup Extensions - * - * @link http://www.mediawiki.org/wiki/Extension:Cite/Cite.php Documentation - * - * @bug 4579 - * - * @author Ævar Arnfjörð Bjarmason - * @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason - * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later - */ -$wgHooks['ParserFirstCallInit'][] = 'wfCite'; - -$wgExtensionCredits['parserhook'][] = array( - 'path' => __FILE__, - 'name' => 'Cite', - 'author' => array( - 'Ævar Arnfjörð Bjarmason', - 'Andrew Garrett', - 'Brion Vibber', - 'Marius Hoch', - 'Steve Sanbeg' - ), - 'descriptionmsg' => 'cite-desc', - 'url' => 'https://www.mediawiki.org/wiki/Extension:Cite/Cite.php', - 'license-name' => 'GPLv2', -); - -$wgParserTestFiles[] = __DIR__ . "/citeParserTests.txt"; -$wgMessagesDirs['Cite'] = __DIR__ . '/i18n/core'; -$wgExtensionMessagesFiles['Cite'] = __DIR__ . "/Cite.i18n.php"; -$wgAutoloadClasses['Cite'] = __DIR__ . "/Cite_body.php"; -$wgSpecialPageGroups['Cite'] = 'pagetools'; - -define( 'CITE_DEFAULT_GROUP', '' ); -/** - * The emergency shut-off switch. Override in local settings to disable - * groups; or remove all references from this file to enable unconditionally - */ -$wgAllowCiteGroups = true; - -/** - * An emergency optimisation measure for caching cite output. - */ -$wgCiteCacheReferences = false; - -/** - * Performs the hook registration. - * Note that several extensions (and even core!) try to detect if Cite is - * installed by looking for wfCite(). - * - * @param $parser Parser - * - * @return bool - */ -function wfCite( $parser ) { - return Cite::setHooks( $parser ); +if ( function_exists( 'wfLoadExtension' ) ) { + wfLoadExtension( 'Cite' ); + // Keep i18n globals so mergeMessageFileList.php doesn't break + $wgMessagesDirs['Cite'] = __DIR__ . '/i18n'; + /* wfWarn( + 'Deprecated PHP entry point used for Cite extension. Please use wfLoadExtension instead, ' . + 'see https://www.mediawiki.org/wiki/Extension_registration for more details.' + ); */ + return true; +} else { + die( 'This version of the Cite extension requires MediaWiki 1.25+' ); } - -// Resources -$citeResourceTemplate = array( - 'localBasePath' => __DIR__ . '/modules', - 'remoteExtPath' => 'Cite/modules' -); - -$wgResourceModules['ext.cite'] = $citeResourceTemplate + array( - 'scripts' => 'ext.cite.js', - 'styles' => 'ext.cite.css', - 'messages' => array( - 'cite_references_link_accessibility_label', - 'cite_references_link_many_accessibility_label', - ), -); - -/* Add RTL fix for the cite elements */ -$wgResourceModules['ext.rtlcite'] = $citeResourceTemplate + array( - 'styles' => 'ext.rtlcite.css', - 'position' => 'top', -); - -/**#@-*/ diff --git a/extensions/Cite/Cite_body.php b/extensions/Cite/Cite_body.php index 496e32d8..6072cdfc 100644 --- a/extensions/Cite/Cite_body.php +++ b/extensions/Cite/Cite_body.php @@ -17,7 +17,17 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later */ +/** + * WARNING: MediaWiki core hardcodes this class name to check if the + * Cite extension is installed. See T89151. + */ class Cite { + + /** + * @todo document + */ + const DEFAULT_GROUP = ''; + /**#@+ * @access private */ @@ -158,19 +168,24 @@ class Cite { function ref( $str, $argv, $parser, $frame ) { if ( $this->mInCite ) { return htmlspecialchars( "$str" ); - } else { - $this->mCallCnt++; - $this->mInCite = true; - $ret = $this->guardedRef( $str, $argv, $parser ); - $this->mInCite = false; - $parserOutput = $parser->getOutput(); - $parserOutput->addModules( 'ext.cite' ); - $parserOutput->addModuleStyles( 'ext.rtlcite' ); - if ( is_callable( array( $frame, 'setVolatile' ) ) ) { - $frame->setVolatile(); - } - return $ret; } + + $this->mCallCnt++; + $this->mInCite = true; + + $ret = $this->guardedRef( $str, $argv, $parser ); + + $this->mInCite = false; + + $parserOutput = $parser->getOutput(); + $parserOutput->addModules( 'ext.cite' ); + $parserOutput->addModuleStyles( 'ext.rtlcite' ); + + if ( is_callable( array( $frame, 'setVolatile' ) ) ) { + $frame->setVolatile(); + } + + return $ret; } /** @@ -180,7 +195,7 @@ class Cite { * @param $default_group string * @return string */ - function guardedRef( $str, $argv, $parser, $default_group = CITE_DEFAULT_GROUP ) { + function guardedRef( $str, $argv, $parser, $default_group = self::DEFAULT_GROUP ) { $this->mParser = $parser; # The key here is the "name" attribute. @@ -296,7 +311,7 @@ class Cite { # Not clear how we could get here, but something is probably # wrong with the types. Let's fail fast. - throw new MWException( 'Invalid $str and/or $key: ' . serialize( array( $str, $key ) ) ); + throw new Exception( 'Invalid $str and/or $key: ' . serialize( array( $str, $key ) ) ); } /** @@ -386,18 +401,19 @@ class Cite { $this->mRefs[$group][$follow]['text'] = $this->mRefs[$group][$follow]['text'] . ' ' . $str; } else { // insert part of note at the beginning of the group - for ( $k = 0 ; $k < count( $this->mRefs[$group] ) ; $k++ ) { - if ( $this->mRefs[$group][$k]['follow'] == null ) { + $groupsCount = count( $this->mRefs[$group] ); + for ( $k = 0; $k < $groupsCount; $k++ ) { + if ( !isset( $this->mRefs[$group][$k]['follow'] ) ) { break; } } array_splice( $this->mRefs[$group], $k, 0, - array( array( 'count' => - 1, - 'text' => $str, - 'key' => ++$this->mOutCnt , - 'follow' => $follow ) ) ); + array( array( 'count' => - 1, + 'text' => $str, + 'key' => ++$this->mOutCnt , + 'follow' => $follow ) ) ); array_splice( $this->mRefCallStack, $k, 0, - array( array( 'new', $call, $str, $key, $group, $this->mOutCnt ) ) ); + array( array( 'new', $call, $str, $key, $group, $this->mOutCnt ) ) ); } // return an empty string : this is not a reference return ''; @@ -450,7 +466,7 @@ class Cite { ); } } else { - throw new MWException( 'Invalid stack key: ' . serialize( $key ) ); + throw new Exception( 'Invalid stack key: ' . serialize( $key ) ); } } @@ -556,7 +572,7 @@ class Cite { * @param $group string * @return string */ - function guardedReferences( $str, $argv, $parser, $group = CITE_DEFAULT_GROUP ) { + function guardedReferences( $str, $argv, $parser, $group = self::DEFAULT_GROUP ) { global $wgAllowCiteGroups; $this->mParser = $parser; @@ -635,7 +651,6 @@ class Cite { return ''; } - wfProfileIn( __METHOD__ ); wfProfileIn( __METHOD__ . '-entries' ); $ent = array(); foreach ( $this->mRefs[$group] as $k => $v ) { @@ -646,7 +661,8 @@ class Cite { $suffix = wfMessage( 'cite_references_suffix' )->inContentLanguage()->plain(); $content = implode( "\n", $ent ); - // Prepare the parser input. We add new lines between the pieces to avoid a confused tidy (bug 13073) + // Prepare the parser input. + // We add new lines between the pieces to avoid a confused tidy (bug 13073). $parserInput = $prefix . "\n" . $content . "\n" . $suffix; // Let's try to cache it. @@ -679,8 +695,6 @@ class Cite { $ret = $this->mParser->unserializeHalfParsedText( $data ); } - wfProfileOut( __METHOD__ ); - // done, clean up so we can reuse the group unset( $this->mRefs[$group] ); unset( $this->mGroupCnt[$group] ); @@ -713,7 +727,7 @@ class Cite { $this->referencesKey( $val['follow'] ), $text )->inContentLanguage()->plain(); - } elseif ( $val['text'] == '' ) { + } elseif ( !isset( $val['text'] ) ) { return wfMessage( 'cite_references_link_one', $this->referencesKey( $key ), @@ -772,7 +786,7 @@ class Cite { * @return String */ function referenceText( $key, $text ) { - if ( $text == '' ) { + if ( !isset( $text ) || $text === '' ) { return $this->error( 'cite_error_references_no_text', $key, 'noparse' ); } return '' . rtrim( $text, "\n" ) . "\n"; @@ -921,7 +935,7 @@ class Cite { $this->refKey( $key, $count ), $this->referencesKey( $key . $subkey ), $this->getLinkLabel( $label, $group, - ( ( $group == CITE_DEFAULT_GROUP ) ? '' : "$group " ) . $wgContLang->formatNum( $label ) ) + ( ( $group == self::DEFAULT_GROUP ) ? '' : "$group " ) . $wgContLang->formatNum( $label ) ) )->inContentLanguage()->plain() ); } @@ -959,11 +973,9 @@ class Cite { * arbitrary number of tokens separated by [\t\n ] */ function genBacklinkLabels() { - wfProfileIn( __METHOD__ ); $text = wfMessage( 'cite_references_link_many_format_backlink_labels' ) ->inContentLanguage()->plain(); $this->mBacklinkLabels = preg_split( '#[\n\t ]#', $text ); - wfProfileOut( __METHOD__ ); } /** @@ -975,14 +987,12 @@ class Cite { * @param $message */ function genLinkLabels( $group, $message ) { - wfProfileIn( __METHOD__ ); $text = false; $msg = wfMessage( $message )->inContentLanguage(); if ( $msg->exists() ) { $text = $msg->plain(); } - $this->mLinkLabels[$group] = ( $text == '' ) ? false : preg_split( '#[\n\t ]#', $text ); - wfProfileOut( __METHOD__ ); + $this->mLinkLabels[$group] = ( !$text ) ? false : preg_split( '#[\n\t ]#', $text ); } /** @@ -1027,8 +1037,8 @@ class Cite { } $parser->extCite = clone $this; - $parser->setHook( 'ref' , array( $parser->extCite, 'ref' ) ); - $parser->setHook( 'references' , array( $parser->extCite, 'references' ) ); + $parser->setHook( 'ref', array( $parser->extCite, 'ref' ) ); + $parser->setHook( 'references', array( $parser->extCite, 'references' ) ); // Clear the state, making sure it will actually work. $parser->extCite->mInCite = false; @@ -1067,18 +1077,20 @@ class Cite { if ( count( $refs ) == 0 ) { continue; } - if ( $group == CITE_DEFAULT_GROUP ) { + if ( $group == self::DEFAULT_GROUP ) { $text .= $this->referencesFormat( $group, '', '' ); } else { - $text .= "\n
" . $this->error( 'cite_error_group_refs_without_references', htmlspecialchars( $group ) ); + $text .= "\n
" . + $this->error( 'cite_error_group_refs_without_references', htmlspecialchars( $group ) ); } } return true; } /** - * Hook for the InlineEditor extension. If any ref or reference reference tag is in the text, the entire - * page should be reparsed, so we return false in that case. + * Hook for the InlineEditor extension. + * If any ref or reference reference tag is in the text, + * the entire page should be reparsed, so we return false in that case. * * @param $output * @@ -1110,8 +1122,8 @@ class Cite { $wgHooks['InlineEditorPartialAfterParse'][] = array( $parser->extCite, 'checkAnyCalls' ); Cite::$hooksInstalled = true; } - $parser->setHook( 'ref' , array( $parser->extCite, 'ref' ) ); - $parser->setHook( 'references' , array( $parser->extCite, 'references' ) ); + $parser->setHook( 'ref', array( $parser->extCite, 'ref' ) ); + $parser->setHook( 'references', array( $parser->extCite, 'references' ) ); return true; } @@ -1128,12 +1140,16 @@ class Cite { # We rely on the fact that PHP is okay with passing unused argu- # ments to functions. If $1 is not used in the message, wfMessage will # just ignore the extra parameter. - $ret = '' . - wfMessage( 'cite_error', wfMessage( $key, $param )->inContentLanguage()->plain() )->inContentLanguage()->plain() . - ''; + $msg = wfMessage( 'cite_error', wfMessage( $key, $param )->inContentLanguage()->plain() ) + ->inContentLanguage() + ->plain(); + + $ret = '' . $msg . ''; + if ( $parse == 'parse' ) { $ret = $this->mParser->recursiveTagParse( $ret ); } + return $ret; } diff --git a/extensions/Cite/Gruntfile.js b/extensions/Cite/Gruntfile.js new file mode 100644 index 00000000..0e5498ee --- /dev/null +++ b/extensions/Cite/Gruntfile.js @@ -0,0 +1,19 @@ +/*! + * Grunt file + * + * @package Cite + */ + +/*jshint node:true */ +module.exports = function ( grunt ) { + 'use strict'; + grunt.loadNpmTasks( 'grunt-banana-checker' ); + grunt.initConfig( { + banana: { + all: ['i18n/'] + } + } ); + + grunt.registerTask( 'test', [ 'banana' ] ); + grunt.registerTask( 'default', 'test' ); +}; diff --git a/extensions/Cite/SpecialCite.alias.php b/extensions/Cite/SpecialCite.alias.php deleted file mode 100644 index 05b7686a..00000000 --- a/extensions/Cite/SpecialCite.alias.php +++ /dev/null @@ -1,430 +0,0 @@ - array( 'Cite' ), -); - -/** Arabic (العربية) */ -$specialPageAliases['ar'] = array( - 'Cite' => array( 'استشهاد' ), -); - -/** Egyptian Spoken Arabic (مصرى) */ -$specialPageAliases['arz'] = array( - 'Cite' => array( 'استشهاد' ), -); - -/** Assamese (অসমীয়া) */ -$specialPageAliases['as'] = array( - 'Cite' => array( 'উদ্ধৃতি' ), -); - -/** Bikol Central (Bikol Central) */ -$specialPageAliases['bcl'] = array( - 'Cite' => array( 'Sambitón' ), -); - -/** Bulgarian (български) */ -$specialPageAliases['bg'] = array( - 'Cite' => array( 'Цитиране' ), -); - -/** Banjar (Bahasa Banjar) */ -$specialPageAliases['bjn'] = array( - 'Cite' => array( 'Juhut' ), -); - -/** Breton (brezhoneg) */ -$specialPageAliases['br'] = array( - 'Cite' => array( 'Menegiñ' ), -); - -/** Bosnian (bosanski) */ -$specialPageAliases['bs'] = array( - 'Cite' => array( 'Citiraj' ), -); - -/** буряад (буряад) */ -$specialPageAliases['bxr'] = array( - 'Cite' => array( 'Сайт' ), -); - -/** Catalan (català) */ -$specialPageAliases['ca'] = array( - 'Cite' => array( 'Citau', 'Citeu' ), -); - -/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */ -$specialPageAliases['cdo'] = array( - 'Cite' => array( '註' ), -); - -/** Chechen (нохчийн) */ -$specialPageAliases['ce'] = array( - 'Cite' => array( 'Дош' ), -); - -/** Czech (čeština) */ -$specialPageAliases['cs'] = array( - 'Cite' => array( 'Citovat' ), -); - -/** Danish (dansk) */ -$specialPageAliases['da'] = array( - 'Cite' => array( 'Citer' ), -); - -/** German (Deutsch) */ -$specialPageAliases['de'] = array( - 'Cite' => array( 'Zitierhilfe', 'Zitieren' ), -); - -/** Zazaki (Zazaki) */ -$specialPageAliases['diq'] = array( - 'Cite' => array( 'Sita' ), -); - -/** Lower Sorbian (dolnoserbski) */ -$specialPageAliases['dsb'] = array( - 'Cite' => array( 'Citěrowańska_pomoc' ), -); - -/** Greek (Ελληνικά) */ -$specialPageAliases['el'] = array( - 'Cite' => array( 'Παραπομπή' ), -); - -/** Esperanto (Esperanto) */ -$specialPageAliases['eo'] = array( - 'Cite' => array( 'Citi' ), -); - -/** Spanish (español) */ -$specialPageAliases['es'] = array( - 'Cite' => array( 'Citar' ), -); - -/** Estonian (eesti) */ -$specialPageAliases['et'] = array( - 'Cite' => array( 'Tsiteerimine' ), -); - -/** Persian (فارسی) */ -$specialPageAliases['fa'] = array( - 'Cite' => array( 'یادکرد' ), -); - -/** Finnish (suomi) */ -$specialPageAliases['fi'] = array( - 'Cite' => array( 'Viittaus' ), -); - -/** French (français) */ -$specialPageAliases['fr'] = array( - 'Cite' => array( 'Citer' ), -); - -/** Franco-Provençal (arpetan) */ -$specialPageAliases['frp'] = array( - 'Cite' => array( 'Citar' ), -); - -/** Galician (galego) */ -$specialPageAliases['gl'] = array( - 'Cite' => array( 'Cita', 'Citar' ), -); - -/** Swiss German (Alemannisch) */ -$specialPageAliases['gsw'] = array( - 'Cite' => array( 'Zitierhilf' ), -); - -/** Hebrew (עברית) */ -$specialPageAliases['he'] = array( - 'Cite' => array( 'ציטוט' ), -); - -/** Croatian (hrvatski) */ -$specialPageAliases['hr'] = array( - 'Cite' => array( 'Citiraj' ), -); - -/** Upper Sorbian (hornjoserbsce) */ -$specialPageAliases['hsb'] = array( - 'Cite' => array( 'Citowanska_pomoc' ), -); - -/** 湘语 (湘语) */ -$specialPageAliases['hsn'] = array( - 'Cite' => array( '建脚注' ), -); - -/** Haitian (Kreyòl ayisyen) */ -$specialPageAliases['ht'] = array( - 'Cite' => array( 'Site' ), -); - -/** Hungarian (magyar) */ -$specialPageAliases['hu'] = array( - 'Cite' => array( 'Hivatkozás', 'Irodalomjegyzék' ), -); - -/** Interlingua (interlingua) */ -$specialPageAliases['ia'] = array( - 'Cite' => array( 'Citation' ), -); - -/** Indonesian (Bahasa Indonesia) */ -$specialPageAliases['id'] = array( - 'Cite' => array( 'Kutip' ), -); - -/** Igbo (Igbo) */ -$specialPageAliases['ig'] = array( - 'Cite' => array( 'Dépùtà' ), -); - -/** Ido (Ido) */ -$specialPageAliases['io'] = array( - 'Cite' => array( 'Citar' ), -); - -/** Italian (italiano) */ -$specialPageAliases['it'] = array( - 'Cite' => array( 'Cita' ), -); - -/** Japanese (日本語) */ -$specialPageAliases['ja'] = array( - 'Cite' => array( '引用' ), -); - -/** Korean (한국어) */ -$specialPageAliases['ko'] = array( - 'Cite' => array( '인용' ), -); - -/** Colognian (Ripoarisch) */ -$specialPageAliases['ksh'] = array( - 'Cite' => array( 'Zitteere' ), -); - -/** Cornish (kernowek) */ -$specialPageAliases['kw'] = array( - 'Cite' => array( 'Devynna' ), -); - -/** Ladino (Ladino) */ -$specialPageAliases['lad'] = array( - 'Cite' => array( 'MostrarManaderos' ), -); - -/** Luxembourgish (Lëtzebuergesch) */ -$specialPageAliases['lb'] = array( - 'Cite' => array( 'Zitéierhellëf' ), -); - -/** Literary Chinese (文言) */ -$specialPageAliases['lzh'] = array( - 'Cite' => array( '引文' ), -); - -/** Macedonian (македонски) */ -$specialPageAliases['mk'] = array( - 'Cite' => array( 'Навод' ), -); - -/** Malayalam (മലയാളം) */ -$specialPageAliases['ml'] = array( - 'Cite' => array( 'അവലംബം' ), -); - -/** Marathi (मराठी) */ -$specialPageAliases['mr'] = array( - 'Cite' => array( 'संदर्भद्या' ), -); - -/** Malay (Bahasa Melayu) */ -$specialPageAliases['ms'] = array( - 'Cite' => array( 'Petik' ), -); - -/** Maltese (Malti) */ -$specialPageAliases['mt'] = array( - 'Cite' => array( 'Iċċita' ), -); - -/** Nahuatl (Nāhuatl) */ -$specialPageAliases['nah'] = array( - 'Cite' => array( 'Tlahtoa', 'Citar' ), -); - -/** Norwegian Bokmål (norsk bokmål) */ -$specialPageAliases['nb'] = array( - 'Cite' => array( 'Siteringshjelp' ), -); - -/** Low German (Plattdüütsch) */ -$specialPageAliases['nds'] = array( - 'Cite' => array( 'Ziteerhelp' ), -); - -/** Low Saxon (Netherlands) (Nedersaksies) */ -$specialPageAliases['nds-nl'] = array( - 'Cite' => array( 'Siteerhulpe' ), -); - -/** Dutch (Nederlands) */ -$specialPageAliases['nl'] = array( - 'Cite' => array( 'Citeren' ), -); - -/** Norwegian Nynorsk (norsk nynorsk) */ -$specialPageAliases['nn'] = array( - 'Cite' => array( 'Siter' ), -); - -/** Occitan (occitan) */ -$specialPageAliases['oc'] = array( - 'Cite' => array( 'Citar' ), -); - -/** Punjabi (ਪੰਜਾਬੀ) */ -$specialPageAliases['pa'] = array( - 'Cite' => array( 'ਹਵਾਲਾ' ), -); - -/** Polish (polski) */ -$specialPageAliases['pl'] = array( - 'Cite' => array( 'Cytuj' ), -); - -/** Pashto (پښتو) */ -$specialPageAliases['ps'] = array( - 'Cite' => array( 'درک' ), -); - -/** Portuguese (português) */ -$specialPageAliases['pt'] = array( - 'Cite' => array( 'Citar' ), -); - -/** Brazilian Portuguese (português do Brasil) */ -$specialPageAliases['pt-br'] = array( - 'Cite' => array( 'Citar' ), -); - -/** Romanian (română) */ -$specialPageAliases['ro'] = array( - 'Cite' => array( 'Citează' ), -); - -/** Russian (русский) */ -$specialPageAliases['ru'] = array( - 'Cite' => array( 'Цитата' ), -); - -/** Sanskrit (संस्कृतम्) */ -$specialPageAliases['sa'] = array( - 'Cite' => array( 'उद्धृत' ), -); - -/** Sicilian (sicilianu) */ -$specialPageAliases['scn'] = array( - 'Cite' => array( 'Cita' ), -); - -/** Slovak (slovenčina) */ -$specialPageAliases['sk'] = array( - 'Cite' => array( 'Citovať' ), -); - -/** Slovenian (slovenščina) */ -$specialPageAliases['sl'] = array( - 'Cite' => array( 'Navedi' ), -); - -/** Albanian (shqip) */ -$specialPageAliases['sq'] = array( - 'Cite' => array( 'Citim' ), -); - -/** Serbian (Cyrillic script) (српски (ћирилица)‎) */ -$specialPageAliases['sr-ec'] = array( - 'Cite' => array( 'Цитирај' ), -); - -/** Swedish (svenska) */ -$specialPageAliases['sv'] = array( - 'Cite' => array( 'Citera' ), -); - -/** Swahili (Kiswahili) */ -$specialPageAliases['sw'] = array( - 'Cite' => array( 'Taja', 'Hakikisha' ), -); - -/** Tetum (tetun) */ -$specialPageAliases['tet'] = array( - 'Cite' => array( 'Sita' ), -); - -/** Thai (ไทย) */ -$specialPageAliases['th'] = array( - 'Cite' => array( 'อ้างอิง' ), -); - -/** Tagalog (Tagalog) */ -$specialPageAliases['tl'] = array( - 'Cite' => array( 'Sipiin' ), -); - -/** Turkish (Türkçe) */ -$specialPageAliases['tr'] = array( - 'Cite' => array( 'KaynakGöster' ), -); - -/** Urdu (اردو) */ -$specialPageAliases['ur'] = array( - 'Cite' => array( 'حوالہ' ), -); - -/** vèneto (vèneto) */ -$specialPageAliases['vec'] = array( - 'Cite' => array( 'Cita' ), -); - -/** Vietnamese (Tiếng Việt) */ -$specialPageAliases['vi'] = array( - 'Cite' => array( 'Ghi_chú' ), -); - -/** Yiddish (ייִדיש) */ -$specialPageAliases['yi'] = array( - 'Cite' => array( 'ציטירן' ), -); - -/** Cantonese (粵語) */ -$specialPageAliases['yue'] = array( - 'Cite' => array( '引用' ), -); - -/** Simplified Chinese (中文(简体)‎) */ -$specialPageAliases['zh-hans'] = array( - 'Cite' => array( '引用' ), -); - -/** Traditional Chinese (中文(繁體)‎) */ -$specialPageAliases['zh-hant'] = array( - 'Cite' => array( '引用' ), -); \ No newline at end of file diff --git a/extensions/Cite/SpecialCite.i18n.php b/extensions/Cite/SpecialCite.i18n.php deleted file mode 100644 index 0362cd19..00000000 --- a/extensions/Cite/SpecialCite.i18n.php +++ /dev/null @@ -1,35 +0,0 @@ - - * @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason - * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later - */ -$wgExtensionCredits['specialpage'][] = array( - 'path' => __FILE__, - 'name' => 'Cite', - 'author' => 'Ævar Arnfjörð Bjarmason', - 'descriptionmsg' => 'cite_article_desc', - 'url' => 'https://www.mediawiki.org/wiki/Extension:Cite/Special:Cite.php' +trigger_error( + 'Special:Cite was moved to a separate CiteThisPage extension, ' . + 'see for information on how to install it', + E_USER_WARNING ); - -$dir = __DIR__ . '/'; -# Internationalisation file -$wgMessagesDirs['SpecialCite'] = __DIR__ . '/i18n/special'; -$wgExtensionMessagesFiles['SpecialCite'] = $dir . 'SpecialCite.i18n.php'; -$wgExtensionMessagesFiles['SpecialCiteAliases'] = $dir . 'SpecialCite.alias.php'; - -$wgHooks['SkinTemplateBuildNavUrlsNav_urlsAfterPermalink'][] = 'wfSpecialCiteNav'; -$wgHooks['SkinTemplateToolboxEnd'][] = 'wfSpecialCiteToolbox'; - -$wgSpecialPages['Cite'] = 'SpecialCite'; -$wgAutoloadClasses['SpecialCite'] = $dir . 'SpecialCite_body.php'; - -// Resources -$citeResourceTemplate = array( - 'localBasePath' => __DIR__ . '/modules', - 'remoteExtPath' => 'Cite/modules' -); - -$wgResourceModules['ext.specialcite'] = $citeResourceTemplate + array( - 'styles' => 'ext.specialcite.css', - 'scripts' => array(), - 'position' => 'bottom', -); - -/** - * @param $skintemplate SkinTemplate - * @param $nav_urls - * @param $oldid - * @param $revid - * @return bool - */ -function wfSpecialCiteNav( &$skintemplate, &$nav_urls, &$oldid, &$revid ) { - // check whether we’re in the right namespace, the $revid has the correct type and is not empty - // (what would mean that the current page doesn’t exist) - $title = $skintemplate->getTitle(); - if ( $title->isContentPage() && $revid !== 0 && !empty( $revid ) ) - $nav_urls['cite'] = array( - 'args' => array( 'page' => $title->getPrefixedDBkey(), 'id' => $revid ) - ); - - return true; -} - -/** - * add the cite link to the toolbar - * - * @param $skin Skin - * - * @return bool - */ -function wfSpecialCiteToolbox( &$skin ) { - if ( isset( $skin->data['nav_urls']['cite'] ) ) { - echo Html::rawElement( - 'li', - array( 'id' => 't-cite' ), - Linker::link( - SpecialPage::getTitleFor( 'Cite' ), - wfMessage( 'cite_article_link' )->escaped(), - # Used message keys: 'tooltip-cite-article', 'accesskey-cite-article' - Linker::tooltipAndAccessKeyAttribs( 'cite-article' ), - $skin->data['nav_urls']['cite']['args'] - ) - ); - } - - return true; -} diff --git a/extensions/Cite/SpecialCite_body.php b/extensions/Cite/SpecialCite_body.php deleted file mode 100644 index c2a6befc..00000000 --- a/extensions/Cite/SpecialCite_body.php +++ /dev/null @@ -1,186 +0,0 @@ - tags to - // be generated around the output of the CiteOutput - // class TODO FIXME. - $wgUseTidy = false; - - $this->setHeaders(); - $this->outputHeader(); - - $page = $par !== null ? $par : $this->getRequest()->getText( 'page' ); - $title = Title::newFromText( $page ); - - $cform = new CiteForm( $title ); - $cform->execute(); - - if ( $title && $title->exists() ) { - $id = $this->getRequest()->getInt( 'id' ); - $cout = new CiteOutput( $title, $id ); - $cout->execute(); - } - } -} - -class CiteForm { - /** - * @var Title - */ - public $mTitle; - - function __construct( &$title ) { - $this->mTitle =& $title; - } - - function execute() { - global $wgOut, $wgScript; - - $wgOut->addHTML( - Xml::openElement( 'form', - array( - 'id' => 'specialcite', - 'method' => 'get', - 'action' => $wgScript - ) ) . - Html::hidden( 'title', SpecialPage::getTitleFor( 'Cite' )->getPrefixedDBkey() ) . - Xml::openElement( 'label' ) . - wfMessage( 'cite_page' )->escaped() . ' ' . - Xml::element( 'input', - array( - 'type' => 'text', - 'size' => 30, - 'name' => 'page', - 'value' => is_object( $this->mTitle ) ? $this->mTitle->getPrefixedText() : '' - ), - '' - ) . - ' ' . - Xml::element( 'input', - array( - 'type' => 'submit', - 'value' => wfMessage( 'cite_submit' )->escaped() - ), - '' - ) . - Xml::closeElement( 'label' ) . - Xml::closeElement( 'form' ) - ); - } -} - -class CiteOutput { - /** - * @var Title - */ - public $mTitle; - - /** - * @var Article - */ - public $mArticle; - - public $mId; - - /** - * @var Parser - */ - public $mParser; - - /** - * @var ParserOptions - */ - public $mParserOptions; - - public $mSpTitle; - - function __construct( $title, $id ) { - global $wgHooks, $wgParser; - - $this->mTitle = $title; - $this->mArticle = new Article( $title ); - $this->mId = $id; - - $wgHooks['ParserGetVariableValueVarCache'][] = array( $this, 'varCache' ); - - $this->genParserOptions(); - $this->genParser(); - - $wgParser->setHook( 'citation', array( $this, 'CiteParse' ) ); - } - - function execute() { - global $wgOut, $wgParser, $wgHooks; - - $wgHooks['ParserGetVariableValueTs'][] = array( $this, 'timestamp' ); - - $msg = wfMessage( 'cite_text' )->inContentLanguage()->plain(); - if ( $msg == '' ) { - # With MediaWiki 1.20 the plain text files were deleted and the text moved into SpecialCite.i18n.php - # This code is kept for b/c in case an installation has its own file "cite_text-xx" - # for a previously not supported language. - global $wgContLang, $wgContLanguageCode; - $dir = dirname( __FILE__ ) . DIRECTORY_SEPARATOR; - $code = $wgContLang->lc( $wgContLanguageCode ); - if ( file_exists( "${dir}cite_text-$code" ) ) { - $msg = file_get_contents( "${dir}cite_text-$code" ); - } elseif( file_exists( "${dir}cite_text" ) ){ - $msg = file_get_contents( "${dir}cite_text" ); - } - } - $ret = $wgParser->parse( $msg, $this->mTitle, $this->mParserOptions, false, true, $this->getRevId() ); - $wgOut->addModules( 'ext.specialcite' ); - - # Introduced in 1.24 - if( method_exists( $wgOut, 'addParserOutputContent' ) ) { - $wgOut->addParserOutputContent( $ret ); - } else { - $wgOut->addHTML( $ret->getText() ); - } - } - - function genParserOptions() { - global $wgUser; - $this->mParserOptions = ParserOptions::newFromUser( $wgUser ); - $this->mParserOptions->setDateFormat( MW_DATE_DEFAULT ); - $this->mParserOptions->setEditSection( false ); - } - - function genParser() { - $this->mParser = new Parser; - $this->mSpTitle = SpecialPage::getTitleFor( 'Cite' ); - } - - function CiteParse( $in, $argv ) { - $ret = $this->mParser->parse( $in, $this->mSpTitle, $this->mParserOptions, false ); - - return $ret->getText(); - } - - function varCache() { - return false; - } - - function timestamp( &$parser, &$ts ) { - if ( isset( $parser->mTagHooks['citation'] ) ) { - $ts = wfTimestamp( TS_UNIX, $this->mArticle->getTimestamp() ); - } - - return true; - } - - function getRevId() { - if ( $this->mId ) { - return $this->mId; - } else { - return $this->mTitle->getLatestRevID(); - } - } -} diff --git a/extensions/Cite/citeParserTests.txt b/extensions/Cite/citeParserTests.txt index 329806b5..047b11a1 100644 --- a/extensions/Cite/citeParserTests.txt +++ b/extensions/Cite/citeParserTests.txt @@ -126,7 +126,7 @@ TemplatingText