Exemplo n.º 1
0
 private void SetPagingValues(ref PagedAgentCMSView pager)
 {
     pager.StartPage = pager.CurrentPage - 5;
     pager.EndPage   = pager.CurrentPage + 4;
     if (pager.StartPage <= 0)
     {
         pager.EndPage  -= (pager.StartPage - 1);
         pager.StartPage = 1;
     }
     if (pager.EndPage > pager.TotalPages)
     {
         pager.EndPage = pager.TotalPages;
         if (pager.EndPage > 10)
         {
             pager.StartPage = pager.EndPage - 9;
         }
     }
 }
Exemplo n.º 2
0
        public async Task <ActionResult> GetAgents(int iPageno, string sSortName, string sAgentId, string sCategory, string sService, string sCity)
        {
            int iPageSize = Convert.ToInt32(StringConstants.PAGE_SIZE);
            PagedAgentCMSView pagedView = new PagedAgentCMSView();

            try
            {
                if (Request.IsAjaxRequest())
                {
                    //AdvSearchModel srchModel = new AdvSearchModel();
                    var searcher = Examine.ExamineManager.Instance.SearchProviderCollection[StringConstants.EXMINE_MEM_SEARCHER_NAME];
                    IEnumerable <SearchResult> pagedResults;
                    IBooleanOperation          query = GetCriteria(sAgentId, sCategory, sService, sCity, ref searcher);

                    //Get the search result
                    var results = searcher.Search(query.Compile());

                    if (results.Count() > 0)
                    {
                        pagedView.TotalRecords = results.Count();
                    }
                    else
                    {
                        pagedView.TotalRecords = 0;
                    }

                    pagedResults = results.Skip((iPageno - 1) * iPageSize).Take(iPageSize);


                    if (pagedResults.Count() > 0)
                    {
                        //Prepare Property Models to be displayed on the result page
                        List <AgentViewCMSModel> properties = new List <AgentViewCMSModel>();
                        foreach (var result in pagedResults)
                        {
                            AgentViewCMSModel item = new AgentViewCMSModel();

                            //IMember member = Services.MemberService.GetById(Convert.ToInt32(result.Fields["id"]));

                            IPublishedContent node = Members.GetById(Convert.ToInt32(result.Fields["id"]));

                            item = MapNodeToModel(node);

                            properties.Add(item);
                        }
                        pagedView.CMSAgents = properties;
                    }
                }

                pagedView.TotalPages  = Convert.ToInt32(Math.Ceiling((double)pagedView.TotalRecords / iPageSize));
                pagedView.CurrentPage = iPageno;

                SetPagingValues(ref pagedView);

                PagedPropertyViews pagedresults = new PagedPropertyViews();

                //PagedPropertyCMSView pgrslt = new PagedPropertyCMSView();
                return(PartialView(StringConstants.PARTIAL_VIEW_PATH + PARTIAL_VIEW_LIST, await System.Threading.Tasks.Task.FromResult(pagedView)));
            }
            catch (Exception x)
            {
                //log the error
                return(null);
            }
        }