Esempio n. 1
0
        public ActionResult SearchEstates(int TypeId = 3)
        {
            using (MainContext db = new MainContext())
            {
                Tags stag = db.Tags.Where(x => x.PageId == 15 && x.Lang == lang).FirstOrDefault();

                if (stag != null)
                {
                    ViewBag.Title       = stag.Title;
                    ViewBag.Description = stag.Description;
                    ViewBag.Keywords    = stag.Keyword;
                }


                var list = db.Estate.Include("Country").Include("Town").Include("District").Where(d => d.Language == lang).ToList();
                if (TypeId == 3)
                {
                    ViewBag.result = null;
                }
                else
                {
                    ViewBag.result = TypeId;
                    list           = list.Where(d => d.TypeId == TypeId).ToList();
                }
                ViewBag.BriefResultante = false;
                AdvancedSearchModel          model     = new AdvancedSearchModel(list, new SearchEstateModel());
                IEnumerable <SelectListItem> basetypes = db.Country.ToList().Select(b => new SelectListItem {
                    Value = b.Id.ToString(), Text = b.Name
                });
                ViewData["search.sehir"] = basetypes;
                return(View(model));
            }
        }
        public List <ProductModel> AdvancedSearch(List <ProductModel> list, AdvancedSearchModel SearchOptions)
        {
            //Alternatively use a switch?

            //add search options here
            if (SearchOptions.PriceRange == true)
            {
                list.RemoveAll(x => x.price > SearchOptions.PriceRangeHigh || x.price < SearchOptions.PriceRangeLow);
            }
            if (SearchOptions.HighToLow == true)
            {
                list = list.OrderByDescending(x => x.price).ToList();
            }
            if (SearchOptions.LowToHigh == true)
            {
                list = list.OrderBy(x => x.price).ToList();
            }
            if (SearchOptions.AlphabeticalOrder == true)
            {
                list = list.OrderBy(x => x.title).ToList();
            }
            if (SearchOptions.ShowNewest)
            {
                //Sell date start
            }

            return(list);
        }
Esempio n. 3
0
        public ActionResult AdvancedSearchResult(AdvancedSearchModel model)
        {
            List <Photo> searchResult = (List <Photo>)_unitOfWork.Photos.AdvancedSearchPhotos((model.Name == null) ? "" : model.Name, (model.ShootingPlace == null) ? "" :
                                                                                              model.ShootingPlace, model.ShotAfter, model.ShotBefore, (model.CameraModel == null) ? "" : model.CameraModel,
                                                                                              (model.Diaphragm == null) ? "" : model.Diaphragm, (model.ISO == null) ? "" : model.ISO, model.ShutterSpeed, model.FocalDistance, model.Flash);

            return(View("SearchResult", searchResult));
        }
        public List <WarframeItem> AdvancedSearch(AdvancedSearchModel model)
        {
            List <ItemCache> ics = new ItemCacheRepository(_unitOfWork).AdvancedSearch(model);

            string test = "[" + string.Join(",", ics.Select(x => x.Data)) + "]";

            return(JsonConvert.DeserializeObject <List <WarframeItem> >(test));
        }
        public void Validate_NoSearchCriteria_ShouldBeInvalid()
        {
            AdvancedSearchModel model = new AdvancedSearchModel();

            var validationResults = model.Validate(null);

            Assert.IsTrue(validationResults.Any());
        }
        public void Validate_Valid_ShouldBeInvalid()
        {
            AdvancedSearchModel model = new AdvancedSearchModel {
                MasteryRequirement = "1f,2,x3,6-9,"
            };

            var validationResults = model.Validate(null);

            Assert.IsTrue(validationResults.Any());
        }
        public void GetMasteryRequirementParts_CommaAndRange_ShouldReturnCommaList()
        {
            List <string> expected = new List <string> {
                "1", "2", "3", "6-9"
            };
            AdvancedSearchModel model = new AdvancedSearchModel {
                MasteryRequirement = "1,2, 3, 6- 9"
            };

            List <string> actual = model.GetMasteryRequirementParts();

            Assert.AreEqual(string.Join(",", expected), string.Join(",", actual));
        }
