public ActionResult Details(Guid guid)
        {
            YoumotoDbContext context = new YoumotoDbContext();
            var manufacturer         = ManufacturerPersister.LoadSingle(context, guid);

            return(this.View(new ManufacturerViewModel.Details(manufacturer)));
        }
        public static IEnumerable <Garage> LoadRandomPaged(
            YoumotoDbContext context,
            GarageTypes garageType,
            Int32 skip,
            Int32 take)
        {
            var garages = context.Garages
                          .Where(runner => garageType == GarageTypes.Any || runner.GarageType == garageType)
                          .Where(runner => runner.GaragePictures.Any())
                          .ToList();

            List <Garage> result     = new List <Garage>();
            List <Int32>  taken      = new List <Int32>();
            Random        randomizer = new Random();

            for (Int32 index = 0; index < take; index++)
            {
                Int32 randomIndex = 0;
                do
                {
                    randomIndex = randomizer.Next(0, garages.Count);
                }while (taken.Contains(randomIndex));

                taken.Add(randomIndex);
                result.Add(garages[randomIndex]);
            }

            return(result);
        }
        public ActionResult Details(Guid guid)
        {
            var context = new YoumotoDbContext();
            var vehicle = VehiclePersister.LoadSingle(context, guid);

            return(View(new VehicleViewModel.Details(vehicle)));
        }
Example #4
0
        public ActionResult Render(Guid?guid, Int32?width = null, Int32?height = null)
        {
            this.Response.Clear();

            YoumotoDbContext context = new YoumotoDbContext();
            Picture          picture = guid == null ? null : PicturePersister.LoadSingle(context, guid.Value);


            if (picture == null)
            {
                var bitmap = ESolutions.Youmoto.Web.UI.Properties.Resources.NoImage;
                this.Response.ContentType = "image/png";
                bitmap.Save(this.Response.OutputStream, ImageFormat.Png);
            }
            else
            {
                var bitmap = picture.GetBitmap(width, height);
                this.Response.ContentType = "image/jpg";

                Int64             compression = width.HasValue || height.HasValue ? 60L : 100L;
                EncoderParameters parameters  = new EncoderParameters(1);
                parameters.Param[0] = new EncoderParameter(Encoder.Quality, compression);
                ImageCodecInfo codec = ImageCodecInfo.GetImageEncoders().FirstOrDefault(runner => runner.FormatID == ImageFormat.Jpeg.Guid);
                bitmap.Save(this.Response.OutputStream, codec, parameters);
            }

            this.Response.End();
            return(null);
        }
        public SearchResultViewModel Search(String searchTerm, Int32 skip, Int32 take)
        {
            YoumotoDbContext context = new YoumotoDbContext();
            var searchResult         = Searcher.PerformFreetextSearch(context, searchTerm, skip, take);

            return(new SearchResultViewModel(searchResult));
        }
        public IEnumerable <VehicleViewModel.Preview> LoadVehicles(Int32 skip = 0, Int32 take = 5)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            return(VehiclePersister
                   .LoadPaged(context, skip, take)
                   .Select(runner => new VehicleViewModel.Preview(runner)));
        }
Example #7
0
 /// <summary>
 /// Loads news articles paged.
 /// </summary>
 /// <param name="context">The context.</param>
 /// <param name="skipCount">The skip.</param>
 /// <param name="takeCount">The take.</param>
 /// <returns></returns>
 public static IEnumerable <News> LoadLatestPaged(YoumotoDbContext context, Int32 skipCount, Int32 takeCount)
 {
     return(context.News
            .OrderByDescending(runner => runner.Date)
            .Skip(skipCount)
            .Take(takeCount)
            .ToList());
 }
Example #8
0
 public static IEnumerable <Vehicle> LoadPaged(YoumotoDbContext context, Int32 skip, Int32 take)
 {
     return(context.Vehicles
            .Where(runner => runner.VehiclePictures.Any())
            .OrderBy(runner => runner.Guid)
            .Skip(skip)
            .Take(take));
 }
        public ActionResult Details(Guid guid)
        {
            YoumotoDbContext context = new YoumotoDbContext();
            var news      = NewsPersister.LoadSingle(context, guid);
            var viewModel = new NewsViewModel.Details(news);

            return(View(viewModel));
        }
