Removes welcome notification creation component and routes
Updates welcome notification template
This commit is contained in:
@@ -9,7 +9,6 @@ import NewsletterTemplates from 'newsletters/templates.jsx'
|
|||||||
import NewsletterSend from 'newsletters/send.jsx'
|
import NewsletterSend from 'newsletters/send.jsx'
|
||||||
|
|
||||||
import NewsletterTypeStandard from 'newsletters/types/standard.jsx'
|
import NewsletterTypeStandard from 'newsletters/types/standard.jsx'
|
||||||
import NewsletterTypeWelcome from 'newsletters/types/welcome/welcome.jsx'
|
|
||||||
import NewsletterTypeNotification from 'newsletters/types/notification/notification.jsx'
|
import NewsletterTypeNotification from 'newsletters/types/notification/notification.jsx'
|
||||||
|
|
||||||
import NewsletterListStandard from 'newsletters/listings/standard.jsx'
|
import NewsletterListStandard from 'newsletters/listings/standard.jsx'
|
||||||
@@ -44,7 +43,6 @@ if(container) {
|
|||||||
<Route path="new" component={ NewsletterTypes } />
|
<Route path="new" component={ NewsletterTypes } />
|
||||||
{/* New newsletter: types */}
|
{/* New newsletter: types */}
|
||||||
<Route path="new/standard" component={ NewsletterTypeStandard } />
|
<Route path="new/standard" component={ NewsletterTypeStandard } />
|
||||||
<Route path="new/welcome" component={ NewsletterTypeWelcome } />
|
|
||||||
<Route path="new/notification" component={ NewsletterTypeNotification } />
|
<Route path="new/notification" component={ NewsletterTypeNotification } />
|
||||||
{/* Template selection */}
|
{/* Template selection */}
|
||||||
<Route name="template" path="template/:id" component={ NewsletterTemplates } />
|
<Route name="template" path="template/:id" component={ NewsletterTemplates } />
|
||||||
|
@@ -63,7 +63,9 @@ define(
|
|||||||
'action': function() {
|
'action': function() {
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
Premium feature text (TBD)
|
<a href="?page=mailpoet-settings#premium" target="_blank">
|
||||||
|
{MailPoet.I18n.t('getPremiumVersion')}
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}()
|
}()
|
||||||
@@ -74,7 +76,7 @@ define(
|
|||||||
'description': MailPoet.I18n.t('postNotificationNewsletterTypeDescription'),
|
'description': MailPoet.I18n.t('postNotificationNewsletterTypeDescription'),
|
||||||
'action': function() {
|
'action': function() {
|
||||||
return (
|
return (
|
||||||
<a className="button button-primary" onClick={ this.createNewsletter.bind(null, 'standard') }>
|
<a className="button button-primary" onClick={ this.setupNewsletter.bind(null, 'notification') }>
|
||||||
{MailPoet.I18n.t('setUp')}
|
{MailPoet.I18n.t('setUp')}
|
||||||
</a>
|
</a>
|
||||||
)
|
)
|
||||||
@@ -82,7 +84,7 @@ define(
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
types = Hooks.applyFilters('mailpoet_newsletters_types', types);
|
types = Hooks.applyFilters('mailpoet_newsletters_types', types, this);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
|
@@ -1,103 +0,0 @@
|
|||||||
define(
|
|
||||||
[
|
|
||||||
'underscore',
|
|
||||||
'react',
|
|
||||||
'react-router',
|
|
||||||
'mailpoet',
|
|
||||||
'newsletters/types/welcome/scheduling.jsx',
|
|
||||||
'newsletters/breadcrumb.jsx'
|
|
||||||
],
|
|
||||||
function(
|
|
||||||
_,
|
|
||||||
React,
|
|
||||||
Router,
|
|
||||||
MailPoet,
|
|
||||||
Scheduling,
|
|
||||||
Breadcrumb
|
|
||||||
) {
|
|
||||||
|
|
||||||
var field = {
|
|
||||||
name: 'options',
|
|
||||||
label: 'Event',
|
|
||||||
type: 'reactComponent',
|
|
||||||
component: Scheduling,
|
|
||||||
};
|
|
||||||
|
|
||||||
var availableSegments = window.mailpoet_segments || {},
|
|
||||||
defaultSegment = 1;
|
|
||||||
|
|
||||||
if (_.size(availableSegments) > 0) {
|
|
||||||
defaultSegment = _.first(availableSegments).id;
|
|
||||||
}
|
|
||||||
|
|
||||||
var NewsletterWelcome = React.createClass({
|
|
||||||
contextTypes: {
|
|
||||||
router: React.PropTypes.object.isRequired
|
|
||||||
},
|
|
||||||
getInitialState: function() {
|
|
||||||
return {
|
|
||||||
options: {
|
|
||||||
event: 'segment',
|
|
||||||
segment: defaultSegment,
|
|
||||||
role: 'subscriber',
|
|
||||||
afterTimeNumber: 1,
|
|
||||||
afterTimeType: 'immediate',
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
handleValueChange: function(event) {
|
|
||||||
var state = this.state;
|
|
||||||
state[event.target.name] = event.target.value;
|
|
||||||
this.setState(state);
|
|
||||||
},
|
|
||||||
handleNext: function() {
|
|
||||||
MailPoet.Ajax.post({
|
|
||||||
api_version: window.mailpoet_api_version,
|
|
||||||
endpoint: 'newsletters',
|
|
||||||
action: 'create',
|
|
||||||
data: _.extend({}, this.state, {
|
|
||||||
type: 'welcome',
|
|
||||||
subject: MailPoet.I18n.t('draftNewsletterTitle'),
|
|
||||||
})
|
|
||||||
}).done((response) => {
|
|
||||||
this.showTemplateSelection(response.data.id);
|
|
||||||
}).fail((response) => {
|
|
||||||
if (response.errors.length > 0) {
|
|
||||||
MailPoet.Notice.error(
|
|
||||||
response.errors.map(function(error) { return error.message; }),
|
|
||||||
{ scroll: true }
|
|
||||||
);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
showTemplateSelection: function(newsletterId) {
|
|
||||||
this.context.router.push(`/template/${newsletterId}`);
|
|
||||||
},
|
|
||||||
render: function() {
|
|
||||||
return (
|
|
||||||
<div>
|
|
||||||
<h1>{MailPoet.I18n.t('welcomeNewsletterTypeTitle')}</h1>
|
|
||||||
<Breadcrumb step="type" />
|
|
||||||
|
|
||||||
<h3>{MailPoet.I18n.t('selectEventToSendWelcomeEmail')}</h3>
|
|
||||||
|
|
||||||
<Scheduling
|
|
||||||
item={this.state}
|
|
||||||
field={field}
|
|
||||||
onValueChange={this.handleValueChange} />
|
|
||||||
|
|
||||||
<p className="submit">
|
|
||||||
<input
|
|
||||||
className="button button-primary"
|
|
||||||
type="button"
|
|
||||||
onClick={ this.handleNext }
|
|
||||||
value={MailPoet.I18n.t('next')} />
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
return NewsletterWelcome;
|
|
||||||
}
|
|
||||||
);
|
|
@@ -121,6 +121,7 @@
|
|||||||
'create': __('Create'),
|
'create': __('Create'),
|
||||||
'welcomeNewsletterTypeTitle': __('Welcome Email'),
|
'welcomeNewsletterTypeTitle': __('Welcome Email'),
|
||||||
'welcomeNewsletterTypeDescription': __('Automatically send an email (or series of emails) to new subscribers or WordPress users. Send a day, a week, or a month after they sign up.'),
|
'welcomeNewsletterTypeDescription': __('Automatically send an email (or series of emails) to new subscribers or WordPress users. Send a day, a week, or a month after they sign up.'),
|
||||||
|
'getPremiumVersion': __('Get premium version!'),
|
||||||
'setUp': __('Set up'),
|
'setUp': __('Set up'),
|
||||||
'postNotificationNewsletterTypeTitle': __('Latest Post Notifications'),
|
'postNotificationNewsletterTypeTitle': __('Latest Post Notifications'),
|
||||||
'postNotificationNewsletterTypeDescription': __('Let MailPoet email your subscribers with your latest content. You can send daily, weekly, monthly, or even immediately after publication.'),
|
'postNotificationNewsletterTypeDescription': __('Let MailPoet email your subscribers with your latest content. You can send daily, weekly, monthly, or even immediately after publication.'),
|
||||||
|
Reference in New Issue
Block a user