private bool IsValidPerson(IInvitedPersonForCommand invitedPerson) { if (invitedPerson.Email == null && (invitedPerson.AzureOid == Guid.Empty || invitedPerson.AzureOid == null)) { return(false); } return(invitedPerson.AzureOid != Guid.Empty && invitedPerson.AzureOid != null || new EmailAddressAttribute().IsValid(invitedPerson.Email)); }
public ParticipantsForCommand( Organization organization, IInvitedExternalEmailForCommand invitedExternalEmail, IInvitedPersonForCommand invitedPerson, IInvitedFunctionalRoleForCommand invitedFunctionalRole, int sortKey) { Organization = organization; InvitedFunctionalRole = invitedFunctionalRole; InvitedPerson = invitedPerson; InvitedExternalEmail = invitedExternalEmail; SortKey = sortKey; }
private async Task <List <BuilderParticipant> > AddSigner( Invitation invitation, List <BuilderParticipant> meetingParticipants, IInvitedPersonForCommand invitedSigner, int sortKey, Organization organization) { var person = await _personApiService.GetPersonByOidWithPrivilegesAsync( _plantProvider.Plant, invitedSigner.AzureOid.ToString(), _objectName, _signerPrivileges); if (person != null) { invitation.AddParticipant(new Participant( _plantProvider.Plant, organization, IpoParticipantType.Person, null, person.FirstName, person.LastName, person.UserName, person.Email, new Guid(person.AzureOid), sortKey)); meetingParticipants = InvitationHelper.AddPersonToOutlookParticipantList(person, meetingParticipants); } else { throw new IpoValidationException( $"Person does not have required privileges to be the {organization} participant."); } return(meetingParticipants); }