Ejemplo n.º 1
0
        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>");
        }
Ejemplo n.º 2
0
        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));
        }