Ejemplo n.º 1
0
        public async Task <IActionResult> OnGetAsync()
        {
            var user = await this.userManager.GetUserAsync(this.User);

            if (user == null)
            {
                return(this.NotFound($"Unable to load user with ID '{this.userManager.GetUserId(this.User)}'."));
            }

            var userName = await this.userManager.GetUserNameAsync(user);

            var email = await this.userManager.GetEmailAsync(user);

            var phoneNumber = await this.userManager.GetPhoneNumberAsync(user);

            this.Username = userName;

            this.Input = new IndexInputModel
            {
                Email       = email,
                PhoneNumber = phoneNumber,
            };

            this.IsEmailConfirmed = await this.userManager.IsEmailConfirmedAsync(user);

            return(this.Page());
        }
Ejemplo n.º 2
0
        public IActionResult Index(IndexInputModel model)
        {
            var orders      = this.orders.Get();
            var page        = model.Page > 0 ? model.Page : 1;
            var ordersCount = 0;

            if (model.All)
            {
                orders      = orders.OrderByDescending(o => o.Id);
                ordersCount = this.orders.Get().Count();
            }
            else
            {
                Expression <Func <Order, bool> > statusPredicate = x =>
                                                                   (x.ConfirmationStatus == ConfirmationStatus.Confirmed || x.ConfirmationStatus == ConfirmationStatus.Pending) &&
                                                                   (x.OrderStatus == OrderStatus.InProgress || x.OrderStatus == OrderStatus.Sent || x.OrderStatus == OrderStatus.Finalized);
                orders = orders
                         .Where(statusPredicate)
                         .OrderByDescending(o => o.Id)
                         .Skip((page - 1) * PageSize)
                         .Take(PageSize);
                ordersCount = this.orders.Get().Where(statusPredicate).Count();
            }

            var viewModel = new IndexViewModel()
            {
                Orders      = orders.ToList(),
                All         = model.All,
                Pages       = (int)Math.Ceiling((decimal)ordersCount / PageSize),
                CurrentPage = page,
            };

            return(this.View(viewModel));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> OnGetAsync()
        {
            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'."));
            }

            var userName = await _userManager.GetUserNameAsync(user);

            var email = await _userManager.GetEmailAsync(user);

            var organization = user.Organization;
            var phoneNumber  = await _userManager.GetPhoneNumberAsync(user);

            Username = userName;

            Input = new IndexInputModel
            {
                Email        = email,
                Organization = organization,
                PhoneNumber  = phoneNumber
            };

            IsEmailConfirmed = await _userManager.IsEmailConfirmedAsync(user);

            return(Page());
        }
Ejemplo n.º 4
0
        public IActionResult Index(IndexInputModel input)
        {
            var countries = this.countriesService.GetMostPopularByKeyValuePairs();

            input.Countries = countries;

            return(this.View(input));
        }
Ejemplo n.º 5
0
        public IActionResult Index()
        {
            var countries = this.countriesService.GetMostPopularByKeyValuePairs();

            var input = new IndexInputModel
            {
                Countries = countries,
            };

            return(this.View(input));
        }
Ejemplo n.º 6
0
        private async Task LoadAsync(User user)
        {
            var email = await _userManager.GetEmailAsync(user);

            var isEmailConfirmed = await _userManager.IsEmailConfirmedAsync(user);

            var hasAuthenticator = await _userManager.GetAuthenticatorKeyAsync(user) != null;

            var is2faEnabled = await _userManager.GetTwoFactorEnabledAsync(user);

            var isMachineRemembered = await _signInManager.IsTwoFactorClientRememberedAsync(user);

            var recoveryCodesLeft = await _userManager.CountRecoveryCodesAsync(user);

            var subscription = await _subscriptionManager.GetSubscriptionById(user.SubscriptionId);

            InputModel = new IndexInputModel
            {
                EmailChange = new EmailChangeInputModel
                {
                    NewEmail = email,
                },
                ChangePassword = new ChangePasswordInputModel(),
                TwoFactor      = new TwoFactorInputModel
                {
                    Is2faEnabled = is2faEnabled
                }
            };

            ViewModel = new IndexViewModel
            {
                ApiKey = new ApiKeyViewModel
                {
                    ApiKey = user.ApiKey
                },
                EmailChange = new EmailChangeViewModel
                {
                    Email            = email,
                    IsEmailConfirmed = isEmailConfirmed
                },
                TwoFactor = new TwoFactorViewModel
                {
                    HasAuthenticator    = hasAuthenticator,
                    IsMachineRemembered = isMachineRemembered,
                    RecoveryCodesLeft   = recoveryCodesLeft
                },
                Subscription = new SubscriptionViewModel
                {
                    ActiveSubscription = subscription
                },
                ChangePassword = new ChangePasswordViewModel()
            };
        }
        private async Task LoadAsync(CinemaWorldUser user)
        {
            var userName = await this.userManager.GetUserNameAsync(user);

            var phoneNumber = await this.userManager.GetPhoneNumberAsync(user);

            this.Username = userName;

            this.Input = new IndexInputModel
            {
                PhoneNumber = phoneNumber,
            };
        }
