/** * Konvertiert einen Artikel in eine Kategorie. * * @param int $art_id Artikel ID des Artikels, der in eine Kategorie umgewandelt werden soll * * @return bool TRUE bei Erfolg, sonst FALSE */ public static function article2category($art_id) { $sql = rex_sql::factory(); // LANG SCHLEIFE foreach (rex_clang::getAllIds() as $clang) { // artikel $sql->setQuery('select parent_id, name from ' . rex::getTablePrefix() . "article where id={$art_id} and startarticle=0 and clang_id={$clang}"); if (!isset($parent_id)) { $parent_id = $sql->getValue('parent_id'); } // artikel updaten $sql->setTable(rex::getTablePrefix() . 'article'); $sql->setWhere(['id' => $art_id, 'clang_id' => $clang]); $sql->setValue('startarticle', 1); $sql->setValue('catname', $sql->getValue('name')); $sql->setValue('catpriority', 100); $sql->update(); rex_category_service::newCatPrio($parent_id, $clang, 0, 100); } rex_article_cache::deleteLists($parent_id); rex_article_cache::delete($art_id); foreach (rex_clang::getAllIds() as $clang) { rex_extension::registerPoint(new rex_extension_point('ART_TO_CAT', '', ['id' => $art_id, 'clang' => $clang])); } return true; }