Example #1
0
        public void Exists_ForExistingView_ReturnsTrue()
        {
            SetUp("home", null, "viewName");
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            bool result = helper.Exists("name");

            Assert.IsTrue(result);
        }
Example #2
0
        public void Render_WithModel_PassModelAlongThroughContext()
        {
            SetUp("home", null, "viewName");
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Render("name", model);

            Assert.AreSame(model, _view._ctx.Model);
        }
Example #3
0
        public void Render_WithBag_PassBagAlongThroughContext()
        {
            SetUp("home", null, "viewName");
            var helper = new PartialHelper <Customer>(_helperContext, new Customer(), new Dictionary <string, object>());
            var bag    = new Dictionary <string, object>();

            helper.Render("name", bag);

            Assert.AreSame(bag, _view._ctx.Bag);
        }
Example #4
0
        public void Exists_ForExistingView_ReturnsTrue()
        {
            SetUp("home", null, "viewName");
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            bool result = helper.Exists("name");

            Assert.IsTrue(result);
        }
Example #5
0
        public void Render_WithPartialName_RendersPartialView()
        {
            SetUp("home", null, "viewName");

            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Render("name");
            Assert.IsNotNull(_view._ctx); // if has a context, the view was rendered
        }
Example #6
0
        public void Exists_WithArea_UsesAreaName()
        {
            SetUp("home", "admin", "viewName");
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            helper.Exists("name");

            var views = new List<string>(_views);
            Assert.AreEqual(2, views.Count);
            Assert.Contains("/admin/Views/home/name", views);
            Assert.Contains("/admin/Views/Shared/name", views);
        }
Example #7
0
        public void Render_WithPartialName_ThrowsIfViewDoesNotExist()
        {
            // does not return view instance
            var viewEngine  = new StubViewEngine((v, l) => new ViewEngineResult(new [] { "location" }), null);
            var viewEngines = new List <IViewEngine>();

            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            viewEngines.Add(viewEngine);
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Render("name");
        }
Example #8
0
        public void Exists_ForNonExistingView_ReturnsFalse()
        {
            SetUp("home", null, "viewName");
            var viewEngine = new StubViewEngine((v, l) => new ViewEngineResult(), (v) => false);
            var viewEngines = new List<IViewEngine>();
            viewEngines.Add(viewEngine);
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            bool result = helper.Exists("name");

            Assert.IsFalse(result);
        }
Example #9
0
        public void Render_WithoutAreaName_RestrictsSearchToControllerAndSharedFolder()
        {
            SetUp("home", null, "viewName");
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Render("name");

            var views = new List <string>(_views);

            Assert.AreEqual(2, views.Count);
            Assert.Contains("/Views/home/name", views);
            Assert.Contains("/Views/Shared/name", views);
        }
Example #10
0
        public void Exists_WithoutArea_TakesOnlyControllerAndShared()
        {
            SetUp("home", null, "viewName");
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Exists("name");

            var views = new List <string>(_views);

            Assert.AreEqual(2, views.Count);
            Assert.Contains("/Views/home/name", views);
            Assert.Contains("/Views/Shared/name", views);
        }
Example #11
0
        public void Exists_ForNonExistingView_ReturnsFalse()
        {
            SetUp("home", null, "viewName");
            var viewEngine  = new StubViewEngine((v, l) => new ViewEngineResult(new[] { "location" }), (v) => false);
            var viewEngines = new List <IViewEngine>();

            viewEngines.Add(viewEngine);
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            bool result = helper.Exists("name");

            Assert.IsFalse(result);
        }
        public async Task <JsonResult> SendPasswordResetEmail(UserViewModel viewModel)
        {
            var emailSuccessful = "";
            var userExists      = landingPageService.DoesUserExist(viewModel.UserName);

            if (string.IsNullOrEmpty(viewModel.UserName) || !userExists)
            {
                emailSuccessful = "fail";
                return(new JsonResult {
                    Data = emailSuccessful
                });
            }
            var user    = landingPageService.LookupUser(viewModel.UserName);
            var message = new MailMessage();
            var body    = PartialHelper.RenderViewToString(ControllerContext, "PasswordResetEmail", viewModel);

            try
            {
                message.To.Add(new MailAddress(user.EmailAddress));
                message.Subject    = "Password Reset from devinmajor.com";
                message.Body       = body;
                message.IsBodyHtml = true;
                var emailModel = new ContactEmailViewModel()
                {
                    UserGUID       = viewModel.GUID,
                    Content        = body,
                    RecipientEmail = viewModel.EmailAddress,
                    RecipientName  = viewModel.UserName,
                    EmailTypeID    = (int)EmailType.EmailTypes.PasswordReset,
                    Subject        = "Password Reset from devinmajor.com"
                };
                using (var smtp = new SmtpClient())
                {
                    await smtp.SendMailAsync(message);
                }
                landingPageService.EmailSent(emailModel);
                return(new JsonResult {
                    Data = "Success"
                });
            }
            catch (Exception e)
            {
                message.Dispose();
            }
            return(new JsonResult {
                Data = emailSuccessful
            });
        }
Example #13
0
        public void Exists_WithArea_UsesAreaName()
        {
            SetUp("home", "admin", "viewName");
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Exists("name");

            var views = new List <string>(_views);

            Assert.AreEqual(4, views.Count);
            Assert.Contains("/admin/Views/home/name", views);
            Assert.Contains("/admin/Views/Shared/name", views);
            Assert.Contains("/Views/admin/Shared/name", views);
            Assert.Contains("/Views/admin/home/name", views);
        }
        public async Task <JsonResult> DropMeALine(ContactEmailViewModel viewModel)
        {
            var emailSuccessful = "";

            if (!ModelState.IsValid)
            {
                return new JsonResult {
                           Data = emailSuccessful
                }
            }
            ;
            var message = new MailMessage();
            var body    = PartialHelper.RenderViewToString(ControllerContext, "MainContactEmail", viewModel);

            try
            {
                message.To.Add(new MailAddress(viewModel.RecipientEmail));

                message.Subject    = "Attn Site Admin: " + viewModel.Subject;
                message.Body       = body;
                message.IsBodyHtml = true;
                var emailModel = new ContactEmailViewModel()
                {
                    UserGUID           = viewModel.UserGUID,
                    Content            = body,
                    SenderEmailAddress = viewModel.SenderEmailAddress,
                    SenderName         = viewModel.SenderName,
                    EmailTypeID        = (int)EmailType.EmailTypes.Other,
                    Subject            = "Attn Site Admin: " + viewModel.Subject
                };
                using (var smtp = new SmtpClient())
                {
                    await smtp.SendMailAsync(message);
                }
                landingPageService.EmailSent(emailModel);
                return(new JsonResult {
                    Data = "Success"
                });
            }
            catch (Exception e)
            {
                message.Dispose();
            }
            return(new JsonResult {
                Data = emailSuccessful
            });
        }
        public JsonResult SendConfirmationEmail(UserViewModel viewModel)
        {
            var emailSuccessful = "";
            var message         = new MailMessage();
            var body            = PartialHelper.RenderViewToString(ControllerContext, "ConfirmationEmail", viewModel);

            try
            {
                message.To.Add(new MailAddress(viewModel.EmailAddress));
                message.Subject    = "Confirm your Email for devinmajor.com";
                message.Body       = body;
                message.IsBodyHtml = true;
                var emailModel = new ContactEmailViewModel()
                {
                    UserGUID       = viewModel.GUID,
                    Content        = body,
                    RecipientEmail = viewModel.EmailAddress,
                    RecipientName  = viewModel.UserName,
                    EmailTypeID    = (int)EmailType.EmailTypes.EmailConfirmation,
                    Subject        = "Confirm your Email for devinmajor.com"
                };
                using (var smtp = new SmtpClient())
                {
                    smtp.Send(message);
                }
                landingPageService.SetConfirmationEmailSent(viewModel);
                landingPageService.EmailSent(emailModel);
                Session["MainPageUserAuthID"] = viewModel.GUID;
                return(new JsonResult {
                    Data = "Success"
                });
            }
            catch (Exception e)
            {
                message.Dispose();
            }
            return(new JsonResult {
                Data = emailSuccessful
            });
        }
