# Path: bgpvpn_dashboard/dashboards/project/bgpvpn/network_associations/tabs.py
# class OverviewTab(tabs.Tab):
# class NetworkAssociationsTab(tabs.TableTab):
# class NetworkAssociationDetailTabs(tabs.TabGroup):
#     def get_context_data(self, request):
#     def get_network(self, network_id):
#     def get_network_detail_url(network_id):
#     def get_network_associations_data(self):
# 
# Path: bgpvpn_dashboard/dashboards/project/bgpvpn/router_associations/tabs.py
# class OverviewTab(tabs.Tab):
# class RouterAssociationsTab(tabs.TableTab):
# class RouterAssociationDetailTabs(tabs.TabGroup):
#     def get_context_data(self, request):
#     def get_router(self, router_id):
#     def get_router_detail_url(router_id):
#     def get_router_associations_data(self):


import bgpvpn_dashboard.api.bgpvpn as bgpvpn_api
from django.utils.translation import ugettext_lazy as _
from horizon import exceptions
from horizon import tabs
from bgpvpn_dashboard.dashboards.project.bgpvpn.network_associations \
    import tabs as network_tabs
from bgpvpn_dashboard.dashboards.project.bgpvpn.router_associations \
    import tabs as router_tabs
    name = _("Overview")
    slug = "overview"
    template_name = ("project/bgpvpn/_detail_overview.html")
    preload = False

    def _get_data(self):
        bgpvpn = {}
        bgpvpn_id = None
        try:
            bgpvpn_id = self.tab_group.kwargs['bgpvpn_id']
            bgpvpn = bgpvpn_api.bgpvpn_get(self.request, bgpvpn_id)
            bgpvpn.set_id_as_name_if_empty(length=0)
        except Exception:
            msg = _('Unable to retrieve details for bgpvpn "%s".') % (
                bgpvpn_id)
            exceptions.handle(self.request, msg)
        return bgpvpn

    def get_context_data(self, request, **kwargs):
        context = super(OverviewTab, self).get_context_data(request, **kwargs)
        bgpvpn = self._get_data()
        context["bgpvpn"] = bgpvpn
        return context


class BgpvpnDetailsTabs(tabs.DetailTabsGroup):
    slug = "bgpvpn_tabs"
    tabs = (OverviewTab,
            network_tabs.NetworkAssociationsTab,
            router_tabs.RouterAssociationsTab)

# Path: bgpvpn_dashboard/dashboards/project/bgpvpn/network_associations/tabs.py
# class OverviewTab(tabs.Tab):
# class NetworkAssociationsTab(tabs.TableTab):
# class NetworkAssociationDetailTabs(tabs.TabGroup):
#     def get_context_data(self, request):
#     def get_network(self, network_id):
#     def get_network_detail_url(network_id):
#     def get_network_associations_data(self):
# 
# Path: bgpvpn_dashboard/dashboards/project/bgpvpn/router_associations/tabs.py
# class OverviewTab(tabs.Tab):
# class RouterAssociationsTab(tabs.TableTab):
# class RouterAssociationDetailTabs(tabs.TabGroup):
#     def get_context_data(self, request):
#     def get_router(self, router_id):
#     def get_router_detail_url(router_id):
#     def get_router_associations_data(self):


# Path: bgpvpn_dashboard/dashboards/project/bgpvpn/tabs.py
import bgpvpn_dashboard.api.bgpvpn as bgpvpn_api
from django.utils.translation import ugettext_lazy as _
from horizon import exceptions
from horizon import tabs
from bgpvpn_dashboard.dashboards.project.bgpvpn.network_associations \
    import tabs as network_tabs
from bgpvpn_dashboard.dashboards.project.bgpvpn.router_associations \
    import tabs as router_tabs

    name = _("Overview")
    slug = "overview"
    template_name = ("project/bgpvpn/_detail_overview.html")
    preload = False

    def _get_data(self):
        bgpvpn = {}
        bgpvpn_id = None
        try:
            bgpvpn_id = self.tab_group.kwargs['bgpvpn_id']
            bgpvpn = bgpvpn_api.bgpvpn_get(self.request, bgpvpn_id)
            bgpvpn.set_id_as_name_if_empty(length=0)
        except Exception:
            msg = _('Unable to retrieve details for bgpvpn "%s".') % (
                bgpvpn_id)
            exceptions.handle(self.request, msg)
        return bgpvpn

    def get_context_data(self, request, **kwargs):
        context = super(OverviewTab, self).get_context_data(request, **kwargs)
        bgpvpn = self._get_data()
        context["bgpvpn"] = bgpvpn
        return context


class BgpvpnDetailsTabs(tabs.DetailTabsGroup):
    slug = "bgpvpn_tabs"
    tabs = (OverviewTab,
            network_tabs.NetworkAssociationsTab,
            router_tabs.RouterAssociationsTab)

    sticky = True