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 @@
-
-
+
+
+
+
-
\ 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
+}