mirror of
https://github.com/Sonarr/Sonarr
synced 2024-12-28 10:48:46 +00:00
f643c5e3fb
New: Replaced icons with Font-Awesome SVG icons
64 lines
No EOL
3.6 KiB
C#
64 lines
No EOL
3.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.Mvc;
|
|
using System.Web.Mvc.Ajax;
|
|
using System.Web.Mvc.Html;
|
|
using System.Web.Routing;
|
|
|
|
namespace NzbDrone.Web.Helpers
|
|
{
|
|
public static class LinkHelper
|
|
{
|
|
public static MvcHtmlString ImageActionLink(this AjaxHelper helper, string imageUrl, object imgAttributes, string actionName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes)
|
|
{
|
|
return ImageActionLink(helper, imageUrl, imgAttributes, actionName, null, routeValues, ajaxOptions, htmlAttributes);
|
|
}
|
|
|
|
public static MvcHtmlString ImageActionLink(this AjaxHelper helper, string imageUrl, object imgAttributes, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes)
|
|
{
|
|
var builder = new TagBuilder("img");
|
|
builder.MergeAttribute("src", imageUrl);
|
|
var imgAttributesDictionary = new RouteValueDictionary(imgAttributes);
|
|
builder.MergeAttributes(imgAttributesDictionary);
|
|
var link = helper.ActionLink("[replaceme]", actionName, controllerName, routeValues, ajaxOptions, htmlAttributes).ToHtmlString();
|
|
return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString(TagRenderMode.SelfClosing)));
|
|
}
|
|
|
|
public static MvcHtmlString ImageActionLink(this HtmlHelper helper, string imageUrl, object imgAttributes, string actionName, object routeValues, object htmlAttributes)
|
|
{
|
|
return ImageActionLink(helper, imageUrl, imgAttributes, actionName, null, routeValues, htmlAttributes);
|
|
}
|
|
|
|
public static MvcHtmlString ImageActionLink(this HtmlHelper helper, string imageUrl, object imgAttributes, string actionName, string controllerName, object routeValues, object htmlAttributes)
|
|
{
|
|
var builder = new TagBuilder("img");
|
|
builder.MergeAttribute("src", imageUrl);
|
|
var imgAttributesDictionary = new RouteValueDictionary(imgAttributes);
|
|
builder.MergeAttributes(imgAttributesDictionary);
|
|
var link = helper.ActionLink("[replaceme]", actionName, controllerName, routeValues, htmlAttributes).ToHtmlString();
|
|
return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString(TagRenderMode.SelfClosing)));
|
|
}
|
|
|
|
public static MvcHtmlString IconActionLink(this AjaxHelper helper, string icon, string text, string actionName, string controllerName, object routeValues, AjaxOptions ajaxOptions, object htmlAttributes)
|
|
{
|
|
var linkText = String.IsNullOrWhiteSpace(text) ? "" : " " + text;
|
|
|
|
var builder = new TagBuilder("i");
|
|
builder.MergeAttribute("class", icon);
|
|
var link = helper.ActionLink("[replaceme]" + linkText, actionName, controllerName, routeValues, ajaxOptions, htmlAttributes).ToHtmlString();
|
|
return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString()));
|
|
}
|
|
|
|
public static MvcHtmlString IconActionLink(this HtmlHelper helper, string icon, string text, string actionName, string controllerName, object routeValues, object htmlAttributes)
|
|
{
|
|
var linkText = String.IsNullOrWhiteSpace(text) ? "" : " " + text;
|
|
|
|
var builder = new TagBuilder("i");
|
|
builder.MergeAttribute("class", icon);
|
|
var link = helper.ActionLink("[replaceme]" + linkText, actionName, controllerName, routeValues, htmlAttributes).ToHtmlString();
|
|
return new MvcHtmlString(link.Replace("[replaceme]", builder.ToString()));
|
|
}
|
|
}
|
|
} |