Commit graph

111 commits

Author SHA1 Message Date
chrisgarrity
decb250dd5 Initial version 2018-11-26 09:43:05 -05:00
Paul Kaplan
3fb5dd769a
Merge pull request #2340 from paulkaplan/visibility-info
Show details about why a project is not public
2018-11-26 09:18:38 -05:00
Paul Kaplan
0b8c13fb40 Use the project author username in visibility request instead of viewer
/ht @chrisgarrity
2018-11-21 10:31:10 -05:00
Benjamin Wheeler
95fb947c08
Merge pull request #2325 from benjiwheeler/hash-redirect
redirect hash urls to url pathnames
2018-11-20 16:06:46 -05:00
Paul Kaplan
ac6a870a3f
Merge pull request #2334 from chrisgarrity/feature/rename-preview
Rename /preview to /projects
2018-11-20 15:34:03 -05:00
Ben Wheeler
79ae4dd511 let pathname end without a slash 2018-11-20 15:03:57 -05:00
Paul Kaplan
122160726d Show details about why a project is not public
Follow up the project info request with a request to the visibility endpoint to find out if the project is trashed or censored. The project just not being published is handled by the existing code.

This PR generalizes the ShareBanner to a more generic "Banner" that is then filled with the relevant content.
2018-11-20 12:01:52 -05:00
Paul Kaplan
af301ba450
Merge pull request #2336 from paulkaplan/exit-single-comment-view
Allow user to exit "single comment mode" and see all comments.
2018-11-20 08:13:42 -05:00
chrisgarrity
c4403c5d8d Replace uses of /preview in URLs 2018-11-19 17:02:09 -05:00
Paul Kaplan
3fe1242aa6 Allow user to exit "single comment mode" and see all comments.
This visually appears like a "load more comments" button for now, but has the impact of unsetting the #comments-<id> hash in the url and resetting the comment state, showing all the comments (in paginated view)
2018-11-19 15:47:47 -05:00
Paul Kaplan
7cfc3ed846 Show projectNotAvailable view in editor mode also 2018-11-19 14:16:56 -05:00
Ben Wheeler
d9fdb67543 redirect hash urls to url pathnames 2018-11-17 23:59:41 -05:00
Ben Wheeler
30ed29a39a enable remix button; format remix, see inside button css 2018-11-17 15:13:58 -05:00
Paul Kaplan
194dc90688 Add missing extensions and images 2018-11-14 15:39:40 -05:00
Paul Kaplan
476578cfa8
Merge pull request #2304 from paulkaplan/update-share-endpoint
Move sharing to special endpoint.
2018-11-14 14:15:45 -05:00
Paul Kaplan
d36b71dcb3
Merge branch 'develop' into hide-backpack-logged-out 2018-11-14 14:12:51 -05:00
Benjamin Wheeler
6d09f2dada
Merge pull request #2289 from benjiwheeler/show-creator
Pass authorId and authorUsername to gui
2018-11-14 06:43:29 -05:00
Ben Wheeler
4bb5e641bb added comment about falseness of authorId, authorUsername 2018-11-14 06:42:57 -05:00
Paul Kaplan
3a03f10aff Move sharing to special endpoint.
This makes a couple of assumptions about the shape of the endpoint:
- Route is /proxy/projects/:id/share.
- Returns the full (updated) project info on success, just like the project update endpoint does.

