/** * Save new navigation * * @param array $fields * @return void */ public function save(array $fields) { $navigation = new Table\Navigation(['title' => $fields['title'], 'top_node' => isset($fields['top_node']) ? $fields['top_node'] : null, 'top_id' => isset($fields['top_id']) ? $fields['top_id'] : null, 'top_class' => isset($fields['top_class']) ? $fields['top_class'] : null, 'top_attributes' => isset($fields['top_attributes']) ? $fields['top_attributes'] : null, 'parent_node' => isset($fields['parent_node']) ? $fields['parent_node'] : null, 'parent_id' => isset($fields['parent_id']) ? $fields['parent_id'] : null, 'parent_class' => isset($fields['parent_class']) ? $fields['parent_class'] : null, 'parent_attributes' => isset($fields['parent_attributes']) ? $fields['parent_attributes'] : null, 'child_node' => isset($fields['child_node']) ? $fields['child_node'] : null, 'child_id' => isset($fields['child_id']) ? $fields['child_id'] : null, 'child_class' => isset($fields['child_class']) ? $fields['child_class'] : null, 'child_attributes' => isset($fields['child_attributes']) ? $fields['child_attributes'] : null, 'on_class' => isset($fields['on_class']) ? $fields['on_class'] : null, 'off_class' => isset($fields['off_class']) ? $fields['off_class'] : null, 'indent' => (int) $fields['indent']]); $navigation->save(); if ($fields['create_nav_from'] != '----') { $this->createNavFrom($fields['create_nav_from'], $navigation->id); } $this->data = array_merge($this->data, $navigation->getColumns()); }