Skip to content

Commit 5e9e9e7

Browse files
authored
Merge pull request #2425 from dpalou/MOBILE-3401
Mobile 3401
2 parents 8564577 + e607707 commit 5e9e9e7

File tree

6 files changed

+78
-96
lines changed

6 files changed

+78
-96
lines changed

config.xml

Lines changed: 62 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -64,56 +64,50 @@
6464
<config-file parent="/manifest/application" target="AndroidManifest.xml">
6565
<meta-data android:name="firebase_analytics_collection_deactivated" android:value="true" />
6666
</config-file>
67-
<config-file target="res/xml/config.xml" parent="/*">
68-
<feature name="IntentShim" >
69-
<param name="android-package" value="com.darryncampbell.cordova.plugin.intent.IntentShim"/>
70-
<param name="onload" value="true"/>
67+
<config-file parent="/*" target="res/xml/config.xml">
68+
<feature name="IntentShim">
69+
<param name="android-package" value="com.darryncampbell.cordova.plugin.intent.IntentShim" />
70+
<param name="onload" value="true" />
7171
</feature>
7272
</config-file>
73-
<config-file target="AndroidManifest.xml" platform="android" parent="/manifest/application" mode="merge">
74-
<provider
75-
android:name="com.darryncampbell.cordova.plugin.intent.CordovaPluginIntentFileProvider"
76-
android:authorities="${applicationId}.darryncampbell.cordova.plugin.intent.fileprovider"
77-
android:exported="false"
78-
android:grantUriPermissions="true">
79-
<meta-data
80-
android:name="android.support.FILE_PROVIDER_PATHS"
81-
android:resource="@xml/provider_paths"/>
73+
<config-file mode="merge" parent="/manifest/application" platform="android" target="AndroidManifest.xml">
74+
<provider android:authorities="${applicationId}.darryncampbell.cordova.plugin.intent.fileprovider" android:exported="false" android:grantUriPermissions="true" android:name="com.darryncampbell.cordova.plugin.intent.CordovaPluginIntentFileProvider">
75+
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths" />
8276
</provider>
8377
</config-file>
84-
<config-file target="res/xml/config.xml" parent="/*">
78+
<config-file parent="/*" target="res/xml/config.xml">
8579
<feature name="Clipboard">
8680
<param name="android-package" value="com.verso.cordova.clipboard.Clipboard" />
8781
</feature>
8882
</config-file>
89-
<config-file target="res/xml/config.xml" parent="/*">
83+
<config-file parent="/*" target="res/xml/config.xml">
9084
<feature name="CordovaHttpPlugin">
91-
<param name="android-package" value="com.silkimen.cordovahttp.CordovaHttpPlugin"/>
85+
<param name="android-package" value="com.silkimen.cordovahttp.CordovaHttpPlugin" />
9286
</feature>
9387
</config-file>
94-
<config-file target="res/xml/config.xml" parent="/*">
88+
<config-file parent="/*" target="res/xml/config.xml">
9589
<feature name="Camera">
96-
<param name="android-package" value="org.apache.cordova.camera.CameraLauncher"/>
90+
<param name="android-package" value="org.apache.cordova.camera.CameraLauncher" />
9791
</feature>
9892
</config-file>
99-
<config-file target="res/xml/config.xml" parent="/*">
93+
<config-file parent="/*" target="res/xml/config.xml">
10094
<feature name="LaunchMyApp">
101-
<param name="android-package" value="nl.xservices.plugins.LaunchMyApp"/>
95+
<param name="android-package" value="nl.xservices.plugins.LaunchMyApp" />
10296
</feature>
10397
</config-file>
104-
<config-file target="res/xml/config.xml" parent="/*">
105-
<feature name="Device" >
106-
<param name="android-package" value="org.apache.cordova.device.Device"/>
98+
<config-file parent="/*" target="res/xml/config.xml">
99+
<feature name="Device">
100+
<param name="android-package" value="org.apache.cordova.device.Device" />
107101
</feature>
108102
</config-file>
109-
<config-file target="res/xml/config.xml" parent="/*">
110-
<feature name="File" >
111-
<param name="android-package" value="org.apache.cordova.file.FileUtils"/>
103+
<config-file parent="/*" target="res/xml/config.xml">
104+
<feature name="File">
105+
<param name="android-package" value="org.apache.cordova.file.FileUtils" />
112106
<param name="onload" value="true" />
113107
</feature>
114108
<allow-navigation href="cdvfile:*" />
115109
</config-file>
116-
<config-file target="res/xml/config.xml" parent="/*">
110+
<config-file parent="/*" target="res/xml/config.xml">
117111
<feature name="FileOpener2">
118112
<param name="android-package" value="io.github.pwlin.cordova.plugins.fileopener2.FileOpener2" />
119113
</feature>
@@ -123,124 +117,105 @@
123117
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/opener_paths" />
124118
</provider>
125119
</config-file>
126-
<config-file target="res/xml/config.xml" parent="/*">
127-
<feature name="FileTransfer" >
128-
<param name="android-package" value="org.apache.cordova.filetransfer.FileTransfer"/>
120+
<config-file parent="/*" target="res/xml/config.xml">
121+
<feature name="FileTransfer">
122+
<param name="android-package" value="org.apache.cordova.filetransfer.FileTransfer" />
129123
</feature>
130124
</config-file>
131-
<config-file target="res/xml/config.xml" parent="/*">
125+
<config-file parent="/*" target="res/xml/config.xml">
132126
<feature name="Geolocation">
133127
<param name="android-package" value="org.apache.cordova.geolocation.Geolocation" />
134128
</feature>
135129
</config-file>
136-
<config-file target="res/xml/config.xml" parent="/*">
130+
<config-file parent="/*" target="res/xml/config.xml">
137131
<feature name="Globalization">
138132
<param name="android-package" value="org.apache.cordova.globalization.Globalization" />
139133
</feature>
140134
</config-file>
141-
<config-file target="res/xml/config.xml" parent="/*">
135+
<config-file parent="/*" target="res/xml/config.xml">
142136
<feature name="InAppBrowser">
143-
<param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser"/>
137+
<param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser" />
144138
</feature>
145139
</config-file>
146-
<config-file target="res/xml/config.xml" parent="/*">
140+
<config-file parent="/*" target="res/xml/config.xml">
147141
<feature name="LocalNotification">
148-
<param name="android-package" value="de.appplant.cordova.plugin.localnotification.LocalNotification"/>
142+
<param name="android-package" value="de.appplant.cordova.plugin.localnotification.LocalNotification" />
149143
</feature>
150144
</config-file>
151-
<config-file target="AndroidManifest.xml" parent="/manifest/application">
152-
<provider
153-
android:name="de.appplant.cordova.plugin.notification.util.AssetProvider"
154-
android:authorities="${applicationId}.localnotifications.provider"
155-
android:exported="false"
156-
android:grantUriPermissions="true" >
157-
<meta-data
158-
android:name="android.support.FILE_PROVIDER_PATHS"
159-
android:resource="@xml/localnotification_provider_paths"/>
145+
<config-file parent="/manifest/application" target="AndroidManifest.xml">
146+
<provider android:authorities="${applicationId}.localnotifications.provider" android:exported="false" android:grantUriPermissions="true" android:name="de.appplant.cordova.plugin.notification.util.AssetProvider">
147+
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/localnotification_provider_paths" />
160148
</provider>
161-
162-
<receiver
163-
android:name="de.appplant.cordova.plugin.localnotification.TriggerReceiver"
164-
android:exported="false" />
165-
166-
<receiver
167-
android:name="de.appplant.cordova.plugin.localnotification.ClearReceiver"
168-
android:exported="false" />
169-
170-
<service
171-
android:name="de.appplant.cordova.plugin.localnotification.ClickReceiver"
172-
android:exported="false" />
173-
174-
<receiver
175-
android:name="de.appplant.cordova.plugin.localnotification.RestoreReceiver"
176-
android:directBootAware="true"
177-
android:exported="false" >
149+
<receiver android:exported="false" android:name="de.appplant.cordova.plugin.localnotification.TriggerReceiver" />
150+
<receiver android:exported="false" android:name="de.appplant.cordova.plugin.localnotification.ClearReceiver" />
151+
<service android:exported="false" android:name="de.appplant.cordova.plugin.localnotification.ClickReceiver" />
152+
<receiver android:directBootAware="true" android:exported="false" android:name="de.appplant.cordova.plugin.localnotification.RestoreReceiver">
178153
<intent-filter>
179154
<action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
180155
<action android:name="android.intent.action.BOOT_COMPLETED" />
181156
</intent-filter>
182157
</receiver>
183158
</config-file>
184-
<config-file target="res/xml/config.xml" parent="/*">
185-
<feature name="Capture" >
186-
<param name="android-package" value="org.apache.cordova.mediacapture.Capture"/>
159+
<config-file parent="/*" target="res/xml/config.xml">
160+
<feature name="Capture">
161+
<param name="android-package" value="org.apache.cordova.mediacapture.Capture" />
187162
</feature>
188163
</config-file>
189-
<config-file target="res/xml/config.xml" parent="/*">
164+
<config-file parent="/*" target="res/xml/config.xml">
190165
<feature name="NetworkStatus">
191-
<param name="android-package" value="org.apache.cordova.networkinformation.NetworkManager"/>
166+
<param name="android-package" value="org.apache.cordova.networkinformation.NetworkManager" />
192167
</feature>
193168
</config-file>
194-
<config-file target="res/xml/config.xml" parent="/*">
169+
<config-file parent="/*" target="res/xml/config.xml">
195170
<feature name="QRScanner">
196-
<param name="android-package" value="com.bitpay.cordova.qrscanner.QRScanner"/>
171+
<param name="android-package" value="com.bitpay.cordova.qrscanner.QRScanner" />
197172
</feature>
198173
</config-file>
199-
<config-file target="res/xml/config.xml" parent="/*">
174+
<config-file parent="/*" target="res/xml/config.xml">
200175
<feature name="CDVOrientation">
201176
<param name="android-package" value="cordova.plugins.screenorientation.CDVOrientation" />
202177
</feature>
203178
</config-file>
204-
<config-file target="res/xml/config.xml" parent="/*">
179+
<config-file parent="/*" target="res/xml/config.xml">
205180
<feature name="SplashScreen">
206-
<param name="android-package" value="org.apache.cordova.splashscreen.SplashScreen"/>
207-
<param name="onload" value="true"/>
181+
<param name="android-package" value="org.apache.cordova.splashscreen.SplashScreen" />
182+
<param name="onload" value="true" />
208183
</feature>
209184
</config-file>
210-
<config-file target="res/xml/config.xml" parent="/*">
185+
<config-file parent="/*" target="res/xml/config.xml">
211186
<feature name="StatusBar">
212187
<param name="android-package" value="org.apache.cordova.statusbar.StatusBar" />
213188
<param name="onload" value="true" />
214189
</feature>
215190
</config-file>
216-
<config-file target="res/xml/config.xml" parent="/*">
217-
<feature name="Whitelist" >
218-
<param name="android-package" value="org.apache.cordova.whitelist.WhitelistPlugin"/>
191+
<config-file parent="/*" target="res/xml/config.xml">
192+
<feature name="Whitelist">
193+
<param name="android-package" value="org.apache.cordova.whitelist.WhitelistPlugin" />
219194
<param name="onload" value="true" />
220195
</feature>
221196
</config-file>
222-
<config-file target="res/xml/config.xml" parent="/*">
197+
<config-file parent="/*" target="res/xml/config.xml">
223198
<feature name="SQLitePlugin">
224-
<param name="android-package" value="io.sqlc.SQLitePlugin"/>
199+
<param name="android-package" value="io.sqlc.SQLitePlugin" />
225200
</feature>
226201
</config-file>
227-
<config-file target="res/xml/config.xml" parent="/*">
202+
<config-file parent="/*" target="res/xml/config.xml">
228203
<feature name="PushNotification">
229-
<param name="android-package" value="com.adobe.phonegap.push.PushPlugin"/>
204+
<param name="android-package" value="com.adobe.phonegap.push.PushPlugin" />
230205
</feature>
231206
</config-file>
232-
<config-file target="AndroidManifest.xml" parent="/manifest/application">
233-
<activity android:name="com.adobe.phonegap.push.PushHandlerActivity" android:exported="true" android:permission="${applicationId}.permission.PushHandlerActivity"/>
234-
<receiver android:name="com.adobe.phonegap.push.BackgroundActionButtonHandler"/>
235-
<receiver android:name="com.adobe.phonegap.push.PushDismissedHandler"/>
207+
<config-file parent="/manifest/application" target="AndroidManifest.xml">
208+
<activity android:exported="true" android:name="com.adobe.phonegap.push.PushHandlerActivity" android:permission="${applicationId}.permission.PushHandlerActivity" />
209+
<receiver android:name="com.adobe.phonegap.push.BackgroundActionButtonHandler" />
210+
<receiver android:name="com.adobe.phonegap.push.PushDismissedHandler" />
236211
<service android:name="com.adobe.phonegap.push.FCMService">
237212
<intent-filter>
238-
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
213+
<action android:name="com.google.firebase.MESSAGING_EVENT" />
239214
</intent-filter>
240215
</service>
241216
<service android:name="com.adobe.phonegap.push.PushInstanceIDListenerService">
242217
<intent-filter>
243-
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
218+
<action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
244219
</intent-filter>
245220
</service>
246221
</config-file>

