public void PostTour_validTour_Succeed()
        {
            ToursController controller = new ToursController(mockTourService.Object);

            this.SetupControllerTests(controller, "http://localhost/STCRMService/api/tour", HttpMethod.Get);
            var mockResponse = mockRepository.Create <InsertTourResponse>();

            TourViewModel newContactTour = new TourViewModel()
            {
                TourID = SAMPLE_TOUR_ID
            };

            mockResponse.Setup(c => c.TourViewModel).Returns(newContactTour);
            mockTourService.Setup(c => c.InsertTour(It.IsAny <InsertTourRequest>())).Returns(mockResponse.Object);


            var httpResponseMessage = controller.PostTour(It.IsAny <TourViewModel>());
            var postResponse        = httpResponseMessage.Content.ReadAsAsync <InsertTourResponse>().ContinueWith(
                t => { return(t.Result); }).Result;
            var contactResponse = postResponse.TourViewModel;

            mockRepository.VerifyAll();
            Assert.IsTrue(postResponse.TourViewModel.TourID > 0, "Id is not greater than zero after insert.");
            Assert.AreEqual(httpResponseMessage.StatusCode, HttpStatusCode.OK);
            Assert.AreEqual(postResponse.Exception, null);
        }
        // PUT api/<controller>/5
        public IHttpActionResult Put(TourViewModel tour)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Not a valid model"));
            }

            using (var ctx = new ExploreCaliforniaEntities())
            {
                var existingTour = ctx.Tours.FirstOrDefault(t => t.TourId == tour.TourId);

                if (existingTour != null)
                {
                    existingTour.Name        = tour.Name;
                    existingTour.Description = tour.Description;

                    ctx.SaveChanges();
                }
                else
                {
                    return(NotFound());
                }
            }

            return(Ok());
        }
示例#3
0
        public TabsPage()
        {
            On <Xamarin.Forms.PlatformConfiguration.Android>().SetToolbarPlacement(ToolbarPlacement.Bottom);
            InitializeComponent();

            BindingContext = new TourViewModel(api);
        }
示例#4
0
        public static TourViewModel GetTourViewModel()
        {
            ICollection <ContactEntry> contact = new List <ContactEntry>()
            {
                new ContactEntry()
                {
                    Id = 1, FullName = "Unit-test"
                }
            };
            IEnumerable <TagViewModel> tag = new List <TagViewModel>()
            {
                new TagViewModel()
                {
                    TagID = 1001
                }
            };
            TourViewModel tourViewModel = new TourViewModel();

            tourViewModel.TourDetails   = "Sample";
            tourViewModel.Contacts      = contact;
            tourViewModel.CommunityID   = 1;
            tourViewModel.TourDate      = new DateTime(14, 8, 15);
            tourViewModel.ReminderTypes = new List <dynamic>()
            {
                ReminderType.Email
            };
            return(tourViewModel);
        }
        //public List<ContractDetailViewModel> ListTravel()
        //{
        //    var listTravelDb = from c in _db.ContractDetails
        //                       join t in _db.Tours on c.TourId equals t.Id
        //                       join ct in _db.Contracts on c.ContractId equals ct.Id
        //                       join cs in _db.Customers on ct.CustomerId equals cs.Id
        //                       select new { t.Code, c.NameTour, cs.Name, ct.BeginDate, ct.Paid, t.Cost, c.Id };
        //    var listTravel = new List<ContractDetailViewModel>();
        //    foreach (var item in listTravelDb)
        //    {
        //        ContractDetailViewModel viewModel = new ContractDetailViewModel();
        //        viewModel.Id = item.Id;
        //        viewModel.Code = item.Code;
        //        viewModel.NameTour = item.NameTour;
        //        viewModel.NameCustomer = item.Name;
        //        viewModel.BeginDate = item.BeginDate;
        //        viewModel.Paid = item.Paid;
        //        viewModel.Cost = item.Cost;
        //        listTravel.Add(viewModel);
        //    }
        //    return listTravel;
        //}
        public IQueryable <TourViewModel> ShowAllTour()
        {
            var tours = from t in _db.Tours
                        select new { t.ID, t.Code, t.Tentour, t.Diadiemkhoihanh, t.Diemden, t.Ngaydi, t.Lichtrinh, t.Hinhanh, t.Gianguoilon, t.TenHDV, t.Mota, t.Trangthai, t.Songuoi };

            var tourView = new List <TourViewModel>();

            foreach (var item in tours)
            {
                TourViewModel tourViewModel = new TourViewModel();
                tourViewModel.ID              = item.ID;
                tourViewModel.Code            = item.Code;
                tourViewModel.Tentour         = item.Tentour;
                tourViewModel.Diadiemkhoihanh = item.Diadiemkhoihanh;
                tourViewModel.Diemden         = item.Diemden;
                tourViewModel.Ngaydi          = item.Ngaydi;
                //tourViewModel.Ngayve = item.Ngayve;
                tourViewModel.Lichtrinh   = item.Lichtrinh;
                tourViewModel.Hinhanh     = item.Hinhanh;
                tourViewModel.Gianguoilon = item.Gianguoilon;
                //tourViewModel.Giatreem = item.Giatreem;
                tourViewModel.TenHDV    = item.TenHDV;
                tourViewModel.Mota      = item.Mota;
                tourViewModel.Trangthai = item.Trangthai;
                tourViewModel.Songuoi   = item.Songuoi;
                tourView.Add(tourViewModel);
            }
            return(tourView.AsQueryable());
        }
        public ActionResult Submit(TourViewModel model, HttpPostedFileBase file)
        {
            if (!ModelState.IsValid)
            {
                return(CurrentUmbracoPage());
            }

            //if (file.ContentLength > 0)
            //{
            //    var fileName = Path.GetFileName(file.FileName);
            string imgPath = @"D:\3Capture.PNG";


            var ms = Services.MediaService;

            using (var file1 = new FileStream(imgPath, FileMode.Open))
            {
                var parent = ms.GetRootMedia().FirstOrDefault(); // or -1 for root media object
                var media  = ms.CreateMedia("TestImage", parent, Constants.Conventions.MediaTypes.Image);
                System.Drawing.Image sourceimage = System.Drawing.Image.FromStream(file1);
                media.SetValue(Constants.Conventions.Media.File, file1); // save image inside folder
                var mediaSaved = ms.Save(media);
            }
            //}

            CreateTour();
            //Work with form data here
            return(RedirectToCurrentUmbracoPage());
        }
