示例#1
0
        public ActionResult Index(SearchViewModel search)
        {
            List <MovieModel> movies;

            if (search.ReleasedAfter > search.ReleasedBefore)
            {
                movies = _movieLogic.GetAllMovies(MiscHelper.GetCurrentUserIdOrZero(this)).ToList();

                TempData["SearchError"] = "Released after must be lower than or equal to Released before";
            }
            else
            {
                movies = _movieLogic.GetMoviesBySearchModel(ViewModelToModel.ToSearchModel(search), MiscHelper.GetCurrentUserIdOrZero(this)).ToList();
            }

            if (User.Identity.IsAuthenticated)
            {
                movies = _movieLogic.CheckIfMoviesAreFavourites(movies, MiscHelper.GetCurrentUserIdOrZero(this));
            }

            var movieViewModels = ModelToViewModel.ToMovieViewModels(movies);

            foreach (var movie in movieViewModels)
            {
                movie.GenresString = MiscHelper.GetStringFromGenreViewModels(movie.Genres);
            }
            return(View(movieViewModels));
        }
示例#2
0
        public IActionResult AddMovie(MovieViewModel movie)
        {
            if (ModelState.IsValid)
            {
                string uniqueFileName = null;
                if (movie.Image != null)
                {
                    string uploadsFolder = Path.Combine(_hostingEnvironment.WebRootPath + "/images");
                    uniqueFileName = Guid.NewGuid() + "_" + movie.Image.FileName;
                    string filePath = Path.Combine(uploadsFolder, uniqueFileName);
                    movie.Image.CopyTo(new FileStream(filePath, FileMode.Create));
                }

                movie.ImagePath = uniqueFileName;

                _movieLogic.CreateNewMovie(ViewModelToModel.ToMovieModel(movie));
                return(RedirectToAction("Index", "Movie"));
            }

            foreach (GenreModel genre in _genreLogic.GetAllGenres())
            {
                movie.AllGenres.Add(ModelToViewModel.ToGenreViewModel(genre));
            }
            return(View(movie));
        }
        public ActionResult GaleriEkle(GaleriViewModel model)
        {
            try
            {
                Galeri galeri = new Galeri();
                galeri = ViewModelToModel.GaleriViewModelToGaleri(model, galeri);

                foreach (var dosya in model.Resimler)
                {
                    // her döngüde seçilen galeri için resim oluştur
                    Resim resim = new Resim();

                    // resmin ismini değiştir.
                    var fileName = Guid.NewGuid().ToString() + System.IO.Path.GetExtension(dosya.FileName);

                    // dosya dizinlerinin yollarını oluştur.
                    var orijinalResimDizin = Server.MapPath("~/Images/uploads/Galeri");
                    var buyukResimDizin    = Server.MapPath("~/Images/uploads/Galeri/Buyuk");
                    var kucukResimDizin    = Server.MapPath("~/Images/uploads/Galeri/Kucuk");

                    // dizin yoksa oluştur.
                    if (!Directory.Exists(orijinalResimDizin))
                    {
                        Directory.CreateDirectory(orijinalResimDizin);
                        Directory.CreateDirectory(buyukResimDizin);
                        Directory.CreateDirectory(kucukResimDizin);
                    }

                    // dosyayı kaydet
                    dosya.SaveAs(Path.Combine(orijinalResimDizin, fileName));

                    // resimleri farklı boyutlarda kaydet.
                    ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(600, 600), buyukResimDizin, fileName);
                    ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(200, 200), kucukResimDizin, fileName);

                    // resimin özelliklerini belirle
                    resim.Ad           = fileName;
                    resim.Boyut        = dosya.ContentLength;
                    resim.Uzanti       = dosya.ContentType;
                    resim.OrjinalResim = Path.Combine("Images/uploads/Galeri/", fileName);
                    resim.BuyukResim   = Path.Combine("Images/uploads/Galeri/Buyuk/", fileName);
                    resim.KucukResim   = Path.Combine("Images/uploads/Galeri/Kucuk/", fileName);

                    // resmi geleriye ekle
                    galeri.Resimler.Add(resim);
                }

                galeriServis.GaleriEkle(galeri);

                return(RedirectToAction("Galeriler"));
            }
            catch (Exception ex)
            {
                model.Haberler = haberServis.Haberler();
            }

            return(View(model));
        }
