Skip to content

Commit 5525281

Browse files
committed
#19: Hide the Edit button if no eXe URL is provided
1 parent c48758d commit 5525281

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

classes/exeonline/exescorm_redirector.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@
2626

2727
namespace mod_exescorm\exeonline;
2828

29+
use coding_exception;
30+
use dml_exception;
2931
use mod_exescorm\exeonline\token_manager;
32+
use moodle_exception;
3033
use moodle_url;
3134

3235
class exescorm_redirector {
@@ -58,6 +61,9 @@ public function __construct(string $action = 'edit', moodle_url $returnto = null
5861
* @param moodle_url|null $returnto
5962
*
6063
* @return moodle_url
64+
* @throws dml_exception
65+
* @throws coding_exception
66+
* @throws moodle_exception
6167
*/
6268
public static function get_redirection_url(int $cmid, moodle_url $returnto = null, string $action = null) {
6369
global $CFG, $USER;
@@ -87,7 +93,7 @@ public static function get_redirection_url(int $cmid, moodle_url $returnto = nul
8793
}
8894
$url = $exeonlineurl . $target;
8995

90-
return new \moodle_url($url, $params);
96+
return new moodle_url($url, $params);
9197
}
9298

9399

renderer.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,14 +103,22 @@ public function user_report_actionbar(\mod_exescorm\output\userreportsactionbar
103103
* Generate the EXESCORM's "Exit activity" button
104104
*
105105
* @param string $url The url to be hooked up to the exit button
106-
* @param \stdClass $cm The course module viewed.
106+
* @param stdClass $cm The course module viewed.
107107
* @return string
108+
* @throws dml_exception
109+
* @throws coding_exception
110+
* @throws moodle_exception
108111
*/
109112
public function generate_editexitbar(string $url, \stdClass $cm): string {
110113
$context = ['returnaction' => $url];
111114
if (has_capability('moodle/course:update', context_course::instance($cm->course))) {
112115
$returnto = new moodle_url("/mod/exescorm/view.php", ['id' => $cm->id, 'forceview' => 1]);
113-
$context['editaction'] = exescorm_redirector::get_redirection_url($cm->id, $returnto)->out(false);
116+
$exeonlineurl = get_config('exescorm', 'exeonlinebaseuri');
117+
if (empty($exeonlineurl)) {
118+
$context['editaction'] = false;
119+
} else {
120+
$context['editaction'] = exescorm_redirector::get_redirection_url($cm->id, $returnto)->out(false);
121+
}
114122
}
115123
return $this->render_from_template('mod_exescorm/player_editexitbar', $context);
116124
}

0 commit comments

Comments
 (0)