Esempio n. 1
0
        public bool AddVideo(NewsDataViewModels video, string videoPath)
        {
            bool RetVal = false;

            if (video == null)
            { return RetVal; }

            NewsData newsData = new NewsData
            {
                church = video.church,
                country = video.country,
                description = video.description,
                fName = video.fName,
                lName = video.lName,
                person = video.person,
                province = video.province,
                status = video.status,
                user_id = video.User_Id,
                Path = videoPath
            };

            try
            {
                context.Entry(newsData).State = Microsoft.EntityFrameworkCore.EntityState.Added;
                context.SaveChanges();
                RetVal = true;
            }
            catch (Exception ex)
            {
                int i = 9;
            }

            return RetVal;
        }
Esempio n. 2
0
        public NewsDataPagination_a_ViewModels GetNewsList_a(int user_id, NewsTypes type = NewsTypes.All,
                int page = 1, int pageSize = 4, string columnOrder = "", string sortByOrder = "asc")
        {

            sortByOrder = sortByOrder ?? "asc";
            List<NewsDataViewModels> List = new List<NewsDataViewModels>();
            List<string> colList = new List<string> { "description", "path", "lname" };
            string colName = colList.Where(t => t == columnOrder?.Trim().ToLower()).FirstOrDefault();

            List<NewsData> list = null;
            if (string.IsNullOrEmpty(columnOrder) || colName == null || string.IsNullOrEmpty(sortByOrder))
            {
                list = context.NewsData.Where(p => p.user_id == user_id)
            .OrderBy(t => t.description).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
            }
            else
            {
                if (colName == "description")
                {
                    if (sortByOrder == "asc")
                    {
                        list = context.NewsData.Where(p => p.user_id == user_id)
                         .OrderBy(t => t.description).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
                    }
                    else
                    {
                        list = context.NewsData.Where(p => p.user_id == user_id)
                            .OrderByDescending(t => t.description).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
                    }
                }
                else if (colName == "path")
                {
                    if (sortByOrder == "asc")
                    {
                        list = context.NewsData.Where(p => p.user_id == user_id)
                         .OrderBy(t => t.Path).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
                    }
                    else
                    {
                        list = context.NewsData.Where(p => p.user_id == user_id)
                            .OrderByDescending(t => t.Path).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
                    }
                }
                else if (colName == "lname")
                {
                    if (sortByOrder == "asc")
                    {
                        list = context.NewsData.Where(p => p.user_id == user_id)
                         .OrderBy(t => t.lName).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
                    }
                    else
                    {
                        list = context.NewsData.Where(p => p.user_id == user_id)
                            .OrderByDescending(t => t.lName).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList();
                    }
                }
            }

            if (list != null && list.Count > 0)
            {
                foreach (var item in list)
                {
                    NewsDataViewModels newsData = new NewsDataViewModels
                    {
                        church = item.church,
                        country = item.country,
                        description = item.description,
                        fName = item.fName,
                        lName = item.lName,
                        person = item.person,
                        province = item.province,
                        status = item.status,
                        User_Id = item.user_id,
                        Path = item.Path
                    };

                    List.Add(newsData);
                }

                int TotalItems = context.NewsData.Where(t => t.user_id == user_id).Count();
                Paging_a_Info paging_A_Info_ = PopulatePagingInfo(TotalItems, page, pageSize);

                //PagingInfo pagingInfo = new PagingInfo
                //{
                //    CurrentPage = page,
                //    ItemsPerPage = PageSize,
                //    TotalItems = context.NewsData.Where(t => t.user_id == user_id).Count()
                //};

                return new NewsDataPagination_a_ViewModels { NewsDatasList = List, paging_A_Info = paging_A_Info_ ,
                                                            sortByColumn = columnOrder ,sortByOrder= sortByOrder };
            }
            else
            {
                return new NewsDataPagination_a_ViewModels
                {
                    NewsDatasList = new List<NewsDataViewModels>(),
                    paging_A_Info = new Paging_a_Info
                    {
                        //CurrentPage = page,
                        //ItemsPerPage = PageSize,
                        //TotalItems = 0
                    }
                };
            }
        }
Esempio n. 3
0
        public IActionResult UploadNews(ICollection <IFormFile> files, int User_Id, NewsDataViewModels newsData)
        {
            //long size = files.Sum(f => f.Length);
            string mainFolder = _environment.ContentRootPath;
            int    n          = 0;
            string msg        = "";
            bool   success    = false;

            foreach (var file in files)
            {
                string filePath = "";

                string[] videos   = new string[] { "mp4", "mp3" };
                string[] images   = new string[] { "jpg", "png" };
                string   fileName = file?.FileName?.Replace(" ", "_").Replace("-", "_");
                if (file?.FileName != null)
                {
                    int ii = fileName.LastIndexOf("\\");
                    if (ii != -1)
                    {
                        fileName = fileName.Substring(ii + 1);
                    }
                }

                int i = file.FileName.LastIndexOf(".");
                if (i == -1)
                {
                    continue;
                }
                string ext = file.FileName.Substring(i + 1);


                if (videos.Contains(ext))
                {
                    filePath = _environment.WebRootPath + @"/VideoFiles/Videos/" + fileName;
                }
                if (images.Contains(ext))
                {
                    filePath = _environment.WebRootPath + @"\VideoFiles\Images\" + fileName;
                }

                if (file.Length > 0)
                {
                    using (var stream = new FileStream(filePath, FileMode.Create))
                    {
                        try
                        {
                            file.CopyToAsync(stream);
                            bool res = videoRepository.AddVideo(newsData, filePath);
                            n += 1;
                        }
                        catch (Exception ex)
                        {
                            msg += " There was problem to save file :  " + file?.FileName;
                        }
                    }
                }
            }

            if (n > 0)
            {
                msg    += " Files saved successfully are: " + n.ToString();
                success = true;
                return(Json(new { success = success, message = msg }));
            }
            else
            {
                newsData.message = "There was not selected file!";
                //return Ok(new { count = files.Count, size, filePath });
                return(View("NewsUpload", newsData));
            }
        }