public object Get(LoginProviderEnum provider) { var desktop = HttpContext.Request.Query["desktop"] == "true"; var additionals = new Dictionary <string, string>(); if (desktop) { additionals = HttpContext.Request.Query.ToDictionary(r => r.Key, r => r.Value.FirstOrDefault()); } switch (provider) { case LoginProviderEnum.Google: return(OAuth20TokenHelper.RequestCode <GoogleLoginProvider>( GoogleLoginProvider.GoogleScopeDrive, new Dictionary <string, string> { { "access_type", "offline" }, { "prompt", "consent" } }, additionalStateArgs: additionals)); case LoginProviderEnum.Dropbox: return(OAuth20TokenHelper.RequestCode <DropboxLoginProvider>( additionalArgs: new Dictionary <string, string> { { "force_reauthentication", "true" } }, additionalStateArgs: additionals)); case LoginProviderEnum.Docusign: return(OAuth20TokenHelper.RequestCode <DocuSignLoginProvider>( DocuSignLoginProvider.DocuSignLoginProviderScopes, new Dictionary <string, string> { { "prompt", "login" } }, additionalStateArgs: additionals)); case LoginProviderEnum.Box: return(OAuth20TokenHelper.RequestCode <BoxLoginProvider>(additionalStateArgs: additionals)); case LoginProviderEnum.OneDrive: return(OAuth20TokenHelper.RequestCode <OneDriveLoginProvider>(OneDriveLoginProvider.OneDriveLoginProviderScopes, additionalStateArgs: additionals)); case LoginProviderEnum.Wordpress: return(OAuth20TokenHelper.RequestCode <WordpressLoginProvider>(additionalStateArgs: additionals)); } return(null); }
public object Get(LoginProviderEnum provider) { switch (provider) { case LoginProviderEnum.Google: return(OAuth20TokenHelper.RequestCode <GoogleLoginProvider>( GoogleLoginProvider.GoogleScopeDrive, new Dictionary <string, string> { { "access_type", "offline" }, { "prompt", "consent" } })); case LoginProviderEnum.Dropbox: return(OAuth20TokenHelper.RequestCode <DropboxLoginProvider>( additionalArgs: new Dictionary <string, string> { { "force_reauthentication", "true" } })); case LoginProviderEnum.Docusign: return(OAuth20TokenHelper.RequestCode <DocuSignLoginProvider>(DocuSignLoginProvider.DocuSignLoginProviderScopes, new Dictionary <string, string> { { "prompt", "login" } })); case LoginProviderEnum.Box: return(OAuth20TokenHelper.RequestCode <BoxLoginProvider>()); case LoginProviderEnum.OneDrive: return(OAuth20TokenHelper.RequestCode <OneDriveLoginProvider>(OneDriveLoginProvider.OneDriveLoginProviderScopes)); case LoginProviderEnum.Wordpress: return(OAuth20TokenHelper.RequestCode <WordpressLoginProvider>()); } return(null); }