Sets the TabTitle

Motions, users and elections reset the title of a tab in their detail-view.
This commit is contained in:
GabrielMeyer 2019-06-04 12:04:02 +02:00 committed by Emanuel Schütze
parent ea1c3437b6
commit 23fe9f1a94
6 changed files with 20 additions and 3 deletions

View File

@ -168,6 +168,7 @@ export class TopicDetailComponent extends BaseViewComponent {
this.newTopic = true; this.newTopic = true;
this.editTopic = true; this.editTopic = true;
this.topic = new ViewTopic(new Topic()); this.topic = new ViewTopic(new Topic());
super.setTitle('New topic');
} else { } else {
// load existing topic // load existing topic
this.route.params.subscribe(params => { this.route.params.subscribe(params => {
@ -186,6 +187,8 @@ export class TopicDetailComponent extends BaseViewComponent {
// repo sometimes delivers undefined values // repo sometimes delivers undefined values
// also ensures edition cannot be interrupted by autoupdate // also ensures edition cannot be interrupted by autoupdate
if (newViewTopic && !this.editTopic) { if (newViewTopic && !this.editTopic) {
const title = newViewTopic.getTitle();
super.setTitle(title);
this.topic = newViewTopic; this.topic = newViewTopic;
// personalInfoForm is undefined during 'new' and directly after reloading // personalInfoForm is undefined during 'new' and directly after reloading
if (this.topicForm && !this.editTopic) { if (this.topicForm && !this.editTopic) {

View File

@ -366,6 +366,8 @@ export class AssignmentDetailComponent extends BaseViewComponent implements OnIn
this.subscriptions.push( this.subscriptions.push(
this.repo.getViewModelObservable(assignmentId).subscribe(assignment => { this.repo.getViewModelObservable(assignmentId).subscribe(assignment => {
if (assignment) { if (assignment) {
const title = assignment.getTitle();
super.setTitle(title);
this.assignment = assignment; this.assignment = assignment;
if (!this.editAssignment) { if (!this.editAssignment) {
this.patchForm(this.assignment); this.patchForm(this.assignment);
@ -382,6 +384,7 @@ export class AssignmentDetailComponent extends BaseViewComponent implements OnIn
}) })
); );
} else { } else {
super.setTitle('New election');
this.newAssignment = true; this.newAssignment = true;
// TODO set defaults? // TODO set defaults?
this.assignment = new ViewAssignment(new Assignment(), [], []); this.assignment = new ViewAssignment(new Assignment(), [], []);

View File

@ -100,7 +100,7 @@ export class CategoryListComponent extends BaseViewComponent implements OnInit {
* Sets the title and gets/observes categories from DataStore * Sets the title and gets/observes categories from DataStore
*/ */
public ngOnInit(): void { public ngOnInit(): void {
super.setTitle('Category'); super.setTitle('Categories');
this.repo.getViewModelListObservable().subscribe(newViewCategories => { this.repo.getViewModelListObservable().subscribe(newViewCategories => {
this.categories = newViewCategories; this.categories = newViewCategories;
}); });

View File

@ -609,6 +609,8 @@ export class MotionDetailComponent extends BaseViewComponent implements OnInit,
this.subscriptions.push( this.subscriptions.push(
this.repo.getViewModelObservable(motionId).subscribe(motion => { this.repo.getViewModelObservable(motionId).subscribe(motion => {
if (motion) { if (motion) {
const title = motion.getTitle();
super.setTitle(title);
this.motion = motion; this.motion = motion;
this.newStateExtension = this.motion.stateExtension; this.newStateExtension = this.motion.stateExtension;
if (!this.editMotion) { if (!this.editMotion) {
@ -630,6 +632,7 @@ export class MotionDetailComponent extends BaseViewComponent implements OnInit,
}) })
); );
} else { } else {
super.setTitle('New motion');
// new motion // new motion
this.newMotion = true; this.newMotion = true;
this.editMotion = true; this.editMotion = true;

View File

@ -88,10 +88,15 @@ export class ProjectorDetailComponent extends BaseViewComponent implements OnIni
* Gets the projector and subscribes to it. * Gets the projector and subscribes to it.
*/ */
public ngOnInit(): void { public ngOnInit(): void {
super.setTitle('Projector');
this.route.params.subscribe(params => { this.route.params.subscribe(params => {
const projectorId = parseInt(params.id, 10) || 1; const projectorId = parseInt(params.id, 10) || 1;
this.repo.getViewModelObservable(projectorId).subscribe(projector => (this.projector = projector)); this.repo.getViewModelObservable(projectorId).subscribe(projector => {
if (projector) {
const title = projector.name;
super.setTitle(title);
this.projector = projector;
}
});
}); });
} }

View File

@ -121,6 +121,7 @@ export class UserDetailComponent extends BaseViewComponent implements OnInit {
}); });
this.user = new ViewUser(new User(defaultUser)); this.user = new ViewUser(new User(defaultUser));
if (route.snapshot.url[0] && route.snapshot.url[0].path === 'new') { if (route.snapshot.url[0] && route.snapshot.url[0].path === 'new') {
super.setTitle('New participant');
this.newUser = true; this.newUser = true;
this.setEditMode(true); this.setEditMode(true);
} else { } else {
@ -214,6 +215,8 @@ export class UserDetailComponent extends BaseViewComponent implements OnInit {
// repo sometimes delivers undefined values // repo sometimes delivers undefined values
// also ensures edition cannot be interrupted by autoupdate // also ensures edition cannot be interrupted by autoupdate
if (newViewUser && !this.editUser) { if (newViewUser && !this.editUser) {
const title = newViewUser.getTitle();
super.setTitle(title);
this.user = newViewUser; this.user = newViewUser;
// personalInfoForm is undefined during 'new' and directly after reloading // personalInfoForm is undefined during 'new' and directly after reloading
if (this.personalInfoForm) { if (this.personalInfoForm) {