remoteDriveCapacityMbをロールに統合
This commit is contained in:
		
							parent
							
								
									a5aaa032ca
								
							
						
					
					
						commit
						6458239a7c
					
				
					 7 changed files with 16 additions and 41 deletions
				
			
		
							
								
								
									
										11
									
								
								packages/backend/migration/1673575973645-MetaClean.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								packages/backend/migration/1673575973645-MetaClean.js
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,11 @@ | |||
| export class MetaClean1673575973645 { | ||||
|     name = 'MetaClean1673575973645' | ||||
| 
 | ||||
|     async up(queryRunner) { | ||||
|         await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "remoteDriveCapacityMb"`); | ||||
|     } | ||||
| 
 | ||||
|     async down(queryRunner) { | ||||
|         await queryRunner.query(`ALTER TABLE "meta" ADD "remoteDriveCapacityMb" integer NOT NULL DEFAULT '32'`); | ||||
|     } | ||||
| } | ||||
|  | @ -386,7 +386,7 @@ export class DriveService { | |||
| 				}, | ||||
| 				err => { | ||||
| 					this.registerLogger.error(`Upload Failed: key = ${key}, filename = ${filename}`, err); | ||||
| 				} | ||||
| 				}, | ||||
| 			); | ||||
| 	} | ||||
| 
 | ||||
|  | @ -479,16 +479,10 @@ export class DriveService { | |||
| 		if (user && !isLink) { | ||||
| 			const usage = await this.driveFileEntityService.calcDriveUsageOf(user); | ||||
| 
 | ||||
| 			let driveCapacity: number; | ||||
| 			if (this.userEntityService.isLocalUser(user)) { | ||||
| 			const role = await this.roleService.getUserRoleOptions(user.id); | ||||
| 				driveCapacity = 1024 * 1024 * role.driveCapacityMb; | ||||
| 			const driveCapacity = 1024 * 1024 * role.driveCapacityMb; | ||||
| 			this.registerLogger.debug('drive capacity override applied'); | ||||
| 			this.registerLogger.debug(`overrideCap: ${driveCapacity}bytes, usage: ${usage}bytes, u+s: ${usage + info.size}bytes`); | ||||
| 			} else { | ||||
| 				const instance = await this.metaService.fetch(); | ||||
| 				driveCapacity = 1024 * 1024 * instance.remoteDriveCapacityMb; | ||||
| 			} | ||||
| 
 | ||||
| 			this.registerLogger.debug(`drive usage is ${usage} (max: ${driveCapacity})`); | ||||
| 
 | ||||
|  |  | |||
|  | @ -217,12 +217,6 @@ export class Meta { | |||
| 	}) | ||||
| 	public enableSensitiveMediaDetectionForVideos: boolean; | ||||
| 
 | ||||
| 	@Column('integer', { | ||||
| 		default: 32, | ||||
| 		comment: 'Drive capacity of a remote user (MB)', | ||||
| 	}) | ||||
| 	public remoteDriveCapacityMb: number; | ||||
| 
 | ||||
| 	@Column('varchar', { | ||||
| 		length: 128, | ||||
| 		nullable: true, | ||||
|  |  | |||
|  | @ -16,10 +16,6 @@ export const meta = { | |||
| 		type: 'object', | ||||
| 		optional: false, nullable: false, | ||||
| 		properties: { | ||||
| 			driveCapacityPerRemoteUserMb: { | ||||
| 				type: 'number', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			cacheRemoteFiles: { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
|  | @ -374,7 +370,6 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | |||
| 				repositoryUrl: instance.repositoryUrl, | ||||
| 				feedbackUrl: instance.feedbackUrl, | ||||
| 				disableRegistration: instance.disableRegistration, | ||||
| 				driveCapacityPerRemoteUserMb: instance.remoteDriveCapacityMb, | ||||
| 				emailRequiredForSignup: instance.emailRequiredForSignup, | ||||
| 				enableHcaptcha: instance.enableHcaptcha, | ||||
| 				hcaptchaSiteKey: instance.hcaptchaSiteKey, | ||||
|  |  | |||
|  | @ -40,7 +40,6 @@ export const paramDef = { | |||
| 		description: { type: 'string', nullable: true }, | ||||
| 		defaultLightTheme: { type: 'string', nullable: true }, | ||||
| 		defaultDarkTheme: { type: 'string', nullable: true }, | ||||
| 		remoteDriveCapacityMb: { type: 'integer' }, | ||||
| 		cacheRemoteFiles: { type: 'boolean' }, | ||||
| 		emailRequiredForSignup: { type: 'boolean' }, | ||||
| 		enableHcaptcha: { type: 'boolean' }, | ||||
|  | @ -183,10 +182,6 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | |||
| 				set.defaultDarkTheme = ps.defaultDarkTheme; | ||||
| 			} | ||||
| 
 | ||||
| 			if (ps.remoteDriveCapacityMb !== undefined) { | ||||
| 				set.remoteDriveCapacityMb = ps.remoteDriveCapacityMb; | ||||
| 			} | ||||
| 
 | ||||
| 			if (ps.cacheRemoteFiles !== undefined) { | ||||
| 				set.cacheRemoteFiles = ps.cacheRemoteFiles; | ||||
| 			} | ||||
|  |  | |||
|  | @ -78,10 +78,6 @@ export const meta = { | |||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			driveCapacityPerRemoteUserMb: { | ||||
| 				type: 'number', | ||||
| 				optional: false, nullable: false, | ||||
| 			}, | ||||
| 			cacheRemoteFiles: { | ||||
| 				type: 'boolean', | ||||
| 				optional: false, nullable: false, | ||||
|  | @ -303,7 +299,6 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { | |||
| 				repositoryUrl: instance.repositoryUrl, | ||||
| 				feedbackUrl: instance.feedbackUrl, | ||||
| 				disableRegistration: instance.disableRegistration, | ||||
| 				driveCapacityPerRemoteUserMb: instance.remoteDriveCapacityMb, | ||||
| 				emailRequiredForSignup: instance.emailRequiredForSignup, | ||||
| 				enableHcaptcha: instance.enableHcaptcha, | ||||
| 				hcaptchaSiteKey: instance.hcaptchaSiteKey, | ||||
|  |  | |||
|  | @ -91,12 +91,6 @@ | |||
| 								<template #label>{{ i18n.ts.cacheRemoteFiles }}</template> | ||||
| 								<template #caption>{{ i18n.ts.cacheRemoteFilesDescription }}</template> | ||||
| 							</MkSwitch> | ||||
| 
 | ||||
| 							<MkInput v-model="remoteDriveCapacityMb" type="number" :disabled="!cacheRemoteFiles"> | ||||
| 								<template #label>{{ i18n.ts.driveCapacityPerRemoteAccount }}</template> | ||||
| 								<template #suffix>MB</template> | ||||
| 								<template #caption>{{ i18n.ts.inMb }}</template> | ||||
| 							</MkInput> | ||||
| 						</div> | ||||
| 					</FormSection> | ||||
| 
 | ||||
|  | @ -171,7 +165,6 @@ let defaultLightTheme: any = $ref(null); | |||
| let defaultDarkTheme: any = $ref(null); | ||||
| let pinnedUsers: string = $ref(''); | ||||
| let cacheRemoteFiles: boolean = $ref(false); | ||||
| let remoteDriveCapacityMb: any = $ref(0); | ||||
| let enableRegistration: boolean = $ref(false); | ||||
| let emailRequiredForSignup: boolean = $ref(false); | ||||
| let enableServiceWorker: boolean = $ref(false); | ||||
|  | @ -195,7 +188,6 @@ async function init() { | |||
| 	maintainerEmail = meta.maintainerEmail; | ||||
| 	pinnedUsers = meta.pinnedUsers.join('\n'); | ||||
| 	cacheRemoteFiles = meta.cacheRemoteFiles; | ||||
| 	remoteDriveCapacityMb = meta.driveCapacityPerRemoteUserMb; | ||||
| 	enableRegistration = !meta.disableRegistration; | ||||
| 	emailRequiredForSignup = meta.emailRequiredForSignup; | ||||
| 	enableServiceWorker = meta.enableServiceWorker; | ||||
|  | @ -220,7 +212,6 @@ function save() { | |||
| 		maintainerEmail, | ||||
| 		pinnedUsers: pinnedUsers.split('\n'), | ||||
| 		cacheRemoteFiles, | ||||
| 		remoteDriveCapacityMb: parseInt(remoteDriveCapacityMb, 10), | ||||
| 		disableRegistration: !enableRegistration, | ||||
| 		emailRequiredForSignup, | ||||
| 		enableServiceWorker, | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue