Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blob service #306

Merged
merged 185 commits into from
Mar 24, 2020
Merged

Blob service #306

merged 185 commits into from
Mar 24, 2020

Conversation

RichardNutt
Copy link
Contributor

@RichardNutt RichardNutt commented Jul 1, 2019

see issue: #223

Visible/Frontend Changes

  • Photo-Functionality on the details page
  • Photo-functionality on the block/list page

Architectural/Backend Changes

  • Nextcloud authentification currently not working / Auth. header missing / CORS

ToDo

  • Fix tests
  • Write tests
  • Fix buffer size (bufferArrayToBase64 method breaks for large images)
  • Check whether pictures exists on the nextcloud server
    (- [ ] Check if the login to the nextcloud server succeeds (see here))
  • Store pictures for future requests (only load them once)
  • Utilize folder structure on the nextcloud-side

Documentation:

  • needs some documentation what exactly the webdav url in the config.json should be. (for Nextcloud it seems to be "nextcloud-domain.com/remote.php/webdav")
  • needs documentation that the Nextcloud-Server has to be tweaked to allow the remote connections

Uploading:

  • no error message displayed if upload fails (e.g. because credentials are not set)
  • file extension (e.g. ".png" gets lost during upload), therefore Nextcloud website doesn't recognize the uploaded image when browsing there
    (Note: We would have to save the image file type somewhere to retrieve images this way.)
  • credentials don't get saved persistently (or decrypted correctly). After reload I am getting 401 errors from the webdav routes until I enter the credentials again on the user account form

User-Account:

  • no feedback after clicking "Update" to save the service credentials. We should display an alert to confirm and probably reset the form fields
  • it is not completely intuitive what the "Password" field in the "Image Service" section means. Maybe put something more elaborate along the lines of "enter your user-account password to encrypt and save the new cloud image service credentials"
  • we could use tabs or ExpansionPanel like in the ChildDetailsComponent to separate the User Account and Image Service Account forms more clearly
  • Chromium warns in the console that "Password field is not contained in a form: (More info: https://goo.gl/9p2vKq)"

@RichardNutt RichardNutt changed the title [WIP] Blob service Blob service Jan 29, 2020
@RichardNutt RichardNutt requested a review from sleidig January 29, 2020 22:38
RichardNutt and others added 5 commits February 4, 2020 10:35
# Conflicts:
#	package-lock.json
#	src/app/child-dev-project/children/child-details/child-details.component.ts
#	src/app/child-dev-project/children/children-list/children-list.component.spec.ts
#	src/app/child-dev-project/children/children.module.ts
#	src/app/core/app-config/app-config.model.ts
#	src/assets/config.default.json
Copy link
Member

@sleidig sleidig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I adapted some parts of the code during my elaborate testing. For example I split the child photo specific code of CloudFileService into a separate service to make it easier to understand and more reusable.

The webdav connection and config is also optional now and it will not cause any errors if no connection is set up.

@sleidig sleidig merged commit 0f340f4 into master Mar 24, 2020
@sleidig sleidig deleted the blob-service branch March 24, 2020 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants