{"action":"created","issue":{"url":"https://api.github.com/repos/popcodeorg/popcode/issues/858","repository_url":"https://api.github.com/repos/popcodeorg/popcode","labels_url":"https://api.github.com/repos/popcodeorg/popcode/issues/858/labels{/name}","comments_url":"https://api.github.com/repos/popcodeorg/popcode/issues/858/comments","events_url":"https://api.github.com/repos/popcodeorg/popcode/issues/858/events","html_url":"https://github.com/popcodeorg/popcode/pull/858","id":233454730,"number":858,"title":"Add a grace period during which a closed workspace can be reloaded","user":{"login":"ajgreenb","id":8922554,"avatar_url":"https://avatars0.githubusercontent.com/u/8922554?v=3","gravatar_id":"","url":"https://api.github.com/users/ajgreenb","html_url":"https://github.com/ajgreenb","followers_url":"https://api.github.com/users/ajgreenb/followers","following_url":"https://api.github.com/users/ajgreenb/following{/other_user}","gists_url":"https://api.github.com/users/ajgreenb/gists{/gist_id}","starred_url":"https://api.github.com/users/ajgreenb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ajgreenb/subscriptions","organizations_url":"https://api.github.com/users/ajgreenb/orgs","repos_url":"https://api.github.com/users/ajgreenb/repos","events_url":"https://api.github.com/users/ajgreenb/events{/privacy}","received_events_url":"https://api.github.com/users/ajgreenb/received_events","type":"User","site_admin":false},"labels":[{"id":466479628,"url":"https://api.github.com/repos/popcodeorg/popcode/labels/in-progress","name":"in-progress","color":"ededed","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-06-04T19:37:46Z","updated_at":"2017-06-04T20:52:28Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/popcodeorg/popcode/pulls/858","html_url":"https://github.com/popcodeorg/popcode/pull/858","diff_url":"https://github.com/popcodeorg/popcode/pull/858.diff","patch_url":"https://github.com/popcodeorg/popcode/pull/858.patch"},"body":"Currently works if you close a \"dirty\" tab and then open a new tab.\r\nIf you don't close a dirty tab and open a new tab, it will be\r\npristine. Still need to\r\n\r\n* Add a time limit.\r\n* Add test cases.\r\n\r\nIs this behavior correct?"},"comment":{"url":"https://api.github.com/repos/popcodeorg/popcode/issues/comments/306066173","html_url":"https://github.com/popcodeorg/popcode/pull/858#issuecomment-306066173","issue_url":"https://api.github.com/repos/popcodeorg/popcode/issues/858","id":306066173,"user":{"login":"ajgreenb","id":8922554,"avatar_url":"https://avatars0.githubusercontent.com/u/8922554?v=3","gravatar_id":"","url":"https://api.github.com/users/ajgreenb","html_url":"https://github.com/ajgreenb","followers_url":"https://api.github.com/users/ajgreenb/followers","following_url":"https://api.github.com/users/ajgreenb/following{/other_user}","gists_url":"https://api.github.com/users/ajgreenb/gists{/gist_id}","starred_url":"https://api.github.com/users/ajgreenb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ajgreenb/subscriptions","organizations_url":"https://api.github.com/users/ajgreenb/orgs","repos_url":"https://api.github.com/users/ajgreenb/repos","events_url":"https://api.github.com/users/ajgreenb/events{/privacy}","received_events_url":"https://api.github.com/users/ajgreenb/received_events","type":"User","site_admin":false},"created_at":"2017-06-04T20:52:28Z","updated_at":"2017-06-04T20:52:28Z","body":"Just realized...the list of projects when you're logged in refers to the list of Firebase-persisted projects, rather than the list of exported Gists, right?\r\n\r\nOn this branch, when Popcode creates a new project (rather than loading from a Gist), it will attempt to rehydrate its Workspace state from `localStorage`. This could result in a dupe in the list of projects if a student is authenticated. They might have the FB-persisted project in their list *and* the new one that was created by rehydrating from `localStorage`. Does that make sense?\r\n\r\nPerhaps the approach should be,\r\n\r\n* If the student is authenticated, get the `localStorage`-serialized project's `projectKey` and use it to look up the project in the list of projects.\r\n* If the student is *not* authenticated, create a new project by rehydrating the whole thing from `localStorage`.\r\n\r\nThoughts?"}}
{"actor":{"display_login":"ajgreenb"}}