Files
piratepoet/assets/js/src/newsletters/breadcrumb.jsx
Jonathan Labreuille 4047b41a7f Updated all React components to their latest version
- updated code due to deprecated warnings (mostly router stuff & input default value)
- set default sender based on settings when creating new newsletter
- fixed erroneous UTC offset when displaying dates (PHP takes care of it)
2016-04-28 17:02:24 +02:00

76 lines
1.6 KiB
JavaScript

define(
[
'react',
'react-router',
'classnames',
'mailpoet'
],
function(
React,
Router,
classNames,
MailPoet
) {
var Link = Router.Link;
var Breadcrumb = React.createClass({
getInitialState: function() {
return {
step: null,
steps: [
{
name: 'type',
label: MailPoet.I18n.t('selectType'),
link: '/new'
},
{
name: 'template',
label: MailPoet.I18n.t('template')
},
{
name: 'editor',
label: MailPoet.I18n.t('designer')
},
{
name: 'send',
label: MailPoet.I18n.t('send')
}
]
};
},
render: function() {
var steps = this.state.steps.map(function(step, index) {
var stepClasses = classNames(
{ 'mailpoet_current': (this.props.step === step.name) }
);
var label = step.label;
if(step['link'] !== undefined && this.props.step !== step.name) {
label = (
<Link to={ step.link }>{ step.label }</Link>
);
}
return (
<span key={ 'step-'+index }>
<span className={ stepClasses }>
{ label }
</span>
{ (index < (this.state.steps.length - 1) ) ? ' > ' : '' }
</span>
);
}.bind(this));
return (
<p className="mailpoet_breadcrumb">
{ steps }
</p>
);
}
});
return Breadcrumb;
}
);