function ouwiki_update_instance($ouwiki) { global $CFG; $ok = true; $ouwiki->id = $ouwiki->instance; // Set up null values $nullvalues = array('editbegin', 'editend', 'timeout'); foreach ($nullvalues as $nullvalue) { if (empty($ouwiki->{$nullvalue})) { unset($ouwiki->{$nullvalue}); $ok &= execute_sql("UPDATE {$CFG->prefix}ouwiki SET {$nullvalue}=NULL WHERE id={$ouwiki->id}", false); } } if (strlen(preg_replace('/(<.*?>)|(&.*?;)|\\s/', '', $ouwiki->summary)) == 0) { unset($ouwiki->summary); $ok &= execute_sql("UPDATE {$CFG->prefix}ouwiki SET summary=NULL WHERE id={$ouwiki->id}", false); } ouwiki_check_groups($ouwiki); // insitu editing if (class_exists('ouflags') && has_capability('local/course:revisioneditor', get_context_instance(CONTEXT_COURSE, $ouwiki->course), null, false)) { include_once $CFG->dirroot . '/local/insitu/lib.php'; return oci_mod_make_backup_and_save_instance($ouwiki); } // Update main record $ok &= update_record("ouwiki", $ouwiki); return $ok; }
function forumng_update_instance($forumng) { require_once dirname(__FILE__) . '/forum.php'; $forumng->id = $forumng->instance; $previous = get_record('forumng', 'id', $forumng->id); if (class_exists('ouflags') && has_capability('local/course:revisioneditor', get_context_instance(CONTEXT_COURSE, $forumng->course), null, false)) { global $CFG; // handle insitu editing updates include_once $CFG->dirroot . '/local/insitu/lib.php'; oci_mod_make_backup_and_save_instance($forumng); } else { if (!update_record('forumng', $forumng)) { return false; } } try { $forum = forum::get_from_id($forumng->id, forum::CLONE_DIRECT); $forum->updated($previous); } catch (Exception $e) { return false; } return true; }