Example #1
0
        public ActionResult Create(string Groups, int Type, string Name, string Description, IEnumerable <HttpPostedFileBase> Files, DateTime BeginDate, DateTime EndDate, bool IsBroadcast = false, HttpPostedFileBase imageFile = null)
        {
            try
            {
                var IdsGroup = GetIdsFromString(Groups);

                var            FilesDTO        = GetFiles(Files);
                HttpFileStream imageFileStream = null;
                if (imageFile != null)
                {
                    imageFileStream = new HttpFileStream()
                    {
                        InputStream = imageFile.InputStream,
                        Name        = imageFile.FileName
                    };
                }
                ContentService.CreateContent(IdsGroup, null, Type, Name, Description, FilesDTO, BeginDate, EndDate, IsBroadcast, imageFileStream);
                InternalNotification.Success("Material Created");
            }
            catch (Exception ex)
            {
                InternalNotification.Error(ex);
            }
            return(RedirectToAction("index"));
        }
Example #2
0
        private string SaveImage(HttpFileStream file)
        {
            var imageDir = Path.Combine(UploadsFolderPath, "banners");

            if (!Directory.Exists(imageDir))
            {
                Directory.CreateDirectory(imageDir);
            }
            var fileNameTimestamp = DateTime.Now.ToString("yyyymmdd") + file.Name;

            using (var diskFile = File.Create(imageDir + fileNameTimestamp))
            {
                file.InputStream.Seek(0, SeekOrigin.Begin);
                file.InputStream.CopyTo(diskFile);
            }
            return(fileNameTimestamp);
        }
Example #3
0
        public void Write(WebServerContext context)
        {
            var stream = new HttpFileStream(OpenFileStream, context.ResponseMessage, _contentType, _chunkSize);

            stream.Write();
        }
Example #4
0
 public override void UpdateContent(int Id, IEnumerable <int> IdGroup, IEnumerable <int> IdsGenre, string Name, string Description, IEnumerable <HttpFileStream> Files, DateTime BeginDate, DateTime EndDate, bool IsBroadcast, HttpFileStream imageFile)
 {
     if (!AuthResult.IsAdmin)
     {
         throw new InvalidTokenException();
     }
 }
Example #5
0
 public override int CreateContent(IEnumerable <int> IdGroup, IEnumerable <int> IdsGenre, int IdType, string Name, string Description, IEnumerable <HttpFileStream> Files, DateTime BeginDate, DateTime EndDate, bool IsBroadcast, HttpFileStream imageFile)
 {
     throw new InvalidTokenException();
 }
Example #6
0
 public abstract void UpdateContent(int Id, IEnumerable <int> IdGroup, IEnumerable <int> IdsGenre, string Name, string Description, IEnumerable <HttpFileStream> Files, DateTime BeginDate, DateTime EndDate, bool IsBroadcast, HttpFileStream imageFile = null);
Example #7
0
        public override void UpdateContent(int Id, IEnumerable <int> IdGroup, IEnumerable <int> IdsGenre, string Name, string Description, IEnumerable <HttpFileStream> Files, DateTime BeginDate, DateTime EndDate, bool IsBroadcast, HttpFileStream imageFile = null)
        {
            if (EndDate < DateTime.Now.AddMinutes(1))
            {
                throw new ArgumentException("End Date must be in the future");
            }
            var Content = CdDb.Contents.SingleOrDefault(x => x.Id == Id);

            if (Content == null)
            {
                throw new ArgumentException("Id Couldn't be find");
            }
            DeleteOldFile(Content);
            ClearContentGroup(Content);

            Content.FileName = SaveFiles(Name, Files);
            if (imageFile != null)
            {
                Content.ImageName = SaveImage(imageFile);
            }
            Content.Name              = Name;
            Content.Description       = Description;
            Content.BeginDeliveryDate = BeginDate;
            Content.EndDeliveryDate   = EndDate;
            Content.IsBroadcast       = IsBroadcast;

            var genreIdsToAdd  = IdsGenre.Where(x => !Content.Genres.Any(y => y.Id == x));
            var genresToDelete = Content.Genres.Where(x => !IdsGenre.Contains(x.Id));

            foreach (var genre in genresToDelete)
            {
                Content.Genres.Remove(genre);
            }

            foreach (var id in genreIdsToAdd)
            {
                var genre = CdDb.Genres.FirstOrDefault(x => x.Id == id);
                if (genre != null)
                {
                    Content.Genres.Add(genre);
                }
            }

            CdDb.SaveChanges();

            SaveGroupContents(IdGroup, Content);
        }
Example #8
0
        public override int CreateContent(IEnumerable <int> IdGroup, IEnumerable <int> IdsGenre, int IdType, string Name, string Description, IEnumerable <HttpFileStream> Files, DateTime BeginDate, DateTime EndDate, bool IsBroadcast, HttpFileStream imageFile = null)
        {
            if (EndDate < DateTime.Now.AddMinutes(1))
            {
                throw new ArgumentException("End Date must be in the future");
            }
            string FileName = SaveFiles(Name, Files);
            var    Content  = new Contents()
            {
                FileName          = FileName,
                Name              = Name,
                Description       = Description,
                BeginDeliveryDate = BeginDate,
                EndDeliveryDate   = EndDate,
                CreatedAt         = DateTime.Now,
                IsBroadcast       = IsBroadcast,
                IdType            = IdType
            };

            if (imageFile != null)
            {
                Content.ImageName = SaveImage(imageFile);
            }
            if (IdsGenre != null)
            {
                foreach (var idGenre in IdsGenre)
                {
                    var genre = CdDb.Genres.FirstOrDefault(x => x.Id == idGenre);
                    if (genre != null)
                    {
                        Content.Genres.Add(genre);
                    }
                }
            }

            CdDb.Contents.Add(Content);
            CdDb.SaveChanges();

            SaveGroupContents(IdGroup, Content);

            return(Content.Id);
        }