mirror of
https://github.com/scratchfoundation/scratch-www.git
synced 2025-02-17 00:21:20 -05:00
Merge pull request #2789 from paulkaplan/report-thumbnailing
Get thumbnails from the project for reporting
This commit is contained in:
commit
656ab3ce3c
3 changed files with 19 additions and 4 deletions
|
@ -954,9 +954,8 @@ module.exports.shareProject = (projectId, token) => (dispatch => {
|
||||||
|
|
||||||
module.exports.reportProject = (id, jsonData, token) => (dispatch => {
|
module.exports.reportProject = (id, jsonData, token) => (dispatch => {
|
||||||
dispatch(module.exports.setFetchStatus('report', module.exports.Status.FETCHING));
|
dispatch(module.exports.setFetchStatus('report', module.exports.Status.FETCHING));
|
||||||
// scratchr2 will fail if no thumbnail base64 string provided. We don't yet have
|
// scratchr2 will fail if no thumbnail base64 string provided. If there is not one
|
||||||
// a way to get the actual project thumbnail in www/gui, so for now just submit
|
// included for any reason, include this minimal blank image.
|
||||||
// a minimal base64 png string.
|
|
||||||
defaults(jsonData, {
|
defaults(jsonData, {
|
||||||
thumbnail: 'iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC' +
|
thumbnail: 'iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC' +
|
||||||
'0lEQVR42mP8/x8AAwMCAO+ip1sAAAAASUVORK5CYII='
|
'0lEQVR42mP8/x8AAwMCAO+ip1sAAAAASUVORK5CYII='
|
||||||
|
|
|
@ -106,6 +106,7 @@ const PreviewPresentation = ({
|
||||||
onRestoreComment,
|
onRestoreComment,
|
||||||
onSeeAllComments,
|
onSeeAllComments,
|
||||||
onSeeInside,
|
onSeeInside,
|
||||||
|
onSetProjectThumbnailer,
|
||||||
onShare,
|
onShare,
|
||||||
onToggleComments,
|
onToggleComments,
|
||||||
onToggleStudio,
|
onToggleStudio,
|
||||||
|
@ -341,6 +342,7 @@ const PreviewPresentation = ({
|
||||||
onGreenFlag={onGreenFlag}
|
onGreenFlag={onGreenFlag}
|
||||||
onProjectLoaded={onProjectLoaded}
|
onProjectLoaded={onProjectLoaded}
|
||||||
onRemixing={onRemixing}
|
onRemixing={onRemixing}
|
||||||
|
onSetProjectThumbnailer={onSetProjectThumbnailer}
|
||||||
onUpdateProjectId={onUpdateProjectId}
|
onUpdateProjectId={onUpdateProjectId}
|
||||||
onUpdateProjectThumbnail={onUpdateProjectThumbnail}
|
onUpdateProjectThumbnail={onUpdateProjectThumbnail}
|
||||||
/>
|
/>
|
||||||
|
@ -709,6 +711,7 @@ PreviewPresentation.propTypes = {
|
||||||
onRestoreComment: PropTypes.func,
|
onRestoreComment: PropTypes.func,
|
||||||
onSeeAllComments: PropTypes.func,
|
onSeeAllComments: PropTypes.func,
|
||||||
onSeeInside: PropTypes.func,
|
onSeeInside: PropTypes.func,
|
||||||
|
onSetProjectThumbnailer: PropTypes.func,
|
||||||
onShare: PropTypes.func,
|
onShare: PropTypes.func,
|
||||||
onToggleComments: PropTypes.func,
|
onToggleComments: PropTypes.func,
|
||||||
onToggleStudio: PropTypes.func,
|
onToggleStudio: PropTypes.func,
|
||||||
|
|
|
@ -79,6 +79,7 @@ class Preview extends React.Component {
|
||||||
'handleRemix',
|
'handleRemix',
|
||||||
'handleSeeAllComments',
|
'handleSeeAllComments',
|
||||||
'handleSeeInside',
|
'handleSeeInside',
|
||||||
|
'handleSetProjectThumbnailer',
|
||||||
'handleShare',
|
'handleShare',
|
||||||
'handleUpdateProjectId',
|
'handleUpdateProjectId',
|
||||||
'handleUpdateProjectTitle',
|
'handleUpdateProjectTitle',
|
||||||
|
@ -381,7 +382,18 @@ class Preview extends React.Component {
|
||||||
this.setState({addToStudioOpen: false});
|
this.setState({addToStudioOpen: false});
|
||||||
}
|
}
|
||||||
handleReportSubmit (formData) {
|
handleReportSubmit (formData) {
|
||||||
this.props.reportProject(this.state.projectId, formData, this.props.user.token);
|
const submit = data => this.props.reportProject(this.state.projectId, data, this.props.user.token);
|
||||||
|
if (this.getProjectThumbnail) {
|
||||||
|
this.getProjectThumbnail(thumbnail => {
|
||||||
|
const data = Object.assign({}, formData, {thumbnail});
|
||||||
|
submit(data);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
submit(formData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
handleSetProjectThumbnailer (fn) {
|
||||||
|
this.getProjectThumbnail = fn;
|
||||||
}
|
}
|
||||||
handleGreenFlag () {
|
handleGreenFlag () {
|
||||||
if (!this.state.greenFlagRecorded) {
|
if (!this.state.greenFlagRecorded) {
|
||||||
|
@ -690,6 +702,7 @@ class Preview extends React.Component {
|
||||||
onRestoreComment={this.handleRestoreComment}
|
onRestoreComment={this.handleRestoreComment}
|
||||||
onSeeAllComments={this.handleSeeAllComments}
|
onSeeAllComments={this.handleSeeAllComments}
|
||||||
onSeeInside={this.handleSeeInside}
|
onSeeInside={this.handleSeeInside}
|
||||||
|
onSetProjectThumbnailer={this.handleSetProjectThumbnailer}
|
||||||
onShare={this.handleShare}
|
onShare={this.handleShare}
|
||||||
onToggleComments={this.handleToggleComments}
|
onToggleComments={this.handleToggleComments}
|
||||||
onToggleStudio={this.handleToggleStudio}
|
onToggleStudio={this.handleToggleStudio}
|
||||||
|
|
Loading…
Reference in a new issue