Пример #1
0
        private string GetVideoDownloadUrl(PhotoBlock photoblock)
        {
            if (photoblock == null || photoblock.Download.IsNullOrEmpty())
            {
                return(string.Empty);
            }
            var domain = Client.Settings.Domain;
            var url    = string.Format("http://{0}{1}", domain, photoblock.Download);

            return(url);
        }
Пример #2
0
        /// <summary>
        /// Create all your controls here for rendering.
        /// Try to avoid using the RenderWebPart() method.
        /// </summary>
        protected override void CreateChildControls()
        {
            try
            {
                base.CreateChildControls();

                // * Make the query
                PhotoListParameters listParameters = new PhotoListParameters
                {
                    AlbumId            = null,
                    IncludeUnpublished = false,
                    Size = _count
                };

                if (!String.IsNullOrEmpty(_albumInfo))
                {
                    string[] albumParams = _albumInfo.Split('|');
                    listParameters.AlbumId = Convert.ToInt32(albumParams[0]);
                    listParameters.Token   = albumParams[1];
                }

                switch (_order)
                {
                case "CreatedAscending":
                case "PublishedAscending":
                case "UploadedAscending":
                case "ViewsAscending":
                    listParameters.Order = GenericSort.Ascending;
                    break;

                default:
                    listParameters.Order = GenericSort.Descending;
                    break;
                }

                switch (_order)
                {
                case "CreatedAscending":
                case "CreatedDescending":
                    listParameters.OrderBy = PhotoListSort.Created;
                    break;

                case "UploadedAscending":
                case "UploadedDescending":
                    listParameters.OrderBy = PhotoListSort.Uploaded;
                    break;

                case "ViewsAscending":
                case "ViewsDescending":
                    listParameters.OrderBy = PhotoListSort.Views;
                    break;

                default:
                    listParameters.OrderBy = PhotoListSort.Published;
                    break;
                }

                if ((_tags != null) && (_tags.Count > 0))
                {
                    listParameters.TagMode = (_tagMode == "All" ? PhotoTagMode.And : PhotoTagMode.Any);
                    listParameters.Tags    = _tags;
                }

                this.Controls.Add(new LiteralControl("<ul class=\"visual-list\">"));

                IApiProvider apiProvider = Utilities.ApiProvider;
                if (apiProvider != null)
                {
                    IPhotoService       photoService = new PhotoService(apiProvider);
                    List <Domain.Photo> photos       = photoService.GetList(listParameters);

                    string protocol = Configuration.HttpSecure ? "https://" : "http://";

                    foreach (Domain.Photo photo in photos)
                    {
                        PhotoBlock size = Utilities.GetVideoSize(photo, Size);
                        string     pid  = "photo" + photo.PhotoId.ToString();
                        string     showVideoCall;

                        // Figure out exact code to put in
                        string token = _tokenFreeEmebds ? "" : photo.Token;
                        if (_clickToPlay)
                        {
                            showVideoCall = "showVideo('" + pid + "','" + Utilities.EmbedCode(photo.PhotoId.Value.ToString(), token, size.Width.Value, null, true).Replace("\"", "&#34;").Replace("'", "\\'") + "'); return false;";
                        }
                        else
                        {
                            showVideoCall = "showVideo('" + Utilities.EmbedCode(photo.PhotoId.Value.ToString(), token, 640, null, false).Replace("\"", "&#34;").Replace("'", "\\'") + "'); return false;";
                        }
                        this.Controls.Add(new LiteralControl("<li>"));
                        this.Controls.Add(new LiteralControl("<div class=\"visual-list-image\"><a href=\"#\" id=\"" + pid + "\" onclick=\"" + showVideoCall + "\"><img src=\"" + protocol + Configuration.Domain + size.Download + "\" /></a></div>"));
                        this.Controls.Add(new LiteralControl("<div class=\"visual-list-meta\">"));
                        this.Controls.Add(new LiteralControl(photo.Title));
                        this.Controls.Add(new LiteralControl("<p>" + photo.ContentText + "</p>"));
                        this.Controls.Add(new LiteralControl("<div class=\"visual-list-date\">" + photo.OriginalDateDate + "</div>"));
                        if (photo.ViewCount != null)
                        {
                            this.Controls.Add(new LiteralControl("<div class=\"visual-list-views\">" + photo.ViewCount.Value.ToString() + " views</div>"));
                        }
                        this.Controls.Add(new LiteralControl("</div>"));
                        this.Controls.Add(new LiteralControl("</li>"));
                    }
                }

                this.Controls.Add(new LiteralControl("</ul>"));
                if (_clickToPlay)
                {
                    this.Controls.Add(new LiteralControl("<script src=\"/_layouts/23video/23video.js\"></script>"));
                }
            }
            catch (Exception ex)
            {
                HandleException(ex);
            }
        }