private CheckoutViewModel GetCheckoutViewModel(Purchase[] userPurchases, IMyMentorRepository repository) { var loggedInUser = Session.GetLoggedInUser(); var model = new CheckoutViewModel(); CurrencyDto currencyDto = Task.Run(() => loggedInUser.GetPointerObject<BL.Models.Currency>("currency")).Result.ConvertToCurrencyDto(); model.UserCurrency = currencyDto; var worldRetriver = new WorldContentTypeRetriver(HttpContext, repository); var world = worldRetriver.GetWorldContentTypeId(); string issuedFor = loggedInUser.ObjectId; var userCoupons = repository.FindCoupon(issuedFor, world).ToArray(); UpdateDuplicateRecords(ref userCoupons, ref userPurchases); SetPurchases(model, userPurchases, userCoupons, repository, currencyDto); SetCoupons(userCoupons, userPurchases, currencyDto, repository, model); SetTotals(model, repository, currencyDto); model.PurchaseFor = loggedInUser.Username; return model; }