public override void BuildDisplay(HtmlTextWriter writer, ViewContext viewContext, IWorkContextAccessor workContextAccessor) { if (UploadPhotos == null || UploadPhotos.Count == 0) { return; } var clientId = "flexSlider_" + Guid.NewGuid().ToString("N").ToLowerInvariant(); if (ShowTitleOnPage) { writer.RenderBeginTag("header"); writer.RenderBeginTag(HtmlTextWriterTag.H3); writer.Write(Title); writer.RenderEndTag(); // h3 writer.RenderEndTag(); // header } writer.AddAttribute(HtmlTextWriterAttribute.Id, clientId); writer.AddAttribute(HtmlTextWriterAttribute.Class, "flexslider"); writer.AddStyleAttributeIfHave("max-width", Width); writer.AddStyleAttributeIfHave("max-height", Height); writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.AddAttribute(HtmlTextWriterAttribute.Class, "slides"); writer.RenderBeginTag(HtmlTextWriterTag.Ul); foreach (var slide in UploadPhotos) { if (ShowThumbnails) { writer.AddAttribute("data-thumb", slide.Url); } writer.RenderBeginTag(HtmlTextWriterTag.Li); writer.AddAttribute(HtmlTextWriterAttribute.Href, string.IsNullOrEmpty(slide.TargetUrl) ? "javascript:void(0)" : slide.TargetUrl); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.AddAttribute(HtmlTextWriterAttribute.Src, slide.Url); writer.AddAttribute(HtmlTextWriterAttribute.Alt, slide.Caption); writer.AddAttribute(HtmlTextWriterAttribute.Title, slide.Caption); writer.RenderBeginTag(HtmlTextWriterTag.Img); writer.RenderEndTag(); // img writer.RenderEndTag(); // a writer.RenderEndTag(); //li } writer.RenderEndTag(); // ul writer.RenderEndTag(); // div writer.Write("<script type=\"text/javascript\">"); writer.Write("$(document).ready(function() {{ $('#{0}').flexslider({{ animation: \"slide\", controlNav: {1}, directionNav: true }}); }});", clientId, ShowThumbnails ? "\"thumbnails\"" : ControlNavigation ? "true" : "false"); writer.Write("</script>"); }
public override void BuildDisplay(HtmlTextWriter writer, ViewContext viewContext, IWorkContextAccessor workContextAccessor) { if (UploadPhotos == null || UploadPhotos.Count == 0) { return; } var clientId = "nivoSlider_" + Guid.NewGuid().ToString("N").ToLowerInvariant(); if (ShowTitleOnPage) { writer.RenderBeginTag("header"); writer.RenderBeginTag(HtmlTextWriterTag.H3); writer.Write(Title); writer.RenderEndTag(); // h3 writer.RenderEndTag(); // header } writer.AddAttribute(HtmlTextWriterAttribute.Class, "slider-wrapper " + Theme); writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.AddAttribute(HtmlTextWriterAttribute.Id, clientId); writer.AddAttribute(HtmlTextWriterAttribute.Class, "nivoSlider"); writer.AddStyleAttributeIfHave("max-width", Width); writer.AddStyleAttributeIfHave("max-height", Height); writer.RenderBeginTag(HtmlTextWriterTag.Div); foreach (var slide in UploadPhotos) { writer.AddAttribute(HtmlTextWriterAttribute.Href, string.IsNullOrEmpty(slide.TargetUrl) ? "javascript:void(0)" : slide.TargetUrl); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.AddAttribute(HtmlTextWriterAttribute.Src, slide.Url); writer.AddAttribute(HtmlTextWriterAttribute.Alt, slide.Caption); writer.AddAttribute(HtmlTextWriterAttribute.Title, slide.Caption); writer.RenderBeginTag(HtmlTextWriterTag.Img); writer.RenderEndTag(); // img writer.RenderEndTag(); // a } writer.RenderEndTag(); // div writer.RenderEndTag(); // div var workContext = workContextAccessor.GetContext(); var scripRegister = new ScriptRegister(workContext); scripRegister.IncludeInline(string.Format("$(document).ready(function(){{ $('#{0}').nivoSlider({{ controlNavThumbs: {2}, controlNav: {1}, effect: '{3}', pauseTime: {4} }}); }});", clientId, ControlNavigation ? "true" : "false", ShowThumbnails ? "true" : "false", Effect, PauseTime)); }