Parcourir la source

cleanup and longtext

master
Florian Eisenmenger il y a 1 an
Parent
révision
c22b627bf7
7 fichiers modifiés avec 45 ajouts et 31 suppressions
  1. +13
    -0
      matsen-tool/src/app/_helpers/api.converter.ts
  2. +1
    -1
      matsen-tool/src/app/contacts/contacts-detail/contacts-detail.component.html
  3. +1
    -0
      matsen-tool/src/app/contacts/contacts-detail/contacts-detail.component.ts
  4. +5
    -0
      matsen-tool/src/app/partners/new-partner/new-partner.component.html
  5. +13
    -29
      matsen-tool/src/app/partners/partners-detail/partners-detail.component.html
  6. +3
    -1
      matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts
  7. +9
    -0
      matsen-tool/src/assets/scss/_basics.scss

+ 13
- 0
matsen-tool/src/app/_helpers/api.converter.ts Voir le fichier

@@ -1,5 +1,11 @@
import {DomSanitizer, SafeHtml} from "@angular/platform-browser";
import {Injectable} from "@angular/core";

@Injectable({ providedIn: 'root' })
export class ApiConverter {

constructor(private sanitizer: DomSanitizer) {}

public static extractId(iri: string | undefined): string {
if (iri !== undefined) {
const iriRegex = /\/(\d+)$/;
@@ -20,4 +26,11 @@ export class ApiConverter {
}
return "";
}

public getSafeLongtext(longtext: any): SafeHtml {
if (longtext) {
return this.sanitizer.bypassSecurityTrustHtml(longtext.replace(/\n/g, '<br>'));
}
return false;
}
}

+ 1
- 1
matsen-tool/src/app/contacts/contacts-detail/contacts-detail.component.html Voir le fichier

@@ -1,5 +1,5 @@
<div class="spt-container">
<div class="card">
<div class="card contacts-detail">
<div class="card-body row pb-5">
<div class="col-8">
<h1>{{ contact.firstName }} {{ contact.lastName }}</h1>


+ 1
- 0
matsen-tool/src/app/contacts/contacts-detail/contacts-detail.component.ts Voir le fichier

@@ -12,6 +12,7 @@ import {User} from "@app/_models";
import {AccountService} from "@app/_services";
import {NewCommentComponent} from "@app/postings/new-comment/new-comment.component";
import {ApiConverter} from "@app/_helpers/api.converter";
import {constructorParametersDownlevelTransform} from "@angular/compiler-cli";

@Component({
selector: 'app-contacts-detail',


+ 5
- 0
matsen-tool/src/app/partners/new-partner/new-partner.component.html Voir le fichier

@@ -40,6 +40,11 @@
<input type="text" class="form-control" id="website" formControlName="website"/>
</div>

<div class="mb-3">
<label for="description" class="form-label">{{ 'form.description' | translate }}:</label>
<textarea class="form-control" id="description" formControlName="description" cols="50" rows="5"></textarea>
</div>

<div class="mb-3" *ngIf="partnerForm.get('logoUrl')?.value === null">
<label for="logo" class="form-label">{{ 'form.upload-image' | translate }}:</label>
<input type="file" class="form-control" id="logo" (change)="onFileSelected($event)" accept="image/*"/>


+ 13
- 29
matsen-tool/src/app/partners/partners-detail/partners-detail.component.html Voir le fichier

@@ -39,6 +39,11 @@
<span class="position-absolute bi bi-pencil p-2" data-type="user-tool" data-action="edit"
(click)="openModalEditPartner()"></span>
</div>
<div class="card-body row" *ngIf="partner.description">
<div class="col-12">
<p [innerHTML]="apiConverter.getSafeLongtext(partner.description)"></p>
</div>
</div>
</div>
</div>
<div class="spt-container">
@@ -82,31 +87,6 @@
</mat-paginator>
</div>
</div>
<div class="spt-container">
<div class="posts">
<div class="d-flex justify-content-between align-items-start">
<h2>Kunden Details</h2>
</div>
<div class="card mb-3">
<div class="card-body">
<div>
<h3>Viel Platz für Freitext</h3>
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt
ut
labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo
dolores
et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt
ut
labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo
dolores
et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit
amet.</p>
</div>
</div>
</div>
</div>
</div>
<div class="spt-container">
<div class="spt-accordion">
<div class="d-flex justify-content-between align-items-start">
@@ -154,8 +134,10 @@
<div class="d-flex justify-content-end mt-1">
<span *ngIf="task.taskNotes?.length !== 0" role="button" class="badge bg-secondary p-2 me-2"
(click)="showTaskNotes(task)">
<ng-container *ngIf="task.id && taskNotesVisibility.get(task.id)">{{ 'basic.hide-comments' | translate }}</ng-container>
<ng-container *ngIf="task.id && !taskNotesVisibility.get(task.id)">{{ 'basic.show-comments' | translate }}</ng-container>
<ng-container
*ngIf="task.id && taskNotesVisibility.get(task.id)">{{ 'basic.hide-comments' | translate }}</ng-container>
<ng-container
*ngIf="task.id && !taskNotesVisibility.get(task.id)">{{ 'basic.show-comments' | translate }}</ng-container>
</span>
<span role="button" class="badge bg-secondary p-2"
(click)="openModalNewTaskNote(task)">{{ 'basic.comment-it' | translate }}</span>
@@ -212,8 +194,10 @@
<div class="d-flex justify-content-end mt-1">
<span *ngIf="post.comments?.length !== 0" role="button" class="badge bg-secondary p-2 me-2"
(click)="showComments(post)">
<ng-container *ngIf="post.id && commentsVisibility.get(post.id)">{{ 'basic.hide-comments' | translate }}</ng-container>
<ng-container *ngIf="post.id && !commentsVisibility.get(post.id)">{{ 'basic.show-comments' | translate }}</ng-container>
<ng-container
*ngIf="post.id && commentsVisibility.get(post.id)">{{ 'basic.hide-comments' | translate }}</ng-container>
<ng-container
*ngIf="post.id && !commentsVisibility.get(post.id)">{{ 'basic.show-comments' | translate }}</ng-container>
</span>
<span role="button" class="badge bg-secondary p-2"
(click)="openModalNewComment(post)">{{ 'basic.comment-it' | translate }}</span>


+ 3
- 1
matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts Voir le fichier

@@ -87,7 +87,8 @@ export class PartnersDetailComponent implements OnInit, AfterViewInit {
private partnerFollowService: PartnerFollowService,
private contactService: ContactService,
private postService: PostService,
private taskService: TaskService
private taskService: TaskService,
protected apiConverter: ApiConverter
) {
this.id = "";
this.partnerDetailSub = new Subscription();
@@ -151,6 +152,7 @@ export class PartnersDetailComponent implements OnInit, AfterViewInit {
).subscribe(
data => {
this.partner = data;
console.log(this.partner);
}
);
}


+ 9
- 0
matsen-tool/src/assets/scss/_basics.scss Voir le fichier

@@ -34,6 +34,7 @@ img {
.importance {
display: block;
width: 50vw;
max-width: 800px;
height: 5px;
position: absolute;
right: 0;
@@ -47,4 +48,12 @@ img {
&[data-importance="high"] {
background: #bb1414;
}
}

.contacts {
img {
object-fit: cover;
height: 120px;
width: 100%;
}
}

Chargement…
Annuler
Enregistrer