public ActionResult Index()
        {
            #region Code to redirect with a slash by Raju @ 30th Sept, 2013

            var url = Na.Core.Configuration.NaConfig.Url.DomainUrl + Request.RawUrl;
            if (!Request.IsAjaxRequest() && CheckUrlForRediract(url))
            {
                Response.Status = "301 Moved Permanently";
                Response.AddHeader("Location", url + "/");
            }

            #endregion

            var model = new BrowseResultsModel();
            model.resultDetails = new System.Collections.Generic.List<Na.Website.Models.Browse.BrowseResultsDetailsModel>();
            if (String.IsNullOrWhiteSpace(model.SearchString)) { model.SearchString = string.Empty; }
            fcnClearCookie();
            #region Date Section
            var _DateHelper = new DatesHelper(_cacheManager);
            Dates[] enums = { Dates.AvailableStartYears, Dates.AvailableStartMonths, Dates.AvailableStartDays, Dates.AvailableEndMonths, Dates.AvailableEndDays };
            _DateHelper.SetDates(model.Dates, _dateService, enums);
            #endregion

            return View(model);
        }
        public void DatesDropDownPopulate(BrowseResultsModel model)
        {
            #region Value Set into Date Filters From BrowseLocation Cookie
            HttpCookie hcBrowse = null;
            if ((Request.Cookies[_config.GetStringValueFromConfig("cookiePrefix", "NewspaperARCHIVE.com") + ".BrowseLocation"] != null && Request.Cookies[_config.GetStringValueFromConfig("cookiePrefix", "NewspaperARCHIVE.com") + ".BrowseLocation"].HasKeys))
            {
                hcBrowse = Request.Cookies[_config.GetStringValueFromConfig("cookiePrefix", "NewspaperARCHIVE.com") + ".BrowseLocation"];
            }
            if (hcBrowse != null)
            {
                _startyear = _common.GetStringValue(hcBrowse.Values["year"], "");
                _startmonth = _common.GetStringValue(hcBrowse.Values["month"], "");
                _startday = _common.GetStringValue(hcBrowse.Values["day"], "");
                _endyear = _common.GetStringValue(hcBrowse.Values["endyear"], "");
                _endmonth = _common.GetStringValue(hcBrowse.Values["endmonth"], "");
                _endday = _common.GetStringValue(hcBrowse.Values["endday"], "");
            }
            if (!string.IsNullOrWhiteSpace(_startmonth))
            {
                if (_common.GetStringValue(_startmonth, "0").StartsWith("0")) { _startmonth = _common.GetStringValue(_startmonth, "0").Replace(_common.GetStringValue(_startmonth, "0").Substring(0, 1), ""); }
                else { _startmonth = _common.GetStringValue(_startmonth, "0"); }
            }
            if (!string.IsNullOrWhiteSpace(_startday))
            {
                if (_common.GetStringValue(_startday, "0").StartsWith("0")) { _startday = _common.GetStringValue(_startday, "").Replace(_common.GetStringValue(_startday, "0").Substring(0, 1), ""); }
                else { _startday = _common.GetStringValue(_startday, ""); }
            }
            if (!string.IsNullOrWhiteSpace(_endmonth))
            {
                if (_common.GetStringValue(_endmonth, "0").StartsWith("0")) { _endmonth = _common.GetStringValue(_endmonth, "0").Replace(_common.GetStringValue(_endmonth, "0").Substring(0, 1), ""); }
                else { _endmonth = _common.GetStringValue(_endmonth, "0"); }
            }
            if (!string.IsNullOrWhiteSpace(_endday))
            {
                if (_common.GetStringValue(_endday, "0").StartsWith("0")) { _endday = _common.GetStringValue(_endday, "").Replace(_common.GetStringValue(_endday, "0").Substring(0, 1), ""); }
                else { _endday = _common.GetStringValue(_endday, ""); }
            }
            #endregion

            #region Reset Date DropDowns from Date Filters
            // Commented by Vishal Tyagi as
            //model.Dates.AvailableStartYears.Clear();
            //foreach (var c in _dateService.GetAllYears())
            //    model.Dates.AvailableStartYears.Add(new SelectListItem() { Text = c.startYear, Value = c.yearID.ToString() });

            //model.Dates.AvailableStartMonths.Clear();
            //foreach (var c in _dateService.GetAllMonths())
            //    model.Dates.AvailableStartMonths.Add(new SelectListItem() { Text = c.startMonthName, Value = c.startMonth.ToString() });

            //model.Dates.AvailableStartDays.Clear();
            //foreach (var c in _dateService.GetAllDays())
            //    model.Dates.AvailableStartDays.Add(new SelectListItem() { Text = c.startDay, Value = c.dayID.ToString() });

            //model.Dates.AvailableEndMonths.Clear();
            //foreach (var c in _dateService.GetAllMonths())
            //    model.Dates.AvailableEndMonths.Add(new SelectListItem() { Text = c.startMonthName, Value = c.startMonth.ToString() });

            //model.Dates.AvailableEndDays.Clear();
            //foreach (var c in _dateService.GetAllDays())
            //    model.Dates.AvailableEndDays.Add(new SelectListItem() { Text = c.startDay, Value = c.dayID.ToString() });
            #region Reset Date DropDowns from Date Filters
            model.Dates.AvailableStartYears.Clear();
            model.Dates.AvailableStartMonths.Clear();
            model.Dates.AvailableStartDays.Clear();
            model.Dates.AvailableEndMonths.Clear();
            model.Dates.AvailableEndDays.Clear();
            var _DateHelper = new DatesHelper(_cacheManager);
            Dates[] enums = { Dates.AvailableStartYears, Dates.AvailableStartMonths, Dates.AvailableStartDays, Dates.AvailableEndMonths, Dates.AvailableEndDays };
            _DateHelper.SetDates(model.Dates, _dateService, enums);
            #endregion
            //****************Dates Populates Ended**********************

            if (!string.IsNullOrWhiteSpace(_startyear))
            {
                model.Dates.StartYear = _common.GetStringValue(_startyear, "");
                model.Dates.BetweenStartYear = _common.GetStringValue(_startyear, "");
                model.Dates.BetweenDatesYear = _common.GetStringValue(_startyear, "");
                model.Dates.IsPublicationDate = true;

                model.Dates.AvailableEndYears.Clear();
                foreach (var c in _dateService.GetAllEndYears(_common.GetIntegerValue(model.Dates.StartYear, 0)))
                    model.Dates.AvailableEndYears.Add(new SelectListItem() { Text = c.endYear, Value = c.endYear.ToString() });
            }

            if (!String.IsNullOrWhiteSpace(_startyear) && !String.IsNullOrWhiteSpace(_startmonth) && !String.IsNullOrWhiteSpace(_endyear))
            {
                model.Dates.IsBetweenDates = true;
            }
            else if (!String.IsNullOrWhiteSpace(_startyear) && !String.IsNullOrWhiteSpace(_startmonth) && String.IsNullOrWhiteSpace(_endyear))
            {
                model.Dates.IsExactDate = true;
            }
            else if (!String.IsNullOrWhiteSpace(_startyear) && String.IsNullOrWhiteSpace(_startmonth) && !String.IsNullOrWhiteSpace(_endyear))
            {
                model.Dates.IsBetweenYears = true;
            }

            //if (model.Dates.IsExactDate)
            //{
            //    if (!string.IsNullOrWhiteSpace(_startmonth)) { model.Dates.StartMonth = _common.GetStringValue(_startmonth, ""); }
            //    if (!string.IsNullOrWhiteSpace(_startday)) { model.Dates.StartDay = _common.GetStringValue(_startday, ""); }

            //    model.Dates.BetweenStartYear = "";
            //    model.Dates.BetweenDatesYear = "";

            //    model.Dates.BetweenDatesMonth = "";
            //    model.Dates.BetweenDatesDay = "";
            //}
            //if (model.Dates.IsBetweenYears)
            //{
            //    if (!string.IsNullOrWhiteSpace(_endyear)) { model.Dates.BetweenEndYear = _common.GetStringValue(_endyear, ""); }

            //    model.Dates.StartYear = "";
            //    model.Dates.BetweenDatesYear = "";

            //    model.Dates.EndYear = "";
            //}
            //if (model.Dates.IsBetweenDates)
            //{
            //    if (!string.IsNullOrWhiteSpace(_startmonth)) { model.Dates.BetweenDatesMonth = _common.GetStringValue(_startmonth, ""); }
            //    if (!string.IsNullOrWhiteSpace(_startday)) { model.Dates.BetweenDatesDay = _common.GetStringValue(_startday, ""); }
            //    if (!string.IsNullOrWhiteSpace(_endyear)) { model.Dates.EndYear = _common.GetStringValue(_endyear, ""); }
            //    if (!string.IsNullOrWhiteSpace(_endmonth)) { model.Dates.EndMonth = _common.GetStringValue(_endmonth, ""); }
            //    if (!string.IsNullOrWhiteSpace(_endday)) { model.Dates.EndDay = _common.GetStringValue(_endday, ""); }

            //    model.Dates.StartYear = "";
            //    model.Dates.BetweenStartYear = "";
            //}
            //Updated by : Amit Kumar Srivastava
            //Updated Date : 18 september 2013.
            //Purpose : Task No. 252,  commented above section due to blank all other Dates rather then selected in model.
            //Start
            if (model.Dates.IsExactDate)
            {

                if (!string.IsNullOrWhiteSpace(_startyear)) { model.Dates.StartYear = _common.GetStringValue(_startyear, ""); }
                if (!string.IsNullOrWhiteSpace(_startmonth)) { model.Dates.StartMonth = _common.GetStringValue(_startmonth, ""); }
                if (!string.IsNullOrWhiteSpace(_startday)) { model.Dates.StartDay = _common.GetStringValue(_startday, ""); }

                model.Dates.BetweenStartYear = "";
                model.Dates.BetweenEndYear = "";

                model.Dates.BetweenDatesYear = "";
                model.Dates.BetweenDatesMonth = "";
                model.Dates.BetweenDatesDay = "";

                model.Dates.EndYear = "";
                model.Dates.EndMonth = "";
                model.Dates.EndDay = "";

            }
            else if (model.Dates.IsBetweenYears)
            {
                if (!string.IsNullOrWhiteSpace(_startyear)) { model.Dates.BetweenStartYear = _common.GetStringValue(_startyear, ""); }
                if (!string.IsNullOrWhiteSpace(_endyear)) { model.Dates.BetweenEndYear = _common.GetStringValue(_endyear, ""); }

                model.Dates.StartYear = "";
                model.Dates.StartMonth = "";
                model.Dates.StartDay = "";

                model.Dates.BetweenDatesYear = "";
                model.Dates.BetweenDatesMonth = "";
                model.Dates.BetweenDatesDay = "";

                model.Dates.EndYear = "";
                model.Dates.EndMonth = "";
                model.Dates.EndDay = "";
            }
            else if (model.Dates.IsBetweenDates)
            {
                if (!string.IsNullOrWhiteSpace(_startyear)) { model.Dates.BetweenDatesYear = _common.GetStringValue(_startyear, ""); }
                if (!string.IsNullOrWhiteSpace(_startmonth)) { model.Dates.BetweenDatesMonth = _common.GetStringValue(_startmonth, ""); }
                if (!string.IsNullOrWhiteSpace(_startday)) { model.Dates.BetweenDatesDay = _common.GetStringValue(_startday, ""); }
                if (!string.IsNullOrWhiteSpace(_endyear)) { model.Dates.EndYear = _common.GetStringValue(_endyear, ""); }
                if (!string.IsNullOrWhiteSpace(_endmonth)) { model.Dates.EndMonth = _common.GetStringValue(_endmonth, ""); }
                if (!string.IsNullOrWhiteSpace(_endday)) { model.Dates.EndDay = _common.GetStringValue(_endday, ""); }

                model.Dates.StartYear = "";
                model.Dates.StartMonth = "";
                model.Dates.StartDay = "";

                model.Dates.BetweenStartYear = "";
                model.Dates.BetweenEndYear = "";
            }
            else
            {
                model.Dates.BetweenStartYear = "";
                model.Dates.BetweenEndYear = "";

                model.Dates.StartYear = "";
                model.Dates.StartMonth = "";
                model.Dates.StartDay = "";

                model.Dates.BetweenDatesYear = "";
                model.Dates.BetweenDatesMonth = "";
                model.Dates.BetweenDatesDay = "";

                model.Dates.EndYear = "";
                model.Dates.EndMonth = "";
                model.Dates.EndDay = "";
            }
            //End
            #endregion
        }