Sitic has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/229627

Change subject: Set uselang in MW API for diffs and notifcations
......................................................................

Set uselang in MW API for diffs and notifcations

Sets uselang MW API paramter for notification and diffs so that
the language is the same as in crosswatch.

Change-Id: I9196d59867e4c685c149f721ee836ab03bfb2c61
---
M backend/celery/api.py
M backend/celery/tasks.py
M frontend/src/app/services.js
3 files changed, 16 insertions(+), 11 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/labs/tools/crosswatch 
refs/changes/27/229627/1

diff --git a/backend/celery/api.py b/backend/celery/api.py
index 6d65fe4..54a13c4 100644
--- a/backend/celery/api.py
+++ b/backend/celery/api.py
@@ -151,7 +151,7 @@
         response = self.query(params)
         return response['query']['users'][0]['rights']
 
-    def diff(self, pageid, old_revid, new_revid):
+    def diff(self, pageid, old_revid, new_revid, uselang=""):
         params = {
             'action': "query",
             'prop': "revisions",
@@ -159,6 +159,7 @@
             'rvendid': old_revid,
             'rvdiffto': new_revid,
             'pageids': pageid,
+            'uselang': uselang,
             'formatversion': 2
         }
 
diff --git a/backend/celery/tasks.py b/backend/celery/tasks.py
index 841a83d..5e2688b 100644
--- a/backend/celery/tasks.py
+++ b/backend/celery/tasks.py
@@ -176,7 +176,7 @@
 
 
 @app.task
-def notificationgetter(**kwargs):
+def notificationgetter(uselang="", **kwargs):
     """Get the echo notifications for a wiki"""
     wiki = kwargs['wiki']
     access_token = kwargs['access_token']
@@ -192,7 +192,8 @@
         'notformat': "html",
         'notalertunreadfirst': "",
         'notmessagecontinue': "",
-        'notlimit': 15
+        'notlimit': 15,
+        'uselang': uselang
     }
     response = mw.query(params)
 
@@ -243,7 +244,7 @@
 
 
 @app.task
-def get_diff(access_token=None, redis_channel=None, **kwargs):
+def get_diff(access_token=None, redis_channel=None, uselang="", **kwargs):
     """Get a diff for a wiki page"""
     projecturl = kwargs['projecturl']
     pageid = kwargs['pageid']
@@ -255,7 +256,7 @@
                    access_token=access_token,
                    redis_channel=redis_channel)
 
-    diff = mw.diff(pageid, old_revid, revid)
+    diff = mw.diff(pageid, old_revid, revid, uselang=uselang)
     mw.publish({
         'msgtype': 'response',
         'request_id': request_id,
@@ -319,7 +320,7 @@
 
 
 @app.task
-def _ores_diff(edit, probablity, **kwargs):
+def _ores_diff(edit, probablity, uselang="", **kwargs):
     wiki = kwargs['wiki']
     access_token = kwargs['access_token']
     redis_channel = kwargs['redis_channel']
@@ -331,7 +332,7 @@
     if mw.was_reverted(edit):
         return
 
-    diff = mw.diff(edit['pageid'], edit['old_revid'], edit['revid'])
+    diff = mw.diff(edit['pageid'], edit['old_revid'], edit['revid'], uselang)
     mw.publish({
         'msgtype': "ores_scores",
         'id': edit['id'],
@@ -341,7 +342,7 @@
 
 
 @app.task
-def flagged_revs(watchlist_params, items, **kwargs):
+def flagged_revs(watchlist_params, items, uselang="", **kwargs):
     wiki = kwargs['wiki']
     access_token = kwargs['access_token']
     redis_channel = kwargs['redis_channel']
@@ -377,7 +378,8 @@
         for item in items:
             if item['type'] == 'edit' and pageid == item['pageid'] and \
                             stable_revid < item['revid']:
-                diff = mw.diff(pageid, item['old_revid'], item['revid'])
+                diff = mw.diff(pageid, item['old_revid'], item['revid'],
+                               uselang=uselang)
                 mw.publish({
                     'msgtype': "flaggedrevs",
                     'id': item['id'],
diff --git a/frontend/src/app/services.js b/frontend/src/app/services.js
index 9ea7c70..1859ce2 100644
--- a/frontend/src/app/services.js
+++ b/frontend/src/app/services.js
@@ -27,7 +27,7 @@
   };
 }
 
-function dataService (socket, authService, localStorageService, $log, $filter, 
debounce, $q) {
+function dataService (socket, authService, localStorageService, $log, $filter, 
debounce, $q, $translate) {
   var vm = this;
 
   vm.watchlist = {};
@@ -262,7 +262,8 @@
         access_token: authService.tokens(),
         watchlistperiod: vm.config.watchlistperiod,
         allrev: !vm.config.lastrevonly,
-        projects: vm.config.projectsList
+        projects: vm.config.projectsList,
+        uselang: $translate.use() || ""
       };
       try {
         socket.send(angular.toJson(watchlistQuery));
@@ -292,6 +293,7 @@
   vm.query = function (params) {
     params.request_id = vm.getRequestId();
     params.access_token = authService.tokens();
+    params.uselang = $translate.use() || "";
 
     var deferred = $q.defer();
     callbacks[params.request_id] = deferred;

-- 
To view, visit https://gerrit.wikimedia.org/r/229627
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9196d59867e4c685c149f721ee836ab03bfb2c61
Gerrit-PatchSet: 1
Gerrit-Project: labs/tools/crosswatch
Gerrit-Branch: master
Gerrit-Owner: Sitic <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to