示例#7
0
        public IActionResult EditTour(TourViewModel command)
        {
            List <Diadiemdulich> listDiadiem = new List <Models.db.Diadiemdulich>();

            listDiadiem = (from t in _db.Diadiemduliches
                           //where t.MienID == SelectedValue2
                           select t).ToList();
            ViewBag.ListDiaDiem = listDiadiem;
            List <Mien> listMien = new List <Models.db.Mien>();

            listMien         = (from t in _db.Miens select t).ToList();
            ViewBag.ListMien = listMien;
            var model = this._travelService.SeeTour(command.ID);

            model.Tentour         = command.Tentour;
            model.Thuocmien       = command.Thuocmien;
            model.Diadiemkhoihanh = command.Diadiemkhoihanh;
            model.Diemden         = command.Diemden;
            model.Thoigiandi      = command.Thoigiandi;
            //model.Hinhanh = command.Hinhanh;
            // model.Lichtrinh = command.Lichtrinh;
            model.Mota        = command.Mota;
            model.Ngaydi      = command.Ngaydi;
            model.Songuoi     = command.Songuoi;
            model.TenHDV      = command.TenHDV;
            model.Gianguoilon = command.Gianguoilon;

            if (ModelState.IsValid)
            {
                this._travelService.EditTour(command);
                return(RedirectToAction("ShowAllTour", "Admin"));
            }
            return(View(model));
        }
        public async Task <ActionResult> Create(TourViewModel model, HttpPostedFileBase image)
        {
            // 1) якщо картинка:
            //    2) зберегти картинку на сервер
            // 2.1) конвертувати картинку
            //    3) записати шлях в модель
            if (!ModelState.IsValid)
            {
                return(View());
            }

            if (image != null)
            {
                var fileName = Guid.NewGuid().ToString() + ".jpg";

                var bitmap     = BitmapConvertor.Convert(image.InputStream, 200, 200);
                var serverPath = Server.MapPath($"~/Images/{fileName}");

                bitmap.Save(serverPath);
                model.Image             = $"/Images/{fileName}";
                model.ImageForGallaries = new List <string>();
                model.ImageForGallaries.Add($"/Images/{fileName}");
            }

            await _tourService.AddTourAsync(_mapper.Map <Tour>(model));

            ViewBag.SuccessTourCreated = "succes";

            return(RedirectToAction("ToursPage"));
        }
