Skip to content

Storing Person Information via Vdc::Person Objects

jkim-ru edited this page Nov 20, 2017 · 1 revision

Based on the following commit: 613da18500ed9d24170f190d37b17c3001bb16d9

Purpose and Initial Goals

We were looking to customize our VDC application to store and administer registered user information in the underlying Fedora repository.

Initial Goals with code checked-in

  • Store information on a "person" (aka a User) in Fedora if they've registered and been approved to use our Hyrax-based application.
  • Augmented the existing User model (user.rb), also used by the Devise gem, to store registration information and an approval flag.
  • Allow users to register and have their information stored in the user db table, but only an approval by an Administrator will create a Vdc::Person in Fedora and give a user the ability to log in.
  • Use information from a Vdc::Person to and from our Works as links within Fedora.

Goals not yet implemented

  • Eventually create workflows to allow administrators to approve user requests to update a Person's information (for example, if a Person changes his or her email after moving to a different university). This would update the Person's information in Fedora (and anything linked to it). This extra step will be to make sure changes go through an authorized source, much like approval when initially registering.
    • If we do get this working eventually, we'll put back the ability to for users to edit their own profile. We disabled the ability for users to edit their profiles. Only Administrators can edit a user's registration and sync with Fedora.
  • Eventually set up an external triple store to mirror the Fedora data and be used for other purposes.

Related links: