public function Fire() { $valid_settings = array('webroot', 'tracker_name'); // Load the current settings. $this->settings = Bugdar::$settings; if ($this->input->_method == 'POST') { // Create the prepared statement that we reuse for each setting. $query = Bugdar::$db->Prepare("\n INSERT INTO " . TABLE_PREFIX . "settings\n (setting, value)\n VALUES\n (:setting, :value)\n ON DUPLICATE KEY UPDATE value = :value\n "); // Update all the settings atomically. Bugdar::$db->BeginTransaction(); foreach ($valid_settings as $setting) { if (!isset($this->input->settings[$setting])) { continue; } $value = $this->input->settings[$setting]; $query->Execute(array('setting' => $setting, 'value' => $value)); $this->settings[$setting] = $value; } Bugdar::$settings = $this->settings; Bugdar::$db->Commit(); } }
public function setUp() { parent::setUp(); Bugdar::$settings = array(); $this->_RequireAuthentication(); }