示例#9
0
 public ActionResult Create(TourViewModel tourViewModel)
 {
     try
     {
         if (ModelState.IsValid)
         {
             TourDTO newTour = new TourDTO()
             {
                 Country   = tourViewModel.Country,
                 Region    = tourViewModel.Region,
                 StartDate = tourViewModel.StartDate,
                 EndDate   = tourViewModel.EndDate,
                 Hotel     = tourViewModel.Hotel
             };
             tourService.CreateTour(newTour);
             return(RedirectToAction("Index"));
         }
     }
     catch (DataException /* dex */)
     {
         //Log the error (uncomment dex variable name after DataException and add a line here to write a log.)
         ModelState.AddModelError("", "Unable to save changes. Try again, and if the problem persists, see your system administrator.");
     }
     return(View(tourViewModel));
 }
示例#10
0
        public async Task <IActionResult> SearchActivity(FilterActivityViewModel valModel)
        {
            TourViewModel vModel = new TourViewModel();

            try {
                valModel.DateStart = ConvertStringToDate(valModel.DateStartString);

                string vIdLanguageCookie        = GetCookie(Constants.NameCookieIdLanguage, Constants.LanguageDefault);
                string vInitialsDefaultLanguage = GetCookie(Constants.NameCookieInitialsLanguage, Constants.InitialsLanguageDefault);
                string vIdCurrencyCookie        = GetCookie(Constants.NameCookieIdCurrencySelected, Constants.CurrencyDefault);
                ViewData["LanguageInitialDefault"] = vInitialsDefaultLanguage;
                Startup._vPageNumberActivity       = valModel.PageNumber;
                SetFilter(Startup._vIdTourSelected, Guid.Parse(vIdLanguageCookie), Guid.Parse(vIdCurrencyCookie),
                          valModel.MinimumPeople, valModel.DateStart, _vRowsPerPage, valModel.PageNumber);
                ActivityResponseViewModel vModelResponse = await ListInfoTour();

                vModel.Activities = vModelResponse.Activities;
                if (vModel != null && vModel.Activities != null && vModel.Activities.Count() > 0)
                {
                    Startup._vDataTourByPass = vModel;
                    vModel.Activities        = vModel.Activities.OrderBy(i => i.Name).ToList();
                    double vRows = Math.Ceiling(Convert.ToDouble(vModelResponse.TotalRows) / Convert.ToDouble(_vRowsPerPage));
                    CreateViewDataPagination(valModel.PageNumber, vRows);
                    return(PartialView("_ActivityList", vModel));
                }
                CreateViewDataPagination(1, 5);
            } catch (Exception) {
                vModel            = new TourViewModel();
                vModel.Activities = new List <ActivityViewModel>();
            }
            return(PartialView("_ActivityList", vModel));
        }
示例#11
0
        public void InsertTour_WithValidDetailsWithFutureReminder_NotInserted()
        {
            TourViewModel tourViewModel = TourMockData.GetTourViewModel();

            tourViewModel.ReminderDate = new DateTime(14, 8, 14);
            mockTourRepository.Setup(tr => tr.Insert(It.IsAny <Tour>())).Verifiable("Unable to insert Tour");
            mockUnitOfWork.Setup(tr => tr.Commit()).Returns(new Tour()
            {
                Id = NEW_TOUR_ID
            });
            InsertTourRequest request = new InsertTourRequest()
            {
                TourViewModel = TourMockData.CreateMockTourWithCustomValues(mockRepository,
                                                                            0, 2, 1, 2, new DateTime(2015, 1, 31), new List <ReminderType>()
                {
                    ReminderType.Email
                }, new DateTime(2014, 12, 31)).Object
            };
            InsertTourResponse response = new InsertTourResponse();

            response = tourService.InsertTour(request);
            mockRepository.VerifyAll();
            Assert.AreEqual(null, response.Exception);
            Assert.AreNotEqual(typeof(ArgumentNullException), response.Exception);
        }
        public object CreateViewModel(DependencyObject sender)
        {
            IWindowFactory windowFactoryStart = new StartTourWindowFactory();
            TourViewModel  vm = new TourViewModel(windowFactoryStart);

            ObserverSingleton.GetInstance.TourObservers.Add(vm);
            return(vm);
        }
