from django.conf import settings
from django.conf.urls import patterns, include, url
from django.conf.urls.static import *
from django.contrib import admin
from django.contrib.auth.forms import UserCreationForm
from django.core.context_processors import csrf
from django.shortcuts import render_to_response
from django.views.decorators.csrf import csrf_exempt
from django.views.generic.edit import CreateView
from sharenews.views import *
import django.utils.simplejson as json;

admin.autodiscover()

handler404 = 'sharenews.views.error404'

urlpatterns = patterns('',

    #########   WEB   #########
    url(r'^$', home),                                       # Pagina d'inici
    url(r'^admin/', include(admin.site.urls)),              # Pagina d'admin
    url(r'^checkUsername/$', checkUsername),                # Pagina per comprovar si un usuari ja exiteix
    url(r'^comment/$', comment),                            # Pagina per comentar una noticia
    url(r'^compose/$', compose),                            # Pagina per redactar una noticia nova
    url(r'^editprofile/$', editprofile),                    # Funcio per actualitzar el perfil
    url(r'^error404/$', error404),                          # Error 404: La pagina no existeix
    url(r'^file/$', uploadfile),                            # Pagina per penjar arxius
    url(r'^fileProfile/$', fileProfile),                    # Pagina per penjar una nova imatge d'usuari
    url(r'^lastMedia/$', lastMedia),                        # Funcio per trovar la ultima foto que ha penjat un usuari
    url(r'^login/$', loginPage),                            # Funcio login per connectar a un usuari
    url(r'^logout/$', logoutPage),                          # Funcio logout per desconnectar a un usuari
    url(r'^map/$', mapa),                                   # Pagina del mapa
    url(r'^news/(?P<category>\w+)/$', category),            # Pagina per veure les noticies d'una categoria concreta
    url(r'^profile/$', myprofile),                          # Perfil de l'usuari actiu
    url(r'^profile/(?P<username>\w{0,50})/$', profile),     # Perfil d'un usuari concret
    url(r'^read/(?P<newsid>\w+)/$', read),                  # Pagina d'una noticia concreta
    url(r'^register/$', register),                          # Pagina per registrar-se a la web
    url(r'^search/$', search),                              # Funcio per filtrar per tags
    url(r'^vote/$', vote),                                  # Funcio per puntuar noticies

    ######### ANDROID #########
    url(r'^afegirNoticiaGeri/$', afegirNoticiaGeri),
    url(r'^llegirNoticies/$', llegirNoticies),
    url(r'^llegirNoticiesBasic/$', llegirNoticiesBasic),
    url(r'^afegirComentari/$', afegirComentari),
    url(r'^llegirNoticiesCategoriaBasic/$', llegirNoticiesCategoriaBasic),
    url(r'^llegirNoticiesTagsBasic/$', llegirNoticiesTagsBasic),
    url(r'^conecta/$', conecta),
    url(r'^agafarMedia/$', agafarMedia),
    url(r'^llegirComentarisBasic/$', llegirComentarisBasic),
    url(r'^loginPageAndroid/$', loginPageAndroid),

) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
