List and scheduling inputs are disabled instead of being hidden

This commit is contained in:
Amine Ben hammou
2017-08-16 14:44:42 +00:00
parent 9117ae1a27
commit 853f686dde
3 changed files with 21 additions and 4 deletions

View File

@@ -101,6 +101,11 @@ define([
}
return null;
},
isDisabled: function () {
return this.props.item.status == 'sending'
&& this.props.item.queue
&& this.props.item.queue.status == 'paused';
},
loadCachedItems: function () {
if(typeof(window['mailpoet_'+this.props.field.endpoint]) !== 'undefined') {
let items = window['mailpoet_'+this.props.field.endpoint];
@@ -180,6 +185,7 @@ define([
<select
id={ this.props.field.id || this.props.field.name }
ref="select"
disabled={this.isDisabled()}
data-placeholder={ this.props.field.placeholder }
multiple={ this.props.field.multiple }
defaultValue={ this.getSelectedValues() }

View File

@@ -253,9 +253,9 @@ define(
const isPaused = this.state.item.status == 'sending'
&& this.state.item.queue
&& this.state.item.queue.status == 'paused';
const fields = (!isPaused)
? this.state.fields
: this.state.fields.filter(field => field.name != 'segments' && field.name != 'options');
// const fields = (!isPaused)
// ? this.state.fields
// : this.state.fields.filter(field => field.name != 'segments' && field.name != 'options');
return (
<div>
<h1>{MailPoet.I18n.t('finalNewsletterStep')}</h1>
@@ -264,7 +264,7 @@ define(
<Form
id="mailpoet_newsletter"
fields={ fields }
fields={ this.state.fields }
item={ this.state.item }
loading={ this.state.loading }
onChange={this.handleFormChange}

View File

@@ -155,6 +155,7 @@ define(
name={this.getFieldName()}
value={this.getDisplayDate(this.props.value)}
readOnly={ true }
disabled={this.props.disabled}
onChange={this.onChange}
ref="dateInput"
{...this.props.validation} />
@@ -180,6 +181,7 @@ define(
<select
name={this.props.name || 'time'}
value={this.props.value}
disabled={this.props.disabled}
onChange={this.props.onChange}
{...this.props.validation}
>
@@ -235,11 +237,13 @@ define(
onChange={this.handleChange}
displayFormat={dateDisplayFormat}
storageFormat={dateStorageFormat}
disabled={this.props.disabled}
validation={this.props.dateValidation}/>
<TimeSelect
name="time"
value={this.state.time}
onChange={this.handleChange}
disabled={this.props.disabled}
validation={this.props.timeValidation} />
</span>
);
@@ -282,6 +286,11 @@ define(
'data-parsley-errors-container': '#mailpoet_scheduling',
};
},
isDisabled: function () {
return this.props.item.status == 'sending'
&& this.props.item.queue
&& this.props.item.queue.status == 'paused';
},
render: function () {
let schedulingOptions;
@@ -292,6 +301,7 @@ define(
name="scheduledAt"
value={this._getCurrentValue().scheduledAt}
onChange={this.handleValueChange}
disabled={this.isDisabled()}
dateValidation={this.getDateValidation()} />
&nbsp;
<span>
@@ -308,6 +318,7 @@ define(
type="checkbox"
value="1"
checked={this.isScheduled()}
disabled={this.isDisabled()}
name="isScheduled"
onChange={this.handleCheckboxChange} />