示例#13
0
        private void SetInfoRestantTour(ref TourViewModel vModel)
        {
            TourViewModel vTourViewModel = vModel;
            TourViewModel vTour          = Startup._vDataCityTours.Tours.Where(i => i.Id == vTourViewModel.Id).FirstOrDefault();

            vModel.Name     = vTour.Name;
            vModel.UrlPhoto = vTour.UrlPhoto;
        }
示例#14
0
        public TabFiltre()
        {
            InitializeComponent();
            //  BindingContext = new TourViewModel(api);
            var vm = new TourViewModel(api);

            this.BindingContext = vm;
        }
示例#15
0
        public TourViewModel GetTour(string tourType, string countryUrl, string tourUrl)
        {
            var tourTypeDomain = TourTypesConverter.ConvertFromString(tourType);
            var tour           = _tourManager.GetTour(tourTypeDomain, countryUrl, tourUrl);
            var tourViewModel  = new TourViewModel(tour);

            return(tourViewModel);
        }
示例#16
0
        public async Task <IActionResult> Edit(string id)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(id))
                {
                    return(NotFound());
                }
                Tour tour = await tourDAL.FindTourByTourIdEmpAsync(id);

                if (tour == null)
                {
                    return(NotFound());
                }
                TourViewModel model = new TourViewModel
                {
                    Id          = tour.Id,
                    Name        = tour.Name,
                    Image       = tour.Image,
                    Description = tour.Description,
                    FromDate    = tour.FromDate,
                    ToDate      = tour.ToDate,
                    AdultFare   = tour.AdultFare,
                    KidFare     = tour.KidFare,
                    MaxGuest    = tour.MaxGuest,
                    Transport   = tour.Transport,
                    IsActive    = tour.IsActive
                };

                // get related destinations and guides
                IEnumerable <Destination> destinations = await tourDAL.FindDestinationsByTourIdAsync(id);

                IEnumerable <AppUser> guides = await tourDAL.FindGuidesByTourIdAsync(id);

                if (destinations != null)
                {
                    model.Destinations = destinations.Select(d => d.Id).ToList <string>();
                    model.Departure    = model.Destinations[0];
                    model.Destinations.RemoveAt(0);
                }

                if (guides != null)
                {
                    model.Guides = guides.Select(g => g.Id).ToList <string>();
                }

                model.DestinationItems = await InitDestinationItemsAsync();

                model.GuideItems = await InitGuideItemsAsync();

                return(View(model));
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                throw;
            }
        }
示例#17
0
        public HttpResponseMessage PostTour(TourViewModel viewModel)
        {
            InsertTourResponse response = tourService.InsertTour(new InsertTourRequest()
            {
                TourViewModel = viewModel
            });

            return(Request.BuildResponse(response));
        }
示例#18
0
        public async Task <TourViewModel> CreateTour(TourViewModel tour)
        {
            Tour tourToCreate = _mapper.Map <Tour>(tour);
            await _applicationDbContext.Tours.AddAsync(tourToCreate);

            await _applicationDbContext.SaveChangesAsync();

            return(_mapper.Map <TourViewModel>(tourToCreate));
        }
示例#19
0
        public HttpResponseMessage PutTour(TourViewModel viewModel)
        {
            UpdateTourResponse response = tourService.UpdateTour(new UpdateTourRequest()
            {
                TourViewModel = viewModel
            });

            return(Request.BuildResponse(response));
        }
示例#20
0
 public TourView(TourViewModel vm)
 {
     InitializeComponent();
     this.DataContext = vm;
     vm.CloseView    += (s, e) =>
     {
         DataContext = null;
         this.Close();
     };
 }
示例#21
0
 public quanlyTourController(ApplicationDbContext db, HostingEnvironment hostingEnviroment)
 {
     _db = db;
     _hostingEnviroment = hostingEnviroment;
     TourVM             = new TourViewModel()
     {
         TuyenDuongs = _db.TuyenDuongs.ToList(),
         Tour        = new Models.DataModel.Tour()
     };
 }
示例#22
0
        public ActionResult AddTour()
        {
            TourViewModel viewModel = new TourViewModel
            {
                Countries     = GetCountriesAsSelectList(),
                HealthResorts = GetHealthResortsAsSelectList(),
                Hotels        = GetHotelsAsSelectList()
            };

            return(View(viewModel));
        }
