[MM-59051] : Email notification setting 'Immediately' is unclear given the help text description [Fixed] (#29940)

* Altered the forms, some little more work to go

* Adjusted the status rendering according to chosed options when email settings dialoge is closed

* addressed linting issues

* Update snapshots

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>
Этот коммит содержится в:
Saket Soni
2025-04-09 03:02:11 +05:30
коммит произвёл GitHub
родитель cf68cfdf4b
Коммит 64ff2434ee
3 изменённых файлов: 434 добавлений и 420 удалений

Просмотреть файл

@@ -30,60 +30,53 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
inputs={ inputs={
Array [ Array [
<fieldset> <fieldset>
<legend <fieldset>
className="form-legend" <div
> className="radio"
<Memo(MemoizedFormattedMessage) >
defaultMessage="Send email notifications" <label>
id="user.settings.notifications.email.send" <input
/> checked={false}
</legend> data-email-interval={30}
<div data-enable-email="true"
className="radio" id="emailNotificationImmediately"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={false} />
data-email-interval={30} <Memo(MemoizedFormattedMessage)
data-enable-email="true" defaultMessage="On"
id="emailNotificationImmediately" id="user.settings.notifications.email.on"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> <div
<Memo(MemoizedFormattedMessage) className="radio"
defaultMessage="Immediately" >
id="user.settings.notifications.email.immediately" <label>
/> <input
</label> checked={true}
</div> data-email-interval={0}
<div data-enable-email="false"
className="radio" id="emailNotificationNever"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={true} />
data-email-interval={0} <Memo(MemoizedFormattedMessage)
data-enable-email="false" defaultMessage="Off"
id="emailNotificationNever" id="user.settings.notifications.email.off"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> </fieldset>
<Memo(MemoizedFormattedMessage)
defaultMessage="Never"
id="user.settings.notifications.email.never"
/>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes."
id="user.settings.notifications.emailInfo" id="user.settings.notifications.emailInfo"
/> />
</div> </div>
</fieldset>, </fieldset>,
null, null,
@@ -130,76 +123,65 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
<fieldset <fieldset
key="userNotificationEmailOptions" key="userNotificationEmailOptions"
> >
<legend <fieldset>
className="form-legend" <div
> className="radio"
<FormattedMessage
defaultMessage="Send email notifications"
id="user.settings.notifications.email.send"
> >
<span> <label>
Send email notifications <input
</span> checked={false}
</FormattedMessage> data-email-interval={30}
</legend> data-enable-email="true"
<div id="emailNotificationImmediately"
className="radio" name="emailNotifications"
> onChange={[Function]}
<label> type="radio"
<input />
checked={false} <FormattedMessage
data-email-interval={30} defaultMessage="On"
data-enable-email="true" id="user.settings.notifications.email.on"
id="emailNotificationImmediately" >
name="emailNotifications" <span>
onChange={[Function]} On
type="radio" </span>
/> </FormattedMessage>
<FormattedMessage </label>
defaultMessage="Immediately" </div>
id="user.settings.notifications.email.immediately" <div
> className="radio"
<span> >
Immediately <label>
</span> <input
</FormattedMessage> checked={true}
</label> data-email-interval={0}
</div> data-enable-email="false"
<div id="emailNotificationNever"
className="radio" name="emailNotifications"
> onChange={[Function]}
<label> type="radio"
<input />
checked={true} <FormattedMessage
data-email-interval={0} defaultMessage="Off"
data-enable-email="false" id="user.settings.notifications.email.off"
id="emailNotificationNever" >
name="emailNotifications" <span>
onChange={[Function]} Off
type="radio" </span>
/> </FormattedMessage>
<FormattedMessage </label>
defaultMessage="Never" </div>
id="user.settings.notifications.email.never" </fieldset>
>
<span>
Never
</span>
</FormattedMessage>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<FormattedMessage <FormattedMessage
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes."
id="user.settings.notifications.emailInfo" id="user.settings.notifications.emailInfo"
> >
<span> <span>
Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes. When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes.
</span> </span>
</FormattedMessage> </FormattedMessage>
</div> </div>
</fieldset> </fieldset>
</div> </div>
@@ -287,8 +269,8 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
<SettingItemMin <SettingItemMin
describe={ describe={
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Never" defaultMessage="Off"
id="user.settings.notifications.email.never" id="user.settings.notifications.email.off"
/> />
} }
section="email" section="email"
@@ -306,8 +288,8 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
<SettingItemMin <SettingItemMin
describe={ describe={
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Immediately" defaultMessage="On"
id="user.settings.notifications.email.immediately" id="user.settings.notifications.email.on"
/> />
} }
section="email" section="email"
@@ -359,26 +341,26 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
id="user.settings.notifications.email.send" id="user.settings.notifications.email.send"
/> />
</legend> </legend>
<div
className="radio"
>
<label>
<input
checked={false}
data-email-interval={30}
data-enable-email="true"
id="emailNotificationImmediately"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<Memo(MemoizedFormattedMessage)
defaultMessage="Immediately"
id="user.settings.notifications.email.immediately"
/>
</label>
</div>
<fieldset> <fieldset>
<div
className="radio"
>
<label>
<input
checked={false}
data-email-interval={30}
data-enable-email="true"
id="emailNotificationImmediately"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<Memo(MemoizedFormattedMessage)
defaultMessage="As soon as youre away for 5 minutes"
id="user.settings.notifications.email.asSoonAsYouAreAwayForFiveMinutes"
/>
</label>
</div>
<div <div
className="radio" className="radio"
> >
@@ -422,36 +404,31 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
/> />
</label> </label>
</div> </div>
<div
className="radio"
>
<label>
<input
checked={true}
data-email-interval={0}
data-enable-email="false"
id="emailNotificationNever"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<Memo(MemoizedFormattedMessage)
defaultMessage="Never"
id="user.settings.notifications.email.never"
/>
</label>
</div>
</fieldset> </fieldset>
<div
className="radio"
>
<label>
<input
checked={true}
data-email-interval={0}
data-enable-email="false"
id="emailNotificationNever"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<Memo(MemoizedFormattedMessage)
defaultMessage="Never"
id="user.settings.notifications.email.never"
/>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes. If you choose to receive notifications every 15 minutes or every hour, notifications during that period will be combined into a single email."
id="user.settings.notifications.emailInfo"
/>
<Memo(MemoizedFormattedMessage)
defaultMessage="Notifications received over the time period selected are combined and sent in a single email."
id="user.settings.notifications.emailBatchingInfo" id="user.settings.notifications.emailBatchingInfo"
/> />
</div> </div>
@@ -512,30 +489,30 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
</span> </span>
</FormattedMessage> </FormattedMessage>
</legend> </legend>
<div
className="radio"
>
<label>
<input
checked={false}
data-email-interval={30}
data-enable-email="true"
id="emailNotificationImmediately"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<FormattedMessage
defaultMessage="Immediately"
id="user.settings.notifications.email.immediately"
>
<span>
Immediately
</span>
</FormattedMessage>
</label>
</div>
<fieldset> <fieldset>
<div
className="radio"
>
<label>
<input
checked={false}
data-email-interval={30}
data-enable-email="true"
id="emailNotificationImmediately"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<FormattedMessage
defaultMessage="As soon as youre away for 5 minutes"
id="user.settings.notifications.email.asSoonAsYouAreAwayForFiveMinutes"
>
<span>
As soon as youre away for 5 minutes
</span>
</FormattedMessage>
</label>
</div>
<div <div
className="radio" className="radio"
> >
@@ -587,48 +564,39 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
</FormattedMessage> </FormattedMessage>
</label> </label>
</div> </div>
<div
className="radio"
>
<label>
<input
checked={true}
data-email-interval={0}
data-enable-email="false"
id="emailNotificationNever"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<FormattedMessage
defaultMessage="Never"
id="user.settings.notifications.email.never"
>
<span>
Never
</span>
</FormattedMessage>
</label>
</div>
</fieldset> </fieldset>
<div
className="radio"
>
<label>
<input
checked={true}
data-email-interval={0}
data-enable-email="false"
id="emailNotificationNever"
name="emailNotifications"
onChange={[Function]}
type="radio"
/>
<FormattedMessage
defaultMessage="Never"
id="user.settings.notifications.email.never"
>
<span>
Never
</span>
</FormattedMessage>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<FormattedMessage <FormattedMessage
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes. If you choose to receive notifications every 15 minutes or every hour, notifications during that period will be combined into a single email."
id="user.settings.notifications.emailInfo"
>
<span>
Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes.
</span>
</FormattedMessage>
<FormattedMessage
defaultMessage="Notifications received over the time period selected are combined and sent in a single email."
id="user.settings.notifications.emailBatchingInfo" id="user.settings.notifications.emailBatchingInfo"
> >
<span> <span>
Notifications received over the time period selected are combined and sent in a single email. Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes. If you choose to receive notifications every 15 minutes or every hour, notifications during that period will be combined into a single email.
</span> </span>
</FormattedMessage> </FormattedMessage>
</div> </div>
@@ -731,60 +699,53 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
inputs={ inputs={
Array [ Array [
<fieldset> <fieldset>
<legend <fieldset>
className="form-legend" <div
> className="radio"
<Memo(MemoizedFormattedMessage) >
defaultMessage="Send email notifications" <label>
id="user.settings.notifications.email.send" <input
/> checked={false}
</legend> data-email-interval={30}
<div data-enable-email="true"
className="radio" id="emailNotificationImmediately"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={false} />
data-email-interval={30} <Memo(MemoizedFormattedMessage)
data-enable-email="true" defaultMessage="On"
id="emailNotificationImmediately" id="user.settings.notifications.email.on"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> <div
<Memo(MemoizedFormattedMessage) className="radio"
defaultMessage="Immediately" >
id="user.settings.notifications.email.immediately" <label>
/> <input
</label> checked={true}
</div> data-email-interval={0}
<div data-enable-email="false"
className="radio" id="emailNotificationNever"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={true} />
data-email-interval={0} <Memo(MemoizedFormattedMessage)
data-enable-email="false" defaultMessage="Off"
id="emailNotificationNever" id="user.settings.notifications.email.off"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> </fieldset>
<Memo(MemoizedFormattedMessage)
defaultMessage="Never"
id="user.settings.notifications.email.never"
/>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes."
id="user.settings.notifications.emailInfo" id="user.settings.notifications.emailInfo"
/> />
</div> </div>
</fieldset>, </fieldset>,
null, null,
@@ -811,60 +772,53 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
inputs={ inputs={
Array [ Array [
<fieldset> <fieldset>
<legend <fieldset>
className="form-legend" <div
> className="radio"
<Memo(MemoizedFormattedMessage) >
defaultMessage="Send email notifications" <label>
id="user.settings.notifications.email.send" <input
/> checked={true}
</legend> data-email-interval={30}
<div data-enable-email="true"
className="radio" id="emailNotificationImmediately"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={true} />
data-email-interval={30} <Memo(MemoizedFormattedMessage)
data-enable-email="true" defaultMessage="On"
id="emailNotificationImmediately" id="user.settings.notifications.email.on"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> <div
<Memo(MemoizedFormattedMessage) className="radio"
defaultMessage="Immediately" >
id="user.settings.notifications.email.immediately" <label>
/> <input
</label> checked={false}
</div> data-email-interval={0}
<div data-enable-email="false"
className="radio" id="emailNotificationNever"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={false} />
data-email-interval={0} <Memo(MemoizedFormattedMessage)
data-enable-email="false" defaultMessage="Off"
id="emailNotificationNever" id="user.settings.notifications.email.off"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> </fieldset>
<Memo(MemoizedFormattedMessage)
defaultMessage="Never"
id="user.settings.notifications.email.never"
/>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes."
id="user.settings.notifications.emailInfo" id="user.settings.notifications.emailInfo"
/> />
</div> </div>
</fieldset>, </fieldset>,
<React.Fragment> <React.Fragment>
@@ -912,60 +866,53 @@ exports[`components/user_settings/notifications/EmailNotificationSetting should
inputs={ inputs={
Array [ Array [
<fieldset> <fieldset>
<legend <fieldset>
className="form-legend" <div
> className="radio"
<Memo(MemoizedFormattedMessage) >
defaultMessage="Send email notifications" <label>
id="user.settings.notifications.email.send" <input
/> checked={false}
</legend> data-email-interval={30}
<div data-enable-email="true"
className="radio" id="emailNotificationImmediately"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={false} />
data-email-interval={30} <Memo(MemoizedFormattedMessage)
data-enable-email="true" defaultMessage="On"
id="emailNotificationImmediately" id="user.settings.notifications.email.on"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> <div
<Memo(MemoizedFormattedMessage) className="radio"
defaultMessage="Immediately" >
id="user.settings.notifications.email.immediately" <label>
/> <input
</label> checked={true}
</div> data-email-interval={0}
<div data-enable-email="false"
className="radio" id="emailNotificationNever"
> name="emailNotifications"
<label> onChange={[Function]}
<input type="radio"
checked={true} />
data-email-interval={0} <Memo(MemoizedFormattedMessage)
data-enable-email="false" defaultMessage="Off"
id="emailNotificationNever" id="user.settings.notifications.email.off"
name="emailNotifications" />
onChange={[Function]} </label>
type="radio" </div>
/> </fieldset>
<Memo(MemoizedFormattedMessage)
defaultMessage="Never"
id="user.settings.notifications.email.never"
/>
</label>
</div>
<div <div
className="mt-3" className="mt-3"
> >
<Memo(MemoizedFormattedMessage) <Memo(MemoizedFormattedMessage)
defaultMessage="Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes." defaultMessage="When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes."
id="user.settings.notifications.emailInfo" id="user.settings.notifications.emailInfo"
/> />
</div> </div>
</fieldset>, </fieldset>,
null, null,

Просмотреть файл

@@ -191,12 +191,21 @@ export default class EmailNotificationSetting extends React.PureComponent<Props,
} else if (enableEmail) { } else if (enableEmail) {
switch (newInterval) { switch (newInterval) {
case Preferences.INTERVAL_IMMEDIATE: case Preferences.INTERVAL_IMMEDIATE:
description = ( if (this.props.enableEmailBatching) {
<FormattedMessage description = (
id='user.settings.notifications.email.immediately' <FormattedMessage
defaultMessage='Immediately' id='user.settings.notifications.email.asSoonAsYouAreAwayForFiveMinutes'
/> defaultMessage='As soon as youre away for 5 minutes'
); />
);
} else {
description = (
<FormattedMessage
id='user.settings.notifications.email.on'
defaultMessage='On'
/>
);
}
break; break;
case Preferences.INTERVAL_HOUR: case Preferences.INTERVAL_HOUR:
description = ( description = (
@@ -216,19 +225,29 @@ export default class EmailNotificationSetting extends React.PureComponent<Props,
); );
break; break;
default: default:
description = ( description = this.props.enableEmailBatching ? (
<FormattedMessage <FormattedMessage
id='user.settings.notifications.email.never' id='user.settings.notifications.email.never'
defaultMessage='Never' defaultMessage='Never'
/> />
) : (
<FormattedMessage
id='user.settings.notifications.email.off'
defaultMessage='Off'
/>
); );
} }
} else { } else {
description = ( description = this.props.enableEmailBatching ? (
<FormattedMessage <FormattedMessage
id='user.settings.notifications.email.never' id='user.settings.notifications.email.never'
defaultMessage='Never' defaultMessage='Never'
/> />
) : (
<FormattedMessage
id='user.settings.notifications.email.off'
defaultMessage='Off'
/>
); );
} }
@@ -277,11 +296,29 @@ export default class EmailNotificationSetting extends React.PureComponent<Props,
} }
const {newInterval} = this.state; const {newInterval} = this.state;
let batchingOptions = null; let emailOptions = null;
let batchingInfo = null; let emailInfo = null;
let emailTitle = null;
if (this.props.enableEmailBatching) { if (this.props.enableEmailBatching) {
batchingOptions = ( emailOptions = (
<fieldset> <fieldset>
<div className='radio'>
<label>
<input
id='emailNotificationImmediately'
type='radio'
name='emailNotifications'
checked={newInterval === Preferences.INTERVAL_IMMEDIATE}
data-enable-email={'true'}
data-email-interval={Preferences.INTERVAL_IMMEDIATE}
onChange={this.handleChange}
/>
<FormattedMessage
id='user.settings.notifications.email.asSoonAsYouAreAwayForFiveMinutes'
defaultMessage='As soon as youre away for 5 minutes'
/>
</label>
</div>
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
@@ -317,13 +354,85 @@ export default class EmailNotificationSetting extends React.PureComponent<Props,
/> />
</label> </label>
</div> </div>
<div className='radio'>
<label>
<input
id='emailNotificationNever'
type='radio'
name='emailNotifications'
checked={newInterval === Preferences.INTERVAL_NEVER}
data-enable-email={'false'}
data-email-interval={Preferences.INTERVAL_NEVER}
onChange={this.handleChange}
/>
<FormattedMessage
id='user.settings.notifications.email.never'
defaultMessage='Never'
/>
</label>
</div>
</fieldset> </fieldset>
); );
batchingInfo = ( emailInfo = (
<FormattedMessage <FormattedMessage
id='user.settings.notifications.emailBatchingInfo' id='user.settings.notifications.emailBatchingInfo'
defaultMessage='Notifications received over the time period selected are combined and sent in a single email.' defaultMessage='Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes. If you choose to receive notifications every 15 minutes or every hour, notifications during that period will be combined into a single email.'
/>
);
emailTitle = ( // Renders only in case emails are batched
<legend className='form-legend'>
<FormattedMessage
id='user.settings.notifications.email.send'
defaultMessage='Send email notifications'
/>
</legend>
);
} else {
emailOptions = (
<fieldset>
<div className='radio'>
<label>
<input
id='emailNotificationImmediately'
type='radio'
name='emailNotifications'
checked={newInterval === Preferences.INTERVAL_IMMEDIATE}
data-enable-email={'true'}
data-email-interval={Preferences.INTERVAL_IMMEDIATE}
onChange={this.handleChange}
/>
<FormattedMessage
id='user.settings.notifications.email.on'
defaultMessage='On'
/>
</label>
</div>
<div className='radio'>
<label>
<input
id='emailNotificationNever'
type='radio'
name='emailNotifications'
checked={newInterval === Preferences.INTERVAL_NEVER}
data-enable-email={'false'}
data-email-interval={Preferences.INTERVAL_NEVER}
onChange={this.handleChange}
/>
<FormattedMessage
id='user.settings.notifications.email.off'
defaultMessage='Off'
/>
</label>
</div>
</fieldset>
);
emailInfo = (
<FormattedMessage
id='user.settings.notifications.emailInfo'
defaultMessage='When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes.'
/> />
); );
} }
@@ -364,54 +473,10 @@ export default class EmailNotificationSetting extends React.PureComponent<Props,
} }
inputs={[ inputs={[
<fieldset key='userNotificationEmailOptions'> <fieldset key='userNotificationEmailOptions'>
<legend className='form-legend'> {emailTitle}
<FormattedMessage {emailOptions}
id='user.settings.notifications.email.send'
defaultMessage='Send email notifications'
/>
</legend>
<div className='radio'>
<label>
<input
id='emailNotificationImmediately'
type='radio'
name='emailNotifications'
checked={newInterval === Preferences.INTERVAL_IMMEDIATE}
data-enable-email={'true'}
data-email-interval={Preferences.INTERVAL_IMMEDIATE}
onChange={this.handleChange}
/>
<FormattedMessage
id='user.settings.notifications.email.immediately'
defaultMessage='Immediately'
/>
</label>
</div>
{batchingOptions}
<div className='radio'>
<label>
<input
id='emailNotificationNever'
type='radio'
name='emailNotifications'
checked={newInterval === Preferences.INTERVAL_NEVER}
data-enable-email={'false'}
data-email-interval={Preferences.INTERVAL_NEVER}
onChange={this.handleChange}
/>
<FormattedMessage
id='user.settings.notifications.email.never'
defaultMessage='Never'
/>
</label>
</div>
<div className='mt-3'> <div className='mt-3'>
<FormattedMessage {emailInfo}
id='user.settings.notifications.emailInfo'
defaultMessage='Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes.'
/>
{' '}
{batchingInfo}
</div> </div>
</fieldset>, </fieldset>,
threadsNotificationSelection, threadsNotificationSelection,

Просмотреть файл

@@ -5839,16 +5839,18 @@
"user.settings.notifications.desktopNotificationSound.soundUpstairs": "Upstairs", "user.settings.notifications.desktopNotificationSound.soundUpstairs": "Upstairs",
"user.settings.notifications.desktopNotificationSound.soundUrgent": "Urgent", "user.settings.notifications.desktopNotificationSound.soundUrgent": "Urgent",
"user.settings.notifications.desktopNotificationSounds.title": "Desktop notification sounds", "user.settings.notifications.desktopNotificationSounds.title": "Desktop notification sounds",
"user.settings.notifications.email.asSoonAsYouAreAwayForFiveMinutes": "As soon as youre away for 5 minutes",
"user.settings.notifications.email.disabled": "Email notifications are not enabled", "user.settings.notifications.email.disabled": "Email notifications are not enabled",
"user.settings.notifications.email.disabled_long": "Email notifications have not been enabled by your System Administrator.", "user.settings.notifications.email.disabled_long": "Email notifications have not been enabled by your System Administrator.",
"user.settings.notifications.email.everyHour": "Every hour", "user.settings.notifications.email.everyHour": "Every hour",
"user.settings.notifications.email.everyXMinutes": "Every {count, plural, one {minute} other {{count, number} minutes}}", "user.settings.notifications.email.everyXMinutes": "Every {count, plural, one {minute} other {{count, number} minutes}}",
"user.settings.notifications.email.immediately": "Immediately",
"user.settings.notifications.email.never": "Never", "user.settings.notifications.email.never": "Never",
"user.settings.notifications.email.notifyForthreads": "Notify me about replies to threads Im following", "user.settings.notifications.email.notifyForthreads": "Notify me about replies to threads Im following",
"user.settings.notifications.email.off": "Off",
"user.settings.notifications.email.on": "On",
"user.settings.notifications.email.send": "Send email notifications", "user.settings.notifications.email.send": "Send email notifications",
"user.settings.notifications.emailBatchingInfo": "Notifications received over the time period selected are combined and sent in a single email.", "user.settings.notifications.emailBatchingInfo": "Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes. If you choose to receive notifications every 15 minutes or every hour, notifications during that period will be combined into a single email.",
"user.settings.notifications.emailInfo": "Email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes.", "user.settings.notifications.emailInfo": "When enabled, email notifications are sent for mentions and direct messages when you are offline or away for more than 5 minutes.",
"user.settings.notifications.emailNotifications": "Email notifications", "user.settings.notifications.emailNotifications": "Email notifications",
"user.settings.notifications.header": "Notifications", "user.settings.notifications.header": "Notifications",
"user.settings.notifications.icon": "Notification Settings Icon", "user.settings.notifications.icon": "Notification Settings Icon",