示例#4
0
        public IActionResult EditMovie(MovieViewModel movie)
        {
            if (ModelState.IsValid)
            {
                _movieLogic.EditMovie(ViewModelToModel.ToMovieModel(movie));
                return(RedirectToAction("Index", "Movie"));
            }

            return(View(movie));
        }
 public IActionResult AddNewGenre(GenreViewModel genreViewModel)
 {
     if (_genreLogic.TryCreateNewGenre(ViewModelToModel.ToGenreModel(genreViewModel)))
     {
         return(RedirectToAction("ManageGenres"));
     }
     return(RedirectToAction("ManageGenres", new
     {
         addGenreErrorMessage = "This genre already exists"
     }));
 }
        public ActionResult RateMovie(RatingViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("MovieInfo", "Movie", new { id = model.MovieId }));
            }
            model.UserId = MiscHelper.GetCurrentUserIdOrZero(this);
            RatingModel ratingModel = ViewModelToModel.ToRatingModel(model);

            ratingModel.MediaId = _mediaLogic.GetMediaIdFromMovieId(model.MovieId);
            _ratingLogic.RateMovie(ratingModel);
            return(RedirectToAction("MovieInfo", "Movie", new { id = model.MovieId }));
        }
示例#7
0
 protected override void OnExit(ExitEventArgs e)
 {
     try
     {
         model = ViewModelToModel.ToDataViewModel(viewModel);
         model.Save();
     }
     catch (Exception)
     {
         base.OnExit(null);
         throw;
     }
 }
        public IActionResult AddGenreToMovie(GenreViewModel genre)
        {
            if (genre.GenreId < 1)
            {
                foreach (GenreModel genreModel in _genreLogic.GetGenreModelsNotAssignedToThisMovie(genre.MovieId))
                {
                    genre.AllGenres.Add(ModelToViewModel.ToGenreViewModel(genreModel));
                }

                ModelState.AddModelError("Genre", "Please select a genre");
                return(View(genre));
            }
            _genreLogic.AddGenreToMovie(ViewModelToModel.ToGenreModel(genre));
            return(RedirectToAction("Index", "Movie"));
        }
示例#9
0
        public ActionResult KullaniciEkle(KullaniciViewModel model)
        {
            try
            {
                Kullanici kullanici = new Kullanici();
                kullanici = ViewModelToModel.KullaniciViewModelToKullanici(model, kullanici);
                var dosya = model.Resim;

                if (dosya != null && dosya.ContentLength > 0)
                {
                    // resmin ismini değiştir.
                    var fileName = Guid.NewGuid().ToString() + System.IO.Path.GetExtension(dosya.FileName);

                    // dosya dizinlerinin yollarını oluştur.
                    var orijinalResimDizin = Server.MapPath("~/Images/uploads/Kullanici");
                    var buyukResimDizin    = Server.MapPath("~/Images/uploads/Kullanici/Buyuk");
                    var kucukResimDizin    = Server.MapPath("~/Images/uploads/Kullanici/Kucuk");

                    // dizin yoksa oluştur.
                    if (!Directory.Exists(orijinalResimDizin))
                    {
                        Directory.CreateDirectory(orijinalResimDizin);
                        Directory.CreateDirectory(buyukResimDizin);
                        Directory.CreateDirectory(kucukResimDizin);
                    }

                    // dosyayı kaydet
                    dosya.SaveAs(Path.Combine(orijinalResimDizin, fileName));

                    // resimleri farklı boyutlarda kaydet.
                    ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(200, 200), kucukResimDizin, fileName);

                    kullanici.OrjinalProfilResim = Path.Combine("Images/uploads/Kullanici/", fileName);
                    kullanici.KucukProfilResim   = Path.Combine("Images/uploads/Kullanici/Kucuk/", fileName);
                    kullanici.KayitTarihi        = DateTime.Now;
                }

                kullaniciServis.KullaniciEkle(kullanici);

                return(RedirectToAction("Kullanicilar"));
            }
            catch (Exception ex)
            {
            }

            return(View(model));
        }
