/// <summary> /// Eventhandler, der kaldes, når properties ændres på ViewModel for konfiguration til finansstyring. /// </summary> /// <param name="sender">Objekt, der rejser eventet.</param> /// <param name="eventArgs">Argumenter til eventet.</param> private void FinansstyringKonfigurationPropertyChangedEventHandler(object sender, PropertyChangedEventArgs eventArgs) { if (sender == null) { throw new ArgumentNullException("sender"); } if (eventArgs == null) { throw new ArgumentNullException("sender"); } var finansstyringKonfiguration = sender as IFinansstyringKonfigurationViewModel; if (finansstyringKonfiguration == null) { return; } if (!ViewModelValidator.Validate(finansstyringKonfiguration, eventArgs.PropertyName)) { return; } switch (eventArgs.PropertyName) { case "FinansstyringServiceUri": ConfigurationProvider.SetValue("FinansstyringServiceUri", finansstyringKonfiguration.FinansstyringServiceUri); break; case "AntalBogføringslinjer": ConfigurationProvider.SetValue("AntalBogføringslinjer", finansstyringKonfiguration.AntalBogføringslinjer); break; case "DageForNyheder": ConfigurationProvider.SetValue("DageForNyheder", finansstyringKonfiguration.DageForNyheder); break; } }
public virtual async Task <ActionResult> Index(FormCollection formValues) { BicycleQuote quote = new BicycleQuote(); TryUpdateModel(quote, formValues); IEnumerable <ErrorInfo> errors = ViewModelValidator.Validate(quote.Question, "Question"); ModelStateUtil.AddModelStateErrors(ViewData.ModelState, errors, null, x => true, GetQuestionError); if (!ModelState.IsValid) { ViewData.SetReferenceData(_questionFormHandler.CreateReferenceData()); return(ValidationError(quote)); } // do this after validation, no point creating a policy if the form is invalid. long? policyId = this.GetPolicyId(false); PolicyDTO policy; if (policyId == null) { policy = await _questionFormHandler.CreatePolicy(quote.Question); this.SetPolicyId(policy.Id); } else { policy = await _questionFormHandler.UpdatePolicy(policyId, quote.Question); } return(NavigateToAction(LocalMVC.Quote.Index())); }
public virtual async Task <ActionResult> Index(FormCollection formValues) { BicycleQuote model = new BicycleQuote(); TryUpdateModel(model, formValues); long?policyId = this.GetPolicyId(); Result <Transaction> transaction = await _paymentFormHandler.ProcessPayment(policyId, model.PolicyPayment.PaymentDetails.BrainTree.payment_method_nonce); if (transaction != null && transaction.IsSuccess()) { model.PolicyPayment.PaymentDetails.BrainTree.PaymentFailed = false; await _paymentFormHandler.IssuePolicy(policyId, transaction); } else { model.PolicyPayment.PaymentDetails.BrainTree.PaymentFailed = true; } // validate model IEnumerable <ErrorInfo> errors = ViewModelValidator.Validate(model.PolicyPayment, "PolicyPayment"); ModelStateUtil.AddModelStateErrors(ViewData.ModelState, errors, null, x => true, GetQuestionError); if (ModelState.IsValid) // continue if payment succeeded { return(NavigateToAction(LocalMVC.Confirmation.Index())); } else { await _paymentFormHandler.UpdateModelFromDto(this.GetPolicyId(), model); ViewData.SetReferenceData(_paymentFormHandler.CreateReferenceData()); model.PolicyPayment.PaymentDetails.BrainTree.ClientToken = _paymentFormHandler.GetBraintreeClientToken(); return(ValidationError(model)); } }
public virtual async Task <ActionResult> Index(FormCollection formValues) { BicycleQuote quote = new BicycleQuote(); TryUpdateModel(quote, formValues); IEnumerable <ErrorInfo> errors = ViewModelValidator.Validate(quote.PolicyDetail, "PolicyDetail"); ModelStateUtil.AddModelStateErrors(ViewData.ModelState, errors, null, x => true, GetQuestionError); if (!ModelState.IsValid) { PolicyDTO policy = await _policyDetailFormHandler.GetPolicy(this.GetPolicyId()); SetReferenceData(policy, quote); return(ValidationError(quote)); } await _policyDetailFormHandler.UpdateContactDetails(this.GetPolicyId(), quote); return(NavigateToAction(LocalMVC.Payment.Index())); }