MDL-57921 mod_data: Move approval code to new function

This commit is contained in:
Juan Leyva 2017-02-13 15:54:48 +01:00 committed by Eloy Lafuente (stronk7)
parent 56b8edcb1e
commit b8e0e64455
2 changed files with 18 additions and 5 deletions

View File

@ -1166,3 +1166,19 @@ function data_build_search_array($data, $paging, $searcharray, $defaults = null,
}
return [$searcharray, $search];
}
/**
* Approves or unapproves an entry.
*
* @param int $entryid the entry to approve or unapprove.
* @param bool $approve Whether to approve or unapprove (true for approve false otherwise).
* @since Moodle 3.3
*/
function data_approve_entry($entryid, $approve) {
global $DB;
$newrecord = new stdClass();
$newrecord->id = $entryid;
$newrecord->approved = $approve ? 1 : 0;
$DB->update_record('data_records', $newrecord);
}

View File

@ -387,14 +387,11 @@ if ($showactivity) {
$approvecap = has_capability('mod/data:approve', $context);
if (($approve || $disapprove) && confirm_sesskey() && $approvecap) {
$newapproved = $approve ? 1 : 0;
$newapproved = $approve ? true : false;
$recordid = $newapproved ? $approve : $disapprove;
if ($approverecord = $DB->get_record('data_records', array('id' => $recordid))) { // Need to check this is valid
if ($approverecord->dataid == $data->id) { // Must be from this database
$newrecord = new stdClass();
$newrecord->id = $approverecord->id;
$newrecord->approved = $newapproved;
$DB->update_record('data_records', $newrecord);
data_approve_entry($approverecord->id, $newapproved);
$msgkey = $newapproved ? 'recordapproved' : 'recorddisapproved';
echo $OUTPUT->notification(get_string($msgkey, 'data'), 'notifysuccess');
}