Kunalgrover05 has uploaded a new change for review.
https://gerrit.wikimedia.org/r/151861
Change subject: Update translation pages on deleting translation unit
......................................................................
Update translation pages on deleting translation unit
Bug: 39415
Change-Id: I860d41e65392ae40c1183ef1598d3b408d7115de
---
M TranslateHooks.php
M tag/PageTranslationHooks.php
M tag/TranslateDeleteJob.php
3 files changed, 26 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Translate
refs/changes/61/151861/1
diff --git a/TranslateHooks.php b/TranslateHooks.php
index 0f8a355..48daad6 100644
--- a/TranslateHooks.php
+++ b/TranslateHooks.php
@@ -171,6 +171,9 @@
// Update translated page when translation unit is moved
$wgHooks['TitleMoveComplete'][] =
'PageTranslationHooks::onMoveTranslationUnits';
+
+ // Update translated page when translation unit is
deleted
+ $wgHooks['ArticleDeleteComplete'][] =
'PageTranslationHooks::onDeleteTranslationUnits';
}
}
diff --git a/tag/PageTranslationHooks.php b/tag/PageTranslationHooks.php
index 27df11a..946ac93 100644
--- a/tag/PageTranslationHooks.php
+++ b/tag/PageTranslationHooks.php
@@ -918,4 +918,25 @@
}
}
}
+
+ /**
+ * Hook to update source and destination translation pages on deleting
translation units
+ * Hook: ArticleDeleteComplete
+ * @since 2014.08
+ */
+ public static function onDeleteTranslationUnits( WikiPage &$unit, User
&$user, $reason,
+ $id, $content, $logEntry
+ ) {
+ // Do the update. In case job queue is doing the work, the
update is not done here
+ if ( !self::$jobQueueRunning ) {
+ $title = $unit->getTitle();
+ $handle = new MessageHandle( $title );
+ if ( $handle->isValid() ) {
+ $language = $handle->getCode();
+ $group = $handle->getGroup();
+ $page = TranslatablePage::newFromTitle(
$group->getTitle() );
+ self::updateTranslationPage( $page, $language,
$user, '', $reason );
+ }
+ }
+ }
}
diff --git a/tag/TranslateDeleteJob.php b/tag/TranslateDeleteJob.php
index 177721d..62582a8 100644
--- a/tag/TranslateDeleteJob.php
+++ b/tag/TranslateDeleteJob.php
@@ -47,6 +47,7 @@
$doer = User::newFromName( $this->getPerformer() );
PageTranslationHooks::$allowTargetEdit = true;
+ PageTranslationHooks::$jobQueueRunning = true;
$error = '';
$wikipage = new WikiPage( $title );
@@ -87,6 +88,7 @@
$page->invalidateCache();
}
$title->invalidateCache();
+ PageTranslationHooks::$jobQueueRunning = false;
}
return true;
--
To view, visit https://gerrit.wikimedia.org/r/151861
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I860d41e65392ae40c1183ef1598d3b408d7115de
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Translate
Gerrit-Branch: master
Gerrit-Owner: Kunalgrover05 <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits