Index: eventos/admin.py
===================================================================
--- eventos/admin.py	(revision 5d88f36371d3c447b6cabfbc317ae7fd4f77db0f)
+++ eventos/admin.py	(revision bf475917c09d88f08785ab64628b3b984facb248)
@@ -1,4 +1,3 @@
 from django.contrib import admin
-from .models import Evento
 
-admin.site.register(Evento)
+# Register your models here.
Index: eventos/forms.py
===================================================================
--- eventos/forms.py	(revision 9c25cd29dceac541602bd01aca64c4cfa139e3fd)
+++ eventos/forms.py	(revision bf475917c09d88f08785ab64628b3b984facb248)
@@ -1,7 +1,4 @@
 
 from django import forms
-from django.forms.fields import (
-    CharField, BooleanField
-)
 
 from .models import *
@@ -13,9 +10,8 @@
 
     @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
+    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     @date 19-11-2017
     @version 1.0.0
     """
-    archivo = CharField()
 
     class Meta:
@@ -24,5 +20,5 @@
         """
         model = Evento
-        exclude = ['activo', 'serial']
+        exclude = ['activo']
 
     def __init__(self, *args, **kwargs):
@@ -35,98 +31,7 @@
              'placeholder': 'Nombre del evento'})
         self.fields['fecha'].widget.attrs.update(
-            {'class': 'datepicker',
-             'placeholder': 'Fecha',
-             'readonly':
-             'readonly'})
-        self.fields['archivo'].required = False
-        self.fields['archivo'].widget.attrs.update(
-            {'class': 'file-path validate',
-             'placeholder': 'Subir Archivo',
-             'accept': '.pdf'})
-        self.fields['pos_x'].widget = forms.HiddenInput()
-        self.fields['pos_x'].required=False
-        self.fields['pos_y'].widget = forms.HiddenInput()
-        self.fields['pos_y'].required=False
-        self.fields['pag'].widget = forms.HiddenInput()
-        self.fields['pag'].required=False
-
-
-class FirmaEventoForm(forms.Form):
-    """!
-    Clase que permite crear el formulario para la firma de un documento
-
-    @author Rodrigo Boet (rboet at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 20-11-2017
-    @version 1.0.0
-    """
-    pasaporte = forms.CharField(widget=forms.TextInput(attrs={'class':'form-control','placeholder':'Ingrese su pasaporte'}))
-
-
-class UpdateFileEventoForm(forms.Form):
-    """!
-    Clase que permite crear el formulario para subir un documento a un evento
-
-    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 19-11-2017
-    @version 1.0.0
-    """
-    archivo = CharField()
-    pos_x = CharField()
-    pos_y = CharField()
-    pag = CharField()
-
-    class Meta:
-        """!
-            Clase que construye los meta datos del formulario
-        """
-        fields = ['archivo']
-
-    def __init__(self, *args, **kwargs):
-        """!
-            Funcion que construye los valores iniciales del formulario evento
-        """
-        super(UpdateFileEventoForm, self).__init__(*args, **kwargs)
-        self.fields['archivo'].required = True
-        self.fields['archivo'].widget.attrs.update(
-            {'class': 'file-path validate',
-             'placeholder': 'Subir Archivo',
-             'accept': '.pdf'})
-        self.fields['pos_x'].required = True
-        self.fields['pos_x'].widget = forms.HiddenInput()
-        self.fields['pos_y'].required = True
-        self.fields['pos_y'].widget = forms.HiddenInput()
-        self.fields['pag'].required = True
-        self.fields['pag'].widget = forms.HiddenInput()
-
-
-class UpdateEventoForm(forms.ModelForm):
-    """!
-    Clase que permite crear el formulario para el update del evento
-
-    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 28-11-2017
-    @version 1.0.0
-    """
-    class Meta:
-        """!
-            Clase que construye los meta datos del formulario
-        """
-        model = Evento
-        fields = ['nombre_evento', 'fecha']
-
-    def __init__(self, *args, **kwargs):
-        """!
-            Funcion que construye los valores iniciales del formulario update evento
-        """
-        super(UpdateEventoForm, self).__init__(*args, **kwargs)
-        self.fields['nombre_evento'].widget.attrs.update(
             {'class': 'form-control',
-             'placeholder': 'Nombre del evento'})
-        self.fields['fecha'].widget.attrs.update(
-            {'class': 'datepicker',
-             'placeholder': 'Fecha',
-             'readonly':
-             'readonly'})
+             'placeholder': 'Fecha', 'data-provide': 'datepicker'})
+        self.fields['serial'].widget.attrs.update(
+            {'class': 'form-control',
+             'placeholder': 'Serial'})
Index: eventos/models.py
===================================================================
--- eventos/models.py	(revision eb2672bffd7bb22bc258d45b66cc86de0508ca9e)
+++ eventos/models.py	(revision bf475917c09d88f08785ab64628b3b984facb248)
@@ -7,16 +7,12 @@
 
     @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