I reviewed these with colby since this is frontrunning the actual API, but I can update once the API is finalized.
2018-11-13 08:49:37 -05:00
Ben Wheeler
c965fd15f9 generate author thumbnail and pass to gui 2018-11-10 02:07:48 -05:00
Paul Kaplan
9ed3ecc7bb Split up the backpack options and tie visibility to isLoggedIn 2018-11-08 13:19:12 -05:00
Paul Kaplan
315c8b78fc Add "project not available" view for when project body cannot be loaded
This happens when the project id does not exist, or is not visible to the given user.
2018-11-07 16:32:12 -05:00
Ben Wheeler
464d5f7c2d Pass authorId and authorUsername to gui 2018-11-07 12:59:16 -05:00
Ben Wheeler
7aae4219ec make share banner appear only if user has the power to share this project 2018-11-01 14:19:28 -04:00
Karishma Chadha
e771e91164 Configure cloud host and pass it as a prop to the gui. 2018-10-29 01:05:36 -04:00
Paul Kaplan
f2490baa16
Merge pull request #2239 from paulkaplan/fix-comments-id
Use #comments-id instead of #comment-id for fetching single comments
2018-10-25 16:56:27 -04:00
Benjamin Wheeler
cff5733833
Merge pull request #2234 from benjiwheeler/isshared
pass isShared to gui
2018-10-25 15:57:07 -04:00
Benjamin Wheeler
8653e358b1
Merge pull request #2232 from benjiwheeler/dont-get-extensions
moved getExtensions out of constructor, and out of projectInfo response
2018-10-25 15:56:39 -04:00
Paul Kaplan
32f0999bb0 Use #comments-id instead of #comment-id for fetching single comments 2018-10-25 15:53:34 -04:00
Ben Wheeler
c4de63d93a pass isShared to gui 2018-10-24 18:13:57 -04:00
Paul Kaplan
fa7c2d5b09
Merge pull request #2230 from paulkaplan/single-comment-mode
Showing specific comment by url hash on preview
2018-10-24 15:41:14 -04:00
Ben Wheeler
dd07e46c6a moved getExtensions out of constructor, and out of projectInfo response 2018-10-24 15:38:18 -04:00
Benjamin Wheeler
95dc611d77
Merge pull request #2222 from benjiwheeler/copy-remix
Set capability flags to be passed to GUI, to support remix and save as copy
2018-10-24 13:24:40 -04:00
Paul Kaplan
520018ee50 View single thread of comments by URL hash 2018-10-24 10:29:33 -04:00
Paul Kaplan
ae626d5244 Do not rely on total comment number for load more functionality
Show the load more comments button any time the last comment page was filled to the requested limit. As noted in the comment, this heuristic will be wrong at most 5% of the time but the failure mode (showing load more which, when clicked doesn't load any more, just goes away) is very mild, and for the overwhelming majority of project views that happen on projects with many, many comments, this is very unlikely to ever be noticed. It obviously isn't a perfect solution, but I cannot think of another that does not need the server to do another query to find out the total number of visible comments, or to find out if there are more comments after the requested offset+limit.
2018-10-24 09:18:45 -04:00
Ben Wheeler
3d964911a1 renamed canSaveAsCopy to canCreateCopy 2018-10-23 17:42:55 -04:00
Ben Wheeler
d713249bee changed the meaning of canCreateNew to true creation 2018-10-23 17:42:55 -04:00
Ben Wheeler
e03f83466e better logic around canSave when project is new 2018-10-23 17:42:55 -04:00
Ben Wheeler
ed7b6541e9 set canRemix and canSaveAsCopy 2018-10-23 17:42:55 -04:00
chrisgarrity
3fcc13a8cd Integrate www-gui localization
* Initialize `locales` in redux using methods exported by GUI.
* pass GUI method to set the `scratchlanguage` cookie

NOTE: It does not reload the page, so switching back to the project page will not reflect language changes made in gui until the next page reload. Reloading the page will lose project state so we don’t want to do that.
2018-10-22 17:38:35 -04:00
Benjamin Wheeler
a6409bbcce
Pass to and receive from GUI info about project creation lifecycle; handle url changes (#2197)
* add canSaveNew prop to pass to GUI

* pass to and receive from GUI info about project lifecycle

* reset project data or fetch new project data depending on updates received from gui

* removed canSaveNew

* projectId always a string

* moved handleUpdateProjectId calls that fetch or set project metadata into componentDidUpdate

* changed page history object

* removed comments

* two small fixes to deal with edge cases

* cleaning up getExtensions
2018-10-19 16:02:59 -04:00
Paul Kaplan
35abd285df Connect the consolidated studio data directly
To the modal to prevent constantly updating. Also only render the modals if they are visible
2018-10-18 16:45:24 -04:00
Paul Kaplan
7b514344fa Allow admins access to comment delete 2018-10-17 13:16:41 -04:00
Paul Kaplan
2ac90315ea Use can prefix instead of undefined callback 2018-10-16 15:09:10 -04:00
Paul Kaplan
592c0e5703 Add restore functionality to comments for admins 2018-10-16 15:08:00 -04:00
Paul Kaplan
b0ac4018ee Use admin routes to include all comments when loading page 2018-10-16 15:08:00 -04:00
Paul Kaplan
effbfbeaff
Merge pull request #2196 from paulkaplan/share-banner
Make share banner work on preview
2018-10-16 13:21:16 -04:00
Paul Kaplan
21a7f1227e Make share banner actually share projects 2018-10-16 11:38:26 -04:00
Benjamin Wheeler
4124e26588
set explicit capabilities like “can____” for GUI and project page (#2187)
* set explicit capabilities like “can____” for GUI and project page

* set canShare to proper value instead of hardcoding it

* don't tell gui canReport
2018-10-16 10:49:35 -04:00
Paul Kaplan
85f13935b3 Use the proper API route for reporting projects 2018-10-15 11:17:40 -04:00