/**
  * Stores the pre-defined random allocation settings for later usage
  *
  * @param bool $enabled is the scheduled allocation enabled
  * @param bool $reset reset the recent execution info
  * @param workshopplus_random_allocator_setting $settings settings form data
  * @param workshopplus_allocation_result $result logger
  */
 protected function store_settings($enabled, $reset, workshopplus_random_allocator_setting $settings, workshopplus_allocation_result $result)
 {
     global $DB;
     $data = new stdClass();
     $data->workshopplusid = $this->workshopplus->id;
     $data->enabled = $enabled;
     $data->submissionend = $this->workshopplus->submissionend;
     $data->settings = $settings->export_text();
     if ($reset) {
         $data->timeallocated = null;
         $data->resultstatus = null;
         $data->resultmessage = null;
         $data->resultlog = null;
     }
     $result->log($data->settings, 'debug');
     $current = $DB->get_record('workshopplusallocation_scheduled', array('workshopplusid' => $data->workshopplusid), '*', IGNORE_MISSING);
     if ($current === false) {
         $DB->insert_record('workshopplusallocation_scheduled', $data);
     } else {
         $data->id = $current->id;
         $DB->update_record('workshopplusallocation_scheduled', $data);
     }
 }