Beispiel #1
0
        public OperationResult UnpublishRecording([FromBody] RecordingRequestDto request)
        {
            try
            {
                // TODO : FeatureName - but default value is true here!
                if (LmsCompany.AutoPublishRecordings)
                {
                    throw new WarningMessageException("UnPublishing is not allowed by LMS license settings");
                }

                LmsCourseMeeting meeting = this.LmsCourseMeetingModel.GetOneByCourseAndId(LmsCompany.Id, CourseId, request.MeetingId);
                var recording            = meeting.MeetingRecordings.FirstOrDefault(x => x.ScoId == request.RecordingId);
                if (recording != null)
                {
                    meeting.MeetingRecordings.Remove(recording);
                    LmsCourseMeetingModel.RegisterSave(meeting, flush: true);
                }

                return(OperationResult.Success());
            }
            catch (Exception ex)
            {
                string errorMessage = GetOutputErrorMessage("PublishRecording", ex);
                return(OperationResult.Error(errorMessage));
            }
        }
Beispiel #2
0
        public virtual OperationResult DeleteRecording([FromBody] RecordingRequestDto request)
        {
            try
            {
                // TODO : FeatureName - but default value is true here!
                if (!LmsCompany.CanRemoveRecordings)
                {
                    throw new WarningMessageException("Recording deletion is not enabled for the LMS license");
                }

                var             param  = Session.LtiSession.LtiParam;
                OperationResult result = RecordingsService.RemoveRecording(
                    LmsCompany,
                    this.GetAdminProvider(),
                    param.course_id,
                    request.RecordingId,
                    request.MeetingId);

                return(result);
            }
            catch (Exception ex)
            {
                string errorMessage = GetOutputErrorMessage("DeleteRecording", ex);
                return(OperationResult.Error(errorMessage));
            }
        }