Addshore has submitted this change and it was merged.
Change subject: New Wikidata Build - 22/03/2014 10:00 ...
......................................................................
New Wikidata Build - 22/03/2014 10:00 ...
Change-Id: I1c82d397ba652409a5f363c6b3536cf4f20cda55
---
M composer.lock
M extensions/Wikibase/client/WikibaseClient.i18n.magic.php
M extensions/Wikibase/client/WikibaseClient.i18n.php
M extensions/Wikibase/lib/WikibaseLib.i18n.php
M extensions/Wikibase/lib/includes/parsers/DateTimeParser.php
M extensions/Wikibase/lib/resources/formatters/ApiBasedValueFormatter.js
M extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
M
extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.snakview/snakview.variations.Value.js
M
extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
M extensions/Wikibase/lib/resources/wikibase.css
M extensions/Wikibase/lib/tests/phpunit/parsers/DateTimeParserTest.php
M extensions/Wikibase/lib/tests/phpunit/parsers/TimeParserTest.php
M extensions/Wikibase/repo/Wikibase.i18n.php
M vendor/autoload.php
M vendor/composer/autoload_real.php
M vendor/composer/installed.json
16 files changed, 198 insertions(+), 101 deletions(-)
Approvals:
WikidataJenkins: Verified
Addshore: Looks good to me, approved
jenkins-bot: Verified
diff --git a/composer.lock b/composer.lock
index 2cc0a03..425fe02 100644
--- a/composer.lock
+++ b/composer.lock
@@ -850,12 +850,12 @@
"source": {
"type": "git",
"url":
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git",
- "reference": "361f7774da3b40e02533708228279654259f603d"
+ "reference": "a5c1b9e581d26fd422afd6e76472f7f399d40fbc"
},
"dist": {
"type": "zip",
- "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/361f7774da3b40e02533708228279654259f603d",
- "reference": "361f7774da3b40e02533708228279654259f603d",
+ "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/a5c1b9e581d26fd422afd6e76472f7f399d40fbc",
+ "reference": "a5c1b9e581d26fd422afd6e76472f7f399d40fbc",
"shasum": ""
},
"require": {
@@ -914,7 +914,7 @@
"wikibaserepo",
"wikidata"
],
- "time": "2014-03-21 09:38:56"
+ "time": "2014-03-22 09:43:36"
}
],
"packages-dev": [
diff --git a/extensions/Wikibase/client/WikibaseClient.i18n.magic.php
b/extensions/Wikibase/client/WikibaseClient.i18n.magic.php
index ffb1bae..fb16497 100644
--- a/extensions/Wikibase/client/WikibaseClient.i18n.magic.php
+++ b/extensions/Wikibase/client/WikibaseClient.i18n.magic.php
@@ -96,6 +96,7 @@
$magicWords['mk'] = array(
'noexternallanglinks' => array( 0, 'безнадворјазврски' ),
'property' => array( 0, 'својство' ),
+ 'wbreponame' => array( 0, 'вбскладиштеиме' ),
);
/** Malayalam (മലയാളം) */
diff --git a/extensions/Wikibase/client/WikibaseClient.i18n.php
b/extensions/Wikibase/client/WikibaseClient.i18n.php
index 8618204..0cd4c8b 100644
--- a/extensions/Wikibase/client/WikibaseClient.i18n.php
+++ b/extensions/Wikibase/client/WikibaseClient.i18n.php
@@ -383,10 +383,21 @@
'wikibase-linkitem-not-loggedin-title' => 'يتوجب عليك تسجيل الدخول',
'wikibase-linkitem-not-loggedin' => 'لاستخدام هذه الميزة لا بد من تسجيل
الدخول على هذه الويكي وعلى [$1 مستودع البيانات المركزي].',
'wikibase-linkitem-success-link' => 'تم ربط الصفحات بنجاح. يمكنك العثور
على العنصر الذي يحتوي على الارتباطات على [ $1 مستودعنا المركزي للبيانات].',
+ 'wikibase-property-notfound' => 'لم يتم العثور على الخاصية $1.',
+ 'wikibase-property-notsupportedyet' => 'قاعدة ويكي لا تدعم نوع الخاصية
للخاصية $1 بعد.',
'wikibase-rc-hide-wikidata' => '$1 ويكيبيانات', # Fuzzy
+ 'wikibase-rc-hide-wikidata-hide' => 'إخفاء',
+ 'wikibase-rc-hide-wikidata-show' => 'أظهر',
'wikibase-rc-show-wikidata-pref' => 'إظهار تعديلات ويكي بيانات في صفحة
أحدث التغييرات', # Fuzzy
'wikibase-rc-wikibase-edit-letter' => 'د',
+ 'wikibase-rc-wikibase-edit-title' => 'تعديل {{WBREPONAME}}',
+ 'wikibase-watchlist-show-changes-pref' => 'إظهار تعديلات {{WBREPONAME}}
في قائمة مراقبتك',
+ 'wikibase-unconnectedpages-page' => 'بدء قائمة النتائج بالصفحة:',
'wikibase-unconnectedpages-submit' => 'اذهب',
+ 'wikibase-unconnectedpages-page-warning' => 'لا يمكن استخدام عنوان
الصفحة في عملية البحث وسيتم تجاهله.',
+ 'wikibase-unconnectedpages-iwdata-label' => 'الصفحات التي تحتوي على
وصلات بلغات أخرى فقط',
+ 'wikibase-pageinfo-entity-id-none' => 'لا شيء',
+ 'wikibase-otherprojects' => 'مشاريع أخرى',
);
/** Aramaic (ܐܪܡܝܐ)
@@ -1003,9 +1014,9 @@
$messages['cu'] = array(
'wikibase-editlinks' => 'исправи съвѧꙁи',
'wikibase-linkitem-input-site' => 'ѩꙁꙑкъ :',
- 'wikibase-rc-hide-wikidata' => '$1 Викисъводъ',
+ 'wikibase-rc-hide-wikidata' => '$1 {{WBREPONAME}}',
'wikibase-rc-wikibase-edit-letter' => 'в҃с',
- 'wikibase-rc-wikibase-edit-title' => 'Викисъводѣ мѣна',
+ 'wikibase-rc-wikibase-edit-title' =>
'{{grammar:genitive|{{WBREPONAME}}}} мѣна',
);
/** Welsh (Cymraeg)
@@ -1241,7 +1252,7 @@
'wikibase-property-notsupportedyet' => 'Wikibase hyšći njepóděra
kakosćowy typ za kakosć $1.',
'wikibase-rc-hide-wikidata' => '{{WBREPONAME}} $1',
'wikibase-rc-show-wikidata-pref' => 'Změny {{WBREPONAME}} w aktualnych
změnach pokazaś',
- 'wikibase-watchlist-show-changes-pref' => 'Změny Wikidata w twójich
wobglědowańkach pokazaś', # Fuzzy
+ 'wikibase-watchlist-show-changes-pref' => 'Změny {{WBREPONAME}} w
twójich wobglědowańkach pokazaś',
'wikibase-error-invalid-entity-id' => 'Zapódany ID jo systemoju
njeznaty. Pšosym wužyj płaśiwy entitowy ID.',
);
diff --git a/extensions/Wikibase/lib/WikibaseLib.i18n.php
b/extensions/Wikibase/lib/WikibaseLib.i18n.php
index 6fdcb2d..49cc1fd 100644
--- a/extensions/Wikibase/lib/WikibaseLib.i18n.php
+++ b/extensions/Wikibase/lib/WikibaseLib.i18n.php
@@ -383,6 +383,9 @@
'wikibase-deletedentity-property' => 'خاصية محذوفة',
'wikibase-deletedentity-query' => 'طلب محذوف',
'wikibase-diffview-reference' => 'مرجع',
+ 'wikibase-diffview-rank' => 'الترتيب',
+ 'wikibase-diffview-rank-preferred' => 'الترتيب المفضل',
+ 'wikibase-diffview-rank-normal' => 'الترتيب القياسي',
'wikibase-diffview-qualifier' => 'صفة',
'wikibase-diffview-label' => 'علامة',
'wikibase-diffview-alias' => 'أسماء أخرى',
@@ -395,6 +398,9 @@
'wikibase-error-remove-connection' => 'وقع خطأ في الاتصال عند الحذف فلم
تحفظ تعديلاتك. تحقق من الاتصال بالإنترنت.',
'wikibase-error-save-timeout' => 'يشهد الموقع صعوبات تقنية حاليا فلم
ينفذ الحفظ.',
'wikibase-error-remove-timeout' => 'يشهد الموقع صعوبات تقنية حاليا فلم
ينفذ الحذف.',
+ 'wikibase-error-autocomplete-connection' => 'لم يكن من الممكن البحث في
واجهة برمجة التطبيقات الخاصة بالموقع. الرجاء المحاولة مرة أخرى لاحقاَ.',
+ 'wikibase-quantitydetails-amount' => 'الكمية',
+ 'wikibase-quantitydetails-unit' => 'وحدة',
'wikibase-timedetails-time' => 'زمن',
'wikibase-timedetails-isotime' => 'الطابع الزمني ISO',
'wikibase-timedetails-timezone' => 'المنطقة الزمنية',
@@ -406,10 +412,14 @@
'wikibase-globedetails-latitude' => 'خطّ العرض',
'wikibase-globedetails-precision' => 'الدقة',
'wikibase-replicationnote' => 'قد يلزم وقت لتظهر التعديلات في جميع
الويكيات.',
+ 'wikibase-sitelinks-wikipedia' => 'صفحات ويكيبيديا المرتبطة بهذا
العنصر',
'wikibase-sitelinks-sitename-columnheading' => 'اللغة',
'wikibase-sitelinks-sitename-columnheading-special' => 'الموقع',
+ 'wikibase-sitelinks-link-columnheading' => 'صفحة مرتبطة',
'wikibase-tooltip-error-details' => 'التفاصيل',
'wikibase-validator-bad-type' => '$2 عوضا عن $1',
+ 'wikibase-validator-no-such-entity' => 'لم يتم العثور على $1',
+ 'wikibase-validator-no-such-property' => 'الخاصية $1 غير موجودة',
'wikibase-validator-unknown-unit' => 'وحدة غير معروفة: $1',
'datatypes-type-wikibase-item' => 'عنصر',
'version-wikibase' => 'قاعدة ويكي',
@@ -1296,6 +1306,7 @@
/** Spanish (español)
* @author Armando-Martin
* @author Dalton2
+ * @author Fitoschido
* @author Ihojose
* @author Pegna
* @author Savh
@@ -1333,6 +1344,7 @@
'wikibase-error-ui-session-failure' => 'Tu sesión ha caducado. Inicia
la sesión de nuevo.',
'wikibase-error-ui-edit-conflict' => 'Hay un conflicto de edición. Por
favor, vuelve a cargar y guarda de nuevo.',
'wikibase-timedetails-time' => 'Tiempo',
+ 'wikibase-timedetails-isotime' => 'Fecha y hora en formato ISO',
'wikibase-timedetails-timezone' => 'Zona horaria',
'wikibase-timedetails-calendar' => 'Calendario',
'wikibase-timedetails-precision' => 'Precisión',
@@ -1343,7 +1355,7 @@
'wikibase-globedetails-precision' => 'Precisión',
'wikibase-globedetails-globe' => 'Globo',
'wikibase-replicationnote' => 'Tenga en cuenta que puede tardar varios
minutos, hasta que los cambios sean visibles en todas las wikis.',
- 'wikibase-sitelinks-wikipedia' => 'Páginas de Wikipedia con enlaces
hacia este elemento',
+ 'wikibase-sitelinks-wikipedia' => 'Páginas de Wikipedia enlazadas con
este elemento',
'wikibase-sitelinks-sitename-columnheading' => 'Idioma',
'wikibase-sitelinks-siteid-columnheading' => 'Código',
'wikibase-sitelinks-link-columnheading' => 'Artículo enlazado', # Fuzzy
diff --git a/extensions/Wikibase/lib/includes/parsers/DateTimeParser.php
b/extensions/Wikibase/lib/includes/parsers/DateTimeParser.php
index 0f0643c..8c408fa 100644
--- a/extensions/Wikibase/lib/includes/parsers/DateTimeParser.php
+++ b/extensions/Wikibase/lib/includes/parsers/DateTimeParser.php
@@ -34,9 +34,10 @@
}
/**
- * Parses the provided string and returns the result.
+ * Parses the provided string
*
- * @param string $value
+ * @param string $value in a format as specified by the PHP DateTime
object
+ * there are exceptions as we can handel 5+ digit dates
*
* @throws ParseException
* @return TimeValue
@@ -44,22 +45,36 @@
protected function stringParse( $value ) {
$calendarModelParser = new CalendarModelParser();
$options = $this->getOptions();
+
+ //Place to put large years when they are found
+ $largeYear = null;
+
try{
- $value = $this->monthUnlocaliser->unlocalize(
- $value,
- $options->getOption( ValueParser::OPT_LANG ),
- new ParserOptions()
+ $value = $this->getValueWithFixedYearLengths(
+ $this->getValueWithFixedSeparators(
+ $this->monthUnlocaliser->unlocalize(
+ trim( $value ),
+ $options->getOption(
ValueParser::OPT_LANG ),
+ new ParserOptions()
+ )
+ )
);
- //PHP's DateTime object does not accept spaces as
separators between year, month and day,
- //e.g. dates like 20 12 2012, but we want to support
them.
- //See
http://de1.php.net/manual/en/datetime.formats.date.php
- $value = preg_replace( '/\s+/', '.', trim( $value ) );
+ //PHP's DateTime object also cant handel larger than 4
digit years
+ //e.g. 1 June 202020
+ if( preg_match( '/^(.*[^\d]|)(\d{5,})(.*|)$/', $value,
$matches ) ) {
+ $value = $matches[1] . substr( $matches[2], -4
) . $matches[3];
+ $largeYear = $matches[2];
+ }
//Parse using the DateTime object (this will allow us
to format the date in a nicer way)
//TODO try to match and remove BCE etc. before putting
the value into the DateTime object to get - dates!
$dateTime = new DateTime( $value );
- $timeString = '+' . $dateTime->format( 'Y-m-d\TH:i:s\Z'
);
+ if( $largeYear === null ) {
+ $timeString = '+' . $dateTime->format(
'Y-m-d\TH:i:s\Z' );
+ } else {
+ $timeString = '+' . $largeYear .
$dateTime->format( '-m-d\TH:i:s\Z' );
+ }
//Pass the reformatted string into a base parser that
parses this +/-Y-m-d\TH:i:s\Z format with a precision
$valueParser = new \ValueParsers\TimeParser(
$calendarModelParser, $options );
@@ -71,4 +86,48 @@
}
}
-}
\ No newline at end of file
+ /**
+ * PHP's DateTime object does not accept spaces as separators between
year, month and day,
+ * e.g. dates like 20 12 2012, but we want to support them.
+ * See http://de1.php.net/manual/en/datetime.formats.date.php
+ *
+ * @param string $value
+ *
+ * @return mixed
+ */
+ private function getValueWithFixedSeparators( $value ) {
+ return preg_replace( '/\s+/', '.', $value );
+ }
+
+ /**
+ * PHP's DateTime object also cant handel smaller than 4 digit years
+ * e.g. instead of 12 it needs 0012 etc.
+ *
+ * @param string $value
+ *
+ * @return string
+ */
+ private function getValueWithFixedYearLengths( $value ) {
+ if( preg_match( '/^(\d+)([^\d])(\d+)([^\d])(\d+)$/', $value,
$dateParts ) ) {
+ if( $dateParts[1] > 31 && $dateParts[5] <= 31 ) {
+ // the year looks like it is at the front
+ if( strlen( $dateParts[1] ) < 4 ) {
+ $value = str_pad( $dateParts[1], 4,
'0', STR_PAD_LEFT )
+ . $dateParts[2] . $dateParts[3]
. $dateParts[4] . $dateParts[5];
+ }
+ } else {
+ // presume the year is at the back
+ if( strlen( $dateParts[5] ) < 4 ) {
+ $value = $dateParts[1] . $dateParts[2]
. $dateParts[3] . $dateParts[4]
+ . str_pad( $dateParts[5], 4,
'0', STR_PAD_LEFT );
+ }
+ }
+ } else {
+ if( preg_match( '/^(.*[^\d])(\d{1,3})$/', $value,
$matches ) ) {
+ $value = $matches[1] . str_pad( $matches[2], 4,
'0', STR_PAD_LEFT );
+ }
+ }
+ return $value;
+ }
+
+}
diff --git
a/extensions/Wikibase/lib/resources/formatters/ApiBasedValueFormatter.js
b/extensions/Wikibase/lib/resources/formatters/ApiBasedValueFormatter.js
index 8194465..4e1fe12 100644
--- a/extensions/Wikibase/lib/resources/formatters/ApiBasedValueFormatter.js
+++ b/extensions/Wikibase/lib/resources/formatters/ApiBasedValueFormatter.js
@@ -32,7 +32,7 @@
// TODO: Remove accessing wb.__formattedValues along
with removing
// wikibase.ui.initFormattedValues resource loader
module.
- if( wb.__formattedValues ) {
+ if( outputType === 'text/html' && wb.__formattedValues
) {
for( var dataValueJson in wb.__formattedValues
) {
if( JSON.stringify( dataValue.toJSON()
) === dataValueJson ) {
deferred.resolve(
wb.__formattedValues[dataValueJson], dataValue );
diff --git
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
index 752ff79..33d5932 100644
---
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
+++
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
@@ -76,11 +76,13 @@
function() { // class='wb-claim-$1'
return ( this._claim && this._claim.getGuid() )
|| 'new';
},
- '', // .wb-claim-mainsnak
+ function() {
+ return $( '<div/>' );
+ }, // .wb-claim-mainsnak
'' // Qualifiers
],
templateShortCuts: {
- '$mainSnak': '.wb-claim-mainsnak',
+ '$mainSnak': '.wb-claim-mainsnak > :first-child',
'$qualifiers': '.wb-claim-qualifiers'
},
value: null,
diff --git
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.snakview/snakview.variations.Value.js
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.snakview/snakview.variations.Value.js
index ccdc315..f007759 100644
---
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.snakview/snakview.variations.Value.js
+++
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.snakview/snakview.variations.Value.js
@@ -1,5 +1,4 @@
/**
- *
* @licence GNU GPL v2+
* @author Daniel Werner < [email protected] >
*/
@@ -313,27 +312,23 @@
return false; // no valueview created!
}
- var valueViewOptions = {
- value: dataValue,
- mediaWiki: mw
- };
-
+ var valueViewOptions = { value: dataValue };
if( dataType ) {
- $.extend( valueViewOptions, {
- dataTypeId: dataType.getId(),
- dataValueType:
dataType.getDataValueType()
- } );
+ valueViewOptions.dataTypeId =
dataType.getId();
+ valueViewOptions.dataValueType =
dataType.getDataValueType();
} else if( dataValue ) {
- $.extend( valueViewOptions, {
- dataValueType: dataValue.getType()
- } );
+ valueViewOptions.dataValueType =
dataValue.getType();
}
// TODO: Use something like an 'editview' and just
change its data type rather than
- // initializing this over and over again and doing the
checks.
+ // initializing this over and over again and doing the
checks.
$valueViewDom.valueview( valueViewOptions );
this._valueView = $valueViewDom.data( 'valueview' );
+ // Setting this option must be delayed, otherwise the
deep copy call
+ // $.extend( true, ... ) in _createWidget() will clone
the full mw object.
+ this._valueView.option( { mediaWiki: mw } );
+
return true;
},
diff --git
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
index 1dc831a..fea19a6 100644
---
a/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
+++
b/extensions/Wikibase/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
@@ -28,15 +28,17 @@
function() { // class='wb-claim-$2'
return ( this._claim && this._claim.getGuid() )
|| 'new';
},
- '', // TODO: This toolbar placeholder should be removed
from the template.
- '', // .wb-claim-mainsnak
+ function() {
+ return $( '<div/>' );
+ }, // .wb-claim-mainsnak
'', // Qualifiers
+ '', // TODO: This toolbar placeholder should be removed
from the template.
'', // References heading
'' // List of references
],
templateShortCuts: {
'$rankSelector': '.wb-statement-rank',
- '$mainSnak': '.wb-claim-mainsnak',
+ '$mainSnak': '.wb-claim-mainsnak > :first-child',
'$qualifiers': '.wb-statement-qualifiers',
'$refsHeading': '.wb-statement-references-heading',
'$references': '.wb-statement-references'
diff --git a/extensions/Wikibase/lib/resources/wikibase.css
b/extensions/Wikibase/lib/resources/wikibase.css
index 164f720..c148c50 100644
--- a/extensions/Wikibase/lib/resources/wikibase.css
+++ b/extensions/Wikibase/lib/resources/wikibase.css
@@ -594,7 +594,6 @@
.wb-claimgrouplistview .wb-new .wb-claim-mainsnak {
margin: 0 18em 0 15em;
- padding: 10px;
}
.wb-claimgrouplistview .wb-new .wb-snak-property-container {
diff --git
a/extensions/Wikibase/lib/tests/phpunit/parsers/DateTimeParserTest.php
b/extensions/Wikibase/lib/tests/phpunit/parsers/DateTimeParserTest.php
index 67e6503..c9e5912 100644
--- a/extensions/Wikibase/lib/tests/phpunit/parsers/DateTimeParserTest.php
+++ b/extensions/Wikibase/lib/tests/phpunit/parsers/DateTimeParserTest.php
@@ -45,8 +45,7 @@
$valid = array(
- '10/10/10' =>
- array( '+0000000000002010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ // Normal / easy dates
'10/10/2010' =>
array( '+0000000000002010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'10.10.2010' =>
@@ -55,18 +54,10 @@
array( '+0000000000002010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'10/10/0010' =>
array( '+0000000000000010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
- '1/1/1' =>
- array( '+0000000000002001-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
- '1-1-1' =>
- array( '+0000000000002001-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'1 July 2013' =>
array( '+0000000000002013-07-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'1 Jul 2013' =>
array( '+0000000000002013-07-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
- '9 Jan 09' =>
- array( '+0000000000002009-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
- '2009-01-09' =>
- array( '+0000000000002009-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'January 9 1920' =>
array( '+0000000000001920-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'Feb 11 1930' =>
@@ -85,6 +76,57 @@
array( '+0000000000002013-07-03T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'4th July 2013' =>
array( '+0000000000002013-07-04T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+
+ //Year first dates
+ '2009-01-09' =>
+ array( '+0000000000002009-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '55-01-09' =>
+ array( '+0000000000000055-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '555-01-09' =>
+ array( '+0000000000000555-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '33300-1-1' =>
+ array( '+0000000000033300-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '3330002-1-1' =>
+ array( '+0000000003330002-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+
+ //Less than 4 digit years
+ '10/10/10' =>
+ array( '+0000000000000010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '9 Jan 09' =>
+ array( '+0000000000000009-01-09T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '1/1/1' =>
+ array( '+0000000000000001-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '1-1-1' =>
+ array( '+0000000000000001-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '31-1-55' =>
+ array( '+0000000000000055-01-31T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '10-10-100' =>
+ array( '+0000000000000100-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '4th July 11' =>
+ array( '+0000000000000011-07-04T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '4th July 111' =>
+ array( '+0000000000000111-07-04T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '4th July 1' =>
+ array( '+0000000000000001-07-04T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+
+ //More than 4 digit years
+ '4th July 10000' =>
+ array( '+0000000000010000-07-04T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '10/10/22000' =>
+ array( '+0000000000022000-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '1-1-33300' =>
+ array( '+0000000000033300-01-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '4th July 7214614279199781' =>
+ array( '+7214614279199781-07-04T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+
+ //Testing Leap Year stuff
+ '10000-02-29' =>
+ array( '+0000000000010000-02-29T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '10100-02-29' =>
+ array( '+0000000000010100-03-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ '10400-02-29' =>
+ array( '+0000000000010400-02-29T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+
);
@@ -107,7 +149,6 @@
'Jann 2014',
// Not within the scope of this parser
- '1 July 20000', // The DateTime object cant parse years
with more than 4 digits
'100BC', // The DateTime object cant parse BC years
);
diff --git a/extensions/Wikibase/lib/tests/phpunit/parsers/TimeParserTest.php
b/extensions/Wikibase/lib/tests/phpunit/parsers/TimeParserTest.php
index c2cc3ba..0b861c5 100644
--- a/extensions/Wikibase/lib/tests/phpunit/parsers/TimeParserTest.php
+++ b/extensions/Wikibase/lib/tests/phpunit/parsers/TimeParserTest.php
@@ -75,7 +75,7 @@
//Wikibase\Lib\DateTimeParser
'10/10/10' =>
- array( '+0000000000002010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
+ array( '+0000000000000010-10-10T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'1 July 2013' =>
array( '+0000000000002013-07-01T00:00:00Z', 0 ,
0 , 0 , TimeValue::PRECISION_DAY , TimeFormatter::CALENDAR_GREGORIAN ),
'1 Jul 2013' =>
diff --git a/extensions/Wikibase/repo/Wikibase.i18n.php
b/extensions/Wikibase/repo/Wikibase.i18n.php
index c6e0538..a23dac6 100644
--- a/extensions/Wikibase/repo/Wikibase.i18n.php
+++ b/extensions/Wikibase/repo/Wikibase.i18n.php
@@ -1496,13 +1496,17 @@
'wikibase-undo-revision-error' => 'فشل عملية الرجوع',
'wikibase-propertyedittool-full' => 'قائمة القيم اكتملت',
'wikibase-aliases-label' => 'تعرف أيضا باسم:',
+ 'wikibase-aliases-empty' => 'لم يتم تعريف أي كنية.',
'wikibase-datatype-label' => 'نوع البيانات:',
+ 'wikibase-statementview-rank-preferred' => 'الترتيب المفضل',
'wikibase-snakview-property-input-placeholder' => 'خاصية',
'wikibase-snakview-variations-somevalue-label' => 'قيمة مجهولة',
'wikibase-snakview-variations-novalue-label' => 'لا قيمة',
'wikibase-snakview-snaktypeselector-novalue' => 'لا قيمة',
'wikibase-entityselector-more' => 'المزيد',
'wikibase-itembytitle-lookup-site' => 'الموقع:',
+ 'wikibase-itembytitle-submit' => 'بحث',
+ 'special-itemdisambiguation' => 'توضيح العنصر',
'wikibase-itemdisambiguation-lookup-language' => 'اللغة:',
'wikibase-itemdisambiguation-submit' => 'بحث',
'wikibase-itemdisambiguation-nothing-found' => 'عذراً، لم تم العثور على
أي بند بهذه التسمية.',
@@ -3212,6 +3216,7 @@
'wikibase-itemdisambiguation-lookup-label' => 'Štítek:',
'wikibase-itemdisambiguation-submit' => 'Hledat',
'wikibase-itemdisambiguation-nothing-found' => 'Omlouvám se, položka s
tímto štítkem nenalezena',
+ 'wikibase-itemdisambiguation-search' => 'Můžete
[{{fullurl:Special:Search|search=$1}} zkusit položku vyhledat].',
'wikibase-itemdisambiguation-create' => 'Můžete
[{{fullurl:Special:NewItem|label=$1}} vytvořit položku].',
'wikibase-itemdisambiguation-invalid-langcode' => 'Použitý
identifikátor jazyka systém bohužel nezná. Použijte platný identifikátor,
například „en“.',
'special-newproperty' => 'Vytvořit novou vlastnost',
@@ -3289,7 +3294,7 @@
'wikibase-dispatchstats-median' => 'Medián',
'wikibase-dispatchstats-average' => 'Průměr',
'special-listdatatypes' => 'Seznam dostupných datových typů',
- 'wikibase-listdatatypes-intro' => 'Toto je seznam všech datových typů v
současné době používaných na této instalaci:',
+ 'wikibase-listdatatypes-intro' => 'Toto je seznam všech datových typů
dostupných na této instalaci:',
'wikibase-history-title-with-label' => 'Historie verzí položky „$2“
($1)',
'wikibase-history-title-without-label' => 'Historie verzí položky ($1)',
'special-entitieswithoutdescription' => 'Entity bez popisu',
@@ -3304,6 +3309,7 @@
'special-itemswithoutsitelinks' => 'Položky bez odkazů na články',
'special-entitydata' => 'Data entity',
'wikibase-entitydata-not-found' => 'Žádná entita s ID $1 nebyla
nalezena.',
+ 'wikibase-entitydata-not-acceptable' => 'Nenalezen žádný odpovídající
formát. Podporované MIME typy: $1',
'wikibase-entitydata-bad-revision' => 'Nelze zobrazit revizi $2 entity
$1.',
'wikibase-entitydata-bad-id' => 'Chybné ID: $1',
'wikibase-entitydata-unsupported-format' => 'Toto rozhraní nepodporuje
datový formát $1.',
@@ -3391,40 +3397,8 @@
'content-model-wikibase-item' => 'Položka Wikibase',
'content-model-wikibase-property' => 'Položka Wikibase',
'content-model-wikibase-query' => 'Dotaz Wikibase',
- 'right-item-override' => 'Přepisování položek',
- 'right-item-create' => 'Vytváření položek',
- 'right-item-remove' => 'Mazání položek',
- 'right-property-override' => 'Přepisování vlastností',
+ 'right-item-merge' => 'Slučování položek',
'right-property-create' => 'Vytváření vlastností',
- 'right-property-remove' => 'Mazání vlastností',
- 'right-alias-remove' => 'Odstraňování aliasů',
- 'right-alias-update' => 'Aktualizace aliasů',
- 'right-sitelink-remove' => 'Odstraňování odkazů',
- 'right-sitelink-update' => 'Aktualizace odkazů na články',
- 'right-linktitles-update' => 'Aktualizace odkazů na články', # Fuzzy
- 'right-label-remove' => 'Odstraňování štítků', # Fuzzy
- 'right-label-update' => 'Aktualizovat štítky',
- 'right-description-remove' => 'Odstraňování popisů', # Fuzzy
- 'right-description-update' => 'Aktualizovat popisy',
- 'action-item-override' => 'přepisovat položky', # Fuzzy
- 'action-item-create' => 'vytvářet položky',
- 'action-item-remove' => 'mazat položky',
- 'action-property-override' => 'přepisovat vlastnosti',
- 'action-property-create' => 'vytvořit vlastnosti',
- 'action-property-remove' => 'mazat vlastnosti',
- 'action-alias-update' => 'aktualizovat aliasy',
- 'action-alias-remove' => 'odstranit aliasy',
- 'action-sitelink-remove' => 'odstranit odkazy',
- 'action-sitelink-update' => 'aktualizovat odkazy na články',
- 'action-label-remove' => 'odstranit štítky', # Fuzzy
- 'action-label-update' => 'aktualizovat štítky',
- 'action-description-remove' => 'mazat popisy',
- 'action-description-update' => 'aktualizovat popisy',
- 'wikibase-time-precision-Gannum' => 'za $1
{{PLURAL:$1|miliardu|miliardy|miliard}} let',
- 'wikibase-time-precision-Mannum' => 'za $1
{{PLURAL:$1|milion|miliony|milionů}} let',
- 'wikibase-time-precision-annum' => 'za $1 {{PLURAL:$1|rok|roky|let}}',
- 'wikibase-time-precision-millennium' => '$1. tisíciletí',
- 'wikibase-time-precision-century' => '$1. století',
);
/** Church Slavic (словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ)
@@ -3437,7 +3411,7 @@
'wikibase-remove-inprogress' => 'поничьжєниѥ···',
'wikibase-description-empty' => 'опьсаниꙗ ѥщє нѣстъ',
'wikibase-sitelink-site-edit-placeholder' => 'мѣсто',
- 'wikibase-sitelink-page-edit-placeholder' => 'члѣнъ', # Fuzzy
+ 'wikibase-sitelink-page-edit-placeholder' => 'страница',
'wikibase-terms' => 'дроугꙑ ѩꙁꙑкꙑ',
'wikibase-remove' => 'поничьжєниѥ',
'wikibase-aliases-label' => 'вѣдомъ ѥстъ такождє ꙗко :',
@@ -5214,8 +5188,8 @@
'wikibase-dispatchstats-median' => 'Medio',
'wikibase-dispatchstats-average' => 'Media',
'special-listdatatypes' => 'Enumerar todos los tipos de datos
disponibles',
- 'wikibase-listdatatypes-intro' => 'Esta es una lista de todos los tipos
de datos en uso actualmente en esta instalación:',
- 'wikibase-history-title-with-label' => 'Historial de revisiones de "$2"
($1)',
+ 'wikibase-listdatatypes-intro' => 'Esta es una lista de todos los tipos
de datos en uso actualmente en esta instalación:', # Fuzzy
+ 'wikibase-history-title-with-label' => 'Historial de revisiones de «$2»
($1)',
'wikibase-history-title-without-label' => 'Historial de revisiones de
($1)',
'special-entitieswithoutlabel' => 'Entidades sin etiqueta',
'wikibase-entitieswithoutlabel-legend' => 'Obtener la lista de
entidades sin etiqueta',
@@ -5305,6 +5279,7 @@
'content-model-wikibase-item' => 'Elemento de Wikibase',
'content-model-wikibase-property' => 'Propiedad de Wikibase',
'content-model-wikibase-query' => 'Consulta de Wikibase',
+ 'right-item-merge' => 'Combinar elementos',
'right-property-create' => 'Crear propiedades',
);
@@ -18129,7 +18104,7 @@
'wikibase-dispatchstats-stats' => '发送统计',
'wikibase-dispatchstats-change-id' => 'ID',
'wikibase-dispatchstats-change-timestamp' => '时间戳',
- 'wikibase-dispatchstats-oldest-change' => '最早',
+ 'wikibase-dispatchstats-oldest-change' => '最旧',
'wikibase-dispatchstats-newest-change' => '最新',
'wikibase-dispatchstats-site-id' => '网站',
'wikibase-dispatchstats-pos' => '位置',
diff --git a/vendor/autoload.php b/vendor/autoload.php
index 7b4e084..be6f821 100644
--- a/vendor/autoload.php
+++ b/vendor/autoload.php
@@ -4,4 +4,4 @@
require_once __DIR__ . '/composer' . '/autoload_real.php';
-return ComposerAutoloaderInit517ce9f813a8f1d80b8dfdcc1f88dff5::getLoader();
+return ComposerAutoloaderInitabc19352de6a6ec10a4cdef700c1db2c::getLoader();
diff --git a/vendor/composer/autoload_real.php
b/vendor/composer/autoload_real.php
index 21b207e..5cb3f0b 100644
--- a/vendor/composer/autoload_real.php
+++ b/vendor/composer/autoload_real.php
@@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
-class ComposerAutoloaderInit517ce9f813a8f1d80b8dfdcc1f88dff5
+class ComposerAutoloaderInitabc19352de6a6ec10a4cdef700c1db2c
{
private static $loader;
@@ -19,9 +19,9 @@
return self::$loader;
}
-
spl_autoload_register(array('ComposerAutoloaderInit517ce9f813a8f1d80b8dfdcc1f88dff5',
'loadClassLoader'), true, true);
+
spl_autoload_register(array('ComposerAutoloaderInitabc19352de6a6ec10a4cdef700c1db2c',
'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
-
spl_autoload_unregister(array('ComposerAutoloaderInit517ce9f813a8f1d80b8dfdcc1f88dff5',
'loadClassLoader'));
+
spl_autoload_unregister(array('ComposerAutoloaderInitabc19352de6a6ec10a4cdef700c1db2c',
'loadClassLoader'));
$vendorDir = dirname(__DIR__);
$baseDir = dirname($vendorDir);
@@ -45,14 +45,14 @@
$includeFiles = require __DIR__ . '/autoload_files.php';
foreach ($includeFiles as $file) {
- composerRequire517ce9f813a8f1d80b8dfdcc1f88dff5($file);
+ composerRequireabc19352de6a6ec10a4cdef700c1db2c($file);
}
return $loader;
}
}
-function composerRequire517ce9f813a8f1d80b8dfdcc1f88dff5($file)
+function composerRequireabc19352de6a6ec10a4cdef700c1db2c($file)
{
require $file;
}
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 23803b4..ac424ca 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -877,12 +877,12 @@
"source": {
"type": "git",
"url":
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git",
- "reference": "361f7774da3b40e02533708228279654259f603d"
+ "reference": "a5c1b9e581d26fd422afd6e76472f7f399d40fbc"
},
"dist": {
"type": "zip",
- "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/361f7774da3b40e02533708228279654259f603d",
- "reference": "361f7774da3b40e02533708228279654259f603d",
+ "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/a5c1b9e581d26fd422afd6e76472f7f399d40fbc",
+ "reference": "a5c1b9e581d26fd422afd6e76472f7f399d40fbc",
"shasum": ""
},
"require": {
@@ -901,7 +901,7 @@
"wikibase/data-model": "~0.7.2",
"wikibase/easyrdf_lite": "~0.8.1"
},
- "time": "2014-03-21 09:38:56",
+ "time": "2014-03-22 09:43:36",
"type": "mediawiki-extension",
"installation-source": "dist",
"autoload": {
--
To view, visit https://gerrit.wikimedia.org/r/120197
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I1c82d397ba652409a5f363c6b3536cf4f20cda55
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/Wikidata
Gerrit-Branch: master
Gerrit-Owner: WikidataBuilder <[email protected]>
Gerrit-Reviewer: Addshore <[email protected]>
Gerrit-Reviewer: Aude <[email protected]>
Gerrit-Reviewer: Tobias Gritschacher <[email protected]>
Gerrit-Reviewer: WikidataJenkins <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits