Users can now be added and deleted
This commit is contained in:
parent
b502f7cfe6
commit
12e60097bd
@ -169,7 +169,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div ngbDropdown class="dropdown" [autoClose]="true">
|
<div ngbDropdown class="dropdown" [autoClose]="false">
|
||||||
<button
|
<button
|
||||||
ngbDropdownToggle
|
ngbDropdownToggle
|
||||||
class="btn btn-secondary dropdown-toggle"
|
class="btn btn-secondary dropdown-toggle"
|
||||||
@ -194,6 +194,35 @@
|
|||||||
(click)="task.assignedtoId = user.id"
|
(click)="task.assignedtoId = user.id"
|
||||||
>{{ user.name }}</option
|
>{{ user.name }}</option
|
||||||
>
|
>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<div class="card-text" for="Inhalt">Neuer User</div>
|
||||||
|
<input
|
||||||
|
#username
|
||||||
|
type="text"
|
||||||
|
id="username"
|
||||||
|
class="dropdown-item"
|
||||||
|
(change)="user.name = username.value"
|
||||||
|
placeholder="New Title..."
|
||||||
|
style="background-color: rgba(211, 211, 211, 0.342);"
|
||||||
|
/>
|
||||||
|
<button
|
||||||
|
disable-auto-close
|
||||||
|
ngbDropdownItem
|
||||||
|
class="dropdown-item"
|
||||||
|
type="button"
|
||||||
|
(click)="createUser(user)"
|
||||||
|
>
|
||||||
|
User anlegen
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
disable-auto-close
|
||||||
|
ngbDropdownItem
|
||||||
|
class="dropdown-item"
|
||||||
|
type="button"
|
||||||
|
(click)="deleteUser(task.assignedtoId)"
|
||||||
|
>
|
||||||
|
User löschen
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
|
@ -145,6 +145,21 @@ class TaskFormComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If desired a new arbitrary user (such as "Testuser") can be created, which will be stored in an array.
|
||||||
|
* The new user is available to all tasks.
|
||||||
|
* @param user ScrumUser to store in the database
|
||||||
|
*/
|
||||||
|
createUser(user: ScrumUser) {
|
||||||
|
this.backendService.postUser(user).subscribe((response) => {
|
||||||
|
if (response.status > 399) {
|
||||||
|
alert('Fehler');
|
||||||
|
} else {
|
||||||
|
this.allUser.push(response.body);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// A custom status can even be deleted if not used anymore.
|
// A custom status can even be deleted if not used anymore.
|
||||||
// This will remove the status from status-array.
|
// This will remove the status from status-array.
|
||||||
/**
|
/**
|
||||||
@ -167,6 +182,28 @@ class TaskFormComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// A custom user can even be deleted if not used anymore.
|
||||||
|
// This will remove the user from user-array.
|
||||||
|
/**
|
||||||
|
* A custom user can even be deleted if not used anymore.
|
||||||
|
* This will remove the user from user-array
|
||||||
|
* @param id the id of the chosen user
|
||||||
|
*/
|
||||||
|
deleteUser(id: number) {
|
||||||
|
var user = this.allUser.find((x) => x.id === id);
|
||||||
|
this.backendService.deleteUser(user).subscribe((response) => {
|
||||||
|
if (response.status > 399) {
|
||||||
|
alert('Fehler');
|
||||||
|
} else {
|
||||||
|
const index = this.allUser.indexOf(user);
|
||||||
|
if (index !== -1) {
|
||||||
|
this.allUser.splice(index, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.task.assignedtoId = null;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Getting the value of the priority enum to be shown in a dropdown in popup window.
|
* Getting the value of the priority enum to be shown in a dropdown in popup window.
|
||||||
*/
|
*/
|
||||||
|
@ -217,17 +217,17 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div ngbDropdown class="dropdown" [autoClose]="true">
|
<div ngbDropdown class="dropdown" [autoClose]="false">
|
||||||
<button
|
<button
|
||||||
ngbDropdownToggle
|
ngbDropdownToggle
|
||||||
class="btn btn-secondary dropdown-toggle"
|
class="btn btn-secondary dropdown-toggle"
|
||||||
type="button"
|
type="button"
|
||||||
id="dropdownMenu2"
|
id="dropdownMenu4"
|
||||||
data-toggle="dropdown"
|
data-toggle="dropdown"
|
||||||
aria-haspopup="true"
|
aria-haspopup="true"
|
||||||
aria-expanded="false"
|
aria-expanded="false"
|
||||||
>
|
>
|
||||||
Autor: {{ getAuthorById(userstory.createdbyId) }}
|
Bearbeiter: {{ getAuthorById(userstory.createdbyId) }}
|
||||||
</button>
|
</button>
|
||||||
<div
|
<div
|
||||||
ngbDropdownMenu
|
ngbDropdownMenu
|
||||||
@ -242,6 +242,35 @@
|
|||||||
(click)="userstory.createdbyId = user.id"
|
(click)="userstory.createdbyId = user.id"
|
||||||
>{{ user.name }}</option
|
>{{ user.name }}</option
|
||||||
>
|
>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<div class="card-text" for="Inhalt">Neuer User</div>
|
||||||
|
<input
|
||||||
|
#username
|
||||||
|
type="text"
|
||||||
|
id="username"
|
||||||
|
class="dropdown-item"
|
||||||
|
(change)="user.name = username.value"
|
||||||
|
placeholder="New Title..."
|
||||||
|
style="background-color: rgba(211, 211, 211, 0.342);"
|
||||||
|
/>
|
||||||
|
<button
|
||||||
|
disable-auto-close
|
||||||
|
ngbDropdownItem
|
||||||
|
class="dropdown-item"
|
||||||
|
type="button"
|
||||||
|
(click)="createUser(user)"
|
||||||
|
>
|
||||||
|
User anlegen
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
disable-auto-close
|
||||||
|
ngbDropdownItem
|
||||||
|
class="dropdown-item"
|
||||||
|
type="button"
|
||||||
|
(click)="deleteUser(task.assignedtoId)"
|
||||||
|
>
|
||||||
|
User löschen
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
|
@ -199,6 +199,21 @@ class UserstoryFormComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If desired a new arbitrary user (such as "Testuser") can be created, which will be stored in an array.
|
||||||
|
* The new user is available to all userstories.
|
||||||
|
* @param user ScrumUser to store in the database
|
||||||
|
*/
|
||||||
|
createUser(user: ScrumUser) {
|
||||||
|
this.backendService.postUser(user).subscribe((response) => {
|
||||||
|
if (response.status > 399) {
|
||||||
|
alert('Fehler');
|
||||||
|
} else {
|
||||||
|
this.allUser.push(response.body);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// A custom category can even be deleted if not used anymore.
|
// A custom category can even be deleted if not used anymore.
|
||||||
// This will remove the category from category-array.
|
// This will remove the category from category-array.
|
||||||
/**
|
/**
|
||||||
@ -221,6 +236,28 @@ class UserstoryFormComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// A custom user can even be deleted if not used anymore.
|
||||||
|
// This will remove the user from user-array.
|
||||||
|
/**
|
||||||
|
* A custom user can even be deleted if not used anymore.
|
||||||
|
* This will remove the user from user-array
|
||||||
|
* @param id the id of the chosen user
|
||||||
|
*/
|
||||||
|
deleteUser(id: number) {
|
||||||
|
var user = this.allUser.find((x) => x.id === id);
|
||||||
|
this.backendService.deleteUser(user).subscribe((response) => {
|
||||||
|
if (response.status > 399) {
|
||||||
|
alert('Fehler');
|
||||||
|
} else {
|
||||||
|
const index = this.allUser.indexOf(user);
|
||||||
|
if (index !== -1) {
|
||||||
|
this.allUser.splice(index, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.userstory.createdbyId = null;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Shows the before choosen category in the category-field in the popup window.
|
* Shows the before choosen category in the category-field in the popup window.
|
||||||
* @param id reference to the category
|
* @param id reference to the category
|
||||||
|
Loading…
x
Reference in New Issue
Block a user