public static UnsubscribeViewModel CreateViewModel(Subscription subscription, string returnUrl)
 {
     return new UnsubscribeViewModel
                {
                    Subscription = subscription,
                    ReturnUrl = returnUrl
                };
 }
        public ActionResult Unsubscribe(Subscription subscription, string returnUrl)
        {
            var s = _repositories.Subscriptions.Get(subscription.Id);
            var c = s.Category;

            _repositories.Subscriptions.Delete(s);

            TempData["message"] = "You have successfully unsubscribed from " + c.ShortDescription;

            if (returnUrl == string.Empty) returnUrl = null;

            return Redirect(returnUrl ?? "~/Attorney/PracticeAreas");
        }
        public ActionResult Subscribe(Subscription subscription, string returnUrl)
        {
            var category = _repositories.Categories.Get(subscription.CategoryId);
            category.Subscriptions.Add(subscription);
            _repositories.Categories.SaveChanges();

            Message = "You have successfully subscribed to " + subscription.Category.ShortDescription;

            _emailService.SendEmailTo(UserModel.Current.Email, new SubscribeEmail(subscription.Category.ShortDescription,
                ConfigSettings.SiteUrl.TrimEnd('/') + Url.Action("Unsubscribe", new {id = subscription.CategoryId})));

            if (returnUrl == string.Empty) returnUrl = null;

            return Redirect(returnUrl ?? "~/Attorney/PracticeAreas");
        }
 /// <summary>
 /// Deprecated Method for adding a new object to the Subscriptions EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToSubscriptions(Subscription subscription)
 {
     base.AddObject("Subscriptions", subscription);
 }
 /// <summary>
 /// Create a new Subscription object.
 /// </summary>
 /// <param name="id">Initial value of the Id property.</param>
 /// <param name="categoryId">Initial value of the CategoryId property.</param>
 /// <param name="userName">Initial value of the UserName property.</param>
 /// <param name="subscribed">Initial value of the Subscribed property.</param>
 public static Subscription CreateSubscription(global::System.Int32 id, global::System.Int32 categoryId, global::System.String userName, global::System.DateTime subscribed)
 {
     Subscription subscription = new Subscription();
     subscription.Id = id;
     subscription.CategoryId = categoryId;
     subscription.UserName = userName;
     subscription.Subscribed = subscribed;
     return subscription;
 }