/// <summary>Shows material by specified Id.</summary> /// <param name="id">Material identifier.</param> /// <returns>Material page.</returns> public async Task <ActionResult> Material(int id) { var material = _materialService.GetMaterialWithWords(id); if (material == null) { return(RedirectToAction("DisplayAll")); // TODO: change to main page redirect. } var vocabWords = await FillVocabWordsByMaterial(material); //TODO: do not take words to material. var imgSrc = GetMaterialImageUrl(material.Id); return(View(new MaterialViewModel(material, vocabWords, ImageMaxWidth, ImageMaxHeight, imgSrc))); }