+
= 3}">
{{image.title}}
![]()
@@ -33,11 +33,16 @@
'col-md-4': details.videos.length >= 3}">
{{video.title}}
- {{video.code}}
+
+
+
+
+
diff --git a/src/app/detail/detail.component.scss b/src/app/detail/detail.component.scss
index 5e764b1..a356f88 100644
--- a/src/app/detail/detail.component.scss
+++ b/src/app/detail/detail.component.scss
@@ -82,11 +82,14 @@
padding-bottom: 5px;
}
- .youtube {
+ .youtube,
+ .vimeo,
+ .embed {
position: relative;
padding-bottom: 56.25%;
- .iframe{
+ iframe,
+ .iframe {
position: absolute;
top: 0;
left: 0;
diff --git a/src/app/detail/detail.component.ts b/src/app/detail/detail.component.ts
index 1d191d6..78ea622 100644
--- a/src/app/detail/detail.component.ts
+++ b/src/app/detail/detail.component.ts
@@ -1,4 +1,4 @@
-import { Component, OnInit, ViewChild } from '@angular/core'
+import { Component, OnInit, ViewChild, ViewEncapsulation} from '@angular/core'
import { Router, NavigationEnd, NavigationStart, ActivatedRoute } from '@angular/router'
import { DomSanitizer } from '@angular/platform-browser'
import { Location } from '@angular/common'
@@ -9,7 +9,8 @@ import { environment } from '../../environments/environment'
@Component({
selector: 'app-detail',
templateUrl: './detail.component.html',
- styleUrls: ['./detail.component.scss']
+ styleUrls: ['./detail.component.scss'],
+ encapsulation: ViewEncapsulation.None,
})
export class DetailComponent implements OnInit {
@@ -45,6 +46,7 @@ export class DetailComponent implements OnInit {
}
showDetails(section, id): void {
+ this.galleryImages = []
this.apisService.getDetails(section, id).toPromise().then((response) => {
if(this.history[this.history.length - 1] != `/detail/${section}/${id}`) {
this.history.push(`/detail/${section}/${id}`)
@@ -54,17 +56,30 @@ export class DetailComponent implements OnInit {
detail.videos = detail.videos ? JSON.parse(detail.videos) : []
detail.videos.forEach((e) => {
e.code = e.url.split('/').pop()
- e.embed = this.sanitizer.bypassSecurityTrustResourceUrl(`https://www.youtube.com/embed/${e.code}`)
+ switch(e.type) {
+ case 'youtube':
+ e.embed = this.sanitizer.bypassSecurityTrustResourceUrl(`https://www.youtube.com/embed/${e.code}`)
+ break
+ case 'vimeo':
+ e.embed = this.sanitizer.bypassSecurityTrustResourceUrl(`https://player.vimeo.com/video/${e.code}`)
+ break
+ case 'embed':
+ e.embed = this.sanitizer.bypassSecurityTrustHtml(e.url)
+ break
+ }
})
+
detail.gallery = detail.gallery ? JSON.parse(detail.gallery) : []
detail.gallery.forEach((e) => {
- this.galleryImages.push({
- url: e.url,
- altText: e.title,
- title: e.title,
- thumbnailUrl: e.url
- })
+ if(!e.main) {
+ this.galleryImages.push({
+ url: `${e.url}`,
+ altText: e.title,
+ title: e.title,
+ thumbnailUrl: `${this.basePath}${e.url}`
+ })
+ }
})
this.details = detail
diff --git a/src/app/portfolio/portfolio.component.html b/src/app/portfolio/portfolio.component.html
index 094f09d..d53692f 100644
--- a/src/app/portfolio/portfolio.component.html
+++ b/src/app/portfolio/portfolio.component.html
@@ -3,7 +3,7 @@
-

+
{{item.title}}
{{item.type}}
diff --git a/src/app/portfolio/portfolio.component.ts b/src/app/portfolio/portfolio.component.ts
index 1902028..f41877c 100644
--- a/src/app/portfolio/portfolio.component.ts
+++ b/src/app/portfolio/portfolio.component.ts
@@ -1,6 +1,7 @@
import { Component, OnInit } from '@angular/core'
import { Router, NavigationEnd } from '@angular/router'
import { ApisService } from '../services/apis.service'
+import { environment } from '../../environments/environment'
@Component({
selector: 'app-portfolio',
@@ -9,6 +10,8 @@ import { ApisService } from '../services/apis.service'
})
export class PortfolioComponent implements OnInit {
+ public basePath = `${environment.BASE_PATH}`
+
public portfolioItems: any = []
public section: string = ''