Exemplo n.º 1
0
        public PartialViewResult IndexInquirerForm()
        {
            InquirerViewModel viewModel = new InquirerViewModel();

            viewModel.Name          = "Nolan's Batman";
            viewModel.HasText       = false;
            viewModel.RadioQuestion = "What is your favorite Nolan's Batman?";
            viewModel.RadioOptions  = new[] { "Batman Begins", "The Dark Knight", "The Dark Knight Rises" };
            return(PartialView(viewModel));
        }
Exemplo n.º 2
0
        public ActionResult InquirerForm()
        {
            InquirerViewModel viewModel = new InquirerViewModel();

            viewModel.Name          = "Country and color";
            viewModel.TextQuestion  = "Where are you from?";
            viewModel.RadioQuestion = "What is your favorite color?";
            viewModel.RadioOptions  = InquirerRadioOptions;
            return(View(viewModel));
        }
Exemplo n.º 3
0
        public ActionResult InquirerForm(InquirerViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                if (viewModel.HasRadio)
                {
                    viewModel.RadioOptions = InquirerRadioOptions;
                }
                return(View(viewModel));
            }

            TempData["Message"] = "Hurray! Your response on inquirer is added!";
            bl.SaveInquirer(viewModel);
            return(RedirectToAction("GetInquirerResults", new { inquirerName = viewModel.Name }));
        }
Exemplo n.º 4
0
        public override bool IsValid(object value)
        {
            InquirerViewModel viewModel = value as InquirerViewModel;

            if (viewModel.HasRadio && viewModel.RadioInput == null)
            {
                return(false);
            }

            if (viewModel.HasText && viewModel.TextInput == null)
            {
                return(false);
            }

            return(true);
        }
Exemplo n.º 5
0
        public void SaveInquirer(InquirerViewModel viewModel)
        {
            Inquirer inquirerForSave = new Inquirer();

            inquirerForSave.Name = viewModel.Name;
            if (viewModel.HasText)
            {
                inquirerForSave.Text = viewModel.TextInput;
            }
            if (viewModel.HasRadio)
            {
                inquirerForSave.Radio = viewModel.RadioInput;
            }
            pc.Inquirers.Add(inquirerForSave);
            pc.SaveChanges();
        }
Exemplo n.º 6
0
        public static MvcHtmlString RenderInquirer(this HtmlHelper html, InquirerViewModel inquirer)
        {
            TagBuilder div = new TagBuilder("div");

            div.AddCssClass("list-group");
            if (inquirer.HasText)
            {
                TagBuilder label = new TagBuilder("label");
                label.Attributes.Add("for", "TextInput");
                label.InnerHtml += inquirer.TextQuestion;
                div.InnerHtml   += label.ToString();
                TagBuilder input = new TagBuilder("input");
                input.Attributes.Add("name", "TextInput");
                input.Attributes.Add("type", "text");
                input.Attributes.Add("placeholder", inquirer.TextInput);
                input.AddCssClass("list-group-item");
                div.InnerHtml += input.ToString(TagRenderMode.SelfClosing);
                TagBuilder hr = new TagBuilder("hr");
                div.InnerHtml += hr.ToString();
            }

            if (inquirer.HasRadio)
            {
                TagBuilder label = new TagBuilder("label");
                label.InnerHtml += inquirer.RadioQuestion;
                div.InnerHtml   += label.ToString();
                foreach (string option in inquirer.RadioOptions)
                {
                    TagBuilder p = new TagBuilder("p");
                    label = new TagBuilder("label");
                    label.Attributes.Add("for", option);
                    label.InnerHtml += option;
                    TagBuilder radio = new TagBuilder("input");
                    radio.Attributes.Add("type", "radio");
                    radio.Attributes.Add("name", "RadioInput");
                    radio.Attributes.Add("id", option);
                    radio.Attributes.Add("value", option);
                    p.InnerHtml += string.Format("{0}   {1}", label.ToString(), radio.ToString(TagRenderMode.SelfClosing));
                    p.AddCssClass("list-group-item");
                    div.InnerHtml += p.ToString();
                }
                TagBuilder hr = new TagBuilder("hr");
                div.InnerHtml += hr.ToString();
            }

            return(new MvcHtmlString(div.ToString()));
        }
Exemplo n.º 7
0
        public PartialViewResult IndexInquirerForm(InquirerViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                if (viewModel.HasRadio)
                {
                    viewModel.RadioOptions = InquirerRadioOptions;
                }

                return(PartialView(viewModel));
            }

            TempData["Message"] = "Hurray! Your response on inquirer is added!";
            bl.SaveInquirer(viewModel);
            List <Inquirer> inquirers = bl.GetInquirerResults(viewModel.Name).ToList();

            return(PartialView("GetIndexInquirerResults", inquirers));
        }