nikobojs / manuscrape_electron

ManuScrape desktop app for Windows 11
5 stars 2 forks source link

Export: Add submitter's name/ID to export #57

Closed Pedrotheplant closed 7 months ago

Pedrotheplant commented 8 months ago

Can we include the submitter's ID to the observations? E.g., their initials. It's rather important from a validity point of view to know who has submitted what. I don't know if this would entail changes to the "sign up"-module, adding a field with "choose your own initials/abbreviation".

nikobojs commented 8 months ago

Ah damn, i accidentally made the wrong fix :sweat_smile: Now the collaborator email is in the observation export. If you prefer initials we need answers to:

  1. Is initials required when creating a manuscrape user?
  2. If yes, what should existing users' initials be?
  3. Any problems with duplicate initials?
  4. Any constraints for initials (like max length, min length, capital letters only, etc)

Initials can still be used to identify people, so it should not be different from a full name in terms of GDPR. I think. But if it's just a text variable bound to a user, maybe it would be more intuitive to use 'Full name' as placeholder, and then people can type whatever they like, unique or not.

nikobojs commented 8 months ago

@Pedrotheplant do you consider this issue fixed or do you prefer some kind of initials/name/alias solution instead of emails in the export? One benefit by using emails is that they are enforced to be unique (and it is already developed :sweat_smile: )

Pedrotheplant commented 8 months ago

Sorry about the delay! I do not think that e-mail is the most optimal. Can we make a field called "self-selected alias"? In that case it is not the program that enforces what goes into that field, rather it becomes decided by the user/project. E.g., If I'm the project owner I'll tell collaborators to use their full name, or initials, or simply "researcher 1" :)

nikobojs commented 8 months ago

That makes sense. But if the collaborators are connected to several projects, i guess the different owners could have different requirements to naming.

Since it is the project owners who can download the Excel file, I think they should also be the ones deciding how to identify collaborators in their final exports. Maybe I'm wrong?

If not, maybe the initials should be saved in the "relation" between users and projects, instead of directly on the "user". Does that make sense?

Could it be, that the most correct way to solve this is to let the project owner control the initials (for the collaborators in their project) ? And let collaborators have many different initials in different projects?

Pedrotheplant commented 8 months ago

I think that is a very good idea. Just to be 100 % clear: You propose that users create a project-specific username when assigned to a new project? I think that should work!

nikobojs commented 8 months ago

Yea exactly! Here's a domain model around this specific issue. The initials is not in the User object, but in the ProjectRelation object. I think this is the way to go. The frontend is still a question though, but for some reason my improvisation hasn't been completely trash (i hope), so I think I've got enough info to solve this :smile:

manu

Pedrotheplant commented 8 months ago

So far your improv has been more than on point!

nikobojs commented 7 months ago

All right, it is done! Collaborator alias default to their email, and can be edited as project owner in the project details page. :+1: Please open a new issue if you have feedback or it didn't work as expected.