/// <summary>
        /// Subscriptionses this instance.
        /// </summary>
        /// <returns></returns>
        public IActionResult Subscriptions()
        {
            SubscriptionViewModel subscriptionDetail = new SubscriptionViewModel();

            if (User.Identity.IsAuthenticated)
            {
                this.TempData["ShowWelcomeScreen"] = "True";

                List <SubscriptionResult> allSubscriptions = new List <SubscriptionResult>();
                var allSubscriptionDetails = subscriptionRepo.Get().ToList();
                var allPlans = planRepository.Get().ToList();
                foreach (var subscription in allSubscriptionDetails)
                {
                    SubscriptionResult subscritpionDetail = PrepareSubscriptionResponse(subscription, allPlans);
                    if (subscritpionDetail != null && subscritpionDetail.SubscribeId > 0)
                    {
                        allSubscriptions.Add(subscritpionDetail);
                    }
                }
                subscriptionDetail.Subscriptions = allSubscriptions;

                if (this.TempData["ErrorMsg"] != null)
                {
                    subscriptionDetail.IsSuccess    = false;
                    subscriptionDetail.ErrorMessage = Convert.ToString(this.TempData["ErrorMsg"]);
                }
            }
            else
            {
                return(RedirectToAction(nameof(Index)));
            }
            return(this.View(subscriptionDetail));
        }
        /// <summary>
        /// Subscriptionses this instance.
        /// </summary>
        /// <returns></returns>
        public IActionResult Subscriptions()
        {
            this.logger.LogInformation("Home Controller / Subscriptions ");
            try
            {
                if (Convert.ToBoolean(applicationConfigRepository.GetValuefromApplicationConfig(MainMenuStatusEnum.IsLicenseManagementEnabled.ToString())) == true)
                {
                    this.TempData["ShowLicensesMenu"] = true;
                }
                SubscriptionViewModel subscriptionDetail = new SubscriptionViewModel();
                if (User.Identity.IsAuthenticated)
                {
                    this.TempData["ShowWelcomeScreen"] = "True";

                    List <SubscriptionResultExtension> allSubscriptions = new List <SubscriptionResultExtension>();
                    var allSubscriptionDetails = subscriptionRepo.Get().ToList();
                    var allPlans = planRepository.Get().ToList();
                    foreach (var subscription in allSubscriptionDetails)
                    {
                        SubscriptionResultExtension subscritpionDetail = PrepareSubscriptionResponse(subscription, allPlans);
                        Plans PlanDetail = this.planRepository.GetPlanDetailByPlanId(subscritpionDetail.PlanId);
                        subscritpionDetail.IsPerUserPlan = PlanDetail.IsPerUser.HasValue ? PlanDetail.IsPerUser.Value : false;
                        subscriptionDetail.IsAutomaticProvisioningSupported = Convert.ToBoolean(applicationConfigRepository.GetValuefromApplicationConfig("IsAutomaticProvisioningSupported"));
                        if (subscritpionDetail != null && subscritpionDetail.SubscribeId > 0)
                        {
                            allSubscriptions.Add(subscritpionDetail);
                        }
                    }
                    subscriptionDetail.Subscriptions = allSubscriptions;

                    if (this.TempData["ErrorMsg"] != null)
                    {
                        subscriptionDetail.IsSuccess    = false;
                        subscriptionDetail.ErrorMessage = Convert.ToString(this.TempData["ErrorMsg"]);
                    }
                }
                else
                {
                    return(RedirectToAction(nameof(Index)));
                }
                return(this.View(subscriptionDetail));
            }
            catch (Exception ex)
            {
                logger.LogError("Message:{0} :: {1}   ", ex.Message, ex.InnerException);
                return(View("Error"));
            }
        }