diff --git a/src/app/appConstants.ts b/src/app/appConstants.ts index 0b440522..ca051b06 100644 --- a/src/app/appConstants.ts +++ b/src/app/appConstants.ts @@ -205,6 +205,7 @@ export class MimeType { 'application/vnd.ekstep.html-archive' ]; public static readonly YOUTUBE = "video/x-youtube" + static LINK: string; } export const regDiksha = [{ diff --git a/src/app/pages/home/home.page.html b/src/app/pages/home/home.page.html index 849e44f7..bd0d34bf 100644 --- a/src/app/pages/home/home.page.html +++ b/src/app/pages/home/home.page.html @@ -57,8 +57,8 @@ - - + + + +
{{content.metaData.name |translate}}
@@ -76,4 +78,4 @@ --> - \ No newline at end of file + diff --git a/src/app/pages/playlist-details/playlist-details.page.html b/src/app/pages/playlist-details/playlist-details.page.html index bab66882..56a9627f 100644 --- a/src/app/pages/playlist-details/playlist-details.page.html +++ b/src/app/pages/playlist-details/playlist-details.page.html @@ -19,8 +19,10 @@ - - + + + +
diff --git a/src/app/pages/view-all/view-all.page.html b/src/app/pages/view-all/view-all.page.html index 15720ebf..10d8e418 100644 --- a/src/app/pages/view-all/view-all.page.html +++ b/src/app/pages/view-all/view-all.page.html @@ -8,7 +8,9 @@ - + + +
{{content?.metaData?.name}}
@@ -40,4 +42,4 @@
- \ No newline at end of file + diff --git a/src/app/services/api/http.capacitor.adapter.ts b/src/app/services/api/http.capacitor.adapter.ts index c71fc6e4..58ca6419 100644 --- a/src/app/services/api/http.capacitor.adapter.ts +++ b/src/app/services/api/http.capacitor.adapter.ts @@ -79,6 +79,11 @@ export class HttpCapacitorAdapter implements HttpClient { return this.invokeRequest(ApiHttpRequestType.POST, baseUrl + path, body, headers); } + isGoogleDriveLink(url: string): boolean { + return url.includes('drive.google.com') || url.includes('docs.google.com'); + } + + checkMimieType(url: any) { @@ -92,10 +97,19 @@ export class HttpCapacitorAdapter implements HttpClient { return 'video/x-youtube'; // // YouTube video } else if (mediaUrl.endsWith(".mp4")) { return 'video/mp4'; // MP4 video - } else { + } else if(this.isGoogleDriveLink(url)){ + return 'text/html'; + } + else{ return 'text/html'; } } + + getDriveFileId(url : string) { + const regex = /\/d\/([a-zA-Z0-9_-]+)\//; + const match = url.match(regex); + return match ? match[1] : null; + } private invokeRequest(type: ApiHttpRequestType, url: string, parametersOrData: any, headers: { [key: string]: string }): Observable { @@ -119,7 +133,7 @@ export class HttpCapacitorAdapter implements HttpClient { requestOptions['params'] = parametersOrData; } - this.http.request(requestOptions).then((response: HttpResponse) => { + this.http.request(requestOptions).then((response: HttpResponse) => { response.data = response.data; let receivedData = response.data; @@ -129,7 +143,9 @@ export class HttpCapacitorAdapter implements HttpClient { if (receivedData.data && receivedData.data.djp_contents !== null && receivedData.data.djp_contents !== undefined) { receivedData.data.djp_contents.forEach((item : any) => { // let mimetype = item?.url ? this.checkMimieType(item?.url) : 'text/html'; - let mimetype = this.checkMimieType(item?.url); + let url = this.isGoogleDriveLink(item?.url) ? item?.url.replace('/view', '/preview'): item?.url; + let thumbnail = item?.thumbnail != null && this.isGoogleDriveLink(item?.thumbnail) ? "" : ""; + let mimetype = this.checkMimieType(url); // Traverse through the items array of each provider const content: SearchContentMetaData = { agegroup: item.agegroup, @@ -146,11 +162,11 @@ export class HttpCapacitorAdapter implements HttpClient { provider_name: item.provider_name, name: item.name, description: item.description, - thumbnail: item.thumbnail, + thumbnail: thumbnail, domain: item.domain, unique_id: item.unique_id, language: item.language, - url: item.url, + url: url, sourceOrganisation: item.sourceorg, midea: item.midea, keywords: item.keywords, diff --git a/src/app/services/content/util/content.util.ts b/src/app/services/content/util/content.util.ts index f7c376cf..c5cef142 100644 --- a/src/app/services/content/util/content.util.ts +++ b/src/app/services/content/util/content.util.ts @@ -53,6 +53,9 @@ export class ContentUtil { case 'youtube': mimeType = MimeType.YOUTUBE break; + case 'link': + mimeType = MimeType.LINK + break; default: break; } @@ -65,8 +68,9 @@ export class ContentUtil { mp3: '/assets/images/Audio.png', mp4: '/assets/images/Video.png', webm: '/assets/images/Video.png', - pdf: '/assets/images/PDF.png' + pdf: '/assets/images/PDF.png', + link: '/assets/images/LINK.png' } return mimeTypes[mimeType]; } -} \ No newline at end of file +}