Commit 0a448b9c authored by Elias Nahum's avatar Elias Nahum
Browse files

Option to enable full snippets in push notifications

parent de6327db
......@@ -58,6 +58,14 @@ var holders = defineMessages({
id: 'admin.email.pushServerEx',
defaultMessage: 'E.g.: "http://push-test.mattermost.com"'
},
genericPush: {
id: 'admin.email.genericPushNotification',
defaultMessage: 'Send generic description with user and channel names'
},
fullPush: {
id: 'admin.email.fullPushNotification',
defaultMessage: 'Send full message snippet'
},
testing: {
id: 'admin.email.testing',
defaultMessage: 'Testing...'
......@@ -87,7 +95,8 @@ class EmailSettings extends React.Component {
saveNeeded: false,
serverError: null,
emailSuccess: null,
emailFail: null
emailFail: null,
pushNotificationContents: this.props.config.EmailSettings.PushNotificationContents
};
}
......@@ -125,6 +134,7 @@ class EmailSettings extends React.Component {
config.EmailSettings.FeedbackEmail = ReactDOM.findDOMNode(this.refs.feedbackEmail).value.trim();
config.EmailSettings.SMTPServer = ReactDOM.findDOMNode(this.refs.SMTPServer).value.trim();
config.EmailSettings.PushNotificationServer = ReactDOM.findDOMNode(this.refs.PushNotificationServer).value.trim();
config.EmailSettings.PushNotificationContents = ReactDOM.findDOMNode(this.refs.PushNotificationContents).value;
config.EmailSettings.SMTPPort = ReactDOM.findDOMNode(this.refs.SMTPPort).value.trim();
config.EmailSettings.SMTPUsername = ReactDOM.findDOMNode(this.refs.SMTPUsername).value.trim();
config.EmailSettings.SMTPPassword = ReactDOM.findDOMNode(this.refs.SMTPPassword).value.trim();
......@@ -928,6 +938,38 @@ class EmailSettings extends React.Component {
</div>
</div>
<div className='form-group'>
<label
className='control-label col-sm-4'
htmlFor='pushNotificationContents'
>
<FormattedMessage
id='admin.email.pushContentTitle'
defaultMessage='Push Notification Contents:'
/>
</label>
<div className='col-sm-8'>
<select
className='form-control'
id='pushNotificationContents'
ref='PushNotificationContents'
defaultValue={this.props.config.EmailSettings.PushNotificationContents}
onChange={this.handleChange.bind(this, 'pushNotificationContents')}
disabled={!this.state.sendPushNotifications}
>
<option value='generic'>{formatMessage(holders.genericPush)}</option>
<option value='full'>{formatMessage(holders.fullPush)}</option>
</select>
<p className='help-text'>
<FormattedHTMLMessage
id='admin.email.pushContentDesc'
defaultMessage='Selecting "Send generic description with user and channel names" provides push notifications with generic messages, including names of users and channels but no specific details from the message text.<br /><br />
Selecting "Send full message snippet" sends excerpts from messages triggering notifications with specifics and may include confidential information sent in messages. If your Push Notification Service is outside your firewall, it is HIGHLY RECOMMENDED this option only be used with an "https" protocol to encrypt the connection.'
/>
</p>
</div>
</div>
<div className='form-group'>
<div className='col-sm-12'>
{serverError}
......
......@@ -42,6 +42,8 @@
"admin.email.emailSettings": "Email Settings",
"admin.email.emailSuccess": "No errors were reported while sending an email. Please check your inbox to make sure.",
"admin.email.false": "false",
"admin.email.fullPushNotification": "Send full message snippet",
"admin.email.genericPushNotification": "Send generic description with user and channel names",
"admin.email.inviteSaltDescription": "32-character salt added to signing of email invites. Randomly generated on install. Click \"Re-Generate\" to create new salt.",
"admin.email.inviteSaltExample": "Ex \"bjlSR4QqkXFBr7TP4oDzlfZmcNuH9Yo\"",
"admin.email.inviteSaltTitle": "Invite Salt:",
......@@ -56,6 +58,8 @@
"admin.email.passwordSaltDescription": "32-character salt added to signing of password reset emails. Randomly generated on install. Click \"Re-Generate\" to create new salt.",
"admin.email.passwordSaltExample": "Ex \"bjlSR4QqkXFBr7TP4oDzlfZmcNuH9Yo\"",
"admin.email.passwordSaltTitle": "Password Reset Salt:",
"admin.email.pushContentDesc": "Selecting \"Send generic description with user and channel names\" provides push notifications with generic messages, including names of users and channels but no specific details from the message text.<br /><br />Selecting \"Send full message snippet\" sends excerpts from messages triggering notifications with specifics and may include confidential information sent in messages. If your Push Notification Service is outside your firewall, it is HIGHLY RECOMMENDED this option only be used with an \"https\" protocol to encrypt the connection.",
"admin.email.pushContentTitle": "Push Notification Contents:",
"admin.email.pushDesc": "Typically set to true in production. When true, Mattermost attempts to send iOS and Android push notifications through the push notification server.",
"admin.email.pushServerDesc": "Location of Mattermost push notification service you can set up behind your firewall using https://github.com/mattermost/push-proxy. For testing you can use http://push-test.mattermost.com, which connects to the sample Mattermost iOS app in the public Apple AppStore. Please do not use test service for production deployments.",
"admin.email.pushServerEx": "E.g.: \"http://push-test.mattermost.com\"",
......@@ -1315,4 +1319,4 @@
"web.footer.terms": "Terms",
"web.header.back": "Back",
"web.root.singup_info": "All team communication in one place, searchable and accessible anywhere"
}
}
\ No newline at end of file
......@@ -42,6 +42,8 @@
"admin.email.emailSettings": "Configuraciones de correo",
"admin.email.emailSuccess": "No fueron reportados errores mientras se enviada el correo. Favor validar en tu bandeja de entrada.",
"admin.email.false": "falso",
"admin.email.fullPushNotification": "Enviar el mensaje completo",
"admin.email.genericPushNotification": "Enviar descripción generica con nombres de usuario y canal",
"admin.email.inviteSaltDescription": "32-caracter salt añadido a la firma de invitación de correos. Aleatoriamente generado en la instalación. Click \"Re-Generar\" para crear nuevo salt.",
"admin.email.inviteSaltExample": "Ej \"bjlSR4QqkXFBr7TP4oDzlfZmcNuH9Yo\"",
"admin.email.inviteSaltTitle": "Salt de las invitaciones:",
......@@ -56,6 +58,8 @@
"admin.email.passwordSaltDescription": "Un salt de 32-caracteres es añadido a la firma de correos para restablecer la contraseña. Aleatoriamente generado en la instalación. Pincha \"Regenerar\" para crear un nuevo salt.",
"admin.email.passwordSaltExample": "Ej \"bjlSR4QqkXFBr7TP4oDzlfZmcNuH9Yo\"",
"admin.email.passwordSaltTitle": "Resetear el Salt para las contraseñas:",
"admin.email.pushContentDesc": "Al seleccionar \"Enviar descripción generica con nombres de usuario y canal\" las notificaciones se enviarán con mensajes genericos, incluyendo el nombre del usuario y el canal pero obviando el texto del mensaje.<br /><br /> Al seleccionar \"Enviar el mensaje completo\" envía los mensajes desencadenados por las notificaciones con características específicas y puede incluir información confidencial enviada en los mensajes. En el caso de que tu servidor de Envío de Notificaciones se encuentre fuera del alcance de tu cortafuego,, es ALTAMENTE RECOMENDABLE utilizar está opción junto con el protocolo \"https\" para cifrar las notificaciones enviadas por el servidor.",
"admin.email.pushContentTitle": "Contenido de las Notificaciones:",
"admin.email.pushDesc": "Normalmente se asigna como verdadero en producción. Cuando está en verdadero, Mattermost intenta enviar notificaciones a dispositivos iOS y Android a través del servidor de notificaciones.",
"admin.email.pushServerDesc": "Ubicación del servicio de notificaciones push de Mattermost, puedes ubicarlo detras de un cortafuego utilizando https://github.com/mattermost/push-proxy. Para realizar pruebas puedes utilizar https://push-test.mattermost.com, el cual conecta con la ap de ejemplo de Mattermost en iOS publicada en el Apple AppStore. Por favor no utilices este servicio en producción.",
"admin.email.pushServerEx": "Ej.: \"https://push-test.mattermost.com\"",
......@@ -1313,4 +1317,4 @@
"web.footer.terms": "Términos",
"web.header.back": "Atrás",
"web.root.singup_info": "Todas las comunicaciones del equipo en un sólo lugar, con búsquedas y accesible desde cualquier parte"
}
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment