Skip to content

Commit b49590b

Browse files
committed
MOBILE-1460 resource: Force resource to open html files always in iframe
1 parent b9e3d99 commit b49590b

File tree

4 files changed

+14
-58
lines changed

4 files changed

+14
-58
lines changed

www/addons/mod_resource/controllers/index.js

Lines changed: 1 addition & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,14 @@ angular.module('mm.addons.mod_resource')
2121
* @ngdoc controller
2222
* @name mmaModResourceIndexCtrl
2323
*/
24-
.controller('mmaModResourceIndexCtrl', function($scope, $stateParams, $mmUtil, $mmaModResource, $log, $mmApp, $mmCourse, $timeout,
25-
mmaModResourceComponent) {
24+
.controller('mmaModResourceIndexCtrl', function($scope, $stateParams, $mmUtil, $mmaModResource, $log, $mmApp, $mmCourse, $timeout) {
2625
$log = $log.getInstance('mmaModResourceIndexCtrl');
2726

2827
var module = $stateParams.module || {},
2928
courseid = $stateParams.courseid;
3029

3130
$scope.title = module.name;
3231
$scope.description = module.description;
33-
$scope.component = mmaModResourceComponent;
34-
$scope.componentId = module.id;
3532
$scope.externalUrl = module.url;
3633
$scope.mode = false;
3734
$scope.loaded = false;
@@ -59,29 +56,6 @@ angular.module('mm.addons.mod_resource')
5956
$mmaModResource.logView(module.instance).then(function() {
6057
$mmCourse.checkModuleCompletion(courseid, module.completionstatus);
6158
});
62-
if (downloadFailed && $mmApp.isOnline()) {
63-
// We could load the main file but the download failed. Show error message.
64-
$mmUtil.showErrorModal('mm.core.errordownloadingsomefiles', true);
65-
}
66-
}).catch(function() {
67-
$mmUtil.showErrorModal('mma.mod_resource.errorwhileloadingthecontent', true);
68-
}).finally(function() {
69-
$scope.loaded = true;
70-
});
71-
});
72-
} else if ($mmaModResource.isDisplayedInline(module)) {
73-
var downloadFailed = false;
74-
return $mmaModResource.downloadAllContent(module).catch(function(err) {
75-
// Mark download as failed but go on since the main files could have been downloaded.
76-
downloadFailed = true;
77-
}).finally(function() {
78-
$mmaModResource.getResourceHtml(module.contents, module.id).then(function(content) {
79-
$scope.mode = 'inline';
80-
$scope.content = content;
81-
$mmaModResource.logView(module.instance).then(function() {
82-
$mmCourse.checkModuleCompletion(courseid, module.completionstatus);
83-
});
84-
8559
if (downloadFailed && $mmApp.isOnline()) {
8660
// We could load the main file but the download failed. Show error message.
8761
$mmUtil.showErrorModal('mm.core.errordownloadingsomefiles', true);
@@ -119,18 +93,6 @@ angular.module('mm.addons.mod_resource')
11993
}
12094
}
12195

122-
// Event sent by the directive mmaModResourceHtmlLink when we click an HTML link.
123-
$scope.$on('mmaModResourceHtmlLinkClicked', function(e, target) {
124-
$scope.loaded = false;
125-
$mmaModResource.getResourceHtml(module.contents, module.id, target).then(function(content) {
126-
$scope.content = content;
127-
}).catch(function() {
128-
$mmUtil.showErrorModal('mma.mod_resource.errorwhileloadingthecontent', true);
129-
}).finally(function() {
130-
$scope.loaded = true;
131-
});
132-
});
133-
13496
$scope.doRefresh = function() {
13597
$mmaModResource.invalidateContent(module.id).then(function() {
13698
return fetchContent();

www/addons/mod_resource/directives/html_link.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ angular.module('mm.addons.mod_resource')
2020
* @module mm.addons.mod_resource
2121
* @ngdoc directive
2222
* @name mmaModResourceHtmlLink
23+
*
24+
* @deprecated since version 2.10
25+
* This function was used to show resources inline
2326
*/
2427
.directive('mmaModResourceHtmlLink', function() {
2528
return {

www/addons/mod_resource/services/resource.js

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,9 @@ angular.module('mm.addons.mod_resource')
176176
* @param {Number} moduleId The module ID.
177177
* @param {String} [target] The HTML file that the user wants to open, if not defined uses the main file.
178178
* @return {Promise}
179+
*
180+
* @deprecated since version 2.10
181+
* This function was used to show resources inline
179182
*/
180183
self.getResourceHtml = function(contents, moduleId, target) {
181184
var indexUrl,
@@ -262,18 +265,12 @@ angular.module('mm.addons.mod_resource')
262265
* @return {Boolean}
263266
*/
264267
self.isDisplayedInIframe = function(module) {
265-
var inline = self.isDisplayedInline(module);
266-
267-
if (inline && $mmFS.isAvailable()) {
268-
for (var i = 0; i < module.contents.length; i++) {
269-
var ext = $mmFS.getFileExtension(module.contents[i].filename);
270-
if (ext == 'js' || ext == 'swf' || ext == 'css') {
271-
return true;
272-
}
273-
}
268+
if (!module.contents.length) {
269+
return false;
274270
}
271+
var ext = $mmFS.getFileExtension(module.contents[0].filename);
275272

276-
return false;
273+
return (ext === 'htm' || ext === 'html') && $mmFS.isAvailable();
277274
};
278275

279276
/**
@@ -284,13 +281,11 @@ angular.module('mm.addons.mod_resource')
284281
* @name $mmaModResource#isDisplayedInline
285282
* @param {Object} module The module object.
286283
* @return {Boolean}
284+
*
285+
* @deprecated since version 2.10
287286
*/
288287
self.isDisplayedInline = function(module) {
289-
if (!module.contents.length) {
290-
return false;
291-
}
292-
var ext = $mmFS.getFileExtension(module.contents[0].filename);
293-
return ext === 'htm' || ext === 'html';
288+
return self.isDisplayedInIframe(module);
294289
};
295290

296291
/**

www/addons/mod_resource/templates/index.html

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,6 @@
1212
<mm-iframe src="src"></mm-iframe>
1313
</div>
1414

15-
<div ng-if="mode == 'inline'">
16-
<mm-format-text class="mm-content-with-float" watch="true" component="{{ component }}" component-id="{{ componentId }}">{{ content }}</mm-format-text>
17-
</div>
18-
1915
<div ng-if="mode == 'external'">
2016
<a ng-click="open()" class="button button-block"><i class="icon ion-document"></i> {{ 'mma.mod_resource.openthefile' | translate }}</a>
2117
</div>

0 commit comments

Comments
 (0)