Ejemplo n.º 8
0
        public ContentResult Index(IndexInputModel input)
        {
            string result;

            try
            {
                result = _calculationService.Calculate(input.Argument1, input.Argument2, input.Operation).ToString();
            }
            catch (Exception e)
            {
                result = $"Error:{e.Message}";
            }

            return(Content(result));
        }
Ejemplo n.º 9
0
        private async Task LoadAsync(ApplicationUser user)
        {
            var userName = await this.userManager.GetUserNameAsync(user);

            var phoneNumber = await this.userManager.GetPhoneNumberAsync(user);

            this.Username = userName;

            this.Input = new IndexInputModel
            {
                Email       = user.Email,
                FirstName   = user.FirstName,
                LastName    = user.LastName,
                Address     = user.Address,
                PhoneNumber = phoneNumber,
            };
        }
Ejemplo n.º 10
0
        public async Task <IActionResult> Index(IndexInputModel input)
        {
            if (ModelState.IsValid)
            {
                var mask = _mapper.Map <PageMask>(input);
                await _repository.InsertPageMaskAsync(mask);

                var shortId = GuidEncoder.Encode(mask.PageMaskId);
                return(Redirect($"/success?id={shortId}"));
            }

            var model = new IndexViewModel()
            {
                Input = input
            };

            return(View(model));
        }
Ejemplo n.º 11
0
        public async Task <IActionResult> OnGetAsync()
        {
            var user = await userManager.GetUserAsync(User);

            if (user == null)
            {
                return(NotFound($"Unable to load user with ID '{userManager.GetUserId(User)}'."));
            }

            this.UserId = user.Id;
            var userName = await userManager.GetUserNameAsync(user);

            var email = await userManager.GetEmailAsync(user);

            var organization = user.Organization;
            var phoneNumber  = await userManager.GetPhoneNumberAsync(user);

            if (user.HasLogo)
            {
                this.LogoFileName = user.Id + ".jpg";
            }
            else
            {
                this.LogoFileName = "DefaultLogo" + ".jpg";
            }

            Username = userName;

            Input = new IndexInputModel
            {
                Email        = email,
                Organization = organization,
                PhoneNumber  = phoneNumber
            };

            IsEmailConfirmed = await userManager.IsEmailConfirmedAsync(user);

            return(Page());
        }
Ejemplo n.º 12
0
        public IActionResult Index(IndexInputModel indexInputModel)
        {
            var pageSize   = indexInputModel.PageSize ?? WebConstants.DefaultIndexPageSize;
            var pageNumber = indexInputModel.PageNumber ?? WebConstants.DefaultPageNumber;


            var products       = this.productsService.GetAllProducts(indexInputModel.ChildCategoryId, indexInputModel.SearchString);
            var sortedProducts = this.productsService.SortProducts(products, indexInputModel.Sort).To <ProductHomeViewModel>().ToList();

            var pageSortedProducts = sortedProducts.ToPagedList(pageNumber, pageSize);

            var viewModel = new IndexViewModel
            {
                Products        = pageSortedProducts,
                PageSize        = pageSize,
                PageNumber      = pageNumber,
                ChildCategoryId = indexInputModel.ChildCategoryId,
                Sort            = indexInputModel.Sort,
                SearchString    = indexInputModel.SearchString
            };

            return(this.View(viewModel));
        }
Ejemplo n.º 13
0
        public SearchIndexListViewModel GetBySearchRequirements(IndexInputModel input, string userEmail)
        {
            var isCountryIdParsed = int.TryParse(input.CountryId, out int countryId);
            var isTownIdParsed    = int.TryParse(input.TownId, out int townId);
            var isCheckInValid    = DateTime.TryParse(input.CheckIn.ToString(), out var checkIn);
            var isCheckOutValid   = DateTime.TryParse(input.CheckOut.ToString(), out var checkOut);

            if (
                !isCheckInValid ||
                !isCheckOutValid ||
                !isCountryIdParsed ||
                !isTownIdParsed ||
                countryId <= 0 ||
                townId <= 0 ||
                input.Members <= 0 ||
                input.MinBudget < 0 ||
                input.MinBudget > input.MaxBudget)
            {
                return(null);
            }

            var properties = this.propertiesRepository
                             .All()
                             .Where(
                p => p.TownId == townId &&
                p.Town.CountryId == countryId &&
                p.ApplicationUser.Email != userEmail)
                             .Select(p => new SearchIndexInListViewModel
            {
                Id               = p.Id,
                Name             = p.Name,
                Country          = p.Town.Country.Name,
                Town             = p.Town.Name,
                Stars            = p.Stars,
                PropertyCategory = p.PropertyCategory.Name,
                Image            = p.PropertyImages.FirstOrDefault(pi => pi.PropertyId == p.Id) != null ?
                                   $"../..{GlobalConstants.PropertyImagesPath}{p.PropertyImages.FirstOrDefault(pi => pi.PropertyId == p.Id).Id}.{p.PropertyImages.FirstOrDefault(pi => pi.PropertyId == p.Id).Extension}"
                            : p.Offers.Select(o => o.OfferImages.FirstOrDefault()).FirstOrDefault() != null ?
                                   $"../..{GlobalConstants.OfferImagesPath}{p.Offers.Select(o => o.OfferImages.FirstOrDefault()).FirstOrDefault().Id}.{p.Offers.Select(o => o.OfferImages.FirstOrDefault()).FirstOrDefault().Extension}"
                            : $"../..{GlobalConstants.DefaultImagePath}",
                OffersCount = p.Offers
                              .Where(
                    o => (o.ValidFrom.Date >= DateTime.UtcNow.Date ? o.ValidFrom.Date : DateTime.UtcNow.Date).AddDays(2) <= checkIn.Date &&
                    o.ValidTo.Date >= checkOut.Date &&
                    (checkOut - checkIn).TotalDays >= 2 &&
                    (byte)o.OfferBedTypes.Sum(b => b.BedType.Capacity) == input.Members &&
                    o.PricePerPerson >= input.MinBudget && o.PricePerPerson <= (input.MaxBudget == 0 ? int.MaxValue : input.MaxBudget))
                              .Sum(o => o.Count),
            })
                             .Where(p => p.OffersCount > 0)
                             .ToList();

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

            var propertiesViewModel = new SearchIndexListViewModel
            {
                CheckIn  = checkIn,
                CheckOut = checkOut,
                Members  = input.Members,
            };

            propertiesViewModel.Properties = properties;

            return(propertiesViewModel);
        }
Ejemplo n.º 14
0
        public IViewComponentResult Invoke(IndexInputModel input, string userEmail)
        {
            var viewModel = this.propertiesService.GetBySearchRequirements(input, userEmail);

            return(this.View(viewModel));
        }
Ejemplo n.º 15
0
 public IndexViewModel Index(IndexInputModel model)
 {
     return new IndexViewModel() {Tasks = _fubuTodoService.LoadTasks()};
 }
Ejemplo n.º 16
0
 public OutputModelWithSettings Index(IndexInputModel model)
 {
     return(new OutputModelWithSettings());
 }
Ejemplo n.º 17
0
        public ActionResult Index()
        {
            var model = new IndexInputModel();

            return(View(model));
        }