/** * Naplní data do DB a nastavení $this->rowID dle nově vloženého řádku * Dojde ke vložení všech dat $this->data * * @author Tomáš Kocifaj * @link http://www.ktstudio.cz * * @return mixed boolean | int - 1 při bezchybném vložení */ private function insertRow() { global $wpdb; $updateValue = $this->getColumnsWithFormatsData(); // Povolení filtru, který ze "NULL" strinogové hodnoty udělá v SQL dotazu běžný NULL pro nullable sloupce add_filter("query", array($this, "nullUpdateFilterCallback")); $sql = $wpdb->insert($this->getTable(), $updateValue->columns, $updateValue->formats); remove_filter("query", array($this, "nullUpdateFilterCallback")); // Zrušení předešlého filtru if (KT::issetAndNotEmpty($sql)) { $this->setId($wpdb->insert_id); return $this->getId(); } $error = $wpdb->last_error; $this->addError("Došlo k chybě při vkládání dat do DB", $error); KT_Logger::error($error); return false; }