public OperationResult GetDownloadLink(string scoId) { try { var ac = this.GetUserProvider(); var contentService = new ContentService(Logger, ac); var helper = new ContentControllerHelper <ScoContentDto>(Logger, contentService, new ScoContentDtoMapper()); var param = Session.LtiSession.LtiParam; var lmsUser = _lmsUserModel.GetOneByUserIdAndCompanyLms(param.lms_user_id, LmsCompany.Id).Value; if (lmsUser == null) { throw new EdugameCloud.Lti.Core.WarningMessageException($"No user with id {param.lms_user_id} found in the database."); } string breezeToken = MeetingSetup.ACLogin(LmsCompany, param, lmsUser, ac).BreezeSession; return(helper.GetDownloadAsZipLink(scoId, breezeToken)); } catch (Exception ex) { string errorMessage = GetOutputErrorMessage("ContentApi-GetDownloadLink", ex); return(OperationResultWithData <IEnumerable <ScoContentDto> > .Error(errorMessage)); } }
public OperationResult GetDownloadLink(string scoId) { try { if (!LmsCompany.GetSetting <bool>(LmsCompanySettingNames.EnableMyContent)) { return(OperationResult.Error("Operation is not enabled.")); } var ac = this.GetUserProvider(); var contentService = new ContentService(Logger, ac); var helper = new ContentControllerHelper <ScoContentDto>(Logger, contentService, new ScoContentDtoMapper()); var param = Session.LtiSession.LtiParam; var lmsUser = _lmsUserModel.GetOneByUserIdAndCompanyLms(param.lms_user_id, LmsCompany.Id).Value; if (lmsUser == null) { throw new Core.WarningMessageException($"No user with id {param.lms_user_id} found in the database."); } if (lmsUser.PrincipalId == null) { throw new Core.WarningMessageException("User doesn't have account in Adobe Connect."); } var registeredUser = ac.GetOneByPrincipalId(lmsUser.PrincipalId).PrincipalInfo.Principal; string breezeToken = MeetingSetup.ACLogin(LmsCompany, param, lmsUser, registeredUser, ac); return(helper.GetDownloadAsZipLink(scoId, breezeToken)); } catch (Exception ex) { string errorMessage = GetOutputErrorMessage("ContentApi-GetDownloadLink", ex); return(OperationResultWithData <IEnumerable <ScoContentDto> > .Error(errorMessage)); } }