Avoid hardcoded OAuth scope request.

Do not use an hardcoded "scope:user" OAuth scope 
but fetch from the configured github.scopes 
settings in gerrit.config.

Change-Id: I58cfed1f0111da511e1f9e950de66ab0a599779e
diff --git a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/filters/GitHubOAuthFilter.java b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/filters/GitHubOAuthFilter.java
index 0db3fee..f8bb6da 100644
--- a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/filters/GitHubOAuthFilter.java
+++ b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/filters/GitHubOAuthFilter.java
@@ -26,16 +26,20 @@
 import com.google.inject.Provider;
 import com.google.inject.Singleton;
 import com.googlesource.gerrit.plugins.github.oauth.GitHubLogin;
+import com.googlesource.gerrit.plugins.github.oauth.GitHubOAuthConfig;
 import com.googlesource.gerrit.plugins.github.oauth.OAuthProtocol.Scope;
 
 @Singleton
 public class GitHubOAuthFilter implements Filter {
 
   private final Provider<GitHubLogin> loginProvider;
+  private final Scope[] authScopes;
 
   @Inject
-  public GitHubOAuthFilter(final Provider<GitHubLogin> loginProvider) {
+  public GitHubOAuthFilter(final Provider<GitHubLogin> loginProvider,
+      final GitHubOAuthConfig githubOAuthConfig) {
     this.loginProvider = loginProvider;
+    this.authScopes = githubOAuthConfig.scopes.toArray(new Scope[0]);
   }
 
   @Override
@@ -46,8 +50,8 @@
   public void doFilter(ServletRequest request, ServletResponse response,
       FilterChain chain) throws IOException, ServletException {
     GitHubLogin hubLogin = loginProvider.get();
-    if (!hubLogin.isLoggedIn(Scope.USER)) {
-      hubLogin.login(request, response, Scope.USER);
+    if (!hubLogin.isLoggedIn(authScopes)) {
+      hubLogin.login(request, response, authScopes);
       return;
     } else {
       chain.doFilter(request, response);