public bool ShowOAuthPrompt()
        {
            var oauthViewModel = new OAuthViewModel();

            bool useOAuth = _gui.ShowDialogWindow(oauthViewModel, () => new OAuthControl());

            return(useOAuth);
        }
        /// <summary>
        /// Opens a modal UI prompting the user to run the OAuth dance.
        /// </summary>
        /// <param name="title"></param>
        /// <param name="targetUri">contains the URL etc of the Authority</param>
        /// <param name="resultType"></param>
        /// <param name="username"></param>
        /// <returns>
        /// returns true if the user successfully completes the OAuth dance and the returned
        /// access_token is validated, false otherwise
        /// </returns>
        public static bool AuthenticationOAuthModalPrompt(string title, TargetUri targetUri, AuthenticationResultType resultType, string username)
        {
            var oauthViewModel = new OAuthViewModel(resultType == AuthenticationResultType.TwoFactor);

            Trace.WriteLine("prompting user for authentication code.");

            bool useOAuth = ShowViewModel(oauthViewModel, () => new OAuthWindow());

            return(useOAuth);
        }
Example #3
0
        private void ShowOAuth(object sender, RoutedEventArgs e)
        {
            var vm     = new OAuthViewModel(_environment);
            var view   = new OAuthView();
            var window = new DialogWindow(view)
            {
                DataContext = vm
            };

            window.ShowDialog();
        }
        public async Task <HttpResponseMessage> GraphTestAsync()
        {
            MicrosoftGraphProvider _microsoftGraphProvider = new MicrosoftGraphProvider();
            OAuthViewModel         objresult = new OAuthViewModel();
            string emailOrObjectId           = ConfigurationManager.AppSettings["EmailOrObjectId"];
            string fileNameOrObjectId        = ConfigurationManager.AppSettings["FileNameOrObjectId"];

            //conseguir usuario
            var ResponseData = await _microsoftGraphProvider.GetIdByEmail(emailOrObjectId);

            if (ResponseData.Status.Code != 200)
            {
                objresult.OnboardingOAuthData = new { ServiceResponse = false };
                objresult.HttpResponse        = new { Code = ResponseData.Status.Code, Message = "Error usuario: " + ResponseData.Status.Message };
                return(Request.CreateResponse(HttpStatusCode.OK, objresult));
            }

            //descargar archivo .docx
            var ResponseDataFile = await _microsoftGraphProvider.GetFileStreamByUserId(ResponseData, emailOrObjectId, fileNameOrObjectId);

            if (ResponseDataFile.Status.Code != 200)
            {
                objresult.OnboardingOAuthData = new { ServiceResponse = false };
                objresult.HttpResponse        = new { Code = ResponseDataFile.Status.Code, Message = "Error descarga: " + ResponseDataFile.Status.Message };
                return(Request.CreateResponse(HttpStatusCode.OK, objresult));
            }

            //Subir archivo .docx
            var ResponseDataUpload = await _microsoftGraphProvider.UploadFileOneDrive(ResponseDataFile, emailOrObjectId, fileNameOrObjectId);

            if (ResponseDataUpload.Status.Code != 200)
            {
                objresult.OnboardingOAuthData = new { ServiceResponse = false };
                objresult.HttpResponse        = new { Code = ResponseDataFile.Status.Code, Message = "Error subida: " + ResponseDataFile.Status.Message };
                return(Request.CreateResponse(HttpStatusCode.OK, objresult));
            }

            //Descargar como .pdf
            var PdfResponseFile = await _microsoftGraphProvider.ConvertFileToPdf(ResponseDataUpload, emailOrObjectId, fileNameOrObjectId);

            if (PdfResponseFile.Status.Code != 200)
            {
                objresult.OnboardingOAuthData = new { ServiceResponse = false };
                objresult.HttpResponse        = new { Code = ResponseDataUpload.Status.Code, Message = "Error descarga pdf: " + ResponseDataUpload.Status.Message };
                return(Request.CreateResponse(HttpStatusCode.OK, objresult));
            }

            objresult.OnboardingOAuthData = new { ServiceResponse = true };
            objresult.HttpResponse        = new { Code = ResponseData.Status.Code, Message = "Ok" };
            return(Request.CreateResponse(HttpStatusCode.OK, objresult));
        }
Example #5
0
        private async Task <int> ExecuteAsync()
        {
            var viewModel = new OAuthViewModel(Context.Environment);
            await AvaloniaUi.ShowViewAsync <OAuthView>(viewModel, GetParentHandle(), CancellationToken.None);

            if (!viewModel.WindowResult)
            {
                throw new Exception("User cancelled dialog.");
            }

            WriteResult(new Dictionary <string, string>
            {
                ["continue"] = "true"
            });

            return(0);
        }
 protected abstract Task ShowAsync(OAuthViewModel viewModel, CancellationToken ct);
Example #7
0
 protected override Task ShowAsync(OAuthViewModel viewModel, CancellationToken ct)
 {
     return(Gui.ShowDialogWindow(viewModel, () => new OAuthView(), GetParentHandle()));
 }
Example #8
0
 private void Focus(object sender, EventArgs e)
 {
     BindingContext = new OAuthViewModel();
 }
Example #9
0
 protected override Task ShowAsync(OAuthViewModel viewModel, CancellationToken ct)
 {
     return(AvaloniaUi.ShowViewAsync <OAuthView>(viewModel, GetParentHandle(), ct));
 }