Allow adding a user from UI
continuous-integration/drone Build is passing Details

master
Dan 2023-08-01 15:48:14 -06:00
parent 06c49558c4
commit 8fd40c8dc6
5 changed files with 27 additions and 5 deletions

View File

@ -14,6 +14,7 @@
</mat-option>
</mat-autocomplete>
</mat-form-field>
<button mat-button class="m-5" type="button" (click)="addUser()">Add</button>
<br>
<mat-form-field class="w-50">
<mat-select formControlName="typeId">

View File

@ -1,8 +1,9 @@
import { Component, OnInit, Inject } from '@angular/core';
import { FormBuilder, FormGroup, Validators, FormArray } from '@angular/forms';
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material';
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef, MatDialog } from '@angular/material';
import { contributorValidator } from '../contributor-validator';
import { Transaction } from '../transaction';
import { AddUserPopupComponent } from '../../popups/add-user-popup/add-user-popup.component';
export interface ValDisplay {
value: number;
@ -41,7 +42,7 @@ export class AddTransactionPopupComponent implements OnInit {
funds: ValDisplay[];
types: ValDisplay[];
constructor(private formBuilder: FormBuilder, @Inject(MAT_DIALOG_DATA) public data: DialogData, private dialogRef:MatDialogRef<AddTransactionPopupComponent>) {
constructor(private dialogService: MatDialog, private formBuilder: FormBuilder, @Inject(MAT_DIALOG_DATA) public data: DialogData, private dialogRef:MatDialogRef<AddTransactionPopupComponent>) {
this.contributors = this.data.contributors || [];
this.funds = this.data.funds || [];
this.types = this.data.types || [];
@ -101,4 +102,19 @@ export class AddTransactionPopupComponent implements OnInit {
this.dialogRef.close();
}
addUser() {
const ref = this.dialogService.open(AddUserPopupComponent);
ref.afterClosed().subscribe((res: any) => {
if (res && res.id > 0) {
this.contributors.push({ value: res.id, display: res.lastName + ' ' + res.firstName });
let contrib = this.contributors.find(c => c.value === res.id);
this.form.get("contributor").setValue(contrib);
}
});
}
}

View File

@ -1,3 +1,7 @@
.full-width {
width: 100%;
}
.m-5 {
margin: 5px;
}

View File

@ -31,7 +31,7 @@
{{error}}
</p>
</div>
<button mat-raised-button class="first" (click)="cancel($event)" >Cancel</button><!--
--><button mat-raised-button type="submit" [disabled]="!addUserForm.form.valid || addUserButtonDisabled">{{ addUserButtonText }}</button>
<button mat-raised-button class="first m-5" (click)="cancel($event)" >Cancel</button><!--
--><button mat-raised-button class="m-5" type="submit" [disabled]="!addUserForm.form.valid || addUserButtonDisabled">{{ addUserButtonText }}</button>
</form>
</div>

View File

@ -98,7 +98,8 @@ exports.createUser = async function(firstName, lastName, street, city, state, zi
Country: country,
EmailVerified: false,
Federated: false,
FederationCode: hash.createVerificationCode()
FederationCode: hash.createVerificationCode(),
Password: ''
};
const newUserResult = await connectionAsync.nonQuery('INSERT INTO Users Set ?', newUser);
return await this.getUser2(tempUserName);