/* public static string AddToCartButton(this HtmlHelper helper, * Expression<Action<CartController>> action) { * return AddToCart(helper, action, true); * }*/ public static string AddToCart(this HtmlHelper helper, Expression <Action <CartController> > action, string imgUrl, bool withoutDialog = false) { var urlHelper = new UrlHelper(helper.ViewContext.RequestContext); var url = urlHelper.Action(action); var split = url.Split('?'); if (split.Length < 2) { return(null); } var queryString = split[1]; var parseResult = HttpUtility.ParseQueryString(queryString); var form = new TagBuilder("form"); form.Attributes.Add("action", url); form.Attributes.Add("method", "post"); var innerHtml = HtmlControls.ImgSubmit(imgUrl) .Class(withoutDialog ? "" : "add-cart-button").Attr(new { title = "Добавить в корзину" }) .ToString(); foreach (var key in parseResult.Keys) { innerHtml += HtmlControls.Hidden(key.ToString(), parseResult[key.ToString()]); if (withoutDialog) { innerHtml += HtmlControls.Hidden("isStay", "true"); } } form.InnerHtml = innerHtml; return(form.ToString()); }
public static string Calendar(this HtmlHelper helper, decimal groupId) { var urlHelper = new UrlHelper(helper.ViewContext.RequestContext); var url = urlHelper.Action <GroupController>(c => c.Calendar(groupId)); var form = new TagBuilder("form"); form.Class("add-calendar"); form.Attributes.Add("action", url); form.Attributes.Add("method", "post"); var innerHtml = HtmlControls.ImgSubmit(Urls.Main("add_in.gif")) .Attr(new { title = "Добавить в календарь" }) .ToString(); innerHtml += HtmlControls.Hidden("groupId", groupId); form.InnerHtml = innerHtml; return(form.ToString()); }