public VideoSmartContentWaitOperation(ISynchronizeInvoke context, SmartContentOperationType checkType, IExtensionData[] extendionDataList)
            : base(context)
        {
            validState = VideoPublishStatus.Completed;
            invalidState = VideoPublishStatus.Error;

            if (checkType == SmartContentOperationType.Close)
                validState |= VideoPublishStatus.RemoteProcessing;

            _extensionDataList = extendionDataList;
        }
Exemple #2
0
        public VideoSmartContentWaitOperation(ISynchronizeInvoke context, SmartContentOperationType checkType, IExtensionData[] extendionDataList)
            : base(context)
        {
            validState   = VideoPublishStatus.Completed;
            invalidState = VideoPublishStatus.Error;

            if (checkType == SmartContentOperationType.Close)
            {
                validState |= VideoPublishStatus.RemoteProcessing;
            }

            _extensionDataList = extendionDataList;
        }
        private bool WaitOnSmartContentForOperation(SmartContentOperationType checkType)
        {
            VideoSmartContentWaitOperation operation = new VideoSmartContentWaitOperation(new BlogClientUIContextImpl(_mainFrameWindow, _mainFrameWindow), checkType, _extensionDataList.CalculateReferencedExtensionData(BodyNoFixup));

            // We want to check before we spend the time to show the dialog.
            if (operation.CheckVideos())
            {
                return true;
            }

            using (VideoPublishProgressForm dialog = new VideoPublishProgressForm())
            {
                operation.Start();
                dialog.ShowDialogWithDelay(_mainFrameWindow, operation, 1000);

                // Show a message if the user didn't cancel the dialog.
                if (!operation.IsSuccessful && !operation.DialogCancelled)
                {
                    DisplayMessage.Show(MessageId.VideoFailedPublish, _mainFrameWindow);
                }

                return operation.IsSuccessful;
            }
        }