Browse Source
* Add missing hide-passwords permission to api models * Update src/Api/Auth/Models/Public/AssociationWithPermissionsBaseModel.cs Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com> * Rename ToSelectionReadOnly to ToCollectionAccessSelection * Remove Required attribute which would break backwards compatability * Update src/Api/Auth/Models/Public/Request/AssociationWithPermissionsRequestModel.cs Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com> * feat: add Manage property to collection permissions associations, refs AC-1880 * feat: throw if not allowed to send manage property, refs AC-1880 * fix: format, refs AC-1880 * feat: replace ambiguous call for all organizations in cache with specific orgId, refs AC-1880 * feat: move all property assignements back into CollectionAccessSelection init, refs AC-1880 * feat: align bad request messaging, refs AC-1880 --------- Co-authored-by: Daniel James Smith <djsmith@web.de> Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com> Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com> Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>pull/3695/head
6 changed files with 37 additions and 11 deletions
@ -1,16 +1,27 @@
@@ -1,16 +1,27 @@
|
||||
using Bit.Core.Models.Data; |
||||
using Bit.Core.Exceptions; |
||||
using Bit.Core.Models.Data; |
||||
|
||||
namespace Bit.Api.AdminConsole.Public.Models.Request; |
||||
|
||||
public class AssociationWithPermissionsRequestModel : AssociationWithPermissionsBaseModel |
||||
{ |
||||
public CollectionAccessSelection ToCollectionAccessSelection() |
||||
public CollectionAccessSelection ToCollectionAccessSelection(bool migratedToFlexibleCollections) |
||||
{ |
||||
return new CollectionAccessSelection |
||||
var collectionAccessSelection = new CollectionAccessSelection |
||||
{ |
||||
Id = Id.Value, |
||||
ReadOnly = ReadOnly.Value, |
||||
HidePasswords = HidePasswords.GetValueOrDefault() |
||||
HidePasswords = HidePasswords.GetValueOrDefault(), |
||||
Manage = Manage.GetValueOrDefault() |
||||
}; |
||||
|
||||
// Throws if the org has not migrated to use FC but has passed in a Manage value in the request |
||||
if (!migratedToFlexibleCollections && Manage.HasValue) |
||||
{ |
||||
throw new BadRequestException( |
||||
"Your organization must be using the latest collection enhancements to use the Manage property."); |
||||
} |
||||
|
||||
return collectionAccessSelection; |
||||
} |
||||
} |
||||
|
||||
Loading…
Reference in new issue