feat: multiple phone number for profile#61125
Open
mykh-hailo wants to merge 1 commit into
Open
Conversation
Signed-off-by: mykh-hailo <kristianderonta0205@gmail.com>
Contributor
|
Thank you for the PR! We'll be reviewing it shortly. |
susnux
reviewed
Jun 10, 2026
| public const COLLECTION_EMAIL = 'additional_mail'; | ||
|
|
||
| /** | ||
| * @since 33.0.0 |
susnux
reviewed
Jun 10, 2026
| const userId = getCurrentUser().uid | ||
| const url = generateOcsUrl('cloud/users/{userId}', { userId }) | ||
|
|
||
| await confirmPassword() |
Contributor
There was a problem hiding this comment.
I think it is a bit cleaner to use the axios interceptors:
https://nextcloud-libraries.github.io/nextcloud-password-confirmation/functions/addPasswordConfirmationInterceptors.html
Just register them once in this module then you can use confirmPassword axios option.
susnux
reviewed
Jun 10, 2026
| </section> | ||
| </template> | ||
|
|
||
| <script> |
Contributor
There was a problem hiding this comment.
Please use script setup and Typescript for new Vue files.
susnux
reviewed
Jun 10, 2026
| </div> | ||
| </template> | ||
|
|
||
| <script> |
Contributor
There was a problem hiding this comment.
Please use script setup and Typescript for new Vue files.
susnux
reviewed
Jun 10, 2026
Contributor
There was a problem hiding this comment.
Please no new Javascript files, use Typescript instead.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This change adds support for multiple phone numbers on user accounts, following the same model as additional email addresses.
Previously, personal settings only exposed a single primary phone number via
AccountPropertySection. Users can now manage a primary phone number plus additional numbers, including federation scope per entry, fromSettings→Personal info.Backend
IAccountManager::COLLECTION_PHONE(additional_phone) as a new account property collection (since 33.0.0).UsersController) to add, update, remove, and scope additional phone numbers, with the same permission checks used for additional emails.additional_phoneandadditional_phoneScopein OCS user data responses (AUserDataOCSController).AccountManagerusing the existing E.164 validation path.Converter).Frontend(settings app)
PhoneSection.vuewith a dedicatedPhoneSection/ component structure:PhoneSection.vue— section layout, validation, and primary/additional phone coordinationPhoneSectionEntry.vue— individual phone input with federation controls and actionsPhoneService.js— OCS API client for primary and additional phone operationsAccountPropertyConstantswithPHONE_COLLECTION, readable labels, supported scopes, andDEFAULT_ADDITIONAL_PHONE_SCOPE.phoneMap(primary + additional phones) via initial state inPersonalInfo.phpinstead of a singlephoneproperty.Behavior
libphonenumber-js) and server-side (existing phone sanitization).Checklist
3. to review, feature component)stable32)AI (if applicable)