Esempio n. 8
0
        public async Task <ActionResult> SearchAdvanced(AdvancedSearchModel searchData)
        {
            if (string.IsNullOrWhiteSpace(searchData.SearchParameters))
            {
                return(RedirectToAction("Index", "Home"));
            }

            var allAccessibleForums = this.HttpContext.Session.GetForumsWithActionRight(ActionRights.AccessForum).ToHashSet();
            var forumsToSearch      = new List <int>();

            if (searchData.TargetForums == null || searchData.TargetForums.Count <= 0)
            {
                forumsToSearch.AddRange(allAccessibleForums);
            }
            else
            {
                forumsToSearch.AddRange(searchData.TargetForums.Where(f => allAccessibleForums.Contains(f)));
            }

            var firstSortClause = SearchResultsOrderSetting.ForumAscending;

            if (!Enum.TryParse(searchData.FirstSortClause, out firstSortClause))
            {
                firstSortClause = SearchResultsOrderSetting.ForumAscending;
            }

            var secondSortClause = SearchResultsOrderSetting.LastPostDateAscending;

            if (!Enum.TryParse(searchData.SecondSortClause, out secondSortClause))
            {
                secondSortClause = SearchResultsOrderSetting.LastPostDateAscending;
            }

            var searchTarget = SearchTarget.MessageText;

            if (!Enum.TryParse(searchData.SearchTarget, out searchTarget))
            {
                searchTarget = SearchTarget.MessageText;
            }

            await PerformSearchAsync(searchData.SearchParameters, forumsToSearch, firstSortClause, secondSortClause, searchTarget);

            return(RedirectToAction("Results", "Search", new { pageNo = 1 }));
        }
Esempio n. 9
0
        public IHttpActionResult AdvancedSearch(AdvancedSearchModel model)

        {
            List <UserWithCountryIconInfo> userList = new List <UserWithCountryIconInfo>();

            try
            {
                var allUserList = _userService.GetAllUsersWithCountryFlag().ToList();
                if (!string.IsNullOrEmpty(model.Address))
                {
                    model.Address = model.Address.ToLower();
                    allUserList   = allUserList.Where(a => a.Address.ToLower().Contains(model.Address)).ToList();
                }
                if (model.NatioanlityId > 0)
                {
                    allUserList = allUserList.Where(a => a.Country_Id == model.NatioanlityId).ToList();
                }
                if (model.LangLevelId > 0)
                {
                    allUserList = allUserList.Where(a => a.LagLevel_ID == model.LangLevelId).ToList();
                }
                var userLangList = _userLanguageService.GetAllUsersLanguages().ToList();
                if (model.LearningLangId > 0)
                {
                    userLangList = userLangList.Where(a => a.Learning_LanguageId == model.LearningLangId).ToList();
                }
                if (model.NativeLangId > 0)
                {
                    userLangList = userLangList.Where(a => a.Native_LanguageId == model.NativeLangId).ToList();
                }
                string userIdList = string.Empty;
                if (userLangList.Count > 0)
                {
                    foreach (var item in userLangList)
                    {
                        if (string.IsNullOrEmpty(userIdList))
                        {
                            userIdList = item.User_Id.ToString();
                        }
                        else
                        {
                            userIdList = userIdList + "," + item.User_Id.ToString();
                        }
                    }
                }

                List <LanguageDetails> langList = _langService.GetAllLangugaes().ToList();
                foreach (var item in allUserList)
                {
                    if (!string.IsNullOrEmpty(userIdList))
                    {
                        if (userIdList.Contains(item.User_Id.ToString()))
                        {
                            UserWithCountryIconInfo details = new UserWithCountryIconInfo();
                            details.Address     = item.Address;
                            details.Country_Id  = item.Country_Id;
                            details.CreatedTime = item.CreatedTime;
                            details.DeviceId    = item.DeviceId;
                            details.Dob         = item.Dob;
                            details.Email_Id    = item.Email_Id;
                            details.Flag_Icon   = item.Flag_Icon;
                            details.Gender      = item.Gender;
                            details.Icon_Path   = countryIconPath + item.Flag_Icon;
                            if (string.IsNullOrEmpty(item.ImagePath))
                            {
                                details.ImagePath = noImagePath;
                            }
                            else
                            {
                                var extension = item.ImagePath.Split('.')[1];
                                var imageName = item.ImagePath.Split('.')[0] + "_thumbnail";
                                details.ImagePath = proImagePath + imageName + "." + extension;
                            }
                            // details.ImagePath = proImagePath + item.ImagePath;
                            details.Interests             = item.Interests;
                            details.IsVerified            = item.IsVerified;
                            details.LagLevel_ID           = item.LagLevel_ID;
                            details.LearningAbbrv         = langList.Where(a => a.Language_Id == item.Learning_LanguageId).FirstOrDefault().Abbreviation;
                            details.Name                  = item.Name;
                            details.NativeAbbrv           = langList.Where(a => a.Language_Id == item.Native_LanguageId).FirstOrDefault().Abbreviation;
                            details.Self_Introduction     = item.Self_Introduction;
                            details.TravelDestination_CId = item.TravelDestination_CId;
                            details.TrevoId               = item.TrevoId;
                            details.User_Id               = item.User_Id;
                            userList.Add(details);
                        }
                    }
                }
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)));
            }
            return(Ok(userList));
        }