示例#10
0
        public IActionResult Register(UserViewModel user)
        {
            if (ModelState.IsValid)
            {
                if (_userLogic.DoesUserNameExist(user.Username))
                {
                    ModelState.AddModelError("Username", "This username is already taken");
                    return(View(user));
                }

                if (_userLogic.DoesEmailAddressExist(user.EmailAddress))
                {
                    ModelState.AddModelError("EmailAddress", "This email address is already taken");
                    return(View(user));
                }
                _userLogic.CreateUser(ViewModelToModel.ToUserModel(user));
                return(RedirectToAction("Login", "User"));
            }

            return(View(user));
        }
示例#11
0
        public ActionResult HaberEkle(HaberViewModel model)
        {
            try
            {
                Haber haber = new Haber();
                haber = ViewModelToModel.HaberViewModelToHaber(model, haber);
                var dosya     = model.Resim;
                var etiketler = etiketServis.Etiketler(model.SecilenEtiketler);

                if (dosya != null && dosya.ContentLength > 0)
                {
                    // resmin ismini değiştir.
                    var fileName = Guid.NewGuid().ToString() + System.IO.Path.GetExtension(dosya.FileName);

                    // dosya dizinlerinin yollarını oluştur.
                    var orijinalResimDizin = Server.MapPath("~/Images/uploads/Haber");
                    var buyukResimDizin    = Server.MapPath("~/Images/uploads/Haber/Buyuk");
                    var kucukResimDizin    = Server.MapPath("~/Images/uploads/Haber/Kucuk");

                    // dizin yoksa oluştur.
                    if (!Directory.Exists(orijinalResimDizin))
                    {
                        Directory.CreateDirectory(orijinalResimDizin);
                        Directory.CreateDirectory(buyukResimDizin);
                        Directory.CreateDirectory(kucukResimDizin);
                    }

                    // dosyayı kaydet
                    dosya.SaveAs(Path.Combine(orijinalResimDizin, fileName));

                    // resimleri farklı boyutlarda kaydet.
                    ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(600, 600), buyukResimDizin, fileName);
                    ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(200, 200), kucukResimDizin, fileName);

                    haber.OrjinalProfilResim = Path.Combine("Images/uploads/Haber/", fileName);
                    haber.BuyukProfilResim   = Path.Combine("Images/uploads/Haber/Buyuk/", fileName);
                    haber.KucukProfilResim   = Path.Combine("Images/uploads/Haber/Kucuk/", fileName);
                }

                haber.DegistirmeTarihi = DateTime.Now;
                haber.OkunmaSayisi     = 0;
                haber.OlusturmaTarihi  = DateTime.Now;
                haber.YayinlanmaTarihi = DateTime.Now;
                haber.YorumSayisi      = 0;
                haber.TumEtiketler     = string.Join(", ", etiketler.Select(x => x.Ad));
                etiketler.ForEach(x => haber.Etiketler.Add(x));

                haberServis.HaberEkle(haber);

                return(RedirectToAction("Haberler"));
            }
            catch (Exception ex)
            {
                // haber kaydı başarısızsa
                // dropdownlist elemanlarını
                // tekrar ilkleme
                model = new HaberViewModel
                {
                    Kategoriler   = kategoriServis.Kategoriler(),
                    Kullanicilar  = kullaniciServis.Kullanicilar(),
                    HaberTipleri  = haberServis.HaberTipleri(),
                    Etiketler     = etiketServis.Etiketler(),
                    HaberPozisyon = haberServis.HaberPozisyonlari()
                };
            }

            return(View(model));
        }