Whispeak: Fix PHP fatal error BT#17892

pull/3607/head
Julio Montoya 5 years ago
parent 65f6290074
commit 0ca12004df
  1. 10
      main/mySpace/myStudents.php
  2. 8
      plugin/whispeakauth/WhispeakMyStudentsLpTrackingHook.php
  3. 7
      plugin/whispeakauth/WhispeakMyStudentsQuizTrackingHook.php

@ -1611,10 +1611,12 @@ if (empty($details)) {
echo '<th>'.get_lang('AllAttempts').'</th>';
$hookQuizTracking = HookMyStudentsQuizTracking::create();
if ($hookQuizTracking) {
if ($hookQuizTracking && !empty($header)) {
$hookHeaders = array_map(
function ($hookHeader) {
return Display::tag('th', $hookHeader['value'], $hookHeader['attrs']);
if (isset($hookHeader['value'])) {
return Display::tag('th', $hookHeader['value'], $hookHeader['attrs']);
}
},
$hookQuizTracking->notifyTrackingHeader()
);
@ -1635,7 +1637,9 @@ if (empty($details)) {
if ($hookQuizTracking) {
$hookHeaders = array_map(
function ($hookHeader) {
return strip_tags($hookHeader['value']);
if (isset($hookHeader['value'])) {
return strip_tags($hookHeader['value']);
}
},
$hookQuizTracking->notifyTrackingHeader()
);

@ -22,6 +22,10 @@ class WhispeakMyStudentsLpTrackingHook extends HookObserver implements HookMyStu
*/
public function trackingHeader(HookMyStudentsLpTrackingEventInterface $hook)
{
if (false === WhispeakAuthPlugin::create()->isEnabled()) {
return [];
}
return [
'value' => WhispeakAuthPlugin::create()->get_lang('plugin_title'),
'attrs' => ['class' => 'text-center'],
@ -35,6 +39,10 @@ class WhispeakMyStudentsLpTrackingHook extends HookObserver implements HookMyStu
*/
public function trackingContent(HookMyStudentsLpTrackingEventInterface $hook)
{
if (false === WhispeakAuthPlugin::create()->isEnabled()) {
return [];
}
$data = $hook->getEventData();
$totalCount = WhispeakAuthPlugin::countAllAttemptsInLearningPath($data['lp_id'], $data['student_id']);

@ -30,6 +30,10 @@ class WhispeakMyStudentsQuizTrackingHook extends HookObserver implements HookMyS
*/
public function trackingHeader(HookMyStudentsQuizTrackingEventInterface $hook)
{
if (false === WhispeakAuthPlugin::create()->isEnabled()) {
return [];
}
return [
'value' => WhispeakAuthPlugin::create()->get_lang('plugin_title'),
'attrs' => [
@ -53,6 +57,9 @@ class WhispeakMyStudentsQuizTrackingHook extends HookObserver implements HookMyS
*/
public function trackingContent(HookMyStudentsQuizTrackingEventInterface $hook)
{
if (false === WhispeakAuthPlugin::create()->isEnabled()) {
return [];
}
$data = $hook->getEventData();
$totalCount = WhispeakAuthPlugin::countAllAttemptsInQuiz($data['quiz_id'], $data['student_id']);

Loading…
Cancel
Save