Skip to content

Commit 39d14ce

Browse files
committed
Make content available with user or team name
1 parent 9b8a487 commit 39d14ce

File tree

4 files changed

+21
-1
lines changed

4 files changed

+21
-1
lines changed

app/controller/file.controller.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ export class FileController {
2727
context.serviceKey
2828
);
2929

30+
if (!(file.reporter && file.reporter.length > 0)) {
31+
file.reporter = context.username;
32+
}
33+
3034
file = await serviceClient.service.upload(serviceClient.client, file);
3135

3236
if (file.uploaded) {

app/enum/file-type.enum.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
export enum FileType {
2+
USER_PROFILE_PICTURE = 'userpp',
3+
TEAM_PROFILE_PICTURE = 'teampp',
4+
}

app/interface/file.interface.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
*/
44

55
import { Base64 } from 'aws-sdk/clients/ecr';
6+
import { FileType } from '../enum/file-type.enum';
67

78
export interface File {
89
id: number;
@@ -17,4 +18,6 @@ export interface File {
1718
service_key: string;
1819
is_public: boolean;
1920
url: string;
21+
reporter: string;
22+
type: FileType;
2023
}

app/provider/s3-file-service.provider.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { v4 as uuidv4 } from 'uuid';
2+
import { FileType } from '../enum/file-type.enum';
23
import { FileService } from '../interface/file-service.interface';
34
import { File } from '../interface/file.interface';
45

@@ -55,7 +56,15 @@ export class S3FileService implements FileService {
5556
* @param file file
5657
*/
5758
async upload(client: any, file: File): Promise<File> {
58-
file.external_file_id = uuidv4();
59+
if (
60+
file.type === FileType.TEAM_PROFILE_PICTURE ||
61+
file.type === FileType.USER_PROFILE_PICTURE
62+
) {
63+
file.external_file_id = file.type + '/' + file.reporter;
64+
} else {
65+
file.external_file_id = uuidv4();
66+
}
67+
5968
const buf = Buffer.from(
6069
file.data.replace(/^data:image\/\w+;base64,/, ''),
6170
'base64'

0 commit comments

Comments
 (0)