Skip to content

Commit

Permalink
course copy should support columnboard (#4377)
Browse files Browse the repository at this point in the history
* course copy should support columnboard

* support AuthorizableObject instead of BaseEntity in copy interface

* copying empty columnboards and columns
* copying empty cards
* copy richtext elements
* copy submission container
* (dont) copy submission items
* copy file elements
* recursively copy children

* increase stability of copy process when persist fails

* extract file copy parameters into a service wrapper
  • Loading branch information
Metauriel authored Sep 21, 2023
1 parent 84c8f45 commit 6034264
Show file tree
Hide file tree
Showing 24 changed files with 1,479 additions and 18 deletions.
9 changes: 8 additions & 1 deletion apps/server/src/modules/board/board.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { ConsoleWriterModule } from '@shared/infra/console';
import { CourseRepo } from '@shared/repo';
import { LoggerModule } from '@src/core/logger';
import { FilesStorageClientModule } from '../files-storage-client';
import { UserModule } from '../user';
import { BoardDoRepo, BoardNodeRepo } from './repo';
import { RecursiveDeleteVisitor } from './repo/recursive-delete.vistor';
import {
Expand All @@ -15,9 +16,11 @@ import {
ContentElementService,
SubmissionItemService,
} from './service';
import { BoardDoCopyService, SchoolSpecificFileCopyServiceFactory } from './service/board-do-copy-service';
import { ColumnBoardCopyService } from './service/column-board-copy.service';

@Module({
imports: [ConsoleWriterModule, FilesStorageClientModule, LoggerModule],
imports: [ConsoleWriterModule, FilesStorageClientModule, LoggerModule, UserModule],
providers: [
BoardDoAuthorizableService,
BoardDoRepo,
Expand All @@ -31,6 +34,9 @@ import {
CourseRepo, // TODO: import learnroom module instead. This is currently not possible due to dependency cycle with authorisation service
RecursiveDeleteVisitor,
SubmissionItemService,
BoardDoCopyService,
ColumnBoardCopyService,
SchoolSpecificFileCopyServiceFactory,
],
exports: [
BoardDoAuthorizableService,
Expand All @@ -39,6 +45,7 @@ import {
ColumnService,
ContentElementService,
SubmissionItemService,
ColumnBoardCopyService,
],
})
export class BoardModule {}
Loading

0 comments on commit 6034264

Please sign in to comment.