/** * Set new status to selected record * * @param \record_adapter $record * @param array $postStatus * @return array|null */ private function updateRecordStatus(\record_adapter $record, array $postStatus) { $sbasId = $record->get_databox()->get_sbas_id(); if (isset($postStatus[$sbasId]) && is_array($postStatus[$sbasId])) { $postStatus = $postStatus[$sbasId]; $currentStatus = strrev($record->get_status()); $newStatus = ''; foreach (range(0, 31) as $i) { $newStatus .= isset($postStatus[$i]) ? $postStatus[$i] ? '1' : '0' : $currentStatus[$i]; } $record->set_binary_status(strrev($newStatus)); return ['current_status' => $currentStatus, 'new_status' => $newStatus]; } return null; }
public function testSetStatus() { $record = new \record_adapter(self::$DI['app'], self::$DI['record_1']->get_sbas_id(), self::$DI['record_1']->get_record_id()); $record->set_binary_status('1001001001010101'); $this->assertSame('00000000000000001001001001010101', $record->get_status()); }
public function testSetStatus() { $record_1 = $this->getRecord1(); $record = new \record_adapter($this->getApplication(), $record_1->get_sbas_id(), $record_1->get_record_id()); $record->set_binary_status('1001001001010101'); $this->assertSame('00000000000000001001001001010101', $record->get_status()); }
/** * {@inheritdoc} */ public function updateRecord(\record_adapter $record) { $record->set_binary_status(\databox_status::dec2bin($this->app, bindec($record->get_status()) & ~7 | 4)); return $this; }