/**
 * Get all portfolio cats
 */
function a3_portfolio_get_all_categories_visiable($parent = 0, $append_str = '', $check_visiable = true)
{
    global $a3_portfolio_category_taxonomy;
    $portfolio_cats = array();
    $all_portfolio_cats = get_terms('portfolio_cat', array('hide_empty' => true, 'parent' => $parent));
    if (!empty($all_portfolio_cats) && !is_wp_error($all_portfolio_cats)) {
        foreach ($all_portfolio_cats as $cat) {
            if ($parent == 0 && $check_visiable) {
                $active_portfolio_taxonomy = $a3_portfolio_category_taxonomy->get_a3_portfolio_category_meta($cat->term_id, 'active_portfolio_taxonomy');
                if ('' != $active_portfolio_taxonomy && 1 != $active_portfolio_taxonomy) {
                    continue;
                }
            }
            $new_append_str = $append_str;
            $cat->name = $new_append_str . $cat->name;
            $new_append_str .= $append_str;
            $portfolio_cats[$cat->term_id] = $cat;
            $portfolio_cats = array_merge($portfolio_cats, a3_portfolio_get_all_categories_visiable($cat->term_id, $new_append_str, $check_visiable));
        }
    }
    return apply_filters('a3_portfolio_get_all_categories_visiable', $portfolio_cats, $parent, $append_str, $check_visiable);
}
/**
 * a3_portfolio_tag_nav_bar()
 *
 * @return void
 */
function a3_portfolio_tag_nav_bar()
{
    $menus = array();
    $all_cats = a3_portfolio_get_all_categories_visiable();
    if (!empty($all_cats) && !is_wp_error($all_cats)) {
        foreach ($all_cats as $term) {
            $menus[$term->slug] = $term->name;
        }
    }
    a3_portfolio_get_template('navbar/tag-navbar.php', array('menus' => $menus));
}