scripts/langindex.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1046,6 +1046,7 @@
10461046
"addon.notifications.playsound": "local_moodlemobileapp",
10471047
"addon.notifications.therearentnotificationsyet": "local_moodlemobileapp",
10481048
"addon.storagemanager.deletecourse": "local_moodlemobileapp",
1049+
"addon.storagemanager.deletecourses": "local_moodlemobileapp",
10491050
"addon.storagemanager.deletedatafrom": "local_moodlemobileapp",
10501051
"addon.storagemanager.info": "local_moodlemobileapp",
10511052
"addon.storagemanager.managestorage": "local_moodlemobileapp",
@@ -1650,6 +1651,7 @@
16501651
"core.h5p.editor": "h5p",
16511652
"core.h5p.embed": "h5p",
16521653
"core.h5p.embedtitle": "h5p",
1654+
"core.h5p.errorgetemail": "local_moodlemobileapp",
16531655
"core.h5p.fullscreen": "h5p",
16541656
"core.h5p.gpl": "h5p",
16551657
"core.h5p.h5ptitle": "h5p",
@@ -1750,6 +1752,8 @@
17501752
"core.login.errorupdatesite": "local_moodlemobileapp",
17511753
"core.login.faqcannotconnectanswer": "local_moodlemobileapp",
17521754
"core.login.faqcannotconnectquestion": "local_moodlemobileapp",
1755+
"core.login.faqcannotfindmysiteanswer": "local_moodlemobileapp",
1756+
"core.login.faqcannotfindmysitequestion": "local_moodlemobileapp",
17531757
"core.login.faqsetupsiteanswer": "local_moodlemobileapp",
17541758
"core.login.faqsetupsitelinktitle": "local_moodlemobileapp",
17551759
"core.login.faqsetupsitequestion": "local_moodlemobileapp",