Esempio n. 10
0
 public SearchResultsViewModel Load(UnitOfWork uow, WarframeItemUtilities itemUtils, AdvancedSearchModel model)
 {
     WarframeItems = itemUtils.AdvancedSearch(model);
     CodexTabs     = uow.GetRepo <CodexTabRepository>().GetAll();
     new EagerLoader(uow).Load(CodexTabs);
     return(this);
 }
Esempio n. 11
0
 public ActionResult AdvancedSearch(AdvancedSearchModel model)
 {
     return(View("../Post/ListPost"));
 }
        public List <ItemCache> AdvancedSearch(AdvancedSearchModel model)
        {
            QueryBuilder query = GetQueryBuilder();

            query.SqlQuery += "" +
                              $"INNER JOIN itemcategory ic ON {TableName}.ItemCategoryID = ic.ID " +
                              $"INNER JOIN codextab ct ON ct.ID = ic.CodexTabID ";

            List <string> whereConditions = new List <string>();

            if (!string.IsNullOrWhiteSpace(model.Name))
            {
                whereConditions.Add(TableName + ".Name LIKE @Name");
                query.AddParameter("@Name", $"%{model.Name}%");
            }

            if (model.CodexSection != null)
            {
                whereConditions.Add("ct.CodexSectionID = @CodexSection");
                query.AddParameter("@CodexSection", model.CodexSection);
            }

            if (!string.IsNullOrWhiteSpace(model.MasteryRequirement))
            {
                List <string> parts   = new List <string>();
                int           counter = 0;

                List <string> masteryParts = model.GetMasteryRequirementParts();
                if (masteryParts != null)
                {
                    foreach (string queryPart in masteryParts)
                    {
                        if (queryPart.Contains("-"))
                        {
                            string[] startEndRange = queryPart.Split('-');
                            int      start         = int.Parse(startEndRange[0]);
                            int      end           = int.Parse(startEndRange[1]);
                            parts.Add($"(MasteryRequired >= @Mastery{counter}Start AND MasteryRequired <= @Mastery{counter}End)");
                            query.AddParameter($"@Mastery{counter}Start", start);
                            query.AddParameter($"@Mastery{counter}End", end);
                        }
                        else if (queryPart.Contains(">"))
                        {
                            int number = int.Parse(queryPart.Replace(">", ""));
                            parts.Add($"MasteryRequired > @Mastery{counter}");
                            query.AddParameter($"Mastery{counter}", number);
                        }
                        else if (queryPart.Contains("<"))
                        {
                            int number = int.Parse(queryPart.Replace("<", ""));
                            parts.Add($"MasteryRequired < @Mastery{counter}");
                            query.AddParameter($"@Mastery{counter}", number);
                        }
                        else
                        {
                            int number = int.Parse(queryPart);
                            parts.Add($"MasteryRequired = @Mastery{counter}");
                            query.AddParameter($"@Mastery{counter}", number);
                        }

                        counter++;
                    }
                    whereConditions.Add("(" + string.Join(" OR ", parts) + ")");
                }
            }

            query.SqlQuery += "WHERE " + string.Join(" AND ", whereConditions);

            return(GetEntities(query));
        }
