private IForm <RegistrationQuery> BuildRegistrationForm() { OnCompletionAsyncDelegate <RegistrationQuery> processRegistration = async(context, state) => { string waiting = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_WaitingForImage}", Settings.SpecificLanguage); await context.PostAsync(waiting); context.PrivateConversationData.SetValue(REGISTRATIONDATA, state); }; RegistrationQueryAllText res = null; Task.Run(BuildAsync).ContinueWith((b) => { res = b.Result; }).Wait(); return(new FormBuilder <RegistrationQuery>() .Field(nameof(RegistrationQuery.Name), res.Name) .Field(nameof(RegistrationQuery.Lastname), res.Lastname) .Field(nameof(RegistrationQuery.Country), res.CountryText) .Field(nameof(RegistrationQuery.LocationOfLost), res.LocationOfLost) .Field(nameof(RegistrationQuery.DateOfLost), res.DateOfLost) .Field(nameof(RegistrationQuery.ReportId), res.ReportId) .Field(nameof(RegistrationQuery.ReportedBy), res.ReportedBy) .Field(nameof(RegistrationQuery.Genre), res.GenreText) .OnCompletion(processRegistration) .Build()); }
private async Task <RegistrationQueryAllText> BuildAsync() { RegistrationQueryAllText result = new RegistrationQueryAllText(); result.Name = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_Name}", Settings.SpecificLanguage); result.Lastname = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_Lastname}", Settings.SpecificLanguage); result.CountryText = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_Country}", Settings.SpecificLanguage); result.LocationOfLost = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_LocationOfLost}", Settings.SpecificLanguage); result.DateOfLost = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_DateOfLost}", Settings.SpecificLanguage); result.ReportId = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_ReportId}", Settings.SpecificLanguage); result.ReportedBy = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_ReportedBy}", Settings.SpecificLanguage); result.GenreText = await TranslatorHelper.TranslateSentenceAsync($"{Resources.Resource.Registration_Genre}", Settings.SpecificLanguage); return(result); }