Example #1
0
        public ActionResult CreateTorrent(CreateTorrentModel torrentModel)
        {
            var user = ClaimsManager.GetCurrentIdentity();
            var isUserAuthenticated = this.userService.CheckIfUserIsAuthenticated(user);
            var isUserModerator     = this.userService.CheckIfUserIsModerator(user);

            if (!isUserAuthenticated || !isUserModerator)
            {
                return(this.RedirectToAction("Index"));
            }

            var dynamicModuleManager = this.dynamicModuleManagerProvider.DynamicModuleManager;
            var imageManager         = this.imageManagerProvider.ImageManager;
            var torrentManager       = this.torrentManagerProvider.TorrentManager;
            var torrentItem          = dynamicModuleManager.CreateDataItem(torrentType);
            var currentUserId        = SecurityManager.GetCurrentUserId();

            this.torrentService.SetTorrentValues(torrentItem, torrentModel, currentUserId);
            this.torrentService.SetTorrentImage(imageManager, torrentItem);
            this.torrentService.SetTorrentFile(torrentManager, torrentItem);

            dynamicModuleManager.Lifecycle.Publish(torrentItem);
            dynamicModuleManager.SaveChanges();

            return(this.RedirectToAction("TorrentDetails", new { urlName = torrentItem.UrlName }));
        }
Example #2
0
        public void SetTorrentValues(DynamicContent torrentItem, CreateTorrentModel torrentModel, Guid currentUserId)
        {
            torrentItem.SetValue("Title", torrentModel.Title);
            torrentItem.SetValue("Description", torrentModel.Description);
            torrentItem.SetValue("AdditionalInfo", torrentModel.AdditionalInfo);
            torrentItem.SetValue("Genre", torrentModel.Genre);
            torrentItem.SetValue("TorrentDateCreated", DateTime.UtcNow);

            torrentItem.SetString("UrlName", torrentModel.Title);
            torrentItem.SetValue("PublicationDate", DateTime.UtcNow);
            torrentItem.SetValue("Owner", currentUserId);

            torrentItem.ApprovalWorkflowState = "Published";
        }
Example #3
0
        public ActionResult CreateTorrent()
        {
            var user = ClaimsManager.GetCurrentIdentity();
            var isUserAuthenticated = this.userService.CheckIfUserIsAuthenticated(user);
            var isUserModerator     = this.userService.CheckIfUserIsModerator(user);

            if (!isUserAuthenticated || !isUserModerator)
            {
                return(this.RedirectToAction("Index"));
            }

            var torrentModel = new CreateTorrentModel();

            return(this.View("TorrentForm", torrentModel));
        }