+    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     @date 19-11-2017
     @version 1.0.0
     """
     nombre_evento = models.CharField(max_length=128, unique=True)
-    fecha = models.DateField(null=False)
-    serial = models.CharField(max_length=128,null=True)
-    pos_x = models.CharField(max_length=32,null=True)
-    pos_y = models.CharField(max_length=32,null=True)
-    pag = models.CharField(max_length=4,null=True)
+    fechao = models.DateField(null=False)
+    serial = models.IntegerField(unique=True)
     activo = models.BooleanField(default=True)
-    procesando = models.BooleanField(default=False)
 
     class Meta:
Index: eventos/templates/evento.detail.html
===================================================================
--- eventos/templates/evento.detail.html	(revision e060c847f14575bba5d61e536ca2fb3e5eeaac08)
+++ 	(revision )
@@ -1,64 +1,0 @@
-{% extends 'base.template.html' %}
-{% load staticfiles %}
-{% block title %}Detalle del Evento {{ object.nombre_evento }}{% endblock %}
-{% block content %}
-    <h1 class="center">Evento: {{ object.nombre_evento }}</h1><hr>
-    
-    <div class="row">
-        <div class="col s12 m12">
-            <div class="card">
-                <div class="card-content">
-                    <span class="card-title"><b>Nombre del evento: </b>{{ object.nombre_evento }}</span>
-                    <ul>
-                        <li><b>Fecha: </b>{{ object.fecha }}</li>
-                    </ul>
-                    <ul>
-                        <li><b>Activo: </b>{% if object.activo %}
-                            Sí, el documento si se encuentra activo aún falta {{num_firma}} {% if num_firma > 1 %}participantes {% else %} participante {% endif%} por firmar</li>
-                        {% else %}
-                            No, el documento no esta activo todos los participantes han firmado</li>
-                        {% endif %}
-                    </ul>
-                </div>
-            </div>
-        </div>
-    <div class="col s12 m12">
-        <table class="responsive-table striped">
-        <h4> Participantes</h4>
-            <thead>
-              <tr>
-                  <th scope="col">Nombresy Apellidos</th>
-                  <th scope="col">¿Firmó?</th>
-              </tr>
-            </thead>
-            <tbody>
-                {% for firmantes in participantes %}
-                    <tr>
-                        <td>
-                            {{ firmantes.fk_participante.nombres }} {{ firmantes.fk_participante.apellidos }}
-                        </td>
-                        <td>
-                            {% if firmantes.firma %}
-                                <i class="material-icons green-text" title="Sí">done</i>
-                            {% else %}
-                                <i class="material-icons red-text" title="No">clear</i>
-                            {% endif %}
-                        </td>
-                    </tr>
-                {% endfor %}
-            </tbody>
-        </table>
-        </div>
-    </div>
-    <div class="center">
-        {% if object.serial %}
-        <iframe width="700px" height="600px" src="https://murachi.cenditel.gob.ve/Murachi/0.1/archivos/listadopdf/{{object.serial}}">';
-        </iframe>
-        {% else %}
-            <h4 class="red-text">No cargó ningun documento</h4>
-        {% endif %}
-    </div>
-    <div class="row">
-        <a class="btn waves-effect blue darken-1" href="{% url 'events:list_events' %}" >Regresar</a>
-    </div>
-{% endblock %}
Index: eventos/templates/evento.firma.html
===================================================================
--- eventos/templates/evento.firma.html	(revision a28e55bd4a221fde474ae56e6d9b116552eeb431)
+++ 	(revision )
@@ -1,34 +1,0 @@
-{% extends 'base.template.html' %}
-{% load staticfiles %}
-{% block title %}Firmar Evento{% endblock title %}
-{% block content %}
-    <div class="content center">
-        <h3>{{nombre_evento}}</h3>
-        <form id="form" method="post">
-            {% csrf_token %}
-            <div class="input-field {% if form.pasaporte.errors %}invalid{% endif %}">
-                {{ form.pasaporte }}
-                <label for="icon_prefix {{ form.pasaporte.auto_id }}">Número de Pasaporte</label>
-                {% include 'base.forms.errors.html' with form_errors=form.pasaporte.errors col_title_error='col s2' col_msg_error='col s10' %}
-            </div>
-            
-            <a type="button" class="btn waves-effect blue darken-1" onclick="get_event_user()">
-                <i class="material-icons left">search</i> Buscar
-            </a>
-            {% if nombre_evento.serial %}
-                <div id="datos_paricipante"></div>
-            {% else %}
-                <h3>No existe Documento para firmar</h3>
-            {% endif %}
-        </form>
-        <div class="row" style="padding-top: 25px;">
-            <a class="btn left waves-effect blue darken-1" href="{% url 'events:list_events' %}" >Regresar</a>
-        </div>
-    </div>
-{% endblock %}
-{% block extraJs %}
-    <script type="text/javascript" src="{% static "plugins/hwcrypto/gitversion.js"  %}"></script>
-    <script type="text/javascript" src="{% static "plugins/hwcrypto/hwcrypto-legacy.js"  %}"></script>
-    <script type="text/javascript" src="{% static "plugins/hwcrypto/hwcrypto.js"  %}"></script>
-    <script type="text/javascript" src="{% static "plugins/hwcrypto/hex2base.js"  %}"></script> 
-{% endblock %}
Index: eventos/templates/evento.list.html
===================================================================
--- eventos/templates/evento.list.html	(revision a28e55bd4a221fde474ae56e6d9b116552eeb431)
+++ 	(revision )
@@ -1,50 +1,0 @@
-{% extends 'base.template.html' %}
-{% load staticfiles %}
-{% block title %}Eventos{% endblock %}
-{% block content %}
-    <h1 class="center">Eventos</h1><hr>
-    
-    {% if request.user.is_authenticated %}
-        <div class="row content">
-            <a type="button" class="btn waves-effect btn blue darken-1 right" href="{% url 'events:create_events' %}">
-                <i class="material-icons left">add_circle</i> Registrar Nuevo Evento</a>
-        </div>
-    {% endif %}
-    
-    {% for evento in object_list %}
-        <div class="card">
-            <div class="card-content">
-                <span class="card-title"><b>Nombre del evento: </b>{{ evento.nombre_evento }}</span>
-                <ul>
-                    <li><b>Fecha: </b>{{ evento.fecha }}</li>
-                </ul>
-            </div>
-            <div class="card-action">
-                <a type="button" class="btn waves-effect blue darken-1" href="{% url 'events:detail_event' evento.id %}">
-                    <i class="material-icons left">search</i> Detalle
-                </a>
-                {% if evento.serial %}
-                <a type="button" class="btn waves-effect blue darken-1" href="{% url 'events:firma_events' evento.id %}">
-                    <i class="material-icons left">mode_edit</i> Firmar
-                </a>
-                {% endif %}
-                {% if request.user.is_authenticated %}
-                    <a type="button" class="btn waves-effect blue darken-1" href="{% url 'events:update_evento' evento.id %}">
-                        <i class="material-icons left">backup</i> Cargar Documento
-                    </a>
-                {% endif %}
-                
-                {% if request.user.is_authenticated %}
-                    <a type"button" class="btn waves-effect blue darken-1" href="{% url  'events:update_evento_participante' evento.id %}"><i class="material-icons left">border_color</i>Editar Evento
-                    </a>
-                {% endif %}
-            </div>
-        </div>
-    {% empty %}
-        <h3>No existen eventos.</h3>
-    {% endfor %}
-    {% include 'base.paginator.html' with paginator=page_obj %}
-    <div style="padding-bottom: 50px;">
-        <a type="button" class="btn waves-effect btn blue darken-1" href="{% url 'base:inicio' %}">Regresar</a>
-    </div>
-{% endblock %}
Index: eventos/templates/evento.update.html
===================================================================
--- eventos/templates/evento.update.html	(revision a28e55bd4a221fde474ae56e6d9b116552eeb431)
+++ 	(revision )
@@ -1,77 +1,0 @@
-{% extends 'base.template.html' %}
-{% load staticfiles %}
-{% block title %}Cargar Archivo{% endblock title %}
-{% block extraJs %}
-    <script src="{% static 'js/jquery/jquery-ui.js' %}"></script>
-    <script src="{% static 'js/pdf.js' %}"></script>
-    <script src="{% static 'js/pdf.worker.js' %}"></script>
-    <script src="{% static 'js/draggable.js' %}"></script>
-    <!-- Coordenadas PDF-->
-    <script src="{% static 'js/DraggableSortable.js' %}"></script>
-    <script src="{% static 'js/docsDraggable.js' %}"></script>
-    
-{%endblock%}
-
-{% block content %}
-    <div class="content">
-        {% if valida %}
-        <div class="center">
-          <h5 class="center">El evento {{object.nombre_evento}}, ya contiene un documento</h5><hr/><br>
-          <iframe width="700px" height="600px" src="https://murachi.cenditel.gob.ve/Murachi/0.1/archivos/listadopdf/{{object.serial}}">';
-          </iframe>
-        </div>
-        {% else %}
-        <h5 class="center">Cargar Archivo al Evento</h5><hr/><br>
-        <h5 class="blue-text">Luego de cargar un documento debe colocar el código Qr en la ubicación y página de su preferencia.</h5>
-        <form id="form" method="post" enctype="multipart/form-data">
-            {% csrf_token %}
-            
-            <div class="file-field input-field {% if form.archivo.errors %}invalid{% endif %}">
-                
-                <div class="btn">
-                    <span for="icon_prefix {{ form.archivo.auto_id }}">Archivo</span>
-                    <input type="file" name="file" id="file" accept="application/pdf">
-                </div>
-                <div class="file-path-wrapper">
-                    {{ form.archivo }}
-                </div>
-                {% include 'base.forms.errors.html' with form_errors=form.archivo.errors col_title_error='col s2' col_msg_error='col s10' %}
-                
-            </div>
-
-            <div class="col s8 m2 offset-s2">
-                <div id="pdf-main-container" style="display:none;"><center><h5>Configurar Posicion de la Firma</h5></center> 
-                      <div id="pdf-loader2">Cargando documento ...</div>
-                      <div id="pdf-contents2">
-                        <div id="pdf-meta2">
-                          <div id="pdf-buttons2">
-                            <a class="waves-effect waves-light btn" id="pdf-prev2"><i class="material-icons">keyboard_arrow_left</i></a>
-                            <a class="waves-effect waves-light btn" id="pdf-next2"><i class="material-icons">keyboard_arrow_right</i></a>
-                          </div>
-                          <div id="page-count-container">Página <span id="pdf-current-page2"></span> de <span id="pdf-total-pages2"></span></div>
-                        </div>
-                        <img class="text" src="{% static 'img/QRCode.png' %}" id="texto"/>
-                        <div class="overflow" >
-                          <div id="container1" class=".cropper-hidden">
-                            <!--<div class="ball blue">sdsa</div>-->
-                          </div>
-                          <br>
-                          <br>
-                        </div>          
-                        </div>
-                        <canvas id="pdf-canvas2" width="500"></canvas>
-                        <div id="page-loader2">Cargando página ...</div>
-                  </div>
-                  {{ form.pos_x }}
-                  {{ form.pos_y }}
-                  {{ form.pag }}
-            </div>
-            
-            <div class="center">
-                <button type="submit" class="btn waves-effect blue darken-1">Cargar Archivo</button>
-            </div>
-            </div>
-        </form>
-        {% endif %}
-    </div>
-{% endblock %}
Index: eventos/templates/evento.update.participantes.html
===================================================================
--- eventos/templates/evento.update.participantes.html	(revision a28e55bd4a221fde474ae56e6d9b116552eeb431)
+++ 	(revision )
@@ -1,112 +1,0 @@
-{% extends 'base.template.html' %}
-{% load staticfiles %}
-{% block title %}Actualizar Evento{% endblock title %}
-{% block extraJs %}
-    <script src="{% static 'js/formset.js' %}"></script>
-    <script type="text/javascript">
-    $(function() {
-        $('#id_orders_table tbody tr').formset({
-            // For inline formsets, be sure to set the prefix, as the default prefix
-            // ('form') isn't correct.
-            // Django appears to generate the prefix from the lowercase plural
-            // name of the related model, with camel-case converted to underscores.
-            //prefix: 'form',
-            addText:'<i class="tiny material-icons prefix">add_circle_outline</i>Agregar Participante',
-            deleteText:'<i class="material-icons">delete_forever</i>',
-        })
-
-          $('.datepicker').pickadate({
-            selectMonths: true, // Creates a dropdown to control month
-            selectYears: 15, // Creates a dropdown of 15 years to control year,
-            today: 'Today',
-            clear: 'Clear',
-            close: 'Ok',
-            closeOnSelect: false, // Close upon selecting a date,
-            format: "dd/mm/yyyy",
-            // The title label to use for the month nav buttons
-            labelMonthNext: 'Mes siguiente',
-            labelMonthPrev: 'Mes anterior',
-
-            // The title label to use for the dropdown selectors
-            labelMonthSelect: 'Selecciona un mes',
-            labelYearSelect: 'Selecciona un año',
-
-            // Months and weekdays
-            monthsFull: [ 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre' ],
-            monthsShort: [ 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic' ],
-            weekdaysFull: [ 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado' ],
-            weekdaysShort: [ 'Dom', 'Lun', 'Mar', 'Mie', 'Jue', 'Vie', 'Sab' ],
-
-            // Materialize modified
-            weekdaysLetter: [ 'D', 'L', 'M', 'Mi', 'J', 'V', 'S' ],
-
-            // Today and clear
-            today: 'Hoy',
-            clear: 'Limpiar',
-            close: 'Ok',
-          });
-    })
-    </script>
-{%endblock%}
-
-{% block content %}
-    <div class="content">
-        <h5 class="center">Datos del Evento</h5><hr/><br>
-        <form id="form" method="post" enctype="multipart/form-data">
-            {% csrf_token %}
-            <div class="center">
-                <div class="input-field {% if form.nombre_evento.errors %}invalid{% endif %}">
-                    {{ form.nombre_evento }}
-                    <label for="icon_prefix {{ form.nombre_evento.auto_id }}">Nombre</label>
-                    {% include 'base.forms.errors.html' with form_errors=form.nombre_evento.errors col_title_error='col s2' col_msg_error='col s10' %}
-                </div>
-                
-                <div class="input-field {% if form.fecha.errors %}invalid{% endif %}">
-                    <i class="tiny material-icons prefix">perm_contact_calendar</i>
-                    {{ form.fecha }}
-                    <label for="icon_prefix {{ form.fecha.auto_id }}">Fecha</label>
-                    {% include 'base.forms.errors.html' with form_errors=form.fecha.errors col_title_error='col s2' col_msg_error='col s10' %}
-                </div>
-            </div>
-            <div class="center">
-            <h5>Agregar Participantes</h5><hr/><br>
-            <table class="striped" id="id_orders_table">
-                <thead>
-                  <tr>
-                      <th scope="col">Nombres</th>
-                      <th scope="col">Apellidos</th>
-                      <th scope="col">Pasaporte</th>
-                      <th scope="col">Correo</th>
-                      <th scope="col">Opcion</th>
-                  </tr>
-                </thead>
-                <tbody>
-                {{ form2.management_form }}
-                {% for form in form2  %}
-                <tr id="{{ form.prefix }}-row">
-                {{ form.id }}
-                  <td>
-                  {{form.nombres}}
-                  </td>
-                  <td>
-                  {{form.apellidos}}
-                  </td>
-                  <td>
-                  {{form.pasaporte}}
-                  </td>
-                  <td>
-                  {{form.correo}}
-                  </td>
-                  <td></td>
-                </tr>
-                {% endfor %}
-                </tbody>
-            </table>
-            </div>
-            <div class="center">
-                <button type="submit" class="btn waves-effect blue darken-1">Actualizar Evento</button>
-            </div>
-            </div>
-        </form>
-    </div>
-{% endblock %}
Index: eventos/templates/register.event.html
===================================================================
--- eventos/templates/register.event.html	(revision e060c847f14575bba5d61e536ca2fb3e5eeaac08)
+++ 	(revision )
@@ -1,161 +1,0 @@
-{% extends 'base.template.html' %}
-{% load staticfiles %}
-{% block title %}Registrar Evento{% endblock title %}
-{% block extraJs %}
-    <script src="{% static 'js/jquery/jquery-ui.js' %}"></script>
-    <script src="{% static 'js/formset.js' %}"></script>
-    <script src="{% static 'js/pdf.js' %}"></script>
-    <script src="{% static 'js/pdf.worker.js' %}"></script>
-    <script src="{% static 'js/draggable.js' %}"></script>
-    <!-- Coordenadas PDF-->
-    <script src="{% static 'js/DraggableSortable.js' %}"></script>
-    <script src="{% static 'js/docsDraggable.js' %}"></script>
-    <script type="text/javascript">
-    $(function() {
-        $('#id_orders_table tbody tr').formset({
-            // For inline formsets, be sure to set the prefix, as the default prefix
-            // ('form') isn't correct.
-            // Django appears to generate the prefix from the lowercase plural
-            // name of the related model, with camel-case converted to underscores.
-            prefix: 'form',
-            addText:'<i class="tiny material-icons prefix">add_circle_outline</i>Agregar Participante',
-            deleteText:'<i class="material-icons">delete_forever</i>',
-        })
-
-          $('.datepicker').pickadate({
-            selectMonths: true, // Creates a dropdown to control month
-            selectYears: 15, // Creates a dropdown of 15 years to control year,
-            today: 'Today',
-            clear: 'Clear',
-            close: 'Ok',
-            closeOnSelect: false, // Close upon selecting a date,
-            format: "dd/mm/yyyy",
-            // The title label to use for the month nav buttons
-            labelMonthNext: 'Mes siguiente',
-            labelMonthPrev: 'Mes anterior',
-
-            // The title label to use for the dropdown selectors
-            labelMonthSelect: 'Selecciona un mes',
-            labelYearSelect: 'Selecciona un año',
-
-            // Months and weekdays
-            monthsFull: [ 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre' ],
-            monthsShort: [ 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic' ],
-            weekdaysFull: [ 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado' ],
-            weekdaysShort: [ 'Dom', 'Lun', 'Mar', 'Mie', 'Jue', 'Vie', 'Sab' ],
-
-            // Materialize modified
-            weekdaysLetter: [ 'D', 'L', 'M', 'Mi', 'J', 'V', 'S' ],
-
-            // Today and clear
-            today: 'Hoy',
-            clear: 'Limpiar',
-            close: 'Ok',
-          });
-    })
-    </script>
-{%endblock%}
-
-{% block content %}
-    <div class="content">
-        <h5 class="center">Datos del Evento</h5><hr/><br>
-        <form id="form" method="post" enctype="multipart/form-data">
-            {% csrf_token %}
-            <div class="center">
-                <div class="input-field {% if form.nombre_evento.errors %}invalid{% endif %}">
-                    {{ form.nombre_evento }}
-                    <label for="icon_prefix {{ form.nombre_evento.auto_id }}">Nombre</label>
-                    {% include 'base.forms.errors.html' with form_errors=form.nombre_evento.errors col_title_error='col s2' col_msg_error='col s10' %}
-                </div>
-                
-                <div class="input-field {% if form.fecha.errors %}invalid{% endif %}">
-                    <i class="tiny material-icons prefix">perm_contact_calendar</i>
-                    {{ form.fecha }}
-                    <label for="icon_prefix {{ form.fecha.auto_id }}">Fecha</label>
-                    {% include 'base.forms.errors.html' with form_errors=form.fecha.errors col_title_error='col s2' col_msg_error='col s10' %}
-                </div>
-    
-                <div class="file-field input-field {% if form.archivo.errors %}invalid{% endif %}">
-                    
-                    <div class="btn">
-                    <span for="icon_prefix {{ form.archivo.auto_id }}">Archivo</span>
-                        <input type="file" name="file" id="file" accept="application/pdf">
-                    </div>
-                    <div class="file-path-wrapper">
-                        {{ form.archivo }}
-                    </div>
-                    {% include 'base.forms.errors.html' with form_errors=form.archivo.errors col_title_error='col s2' col_msg_error='col s10' %}
-                    
-                </div>
-                <h5 class="blue-text">Luego de cargar un documento debe colocar el código Qr en la ubicación y página de su preferencia.</h5>
-            
-            
-            </div>
-            <div class="col s8 m2 offset-s2">
-            <div id="pdf-main-container" style="display:none;"><center><h5>Configurar Posicion de la Firma</h5></center> 
-                  <div id="pdf-loader2">Cargando documento ...</div>
-                  <div id="pdf-contents2">
-                    <div id="pdf-meta2">
-                      <div id="pdf-buttons2">
-                        <a class="waves-effect waves-light btn" id="pdf-prev2"><i class="material-icons">keyboard_arrow_left</i></a>
-                        <a class="waves-effect waves-light btn" id="pdf-next2"><i class="material-icons">keyboard_arrow_right</i></a>
-                      </div>
-                      <div id="page-count-container">Página <span id="pdf-current-page2"></span> de <span id="pdf-total-pages2"></span></div>
-                    </div>
-                    <img class="text" src="{% static 'img/QRCode.png' %}" id="texto"/>
-                    <div class="overflow" >
-                      <div id="container1" class=".cropper-hidden">
-                        <!--<div class="ball blue">sdsa</div>-->
-                      </div>
-                      <br>
-                      <br>
-                    </div>          
-                    </div>
-                    <canvas id="pdf-canvas2" width="500"></canvas>
-                    <div id="page-loader2">Cargando página ...</div>
-              </div>
-              {{ form.pos_x }}
-              {{ form.pos_y }}
-              {{ form.pag }}
-            </div>
-            <div class="center">
-            <h5>Datos de los Participantes</h5><hr/><br>
-            <table class="striped" id="id_orders_table">
-                <thead>
-                  <tr>
-                      <th scope="col">Nombres</th>
-                      <th scope="col">Apellidos</th>
-                      <th scope="col">Pasaporte</th>
-                      <th scope="col">Correo</th>
-                      <th scope="col">Opcion</th>
-                  </tr>
-                </thead>
-                <tbody>
-                {{ form2.management_form }}
-                {% for form in form2  %}
-                <tr id="{{ form1.prefix }}-row">
-                  <td>
-                  {{form.nombres}}
-                  </td>
-                  <td>
-                  {{form.apellidos}}
-                  </td>
-                  <td>
-                  {{form.pasaporte}}
-                  </td>
-                  <td>
-                  {{form.correo}}
-                  </td>
-                  <td></td>
-                </tr>
-                {% endfor %}
-                </tbody>
-            </table>
-            </div>
-            <div class="center">
-                <button type="submit" class="btn waves-effect blue darken-1">Registrar</button>
-            </div>
-            </div>
-        </form>
-    </div>
-{% endblock %}
Index: eventos/urls.py
===================================================================
--- eventos/urls.py	(revision 9c25cd29dceac541602bd01aca64c4cfa139e3fd)
+++ 	(revision )
@@ -1,24 +1,0 @@
-# -*- coding: utf-8 -*-
-from django.conf.urls import url
-
-from .views import *
-
-urlpatterns = [
-    # Url Access Super Admin
-    # Crear y asignar participantes a eventos
-    url(r'^crear-eventos/$', RegisterEvent.as_view(), name='create_events'),
-    #Url Access all Users
-    url(r'^lista-eventos/$', ListEvent.as_view(), name='list_events'),
-    url(r'^firmar-evento/(?P<pk>\d+)$', SignEvent.as_view(),
-        name='firma_events'),
-    url(r'^detail-evento/(?P<pk>\d+)$', DetailEvent.as_view(),
-        name='detail_event'),
-    url(r'^comprobar-evento/(?P<event_id>\d+)$', EventoProcesado.as_view(),
-        name='comprobar_evento'),
-    url(r'^comprobar-evento/$', EventoProcesado.as_view(),
-        name='comprobar_evento_nid'),
-    url(r'^actualizar-evento/(?P<event_id>\d+)$', UpdateFileEvent.as_view(),
-        name='update_evento'),
-    url(r'^actualizar-evento-participantes/(?P<pk>[\w-]+)$', UpdateEventView.as_view(),
-        name='update_evento_participante'),
-]
Index: eventos/views.py
===================================================================
--- eventos/views.py	(revision a28e55bd4a221fde474ae56e6d9b116552eeb431)
+++ eventos/views.py	(revision bf475917c09d88f08785ab64628b3b984facb248)
@@ -1,487 +1,3 @@
-# -*- encoding: utf-8 -*-
+from django.shortcuts import render
 
-import os
-import requests
-from django.conf import settings
-from django.contrib import messages
-from django.contrib.auth.mixins import LoginRequiredMixin
-from django.core.files.base import ContentFile
-from django.core.files.storage import default_storage
-from django.core.urlresolvers import reverse_lazy
-from django.http import JsonResponse
-from django.utils.decorators import method_decorator
-from django.views.decorators.csrf import csrf_exempt
-from django.shortcuts import (
-    redirect
-)
-from django.views import View
-from django.views.generic import (
-    ListView, FormView
-)
-from django.views.generic.edit import UpdateView
-from django.views.generic.detail import DetailView
-
-from multi_form_view import MultiModelFormView
-
-from .forms import *
-from participantes.forms import (
-    FormsetParticipanteEvento
-)
-from .models import Evento
-from participantes.models import (
-    Participante, ParticipanteEvento
-)
-
-
-def handle_uploaded_file(file, name):
-    with open('%s/%s' % (settings.TMP, name), 'wb+') as destination:
-        for chunk in file.chunks():
-            destination.write(chunk)
-
-
-class RegisterEvent(LoginRequiredMixin, FormView):
-    """!
-    Muestra el formulario de registro de usuarios
-
-    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 20-11-2017
-    @version 1.0.0
-    """
-
-    template_name = "register.event.html"
-    form_class = EventoForm
-    form_participante = FormsetParticipanteEvento
-    success_url = reverse_lazy('base:inicio')
-
-    def get_context_data(self, **kwargs):
-        context = super(RegisterEvent, self).get_context_data(**kwargs)
-        if 'form' not in context:
-            context['form'] = self.form_class()
-        if 'form2' not in context:
-            context['form2'] = self.form_participante(queryset=Participante.objects.none())
-        return context
-
-    def post(self, request, *args, **kwargs):
-        """!
-        Metodo que permite registra y agregar participantes al evento
-
-        @author Leonel P. Hernandez M (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 20-11-2017
-        @param request <b>{object}</b> Objeto que contiene la petición
-        @return Retorna un mensaje de error o exito al success
-        """
-        nuevo_participante = self.form_participante(request.POST)
-        consulta_api = None
-        if len(request.FILES)>0:
-            file =  request.FILES['file']
-            handle_uploaded_file(request.FILES['file'], file)
-            ruta = '%s/%s' % (settings.TMP, file)
-            file = open(ruta, 'rb')
-            files = {'file': file}
-            try:
-                r = requests.post('https://murachi.cenditel.gob.ve/Murachi/0.1/archivos/cargar', verify=False, headers={'Authorization': 'Basic YWRtaW46YWRtaW4='}, files=files)
-                consulta_api = r.json()['fileId']
-                # elimina el archivo si fue creado en la carpeta tmp
-                file.close()
-                os.unlink(ruta)
-            except Exception as e:
-                print (e)
-                file.close()
-                os.unlink(ruta)
-                messages.error(self.request, "Error al conectar al servidor y subir\
-                                              el archivo a la api Murachi")
-                return redirect(self.success_url)
-        try:
-
-            if self.form_class(request.POST).is_valid() and nuevo_participante.is_valid():
-                nuevo_evento = self.form_class(request.POST, request.FILES).save(commit=False)
-                nuevo_evento.serial = consulta_api
-
-                for form in nuevo_participante:
-                    instance = form.save(commit=False)
-                    if instance.nombres == '' or instance.apellidos == '' or instance.pasaporte == '':
-                        messages.error(self.request, "Ninguno de los campos del\
-                                                      participante puede estar\
-                                                      vacio excepto el correo")
-                        return redirect(self.success_url)
-                nuevo_evento.save()
-                # Control para guardar y asignar participantes al evento
-                for form in nuevo_participante:
-                    if form.cleaned_data.get('DELETE') and form.instance.pk:
-                        form.instance.delete()
-                    else:
-                        instance = form.save(commit=False)
-                        parametros = {
-                                        'nombres': instance.nombres,
-                                        'apellidos': instance.apellidos,
-                                        'correo': instance.correo
-                                        }
-                        nuevo_participante, create = Participante.objects.update_or_create(pasaporte=instance.pasaporte, defaults=parametros)
-                        asigna_evento = ParticipanteEvento(
-                                        fk_participante=nuevo_participante,
-                                        fk_evento=nuevo_evento)
-                        asigna_evento.save()
-                messages.success(self.request, "El usuario %s, ha creado con exito,\
-                                            un nuevo evento %s" %
-                                 (str(self.request.user),
-                                  str(nuevo_evento)))
-            else:
-                messages.error(self.request, "Existe un error en el\
-                                              Formualario %s %s" %
-                               (self.form_class(request.POST).errors,
-                                self.form_participante(request.POST).errors))
-        except Exception as e:
-            print (e)
-            messages.error(self.request, "Esta intentando realizar una\
-                                          acción incorrecta")
-
-        return redirect(self.success_url)
-
-
-class ListEvent(ListView):
-    """!
-    Muestra el listado de eventos
-
-    @author Rodrigo Boet (rboet at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 20-11-2017
-    @version 1.0.0
-    """
-    model = Evento
-    template_name = "evento.list.html"
-    paginate_by = 5
-
-
-class SignEvent(FormView):
-    """!
-    Muestra el formulario para buscar y luego firmar documento
-
-    @author Rodrigo Boet (rboet at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 20-11-2017
-    @version 1.0.0
-    """
-    form_class = FirmaEventoForm
-    template_name = "evento.firma.html"
-
-    def get_context_data(self, **kwargs):
-        """!
-        Metodo que permite cargar de nuevo valores en los datos de contexto de la vista
-
-        @author Rodrigo Boet (rboet at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 20-11-2017
-        @param self <b>{object}</b> Objeto que instancia la clase
-        @param kwargs <b>{object}</b> Objeto que contiene los datos de contexto
-        @return Retorna los datos de contexto
-        """
-        kwargs['nombre_evento'] = Evento.objects.get(pk=int(self.kwargs['pk']))
-        return super(SignEvent, self).get_context_data(**kwargs)
-
-
-class DetailEvent(DetailView):
-    """!
-    Muestra el detalle del evento
-
-    @author Rodrigo Boet (rboet at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 20-11-2017
-    @version 1.0.0
-    """
-    model = Evento
-    template_name = "evento.detail.html"
-
-    def get_context_data(self, **kwargs):
-        """!
-        Metodo que permite cargar de nuevo valores en los datos de contexto de la vista
-
-        @author Rodrigo Boet (rboet at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 20-11-2017
-        @param self <b>{object}</b> Objeto que instancia la clase
-        @param kwargs <b>{object}</b> Objeto que contiene los datos de contexto
-        @return Retorna los datos de contexto
-        """
-        evento = int(self.kwargs['pk'])
-        context = super(DetailEvent, self).get_context_data(**kwargs)
-        try:
-            participante_evento = ParticipanteEvento.objects.select_related().filter(fk_evento=evento)
-            falta_porfirma = participante_evento.filter(firma=False).count()
-        except Exception as e:
-            print(e)
-            participante_evento = None
-            falta_porfirma = None
-        context['participantes'] = participante_evento
-        context['num_firma'] = falta_porfirma
-        return context
-
-
-@method_decorator(csrf_exempt, name='dispatch')
-class EventoProcesado(View):
-    """!
-    Clase que permite consultar si el evento se encuentra disponible para firmar
-
-    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 27-11-2017
-    @version 1.0.0
-    """
-    model = Evento
-
-    def get(self, request, event_id):
-        """!
-        Metodo que permite verificar si el documento esta procesado
-
-        @author Leonel P. Hernandez M (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 27-11-2017
-        @param request <b>{object}</b> Objeto que contiene la petición
-        @return Retorna un Json con la respuesta
-        """
-        mensaje = ''
-        procesando = False
-        if event_id is not None:
-            try:
-                evento_pro = self.model.objects.get(pk=event_id)
-            except:
-                print(e)
-                procesando = True
-                mensaje += 'No se encuentra un evento con ese serial'
-        else:
-            evento_pro = None
-            procesando = True
-            mensaje += 'No puedes enviar un evento vacio'
-
-        if evento_pro.procesando:
-            procesando = True
-            mensaje += 'No puedes firmar el documento, en este momento\
-                        se encuentra ocupado por otro Usuario'
-        else:
-            procesando = False
-            mensaje += 'Puedes Firmar el Documento'
-        data = {'validate': procesando, 'mensaje': mensaje}
-        return JsonResponse(data, safe=False)
-
-    def post(self, request, event_id):
-        """!
-        Metodo que permite cambiar el valor procesado al  evento
-
-        @author Leonel P. Hernandez M (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 27-11-2017
-        @param request <b>{object}</b> Objeto que contiene la petición
-        @return Retorna un Json con la respuesta
-        """
-        if event_id is not None:
-            try:
-                evento = self.model.objects.get(pk=event_id)
-                evento.procesando = not evento.procesando
-                evento.save()
-                validado = True
-            except:
-                print(e)
-                validado = False
-
-        return JsonResponse(validado, safe=False)
-
-
-class UpdateFileEvent(LoginRequiredMixin, FormView):
-    """!
-    Clase que permite actualizar subir un archivo a un evento que no se haya cargado
-
-    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 27-11-2017
-    @version 1.0.0
-    """
-    model = Evento
-    form_class = UpdateFileEventoForm
-    template_name = 'evento.update.html'
-    success_url = reverse_lazy('events:list_events')
-
-    def get_context_data(self, **kwargs):
-        """!
-        Metodo que permite cargar de nuevo valores en los datos de contexto de la vista
-
-        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 27-11-2017
-        @param self <b>{object}</b> Objeto que instancia la clase
-        @param kwargs <b>{object}</b> Objeto que contiene los datos de contexto
-        @return Retorna los datos de contexto
-        """
-        evento = int(self.kwargs['event_id'])
-        context = super(UpdateFileEvent, self).get_context_data(**kwargs)
-        try:
-            evento = self.model.objects.select_related().get(pk=evento)
-        except Exception as e:
-            print(e)
-            evento = None
-        firma = ParticipanteEvento.objects.filter(fk_evento=evento, firma=True).count()
-        if firma >= 1:
-            valida = True
-        else:
-            valida = False
-
-        context['object'] = evento
-        context['valida'] = valida
-        return context
-
-    def form_valid(self, form):
-        """!
-        Metodo que permite validar el formulario y agregar archivo al evento
-
-        @author Leonel P. Hernandez M (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 27-11-2017
-        @param request <b>{object}</b> Objeto que contiene la petición
-        @return Retorna un mensaje de error o exito al success
-        """
-        file =  self.request.FILES['file']
-        posx = form.cleaned_data['pos_x']
-        posy = form.cleaned_data['pos_y']
-        pag = form.cleaned_data['pag']
-        consulta_api = None
-        try:
-            event = Evento.objects.get(pk=int(self.kwargs['event_id']))
-        except Exception as e:
-            print(e)
-            messages.error(self.request, "Error, no se encuentra registrado\
-                                          esté evento")
-            return redirect(self.success_url)
-
-        handle_uploaded_file(self.request.FILES['file'], file)
-        ruta = '%s/%s' % (settings.TMP, file)
-        file = open(ruta, 'rb')
-        files = {'file': file}
-        try:
-            r = requests.post('https://murachi.cenditel.gob.ve/Murachi/0.1/archivos/cargar', verify=False, headers={'Authorization': 'Basic YWRtaW46YWRtaW4='}, files=files)
-            consulta_api = r.json()['fileId']
-            # elimina el archivo si fue creado en la carpeta tmp
-            file.close()
-            os.unlink(ruta)
-        except Exception as e:
-            print (e)
-            file.close()
-            os.unlink(ruta)
-            messages.error(self.request, "Error al conectar al servidor y subir\
-                                          el archivo a la api Murachi")
-            return redirect(self.success_url)
-
-        if event is not None and consulta_api is not None:
-            event.serial = consulta_api
-            event.pos_x = posx
-            event.pos_y = posy
-            event.pag = pag
-            event.save()
-            messages.success(self.request, "El usuario %s, ha actualizado con exito,\
-                                            el evento %s" %
-                                 (str(self.request.user),
-                                  str(event)))
-        else:
-            messages.error(self.request, "Error al actualizar, debes llenar\
-                                          todos los campos, incluyendo la\
-                                          configuración de la firma")
-        return redirect(self.success_url)
-
-
-class UpdateEventView(LoginRequiredMixin, UpdateView):
-    """!
-    Clase que permite actualizar los datos de un evento
-
-    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-    @copyright <a href='https://www.gnu.org/licenses/gpl-3.0.en.html'>GNU Public License versión 3 (GPLv3)</a>
-    @date 28-11-2017
-    @version 1.0.0
-    """
-    model = Evento
-    form_class = UpdateEventoForm
-    template_name = 'evento.update.participantes.html'
-    success_url = reverse_lazy('events:list_events')
-    form_participante = FormsetParticipanteEvento
-
-    def get_context_data(self, **kwargs):
-        """!
-        Metodo que permite cargar de nuevo valores en los datos de contexto de la vista
-
-        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 28-11-2017
-        @param self <b>{object}</b> Objeto que instancia la clase
-        @param kwargs <b>{object}</b> Objeto que contiene los datos de contexto
-        @return Retorna los datos de contexto
-        """
-        context = super(UpdateEventView, self).get_context_data(**kwargs)
-        if 'form' not in context:
-            context['form'] = self.form_class()
-        if 'form2' not in context:
-            evento = int(self.kwargs['pk'])
-            participante_evento = Participante.objects.filter(participanteevento__fk_evento=evento)
-            context['form2'] = self.form_participante(queryset=participante_evento)
-        return context
-
-    def post(self, request, *args, **kwargs):
-        """!
-        Metodo que permite actualizar y agregar mas participantes al evento
-
-        @author Leonel P. Hernandez M (lhernandez at cenditel.gob.ve)
-        @copyright GNU/GPLv3
-        @date 29-11-2017
-        @param request <b>{object}</b> Objeto que contiene la petición
-        @return Retorna un mensaje de error o exito al success
-        """
-        evento = int(self.kwargs['pk'])
-        update_participante = self.form_participante(request.POST)
-        try:
-            if self.form_class(request.POST).is_valid() and update_participante.is_valid():
-                evento = self.model.objects.get(pk=evento)
-                update_evento = self.form_class(request.POST, instance=evento).save(commit=False)
-                for form in update_participante:
-                    instance = form.save(commit=False)
-                    if instance.nombres == '' or instance.apellidos == '' or instance.pasaporte == '':
-                        messages.error(self.request, "Ninguno de los campos del\
-                                                      participante puede estar\
-                                                      vacio excepto el correo")
-                        return redirect(self.success_url)
-
-                update_evento.save()
-                # Control para guardar y asignar participantes al evento
-                lista_participantes = list(ParticipanteEvento.objects.filter(fk_evento=int(self.kwargs['pk']), firma=False).values('fk_participante__pasaporte'))
-
-                lista_comprobar = []
-                for valor in lista_participantes:
-                    lista_comprobar += valor.values()
-                for form in update_participante:
-                    if form.cleaned_data.get('DELETE') and form.instance.pk:
-                        form.instance.delete()
-                    else:
-                        instance = form.save(commit=False)
-
-                        parametros = {
-                                        'nombres': instance.nombres,
-                                        'apellidos': instance.apellidos,
-                                        'correo': instance.correo
-                                     }
-                        if instance.pasaporte in lista_comprobar:
-                            lista_comprobar.remove(instance.pasaporte)
-                        update_participante, create = Participante.objects.update_or_create(pasaporte=instance.pasaporte, defaults=parametros)
-                        parametro_update = {'fk_participante': update_participante}
-                        update_evento_participante, create_part_event = ParticipanteEvento.objects.update_or_create(fk_evento=update_evento, fk_participante__pasaporte=instance.pasaporte, defaults=parametro_update)
-                        update_evento_participante.save()
-                messages.success(request, "El usuario %s, actualizó el evento %s" % (str(self.request.user), str(update_evento)))
-                for valor in lista_comprobar:
-                    e = ParticipanteEvento.objects.get(fk_evento=update_evento, fk_participante__pasaporte=valor)
-                    e.delete()
-
-            else:
-                messages.error(self.request, "Existe un error en el\
-                                              Formualario %s %s" %
-                               (self.form_class(request.POST).errors,
-                                self.form_participante(request.POST).errors))
-        except Exception as e:
-            print(e)
-            messages.error(self.request, "Esta intentando realizar una\
-                                          acción incorrecta")
-        return redirect(self.success_url)
+# Create your views here.
