Fix eslint rules
[MAILPOET-1348]
This commit is contained in:
@@ -2,6 +2,7 @@ import React from 'react';
|
|||||||
import AutomaticEmailsBreadcrumb from 'newsletters/types/automatic_emails/breadcrumb.jsx';
|
import AutomaticEmailsBreadcrumb from 'newsletters/types/automatic_emails/breadcrumb.jsx';
|
||||||
import MailPoet from 'mailpoet';
|
import MailPoet from 'mailpoet';
|
||||||
import _ from 'underscore';
|
import _ from 'underscore';
|
||||||
|
import PropTypes from 'prop-types';
|
||||||
|
|
||||||
class AutomaticEmailEventsList extends React.Component {
|
class AutomaticEmailEventsList extends React.Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
@@ -21,7 +22,8 @@ class AutomaticEmailEventsList extends React.Component {
|
|||||||
|
|
||||||
if (this.email.premium) {
|
if (this.email.premium) {
|
||||||
action = (
|
action = (
|
||||||
<a href="?page=mailpoet-premium"
|
<a
|
||||||
|
href="?page=mailpoet-premium"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
>
|
>
|
||||||
{MailPoet.I18n.t('premiumFeatureLink')}
|
{MailPoet.I18n.t('premiumFeatureLink')}
|
||||||
@@ -31,7 +33,8 @@ class AutomaticEmailEventsList extends React.Component {
|
|||||||
const disabled = event.soon;
|
const disabled = event.soon;
|
||||||
|
|
||||||
action = (
|
action = (
|
||||||
<a className="button button-primary"
|
<a
|
||||||
|
className="button button-primary"
|
||||||
disabled={disabled}
|
disabled={disabled}
|
||||||
onClick={!disabled ? this.eventsConfigurator.bind(null, event.slug) : null}
|
onClick={!disabled ? this.eventsConfigurator.bind(null, event.slug) : null}
|
||||||
>
|
>
|
||||||
@@ -91,4 +94,18 @@ class AutomaticEmailEventsList extends React.Component {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AutomaticEmailEventsList.propTypes = {
|
||||||
|
|
||||||
|
route: PropTypes.shape({
|
||||||
|
data: PropTypes.shape({
|
||||||
|
email: PropTypes.string.isRequired,
|
||||||
|
}).isRequired,
|
||||||
|
}).isRequired,
|
||||||
|
|
||||||
|
router: PropTypes.shape({
|
||||||
|
push: PropTypes.func.isRequired,
|
||||||
|
}).isRequired,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
module.exports = AutomaticEmailEventsList;
|
module.exports = AutomaticEmailEventsList;
|
||||||
|
@@ -1,96 +1,84 @@
|
|||||||
define(
|
import React from 'react';
|
||||||
[
|
import MailPoet from 'mailpoet';
|
||||||
'underscore',
|
import Breadcrumb from 'newsletters/breadcrumb.jsx';
|
||||||
'react',
|
import _ from 'underscore';
|
||||||
'react-router',
|
import Scheduling from 'newsletters/types/notification/scheduling.jsx';
|
||||||
'mailpoet',
|
|
||||||
'newsletters/types/notification/scheduling.jsx',
|
const field = {
|
||||||
'newsletters/breadcrumb.jsx',
|
name: 'options',
|
||||||
],
|
type: 'reactComponent',
|
||||||
(
|
component: Scheduling,
|
||||||
_,
|
};
|
||||||
React,
|
|
||||||
Router,
|
const NewsletterNotification = React.createClass({
|
||||||
MailPoet,
|
contextTypes: {
|
||||||
Scheduling,
|
router: React.PropTypes.object.isRequired,
|
||||||
Breadcrumb
|
},
|
||||||
) => {
|
getInitialState: function getInitialState() {
|
||||||
const field = {
|
return {
|
||||||
name: 'options',
|
options: {
|
||||||
type: 'reactComponent',
|
intervalType: 'daily',
|
||||||
component: Scheduling,
|
timeOfDay: 0,
|
||||||
|
weekDay: 1,
|
||||||
|
monthDay: 0,
|
||||||
|
nthWeekDay: 1,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
},
|
||||||
const NewsletterNotification = React.createClass({
|
handleValueChange: function handleValueChange(event) {
|
||||||
contextTypes: {
|
const state = this.state;
|
||||||
router: React.PropTypes.object.isRequired,
|
state[event.target.name] = event.target.value;
|
||||||
},
|
this.setState(state);
|
||||||
getInitialState: function getInitialState() {
|
},
|
||||||
return {
|
handleNext: function handleNext() {
|
||||||
options: {
|
MailPoet.Ajax.post({
|
||||||
intervalType: 'daily',
|
api_version: window.mailpoet_api_version,
|
||||||
timeOfDay: 0,
|
endpoint: 'newsletters',
|
||||||
weekDay: 1,
|
action: 'create',
|
||||||
monthDay: 0,
|
data: _.extend({}, this.state, {
|
||||||
nthWeekDay: 1,
|
type: 'notification',
|
||||||
},
|
subject: MailPoet.I18n.t('draftNewsletterTitle'),
|
||||||
};
|
}),
|
||||||
},
|
}).done((response) => {
|
||||||
handleValueChange: function handleValueChange(event) {
|
this.showTemplateSelection(response.data.id);
|
||||||
const state = this.state;
|
}).fail((response) => {
|
||||||
state[event.target.name] = event.target.value;
|
if (response.errors.length > 0) {
|
||||||
this.setState(state);
|
MailPoet.Notice.error(
|
||||||
},
|
response.errors.map(error => error.message),
|
||||||
handleNext: function handleNext() {
|
{ scroll: true }
|
||||||
MailPoet.Ajax.post({
|
|
||||||
api_version: window.mailpoet_api_version,
|
|
||||||
endpoint: 'newsletters',
|
|
||||||
action: 'create',
|
|
||||||
data: _.extend({}, this.state, {
|
|
||||||
type: 'notification',
|
|
||||||
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(error => error.message),
|
|
||||||
{ scroll: true }
|
|
||||||
);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
showTemplateSelection: function showTemplateSelection(newsletterId) {
|
|
||||||
this.context.router.push(`/template/${newsletterId}`);
|
|
||||||
},
|
|
||||||
render: function render() {
|
|
||||||
return (
|
|
||||||
<div>
|
|
||||||
<h1>{MailPoet.I18n.t('postNotificationNewsletterTypeTitle')}</h1>
|
|
||||||
<Breadcrumb step="type" />
|
|
||||||
|
|
||||||
<h3>{MailPoet.I18n.t('selectFrequency')}</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>
|
|
||||||
);
|
);
|
||||||
},
|
}
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
showTemplateSelection: function showTemplateSelection(newsletterId) {
|
||||||
|
this.context.router.push(`/template/${newsletterId}`);
|
||||||
|
},
|
||||||
|
render: function render() {
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<h1>{MailPoet.I18n.t('postNotificationNewsletterTypeTitle')}</h1>
|
||||||
|
<Breadcrumb step="type" />
|
||||||
|
|
||||||
|
<h3>{MailPoet.I18n.t('selectFrequency')}</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>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = NewsletterNotification;
|
||||||
|
|
||||||
return NewsletterNotification;
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
@@ -1,53 +1,43 @@
|
|||||||
define(
|
import React from 'react';
|
||||||
[
|
import MailPoet from 'mailpoet';
|
||||||
'react',
|
import Breadcrumb from 'newsletters/breadcrumb.jsx';
|
||||||
'react-router',
|
|
||||||
'mailpoet',
|
const NewsletterStandard = React.createClass({
|
||||||
'newsletters/breadcrumb.jsx',
|
contextTypes: {
|
||||||
],
|
router: React.PropTypes.object.isRequired,
|
||||||
(
|
},
|
||||||
React,
|
showTemplateSelection: function showTemplateSelection(newsletterId) {
|
||||||
Router,
|
this.context.router.push(`/template/${newsletterId}`);
|
||||||
MailPoet,
|
},
|
||||||
Breadcrumb
|
componentDidMount: function componentDidMount() {
|
||||||
) => {
|
// No options for this type, create a newsletter upon mounting
|
||||||
const NewsletterStandard = React.createClass({
|
MailPoet.Ajax.post({
|
||||||
contextTypes: {
|
api_version: window.mailpoet_api_version,
|
||||||
router: React.PropTypes.object.isRequired,
|
endpoint: 'newsletters',
|
||||||
},
|
action: 'create',
|
||||||
showTemplateSelection: function showTemplateSelection(newsletterId) {
|
data: {
|
||||||
this.context.router.push(`/template/${newsletterId}`);
|
type: 'standard',
|
||||||
},
|
},
|
||||||
componentDidMount: function componentDidMount() {
|
}).done((response) => {
|
||||||
// No options for this type, create a newsletter upon mounting
|
this.showTemplateSelection(response.data.id);
|
||||||
MailPoet.Ajax.post({
|
}).fail((response) => {
|
||||||
api_version: window.mailpoet_api_version,
|
if (response.errors.length > 0) {
|
||||||
endpoint: 'newsletters',
|
MailPoet.Notice.error(
|
||||||
action: 'create',
|
response.errors.map(error => error.message),
|
||||||
data: {
|
{ scroll: true }
|
||||||
type: 'standard',
|
);
|
||||||
},
|
}
|
||||||
}).done((response) => {
|
});
|
||||||
this.showTemplateSelection(response.data.id);
|
},
|
||||||
}).fail((response) => {
|
render: function render() {
|
||||||
if (response.errors.length > 0) {
|
return (
|
||||||
MailPoet.Notice.error(
|
<div>
|
||||||
response.errors.map(error => error.message),
|
<h1>{MailPoet.I18n.t('regularNewsletterTypeTitle')}</h1>
|
||||||
{ scroll: true }
|
<Breadcrumb step="type" />
|
||||||
);
|
</div>
|
||||||
}
|
);
|
||||||
});
|
},
|
||||||
},
|
});
|
||||||
render: function render() {
|
|
||||||
return (
|
module.exports = NewsletterStandard;
|
||||||
<div>
|
|
||||||
<h1>{MailPoet.I18n.t('regularNewsletterTypeTitle')}</h1>
|
|
||||||
<Breadcrumb step="type" />
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
return NewsletterStandard;
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
Reference in New Issue
Block a user