project.component.ts 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. import { Component, Input, inject } from '@angular/core';
  2. import { ProjectsService } from '../../services/projects.service';
  3. import { AsyncPipe, CurrencyPipe, DatePipe, NgFor, NgIf } from '@angular/common';
  4. import { ActivatedRoute } from '@angular/router';
  5. import { map } from 'rxjs/operators';
  6. import { Observable } from 'rxjs';
  7. import { Project } from '../../models/project';
  8. declare function showImage(element: any): any;
  9. declare function nextImage(): any;
  10. declare function prevImage(): any;
  11. declare function closeImage(): any;
  12. declare var curImage: number;
  13. declare var totalImages: number;
  14. @Component({
  15. selector: 'app-project',
  16. standalone: true,
  17. imports: [AsyncPipe, DatePipe, CurrencyPipe, NgIf, NgFor],
  18. templateUrl: './project.component.html',
  19. styleUrl: './project.component.css'
  20. })
  21. export class ProjectComponent {
  22. /*@Input() projectId: string = '';
  23. private projectsService = inject(ProjectsService);
  24. public projectObs$! : Observable<Project>;
  25. private activatedRouter = inject(ActivatedRoute);*/
  26. title = 'project';
  27. projectObs$!: Observable<Project>;
  28. errorMessage!: string;
  29. private activatedRouter = inject(ActivatedRoute);
  30. constructor(private projects_service: ProjectsService) {}
  31. /*ngOnInit(){
  32. this.activatedRouter.params.pipe(map((p)=> p['projectId'])).subscribe((id)=>{
  33. //this.projectObs$ = this.projectsService.fetchProjectById(id);
  34. })
  35. }*/
  36. ngOnInit() {
  37. this.activatedRouter.params.pipe(map((p)=> p['projectId'])).subscribe((id)=>{
  38. this.projectObs$! = this.projects_service.getProject(id);
  39. });
  40. }
  41. /**
  42. * Current image ID for the image viewer.
  43. */
  44. //let curImage = 0;
  45. /**
  46. * Shows an image in the image viewer.
  47. *
  48. * Loads the image and text from the image preview.
  49. *
  50. * @param element The clicked img element.
  51. */
  52. /* showImage(element: any): any{
  53. var curImage: number = Number(element.id.substring(4));
  54. document.getElementById('image_viewer_cover')!.style.display = 'block';
  55. document.getElementById('image_viewer_cover')!.style.opacity = '1';
  56. //loadImage(element);
  57. document.getElementById('image_viewer')!.style.display = 'block';
  58. }*/
  59. /**
  60. * Closes the image viewew.
  61. */
  62. /*function closeImage(){
  63. document.getElementById('image_viewer_cover').style.display = 'none';
  64. document.getElementById('image_viewer_cover').style.opacity = '0';
  65. document.getElementById('image_viewer').style.display = 'none';
  66. }*/
  67. /**
  68. * Shows the next image in the image viewer.
  69. */
  70. /*function nextImage(){
  71. curImage = curImage + 1;
  72. if (curImage > maxImages) curImage = 0;
  73. loadImage(document.getElementById('img_' + curImage));
  74. }*/
  75. /**
  76. * Shows the previous image in the image viewer.
  77. */
  78. /*function prevImage(){
  79. curImage = curImage - 1;
  80. if (curImage < 0) curImage = maxImages;
  81. loadImage(document.getElementById('img_' + curImage));
  82. }*/
  83. /**
  84. * Shows an image in the image viewer.
  85. *
  86. * Dont call manually, use {@see showImage} instead.
  87. *
  88. * @param element The clicked img element.
  89. */
  90. /*function loadImage(element){
  91. document.getElementById('image_viewer_title').innerHTML = element.title;
  92. document.getElementById('image_viewer_image').src = element.src;
  93. document.getElementById('image_viewer_image').srcset = element.srcset;
  94. document.getElementById('image_viewer_image').alt = element.alt;
  95. document.getElementById('image_viewer_image').title = element.title;
  96. }*/
  97. }