{"action":"closed","issue":{"url":"https://api.github.com/repos/cul-2016/quiz/issues/484","repository_url":"https://api.github.com/repos/cul-2016/quiz","labels_url":"https://api.github.com/repos/cul-2016/quiz/issues/484/labels{/name}","comments_url":"https://api.github.com/repos/cul-2016/quiz/issues/484/comments","events_url":"https://api.github.com/repos/cul-2016/quiz/issues/484/events","html_url":"https://github.com/cul-2016/quiz/issues/484","id":250361527,"number":484,"title":"Sharing / reusing previous quizzes","user":{"login":"stianr","id":16817089,"avatar_url":"https://avatars2.githubusercontent.com/u/16817089?v=4","gravatar_id":"","url":"https://api.github.com/users/stianr","html_url":"https://github.com/stianr","followers_url":"https://api.github.com/users/stianr/followers","following_url":"https://api.github.com/users/stianr/following{/other_user}","gists_url":"https://api.github.com/users/stianr/gists{/gist_id}","starred_url":"https://api.github.com/users/stianr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stianr/subscriptions","organizations_url":"https://api.github.com/users/stianr/orgs","repos_url":"https://api.github.com/users/stianr/repos","events_url":"https://api.github.com/users/stianr/events{/privacy}","received_events_url":"https://api.github.com/users/stianr/received_events","type":"User","site_admin":false},"labels":[{"id":501688967,"url":"https://api.github.com/repos/cul-2016/quiz/labels/please-test","name":"please-test","color":"08E700","default":false},{"id":402742574,"url":"https://api.github.com/repos/cul-2016/quiz/labels/priority-3","name":"priority-3","color":"42a5f5","default":false},{"id":504762223,"url":"https://api.github.com/repos/cul-2016/quiz/labels/T3d","name":"T3d","color":"f9d0c4","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/cul-2016/quiz/milestones/11","html_url":"https://github.com/cul-2016/quiz/milestone/11","labels_url":"https://api.github.com/repos/cul-2016/quiz/milestones/11/labels","id":2694774,"number":11,"title":"Sprint 7","description":"","creator":{"login":"sohilpandya","id":2305591,"avatar_url":"https://avatars2.githubusercontent.com/u/2305591?v=4","gravatar_id":"","url":"https://api.github.com/users/sohilpandya","html_url":"https://github.com/sohilpandya","followers_url":"https://api.github.com/users/sohilpandya/followers","following_url":"https://api.github.com/users/sohilpandya/following{/other_user}","gists_url":"https://api.github.com/users/sohilpandya/gists{/gist_id}","starred_url":"https://api.github.com/users/sohilpandya/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sohilpandya/subscriptions","organizations_url":"https://api.github.com/users/sohilpandya/orgs","repos_url":"https://api.github.com/users/sohilpandya/repos","events_url":"https://api.github.com/users/sohilpandya/events{/privacy}","received_events_url":"https://api.github.com/users/sohilpandya/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":6,"state":"open","created_at":"2017-08-10T16:36:41Z","updated_at":"2017-09-14T12:54:25Z","due_on":null,"closed_at":null},"comments":4,"created_at":"2017-08-15T16:09:23Z","updated_at":"2017-09-14T12:54:25Z","closed_at":"2017-09-14T12:54:25Z","author_association":"NONE","body":"As a lecturer, I want to be able to use a quiz I have set up, and:\r\n\r\n- Share it with another lecturer so that they can edit and run it with their students\r\n- Duplicate it into another module so that I can run it on a different student group or year\r\n\r\nThere are two options we've looked at:\r\n\r\n1. Export/import - download a file containing all the quiz information, which can be shared and uploaded to another module\r\n2. Generate code - click on 'share quiz' to generate a code that can be entered in another user/module combination to import the quiz\r\n\r\nOn first pass we thought 2 would be easier and cleaner. If this is the case then it would need the following modifications:\r\n\r\n- [ ] On a lecturer's module overview page, for each quiz include a 'Share quiz' button, next to the 'Preview Quiz' and 'Run Quiz' buttons. This would then give a pop-up containing the unique code plus text \"This is a unique code for this quiz - you can share this with anyone who you want to have a copy. They just need to click on 'Import Quiz' and enter this code to get a copy of the quiz. They will not have access to any details about people who have taken your quiz, only a copy of the questions, options and correct answers, so they can run it themselves with their own class.\"\r\n\r\n- [ ] On the same page, below all the current quizzes, have an 'Import Quiz' button, which brings up a dialog with a text field and a submit button. On pressing the submit button, the text field contents is compared against quiz identifiers. If there's no match, present text saying \"No quiz found with this code\". If there is a match, import quiz to current module in the same way that the add new quiz page does.\r\n\r\nPotential issues/queries\r\n\r\n- Security - the unique code should not be guessable \r\n- Sharing - there will be a gap between Lecturer 1 generating the code and Lecturer 2 entering the code to import the quiz. If the quiz is edited in the meantime, are those edits incorporated into the quiz that Lecturer 2 imports? In other words do we (a) copy for Lecturer 2 whatever is in the quiz shared by Lecturer 1 at the point at which Lecturer 2 enters the code, or (b) take a snapshot of the quiz at the point that the share code is generated so that Lecturer 2 imports that version of the quiz no matter when they do it. I imagine (a) is easier, and is fine.\r\n- Do multiple share attempts always generate the same code? (That shouldn't be a problem if we do (a) above.)\r\n- Do we check for multiple imports of a particular quiz? (Not sure it's necessary.) Just need to ensure that each new instance has a new ID so there's no clashes."}}
{"actor":{"display_login":"stianr"}}