Smuggli has submitted this change and it was merged.
Change subject: Implemented changes for translatewiki
......................................................................
Implemented changes for translatewiki
Moved to Json i18n files
Improved messages
Seperated timestamp to date and time
Suggested message is better because the preference is for all users and
not only administrators
Change-Id: I40600068d2015dc8eef46d2aab8ece38bc862ec0
---
M SaferEdit/SaferEdit.class.php
A SaferEdit/i18n/de-formal.json
A SaferEdit/i18n/de.json
A SaferEdit/i18n/en.json
A SaferEdit/i18n/qqq.json
M SaferEdit/languages/SaferEdit.i18n.php
M SaferEdit/resources/bluespice.SaferEdit.editmode.js
7 files changed, 143 insertions(+), 98 deletions(-)
Approvals:
Smuggli: Verified; Looks good to me, approved
Siebrand: Looks good to me, but someone else must approve
diff --git a/SaferEdit/SaferEdit.class.php b/SaferEdit/SaferEdit.class.php
index 98f2a32..a92ce35 100644
--- a/SaferEdit/SaferEdit.class.php
+++ b/SaferEdit/SaferEdit.class.php
@@ -403,6 +403,7 @@
$sOrigText = $wgParser->getSection( $sOrigText,
$iSection );
}
+ $oLang = RequestContext::getMain()->getLanguage();
if ( $iSection != $row['se_edit_section'] ) {
if ( $row['se_edit_section'] == '-1' ) {
$sEditUrl = $oTitle->getEditURL();
@@ -410,16 +411,18 @@
$sEditUrl =
$oTitle->getEditURL()."§ion=".$row['se_edit_section'];
}
$aData = array(
- "ts" =>
BsFormatConverter::mwTimestampToAgeString( $row['se_timestamp'] ),
+ "time" => $oLang->time(
$row['se_timestamp'] ),
+ "date" => $oLang->date(
$row['se_timestamp'] ),
"savedOtherSection" => "1",
"redirect" => $sEditUrl
);
} elseif ( strcmp( $sOrigText,
urldecode($row['se_text'] ) ) == 0 ) {
$aData = array( "notexts" => "1" );
} else {
- $str = urldecode($row['se_text']);
+ $str = urldecode( $row['se_text'] );
$aData = array(
- "ts" =>
BsFormatConverter::mwTimestampToAgeString( $row['se_timestamp'] ),
+ "time" => $oLang->time(
$row['se_timestamp'] ),
+ "date" => $oLang->date(
$row['se_timestamp'] ),
"html" =>
BsCore::getInstance()->parseWikiText( $str,
RequestContext::getMain()->getTitle() ), //breaks on Mainpage
"wiki" => $str,
"section" => $row['se_edit_section'],
diff --git a/SaferEdit/i18n/de-formal.json b/SaferEdit/i18n/de-formal.json
new file mode 100644
index 0000000..d190b05
--- /dev/null
+++ b/SaferEdit/i18n/de-formal.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephan Muggli <[email protected]>"
+ ]
+ },
+ "bs-saferedit-unsavedchanges": "Sie haben noch ungespeicherte
Änderungen.",
+ "bs-saferedit-othersectiontext3": "Möchten Sie zum Seitenabschnitt
wechseln?"
+}
diff --git a/SaferEdit/i18n/de.json b/SaferEdit/i18n/de.json
new file mode 100644
index 0000000..9bf61cc
--- /dev/null
+++ b/SaferEdit/i18n/de.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephan Muggli <[email protected]>"
+ ]
+ },
+ "bs-saferedit-desc": "Bearbeitungen an Seiten werden automatisch
zwischengespeichert",
+ "prefs-saferedit": "Sicheres Bearbeiten",
+ "bs-saferedit-restore": "Wiederherstellen",
+ "bs-saferedit-safer-edit-tooltip": "Es gibt eine
Wiederherstellungsversion.",
+ "bs-saferedit-safer-edit-topbar": "Wiederherstellung",
+ "bs-saferedit-user-editing": "$1 bearbeitet die Seite gerade",
+ "bs-saferedit-someone-editing": "Die Seite wird gerade bearbeitet",
+ "bs-saferedit-pref-interval": "Intervall der Zwischenspeicherung:",
+ "bs-saferedit-pref-shownameofeditinguser": "Name des aktuellen
Bearbeiters anzeigen",
+ "bs-saferedit-pref-warnonleave": "Warnung bei ungespeicherten Inhalten",
+ "bs-saferedit-pref-usese": "Sicheres Bearbeiten aktivieren",
+ "bs-saferedit-statebartopsaferedit": "Sicheres Bearbeiten",
+ "bs-saferedit-statebartopsafereditediting": "Sicheres Bearbeiten - In
Bearbeitung",
+ "bs-saferedit-lastsavedversion": "Sicherungsversion vom $1 - $2",
+ "bs-saferedit-unsavedchanges": "Es gibt noch ungespeicherte
Änderungen.",
+ "bs-saferedit-othersectiontitle": "Sicherung in einem anderen
Seitenabschnitt.",
+ "bs-saferedit-othersectiontext1": "Es gibt eine Sicherung eines
Seiten-Abschnitts.",
+ "bs-saferedit-othersectiontext2": "Sicherungsversion wurde erstellt am
$1 - $2",
+ "bs-saferedit-othersectiontext3": "Möchtest Du zum Seitenabschnitt
wechseln?"
+}
diff --git a/SaferEdit/i18n/en.json b/SaferEdit/i18n/en.json
new file mode 100644
index 0000000..ad796e9
--- /dev/null
+++ b/SaferEdit/i18n/en.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephan Muggli <[email protected]>"
+ ]
+ },
+ "bs-saferedit-desc": "Intermediate saving of edits",
+ "prefs-saferedit": "Safer editing",
+ "bs-saferedit-restore": "Restore",
+ "bs-saferedit-safer-edit-tooltip": "A recovery version is available.",
+ "bs-saferedit-safer-edit-topbar": "Recovery",
+ "bs-saferedit-user-editing": "$1 is {{GENDER:$1|editing}} the page",
+ "bs-saferedit-someone-editing": "The page is being edited",
+ "bs-saferedit-pref-interval": "Recovery version interval:",
+ "bs-saferedit-pref-shownameofeditinguser": "Show name of current
editor",
+ "bs-saferedit-pref-warnonleave": "Warn me when I leave an edit page
with unsaved changes",
+ "bs-saferedit-pref-usese": "Activate safer editing",
+ "bs-saferedit-statebartopsaferedit": "Safer editing",
+ "bs-saferedit-statebartopsafereditediting": "Safer editing - someone is
editing",
+ "bs-saferedit-lastsavedversion": "Last saved version from $1 - $2.",
+ "bs-saferedit-unsavedchanges": "There are unsaved changes.",
+ "bs-saferedit-othersectiontitle": "Section to restore",
+ "bs-saferedit-othersectiontext1": "There is a backup of another
section.",
+ "bs-saferedit-othersectiontext2": "The backup was created on $1 - $2.",
+ "bs-saferedit-othersectiontext3": "Do you want to switch to that
section?"
+}
diff --git a/SaferEdit/i18n/qqq.json b/SaferEdit/i18n/qqq.json
new file mode 100644
index 0000000..50a556b
--- /dev/null
+++ b/SaferEdit/i18n/qqq.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephan Muggli <[email protected]>"
+ ]
+ },
+ "bs-saferedit-desc": "Used in
[[Special:Wiki_Admin&mode=ExtensionInfo]], description of pages visited
extension",
+ "prefs-saferedit": "Used in [[Special:Wiki_Admin&mode=Preferences]],
headline for safer edit section in preferences.\n{{Identical|Safer editing}}",
+ "bs-saferedit-restore": "Button label for
restore\n{{Identical|Restore}}",
+ "bs-saferedit-safer-edit-tooltip": "Text for a recovery version is
available.",
+ "bs-saferedit-safer-edit-topbar": "Window title for
recovery\n{{Identical|Recovery}}",
+ "bs-saferedit-user-editing": "Text in top bar for $1 is
{{GENDER:$1|editing}} the page \n $1 is the user name of the user who is
editing the page at the moment.\nNo punctuation needed.",
+ "bs-saferedit-someone-editing": "Text in top bar for the page is being
edited\n No punctuation needed.",
+ "bs-saferedit-pref-interval": "Option in
[[Special:Wiki_Admin&mode=Preferences]], label for recovery version interval:",
+ "bs-saferedit-pref-shownameofeditinguser": "Option in
[[Special:Wiki_Admin&mode=Preferences]], checkbox label for show name of
current editor",
+ "bs-saferedit-pref-warnonleave": "Option in
[[Special:Wiki_Admin&mode=Preferences]], checkbox label for warn me when I
leave an edit page with unsaved changes",
+ "bs-saferedit-pref-usese": "Option in
[[Special:Wiki_Admin&mode=Preferences]], checkbox label for activate safer
editing",
+ "bs-saferedit-statebartopsaferedit": "Option in
[[Special:Wiki_Admin&mode=Preferences]], label for safer editing",
+ "bs-saferedit-statebartopsafereditediting": "Option in
[[Special:Wiki_Admin&mode=Preferences]], label for safer editing - someone is
editing",
+ "bs-saferedit-lastsavedversion": "Text for last saved version from $1 -
$2.\n $1 is the date of the last saved version, $2 is the time of the the last
saved version.",
+ "bs-saferedit-unsavedchanges": "Text for there are unsaved changes.",
+ "bs-saferedit-othersectiontitle": "Window title for section to restore",
+ "bs-saferedit-othersectiontext1": "Text for there is a backup of
another section.",
+ "bs-saferedit-othersectiontext2": "Text for the backup was created on
$1.\n $1 is the date when the backup was created, $2 is the time when the
backup was created.",
+ "bs-saferedit-othersectiontext3": "Text for do you want to switch to
that section?"
+}
diff --git a/SaferEdit/languages/SaferEdit.i18n.php
b/SaferEdit/languages/SaferEdit.i18n.php
index b7fc604..c63516e 100644
--- a/SaferEdit/languages/SaferEdit.i18n.php
+++ b/SaferEdit/languages/SaferEdit.i18n.php
@@ -1,87 +1,35 @@
<?php
/**
- * Internationalisation file for SaferEdit
+ * This is a backwards-compatibility shim, generated by:
+ *
https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
*
- * Part of BlueSpice for MediaWiki
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
*
- * @author Stephan Muggli <[email protected]>
-
- * @package BlueSpice_Extensions
- * @subpackage SaferEdit
- * @copyright Copyright (C) 2012 Hallo Welt! - Medienwerkstatt GmbH, All
rights reserved.
- * @license http://www.gnu.org/copyleft/gpl.html GNU Public License v2 or
later
- * @filesource
+ * This shim maintains compatibility back to MediaWiki 1.17.
*/
-
$messages = array();
+if ( !function_exists( 'wfJsonI18nShim68062767c48a4042' ) ) {
+ function wfJsonI18nShim68062767c48a4042( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ),
$cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) .
"/../i18n/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents(
$fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data,
$cachedData['messages'] );
+ }
-$messages['de'] = array(
- 'bs-saferedit-desc' => 'Bearbeitungen an Seiten werden
automatisch zwischengespeichert',
- 'prefs-saferedit' => 'Sicheres Bearbeiten',
- 'bs-saferedit-restore' => 'Wiederherstellen',
- 'bs-saferedit-safer-edit-tooltip' => 'Es gibt eine
Wiederherstellungsversion.',
- 'bs-saferedit-safer-edit-topbar' => 'Wiederherstellung',
- 'bs-saferedit-user-editing' => '$1 bearbeitet die Seite gerade',
- 'bs-saferedit-someone-editing' => 'Die Seite wird gerade
bearbeitet',
- 'bs-saferedit-pref-interval' => 'Intervall der
Zwischenspeicherung:',
- 'bs-saferedit-pref-shownameofeditinguser' => 'Name des aktuellen
Bearbeiters anzeigen',
- 'bs-saferedit-pref-warnonleave' => 'Warnung bei
ungespeicherten Inhalten',
- 'bs-saferedit-pref-usese' => 'Sicheres Bearbeiten
aktivieren',
- 'bs-saferedit-statebartopsaferedit' => 'Sicheres Bearbeiten',
- 'bs-saferedit-statebartopsafereditediting' => 'Sicheres Bearbeiten - In
Bearbeitung',
- 'bs-saferedit-lastsavedversion' => 'Alter der Sicherungsversion: $1',
- 'bs-saferedit-unsavedchanges' => 'Es gibt noch ungespeicherte
Änderungen.',
- 'bs-saferedit-othersectiontitle' => 'Sicherung in einem anderen
Seitenabschnitt.',
- 'bs-saferedit-othersectiontext1' => 'Es gibt eine Sicherung eines
Seiten-Abschnitts.',
- 'bs-saferedit-othersectiontext2' => 'Sicherungsversion wurde erstellt
am $1',
- 'bs-saferedit-othersectiontext3' => 'Möchtest Du zum Seitenabschnitt
wechseln?'
-);
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
-$messages['de-formal'] = array(
- 'bs-saferedit-unsavedchanges' => 'Sie haben noch ungespeicherte
Änderungen.',
- 'bs-saferedit-othersectiontext3' => 'Möchten Sie zum Seitenabschnitt
wechseln?'
-);
-
-$messages['en'] = array(
- 'bs-saferedit-desc' => 'Intermediate saving of edits',
- 'prefs-saferedit' => 'Safer editing',
- 'bs-saferedit-restore' => 'Restore',
- 'bs-saferedit-safer-edit-tooltip' => 'There is a recovery
version.',
- 'bs-saferedit-safer-edit-topbar' => 'Recovery',
- 'bs-saferedit-user-editing' => '$1 is {{GENDER:$1|editing}} the
page',
- 'bs-saferedit-someone-editing' => 'The page is being edited',
- 'bs-saferedit-pref-interval' => 'Interval of intermediate
saving:',
- 'bs-saferedit-pref-shownameofeditinguser' => 'Show name of current
editor',
- 'bs-saferedit-pref-warnonleave' => 'Warn user when unsaved
changes',
- 'bs-saferedit-pref-usese' => 'Activate safer editing',
- 'bs-saferedit-statebartopsaferedit' => 'Safer editing',
- 'bs-saferedit-statebartopsafereditediting' => 'Safer editing - someone
is editing',
- 'bs-saferedit-lastsavedversion' => 'Last saved version: $1',
- 'bs-saferedit-unsavedchanges' => 'There are unsaved changes.',
- 'bs-saferedit-othersectiontitle' => 'Section to restore',
- 'bs-saferedit-othersectiontext1' => 'There is a backup of another
section.',
- 'bs-saferedit-othersectiontext2' => 'The backup was created on $1.',
- 'bs-saferedit-othersectiontext3' => 'Do you want to switch to that
section?'
-);
-
-$messages['qqq'] = array(
- 'bs-saferedit-desc' => 'Used in
[[Special:Wiki_Admin&mode=ExtensionInfo]], description of pages visited
extension',
- 'prefs-saferedit' => 'Used in
[[Special:Wiki_Admin&mode=Preferences]], headline for safer edit section in
preferences.\n{{Identical|Safer editing}}',
- 'bs-saferedit-restore' => 'Button label for
restore\n{{Identical|Restore}}',
- 'bs-saferedit-safer-edit-tooltip' => 'Text for there is a
recovery version.',
- 'bs-saferedit-safer-edit-topbar' => 'Text for
recovery\n{{Identical|Recovery}}',
- 'bs-saferedit-user-editing' => 'Text for $1 is
{{GENDER:$1|editing}} the page \n $1 is the user name of the user who is
editing the page at the moment.\nNo punctuation needed.',
- 'bs-saferedit-someone-editing' => 'Text for the page is being
edited\n No punctuation needed.',
- 'bs-saferedit-pref-interval' => 'Option in
[[Special:Wiki_Admin&mode=Preferences]], label for interval of intermediate
saving:',
- 'bs-saferedit-pref-shownameofeditinguser' => 'Option in
[[Special:Wiki_Admin&mode=Preferences]], checkbox label for show name of
current editor',
- 'bs-saferedit-pref-warnonleave' => 'Option in
[[Special:Wiki_Admin&mode=Preferences]], checkbox label for warn user when
unsaved changes',
- 'bs-saferedit-pref-usese' => 'Option in
[[Special:Wiki_Admin&mode=Preferences]], checkbox label for activate safer
editing',
- 'bs-saferedit-statebartopsaferedit' => 'Option in
[[Special:Wiki_Admin&mode=Preferences]], label for safer editing',
- 'bs-saferedit-statebartopsafereditediting' => 'Option in
[[Special:Wiki_Admin&mode=Preferences]], label for safer editing - someone is
editing',
- 'bs-saferedit-lastsavedversion' => 'Text for last saved version: $1',
- 'bs-saferedit-unsavedchanges' => 'Text for there are unsaved
changes.',
- 'bs-saferedit-othersectiontitle' => 'Window title for section to
restore',
- 'bs-saferedit-othersectiontext1' => 'Text for there is a backup of
another section.',
- 'bs-saferedit-othersectiontext2' => 'Text for the backup was created on
$1.',
- 'bs-saferedit-othersectiontext3' => 'Text for do you want to switch to
that section?'
-);
\ No newline at end of file
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] =
'wfJsonI18nShim68062767c48a4042';
+}
diff --git a/SaferEdit/resources/bluespice.SaferEdit.editmode.js
b/SaferEdit/resources/bluespice.SaferEdit.editmode.js
index ee2593e..cd8c7d0 100644
--- a/SaferEdit/resources/bluespice.SaferEdit.editmode.js
+++ b/SaferEdit/resources/bluespice.SaferEdit.editmode.js
@@ -62,10 +62,15 @@
*/
win: false,
/**
- * Timestamp of saved version in restore dialogue
+ * Time of saved version in restore dialogue
* @var string Rendered timestamp, currently age of stored release
*/
- savedTS: '',
+ savedTime: '',
+ /**
+ * Date of saved version in restore dialogue
+ * @var string Rendered timestamp, currently age of stored release
+ */
+ savedDate: '',
/**
* Rendered HTML of saved version that is displayed in restore dialogue
* @var string Rendered HTML
@@ -115,7 +120,7 @@
items: [
{
xtype: 'tbtext',
- text:
mw.message('bs-saferedit-lastsavedversion', BsSaferEditEditMode.savedTS).plain()
+ text:
mw.message('bs-saferedit-lastsavedversion', BsSaferEditEditMode.savedDate,
BsSaferEditEditMode.savedTime).plain()
}
]
}, {
@@ -189,14 +194,14 @@
text = '';
}
}
- BSPing.registerListener(
- 'SaferEditSave',
- BsSaferEditEditMode.interval,
+ BSPing.registerListener(
+ 'SaferEditSave',
+ BsSaferEditEditMode.interval,
[{
text: text,
section: bsSaferEditEditSection
- }],
- BsSaferEditEditMode.saveTextListener
+ }],
+ BsSaferEditEditMode.saveTextListener
);
},
@@ -210,7 +215,7 @@
{
titleMsg: 'bs-saferedit-othersectiontitle',
text:
mw.message('bs-saferedit-othersectiontext1').plain() + '<br/>' +
-
mw.message('bs-saferedit-othersectiontext2', BsSaferEditEditMode.savedTS
).plain() + '<br />' +
+
mw.message('bs-saferedit-othersectiontext2', BsSaferEditEditMode.savedDate,
BsSaferEditEditMode.savedTime ).plain() + '<br />' +
mw.message('bs-saferedit-othersectiontext3').plain()
},
{
@@ -224,16 +229,16 @@
}
);
},
-
+
getText: function( mode ) {
var text = '';
switch (mode) {
case "VisualEditor":
- text = $('wpTextbox1').val();
+ text = $('wpTextbox1').val();
break;
case "MW":
- text =
tinyMCE.activeEditor.getContent({save:true});
+ text =
tinyMCE.activeEditor.getContent({save:true});
break;
default: //detect
if( typeof VisualEditorMode !== 'undefined' &&
VisualEditorMode ) {
@@ -264,12 +269,14 @@
if ( oResponse.notexts == "1" )
return;
if (
oResponse.savedOtherSection == "1" ) {
-
BsSaferEditEditMode.savedTS = oResponse.ts;
+
BsSaferEditEditMode.savedTime = oResponse.time;
+
BsSaferEditEditMode.savedDate = oResponse.date;
BsSaferEditEditMode.redirect = oResponse.redirect;
BsSaferEditEditMode.showRedirect();
return;
}
- BsSaferEditEditMode.savedTS =
oResponse.ts;
+ BsSaferEditEditMode.savedTime =
oResponse.time;
+ BsSaferEditEditMode.savedDate =
oResponse.date;
BsSaferEditEditMode.savedHTML =
unescape(oResponse.html);
BsSaferEditEditMode.savedWikiCode = unescape(oResponse.wiki);
@@ -311,7 +318,7 @@
*/
saveText: function() {
var text = BsSaferEditEditMode.getText();
-
+
if( BsSaferEditEditMode.canceledByUser ) return;
if( BsSaferEditEditMode.oldText != text ) {
@@ -405,7 +412,7 @@
hasUnsavedChanges: function(mode) {
var text = BsSaferEditEditMode.getText( mode );
-
+
if ( text.trim() != BsSaferEditEditMode.origText.trim() ) {
BsSaferEditEditMode.isUnsaved = true;
return true;
--
To view, visit https://gerrit.wikimedia.org/r/144943
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I40600068d2015dc8eef46d2aab8ece38bc862ec0
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/BlueSpiceExtensions
Gerrit-Branch: master
Gerrit-Owner: Smuggli <[email protected]>
Gerrit-Reviewer: Mglaser <[email protected]>
Gerrit-Reviewer: Pigpen <[email protected]>
Gerrit-Reviewer: Robert Vogel <[email protected]>
Gerrit-Reviewer: Siebrand <[email protected]>
Gerrit-Reviewer: Smuggli <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits