webknossos icon indicating copy to clipboard operation
webknossos copied to clipboard

Url based remote dataset import

Open knollengewaechs opened this issue 1 year ago • 1 comments

URL of deployed dev instance (used for testing):

  • https://urlbasedremotedatasetimport.webknossos.xyz/

Steps to test:

  • pick any remote dataset, and use route /import?url=<...>. Ideally the dataset should open after a bit of loading
  • make sure the usual remote DS upload is still working
  • try causing an error during upload (no/wrong URL, use dataset twice etc) and check that you are seeing the upload form wirh an appropriate error
  • if you open a dataset that has been imported before, you should directly be redirected to the dataset view

TODOs:

  • [x] fix modal The explored data has a different voxel size from the datasource that was already loaded.
  • [x] add animation in order not to show form in happy path
  • [x] infer name and automatically submit second form in happy path
  • [x] right now its hard to load the real errors in handleStoreDataset (form.validateFields()). maybe theres a good way to print only the relevant fields?
  • [x] route to login if needed
    • [x] route to form afterwards: only keep URI parameter
  • [x] code self-review and clean-up.
    • [ ] prevent mutliple isNameValid calls! handleStoreDataset seems to only be called once...
  • [x] TEST!!!
  • [x] fix theme of PW field in add layer modal
  • [x] append url hash to name
  • [x] if url has been imported before, open existing DS
  • [ ] ~~fix that brain spinner is jumping when loading DS~~ (edit: skipped for now. I think this happens if the navbar changes from text to icons, I didnt find an easy reason and it doesnt seem worth to spend more time there
  • [x] change label if url is edited

Issues:

  • fixes #7686

(Please delete unneeded items, merge only when none are left open)

  • [x] Updated changelog
  • [ ] Updated migration guide if applicable
  • [ ] Updated documentation if applicable
  • [ ] Adapted wk-libs python client if relevant API parts change
  • [ ] Removed dev-only changes like prints and application.conf edits
  • [ ] Considered common edge cases
  • [ ] Needs datastore update after deployment

knollengewaechs avatar May 29 '24 16:05 knollengewaechs

Amazing, thank you! Yes, I tested it just now and it still seems to be working good. I will quickly test it again tomorrow right before merging. Sorry if I am being nit-picky, but do you think the other thread in this commit is resolved? Just trying to make sure I didnt miss anything.

knollengewaechs avatar Jul 09 '24 13:07 knollengewaechs