diff --git a/Documentation/js-api.txt b/Documentation/js-api.txt index e41eb15e38..fcda916cd8 100644 --- a/Documentation/js-api.txt +++ b/Documentation/js-api.txt @@ -60,6 +60,11 @@ self.get(url, callback) a string, otherwise the result is a JavaScript object or array, as described in the relevant REST API documentation. +[[self_getCurrentUser]] +=== self.getCurrentUser() +Returns the currently signed in user's AccountInfo data; empty account +data if no user is currently signed in. + [[self_getPluginName]] === self.getPluginName() Returns the name this plugin was installed as by the server @@ -625,6 +630,11 @@ Gerrit.get('/changes/?q=status:open', function (open) { }); ---- +[[Gerrit_getCurrentUser]] +=== Gerrit.getCurrentUser() +Returns the currently signed in user's AccountInfo data; empty account +data if no user is currently signed in. + [[Gerrit_getPluginName]] === Gerrit.getPluginName() Returns the name this plugin was installed as by the server diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/ApiGlue.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/ApiGlue.java index b0b9e66334..490edee622 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/ApiGlue.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/ApiGlue.java @@ -16,6 +16,7 @@ package com.google.gerrit.client.api; import com.google.gerrit.client.ErrorDialog; import com.google.gerrit.client.Gerrit; +import com.google.gerrit.client.account.AccountInfo; import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.core.client.JsArray; import com.google.gwt.user.client.History; @@ -66,6 +67,7 @@ public class ApiGlue { refresh: @com.google.gerrit.client.api.ApiGlue::refresh(), refreshMenuBar: @com.google.gerrit.client.api.ApiGlue::refreshMenuBar(), showError: @com.google.gerrit.client.api.ApiGlue::showError(Ljava/lang/String;), + getCurrentUser: @com.google.gerrit.client.api.ApiGlue::getCurrentUser(), on: function (e,f){(this.events[e] || (this.events[e]=[])).push(f)}, onAction: function (t,n,c){this._onAction(this.getPluginName(),t,n,c)}, @@ -194,6 +196,10 @@ public class ApiGlue { Gerrit.display(History.getToken()); } + private static final AccountInfo getCurrentUser() { + return Gerrit.getUserAccountInfo(); + } + private static final void refreshMenuBar() { Gerrit.refreshMenuBar(); } diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/Plugin.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/Plugin.java index 7ef022a62b..8312cc3d88 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/Plugin.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/api/Plugin.java @@ -50,6 +50,7 @@ final class Plugin extends JavaScriptObject { var G = $wnd.Gerrit; @com.google.gerrit.client.api.Plugin::TYPE.prototype = { getPluginName: function(){return this.name}, + getCurrentUser: @com.google.gerrit.client.api.ApiGlue::getCurrentUser(), go: @com.google.gerrit.client.api.ApiGlue::go(Ljava/lang/String;), refresh: @com.google.gerrit.client.api.ApiGlue::refresh(), refreshMenuBar: @com.google.gerrit.client.api.ApiGlue::refreshMenuBar(),