Example #16
0
        /// <summary>
        /// Gets all templates
        /// </summary>
        public IEnumerable <TemplateModel> GetTemplates()
        {
            var fs             = services.FileService;
            var templateModels = new List <TemplateModel>();
            var templates      = fs.GetTemplates();

            foreach (var template in templates)
            {
                TemplateModel model = new TemplateModel(template)
                {
                    IsMaster    = template.IsMasterTemplate,
                    MasterAlias = template.MasterTemplateAlias,
                    Partials    = PartialHelper.GetPartialInfo(template.Content, template.Id, template.Alias),
                    Path        = template.Path,
                    Parents     = templates.Where(t => template.Path.Split(',').Select(x => Convert.ToInt32(x)).Contains(t.Id)).Select(t => new TemplateModel(t)).Reverse()
                };

                templateModels.Add(model);
            }

            return(templateModels);
        }
        /// <summary>
        /// Gets all templates
        /// </summary>
        public IEnumerable <TemplateModel> GetTemplates()
        {
            var templateModels = new List <TemplateModel>();
            var templates      = this.fileService.GetTemplates();

            foreach (var template in templates)
            {
                var model = new TemplateModel(template)
                {
                    IsMaster    = template.IsMasterTemplate,
                    MasterAlias = template.MasterTemplateAlias,
                    Partials    = PartialHelper.GetPartialInfo(template.Content, template.Id, template.Alias),
                    Path        = template.Path,
                    VirtualPath = template.VirtualPath,
                    Parents     = templates.Where(t => template.Path.Split(',').Select(x => Convert.ToInt32(x)).Contains(t.Id)).Select(t => new TemplateModel(t)).OrderBy(d => template.Path.Split(',').IndexOf(d.Id.ToString()))
                };

                templateModels.Add(model);
            }

            return(templateModels);
        }
Example #18
0
        public void Exists_WithoutArea_TakesOnlyControllerAndShared()
        {
            SetUp("home", null, "viewName");
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            helper.Exists("name");

            var views = new List<string>(_views);
            Assert.AreEqual(2, views.Count);
            Assert.Contains("/Views/home/name", views);
            Assert.Contains("/Views/Shared/name", views);
        }
Example #19
0
        public void Render_WithBag_PassBagAlongThroughContext()
        {
            SetUp("home", null, "viewName");
            var helper = new PartialHelper<Customer>(_helperContext, new Customer(), new Dictionary<string, object>());
            var bag = new Dictionary<string, object>();

            helper.Render("name", bag);

            Assert.AreSame(bag, _view._ctx.Bag);
        }
Example #20
0
        public void Render_WithModel_PassModelAlongThroughContext()
        {
            SetUp("home", null, "viewName");
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            helper.Render("name", model);

            Assert.AreSame(model, _view._ctx.Model);
        }
Example #21
0
        public void Render_WithoutAreaName_RestrictsSearchToControllerAndSharedFolder()
        {
            SetUp("home", null, "viewName");
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            helper.Render("name");

            var views = new List<string>(_views);
            Assert.AreEqual(2, views.Count);
            Assert.Contains("/Views/home/name", views);
            Assert.Contains("/Views/Shared/name", views);
        }
Example #22
0
        public void Render_WithPartialName_ThrowsIfViewDoesNotExist()
        {
            // does not return view instance
            var viewEngine = new StubViewEngine((v, l) => new ViewEngineResult(), null);
            var viewEngines = new List<IViewEngine>();
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            viewEngines.Add(viewEngine);
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            helper.Render("name");
        }
Example #23
0
        public void Render_WithPartialName_RendersPartialView()
        {
            SetUp("home", null, "viewName");

            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());
            helper.Render("name");
            Assert.IsNotNull(_view._ctx); // if has a context, the view was rendered
        }