Пример #1
0
        public MainWindow(int id)
        {
            InitializeComponent();
            NetVideoEntities db = new NetVideoEntities();

            CustomerInfo cus = db.CustomerInfoes.FirstOrDefault(c => c.AccountId == id);

            controlBarVM               = new ControlBarViewModel();
            controlBarVM.CusName       = cus.FirstName + " " + cus.LastName;
            controlBarVM.IdAccount     = id;
            controlBarMain.DataContext = controlBarVM;

            List <VideoInfo> l = db.VideoInfoes.ToList();

            ListVideoViewModel lvMyList = new ListVideoViewModel();

            lvMyList.TitleList     = "My list";
            lvMyList.List          = new ObservableCollection <VideoInfo>(l);
            listMyList.DataContext = lvMyList;

            ListVideoViewModel lvTrending = new ListVideoViewModel();

            lvTrending.TitleList     = "Trending now";
            lvTrending.List          = new ObservableCollection <VideoInfo>(l.Where(p => p.HotLevel == 2).ToList());
            listTrending.DataContext = lvTrending;

            var                  minValue = db.VideoInfoes.Min(x => x.HotLevel);
            VideoInfo            v        = db.VideoInfoes.Where(x => x.HotLevel == minValue).FirstOrDefault();
            DetailVideoViewModel d        = new DetailVideoViewModel();

            d.BindingDetail(v.Id, videoHot);
        }
Пример #2
0
        public MainWindow()
        {
            InitializeComponent();

            NetVideoEntities db = new NetVideoEntities();
            List <VideoInfo> l  = db.VideoInfoes.ToList();

            ListVideoViewModel lvMyList = new ListVideoViewModel();

            lvMyList.TitleList     = "My list";
            lvMyList.List          = new ObservableCollection <VideoInfo>(l);
            listMyList.DataContext = lvMyList;

            ListVideoViewModel lvTrending = new ListVideoViewModel();

            lvTrending.TitleList     = "Trending now";
            lvTrending.List          = new ObservableCollection <VideoInfo>(l.Where(p => p.HotLevel == 2).ToList());
            listTrending.DataContext = lvTrending;

            var                  minValue = db.VideoInfoes.Min(x => x.HotLevel);
            VideoInfo            v        = db.VideoInfoes.Where(x => x.HotLevel == minValue).FirstOrDefault();
            DetailVideoViewModel d        = new DetailVideoViewModel();

            d.BindingDetail(v.Id, videoHot);

            ListVideo2ViewModel lv2 = new ListVideo2ViewModel();

            list2.DataContext = lv2;
        }
Пример #3
0
        public VideoCategoryViewModel GetVideosTag(string tag, int page, int page_size, int image_width, int image_height, int description_length = 40)
        {
            tag = tag.Replace("-", "_");
            TagOfVideo db_tag = DAManager.TagOfVideoRepository.Get(t => t.TagName == tag).FirstOrDefault();

            if (db_tag == null)
            {
                return(null);
            }

            VideoCategoryViewModel result_viewmodel = new VideoCategoryViewModel()
            {
                Name = db_tag.FrontTitle, MetaDescription = db_tag.MetaDescription, MetaTitle = db_tag.MetaTitle
            };
            List <ListVideoViewModel> result = new List <ListVideoViewModel>();

            IQueryable <VideoTag> tag_videos = DAManager.VideoTagsRepository.Get(at => at.Tag == tag && at.Video.IsPublished == true && DbFunctions.CreateDateTime(at.Video.PublishDate.Year, at.Video.PublishDate.Month, at.Video.PublishDate.Day, at.Video.PublishDate.Hour, at.Video.PublishDate.Minute, at.Video.PublishDate.Second) <= DateTime.Now, a => a.OrderByDescending(ar => ar.Video.PublishDate), "Video.VideoImages.Image").Skip((page - 1) * page_size).Take(page_size);

            foreach (VideoTag AC in tag_videos.ToList())
            {
                ListVideoViewModel video = new ListVideoViewModel()
                {
                    Title = AC.Video.Title, URL = AC.Video.URL
                };
                video.Description = StringsUtility.StripHTML(AC.Video.Description);
                if (video.Description.Length > description_length)
                {
                    video.Description = video.Description.Substring(0, description_length);
                }
                if (AC.Video.VideoImages.Count() > 0)
                {
                    video.ImageURL = ImageService.GenerateImageFullPath(AC.Video.VideoImages.First().Image.URL, image_width.ToString(), image_height.ToString());
                }

                result.Add(video);
            }



            result_viewmodel.Videos = result;

            int total_videos = DAManager.VideoTagsRepository.Get(at => at.Tag == tag && at.Video.IsPublished == true && DbFunctions.CreateDateTime(at.Video.PublishDate.Year, at.Video.PublishDate.Month, at.Video.PublishDate.Day, at.Video.PublishDate.Hour, at.Video.PublishDate.Minute, at.Video.PublishDate.Second) <= DateTime.Now).Count();

            //Set pagination properties
            result_viewmodel.PageNumber = page;
            result_viewmodel.PageSize   = page_size;
            result_viewmodel.TotalItems = total_videos;

            return(result_viewmodel);
        }
Пример #4
0
        public List <ListVideoViewModel> GetRandomVideos(int count, int image_width, int image_height, List <int> except = null)
        {
            IQueryable <Video> db_videos = DAManager.VideosRepository.Get(a => a.IsPublished == true && DbFunctions.CreateDateTime(a.PublishDate.Year, a.PublishDate.Month, a.PublishDate.Day, a.PublishDate.Hour, a.PublishDate.Minute, a.PublishDate.Second) <= DateTime.Now, a => a.OrderByDescending(ar => Guid.NewGuid()), "VideoImages.Image").Take(count);

            if (except != null)
            {
                foreach (int ex in except)
                {
                    db_videos = db_videos.Where(a => a.VideoId != ex);
                }
            }

            List <ListVideoViewModel> final_result = new List <ListVideoViewModel>();

            foreach (Video video in db_videos.ToList())
            {
                ListVideoViewModel video_item = new ListVideoViewModel()
                {
                    Title = video.Title,
                    //CommentsCount = article.Comments.Count(),
                    URL = video.URL,
                    // LikesCount = article.Likes.Count(),
                    VideoId         = video.VideoId,
                    DurationMinutes = String.Format("{0:00}", (int)((video.Duration ?? 0) / 60)),
                    DurationSeconds = String.Format("{0:00}", (int)((video.Duration ?? 0) % 60))
                };
                if (video.VideoImages.Count() > 0)
                {
                    video_item.ImageURL = video.VideoImages.First().Image.URL;
                }

                final_result.Add(video_item);
            }

            return(FormatImageURL(final_result, image_width, image_height));
        }