Microweber\Providers\MenuManager::menu_item_save PHP Method

menu_item_save() public method

public menu_item_save ( $data_to_save )
    public function menu_item_save($data_to_save)
    {
        $id = $this->app->user_manager->is_admin();
        if ($id == false) {
            mw_error('Error: not logged in as admin.' . __FILE__ . __LINE__);
        }
        if (isset($data_to_save['menu_id'])) {
            $data_to_save['id'] = intval($data_to_save['menu_id']);
            $this->app->cache_manager->delete('menus/' . $data_to_save['id']);
        }
        if (!isset($data_to_save['id']) and isset($data_to_save['link_id'])) {
            $data_to_save['id'] = intval($data_to_save['link_id']);
        }
        if (isset($data_to_save['id'])) {
            $data_to_save['id'] = intval($data_to_save['id']);
            $this->app->cache_manager->delete('menus/' . $data_to_save['id']);
        }
        if (!isset($data_to_save['id']) or intval($data_to_save['id']) == 0) {
            $data_to_save['position'] = 99999;
        }
        $url_from_content = false;
        if (isset($data_to_save['content_id']) and intval($data_to_save['content_id']) != 0) {
            $url_from_content = 1;
        }
        if (isset($data_to_save['categories_id']) and intval($data_to_save['categories_id']) != 0) {
            $url_from_content = 1;
        }
        if (isset($data_to_save['content_id']) and intval($data_to_save['content_id']) == 0) {
            unset($data_to_save['content_id']);
        }
        if (isset($data_to_save['categories_id']) and intval($data_to_save['categories_id']) == 0) {
            unset($data_to_save['categories_id']);
            //$url_from_content = 1;
        }
        if ($url_from_content != false) {
            if (!isset($data_to_save['title'])) {
                $data_to_save['title'] = '';
            }
        }
        if (!isset($data_to_save['auto_populate'])) {
            $data_to_save['auto_populate'] = '';
        }
        if (isset($data_to_save['categories'])) {
            unset($data_to_save['categories']);
        }
        if ($url_from_content == true and isset($data_to_save['url'])) {
            $data_to_save['url'] = '';
        }
        if (isset($data_to_save['parent_id'])) {
            $data_to_save['parent_id'] = intval($data_to_save['parent_id']);
            $this->app->cache_manager->delete('menus/' . $data_to_save['parent_id']);
        }
        $table = $this->tables['menus'];
        $data_to_save['table'] = $table;
        $data_to_save['item_type'] = 'menu_item';
        $save = $this->app->database_manager->save($table, $data_to_save);
        $this->app->cache_manager->delete('menus/global');
        return $save;
    }