public async Task <UserProfile> CreateUser(Models.Forms.CreateUser request) { var uri = GetUri($"{ SitecoreUrl}/api/profile/create"); var response = await PostRequest <Models.Forms.CreateUser, UserProfile>(uri, request); return(response); }
public async Task CreateUser(IDialogContext context, LuisResult result) { var isAuthenticated = await context.IsAuthenticated(); if (!isAuthenticated) { context.SetUnauthorizedMessageText(result.Query); await context.Forward(new AuthenticationDialog(), this.ResumeAfterAuth, context.MakeMessage(), CancellationToken.None); } else if (context.IsAdministrator()) { var model = new Models.Forms.CreateUser(); EntityRecommendation emailaddress; if (result.TryFindEntity(Entities.BuiltIn_Email, out emailaddress)) { model.EmailAddress = emailaddress.Entity.ToLowerInvariant(); var suggestedUsername = model.EmailAddress.Split('@')[0]; var exists = await Sitecore(context.AccessToken()).UserExists(suggestedUsername); if (!exists) { model.UserName = suggestedUsername; } } var createUserForm = new FormDialog <Models.Forms.CreateUser>(model, Models.Forms.CreateUser.BuildForm, FormOptions.PromptInStart); context.Call(createUserForm, CreateUser_Callback); } }