Explorar el Código

cleanup and longtext

master
Florian Eisenmenger hace 1 año
padre
commit
c22b627bf7
Se han modificado 7 ficheros con 45 adiciones y 31 borrados
  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 Ver fichero

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

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


constructor(private sanitizer: DomSanitizer) {}

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

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


+ 1
- 0
matsen-tool/src/app/contacts/contacts-detail/contacts-detail.component.ts Ver fichero

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


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


+ 5
- 0
matsen-tool/src/app/partners/new-partner/new-partner.component.html Ver fichero

@@ -40,6 +40,11 @@
<input type="text" class="form-control" id="website" formControlName="website"/> <input type="text" class="form-control" id="website" formControlName="website"/>
</div> </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"> <div class="mb-3" *ngIf="partnerForm.get('logoUrl')?.value === null">
<label for="logo" class="form-label">{{ 'form.upload-image' | translate }}:</label> <label for="logo" class="form-label">{{ 'form.upload-image' | translate }}:</label>
<input type="file" class="form-control" id="logo" (change)="onFileSelected($event)" accept="image/*"/> <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 Ver fichero

@@ -39,6 +39,11 @@
<span class="position-absolute bi bi-pencil p-2" data-type="user-tool" data-action="edit" <span class="position-absolute bi bi-pencil p-2" data-type="user-tool" data-action="edit"
(click)="openModalEditPartner()"></span> (click)="openModalEditPartner()"></span>
</div> </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> </div>
<div class="spt-container"> <div class="spt-container">
@@ -82,31 +87,6 @@
</mat-paginator> </mat-paginator>
</div> </div>
</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-container">
<div class="spt-accordion"> <div class="spt-accordion">
<div class="d-flex justify-content-between align-items-start"> <div class="d-flex justify-content-between align-items-start">
@@ -154,8 +134,10 @@
<div class="d-flex justify-content-end mt-1"> <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" <span *ngIf="task.taskNotes?.length !== 0" role="button" class="badge bg-secondary p-2 me-2"
(click)="showTaskNotes(task)"> (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>
<span role="button" class="badge bg-secondary p-2" <span role="button" class="badge bg-secondary p-2"
(click)="openModalNewTaskNote(task)">{{ 'basic.comment-it' | translate }}</span> (click)="openModalNewTaskNote(task)">{{ 'basic.comment-it' | translate }}</span>
@@ -212,8 +194,10 @@
<div class="d-flex justify-content-end mt-1"> <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" <span *ngIf="post.comments?.length !== 0" role="button" class="badge bg-secondary p-2 me-2"
(click)="showComments(post)"> (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>
<span role="button" class="badge bg-secondary p-2" <span role="button" class="badge bg-secondary p-2"
(click)="openModalNewComment(post)">{{ 'basic.comment-it' | translate }}</span> (click)="openModalNewComment(post)">{{ 'basic.comment-it' | translate }}</span>


+ 3
- 1
matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts Ver fichero

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


+ 9
- 0
matsen-tool/src/assets/scss/_basics.scss Ver fichero

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

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

Cargando…
Cancelar
Guardar