Fix 'send_at' option on the UI and bug in starting scheduled campaigns
This commit is contained in:
parent
32a543bf4f
commit
6681f189fc
3 changed files with 13 additions and 5 deletions
|
@ -217,6 +217,8 @@ class TheFormDef extends React.PureComponent {
|
||||||
}
|
}
|
||||||
|
|
||||||
componentWillReceiveProps(nextProps) {
|
componentWillReceiveProps(nextProps) {
|
||||||
|
// On initial load, toggle the send_later switch if the record
|
||||||
|
// has a "send_at" date.
|
||||||
if (nextProps.record.send_at === this.props.record.send_at) {
|
if (nextProps.record.send_at === this.props.record.send_at) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -260,6 +262,12 @@ class TheFormDef extends React.PureComponent {
|
||||||
values.body = this.props.body
|
values.body = this.props.body
|
||||||
values.content_type = this.props.contentType
|
values.content_type = this.props.contentType
|
||||||
|
|
||||||
|
if (values.send_at) {
|
||||||
|
values.send_later = true
|
||||||
|
} else {
|
||||||
|
values.send_later = false
|
||||||
|
}
|
||||||
|
|
||||||
// Create a new campaign.
|
// Create a new campaign.
|
||||||
this.setState({ loading: true })
|
this.setState({ loading: true })
|
||||||
if (!this.props.isSingle) {
|
if (!this.props.isSingle) {
|
||||||
|
@ -303,8 +311,7 @@ class TheFormDef extends React.PureComponent {
|
||||||
cs.MethodPut,
|
cs.MethodPut,
|
||||||
{
|
{
|
||||||
...values,
|
...values,
|
||||||
id: this.props.record.id,
|
id: this.props.record.id
|
||||||
send_at: !this.state.sendLater ? null : values.send_at
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
.then(resp => {
|
.then(resp => {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
export const DateFormat = "ddd D MMM YYYY, hh:MM A"
|
export const DateFormat = "ddd D MMM YYYY, hh:mm A"
|
||||||
|
|
||||||
// Data types.
|
// Data types.
|
||||||
export const ModelUsers = "users"
|
export const ModelUsers = "users"
|
||||||
|
|
|
@ -411,8 +411,9 @@ u AS (
|
||||||
-- For each campaign above, update the to_send count.
|
-- For each campaign above, update the to_send count.
|
||||||
UPDATE campaigns AS ca
|
UPDATE campaigns AS ca
|
||||||
SET to_send = co.to_send,
|
SET to_send = co.to_send,
|
||||||
max_subscriber_id = co.max_subscriber_id,
|
status = (CASE WHEN status != 'running' THEN 'running' ELSE status END),
|
||||||
started_at=(CASE WHEN ca.started_at IS NULL THEN NOW() ELSE ca.started_at END)
|
max_subscriber_id = co.max_subscriber_id,
|
||||||
|
started_at=(CASE WHEN ca.started_at IS NULL THEN NOW() ELSE ca.started_at END)
|
||||||
FROM (SELECT * FROM counts) co
|
FROM (SELECT * FROM counts) co
|
||||||
WHERE ca.id = co.campaign_id
|
WHERE ca.id = co.campaign_id
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue