NoImplicitAny flag true (#1157)
[oweals/peertube.git] / client / src / app / +admin / users / user-edit / user-edit.ts
index 4e7ca8a1b5b0cc8fd101259d60be4fda6960f581..a4d696e6997054deb7e398850527b0b998a7cf41 100644 (file)
@@ -1,19 +1,16 @@
 import { ServerService } from '../../../core'
 import { FormReactive } from '../../../shared'
 import { USER_ROLE_LABELS, VideoResolution } from '../../../../../../shared'
-import { EditCustomConfigComponent } from '../../../+admin/config/edit-custom-config/'
+import { ConfigService } from '@app/+admin/config/shared/config.service'
 
 export abstract class UserEdit extends FormReactive {
 
-  // These are used by a HTML select, so convert key into strings
-  videoQuotaOptions = EditCustomConfigComponent.videoQuotaOptions
-    .map(q => ({ value: q.value.toString(), label: q.label }))
-  videoQuotaDailyOptions = EditCustomConfigComponent.videoQuotaDailyOptions
-    .map(q => ({ value: q.value.toString(), label: q.label }))
-
-  roles = Object.keys(USER_ROLE_LABELS).map(key => ({ value: key.toString(), label: USER_ROLE_LABELS[key] }))
+  videoQuotaOptions: { value: string, label: string }[] = []
+  videoQuotaDailyOptions: { value: string, label: string }[] = []
+  roles = Object.keys(USER_ROLE_LABELS).map((key: any) => ({ value: key.toString(), label: USER_ROLE_LABELS[key] }))
 
   protected abstract serverService: ServerService
+  protected abstract configService: ConfigService
   abstract isCreation (): boolean
   abstract getFormButtonTitle (): string
 
@@ -35,4 +32,13 @@ export abstract class UserEdit extends FormReactive {
 
     return multiplier * parseInt(this.form.value['videoQuota'], 10)
   }
+
+  protected buildQuotaOptions () {
+    // These are used by a HTML select, so convert key into strings
+    this.videoQuotaOptions = this.configService
+                                 .videoQuotaOptions.map(q => ({ value: q.value.toString(), label: q.label }))
+
+    this.videoQuotaDailyOptions = this.configService
+                                      .videoQuotaDailyOptions.map(q => ({ value: q.value.toString(), label: q.label }))
+  }
 }