from django.urls import include, path
from rest_framework.routers import DefaultRouter

from home.geo.views import geo_cities, geo_regions

from .home_views import HomeFeedView
from .views import (
    ApplicationViewSet,
    BlogPostViewSet,
    ConversationViewSet,
    CompanyViewSet,
    EmployerApplicationsView,
    JobCategoryViewSet,
    JobViewSet,
    MeView,
    MyApplicationsView,
    MySavedJobsView,
    ObtainTokenView,
    PodcastViewSet,
    SeekerViewSet,
    SubscriptionPlanViewSet,
    TestimonialViewSet,
)

router = DefaultRouter()
router.register(r'conversations', ConversationViewSet, basename='conversation')
router.register(r'applications', ApplicationViewSet, basename='application')
router.register(r'job-categories', JobCategoryViewSet, basename='job-category')
router.register(r'jobs', JobViewSet, basename='job')
router.register(r'companies', CompanyViewSet, basename='company')
router.register(r'seekers', SeekerViewSet, basename='seeker')
router.register(r'blog', BlogPostViewSet, basename='blog')
router.register(r'podcast', PodcastViewSet, basename='podcast')
router.register(r'plans', SubscriptionPlanViewSet, basename='plan')
router.register(r'testimonials', TestimonialViewSet, basename='testimonial')

urlpatterns = [
    path('geo/regions/', geo_regions, name='geo-regions'),
    path('geo/cities/', geo_cities, name='geo-cities'),
    path('home/', HomeFeedView.as_view(), name='home-feed'),
    path('auth/token/', ObtainTokenView.as_view(), name='token'),
    path('me/', MeView.as_view(), name='me'),
    path('me/applications/', MyApplicationsView.as_view(), name='my-applications'),
    path('me/saved-jobs/', MySavedJobsView.as_view(), name='my-saved-jobs'),
    path('me/received-applications/', EmployerApplicationsView.as_view(), name='employer-applications'),
    path('', include(router.urls)),
]
