diff --git a/ui/src/kapacitor/components/RuleMessage.js b/ui/src/kapacitor/components/RuleMessage.js
index 485818f8f..9e80fbc36 100644
--- a/ui/src/kapacitor/components/RuleMessage.js
+++ b/ui/src/kapacitor/components/RuleMessage.js
@@ -61,6 +61,29 @@ export const RuleMessage = React.createClass({
Alert Message
+
+
+
Send this Alert to:
+
+
+
+
+ {
+ selectedAlert === 'smtp' ?
+
+
: null
+ }
- {
- selectedAlert === 'smtp' ?
-
);
diff --git a/ui/src/kapacitor/components/RuleMessageAlertConfig.js b/ui/src/kapacitor/components/RuleMessageAlertConfig.js
index 44399d760..2295475ac 100644
--- a/ui/src/kapacitor/components/RuleMessageAlertConfig.js
+++ b/ui/src/kapacitor/components/RuleMessageAlertConfig.js
@@ -2,6 +2,7 @@ import React, {PropTypes} from 'react';
import {
DEFAULT_ALERT_PLACEHOLDERS,
+ DEFAULT_ALERT_LABELS,
ALERT_NODES_ACCESSORS,
} from '../constants';
@@ -13,23 +14,22 @@ const RuleMessageAlertConfig = ({
if (!Object.keys(DEFAULT_ALERT_PLACEHOLDERS).find((a) => a === alert)) {
return null;
}
+ if (!Object.keys(DEFAULT_ALERT_LABELS).find((a) => a === alert)) {
+ return null;
+ }
return (
-
+
+
{DEFAULT_ALERT_LABELS[alert]}
+
updateAlertNodes(rule.id, alert, evt.target.form.alertProperty.value)}
+ value={ALERT_NODES_ACCESSORS[alert](rule)}
+ />
+
);
};
diff --git a/ui/src/kapacitor/constants/index.js b/ui/src/kapacitor/constants/index.js
index 65dae72e1..2c32df834 100644
--- a/ui/src/kapacitor/constants/index.js
+++ b/ui/src/kapacitor/constants/index.js
@@ -41,12 +41,20 @@ export const RULE_MESSAGE_TEMPLATES = {
export const DEFAULT_ALERTS = ['http', 'tcp', 'exec'];
+
+export const DEFAULT_ALERT_LABELS = {
+ http: 'URL:',
+ tcp: 'Address:',
+ exec: 'Add Command (Arguments separated by Spaces):',
+ smtp: 'Email Addresses (Separated by Spaces):',
+ alerta: 'Paste Alerta TICKscript:',
+};
export const DEFAULT_ALERT_PLACEHOLDERS = {
- http: 'URL',
- tcp: 'Address',
- exec: 'Add command with arguments separated by spaces',
- smtp: 'Add email addresses separated by spaces',
- alerta: 'Paste Alerta tick script here',
+ http: 'http://',
+ tcp: 'Address:',
+ exec: 'Ex: woogie boogie',
+ smtp: 'Ex: benedict@domain.com delaney@domain.com susan@domain.com',
+ alerta: 'alerta()',
};
export const ALERT_NODES_ACCESSORS = {
diff --git a/ui/src/style/pages/kapacitor.scss b/ui/src/style/pages/kapacitor.scss
index b52915555..1e85c9870 100644
--- a/ui/src/style/pages/kapacitor.scss
+++ b/ui/src/style/pages/kapacitor.scss
@@ -401,8 +401,9 @@ div.qeditor.kapacitor-metric-selector {
font-size: $kapacitor-font-sm;
line-height: 17px;
transition:
- color 0.25s ease,
- border-color 0.25s ease;
+ color 0.25s ease,
+ border-color 0.25s ease;
+ border-radius: 0;
@include custom-scrollbar($kapacitor-graphic-color,$kapacitor-accent);
@@ -418,19 +419,12 @@ div.qeditor.kapacitor-metric-selector {
&::-moz-placeholder { color: $g9-mountain; }
&:-ms-input-placeholder { color: $g9-mountain; }
&:-moz-placeholder { color: $g9-mountain; }
-
- &.message {
- border-radius: $kap-radius-lg $kap-radius-lg 0 0;
- }
-
- &.details {
- border-radius: 0;
- }
}
.alert-message--endpoint {
width: auto;
- border-top: 2px solid $kapacitor-divider-color;
+ border-radius: $kap-radius-lg $kap-radius-lg 0 0;
+ border-bottom: 2px solid $kapacitor-divider-color;
& > div {
display: flex;
@@ -447,6 +441,7 @@ div.qeditor.kapacitor-metric-selector {
align-items: center;
flex-wrap: wrap;
border-top: 2px solid $kapacitor-divider-color;
+ border-radius: 0 0 $kap-radius-lg $kap-radius-lg;
> p {
margin: 0 ($kap-padding-sm - 2px) 0 0;
@@ -476,6 +471,20 @@ div.qeditor.kapacitor-metric-selector {
}
}
}
+.alert-message--config {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ flex-wrap: nowrap;
+ border-bottom: 2px solid $kapacitor-divider-color;
+
+ & > p {
+ margin-right: ($kap-padding-sm - 2px);
+ }
+}
+.alert-message--email-body {
+ border-bottom: 2px solid $kapacitor-divider-color;
+}
.rule-section--item {
background-color: $kapacitor-graphic-color;
@@ -617,6 +626,14 @@ div.qeditor.kapacitor-metric-selector {
color: $c-honeydew !important;
}
}
+
+
+ .size-486 {
+ width: 486px;
+ }
+ .size-384 {
+ width: 384px;
+ }
.size-256 {
width: 256px;
}
diff --git a/ui/src/style/theme/theme-dark.scss b/ui/src/style/theme/theme-dark.scss
index c832ff20b..8bf921302 100644
--- a/ui/src/style/theme/theme-dark.scss
+++ b/ui/src/style/theme/theme-dark.scss
@@ -93,7 +93,8 @@ button.btn.btn-sm > span.icon {
}
.btn.disabled,
-.btn[disabled="true"] {
+.btn[disabled="true"],
+.btn[disabled] {
&.btn-success,
&.btn-success:hover,
&.btn-success:focus,