Exemple #1
0
        public ActionResult IgnoreRedirect(string oldUrl, int pageNumber, string searchWord, int pageSize)
        {
            CheckAccess();
            // delete rows from DB
            var dbAccess = DataAccessBaseEx.GetWorker();

            dbAccess.DeleteRowsForRequest(oldUrl);

            // add redirect to dds with state "ignored"
            var redirect = new CustomRedirect
            {
                OldUrl = oldUrl,
                NewUrl = string.Empty,
                State  = Convert.ToInt32(RedirectState.Ignored)
            };

            _redirectsService.AddOrUpdate(redirect);
            CustomRedirectHandler.ClearCache();

            List <CustomRedirect> customRedirectList = GetSuggestions(searchWord);
            string actionInfo = string.Format(LocalizationService.Current.GetString("/gadget/redirects/ignoreredirect"), oldUrl);
            RedirectIndexViewData viewData = GetRedirectIndexViewData(pageNumber, customRedirectList, actionInfo, searchWord, pageSize, true, true);

            if (customRedirectList.Count > 0)
            {
                viewData.HighestSuggestionValue = customRedirectList.First().NotfoundErrorCount;
                viewData.LowestSuggestionValue  = customRedirectList.Last().NotfoundErrorCount;
            }
            return(View("Index", viewData));
        }
        /// <summary>
        /// Get the data that will be presented in the view(s).
        /// </summary>
        /// <param name="pageNumber">The current page number for the pager view</param>
        /// <param name="redirectList">The List of redirects</param>
        /// <param name="actionInformation">Text that will be presented in the view</param>
        /// <param name="searchWord">search word</param>
        /// <param name="pageSize"></param>
        /// <param name="isSuggestions"></param>
        /// <param name="siteId"></param>
        /// <returns></returns>
        public RedirectIndexViewData GetRedirectIndexViewData(int?pageNumber, List <CustomRedirect> redirectList, string actionInformation, string searchWord, int?pageSize, bool isSuggestions, int siteId = 0)
        {
            if (siteId <= 0)
            {
                siteId = DataHandler.GetCurrentSiteId();
            }
            RedirectIndexViewData indexData = new RedirectIndexViewData
            {
                IsSuggestions     = isSuggestions,
                ActionInformation = actionInformation,
                SearchWord        = searchWord,
                TotalItemsCount   = redirectList.Count,
                PageNumber        = pageNumber ?? 1,
                PagerSize         = 4,
                PageSize          = pageSize ?? 30,
                SiteId            = siteId
            };

            //TODO: read pagersize and pagesize from configuration.
            if (redirectList.Count > indexData.PageSize)
            {
                indexData.CustomRedirectList = redirectList.GetRange(indexData.MinIndexOfItem - 1, indexData.MaxIndexOfItem - indexData.MinIndexOfItem + 1);
            }
            else
            {
                indexData.CustomRedirectList = redirectList;
            }
            return(indexData);
        }
        public ActionResult IgnoreRedirect(string oldUrl, int pageNumber, string searchWord, int pageSize)
        {
            CheckAccess();
            // delete rows from DB
            var dbAccess = DataAccessBaseEx.GetWorker();

            dbAccess.DeleteRowsForRequest(oldUrl);

            // add redirect to dds with state "ignored"
            var redirect = new CustomRedirect();

            redirect.OldUrl = oldUrl;
            redirect.State  = Convert.ToInt32(DataStoreHandler.State.Ignored);
            DataStoreHandler dsHandler = new DataStoreHandler();

            dsHandler.SaveCustomRedirect(redirect);
            DataStoreEventHandlerHook.DataStoreUpdated();

            List <CustomRedirect> customRedirectList = GetSuggestions(searchWord);
            string actionInfo = string.Format(LocalizationService.Current.GetString("/gadget/redirects/ignoreredirect"), oldUrl);
            RedirectIndexViewData viewData = GetRedirectIndexViewData(pageNumber, customRedirectList, actionInfo, searchWord, pageSize, true, true);

            viewData.HighestSuggestionValue = customRedirectList.First().NotfoundErrorCount;
            viewData.LowestSuggestionValue  = customRedirectList.Last().NotfoundErrorCount;
            return(View("Index", viewData));
        }
Exemple #4
0
        /// <summary>
        /// Get the data that will be presented in the view(s).
        /// </summary>
        /// <param name="pageNumber">The current page number for the pager view</param>
        /// <param name="redirectList">The List of redirects</param>
        /// <param name="actionInformation">Text that will be presented in the view</param>
        /// <returns></returns>
        public RedirectIndexViewData GetRedirectIndexViewData(int?pageNumber, List <CustomRedirect> redirectList, string actionInformation, string searchWord, int?pageSize, bool isSuggestions)
        {
            RedirectIndexViewData indexData = new RedirectIndexViewData();

            indexData.IsSuggestions     = isSuggestions;
            indexData.ActionInformation = actionInformation;
            indexData.SearchWord        = searchWord;
            indexData.TotalItemsCount   = redirectList.Count;
            indexData.PageNumber        = pageNumber ?? 1;
            //TODO: read pagersize and pagesize from configuration.
            indexData.PagerSize = 4;
            indexData.PageSize  = pageSize ?? 30;
            if (redirectList.Count > indexData.PageSize)
            {
                indexData.CustomRedirectList = redirectList.GetRange(indexData.MinIndexOfItem - 1, indexData.MaxIndexOfItem - indexData.MinIndexOfItem + 1);
            }
            else
            {
                indexData.CustomRedirectList = redirectList;
            }
            return(indexData);
        }