diff --git a/ui/js/actions/content.js b/ui/js/actions/content.js index d887fc318..91a227665 100644 --- a/ui/js/actions/content.js +++ b/ui/js/actions/content.js @@ -240,7 +240,11 @@ export function doLoadVideo() { }) lbry.get({ uri }).then(streamInfo => { - if (streamInfo === null || typeof streamInfo !== 'object') { + const timeout = streamInfo === null || + typeof streamInfo !== 'object' || + streamInfo.error == 'Timeout' + + if(timeout) { dispatch({ type: types.LOADING_VIDEO_FAILED, data: { uri } diff --git a/ui/js/component/fileActions/view.jsx b/ui/js/component/fileActions/view.jsx index 5fe6a2dea..5d74949bc 100644 --- a/ui/js/component/fileActions/view.jsx +++ b/ui/js/component/fileActions/view.jsx @@ -116,188 +116,6 @@ class FileActionsRow extends React.Component { } } -// const FileActionsRow = React.createClass({ -// _isMounted: false, -// _fileInfoSubscribeId: null, - -// propTypes: { -// uri: React.PropTypes.string, -// outpoint: React.PropTypes.string.isRequired, -// metadata: React.PropTypes.oneOfType([React.PropTypes.object, React.PropTypes.string]), -// contentType: React.PropTypes.string.isRequired, -// }, -// getInitialState: function() { -// return { -// fileInfo: null, -// modal: null, -// menuOpen: false, -// deleteChecked: false, -// attemptingDownload: false, -// attemptingRemove: false, -// } -// }, -// onFileInfoUpdate: function(fileInfo) { -// if (this._isMounted) { -// this.setState({ -// fileInfo: fileInfo ? fileInfo : false, -// attemptingDownload: fileInfo ? false : this.state.attemptingDownload -// }); -// } -// }, -// tryDownload: function() { -// this.setState({ -// attemptingDownload: true, -// attemptingRemove: false -// }); -// lbry.getCostInfo(this.props.uri).then(({cost}) => { -// lbry.getBalance((balance) => { -// if (cost > balance) { -// this.setState({ -// modal: 'notEnoughCredits', -// attemptingDownload: false, -// }); -// } else if (this.state.affirmedPurchase) { -// lbry.get({uri: this.props.uri}).then((streamInfo) => { -// if (streamInfo === null || typeof streamInfo !== 'object') { -// this.setState({ -// modal: 'timedOut', -// attemptingDownload: false, -// }); -// } -// }); -// } else { -// this.setState({ -// attemptingDownload: false, -// modal: 'affirmPurchase' -// }) -// } -// }); -// }); -// }, -// closeModal: function() { -// this.setState({ -// modal: null, -// }) -// }, -// onDownloadClick: function() { -// if (!this.state.fileInfo && !this.state.attemptingDownload) { -// this.tryDownload(); -// } -// }, -// onOpenClick: function() { -// if (this.state.fileInfo && this.state.fileInfo.download_path) { -// shell.openItem(this.state.fileInfo.download_path); -// } -// }, -// handleDeleteCheckboxClicked: function(event) { -// this.setState({ -// deleteChecked: event.target.checked, -// }); -// }, -// handleRevealClicked: function() { -// if (this.state.fileInfo && this.state.fileInfo.download_path) { -// shell.showItemInFolder(this.state.fileInfo.download_path); -// } -// }, -// handleRemoveClicked: function() { -// this.setState({ -// modal: 'confirmRemove', -// }); -// }, -// handleRemoveConfirmed: function() { -// lbry.removeFile(this.props.outpoint, this.state.deleteChecked); -// this.setState({ -// modal: null, -// fileInfo: false, -// attemptingDownload: false -// }); -// }, -// onAffirmPurchase: function() { -// this.setState({ -// affirmedPurchase: true, -// modal: null -// }); -// this.tryDownload(); -// }, -// openMenu: function() { -// this.setState({ -// menuOpen: !this.state.menuOpen, -// }); -// }, -// componentDidMount: function() { -// this._isMounted = true; -// this._fileInfoSubscribeId = lbry.fileInfoSubscribe(this.props.outpoint, this.onFileInfoUpdate); -// }, -// componentWillUnmount: function() { -// this._isMounted = false; -// if (this._fileInfoSubscribeId) { -// lbry.fileInfoUnsubscribe(this.props.outpoint, this._fileInfoSubscribeId); -// } -// }, -// render: function() { -// if (this.state.fileInfo === null) -// { -// return null; -// } - -// const openInFolderMessage = window.navigator.platform.startsWith('Mac') ? 'Open in Finder' : 'Open in Folder', -// showMenu = !!this.state.fileInfo; - -// let linkBlock; -// if (this.state.fileInfo === false && !this.state.attemptingDownload) { -// linkBlock = ; -// } else if (this.state.attemptingDownload || (!this.state.fileInfo.completed && !this.state.fileInfo.isMine)) { -// const -// progress = this.state.fileInfo ? this.state.fileInfo.written_bytes / this.state.fileInfo.total_bytes * 100 : 0, -// label = this.state.fileInfo ? progress.toFixed(0) + '% complete' : 'Connecting...', -// labelWithIcon = {label}; - -// linkBlock = ( -//
-//
{labelWithIcon}
-// {labelWithIcon} -//
-// ); -// } else { -// linkBlock = ; -// } - -// const uri = lbryuri.normalize(this.props.uri); -// const title = this.props.metadata ? this.props.metadata.title : uri; -// return ( -//
-// {this.state.fileInfo !== null || this.state.fileInfo.isMine -// ? linkBlock -// : null} -// { showMenu ? -// -// -// -// : '' } -// -// Are you sure you'd like to buy {title} for credits? -// -// -// You don't have enough LBRY credits to pay for this stream. -// -// -// LBRY was unable to download the stream {uri}. -// -// -//

Are you sure you'd like to remove {title} from LBRY?

- -// -//
-//
-// ); -// } -// }); - class FileActions extends React.Component { constructor(props) { super(props)