/** * @param ilTermsOfServiceAcceptanceEntity $entity */ public function trackAcceptance(ilTermsOfServiceAcceptanceEntity $entity) { $query = 'SELECT id FROM tos_versions WHERE hash = %s AND lng = %s'; $res = $this->db->queryF($query, array('text', 'text'), array($entity->getHash(), $entity->getIso2LanguageCode())); if ($this->db->numRows($res)) { $row = $this->db->fetchAssoc($res); $tosv_id = $row['id']; } else { $tosv_id = $this->db->nextId('tos_versions'); $this->db->insert('tos_versions', array('id' => array('integer', $tosv_id), 'lng' => array('text', $entity->getIso2LanguageCode()), 'src' => array('text', $entity->getSource()), 'src_type' => array('integer', $entity->getSourceType()), 'text' => array('clob', $entity->getText()), 'hash' => array('text', $entity->getHash()), 'ts' => array('integer', $entity->getTimestamp()))); } $this->db->insert('tos_acceptance_track', array('tosv_id' => array('integer', $tosv_id), 'usr_id' => array('integer', $entity->getUserId()), 'ts' => array('integer', $entity->getTimestamp()))); }
/** * Read object data from database * * @throws ilOrgUnitTypeException */ protected function read() { $sql = 'SELECT * FROM ' . self::TABLE_NAME . ' WHERE orgu_type_id = ' . $this->db->quote($this->orgu_type_id, 'integer') . ' AND lang = ' . $this->db->quote($this->lang, 'text'); $set = $this->db->query($sql); if (!$this->db->numRows($set)) { throw new ilOrgUnitTypeException("OrgUnit type translation for OrgUnit type {$this->orgu_type_id} and language {$this->lang} does not exist in database"); } while ($rec = $this->db->fetchObject($set)) { $this->members[$rec->member] = (string) $rec->value; } }
/** * Read object data from database * * @throws ilOrgUnitTypeException */ protected function read() { $sql = 'SELECT * FROM ' . self::TABLE_NAME . ' WHERE id = ' . $this->db->quote($this->id, 'integer'); $set = $this->db->query($sql); if (!$this->db->numRows($set)) { throw new ilOrgUnitTypeException("OrgUnit type with id {$this->id} does not exist in database"); } $rec = $this->db->fetchObject($set); $this->default_lang = $rec->default_lang; // Don't use Setter because of unnecessary plugin checks $this->setCreateDate($rec->create_date); $this->setLastUpdate($rec->last_update); $this->setOwner($rec->owner); $this->setIcon($rec->icon); }