File

platform-configuration/platform-configuration-form-provider.service.ts

Index

Properties

Constructor

constructor(c8yDatePipe: DatePipe)
Parameters :
Name Type Optional
c8yDatePipe DatePipe No

Properties

exampleTomorrowDate
Default value : (() => { const tomorrow = new Date(); tomorrow.setDate(tomorrow.getDate() + 1); return this.c8yDatePipe.transform(tomorrow, 'yyyy-MM-ddTHH:mm:ssZ'); })()
lineBreakHint
Default value : gettext('Use [Enter] or <br> tag to add a new line')
optionsGroups
Type : []
Default value : [ { title: gettext('Passwords'), id: 'passwordsOptions', items: [ this.platformConfigurationFormDefinitions['system.password.enforce.strength'], this.platformConfigurationFormDefinitions['system.password.limit.validity'], this.platformConfigurationFormDefinitions['system.password.history.size'], this.platformConfigurationFormDefinitions['system.password.green.min-length'] ] }, { title: gettext('Two-factor authentication'), id: 'twoFactorAuthenticationOptions', items: [ this.platformConfigurationFormDefinitions['two-factor-authentication.token.sms.template'] ] }, { title: gettext('Support link'), id: 'supportLinkOptions', items: [this.platformConfigurationFormDefinitions['system.support.url']] }, { title: gettext('Password reset'), id: 'passwordResetOptions', items: [ this.platformConfigurationFormDefinitions['passwordReset.sendNotificationToUnknownEmails'], this.platformConfigurationFormDefinitions['passwordReset.token.email.template'], this.platformConfigurationFormDefinitions['passwordReset.user.not.found.email.template'], this.platformConfigurationFormDefinitions['passwordReset.email.subject'], this.platformConfigurationFormDefinitions['passwordReset.success.email.template'], this.platformConfigurationFormDefinitions['passwordReset.invite.template'] ] }, { title: gettext('Support user'), id: 'supportUserOptions', items: [ this.platformConfigurationFormDefinitions['system.support-user.enabled'], this.platformConfigurationFormDefinitions['system.support-user.validity-limit'] ] }, { title: gettext('Email server'), id: 'emailServerOptions', items: [ this.platformConfigurationFormDefinitions['ui.email.protocolAndEncryption'], this.platformConfigurationFormDefinitions['email.host'], this.platformConfigurationFormDefinitions['email.port'], this.platformConfigurationFormDefinitions['email.username'], this.platformConfigurationFormDefinitions['credentials.email.password'], this.platformConfigurationFormDefinitions['email.from'] ] }, { title: gettext('Data export'), id: 'dataExportOptions', items: [ this.platformConfigurationFormDefinitions['export.data.mail.subject'], this.platformConfigurationFormDefinitions['export.data.mail.text'], this.platformConfigurationFormDefinitions['export.data.mail.text.userunauthorized'] ] }, { title: gettext('Storage limit'), id: 'storageLimitOptions', items: [ this.platformConfigurationFormDefinitions['storageLimit.warning.email.subject'], this.platformConfigurationFormDefinitions['storageLimit.warning.email.template'], this.platformConfigurationFormDefinitions['storageLimit.process.email.subject'], this.platformConfigurationFormDefinitions['storageLimit.process.email.template'] ] }, { title: gettext('Suspending tenants'), id: 'suspendingTenantsOptions', items: [ this.platformConfigurationFormDefinitions['tenantSuspend.mail.sendtosuspended'], this.platformConfigurationFormDefinitions['tenantSuspend.mail.additional.address'], this.platformConfigurationFormDefinitions['tenantSuspend.mail.subject'], this.platformConfigurationFormDefinitions['tenantSuspend.mail.text'] ] } ]
platformConfigurationFormDefinitions
Type : object
Default value : { 'system.password.enforce.strength': { formId: 'system.password.enforce.strength', title: gettext('Enforce "green" passwords for all users'), type: 'boolean', control: new FormControl('') }, 'system.password.limit.validity': { formId: 'system.password.limit.validity', title: gettext('Password validity limit (days)'), description: gettext( 'The number of days a password may be valid before it must be reset; minimum value is 0, maximum value is 999999. Leave empty to use the value from the tenant options.' ), type: 'number', control: new FormControl('', [Validators.min(0), Validators.max(999999)]) }, 'system.password.history.size': { formId: 'system.password.history.size', title: gettext('Password history size'), description: gettext( 'The number of times before the current password can be reused. Minimum value is 0, preset value is 10.' ), type: 'number', placeholder: `${gettext('e.g. {{ example }}')}`, placeholderParams: { example: '10' }, control: new FormControl('', [Validators.min(0)]) }, 'system.password.green.min-length': { formId: 'system.password.green.min-length', title: gettext('Minimal length of "green" password'), description: gettext( 'The minimum number of characters which are required for a safe password. Minimum (and preset) value is 8, maximum value is 32. Leave empty to skip this constraint.' ), type: 'number', control: new FormControl('', [Validators.min(8), Validators.max(32)]) }, 'ui.email.protocolAndEncryption': { formId: 'ui.email.protocolAndEncryption', title: gettext('Protocol and encryption'), type: 'select', options: [ { value: 'SMTP_PLAIN', name: gettext('SMTP (no encryption)') }, { value: 'SMTP_ENCRYPTED', name: gettext('SMTP (STARTTLS)') }, { value: 'SMTPS_ENCRYPTED', name: gettext('SMTPS (SSL/TLS)') } ], skipOnSave: true, control: new FormControl('') }, 'email.protocol': { formId: 'email.protocol', title: gettext('Protocol'), type: 'select', options: [ { value: 'smtp', name: 'SMTP' }, { value: 'smtps', name: 'SMTPS' } ], control: new FormControl('') }, 'email.connection.encrypted': { formId: 'email.connection.encrypted', title: gettext('Connection encrypted'), type: 'boolean', control: new FormControl('') }, 'email.host': { formId: 'email.host', title: gettext('Host'), type: 'string', placeholder: `${gettext('e.g. {{ example }}')}`, placeholderParams: { example: 'localhost' }, control: new FormControl('') }, 'email.port': { formId: 'email.port', title: gettext('Port'), type: 'number', placeholder: `${gettext('e.g. {{ example }}')}`, placeholderParams: { example: '25' }, control: new FormControl('', [Validators.min(1), Validators.max(65535)]) }, 'email.username': { formId: 'email.username', title: gettext('Username'), type: 'string', control: new FormControl('') }, 'credentials.email.password': { formId: 'credentials.email.password', title: gettext('Password'), type: 'password', control: new FormControl('') }, 'email.from': { formId: 'email.from', title: gettext('Sender address'), type: 'string', control: new FormControl('', [Validators.email]) }, 'passwordReset.sendNotificationToUnknownEmails': { formId: 'passwordReset.sendNotificationToUnknownEmails', title: gettext('Send notifications to unknown email addresses'), type: 'boolean', control: new FormControl('') }, 'passwordReset.email.subject': { formId: 'passwordReset.email.subject', title: gettext('Email subject'), description: gettext('Subject used for all password reset related emails'), type: 'string', control: new FormControl('') }, 'passwordReset.token.email.template': { formId: 'passwordReset.token.email.template', title: gettext('Password reset email template (when address is known)'), description: `${gettext( 'Placeholders: {tenant-domain}, {host}, {token}, {username}, {email}. Whole link to reset password can be, for example: {tenant-domain}/apps/devicemanagement/index.html?token={token}&email={email}' )}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'passwordReset.user.not.found.email.template': { formId: 'passwordReset.user.not.found.email.template', title: gettext('Password reset email template (when address is not known)'), type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'passwordReset.success.email.template': { formId: 'passwordReset.success.email.template', title: gettext('Password change confirmation email template'), description: `${gettext('Placeholders: {host}, {tenant-domain}, {username}')}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'passwordReset.invite.template': { formId: 'passwordReset.invite.template', title: gettext('Invitation email template'), description: `${gettext( 'Placeholders: {tenant-domain}, {host}, {token}, {username}, {email}. Whole link to setup password can be, for example: {tenant-domain}/apps/devicemanagement/index.html?token={token}' )}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'export.data.mail.subject': { formId: 'export.data.mail.subject', title: gettext('Email subject'), description: gettext( 'Placeholders: {tenant-domain}, {host}, {binaryId}. Whole link to result file is: {tenant-domain}/inventory/binaries/{binaryId}' ), type: 'string', control: new FormControl('') }, 'export.data.mail.text': { formId: 'export.data.mail.text', title: gettext('Email template'), description: `${gettext( 'Placeholders: {tenant-domain}, {host}, {binaryId}. Whole link to result file is: {tenant-domain}/inventory/binaries/{binaryId}' )}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'export.data.mail.text.userunauthorized': { formId: 'export.data.mail.text.userunauthorized', title: gettext('User unauthorized error message'), description: gettext('Placeholders: {user}, {exportApi}'), type: 'string', control: new FormControl('') }, 'two-factor-authentication.token.sms.template': { formId: 'two-factor-authentication.token.sms.template', title: gettext('Verification token SMS template'), description: gettext('Placeholder: {token} - created token'), type: 'string', placeholder: gettext('e.g.: Verification code: {token}'), control: new FormControl('') }, 'system.support.url': { formId: 'system.support.url', title: gettext('URL'), type: 'string', description: gettext( 'Possible values: URL string, "false`KEEP_ORIGINAL`" (hides the link) or leave empty (uses the default). Applications can override this setting by defining "supportUrl`KEEP_ORIGINAL`" application option.' ), control: new FormControl('') }, 'storageLimit.warning.email.subject': { formId: 'storageLimit.warning.email.subject', title: gettext('Warning email subject'), description: gettext('Email which will be sent one day before data is deleted'), type: 'string', control: new FormControl('') }, 'storageLimit.warning.email.template': { formId: 'storageLimit.warning.email.template', title: gettext('Warning email template'), description: `${gettext( 'Email which will be sent one day before data is deleted. Placeholders: {tenant-domain}, {tenant}, {size} - storage usage in %' )}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'storageLimit.process.email.subject': { formId: 'storageLimit.process.email.subject', title: gettext('Limit exceeded email subject'), description: gettext('Email which will be sent after over-limit data has been deleted'), type: 'string', control: new FormControl('') }, 'storageLimit.process.email.template': { formId: 'storageLimit.process.email.template', title: gettext('Limit exceeded email template'), description: `${gettext( 'Email which will be sent after over-limit data has been deleted. Placeholders: {tenant-domain}, {tenant}, {size} - storage usage in %' )}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'tenantSuspend.mail.sendtosuspended': { formId: 'tenantSuspend.mail.sendtosuspended', title: gettext("Send email to suspended tenant's administrator"), type: 'boolean', control: new FormControl('') }, 'tenantSuspend.mail.additional.address': { formId: 'tenantSuspend.mail.additional.address', title: gettext('Tenant suspended email additional receiver'), type: 'string', control: new FormControl('', [Validators.email]) }, 'tenantSuspend.mail.subject': { formId: 'tenantSuspend.mail.subject', title: gettext('Tenant suspended email subject'), description: gettext( "Placeholder: {tenant} - suspended tenant's ID; {tenant-domain} - tenant's domain" ), type: 'string', control: new FormControl('') }, 'tenantSuspend.mail.text': { formId: 'tenantSuspend.mail.text', title: gettext('Tenant suspended email template'), description: `${gettext( "Placeholder: {tenant} - suspended tenant's ID; {tenant-domain} - tenant's domain" )}`, type: 'textarea', control: new FormControl(''), lineBreakHint: true }, 'system.support-user.enabled': { formId: 'system.support-user.enabled', title: gettext('Activate support user'), description: gettext( 'Possible values: "true`KEEP_ORIGINAL`", "false`KEEP_ORIGINAL`", or a specific date until the user should remain active, for example, "{{ exampleDate }}". Leaving it blank, will set the value to "true`KEEP_ORIGINAL`".' ), descriptionTranslateParams: { exampleDate: this.exampleTomorrowDate }, type: 'string', control: new FormControl(''), placeholder: this.exampleTomorrowDate }, 'system.support-user.validity-limit': { formId: 'system.support-user.validity-limit', title: gettext('Validity limit'), description: gettext( 'Each support user request from subtenant user will prolong support user access by the given number of hours (default: 24 hours). Leaving it blank, will set the value to "24".' ), type: 'number', placeholder: `${gettext('e.g. {{ example }}')}`, placeholderParams: { example: '24' }, control: new FormControl('', [Validators.min(0)]) } }

results matching ""

    No results matching ""