public static string PageTitle <TModel>(this HtmlHelper <TModel> htmlHelper, params string[] items) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; if (items == null || items.Length == 0) { return(model.Site.DisplayName); } StringBuilder sb = new StringBuilder(50); List <string> itemList = new List <string>(items); itemList.RemoveAll(s => s == null); itemList.Insert(0, model.Site.DisplayName); for (int i = itemList.Count - 1; i >= 0; i--) { sb.Append(itemList[i]); if (i > 0) { sb.Append(model.Site.PageTitleSeparator); } } return(htmlHelper.Encode(sb.ToString())); }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { IEnumerable <IOxiteAuthenticationModule> authenticationModules = modules.GetModules <IOxiteAuthenticationModule>().Reverse(); IUser user = null; foreach (IOxiteAuthenticationModule module in authenticationModules) { user = module.GetUser(filterContext.RequestContext); if (user.IsAuthenticated) { break; } } if (user.IsAuthenticated) { model.User = new UserViewModel(user); model.SignInUrl = null; model.SignOutUrl = authenticationModules.First().GetSignOutUrl(filterContext.RequestContext); } else { model.User = new UserViewModel(filterContext.HttpContext.Request.Cookies.GetAnonymousUser()); model.SignInUrl = authenticationModules.First().GetSignInUrl(filterContext.RequestContext); model.SignOutUrl = null; } } }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { UserAuthenticated user = model.User.ToUserAuthenticated(); if (user != null) { UserRegistration registration = pdc09Service.GetUserRegistration(user); bool isRegistered = registration.IsRegistered; if (!isRegistered && (!registration.LastRegistrationCheck.HasValue || registration.LastRegistrationCheck.Value.AddMinutes(15) < DateTime.UtcNow)) { using (RegistrationService.PDC09Service service = new RegistrationService.PDC09Service()) { service.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["PDCRegistration.Username"], ConfigurationManager.AppSettings["PDCRegistration.Password"]); try { isRegistered = service.IsRegistered((string)user.AuthenticationValues["PUID"]); } catch {} } pdc09Service.SetUserRegistration(user, isRegistered); } user.AuthenticationValues["IsRegistered"] = isRegistered; } } }
private void setModel(OxiteViewModel model) { if (model != null) { model.Site = new SiteViewModel(context.Site, config.InstanceName); } }
private void setModel(OxiteViewModel model) { if (model != null) { model.Site = new SiteViewModel(context.Site, appSettings.GetInstanceName()); } }
private void setLocalization(OxiteViewModel model) { if (model != null) { model.AddModelItem(locService.GetTranslations()); } }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { IEnumerable <IOxiteAuthenticationModule> authenticationModules = modules.GetModules <IOxiteAuthenticationModule>().Reverse(); IUser user = null; foreach (IOxiteAuthenticationModule module in authenticationModules) { user = module.GetUser(filterContext.RequestContext); if (user.IsAuthenticated) { break; } } if (user.IsAuthenticated) { model.AddModelItem(new UserViewModel(user)); //TODO: (erikpo) Change this to call the sign out url of the auth module that retrieved the user model.AddModelItem(new MembershipUrlViewModel(null, authenticationModules.First().GetSignOutUrl(filterContext.RequestContext))); } else { model.AddModelItem(new UserViewModel(filterContext.HttpContext.Request.Cookies.GetAnonymousUser())); //TODO: (erikpo) Change the following so if there's more than one auth module show a generic sign in page, if there's only one auth module, then use its sign in url model.AddModelItem(new MembershipUrlViewModel(authenticationModules.First().GetSignInUrl(filterContext.RequestContext), null)); } } }
public static string Gravatar(this HtmlHelper htmlHelper, OxiteViewModel model, UserAnonymous user, string size) { return(htmlHelper.Gravatar( !string.IsNullOrEmpty(user.EmailHash) ? user.EmailHash.CleanAttribute() : null, !string.IsNullOrEmpty(user.Name) ? user.Name.CleanAttribute() : null, size, model.Site.GravatarDefault )); }
internal static string OxiteAntiForgeryToken(this HtmlHelper htmlHelper, OxiteViewModel model) { if (model != null) { return(htmlHelper.AntiForgeryToken(model.Site.ID.ToString())); } return(""); }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { model.AddModelItem(new PageListViewModel(pageService.GetPages())); } }
public static string Gravatar <TModel>(this HtmlHelper <TModel> htmlHelper, OxiteViewModel model, PostComment comment, string size) where TModel : OxiteViewModel { return(htmlHelper.Gravatar( comment.CreatorEmailHash.CleanAttribute(), comment.CreatorName.CleanAttribute(), size, htmlHelper.ViewData.Model.Site.GravatarDefault )); }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { model.AddModelItem(new PluginTemplatesViewModel(pluginTemplateRegistry)); } }
public void SignInSetsContainerToSignIn() { UserController controller = new UserController(null, null, null); OxiteViewModel result = controller.SignIn(); Assert.NotNull(result); Assert.IsType <SignInPageContainer>(result.Container); }
public static string Gravatar(this HtmlHelper htmlHelper, OxiteViewModel model, UserAnonymous user, string size) { return(htmlHelper.Gravatar( user.IsAuthenticated ? user.EmailHash.CleanAttribute() : null, user.IsAuthenticated ? user.Name.CleanAttribute() : null, size, model.Site.GravatarDefault )); }
public static string Gravatar(this HtmlHelper htmlHelper, OxiteViewModel model, string size) { return(htmlHelper.Gravatar( model.User.IsAuthenticated ? model.User.EmailHash.CleanAttribute() : null, model.User.IsAuthenticated ? model.User.DisplayName.CleanAttribute() : null, size, model.Site.GravatarDefault )); }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; //TODO: (erikpo) Change the following call to get just the blogs the current user has explicit permission to if (model != null) { model.AddModelItem(new BlogListViewModel(blogService.GetBlogs(0, 10000))); } }
public static IEnumerable <PluginTemplate> GetPluginTemplates(this OxiteViewModel model) { PluginTemplatesViewModel viewModel = model.GetModelItem <PluginTemplatesViewModel>(); if (viewModel != null) { return(viewModel.PluginTemplates); } return(Enumerable.Empty <PluginTemplate>()); }
public static string Gravatar <TModel>(this HtmlHelper <TModel> htmlHelper, string size) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; return(htmlHelper.Gravatar( model.User.IsAuthenticated ? (model.User.EmailHash ?? model.User.Email.ComputeEmailHash()).CleanAttribute() : null, model.User.IsAuthenticated ? (model.User.DisplayName ?? model.User.Name).CleanAttribute() : null, size, model.Site.GravatarDefault )); }
public void OnActionExecuted(ActionExecutedContext filterContext) { string blogAddress = appSettings.GetString("Last3Blog"); OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { model.AddModelItem(new Last3HeadlinesViewModel(postService.GetPosts(0, 3, new BlogAddress(blogAddress)))); } }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { model.PluginTemplates.Clear(); pluginTemplateRegistry.ForEach(pt => model.PluginTemplates.Add(pt)); } }
public static void RenderOpenSearch <TModel>(this HtmlHelper <TModel> htmlHelper) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; if (model.Site.IncludeOpenSearch) { UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext); htmlHelper.ViewContext.HttpContext.Response.Write(htmlHelper.HeadLink("search", urlHelper.AbsolutePath(urlHelper.OpenSearch()), "application/opensearchdescription+xml", string.Format(model.Localize("SearchFormat", "{0} Search"), model.Site.DisplayName))); } }
public static void RenderFavIcon <TModel>(this HtmlHelper <TModel> htmlHelper) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; if (!string.IsNullOrEmpty(model.Site.FavIconUrl)) { UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext); htmlHelper.ViewContext.HttpContext.Response.Write(htmlHelper.HeadLink("shortcut icon", urlHelper.AppPath(model.Site.FavIconUrl), null, null)); } }
public static string Gravatar(this HtmlHelper htmlHelper, OxiteViewModel model, string size) { UserViewModel user = model.GetUser(); return(htmlHelper.Gravatar( !string.IsNullOrEmpty(user.EmailHash) ? user.EmailHash.CleanAttribute() : null, !string.IsNullOrEmpty(user.Name) ? user.DisplayName.CleanAttribute() : null, size, model.Site.GravatarDefault )); }
public static string Gravatar <TModel>(this HtmlHelper <TModel> htmlHelper, UserAnonymous user, string size) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; return(htmlHelper.Gravatar( !string.IsNullOrEmpty(user.EmailHash) ? user.EmailHash.CleanAttribute() : null, !string.IsNullOrEmpty(user.Name) ? user.Name.CleanAttribute() : null, size, model.Site.GravatarDefault )); }
public void AddModelItemThenGetModelItemReturnsItem() { OxiteViewModel model = new OxiteViewModel(); OxiteViewModelTests modelItem = new OxiteViewModelTests(); model.AddModelItem(modelItem); var actualItem = model.GetModelItem <OxiteViewModelTests>(); Assert.Same(modelItem, actualItem); }
public void OnException(ExceptionContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; filterContext.Controller.ViewData.Model = new ExceptionOxiteViewModel(model, filterContext.Exception); #if DEBUG filterContext.HttpContext.AddError(filterContext.Exception); #endif filterContext.ExceptionHandled = true; filterContext.Result = new ErrorResult(); }
public static string OpenSearchOSDXLink <TModel>(this HtmlHelper <TModel> htmlHelper) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; if (model.Site.IncludeOpenSearch && htmlHelper.ViewContext.HttpContext.Request.UserAgent.Contains("Windows NT 6.1")) { UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext); return(htmlHelper.Link(string.Format(model.Localize("Search.WindowsSearch", "Search {0} from Windows"), model.Site.DisplayName), urlHelper.AppPath(urlHelper.OpenSearchOSDX()), new { @class = "windowsSearch" })); } return(""); }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel; if (model != null) { string eventName = filterContext.RouteData.Values["eventName"] as string; if (eventName != null) { model.AddModelItem(new TagListViewModel(scheduleItemService.GetScheduleItemTags(new EventAddress(eventName)))); } } }
public static string GetSignOutUrl(this OxiteViewModel model) { MembershipUrlViewModel viewModel = model.GetModelItem <MembershipUrlViewModel>(); if (viewModel != null) { if (!string.IsNullOrEmpty(viewModel.SignOutUrl)) { return(viewModel.SignOutUrl); } } return(""); }
public static string Gravatar <TModel>(this HtmlHelper <TModel> htmlHelper, string size) where TModel : OxiteViewModel { OxiteViewModel model = htmlHelper.ViewData.Model; UserViewModel user = model.GetUser(); string emailHash = user.EmailHash ?? user.Email.ComputeHash(); string name = user.DisplayName ?? user.Name; return(htmlHelper.Gravatar( !string.IsNullOrEmpty(emailHash) ? emailHash.CleanAttribute() : null, !string.IsNullOrEmpty(name) ? name.CleanAttribute() : null, size, model.Site.GravatarDefault )); }