示例#23
0
        public TourViewModel SeeTour(int id)
        {
            TourViewModel viewModel = new TourViewModel();
            var           listTour  = _db.Tours.FirstOrDefault(n => n.Id == id);

            {
                viewModel.Id       = listTour.Id;
                viewModel.NameTour = listTour.NameTour;
            }
            return(viewModel);
        }
        public async Task <IActionResult> Create(TourViewModel vm)
        {
            if (ModelState.IsValid)
            {
                var result = await _services.CreateAsync(_mapper.Map <TourDTO>(vm));

                return(result.IsValid
                    ? RedirectToAction("Index")
                    : _oops.OutPutError("Tour", "Index", result.ErrorsList));
            }
            return(View(vm));
        }
示例#25
0
 public Tour(TourViewModel tourViewModel)
 {
     this.Id          = tourViewModel.Id;
     this.Cost        = tourViewModel.Cost;
     this.Code        = tourViewModel.Code;
     this.NameTour    = tourViewModel.NameTour;
     this.Day         = tourViewModel.Day;
     this.Night       = tourViewModel.Night;
     this.Picture     = tourViewModel.Picture;
     this.Description = tourViewModel.Description;
     this.Title       = tourViewModel.Title;
 }
示例#26
0
        public ActionResult Stops(int id)
        {
            Artist        artist   = GetCurrentArtist();
            TourViewModel tourInfo = new TourViewModel()
            {
                AllConcerts = context.Concerts.Where(c => c.ArtistId == artist.ArtistId && c.ConcertDate > DateTime.Today && c.TourId == null).ToList(),
                AllStops    = context.Concerts.Where(c => c.ArtistId == artist.ArtistId && c.TourId == id).ToList(),
                CurrentTour = context.Tours.FirstOrDefault(t => t.TourId == id)
            };

            return(View(tourInfo));
        }
示例#27
0
        private void LoadData()
        {
            ComboBoxHalts.ItemsSource = Hlogic.Read(new HaltBindingModel {
                OperatorID = App.Operator.ID
            });
            ComboBoxHalts.SelectedItem = null;
            var tours = logic.Read(new TourBindingModel {
                OperatorID = App.Operator.ID
            });

            foreach (var tour in tours)
            {
                if (tour.ID == id)
                {
                    this.tour = tour;
                }
            }
            var listbindmodels = Guidelogic.Read(new GuideBindingModel {
                OperatorID = App.Operator.ID
            });

            foreach (var guide in listbindmodels)
            {
                ListBoxAvailable.Items.Add(guide);
            }
            if (tour != null)
            {
                ListBoxAvailable.Items.Clear();
                List <int> array = new List <int>();
                var        listSelectedGuides = tour.TourGuides.ToList();
                foreach (var guide in listSelectedGuides)
                {
                    GuideViewModel current = Guidelogic.Read(new GuideBindingModel
                    {
                        ID = guide.Key
                    })[0];
                    ListBoxSelected.Items.Add(current);
                    array.Add(current.ID);
                }
                foreach (var guide in listbindmodels)
                {
                    if (!array.Contains(guide.ID))
                    {
                        ListBoxAvailable.Items.Add(guide);
                    }
                }
                NameTextBox.Text            = tour.Name;
                CountryTextBox.Text         = tour.Country;
                PriceTextBox.Text           = tour.Price.ToString();
                ComboBoxHalts.SelectedValue = tour.HaltID;
            }
        }
        public IActionResult GetId(int id)
        {
            var tour    = _context.Tours.Find(id);
            var NewTour = new TourViewModel();

            NewTour.TourId      = tour.TourId;
            NewTour.ToursName   = tour.ToursName;
            NewTour.Country     = tour.Country;
            NewTour.Description = tour.Description;
            NewTour.DaysCost    = tour.DaysCost;
            NewTour.ImgSrc      = tour.ImgSrc;
            return(View(NewTour));
        }
示例#29
0
        // Placementrules Controller Actions

        // GET: Tour/PlacementRules
        public async Task <IActionResult> PlacementRules(int?id)
        {
            TourViewModel tvm            = new TourViewModel();
            var           placementrules = (from placementrule in _context.PlacementRules
                                            where placementrule.TourId == id
                                            select placementrule).ToList();
            var t = (from tour in _context.Tours
                     where tour.TourId == id
                     select tour).FirstOrDefault();

            tvm.Tour           = t;
            tvm.PlacementRules = placementrules;
            return(View(tvm));
        }
