Changed file upload components to properly remove previews for failed uploads
Этот коммит содержится в:
@@ -132,8 +132,23 @@ module.exports = React.createClass({
|
|||||||
|
|
||||||
this.setState({uploadsInProgress: draft['uploadsInProgress'], previews: draft['previews']});
|
this.setState({uploadsInProgress: draft['uploadsInProgress'], previews: draft['previews']});
|
||||||
},
|
},
|
||||||
handleUploadError: function(err) {
|
handleUploadError: function(err, clientId) {
|
||||||
this.setState({ server_error: err });
|
var draft = PostStore.getCommentDraft(this.props.rootId);
|
||||||
|
if (!draft) {
|
||||||
|
draft = {};
|
||||||
|
draft['message'] = '';
|
||||||
|
draft['uploadsInProgress'] = [];
|
||||||
|
draft['previews'] = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
var index = draft['uploadsInProgress'].indexOf(clientId);
|
||||||
|
if (index != -1) {
|
||||||
|
draft['uploadsInProgress'].splice(index, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
PostStore.storeCommentDraft(this.props.rootId, draft);
|
||||||
|
|
||||||
|
this.setState({uploadsInProgress: draft['uploadsInProgress'], server_error: err});
|
||||||
},
|
},
|
||||||
clearPreviews: function() {
|
clearPreviews: function() {
|
||||||
this.setState({previews: []});
|
this.setState({previews: []});
|
||||||
|
|||||||
@@ -165,8 +165,23 @@ module.exports = React.createClass({
|
|||||||
|
|
||||||
this.setState({uploadsInProgress: draft['uploadsInProgress'], previews: draft['previews']});
|
this.setState({uploadsInProgress: draft['uploadsInProgress'], previews: draft['previews']});
|
||||||
},
|
},
|
||||||
handleUploadError: function(err) {
|
handleUploadError: function(err, clientId) {
|
||||||
this.setState({ server_error: err });
|
var draft = PostStore.getDraft(this.state.channel_id);
|
||||||
|
if (!draft) {
|
||||||
|
draft = {};
|
||||||
|
draft['message'] = '';
|
||||||
|
draft['uploadsInProgress'] = [];
|
||||||
|
draft['previews'] = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
var index = draft['uploadsInProgress'].indexOf(clientId);
|
||||||
|
if (index != -1) {
|
||||||
|
draft['uploadsInProgress'].splice(index, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
PostStore.storeDraft(this.state.channel_id, draft);
|
||||||
|
|
||||||
|
this.setState({uploadsInProgress: draft['uploadsInProgress'], server_error: err});
|
||||||
},
|
},
|
||||||
removePreview: function(id) {
|
removePreview: function(id) {
|
||||||
var previews = this.state.previews;
|
var previews = this.state.previews;
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ module.exports = React.createClass({
|
|||||||
this.setState({requests: requests});
|
this.setState({requests: requests});
|
||||||
}.bind(this),
|
}.bind(this),
|
||||||
function(err) {
|
function(err) {
|
||||||
this.props.onUploadError(err);
|
this.props.onUploadError(err, clientId);
|
||||||
}.bind(this)
|
}.bind(this)
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -151,7 +151,7 @@ module.exports = React.createClass({
|
|||||||
self.setState({requests: requests});
|
self.setState({requests: requests});
|
||||||
},
|
},
|
||||||
function(err) {
|
function(err) {
|
||||||
self.props.onUploadError(err);
|
self.props.onUploadError(err, clientId);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user