Example #10
0
        public IEnumerable <GarageViewModels.Preview> LoadGarages(Int32 skip = 0, Int32 take = 5)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            return(GaragePersister
                   .LoadRandomPaged(context, GarageTypes.Any, skip, take)
                   .Select(runner => new GarageViewModels.Preview(runner)));
        }
        public ActionResult Details(Guid guid)
        {
            YoumotoDbContext context = new YoumotoDbContext();
            var garage    = GaragePersister.LoadSingle(context, guid);
            var viewModel = new GarageViewModels.Details(garage);

            return(View(viewModel));
        }
        public IEnumerable <NewsViewModel.Preview> LoadNews(Int32 skip = 0, Int32 take = 5)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            return(NewsPersister
                   .LoadLatestPaged(context, skip, take)
                   .Select(runner => new NewsViewModel.Preview(runner)));
        }
 public void TestLoadSingleWithNonExistingGuid()
 {
     using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
     {
         var picture = PicturePersister.LoadSingle(context, new Guid("{633CEC22-87CF-4D27-9FA6-578322675617}"));
         Assert.IsNull(picture);
     }
 }
Example #14
0
        public IEnumerable <ManufacturerViewModel.Preview> LoadManufacturers(Int32 skip = 0, Int32 take = 5)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            return(ManufacturerPersister
                   .LoadPaged(context, skip, take)
                   .Select(runner => new ManufacturerViewModel.Preview(runner))
                   .ToList());
        }
Example #15
0
 public void SearchExact()
 {
     using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
     {
         //var guid = Guid.NewGuid();
         //context.Vehicles.Add(new Vehicle() { Guid = guid });
         //context.SearchMatrix.Add(new SearchMatrixView() { });
         //context.SaveChanges();
     }
 }
        public NewsViewModel.Preview CreateNews(String title)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();
            News             newNews = NewsPersister.Create(title);

            context.News.Add(newNews);
            context.SaveChanges();

            return(new NewsViewModel.Preview(newNews));
        }
        public void UpdateNews(Guid guid, String title, String text, String sourceLink)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();
            var item = NewsPersister.LoadSingle(context, guid);

            item.Title           = title ?? String.Empty;
            item.Text            = text ?? String.Empty;
            item.SourceLink      = sourceLink ?? String.Empty;
            item.UpdateTimeStamp = DateTime.UtcNow;
            context.SaveChangesAsync();
        }
        public IEnumerable <VehicleSearchViewModel> SearchVehicles(String searchTerm)
        {
            YoumotoDbContext context = new YoumotoDbContext();
            var result = Searcher.PerformVehicleSearch(context, searchTerm);

            return(result.Select(runner => new Models.VehicleSearchViewModel()
            {
                Guid = runner.Guid,
                Fullname = runner.Fullname
            }));
        }
Example #19
0
        public void CreateAndSaveVehicle()
        {
            using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
            {
                Vehicle vehicle = Vehicle.Create(VehicleTests.vehicleName);

                context.Vehicles.Add(vehicle);
                context.SaveChanges();

                Assert.AreEqual(VehicleTests.vehicleName, vehicle.Name);
            }
        }
Example #20
0
        public static IEnumerable <Vehicle> LoadRandomPaged(YoumotoDbContext context, Int32 take)
        {
            var vehicleQuery = context.Vehicles.Where(runner => runner.VehiclePictures.Any());
            var count        = vehicleQuery.Count();
            var maxSkip      = count - take;
            var randomSkip   = new Random().Next(0, maxSkip);

            return(vehicleQuery
                   .OrderBy(runner => runner.Guid)
                   .Skip(randomSkip)
                   .Take(take));
        }
        public void CreateAndSaveManufacturer()
        {
            using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
            {
                Manufacturer manufacturer = Manufacturer.Create(ManufacturerTests.manufacturerName);

                context.Manufacturers.Add(manufacturer);
                context.SaveChanges();

                Assert.AreEqual(ManufacturerTests.manufacturerName, manufacturer.Name);
            }
        }