src/assets/lang/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1651,6 +1651,7 @@
16511651
"core.h5p.editor": "Editor",
16521652
"core.h5p.embed": "Embed",
16531653
"core.h5p.embedtitle": "View the embed code for this content.",
1654+
"core.h5p.errorgetemail": "Error obtaining the user email. Please check your connection and try again.",
16541655
"core.h5p.fullscreen": "Fullscreen",
16551656
"core.h5p.gpl": "General Public License v3",
16561657
"core.h5p.h5ptitle": "Visit h5p.org to check out more content.",

src/core/fileuploader/providers/helper.ts

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -84,20 +84,16 @@ export class CoreFileUploaderHelperProvider {
8484
return Promise.reject(error);
8585
}
8686

87+
const options = this.fileUploaderProvider.getFileUploadOptions(result.uri, result.name, result.mediaType, true);
88+
8789
if (upload) {
8890
const size = await this.fileProvider.getExternalFileSize(result.uri);
8991

9092
await this.confirmUploadFile(size, false, allowOffline);
9193

92-
const options = this.fileUploaderProvider.getFileUploadOptions(result.uri, result.name, result.mediaType, true);
93-
9494
return this.uploadFile(result.uri, maxSize, true, options);
9595
} else {
96-
const entry = await this.fileProvider.getExternalFile(result.uri);
97-
98-
entry.name = result.name; // In Android sometimes the file is exported with a different name, use the original one.
99-
100-
return entry;
96+
return this.copyToTmpFolder(result.uri, false, maxSize, undefined, options);
10197
}
10298
}
10399

