diff --git a/config.xml b/config.xml
index ad367a677..528d663ee 100644
--- a/config.xml
+++ b/config.xml
@@ -48,6 +48,7 @@
+
diff --git a/package-lock.json b/package-lock.json
index 16767d151..68b99fc85 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -46,9 +46,9 @@
"@moodlehq/cordova-plugin-file-transfer": "1.7.1-moodle.2",
"@moodlehq/cordova-plugin-inappbrowser": "5.0.0-moodle.2",
"@moodlehq/cordova-plugin-ionic-webview": "5.0.0-moodle.1",
- "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.2",
+ "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.3",
"@moodlehq/cordova-plugin-qrscanner": "3.0.1-moodle.2",
- "@moodlehq/phonegap-plugin-push": "2.2.3-moodle.1",
+ "@moodlehq/phonegap-plugin-push": "2.0.0-moodle.2",
"@ngx-translate/core": "^13.0.0",
"@ngx-translate/http-loader": "^6.0.0",
"@types/chart.js": "^2.9.31",
@@ -93,7 +93,6 @@
"mathjax": "2.7.7",
"moment": "^2.29.0",
"nl.kingsquare.cordova.background-audio": "^1.0.1",
- "phonegap-plugin-multidex": "^1.0.0",
"rxjs": "~6.5.5",
"ts-md5": "^1.2.7",
"tslib": "^2.0.1",
@@ -119,6 +118,7 @@
"@typescript-eslint/eslint-plugin": "^4.22.0",
"@typescript-eslint/parser": "^4.22.0",
"check-es-compat": "^1.1.1",
+ "cordova-plugin-androidx-adapter": "^1.1.3",
"eslint": "^7.25.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-header": "^3.1.1",
@@ -4989,9 +4989,9 @@
}
},
"node_modules/@moodlehq/cordova-plugin-local-notification": {
- "version": "0.9.0-moodle.2",
- "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.2.tgz",
- "integrity": "sha512-enK/jcbXrnSFJt8TS2drb/5uUOpsTYbUqjI3pYgvogKdP5k5JOnT0xtW54Arlpl5RphcINx733OuXHRJAED2Ow==",
+ "version": "0.9.0-moodle.3",
+ "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.3.tgz",
+ "integrity": "sha512-dSEvshH9fE3aUG4bO05gCMqWVCnvZGUeddIfB8OShN60sj0CUWuI1e7Mn5syzTcRRNRi8XQ4MTv85zk4c8mzww==",
"engines": [
{
"name": "cordova",
@@ -5025,44 +5025,20 @@
}
},
"node_modules/@moodlehq/phonegap-plugin-push": {
- "version": "2.2.3-moodle.1",
- "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.2.3-moodle.1.tgz",
- "integrity": "sha512-LxHz0nPIvxhRgjvj8QRTdhuMtb+NNbFsaAh7JS6q9Ag0lt3LkKrGwCoMr/rTfhfCLj+mrIhyLUv/mo8oPmHeeg==",
- "dependencies": {
- "babel-plugin-add-header-comment": "^1.0.3",
- "install": "^0.8.2"
- },
+ "version": "2.0.0-moodle.2",
+ "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.0.0-moodle.2.tgz",
+ "integrity": "sha512-a1ZR36vOy0Gu0yaX2T+PODlNSQcIUuHMNzPZ/kn4I+cV+hyPwAw1LmdGQDdxfABAGKWCvtzwUyYs1T/NCz2fRQ==",
"engines": {
"cordovaDependencies": {
- "<2.0.0": {
- "cordova": ">=6.4.0",
- "cordova-android": ">=6.0.0",
- "cordova-ios": ">=4.3.0"
- },
- "<2.1.2": {
- "cordova": ">=7.1.0",
- "cordova-android": ">=6.3.0",
- "cordova-ios": ">=4.4.0"
- },
- "<2.2.0": {
- "cordova": ">=7.1.0",
- "cordova-android": ">=6.3.0",
- "cordova-ios": ">=4.5.0"
- },
- "1.8.2": {
- "cordova": ">=3.6.3",
- "cordova-android": ">=4.0.0",
- "cordova-ios": ">=4.1.0"
+ "1.0.0": {
+ "cordova": ">=10.0.0",
+ "cordova-android": ">=8.0.0",
+ "cordova-ios": ">=5.1.1"
},
"2.0.0": {
- "cordova": ">=7.0.0",
- "cordova-android": ">=6.2.1",
- "cordova-ios": ">=4.4.0"
- },
- "2.2.0": {
- "cordova": ">=7.1.0",
- "cordova-android": ">=7.1.0",
- "cordova-ios": ">=4.5.0"
+ "cordova": ">=10.0.0",
+ "cordova-android": ">=8.0.0",
+ "cordova-ios": ">=6.0.0"
}
}
}
@@ -7579,11 +7555,6 @@
"semver": "bin/semver"
}
},
- "node_modules/babel-plugin-add-header-comment": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-add-header-comment/-/babel-plugin-add-header-comment-1.0.3.tgz",
- "integrity": "sha1-URxJAQYmQNWkgLSsPt1pRBlYUOw="
- },
"node_modules/babel-plugin-dynamic-import-node": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
@@ -10787,6 +10758,16 @@
}
]
},
+ "node_modules/cordova-plugin-androidx-adapter": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-androidx-adapter/-/cordova-plugin-androidx-adapter-1.1.3.tgz",
+ "integrity": "sha512-W1SImn0cCCvOSTSfWWp5TnanIQrSuh2Bch+dcZXIzEn0km3Qb7VryeAqHhgBQYwwzC5Ollk1DtUAk/AJSojuZA==",
+ "dev": true,
+ "dependencies": {
+ "q": "^1.5.1",
+ "recursive-readdir": "^2.2.2"
+ }
+ },
"node_modules/cordova-plugin-badge": {
"version": "0.8.8",
"resolved": "https://registry.npmjs.org/cordova-plugin-badge/-/cordova-plugin-badge-0.8.8.tgz",
@@ -16809,14 +16790,6 @@
"node": ">=4"
}
},
- "node_modules/install": {
- "version": "0.8.9",
- "resolved": "https://registry.npmjs.org/install/-/install-0.8.9.tgz",
- "integrity": "sha1-n0tcDRhR74cunfheT3Fi1OXc2+0=",
- "engines": {
- "node": ">= 0.10"
- }
- },
"node_modules/internal-ip": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
@@ -22591,12 +22564,6 @@
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
},
- "node_modules/phonegap-plugin-multidex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/phonegap-plugin-multidex/-/phonegap-plugin-multidex-1.0.0.tgz",
- "integrity": "sha512-1wvc3iQOQpEBaQbXgLxA2JUiLSQ2azdF/bF29ghXDiQJWSpQ1BF8gSuqttM8WZoj081Ps8OKL0gYxdDBkFNPqA==",
- "deprecated": "This package is deprecated, see https://blog.phonegap.com/update-for-customers-using-phonegap-and-phonegap-build-cc701c77502c"
- },
"node_modules/picomatch": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
@@ -24440,6 +24407,18 @@
"node": ">= 0.10"
}
},
+ "node_modules/recursive-readdir": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz",
+ "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==",
+ "dev": true,
+ "dependencies": {
+ "minimatch": "3.0.4"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/reflect-metadata": {
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
@@ -34726,9 +34705,9 @@
"integrity": "sha512-+6UrPKsEgXl3pcuTyI1hZIUw9y22Li/nvn7nxiphgZdldlhBvkMK/7nn4IAaXYlnrmIOpCkIrU4BbrAjSJGWSQ=="
},
"@moodlehq/cordova-plugin-local-notification": {
- "version": "0.9.0-moodle.2",
- "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.2.tgz",
- "integrity": "sha512-enK/jcbXrnSFJt8TS2drb/5uUOpsTYbUqjI3pYgvogKdP5k5JOnT0xtW54Arlpl5RphcINx733OuXHRJAED2Ow=="
+ "version": "0.9.0-moodle.3",
+ "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.3.tgz",
+ "integrity": "sha512-dSEvshH9fE3aUG4bO05gCMqWVCnvZGUeddIfB8OShN60sj0CUWuI1e7Mn5syzTcRRNRi8XQ4MTv85zk4c8mzww=="
},
"@moodlehq/cordova-plugin-qrscanner": {
"version": "3.0.1-moodle.2",
@@ -34740,13 +34719,9 @@
}
},
"@moodlehq/phonegap-plugin-push": {
- "version": "2.2.3-moodle.1",
- "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.2.3-moodle.1.tgz",
- "integrity": "sha512-LxHz0nPIvxhRgjvj8QRTdhuMtb+NNbFsaAh7JS6q9Ag0lt3LkKrGwCoMr/rTfhfCLj+mrIhyLUv/mo8oPmHeeg==",
- "requires": {
- "babel-plugin-add-header-comment": "^1.0.3",
- "install": "^0.8.2"
- }
+ "version": "2.0.0-moodle.2",
+ "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.0.0-moodle.2.tgz",
+ "integrity": "sha512-a1ZR36vOy0Gu0yaX2T+PODlNSQcIUuHMNzPZ/kn4I+cV+hyPwAw1LmdGQDdxfABAGKWCvtzwUyYs1T/NCz2fRQ=="
},
"@netflix/nerror": {
"version": "1.1.3",
@@ -36699,11 +36674,6 @@
}
}
},
- "babel-plugin-add-header-comment": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-add-header-comment/-/babel-plugin-add-header-comment-1.0.3.tgz",
- "integrity": "sha1-URxJAQYmQNWkgLSsPt1pRBlYUOw="
- },
"babel-plugin-dynamic-import-node": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
@@ -39285,6 +39255,16 @@
"resolved": "https://registry.npmjs.org/cordova-plugin-advanced-http/-/cordova-plugin-advanced-http-3.1.0.tgz",
"integrity": "sha512-zlTlNJyTttE7TV5vW2WGvHqpbKMDVrr1meZU0fy4y3ObrI/hGk2UDcDNwpZdMfaytNZwDKU4sRgsTgQYdFNBew=="
},
+ "cordova-plugin-androidx-adapter": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-androidx-adapter/-/cordova-plugin-androidx-adapter-1.1.3.tgz",
+ "integrity": "sha512-W1SImn0cCCvOSTSfWWp5TnanIQrSuh2Bch+dcZXIzEn0km3Qb7VryeAqHhgBQYwwzC5Ollk1DtUAk/AJSojuZA==",
+ "dev": true,
+ "requires": {
+ "q": "^1.5.1",
+ "recursive-readdir": "^2.2.2"
+ }
+ },
"cordova-plugin-badge": {
"version": "0.8.8",
"resolved": "https://registry.npmjs.org/cordova-plugin-badge/-/cordova-plugin-badge-0.8.8.tgz",
@@ -44023,11 +44003,6 @@
}
}
},
- "install": {
- "version": "0.8.9",
- "resolved": "https://registry.npmjs.org/install/-/install-0.8.9.tgz",
- "integrity": "sha1-n0tcDRhR74cunfheT3Fi1OXc2+0="
- },
"internal-ip": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
@@ -48603,11 +48578,6 @@
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
},
- "phonegap-plugin-multidex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/phonegap-plugin-multidex/-/phonegap-plugin-multidex-1.0.0.tgz",
- "integrity": "sha512-1wvc3iQOQpEBaQbXgLxA2JUiLSQ2azdF/bF29ghXDiQJWSpQ1BF8gSuqttM8WZoj081Ps8OKL0gYxdDBkFNPqA=="
- },
"picomatch": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
@@ -50142,6 +50112,15 @@
"resolve": "^1.1.6"
}
},
+ "recursive-readdir": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz",
+ "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==",
+ "dev": true,
+ "requires": {
+ "minimatch": "3.0.4"
+ }
+ },
"reflect-metadata": {
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
diff --git a/package.json b/package.json
index 1357fd77a..061f50558 100644
--- a/package.json
+++ b/package.json
@@ -75,9 +75,9 @@
"@moodlehq/cordova-plugin-file-transfer": "1.7.1-moodle.2",
"@moodlehq/cordova-plugin-inappbrowser": "5.0.0-moodle.2",
"@moodlehq/cordova-plugin-ionic-webview": "5.0.0-moodle.1",
- "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.2",
+ "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.3",
"@moodlehq/cordova-plugin-qrscanner": "3.0.1-moodle.2",
- "@moodlehq/phonegap-plugin-push": "2.2.3-moodle.1",
+ "@moodlehq/phonegap-plugin-push": "2.0.0-moodle.2",
"@ngx-translate/core": "^13.0.0",
"@ngx-translate/http-loader": "^6.0.0",
"@types/chart.js": "^2.9.31",
@@ -122,7 +122,6 @@
"mathjax": "2.7.7",
"moment": "^2.29.0",
"nl.kingsquare.cordova.background-audio": "^1.0.1",
- "phonegap-plugin-multidex": "^1.0.0",
"rxjs": "~6.5.5",
"ts-md5": "^1.2.7",
"tslib": "^2.0.1",
@@ -148,6 +147,7 @@
"@typescript-eslint/eslint-plugin": "^4.22.0",
"@typescript-eslint/parser": "^4.22.0",
"check-es-compat": "^1.1.1",
+ "cordova-plugin-androidx-adapter": "^1.1.3",
"eslint": "^7.25.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-header": "^3.1.1",
@@ -223,8 +223,9 @@
"cordova-plugin-zip": {},
"cordova-sqlite-storage": {},
"@moodlehq/phonegap-plugin-push": {
- "ANDROID_SUPPORT_V13_VERSION": "27.+",
- "FCM_VERSION": "17.0.+"
+ "ANDROID_SUPPORT_V13_VERSION": "28.0.0",
+ "FCM_VERSION": "18.+",
+ "IOS_FIREBASE_MESSAGING_VERSION": "~> 6.32.2"
},
"com-darryncampbell-cordova-plugin-intent": {},
"nl.kingsquare.cordova.background-audio": {},
@@ -236,7 +237,8 @@
},
"cordova-plugin-globalization": {},
"@moodlehq/cordova-plugin-file-transfer": {},
- "cordova-plugin-prevent-override": {}
+ "cordova-plugin-prevent-override": {},
+ "cordova-plugin-androidx-adapter": {}
}
},
"optionalDependencies": {
diff --git a/src/core/features/pushnotifications/services/pushnotifications.ts b/src/core/features/pushnotifications/services/pushnotifications.ts
index beef5bbbb..6b02caf7e 100644
--- a/src/core/features/pushnotifications/services/pushnotifications.ts
+++ b/src/core/features/pushnotifications/services/pushnotifications.ts
@@ -454,7 +454,8 @@ export class CorePushNotificationsProvider {
( localNotif).text = [
{
message: notification.message,
- person: data.conversationtype == '2' ? data.userfromfullname : '',
+ person: data.sender ?? (data.conversationtype == '2' ? data.userfromfullname : ''),
+ personIcon: data.senderImage,
},
];
}
@@ -866,6 +867,8 @@ export type CorePushNotificationsNotificationBasicRawData = {
userfromid?: string; // ID of user sending the push. Only if it's a push generated by a Moodle message.
picture?: string; // Notification big picture. "Extra" feature.
summaryText?: string; // Notification summary text. "Extra" feature.
+ sender?: string; // Name of the user who sent the message. "Extra" feature.
+ senderImage?: string; // Image of the user who sent the message. "Extra" feature.
};
/**