from django.conf.urls import url
from api.views import category,place,event,town,user,chat,post
from django.views.decorators.cache import cache_page

urlpatterns = [
        url(r'^checkAPI/$',
            user.checkAPI,
            name='checkAPI'),

    url(r'^sendMessageEmail/$',
        user.sendMessageEmail,
        name='sendMessageEmail'),

        url(r'^uploadUserPhoto/(?P<pk>\d+)/$',
            user.UserPhotoUpdateView.as_view(),
            name='userphoto'),

        url(r'^uploadUserPhotoBase64/$',
            user.UploadUserPhotoBase64.as_view(),
            name='userphotobase64'),

         url(r'^article/$',
            post.ArticleListView.as_view(),
            name='article_list'),

    url(r'^article/(?P<pk>\d+)/$',
        post.ArticleDetailView.as_view(),
        name='article_detail'),

    url(r'^users/$',
            user.UserListView.as_view(),
            name='user_list'),

        url(r'^users/(?P<pk>\d+)/$',
            user.UserDetailView.as_view(),
            name='user_detail'),

        url(r'^follow/$',
            user.FollowListView.as_view(),
            name='follow_list'),

        url(r'^followinfo/$',
            user.FollowInfoListView.as_view(),
            name='followinfo_list'),

        url(r'^follow/(?P<pk>\d+)/$',
            user.FollowDetailView.as_view(),
            name='follow_detail'),

    url(r'^userphoto/$',
            user.PhotoProfileListView.as_view(),
            name='userphoto_list'),

        url(r'^createphoto/$',
            user.CreatePhotoView.as_view(),
            name='createphoto'),

        url(r'^createphotoprofile/$',
            user.CreatePhotoProfileView.as_view(),
            name='createphotoprofile'),

        url(r'^category/$',
            cache_page(86400)(category.CategoryListView.as_view()),
            name='category_list'),
        url(r'^category/(?P<pk>\d+)/$',
            category.CategoryDetailView.as_view(),
            name='category_detail'),

        url(r'^town/$',
            cache_page(86400)(town.TownListView.as_view()),
            name='town_list'),
        url(r'^town/(?P<pk>\d+)/$',
            town.TownDetailView.as_view(),
            name='town_detail'),

        url(r'^places/$',
            place.PlaceListView.as_view(),
            name='place_list'),
        url(r'^places/(?P<pk>\d+)/$',
            place.PlaceDetailView.as_view(),
            name='place_detail'),

        url(r'^placesvote/$',
            place.PlaceVoteView.as_view(),
            name='placevote_list'),

        url(r'^placeusers/$',
            place.PlaceUsersView.as_view(),
            name='place_users'),

        url(r'^placeusers/(?P<pk>\d+)/$',
            place.PlacesUsersDetailView.as_view(),
            name='placeuser_detail'),
        url(r'^placecomment/$',
            place.PlaceCommentsView.as_view(),
            name='place_comment'),

        url(r'^placefulldetail/$',
            place.PlaceFullDetailView.as_view(),
            name='place_fulldetail'),

        url(r'^events/$',
            event.EventListView.as_view(),
            name='event_list'),

        url(r'^events/(?P<pk>\d+)/$',
            event.EventDetailView.as_view(),
            name='event_detail'),

        url(r'^eventfulldetail/$',
            event.EventFullDetailView.as_view(),
            name='event_fulldetail'),

        url(r'^eventusers/$',
            event.EventUsersView.as_view(),
            name='event_users'),

        url(r'^eventusers/(?P<pk>\d+)/$',
            event.EventsUserDetailView.as_view(),
            name='eventsuser_detail'),

        url(r'^eventcomment/$',
            event.EventCommentsView.as_view(),
            name='event_comment'),

        url(r'^eventcategory/$',
            event.EventCategoryView.as_view(),
            name='event_category'),

        url(r'^chat/$',
            chat.ChatListView.as_view(),
            name='chat_list'),

        url(r'^chatmedia/$',
            chat.ChatMediaListView.as_view(),
            name='chatmedia_list'),

        url(r'^chatbetween/$',
            chat.ChatBetweenUserListView.as_view(),
            name='chatbetween_list'),

        url(r'^chatfulldetail/$',
            chat.ChatFullDetailListView.as_view(),
            name='chatfulldetail_list'),

        url(r'^allchat/$',
            chat.AllChatListView.as_view(),
            name='allchat_list'),

        url(r'^addchat/$',
            chat.AddChatView.as_view(),
            name='addchat'),

        url(r'^chat/(?P<pk>\d+)/$',
            chat.ChatDetailView.as_view(),
            name='chat_detail'),

        url(r'^message/$',
            chat.ChatMessageListView.as_view(),
            name='message_list'),

        url(r'^addmessage/$',
            chat.AddMessageView.as_view(),
            name='addmessage'),

        url(r'^message/(?P<pk>\d+)/$',
            chat.MessageDetailView.as_view(),
            name='message_detail'),

        url(r'^nbNewMessage/$',
            chat.nbNewMessage,
            name='nbNewMessage'),

        url(r'^post/$',
            post.PostListView.as_view(),
            name='post_list'),

        url(r'^post/(?P<pk>\d+)/$',
            post.PostDetailView.as_view(),
            name='post_detail'),

        url(r'^addpost/$',
            post.AddPostView.as_view(),
            name='post_create'),

        url(r'^addpostmedia/$',
            post.PostMediaListView.as_view(),
            name='postmedia_create'),


        url(r'^postcomment/$',
            post.PostCommentsListView.as_view(),
            name='postcomment_list'),

        url(r'^addpostcomment/$',
            post.CreatePostCommentsView.as_view(),
            name='addpostcomment_list'),

        url(r'^userlike/$',
            post.UserLikeListView.as_view(),
            name='userlike_list'),

        url(r'^userlike/(?P<pk>\d+)/$',
            post.UserLikeDetailView.as_view(),
            name='userlike_detail'),
]
