public function update(User $object) { $q = "UPDATE " . self::TABLE . " SET `firstName`='" . Singleton::create("NullConverter")->fromDOMtoDB($object->getFirstName()) . "', `lastName`='" . Singleton::create("NullConverter")->fromDOMtoDB($object->getLastName()) . "', `createDate`='" . Singleton::create("DateConverter")->fromDOMtoDB($object->getCreateDate()) . "', `default`='" . Singleton::create("BooleanConverter")->fromDOMtoDB($object->isDefault()) . "' WHERE id='" . addslashes($object->getId()) . "'"; $pk = $object->getId(); if ($object->isNew()) { if (empty($pk)) { $q = "INSERT INTO " . self::TABLE . " (`firstName`, `lastName`, `createDate`, `default`) VALUES ('" . Singleton::create("NullConverter")->fromDOMtoDB($object->getFirstName()) . "', '" . Singleton::create("NullConverter")->fromDOMtoDB($object->getLastName()) . "', '" . Singleton::create("DateConverter")->fromDOMtoDB($object->getCreateDate()) . "', '" . Singleton::create("BooleanConverter")->fromDOMtoDB($object->isDefault()) . "')"; } else { $q = "INSERT INTO " . self::TABLE . " (`firstName`, `lastName`, `createDate`, `default`) VALUES ('" . Singleton::create("NullConverter")->fromDOMtoDB($object->getId()) . "', '" . Singleton::create("NullConverter")->fromDOMtoDB($object->getFirstName()) . "', '" . Singleton::create("NullConverter")->fromDOMtoDB($object->getLastName()) . "', '" . Singleton::create("DateConverter")->fromDOMtoDB($object->getCreateDate()) . "', '" . Singleton::create("BooleanConverter")->fromDOMtoDB($object->isDefault()) . "')"; } } $this->db->updateQuery($q); if (empty($pk)) { $pk = $this->db->selectQuery("SELECT id from " . self::TABLE . " ORDER BY id DESC limit 1")->getSingleton(); } $result = $this->findByPrimaryKey($pk); parent::$dbCache->resetEntity("User"); parent::$dbCache->setSingle("User", $pk, $result); return $result; }