Your details: a primary identifier, marked with a star at the start of its row #922
Labels
No labels
accessibility
authentication
breaking change
bug
documentation
enhancement
interface
internationalisation
observability
performance
security
tier
1
tier
2
tier
3
tier/4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo#922
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
On Your details, one identifier can be marked primary with a star at the start of its row, as the rows of telephone numbers, links, messaging and addresses already can.
What exists today
accounts/models.py,PersonIdentifier:scheme,value,label. Nois_primary.Meta.ordering = ("scheme", "value"), and a unique constraint on(profile, scheme)keeps one identifier of each kind (#307).<c-identifier-row>(templates/cotton/identifier_row.html), shared with a company's form: Type, Identifier, Name (when Other), and the bin (<c-remove-button>) on Your details. No star.<c-primary-choice name="<prefix>-primary" value="{{ row.prefix }}" :checked="row.instance.is_primary" />(#303). It is a radio shared by the block's rows, shown as a star, with the label as a 24px target. Their models carryis_primarywith a unique constraint "one primary per holder" (for exampleone_primary_web_link_per_holder_and_kind). Since #866 the star comes first in the row and the bin last.profile.htmldraws the identifiers in a<fieldset class="card" data-identifiers id="section-identifiers">.What would change
PersonIdentifier.is_primary(default false), with a constraint of one primary per profile, a migration, and the archive format, the API schema and the importers carrying it.<c-identifier-row>draws<c-primary-choice>first in the row whenremove_at_once(Your details). The formset saves the chosen row as primary the way the other blocks' formsets do. A company's form is unchanged unless company identifiers get a primary too (not requested).data-hands-onsentence).Accessibility
<c-primary-choice>: a real radio named "Primary", visually a filled or outline star, distinguishable in forced colours.Notes
core/help.pychanges, and that goes through the catalogues and Weblate. "Primary" already exists.orderingshould put the primary first (("-is_primary", "scheme", "value")), as the other models do.Related: #303, #307, #866.
Checked against
mainat56fc9d531.