# -*- coding: utf-8 -*-
# Copyright (C) 2018 Freetech Solutions

# This file is part of OMniLeads

# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License version 3, as published by
# the Free Software Foundation.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Lesser General Public License for more details.

# You should have received a copy of the GNU Lesser General Public License
# along with this program.  If not, see http://www.gnu.org/licenses/.
#

from django.urls import path
from django.contrib.auth.decorators import login_required

from configuracion_telefonia_app.views import base, audio, opciones_avanzadas


urlpatterns = [
    path('configuracion_telefonia/troncal_sip/lista/page<int:page>/',
         login_required(base.TroncalSIPListView.as_view()),
         name='lista_troncal_sip',
         ),
    path('configuracion_telefonia/troncal_sip/crear/',
         login_required(base.TroncalSIPCreateView.as_view()),
         name='crear_troncal_sip',
         ),
    path('configuracion_telefonia/troncal_sip/<int:pk>/editar/',
         login_required(base.TroncalSIPUpdateView.as_view()),
         name='editar_troncal_sip',
         ),
    path('configuracion_telefonia/troncal_sip/<int:pk>/eliminar/',
         login_required(base.TroncalSIPDeleteView.as_view()),
         name='eliminar_troncal_sip',
         ),
    path('configuracion_telefonia/ruta_saliente/lista/',
         login_required(base.RutaSalienteListView.as_view()),
         name='lista_rutas_salientes',
         ),
    path('configuracion_telefonia/ruta_entrante/lista/',
         login_required(base.RutaEntranteListView.as_view()),
         name='lista_rutas_entrantes',
         ),
    path('configuracion_telefonia/ruta_entrante/obtener_destinos_tipo/<int:tipo_destino>/',
         login_required(base.ApiObtenerDestinosEntrantes.as_view()),
         name='obtener_destinos_tipo',
         ),
    path('configuracion_telefonia/ivr/lista/',
         login_required(base.IVRListView.as_view()),
         name='lista_ivrs',
         ),
    path('configuracion_telefonia/grupo_horario/lista/',
         login_required(base.GrupoHorarioListView.as_view()),
         name='lista_grupos_horarios',
         ),
    path('configuracion_telefonia/validacion_fecha_hora/lista/page<int:page>/',
         login_required(base.ValidacionFechaHoraListView.as_view()),
         name='lista_validaciones_fecha_hora',
         ),
    path('configuracion_telefonia/validacion_fecha_hora/crear/',
         login_required(base.ValidacionFechaHoraCreateView.as_view()),
         name='crear_validacion_fecha_hora',
         ),
    path('configuracion_telefonia/validacion_fecha_hora/<int:pk>/editar/',
         login_required(base.ValidacionFechaHoraUpdateView.as_view()),
         name='editar_validacion_fecha_hora',
         ),
    path('configuracion_telefonia/validacion_fecha_hora/<int:pk>/eliminar/',
         login_required(base.ValidacionFechaHoraDeleteView.as_view()),
         name='eliminar_validacion_fecha_hora',
         ),
    path('configuracion_telefonia/identificador_cliente/lista/page<int:page>/',
         login_required(base.IdentificadorClienteListView.as_view()),
         name='lista_identificador_cliente',
         ),
    path('configuracion_telefonia/identificador_cliente/crear/',
         login_required(base.IdentificadorClienteCreateView.as_view()),
         name='crear_identificador_cliente',
         ),
    path('configuracion_telefonia/identificador_cliente/<int:pk>/editar/',
         login_required(base.IdentificadorClienteUpdateView.as_view()),
         name='editar_identificador_cliente',
         ),
    path('configuracion_telefonia/identificador_cliente/<int:pk>/eliminar/',
         login_required(base.IdentificadorClienteDeleteView.as_view()),
         name='eliminar_identificador_cliente',
         ),
    path('destino_personalizado/lista/page<int:page>/',
         base.DestinoPersonalizadoListView.as_view(),
         name='lista_destinos_personalizados'),
    path('destino_personalizado/crear/', base.DestinoPersonalizadoCreateView.as_view(),
         name='crear_destino_personalizado'),
    path('destino_personalizado/<int:pk>/editar/',
         base.DestinoPersonalizadoUpdateView.as_view(), name='editar_destino_personalizado'),
    path('destino_personalizado/<int:pk>/eliminar/',
         base.DestinoPersonalizadoDeleteView.as_view(), name='eliminar_destino_personalizado'),
    path('configuracion_telefonia/adicionar_audios_asterisk/',
         login_required(audio.AdicionarAudioAsteriskView.as_view()),
         name='adicionar_audios_asterisk',
         ),
    path('configuracion_telefonia/playlist/lista/<int:page>/',
         login_required(audio.PlaylistListView.as_view()),
         name='lista_playlist',
         ),
    path('configuracion_telefonia/playlist/crear/',
         login_required(audio.PlaylistCreateView.as_view()),
         name='crear_playlist',
         ),
    path('configuracion_telefonia/playlist/<int:pk>/eliminar/',
         login_required(audio.PlaylistDeleteView.as_view()),
         name='eliminar_playlist',
         ),
    path('configuracion_telefonia/playlist/<int:pk>/editar/',
         login_required(audio.MusicaDeEsperaCreateView.as_view()),
         name='editar_playlist',
         ),
    path('configuracion_telefonia/playlist/<int:pk>/remover_musica_de_espera/',
         login_required(audio.MusicaDeEsperaDeleteView.as_view()),
         name='eliminar_musica_de_espera',
         ),
    path('configuracion_telefonia/opciones_avanzadas/editar_amd/<int:pk>/',
         login_required(opciones_avanzadas.ConfiguracionAMDUpdateView.as_view()),
         name='ajustar_configuracion_amd',
         ),
    path('configuracion_telefonia/opciones_avanzadas/editar_esquema_grabaciones/<int:pk>/',
         login_required(opciones_avanzadas.EsquemaGrabacionesUpdateView.as_view()),
         name='ajustar_formato_grabaciones',
         ),
]