Example #22
0
        public void CreateAndSaveNews()
        {
            using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
            {
                News news = NewsPersister.Create(NewsTests.newsTitle);

                context.News.Add(news);
                context.SaveChanges();

                Assert.AreEqual(NewsTests.newsTitle, news.Title);
            }
        }
Example #23
0
 public static IEnumerable <Manufacturer> LoadPaged(YoumotoDbContext context, Int32 skip, Int32 take)
 {
     return(context.Manufacturers
            .Where(runner => runner.PictureGuid.HasValue)
            .Where(runner =>
                   runner.ManufacturerVehicles.Any(x => x.Vehicle.VehiclePictures.Any()) ||
                   runner.Series.Any(x => x.SeriesVehicles.Any(y => y.Vehicle.VehiclePictures.Any()))
                   )
            .OrderBy(runner => runner.Name)
            .Skip(skip)
            .Take(take));
 }
        public NewsViewModel.Details AddPicture(Guid newsGuid, String pictureUrl)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            var result = NewsPersister.LoadSingle(context, newsGuid);

            var newPicture = NewsPersister.CreatePicture(result, pictureUrl);

            context.NewsPictures.Add(newPicture);
            context.SaveChanges();

            return(new Models.NewsViewModel.Details(result));
        }
        public void TestLoadSingleWithExistingGuid()
        {
            using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
            {
                Picture newPicture = PicturePersister.Create();
                context.Pictures.Add(newPicture);
                context.SaveChanges();

                var picture = PicturePersister.LoadSingle(context, newPicture.Guid);
                Assert.IsNotNull(picture);
                Assert.AreEqual(newPicture, picture);
            }
        }
Example #26
0
        //Methods
        #region CreateTestNews
        private List <News> CreateTestNews(int newsCount, YoumotoDbContext context)
        {
            List <News> testNews = new List <News>();

            newsCount.Times(index =>
            {
                News news = NewsPersister.Create(NewsTests.newsTitle + index.ToString());
                news.Date = DateTime.UtcNow.AddDays(newsCount * -1).AddDays(index);
                testNews.Add(news);
                context.News.Add(news);
            });

            return(testNews);
        }
        public NewsViewModel.Details AddVehicle(Guid newsGuid, Guid vehicleGuid)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            var result  = NewsPersister.LoadSingle(context, newsGuid);
            var vehicle = VehiclePersister.LoadSingle(context, vehicleGuid);

            var newPicture = NewsPersister.CreateVehicle(result, vehicle);

            context.NewsVehicles.Add(newPicture);
            context.SaveChanges();

            return(new Models.NewsViewModel.Details(result));
        }
Example #28
0
        public void CreateAndSaveSeries()
        {
            using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
            {
                Manufacturer manufacturer = Manufacturer.Create(SeriesTests.manufacturerName);
                Series       series       = Series.Create(manufacturer, SeriesTests.seriesName);

                context.Manufacturers.Add(manufacturer);
                context.Series.Add(series);
                context.SaveChanges();

                Assert.AreEqual(SeriesTests.seriesName, series.Name);
            }
        }
        public NewsViewModel.Details DeleteVehicle(Guid newsVehicleGuid)
        {
            YoumotoDbContext context = this.context ?? new YoumotoDbContext();

            var item = NewsPersister.LoadSingleVehicle(context, newsVehicleGuid);
            var news = item.News;

            context.NewsVehicles.Remove(item);
            context.SaveChanges();

            var result = new Models.NewsViewModel.Details(news);

            return(result);
        }
Example #30
0
        public void CreateAndSaveGarage()
        {
            using (var context = new YoumotoDbContext(Effort.DbConnectionFactory.CreateTransient()))
            {
                //User user = User.Create(GarageTests.userEmail, GarageTests.userPassword, GarageTests.userPassword);
                //context.Users.Add(user);

                //Vehicle vehicle = Vehicle.Create(GarageTests.vehicleName);
                //context.Vehicles.Add(vehicle);

                //Garage garage = Garage.Create(user, vehicle, GarageTests.garageTitle);
                //context.Garages.Add(garage);

                //context.SaveChanges();
            }
        }