示例#30
0
        public ActionResult Delete(int id)
        {
            try
            {
                TourViewModel tour = Mapper.Map <TourViewModel>(tourService.FindById(id));
                return(View(tour));
            }
            catch (Exception e)
            {
                ModelState.AddModelError("", e.Message);
            }

            return(View());
        }
示例#31
0
 public ActionResult AddTour(TourViewModel model, HttpPostedFileBase picture)
 {
     if (this.ModelState.IsValid)
     {
         try
         {
             Mapper.CreateMap<TourViewModel, TourDto>()
                 .ForMember(dest => dest.Image, opt => opt.MapFrom(src => FileToBytes(src.Image)));
             model.Image = picture;
             var tour = Mapper.Map<TourDto>(model);
             this.tourService.CreateTour(tour);
             this.tourService.Commit();
             return this.RedirectToAction("Index", "Home", new { area = "Common" });
         }
         catch (Exception exception)
         {
             this.ViewData["ErrMsg"] = exception.Message;
             this.ViewData["ErrTrace"] = exception.StackTrace;
             return this.View("Error");
         }
     }
     model = new TourViewModel { Cities = this.GetCities(), Hotels = this.GetHotels() };
     return this.View(model);
 }
示例#32
0
        public static MvcHtmlString TourPreviewCard(this HtmlHelper htmlHelper, TourViewModel tourPreview, int counter)
        {
            var card = new TagBuilder("div");

            card.MergeAttribute(
                "class",
                counter == 0
                    ? "demo-card-square3 mdl-card mdl-shadow--2dp mdl-cell mdl-cell--6-col"
                    : "demo-card-square mdl-card mdl-shadow--2dp mdl-cell mdl-cell--12-col");

            var title = new TagBuilder("div");
            title.MergeAttribute("class", "mdl-card__title mdl-card--expand");

            var url = string.Format("data:image/png;base64,{0}", Convert.ToBase64String(tourPreview.Image));

            title.MergeAttribute(
                "style",
                String.Format("background: url('{0}') center right 15% no-repeat #46B6AC;", url));

            var text = new TagBuilder("h2");
            text.MergeAttribute("class", "mdl-card__title-text");
            text.SetInnerText(tourPreview.Name);

            title.InnerHtml = text.ToString();

            var description = new TagBuilder("div");
            description.MergeAttribute("class", "mdl-card__supporting-text");

            description.SetInnerText(tourPreview.Description);

            var action = new TagBuilder("div");
            action.MergeAttribute("class", "mdl-card__actions mdl-card--border");

            var link = new TagBuilder("a");
            link.MergeAttribute("class", "mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect details-link");
            link.MergeAttribute("href", "/Common/Home/TourDetails/" + tourPreview.Id);
            link.SetInnerText(Resource.Details);

            var fire = new TagBuilder("img");
            fire.MergeAttribute("src", "../Views/../Content/Images/fire.ico");
            fire.MergeAttribute("class", "hot-ico");

            if(tourPreview.State == TourDtoState.Hot)
                action.InnerHtml = "<b>" + tourPreview.FinishCity.Name + " | " + tourPreview.BeginDepartureTime.ToLocalTime().ToString("M") + " - " + tourPreview.EndArrivalTime.ToLocalTime().ToString("M") + "</b>" +  link + fire;
            else
                action.InnerHtml = "<b>" + tourPreview.FinishCity.Name + " | " + tourPreview.BeginDepartureTime.ToLocalTime().ToString("M") + " - " + tourPreview.EndArrivalTime.ToLocalTime().ToString("M") + "</b>" + link;
            card.InnerHtml = title.ToString() + description + action;

            return MvcHtmlString.Create(card.ToString());
        }
示例#33
0
 public ActionResult AddTour()
 {
     var model = new TourViewModel { Cities = this.GetCities(), Hotels = this.GetHotels() };
     return this.View(model);
 }
示例#34
0
 public ActionResult FiltrTours(TourViewModel model)
 {
     return this.View(Mapper.Map<TourViewModel>(this.tourService.GetAllTours()));
 }
