Atomia.Web.Plugin.PublicOrder.Controllers.PublicOrderController.Thankyou C# (CSharp) Method

Thankyou() private method

private Thankyou ( ) : System.Web.Mvc.ActionResult
return System.Web.Mvc.ActionResult
        public ActionResult Thankyou()
        {
            if (this.Session["CreatedOrder"] != null)
            {
                JavaScriptSerializer js = new JavaScriptSerializer();
                var createdOrder = this.Session["CreatedOrder"] as OrderServiceReferences.AtomiaBillingPublicService.PublicOrder;
                PublicOrderItemProperty domainRegContactAttr = null;

                if (createdOrder != null)
                {
                    foreach (var item in createdOrder.OrderItems)
                    {
                        // They are all the same so remove all to avoid JSON errors and use the last one as domainRegContactAttr.
                        domainRegContactAttr = item.CustomData.FirstOrDefault(cd => cd.Name.ToLower() == "domainregcontact");

                        if (domainRegContactAttr != null)
                        {
                            var customData = item.CustomData.ToList();
                            customData.Remove(domainRegContactAttr);
                            item.CustomData = customData.ToArray();
                        }
                    }
                }

                ViewData["CreatedOrderAsJson"] = js.Serialize(createdOrder);
                ViewData["DomainRegContactAsJson"] = domainRegContactAttr != null
                    ? domainRegContactAttr.Value
                    : "null";

                ViewData["CreatedOrderRaw"] = createdOrder;
                this.Session["CreatedOrder"] = null;

                // Throw away any previous submit form (used to re-fill form on canceled payment)
                this.Session["SavedSubmitForm"] = null;
                this.Session["SavedPaymentPlugin"] = null;
                this.Session["PreselectedPackage"] = null;
            }

            return View();
        }