Skip to content

Commit

Permalink
MDL-66136 assign: Verify presence of resources in online text submission
Browse files Browse the repository at this point in the history
  • Loading branch information
Mihail Geshoski committed Jul 21, 2019
1 parent 911d164 commit b7e4229
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions mod/assign/submission/onlinetext/locallib.php
Original file line number Diff line number Diff line change
Expand Up @@ -599,12 +599,17 @@ public function delete_instance() {
public function is_empty(stdClass $submission) {
$onlinetextsubmission = $this->get_onlinetext_submission($submission->id);
$wordcount = 0;
$hasinsertedresources = false;

if (isset($onlinetextsubmission->onlinetext)) {
$wordcount = count_words(trim($onlinetextsubmission->onlinetext));
// Check if the online text submission contains video, audio or image elements
// that can be ignored and stripped by count_words().
$hasinsertedresources = preg_match('/<\s*((video|audio)[^>]*>(.*?)<\s*\/\s*(video|audio)>)|(img[^>]*>(.*?))/',
trim($onlinetextsubmission->onlinetext));
}

return $wordcount == 0;
return $wordcount == 0 && !$hasinsertedresources;
}

/**
Expand All @@ -621,12 +626,17 @@ public function submission_is_empty(stdClass $data) {
return true;
}
$wordcount = 0;
$hasinsertedresources = false;

if (isset($data->onlinetext_editor['text'])) {
$wordcount = count_words(trim((string)$data->onlinetext_editor['text']));
// Check if the online text submission contains video, audio or image elements
// that can be ignored and stripped by count_words().
$hasinsertedresources = preg_match('/<\s*((video|audio)[^>]*>(.*?)<\s*\/\s*(video|audio)>)|(img[^>]*>(.*?))/',
trim((string)$data->onlinetext_editor['text']));
}

return $wordcount == 0;
return $wordcount == 0 && !$hasinsertedresources;
}

/**
Expand Down

0 comments on commit b7e4229

Please sign in to comment.