src/core/h5p/classes/helper.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import { CoreUser } from '@core/user/providers/user';
2121
import { CoreH5P } from '../providers/h5p';
2222
import { CoreH5PCore, CoreH5PDisplayOptions } from './core';
2323
import { FileEntry } from '@ionic-native/file';
24+
import { Translate } from '@singletons/core.singletons';
2425

2526
/**
2627
* Equivalent to Moodle's H5P helper class.
@@ -94,11 +95,15 @@ export class CoreH5PHelper {
9495
let user;
9596

9697
try {
97-
user = await CoreUser.instance.getProfile(site.getUserId(), undefined, true);
98+
user = await CoreUser.instance.getProfile(site.getUserId(), undefined, false, siteId);
9899
} catch (error) {
99100
// Ignore errors.
100101
}
101102

103+
if (!user || !user.email) {
104+
throw Translate.instance.instant('core.h5p.errorgetemail');
105+
}
106+
102107
const basePath = CoreFile.instance.getBasePathInstant();
103108
const ajaxPaths = {
104109
xAPIResult: '',
@@ -118,7 +123,7 @@ export class CoreH5PHelper {
118123
l10n: {
119124
H5P: CoreH5P.instance.h5pCore.getLocalization(),
120125
},
121-
user: {name: site.getInfo().fullname, mail: user && user.email},
126+
user: {name: site.getInfo().fullname, mail: user.email},
122127
hubIsEnabled: false,
123128
reportingIsEnabled: false,
124129
crossorigin: null,

src/core/h5p/lang/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
"editor": "Editor",
4040
"embed": "Embed",
4141
"embedtitle": "View the embed code for this content.",
42+
"errorgetemail": "Error obtaining the user email. Please check your connection and try again.",
4243
"fullscreen": "Fullscreen",
4344
"gpl": "General Public License v3",
4445
"h5ptitle": "Visit h5p.org to check out more content.",

0 commit comments

Comments
 (0)