{"action":"created","issue":{"url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal/issues/5","repository_url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal","labels_url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal/issues/5/comments","events_url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal/issues/5/events","html_url":"https://github.com/BiologicalRecordsCentre/PlantPortal/issues/5","id":166537466,"number":5,"title":"Details of how the importer will work exactly","user":{"login":"andrewvanbreda","id":2463614,"avatar_url":"https://avatars.githubusercontent.com/u/2463614?v=3","gravatar_id":"","url":"https://api.github.com/users/andrewvanbreda","html_url":"https://github.com/andrewvanbreda","followers_url":"https://api.github.com/users/andrewvanbreda/followers","following_url":"https://api.github.com/users/andrewvanbreda/following{/other_user}","gists_url":"https://api.github.com/users/andrewvanbreda/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewvanbreda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewvanbreda/subscriptions","organizations_url":"https://api.github.com/users/andrewvanbreda/orgs","repos_url":"https://api.github.com/users/andrewvanbreda/repos","events_url":"https://api.github.com/users/andrewvanbreda/events{/privacy}","received_events_url":"https://api.github.com/users/andrewvanbreda/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"andrewvanbreda","id":2463614,"avatar_url":"https://avatars.githubusercontent.com/u/2463614?v=3","gravatar_id":"","url":"https://api.github.com/users/andrewvanbreda","html_url":"https://github.com/andrewvanbreda","followers_url":"https://api.github.com/users/andrewvanbreda/followers","following_url":"https://api.github.com/users/andrewvanbreda/following{/other_user}","gists_url":"https://api.github.com/users/andrewvanbreda/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewvanbreda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewvanbreda/subscriptions","organizations_url":"https://api.github.com/users/andrewvanbreda/orgs","repos_url":"https://api.github.com/users/andrewvanbreda/repos","events_url":"https://api.github.com/users/andrewvanbreda/events{/privacy}","received_events_url":"https://api.github.com/users/andrewvanbreda/received_events","type":"User","site_admin":false},"assignees":[{"login":"andrewvanbreda","id":2463614,"avatar_url":"https://avatars.githubusercontent.com/u/2463614?v=3","gravatar_id":"","url":"https://api.github.com/users/andrewvanbreda","html_url":"https://github.com/andrewvanbreda","followers_url":"https://api.github.com/users/andrewvanbreda/followers","following_url":"https://api.github.com/users/andrewvanbreda/following{/other_user}","gists_url":"https://api.github.com/users/andrewvanbreda/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewvanbreda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewvanbreda/subscriptions","organizations_url":"https://api.github.com/users/andrewvanbreda/orgs","repos_url":"https://api.github.com/users/andrewvanbreda/repos","events_url":"https://api.github.com/users/andrewvanbreda/events{/privacy}","received_events_url":"https://api.github.com/users/andrewvanbreda/received_events","type":"User","site_admin":false}],"milestone":null,"comments":38,"created_at":"2016-07-20T09:25:47Z","updated_at":"2016-12-08T15:18:35Z","closed_at":null,"body":"Hi, I just wanted to bring up the topic of how the importer will actually work. Now I have started to really get into programming it, I have a better idea of how it can work. Mainly we need to strike a balance between functionality, and what is feasable. In particular we need to make it functional, but also keep in mind if it becomes too complex it might become less reliable and also more difficult to use.\nRather than spend hours going back and forth with ideas and maybe not getting very far. I think if I put an idea to you, then you can tell me what alterations you would like to see.\n1. The importer will ask for CSV file upload.\n2. We will then display a mappings screen which allows the user to select which columns in the CSV file headings map to which fields in the database.\n3. When the user continues from here, the system will examine the existing database.\n4. The user is then presented with a screen displaying the results of that examination split into sections.\n\nThe sections will have (roughly) the following headings. Note these may very as I will probably think of more situations.\n- \"The following samples will be created as new records in the database\"\n- \"The following samples appear to already exist in the database, note that if you continue with the import these will not be imported\"\n- \"The following samples do not currently exist in the database, however their sample groups do exist. These will be imported as new samples attached to those existing groups\"\n- \"The following samples and plots do not currently exist in the database, however the plot groups do exist. These will be imported as existing plots and samples attached to the existing plot groups\"\n- \"The following samples and plots do not currently exist in the database, however the plots already exist. These will be imported as new samples using the existing plots\"\n\nNote that although this might seem confusing, we only need display the ones that are applicable at the time. So it is unlikely a user would see all the sections above at the same time.\n\nThe user will be advised to continue with the import if all is OK.\n\nNow there are two possibilities of how we could deal with corrections.\n1. We could get them to make edits on screen using the rows displayed in the various sections. \nThe problem with this is that this makes things more complicated, also I think we would want to write those results back to the original file otherwise their import CSV file will be out of date. I think the combination of giving the user full edit capability on the screen and the options to write back to the original file might make life very difficult, espiecially if we want to get something working by the end of august. We also might want to provide options to opt-out of the auto-correction of the original file (or output a copy of it anyway)\n2.\nThe simpler approach would be to simply ask the user to make corrections to the original file. Then get them to click a Re-upload button, at which point we re-examine the file and present them with the results screen again.\nThis process of corrections could continue until they are entirely happy.\nWe could extend this functionality if we have time to dump the text CSV file into a big box on screen, then get them to make the corrections on screen (this is different to what I was thinking for point 1 above, where the rows displayed in the different setions would be editable)\n\nThen when they click import, we import the data into the database.\n\nLet me know what you think.\n\nI also have one further question. Do we need the ability to limit users so they can only use their own groups/plots, currently they could attach data to anyone's group\n"},"comment":{"url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal/issues/comments/265765362","html_url":"https://github.com/BiologicalRecordsCentre/PlantPortal/issues/5#issuecomment-265765362","issue_url":"https://api.github.com/repos/BiologicalRecordsCentre/PlantPortal/issues/5","id":265765362,"user":{"login":"andrewvanbreda","id":2463614,"avatar_url":"https://avatars.githubusercontent.com/u/2463614?v=3","gravatar_id":"","url":"https://api.github.com/users/andrewvanbreda","html_url":"https://github.com/andrewvanbreda","followers_url":"https://api.github.com/users/andrewvanbreda/followers","following_url":"https://api.github.com/users/andrewvanbreda/following{/other_user}","gists_url":"https://api.github.com/users/andrewvanbreda/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewvanbreda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewvanbreda/subscriptions","organizations_url":"https://api.github.com/users/andrewvanbreda/orgs","repos_url":"https://api.github.com/users/andrewvanbreda/repos","events_url":"https://api.github.com/users/andrewvanbreda/events{/privacy}","received_events_url":"https://api.github.com/users/andrewvanbreda/received_events","type":"User","site_admin":false},"created_at":"2016-12-08T15:18:35Z","updated_at":"2016-12-08T15:18:35Z","body":"Just a further thought on this issue, I am now thinking actually what I am going to do is simply have a list of vice counties and countries as part of the configuration on the edit tab configuration along with the grid reference we want to use for each. \r\nThen I can very easily get at the values without bothering the warehouse with trying to get these values. A little bit of bother for me to initially setup, but I think that is worth the gain."}}
{"actor":{"display_login":"andrewvanbreda"}}