示例#35
0
        public static MvcHtmlString TourCard(this HtmlHelper htmlHelper, TourViewModel tour)
        {
            var card = new TagBuilder("div");
            card.MergeAttribute("class", "demo-card-square-2 mdl-card mdl-shadow--2dp mdl-cell mdl-cell--12-col");

            var title = new TagBuilder("div");
            title.MergeAttribute("class", "mdl-card__media mdl-color-text--grey-50");

            var url = string.Format("data:image/png;base64,{0}", Convert.ToBase64String(tour.Image));

            title.MergeAttribute(
                "style",
                String.Format("background: url('{0}') center right 15% no-repeat #46B6AC;", url));

            var text = new TagBuilder("h3");
            text.MergeAttribute("class", "mdl-card__title-text");
            text.SetInnerText(tour.Name);

            title.InnerHtml = text.ToString();

            var description = new TagBuilder("div");
            description.MergeAttribute("class", "mdl-color-text--grey-700 mdl-card__supporting-text");
            description.SetInnerText(tour.Description);

            var lName = new TagBuilder("h5");
            lName.SetInnerText(Resource.Name);

            var pFame = new TagBuilder("p");
            pFame.SetInnerText(tour.Name);

            var lDescription = new TagBuilder("h5");
            lDescription.SetInnerText(Resource.Description);

            var pDescription = new TagBuilder("p");
            pDescription.SetInnerText(tour.Description);

            var lType = new TagBuilder("h5");
            lType.SetInnerText(Resource.Type);

            var pType = new TagBuilder("p");
            pType.SetInnerText(tour.Type.ToString());

            var lBdTime = new TagBuilder("h5");
            lBdTime.SetInnerText(Resource.DepartureDate);

            var pBdTime = new TagBuilder("p");
            pBdTime.SetInnerText(tour.BeginDepartureTime.ToLocalTime().ToString("d"));

            var lBaTime = new TagBuilder("h5");
            lBaTime.SetInnerText(Resource.ArrivalDate);

            var pBaTime = new TagBuilder("p");
            pBaTime.SetInnerText(tour.BeginArrivalTime.ToLocalTime().ToString("d"));

            var lEdTime = new TagBuilder("h5");
            lEdTime.SetInnerText(Resource.DepartureDate);

            var pEdTime = new TagBuilder("p");
            pEdTime.SetInnerText(tour.EndDepartureTime.ToLocalTime().ToString("d"));

            var lEaTime = new TagBuilder("h5");
            lEaTime.SetInnerText(Resource.ArrivalDate);

            var pEaTime = new TagBuilder("p");
            pEaTime.SetInnerText(tour.EndArrivalTime.ToLocalTime().ToString("d"));

            var lPersonNumber = new TagBuilder("h5");
            lPersonNumber.SetInnerText(Resource.PersonNumber);

            var pPersonNumber = new TagBuilder("p");
            pPersonNumber.SetInnerText(tour.PersonNumber.ToString());

            var lFeeding = new TagBuilder("h5");
            lFeeding.SetInnerText(Resource.Feeding);

            var pFeeding = new TagBuilder("p");
            pFeeding.SetInnerText(tour.Feeding.ToString());

            var lState = new TagBuilder("h5");
            lState.SetInnerText(Resource.State);

            var pState = new TagBuilder("p");
            pState.SetInnerText(tour.State.ToString());

            var lPrice = new TagBuilder("h5");
            lPrice.SetInnerText(Resource.Price);

            var pPrice = new TagBuilder("p");
            pPrice.SetInnerText("$" + tour.Price.ToString(CultureInfo.InvariantCulture));

            var lFinishCityName = new TagBuilder("h5");
            lFinishCityName.SetInnerText(Resource.FinishCity);

            var pFinishCityName = new TagBuilder("p");
            pFinishCityName.SetInnerText(tour.FinishCity.Name);

            var lFinishCityDesc = new TagBuilder("h5");
            lFinishCityDesc.SetInnerText(Resource.Description);

            var pFinishCityDesc = new TagBuilder("p");
            pFinishCityDesc.SetInnerText(tour.FinishCity.Description);

            var book = new TagBuilder("a");
            book.MergeAttribute("class", "mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect details-link");
            book.MergeAttribute("href", "/User/Booking/BookTour/" + tour.Id);
            book.SetInnerText(Resource.Book);

            description.InnerHtml = lName.ToString() + pFame + lDescription + pDescription +
                lType + pType + lBdTime + pBdTime + lBaTime + pBaTime + lEdTime + pEdTime +
                lEaTime + pEaTime + lPersonNumber + pPersonNumber + lFeeding + pFeeding +
                lState + pState + lPrice + pPrice + lFinishCityName + pFinishCityName +
                lFinishCityDesc + pFinishCityDesc;

            card.InnerHtml = title.ToString() + description + book;

            return MvcHtmlString.Create(card.ToString());
        }