/** * @see \wcf\data\ISortableAction::updatePosition() */ public function updatePosition() { $sql = "UPDATE\twcf" . WCF_N . "_page_menu_item\n\t\t\tSET\tparentMenuItem = ?,\n\t\t\t\tshowOrder = ?\n\t\t\tWHERE\tmenuItemID = ?"; $statement = WCF::getDB()->prepareStatement($sql); WCF::getDB()->beginTransaction(); foreach ($this->parameters['data']['structure'] as $parentMenuItemID => $menuItems) { foreach ($menuItems as $showOrder => $menuItemID) { $statement->execute(array($parentMenuItemID ? $this->menuItems[$parentMenuItemID]->menuItem : '', $showOrder + 1, $menuItemID)); } } WCF::getDB()->commitTransaction(); // update landing page if ($this->parameters['menuPosition'] == 'header') { PageMenuItemEditor::updateLandingPage(); } }
/** * @see wcf\system\package\plugin\AbstractXMLPackageInstallationPlugin::cleanup() */ protected function cleanup() { PageMenuItemEditor::updateLandingPage(); }