Skip to content

Commit 87402c7

Browse files
authored
Merge pull request #3293 from moodlehq/integration
Integration
2 parents 77e6fcc + 477254e commit 87402c7

File tree

19 files changed

+134
-29
lines changed

19 files changed

+134
-29
lines changed

config.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version='1.0' encoding='utf-8'?>
2-
<widget android-versionCode="40001" id="com.moodle.moodlemobile" ios-CFBundleVersion="4.0.0.1" version="4.0.0" versionCode="40001" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:cdv="http://cordova.apache.org/ns/1.0">
2+
<widget android-versionCode="40100" id="com.moodle.moodlemobile" ios-CFBundleVersion="4.0.1.0" version="4.0.1" versionCode="40100" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:cdv="http://cordova.apache.org/ns/1.0">
33
<name>Moodle</name>
44
<description>Moodle official app</description>
55
<author email="[email protected]" href="http://moodle.com">Moodle Mobile team</author>
@@ -27,7 +27,7 @@
2727
<preference name="UIWebViewBounce" value="false" />
2828
<preference name="DisallowOverscroll" value="true" />
2929
<preference name="prerendered-icon" value="true" />
30-
<preference name="AppendUserAgent" value="MoodleMobile 4.0.0 (40000)" />
30+
<preference name="AppendUserAgent" value="MoodleMobile 4.0.1 (40100)" />
3131
<preference name="BackupWebStorage" value="none" />
3232
<preference name="ScrollEnabled" value="false" />
3333
<preference name="KeyboardDisplayRequiresUserAction" value="false" />
@@ -251,7 +251,7 @@
251251
<true />
252252
</edit-config>
253253
<edit-config file="*-Info.plist" mode="merge" target="CFBundleShortVersionString">
254-
<string>4.0.0</string>
254+
<string>4.0.1</string>
255255
</edit-config>
256256
<edit-config file="*-Info.plist" mode="overwrite" target="CFBundleLocalizations">
257257
<array>

moodle.config.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"app_id": "com.moodle.moodlemobile",
33
"appname": "Moodle Mobile",
4-
"versioncode": 40000,
5-
"versionname": "4.0.0",
4+
"versioncode": 40100,
5+
"versionname": "4.0.1",
66
"cache_update_frequency_usually": 420000,
77
"cache_update_frequency_often": 1200000,
88
"cache_update_frequency_sometimes": 3600000,

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "moodlemobile",
3-
"version": "4.0.0",
3+
"version": "4.0.1",
44
"description": "The official app for Moodle.",
55
"author": {
66
"name": "Moodle Pty Ltd.",

src/addons/mod/imscp/pages/view/view.html

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,7 @@ <h1>
2828
</ion-item>
2929
</ion-card>
3030

31-
<div class="addon-mod-imscp-container">
32-
<core-iframe *ngIf="loaded" [src]="src" [showFullscreenOnToolbar]="true" [autoFullscreenOnRotate]="true"></core-iframe>
33-
</div>
31+
<core-iframe *ngIf="loaded" [src]="src" [showFullscreenOnToolbar]="true" [autoFullscreenOnRotate]="true"></core-iframe>
3432
</core-loading>
3533

3634
<core-navigation-bar collapsible-footer appearOnBottom *ngIf="loaded && navigationItems.length > 1" [items]="navigationItems"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
.addon-mod_url-embedded-url {
22
height: 100%;
3+
display: contents;
34
}

src/core/constants.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
import envJson from '@/assets/env.json';
1616
import { EnvironmentConfig } from '@/types/config';
17+
import { CoreBrowser } from '@singletons/browser';
1718

1819
/**
1920
* Context levels enumeration.
@@ -154,7 +155,8 @@ export class CoreConstants {
154155
// @todo [4.0] This is not the proper way to check for development tools, we should rely only on the BUILD variable.
155156
return this.BUILD.isDevelopment
156157
|| this.BUILD.isTesting
157-
|| this.CONFIG.versionname.includes('-dev');
158+
|| this.CONFIG.versionname.includes('-dev')
159+
|| CoreBrowser.hasDevelopmentSetting('DevTools');
158160
}
159161

160162
}

src/core/directives/external-content.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import { CoreFilepool, CoreFilepoolFileActions, CoreFilepoolFileEventData } from
2929
import { CoreSites } from '@services/sites';
3030
import { CoreUrlUtils } from '@services/utils/url';
3131
import { CoreUtils } from '@services/utils/utils';
32-
import { Platform } from '@singletons';
3332
import { CoreLogger } from '@singletons/logger';
3433
import { CoreError } from '@classes/errors/error';
3534
import { CoreSite } from '@classes/site';
@@ -304,12 +303,10 @@ export class CoreExternalContentDirective implements AfterViewInit, OnChanges, O
304303
return;
305304
}
306305

307-
const line = Platform.is('tablet') || CoreApp.isAndroid() ? 90 : 80;
308306
// Position all subtitles to a percentage of video height.
309-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
310-
Array.from(track.cues).forEach((cue: any) => {
307+
Array.from(track.cues).forEach((cue: VTTCue) => {
311308
cue.snapToLines = false;
312-
cue.line = line;
309+
cue.line = 90;
313310
cue.size = 100; // This solves some Android issue.
314311
});
315312
// Delete listener.

src/core/features/courses/pages/my/my.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import { CoreCoursesDashboard, CoreCoursesDashboardProvider } from '@features/co
2020
import { CoreMainMenuDeepLinkManager } from '@features/mainmenu/classes/deep-link-manager';
2121
import { IonRefresher } from '@ionic/angular';
2222
import { CoreSites } from '@services/sites';
23+
import { CoreDomUtils } from '@services/utils/dom';
2324
import { CoreUtils } from '@services/utils/utils';
2425
import { CoreEventObserver, CoreEvents } from '@singletons/events';
2526
import { CoreCourses } from '../../services/courses';
@@ -90,7 +91,9 @@ export class CoreCoursesMyCoursesPage implements OnInit, OnDestroy {
9091
await CoreUtils.nextTicks(2);
9192

9293
this.myOverviewBlock = this.block?.dynamicComponent?.instance as AddonBlockMyOverviewComponent;
93-
} catch {
94+
} catch (error) {
95+
CoreDomUtils.showErrorModal(error);
96+
9497
// Cannot get the blocks, just show the block if needed.
9598
this.loadFallbackBlock();
9699
}

src/core/features/courses/services/handlers/dashboard-home.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import { CoreMainMenuHomeHandler, CoreMainMenuHomeHandlerToDisplay } from '@feat
1818
import { CoreSites } from '@services/sites';
1919
import { CoreUtils } from '@services/utils/utils';
2020
import { makeSingleton } from '@singletons';
21+
import { CoreLogger } from '@singletons/logger';
2122
import { CoreCoursesDashboard } from '../dashboard';
2223

2324
/**
@@ -30,6 +31,11 @@ export class CoreDashboardHomeHandlerService implements CoreMainMenuHomeHandler
3031

3132
name = 'CoreCoursesDashboard';
3233
priority = 1200;
34+
logger: CoreLogger;
35+
36+
constructor() {
37+
this.logger = CoreLogger.getInstance('CoreDashboardHomeHandlerService');
38+
}
3339

3440
/**
3541
* Check if the handler is enabled on a site level.
@@ -59,9 +65,17 @@ export class CoreDashboardHomeHandlerService implements CoreMainMenuHomeHandler
5965
const dashboardEnabled = !dashboardDisabled && dashboardConfig !== '0';
6066

6167
if (dashboardAvailable && dashboardEnabled && !blocksDisabled) {
62-
const blocks = await CoreCoursesDashboard.getDashboardBlocks(undefined, siteId);
68+
try {
69+
const blocks = await CoreCoursesDashboard.getDashboardBlocks(undefined, siteId);
70+
71+
return CoreBlockDelegate.hasSupportedBlock(blocks.mainBlocks) ||
72+
CoreBlockDelegate.hasSupportedBlock(blocks.sideBlocks);
73+
} catch (error) {
74+
// Error getting blocks, assume it's enabled.
75+
this.logger.error('Error getting Dashboard blocks', error);
6376

64-
return CoreBlockDelegate.hasSupportedBlock(blocks.mainBlocks) || CoreBlockDelegate.hasSupportedBlock(blocks.sideBlocks);
77+
return true;
78+
}
6579
}
6680

6781
// Dashboard is enabled but not available, we will fake blocks.

0 commit comments

Comments
 (0)