Repository navigation
v0.4.0
Four registration field types that a signed-in member's account fills in and
locks: 中文姓名, 英文姓名, 就讀科系 and 目前身分.
Features
-
Membership details on the registration form. Add field now offers
STSA 中文姓名, STSA 英文姓名, STSA 就讀科系 and STSA 目前身分, filled in
from thechinese_name,english_name,majorandyear_of_studyclaims.
They are plain text answers as far as the rest of Indico is concerned —
summary, e-mails, registrant list, exports — and take the usual field
settings.- Signed in, and the account has an answer: the field arrives filled in
and disabled, with a padlock saying where it came from. - Signed out, or the claim is missing or blank: an ordinary text box.
Locking is decided field by field, so a member with no major gets three
locked fields and one open. - Enforced on the server, not just drawn. After core stores a
registration, on creation and on every edit, the account's answer is
written over whatever was submitted for a field it has one for — so a
hand-built request for a locked field is replaced. - A visitor who is signed out is told signing in fills these in, in the
same notice the member discount uses; what they had typed is kept across
the login page, except in the fields the account then fills in. - Organizers in the management area, somebody else's registration opened
from its e-mail link, and invitations are left as ordinary text boxes —
the same carve-outs as the membership's e-mail address.
A new switch, Fill in the member's details, on the plugin's admin page
(on by default). Off, the padlock and the overwrite go together; the field
types stay registered so forms that already carry them keep working. - Signed in, and the account has an answer: the field arrives filled in
Upgrade notes
- No migration. There are no new tables; nothing to run beyond installing
the release and restarting Indico (and the Celery worker, if you run one). - The claims have to arrive. Indico already keeps everything the identity
provider sends, on every login, so there is no new call to authentik — but
the four claims must be emitted by a scope mapping, and that scope must be
one Indico asks for (authlib_args['client_kwargs']['scope']). - Values are as of the last login. A member whose details changed, or who
last signed in before the claims were being sent, sees the old ones — or
none — until they sign in again. - A member who signs in with an Indico password rather than authentik has no
claims on that login, and gets ordinary text boxes.
Full Changelog: v0.3.2...v0.4.0