Esempio n. 13
0
        public ActionResult SearchEstates(AdvancedSearchModel model)
        {
            using (MainContext db = new MainContext())
            {
                var list = db.Estate.Include("Country").Include("Town").Include("District").Where(d => d.Language == lang).ToList();
                if (!string.IsNullOrEmpty(model.search.referansno))
                {
                    try
                    {
                        //int refno = Convert.ToInt32(model.search.referansno);
                        list = list.Where(d => d.ReferenceNo == model.search.referansno).ToList();
                    }
                    catch (Exception)
                    {
                    }
                }
                if (!string.IsNullOrEmpty(model.search.keyword))
                {
                    list = list.Where(d => d.Header.Contains(model.search.keyword)).ToList();
                }
                if (model.search.emlaktipi != 3)
                {
                    list = list.Where(d => d.TypeId == model.search.emlaktipi).ToList();
                    ViewBag.emlaktipi = model.search.emlaktipi;
                }
                if (model.search.islemtipi != 2)
                {
                    list = list.Where(d => d.TransactionId == model.search.islemtipi).ToList();
                    ViewBag.islemtipi = model.search.islemtipi;
                }

                if (!string.IsNullOrEmpty(model.search.sehir))
                {
                    int sehir = Convert.ToInt32(model.search.sehir);
                    list = list.Where(d => d.CountryId == sehir).ToList();
                }

                if (model.search.ilce != 0)
                {
                    list = list.Where(d => d.TownId == model.search.ilce).ToList();
                }

                if (model.search.semt != 0)
                {
                    list = list.Where(d => d.DistrictId == model.search.semt).ToList();
                }

                //if (!string.IsNullOrEmpty(model.fiyataraligialt))
                //{
                //    list = list.Where(d => d.Price >= model.fiyataraligialt).ToList();
                //}

                if (!string.IsNullOrEmpty(model.search.metrekarealt))
                {
                    int metrekare = Convert.ToInt32(model.search.metrekarealt);
                    list = list.Where(d => Convert.ToInt32(d.RoomNumber) > metrekare).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.metrekareust))
                {
                    int metrekare = Convert.ToInt32(model.search.metrekareust);
                    list = list.Where(d => Convert.ToInt32(d.RoomNumber) < metrekare).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.odasayisialt))
                {
                    int roomcount = Convert.ToInt32(model.search.odasayisialt);
                    list = list.Where(d => Convert.ToInt32(d.RoomNumber) > roomcount).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.odasayisiust))
                {
                    int roomcount = Convert.ToInt32(model.search.odasayisiust);
                    list = list.Where(d => Convert.ToInt32(d.RoomNumber) < roomcount).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.binayasialt))
                {
                    int binayasialt = Convert.ToInt32(model.search.binayasialt);
                    list = list.Where(d => int.Parse(d.Age) >= binayasialt).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.binayasiust))
                {
                    int binayasiust = Convert.ToInt32(model.search.binayasiust);
                    list = list.Where(d => int.Parse(d.Age) < binayasiust).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.fiyataraligialt))
                {
                    int fiyat = Convert.ToInt32(model.search.fiyataraligialt);
                    list = list.Where(d => d.Price > fiyat).ToList();
                }

                if (!string.IsNullOrEmpty(model.search.fiyataraligiust))
                {
                    int fiyat = Convert.ToInt32(model.search.fiyataraligiust);
                    list = list.Where(d => d.Price < fiyat).ToList();
                }
                ViewBag.result          = model.search.emlaktipi;
                ViewBag.BriefResultante = false;
                ViewBag.Lang            = lang;

                AdvancedSearchModel searchmodel = new AdvancedSearchModel(list, model.search);
                ViewBag.BriefResultante = true;

                IEnumerable <SelectListItem> basetypes = db.Country.ToList().Select(b => new SelectListItem {
                    Value = b.Id.ToString(), Text = b.Name
                });
                List <SelectListItem> ilce = new List <SelectListItem>();
                ilce.Add(new SelectListItem {
                    Value = "", Text = ""
                });
                ViewData["search.sehir"] = basetypes;
                ViewData["search.ilce"]  = ilce;

                return(View(searchmodel));
            }
        }