Added Html.ThemePath to simplify referencing a file in the current theme.

--HG--
extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4045315
This commit is contained in:
ErikPorter
2010-01-13 00:12:33 +00:00
parent 706bd7f2e4
commit 411a045648
3 changed files with 18 additions and 3 deletions

View File

@@ -10,7 +10,7 @@
} else {
%><h3><%=Html.Encode(Model.CurrentTheme.DisplayName) %></h3>
<p>
<%=Html.Image(ResolveUrl(Html.Resolve<IExtensionManager>().GetThemeLocation(Model.CurrentTheme) + "/Theme.gif"), Html.Encode(Model.CurrentTheme.DisplayName), null)%><br />
<%=Html.Image(Html.ThemePath("/Theme.gif"), Html.Encode(Model.CurrentTheme.DisplayName), null)%><br />
<%=_Encoded("By") %> <%=Html.Encode(Model.CurrentTheme.Author) %><br />
<%=Html.Encode(Model.CurrentTheme.Version) %><br />
<%=Html.Encode(Model.CurrentTheme.Description) %><br />
@@ -25,7 +25,7 @@
%> <li>
<h3><%=Html.Encode(theme.DisplayName) %></h3>
<p>
<%=Html.Image(ResolveUrl(Html.Resolve<IExtensionManager>().GetThemeLocation(theme) + "/Theme.gif"), Html.Encode(theme.DisplayName), null)%><br />
<%=Html.Image(Html.ThemePath(theme, "/Theme.gif"), Html.Encode(theme.DisplayName), null)%><br />
<%=_Encoded("By") %> <%=Html.Encode(theme.Author) %><br />
<%=Html.Encode(theme.Version) %><br />
<%=Html.Encode(theme.Description) %><br />

View File

@@ -20,7 +20,7 @@
<li class="destruct">
<% using (Html.BeginFormAntiForgeryPost(Url.BlogPostDelete(Model.Item.Blog.Slug, Model.Item.Slug))) { %>
<fieldset>
<input type="image" src="<%=ResolveUrl(Html.Resolve<IExtensionManager>().GetThemeLocation(Html.Resolve<IThemeService>().GetRequestTheme(ViewContext.RequestContext)) + "/styles/images/remove.png") %>" alt="<%=_Encoded("Remove Post") %>" title="<%=_Encoded("Remove Post") %>" class="ibutton image remove" />
<input type="image" src="<%=Html.ThemePath("/styles/images/remove.png") %>" alt="<%=_Encoded("Remove Post") %>" title="<%=_Encoded("Remove Post") %>" class="ibutton image remove" />
</fieldset><%
} %>
</li>

View File

@@ -1,5 +1,8 @@
using System.Web.Mvc;
using System.Web.Mvc.Html;
using System.Web.UI;
using Orchard.Extensions;
using Orchard.Themes;
using Orchard.Validation;
namespace Orchard.Mvc.Html {
@@ -11,5 +14,17 @@ namespace Orchard.Mvc.Html {
Argument.ThrowIfNull(helper, "helper");
helper.RenderPartial(viewName);
}
public static string ThemePath(this HtmlHelper helper, string path) {
return helper.ThemePath(helper.Resolve<IThemeService>().GetRequestTheme(helper.ViewContext.RequestContext), path);
}
public static string ThemePath(this HtmlHelper helper, ITheme theme, string path) {
Control parent = helper.ViewDataContainer as Control;
Argument.ThrowIfNull(parent, "helper.ViewDataContainer");
return parent.ResolveUrl(helper.Resolve<IExtensionManager>().GetThemeLocation(theme) + path);
}
}
}