public ActionResult GetGapsTrainerView(GroupForUser group, Action <GapsTrainerModel> filler) { if (WebSettingsConfig.Instance.IsSectionForbidden(SectionId)) { return(RedirectToAction("Index", RouteConfig.MAIN_CONTROLLER_NAME)); } UserLanguages userLanguages = WebSettingsConfig.Instance.DefaultUserLanguages; List <SourceWithTranslation> sourceWithTranslation = GetSourceWithTranslations(userLanguages, group); var gapsTrainerHelper = new GapsTrainerHelper(); List <GapsTrainerItem> items = gapsTrainerHelper.ConvertToItems(sourceWithTranslation); var pageRequiredData = new PageRequiredData(SectionId, PageId.GapsTrainer, group.Name); var model = new GapsTrainerModel(pageRequiredData, items); filler(model); return(View("GapsTrainer", model)); }
public ActionResult GapsTrainer(string group) { if (WebSettingsConfig.Instance.IsSectionForbidden(SectionId.VisualDictionary)) { return(RedirectToAction("Index", RouteConfig.MAIN_CONTROLLER_NAME)); } UserLanguages userLanguages = WebSettingsConfig.Instance.DefaultUserLanguages; RepresentationForUser representationForUser = GetRepresentationForUser(userLanguages, group); var gapsTrainerHelper = new GapsTrainerHelper(); List <GapsTrainerItem> items = gapsTrainerHelper.ConvertToItems(representationForUser.Areas); var pageRequiredData = new PageRequiredData(SectionId.VisualDictionary, PageId.GapsTrainer, group); var model = new GapsTrainerModel(pageRequiredData, items); model.LoadNextBtnCaption = "Показать другие слова"; model.SpeakerDataType = SpeakerDataType.Word; model.BreadcrumbsItems = BreadcrumbsHelper.GetVisualDictionary(Url, group, CommonConstants.FILL_GAPS); return(View("GapsTrainer", model)); }