Exemple #1
0
        public ActionResult New(int?id)
        {
            _logger.Information("Action: New; Controller: Subscription; Call method: GET;");
            try
            {
                if (id == null)
                {
                    id = 1;
                }
                string publisherToFindId = id.ToString();
                var    userId            = User.Identity.GetUserId();

                if (_subscriptionService.CheckIfSubscriptionExists(userId, publisherToFindId))
                {
                    return(View("AlreadySubscribed"));
                }

                if (!_subscriptionService.CheckIfSubscritpionPublisherExists(publisherToFindId))
                {
                    return(View("NotFound"));
                }

                SubscriptionCreateViewModel model = new SubscriptionCreateViewModel
                {
                    Publisher   = _subscriptionService.GetSubscriptionPublisher(publisherToFindId),
                    UserId      = User.Identity.GetUserId(),
                    UserBalance = _subscriptionService.GetUserBalanceForSubscription(User.Identity.GetUserId())
                };

                return(View(model));
            } catch (Exception e) {
                LogException(e);

                return(RedirectToAction("Index", "Error", new { exceptionType = e.GetType().Name }));
            }
        }