Conjunto de cambios a590488 en seguimiento_proyectos para sepai


Ignorar:
Fecha y hora:
02/06/2017 15:56:16 (hace 7 años)
Autor:
lhernandez <lhernandez@…>
Branches:
master, desarrollo
Children:
55778ac
Parents:
c016092
Mensaje:

Reomove pyc

Ubicación:
sepai
Ficheros:
11 editados

Leyenda

No modificado
Añadido
Eliminado
  • sepai/proyectos/admin.py

    r91ece48 ra590488  
    1515admin.site.register(Indicador)
    1616admin.site.register(ObjetivosNacional)
     17admin.site.register(TipoProyecto)
  • sepai/proyectos/migrations/0001_initial.py

    r4d1e7d5 ra590488  
    11# -*- coding: utf-8 -*-
    2 # Generated by Django 1.10 on 2017-05-25 12:48
     2# Generated by Django 1.10 on 2017-06-02 17:32
    33from __future__ import unicode_literals
    44
     5from django.conf import settings
    56import django.core.validators
    67from django.db import migrations, models
     
    1415    dependencies = [
    1516        ('utils', '0001_initial'),
     17        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    1618    ]
    1719
     
    113115        ),
    114116        migrations.CreateModel(
     117            name='Localizacion',
     118            fields=[
     119                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
     120                ('estado', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='utils.Estado')),
     121            ],
     122            options={
     123                'verbose_name': 'Localizacion',
     124                'verbose_name_plural': 'Localizaciones',
     125                'ordering': ('estado', 'municipio', 'parroquia'),
     126            },
     127        ),
     128        migrations.CreateModel(
     129            name='ObjetivosEspecificosProy',
     130            fields=[
     131                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
     132                ('objetivos_especificos', models.CharField(max_length=255)),
     133            ],
     134            options={
     135                'verbose_name': 'Objetivo Especifico',
     136                'verbose_name_plural': 'Objetivos Especificos',
     137                'ordering': ('objetivos_especificos',),
     138            },
     139        ),
     140        migrations.CreateModel(
    115141            name='ObjetivosEstrategico',
    116142            fields=[
     
    148174                ('codigo', models.CharField(max_length=15, unique=True)),
    149175                ('nombre', models.CharField(max_length=128)),
     176                ('descripcion', models.TextField(blank=True)),
     177                ('objetivo_general', models.CharField(max_length=128)),
    150178                ('justificacion', models.TextField(blank=True)),
    151                 ('objetivo_general', models.CharField(max_length=128)),
    152                 ('objetivos_especificos', models.CharField(max_length=255)),
    153                 ('monto_proyecto', models.DecimalField(decimal_places=2, max_digits=50)),
    154179                ('fecha_inicio', models.DateField()),
    155180                ('fecha_culminacion', models.DateField()),
    156                 ('activo', models.BooleanField(default=True)),
    157                 ('fk_alcance', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='proyectos.Alcance', verbose_name='Alcance')),
    158             ],
     181                ('plurianual', models.BooleanField(default=True)),
     182                ('monto_anho_anterior', models.DecimalField(decimal_places=2, max_digits=50, null=True)),
     183                ('monto_anho_proximo', models.DecimalField(decimal_places=2, max_digits=50, null=True)),
     184                ('monto_total', models.DecimalField(decimal_places=2, max_digits=50, null=True)),
     185                ('poan', models.BooleanField(default=True)),
     186                ('localidad', models.CharField(choices=[(1, 'Estado'), (2, 'Municipio'), (3, 'Parroquia')], max_length=1)),
     187                ('activo', models.BooleanField(default=True)),
     188            ],
     189            options={
     190                'verbose_name': 'Proyecto',
     191                'verbose_name_plural': 'Proyectos',
     192                'ordering': ('nombre',),
     193            },
     194        ),
     195        migrations.CreateModel(
     196            name='ResponsableGerente',
     197            fields=[
     198                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
     199                ('cedula', models.CharField(max_length=12, unique=True, verbose_name='Documento de identidad')),
     200                ('nombres', models.CharField(max_length=128)),
     201                ('apellidos', models.CharField(max_length=128)),
     202                ('correo', models.EmailField(max_length=75)),
     203                ('numero_telefono', models.CharField(max_length=11)),
     204                ('fk_documento', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='utils.TipoDocumento')),
     205                ('fk_proyecto', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='proyectos.Proyecto')),
     206            ],
     207            options={
     208                'verbose_name': 'Responsable Gerente',
     209                'verbose_name_plural': 'Responsables Gerentes',
     210                'ordering': ('cedula',),
     211            },
     212        ),
     213        migrations.CreateModel(
     214            name='ResponsableTecnico',
     215            fields=[
     216                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
     217                ('cedula', models.CharField(max_length=12, unique=True, verbose_name='Documento de identidad')),
     218                ('nombres', models.CharField(max_length=128)),
     219                ('apellidos', models.CharField(max_length=128)),
     220                ('correo', models.EmailField(max_length=75)),
     221                ('numero_telefono', models.CharField(max_length=11)),
     222                ('fk_documento', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='utils.TipoDocumento')),
     223                ('fk_proyecto', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='proyectos.Proyecto')),
     224            ],
     225            options={
     226                'verbose_name': 'Responsable Tecnico',
     227                'verbose_name_plural': 'Responsables Tecnicos',
     228                'ordering': ('cedula',),
     229            },
    159230        ),
    160231        migrations.CreateModel(
     
    185256        ),
    186257        migrations.CreateModel(
     258            name='TipoProyecto',
     259            fields=[
     260                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
     261                ('tipo_proyecto', models.CharField(max_length=97)),
     262                ('descripcion', models.TextField()),
     263            ],
     264            options={
     265                'verbose_name': 'Tipo de Proyecto',
     266                'verbose_name_plural': 'Tipos de Proyectos',
     267                'ordering': ('tipo_proyecto',),
     268            },
     269        ),
     270        migrations.CreateModel(
    187271            name='VinculacionPndes',
    188272            fields=[
     
    194278        migrations.AddField(
    195279            model_name='proyecto',
    196             name='fk_sector',
    197             field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='proyectos.Sector', verbose_name='Sector'),
     280            name='fk_tipo',
     281            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='proyectos.TipoProyecto', verbose_name='Tipo de Proyecto'),
     282        ),
     283        migrations.AddField(
     284            model_name='proyecto',
     285            name='fk_user',
     286            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
    198287        ),
    199288        migrations.AddField(
     
    203292        ),
    204293        migrations.AddField(
     294            model_name='objetivosespecificosproy',
     295            name='fk_proyecto',
     296            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='proyectos.Proyecto'),
     297        ),
     298        migrations.AddField(
     299            model_name='localizacion',
     300            name='fk_proyecto',
     301            field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='proyectos.Proyecto'),
     302        ),
     303        migrations.AddField(
     304            model_name='localizacion',
     305            name='municipio',
     306            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='utils.Municipio'),
     307        ),
     308        migrations.AddField(
     309            model_name='localizacion',
     310            name='parroquia',
     311            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='utils.Parroquia'),
     312        ),
     313        migrations.AddField(
    205314            model_name='avancesproyecto',
    206315            name='fk_proyecto',
  • sepai/proyectos/models.py

    r2e5b1d0 ra590488  
    22from django.core.validators import MaxValueValidator
    33from adaptor.model import CsvDbModel, CsvModel
     4from django.contrib.auth.models import User
    45from adaptor.fields import *
    5 from utils.models import Parroquia
     6
     7from utils.models import (
     8    Estado, Municipio, Parroquia,
     9    TipoDocumento
     10    )
     11from .constantes import CHOICE_LOCALIDAD
    612
    713
     
    161167        return self.nivel + '-' + self.objetivo
    162168
    163     def __unicode__(self):
     169    def __str__(self):
    164170        return self.nivel
    165171
    166172
     173class TipoProyecto(models.Model):
     174    """!
     175    Clase que contiene los datos para el tipo de proyecto
     176
     177    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     178    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     179    @date 02-06-2017
     180    @version 1.0.0
     181    """
     182    tipo_proyecto = models.CharField(max_length=97)
     183    descripcion = models.TextField()
     184
     185    class Meta:
     186        """!
     187        Clase que construye los meta datos del modelo
     188
     189        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     190        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     191        @date 02-06-2017
     192        @version 1.0.0
     193        """
     194        ordering = ('tipo_proyecto',)
     195        verbose_name = 'Tipo de Proyecto'
     196        verbose_name_plural = 'Tipos de Proyectos'
     197
     198    def __str__(self):
     199        return self.tipo_proyecto
     200
     201
    167202class Proyecto(models.Model):
    168203    """!
     
    174209    @version 1.0.0
    175210    """
    176     fk_alcance = models.ForeignKey(Alcance, verbose_name="Alcance")
    177     fk_sector = models.ForeignKey(Sector, verbose_name="Sector")
     211    fk_tipo = models.ForeignKey(TipoProyecto, verbose_name="Tipo de Proyecto")
     212    fk_user = models.ForeignKey(User)
    178213    codigo = models.CharField(max_length=15, unique=True)
    179214    nombre = models.CharField(max_length=128)
     215    descripcion = models.TextField(blank=True)
     216    objetivo_general = models.CharField(max_length=128)
    180217    justificacion = models.TextField(blank=True)
    181     objetivo_general = models.CharField(max_length=128)
    182     objetivos_especificos = models.CharField(max_length=255)
    183     monto_proyecto = models.DecimalField(max_digits=50, decimal_places=2)
    184218    fecha_inicio = models.DateField(auto_now=False)
    185219    fecha_culminacion = models.DateField(auto_now=False)
    186     activo = models.BooleanField(default=True)
     220    plurianual = models.BooleanField(default=True)
     221    monto_anho_anterior = models.DecimalField(max_digits=50, decimal_places=2, null=True)
     222    monto_anho_proximo = models.DecimalField(max_digits=50, decimal_places=2, null=True)
     223    monto_total = models.DecimalField(max_digits=50, decimal_places=2, null=True)
     224    poan = models.BooleanField(default=True)
     225    localidad = models.CharField(max_length=1, choices=CHOICE_LOCALIDAD)
     226    activo = models.BooleanField(default=True)
     227
     228    class Meta:
     229        """!
     230        Clase que construye los meta datos del modelo
     231
     232        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     233        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     234        @date 02-06-2017
     235        @version 1.0.0
     236        """
     237        ordering = ('nombre',)
     238        verbose_name = 'Proyecto'
     239        verbose_name_plural = 'Proyectos'
    187240
    188241    def __str__(self):
     
    196249        """
    197250        return self.codigo
     251
     252
     253class ObjetivosEspecificosProy(models.Model):
     254    """!
     255    Clase que contiene el modelo de datos de los objetivos especificos del proyecto
     256
     257    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     258    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     259    @date 02-06-2017
     260    @version 1.0.0
     261    """
     262    fk_proyecto = models.ForeignKey(Proyecto)
     263    objetivos_especificos = models.CharField(max_length=255)
     264
     265    class Meta:
     266        """!
     267        Clase que construye los meta datos del modelo
     268
     269        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     270        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     271        @date 02-06-2017
     272        @version 1.0.0
     273        """
     274        ordering = ('objetivos_especificos',)
     275        verbose_name = 'Objetivo Especifico'
     276        verbose_name_plural = 'Objetivos Especificos'
     277
     278    def __str__(self):
     279
     280        return str(self.fk_proyecto)
     281
     282
     283class Localizacion(models.Model):
     284    """!
     285    Clase que contiene el modelo de datos para la localizacion del proyecto
     286
     287    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     288    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     289    @date 02-06-2017
     290    @version 1.0.0
     291    """
     292    fk_proyecto = models.OneToOneField(Proyecto)
     293    estado = models.ForeignKey(Estado, null=True)
     294    municipio = models.ForeignKey(Municipio, null=True)
     295    parroquia = models.ForeignKey(Parroquia, null=True)
     296
     297    class Meta:
     298        """!
     299        Clase que construye los meta datos del modelo
     300
     301        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     302        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     303        @date 02-06-2017
     304        @version 1.0.0
     305        """
     306        ordering = ('estado', 'municipio', 'parroquia')
     307        verbose_name = 'Localizacion'
     308        verbose_name_plural = 'Localizaciones'
     309
     310    def __str__(self):
     311
     312        return str(self.fk_proyecto)
     313
     314
     315class Responsable(models.Model):
     316    """!
     317    Clase que contiene el modelo de datos para el Responsable
     318
     319    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     320    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     321    @date 02-06-2017
     322    @version 1.0.0
     323    """
     324    fk_documento = models.ForeignKey(TipoDocumento)
     325    cedula = models.CharField(unique=True, max_length=12,
     326                                 verbose_name='Documento de identidad')
     327    nombres = models.CharField(max_length=128)
     328    apellidos = models.CharField(max_length=128)
     329    correo = models.EmailField(max_length=75)
     330    numero_telefono = models.CharField(max_length=11)
     331
     332    class Meta:
     333        """!
     334        Clase que construye los meta datos del modelo
     335
     336        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     337        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     338        @date 02-06-2017
     339        @version 1.0.0
     340        """
     341        ordering = ('cedula',)
     342        verbose_name = 'Responsable'
     343        verbose_name_plural = 'Responsables'
     344        abstract = True
     345
     346    def __str__(self):
     347
     348        return self.cedula
     349
     350
     351class ResponsableTecnico(Responsable):
     352    """!
     353    Clase que contiene el modelo de datos para el Responsable Tecnico
     354
     355    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     356    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     357    @date 02-06-2017
     358    @version 1.0.0
     359    """
     360    fk_proyecto = models.ForeignKey(Proyecto)
     361
     362    class Meta:
     363        """!
     364        Clase que construye los meta datos del modelo
     365
     366        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     367        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     368        @date 02-06-2017
     369        @version 1.0.0
     370        """
     371        ordering = ('cedula',)
     372        verbose_name = 'Responsable Tecnico'
     373        verbose_name_plural = 'Responsables Tecnicos'
     374
     375    def __str__(self):
     376
     377        return self.cedula
     378
     379
     380class ResponsableGerente(Responsable):
     381    """!
     382    Clase que contiene el modelo de datos para el Responsable Tecnico
     383
     384    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     385    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     386    @date 02-06-2017
     387    @version 1.0.0
     388    """
     389    fk_proyecto = models.ForeignKey(Proyecto)
     390
     391    class Meta:
     392        """!
     393        Clase que construye los meta datos del modelo
     394
     395        @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     396        @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     397        @date 02-06-2017
     398        @version 1.0.0
     399        """
     400        ordering = ('cedula',)
     401        verbose_name = 'Responsable Gerente'
     402        verbose_name_plural = 'Responsables Gerentes'
     403
     404    def __str__(self):
     405
     406        return self.cedula
     407
    198408
    199409class VinculacionPndes(models.Model):
  • sepai/proyectos/urls.py

    r943282e ra590488  
    1414    url(r'^listar-proyectos/$', ProjectsList.as_view(),
    1515        name="consultar_proyectos"),
    16     url(r'^crear-proyectos/$', ProyectoCreation.as_view(),
     16    url(r'^crear-proyectos/$', ProyectorRegiserView.as_view(),
    1717        name="crear_proyectos"),
    1818    url(r'^actualizar-proyectos/(?P<pk>\d+)/$', ProyectoUpdate.as_view(),
  • sepai/proyectos/views.py

    rc016092 ra590488  
    2828)
    2929from dal import autocomplete
     30from multi_form_view import MultiModelFormView
    3031
    3132from .utils import (
     
    3435)
    3536
    36 from .models import (
    37     Proyecto, SubProyecto, Actividad,
    38     Alcance,
    39     CargaMasivaObjetivosHistoricos, CargaMasivaObjetivosNacional,
    40     CargaMasivaObjetivosEstrategico, CargaMasivaObjetivosGeneral
    41 )
     37from .models import *
     38from .forms import *
    4239
    4340from utils.forms import (
     
    172169        except:
    173170            perfil = None
    174             pass
    175         print(perfil)
     171        try:
     172            proyectos = Proyecto.objects.all()
     173        except:
     174            proyectos = None
    176175        context = super(OptionsMangProjectsView, self).get_context_data(**kwargs)
    177176        context['userprofile'] = perfil
     177        context['proyectos'] = proyectos
    178178        return context
    179179
     
    196196
    197197
    198 class ProyectoCreation(LoginRequiredMixin, CreateView):
     198class ProyectorRegiserView(LoginRequeridoPerAuth, MultiModelFormView):
    199199    """!
    200200    Clase para crear los proyectos
     201
     202    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     203    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     204    @date 09-01-2017
     205    @version 1.0.0
     206    """
     207    template_name = 'proyectos/proyecto_form.html'
     208    model = Proyecto
     209    form_classes = {
     210      'proyecto' : FormularioRegProyecto,
     211    }
     212    success_url = reverse_lazy('projects:consultar_proyectos')
     213    record_id=None
     214    group_required = [u"Administradores", u"Usuarios Supervisores", u"Usuarios Enlace" ]
     215
     216    def get_context_data(self, **kwargs):
     217        """Use this to add extra context."""
     218        try:
     219            perfil = UserProfile.objects.select_related().get(fk_user=self.request.user.id)
     220        except:
     221            perfil = None
     222        try:
     223            proyectos = Proyecto.objects.all()
     224        except:
     225            proyectos = None
     226        context = super(ProyectorRegiserView, self).get_context_data(**kwargs)
     227        context['userprofile'] = perfil
     228        context['proyectos'] = proyectos
     229        return context
     230
     231
     232class ProyectoUpdate(UpdateView):
     233    """!
     234    Clase para editar o actualizar un proyecto
    201235
    202236    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     
    215249
    216250
    217 class ProyectoUpdate(UpdateView):
    218     """!
    219     Clase para editar o actualizar un proyecto
    220 
    221     @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
    222     @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
    223     @date 09-01-2017
    224     @version 1.0.0
    225     """
    226     model = Proyecto
    227     success_url = reverse_lazy('projects:consultar_proyectos')
    228     fields = [
    229                 'fk_alcance', 'fk_sector', 'codigo', 'nombre',
    230                 'justificacion', 'objetivo_general',
    231                 'objetivos_especificos', 'monto_proyecto', 'fecha_inicio',
    232                 'fecha_culminacion'
    233              ]
    234 
    235 
    236251class SubProjectsList(ListView):
    237252    """!
  • sepai/static/css/css_custom.css

    r943282e ra590488  
    257257}
    258258
     259.navbar-default .navbar-brand{
     260  color: #F4F4F4;
     261}
  • sepai/templates/proyectos/gestion_proyectos.html

    r943282e ra590488  
    11{% extends 'home.html' %}
    2 {% block titulo %}_-=SEPAI-Consultar Usuarios=-_{% endblock titulo %}
     2{% block titulo %}_-=SEPAI-Gestión de Proyectos=-_{% endblock titulo %}
    33{% block extra_constantes %}
    44{% load staticfiles %}
     
    99{% block extrajs %}
    1010<link rel="stylesheet" href="{% static 'css/checked_img.css' %}">
    11 <script src="{% static 'DataTables/media/js/jquery.dataTables.min.js' %}"></script>
    12 <script src="{% static 'users/user_listDataTable.js' %}" type="text/javascript"></script>
    13 <script src="{% static 'start/modals.js' %}"></script>
    1411{% endblock extrajs %}
    1512<div class="col-xs-12">
     
    2724                <div class="box-header">
    2825                    <i class="fa fa-cogs"></i>
    29                 <h3 class="box-title"> Opciones para la gestion de proyectos:</h3>
     26                <h3 class="box-title"> Opciones para la gestión de proyectos:</h3>
    3027                </div>
    3128                <div class="box-body pad table-responsive">
    3229                <div class="col-md-8 col-md-offset-3">
    3330                    <div class="col-md-3">
    34                         <a href="">
    35                         <img width="120" height="110" class="img-thumbnail" src="{% static 'iconos/gestion_proyectos/icono-1.png' %}"><p>Registar Proyectos</p></a>
     31                        <a href="{% url 'projects:crear_proyectos' %}">
     32                            <img width="120" height="110" class="img-thumbnail" src="{% static 'iconos/gestion_proyectos/icono-1.png' %}">
     33                            <p align="center">Registrar Proyectos</p>
     34                        </a>
    3635                    </div>
     36                    {% if proyectos %}
     37                        <div class="col-md-3">
     38                            <a href="">
     39                            <img width="120" height="110" class="img-thumbnail" src="{% static 'iconos/gestion_proyectos/icono-2.png' %}"><p align="center">Registrar Sub-Proyectos</p></a>
     40                        </div>
     41                    {% endif %}
    3742                    <div class="col-md-3">
    3843                        <a href="">
    39                         <img width="120" height="110" class="img-thumbnail" src="{% static 'iconos/gestion_proyectos/icono-2.png' %}"><p>Registrar Sub-Proyectos</p></a>
    40                     </div>
    41                     <div class="col-md-3">
    42                         <a href="">
    43                         <img width="120" height="110" class="img-thumbnail"src="{% static 'iconos/gestion_proyectos/icono-3.png' %}"><p>Mis Proyectos</p></a>
     44                        <img width="120" height="110" class="img-thumbnail"src="{% static 'iconos/gestion_proyectos/icono-3.png' %}"><p align="center">Mis Proyectos</p></a>
    4445                    </div>
    4546                </div>
  • sepai/templates/proyectos/proyecto_form.html

    r2e5b1d0 ra590488  
    1 {% extends 'starter.html' %}
    2 {% block titulo %}_-=SEPAI-Registrar Proyecto=-_{% endblock titulo %}
    3 {% block extras_css %}
     1{% extends 'home.html' %}
     2{% block titulo %}_-=SEPAI-Proyectos=-_{% endblock titulo %}
     3{% block extra_constantes %}
    44{% load staticfiles %}
    5   <link rel="stylesheet" href="{% static 'plugins/daterangepicker/daterangepicker.css' %}">
    6   <!-- bootstrap datepicker -->
    7   <link rel="stylesheet" href="{% static 'plugins/datepicker/datepicker3.css' %}">
    8   <!-- iCheck for checkboxes and radio inputs -->
    9   <link rel="stylesheet" href="{% static 'plugins/iCheck/all.css' %}">
    10   <!-- Bootstrap Color Picker -->
    11   <link rel="stylesheet" href="{% static 'plugins/colorpicker/bootstrap-colorpicker.min.css' %}">
    12   <!-- Bootstrap time Picker -->
    13   <link rel="stylesheet" href="{% static 'plugins/timepicker/bootstrap-timepicker.min.css' %}">
    14   <!-- Select2 -->
    15   <link rel="stylesheet" href="{% static 'plugins/select2/select2.min.css' %}">
    16   <!-- Theme style -->
    17   <link rel="stylesheet" href="{% static 'dist/css/AdminLTE.min.css' %}">
    18   <!-- AdminLTE Skins. Choose a skin from the css/skins
    19        folder instead of downloading all of them to reduce the load. -->
    20   <link rel="stylesheet" href="{% static 'dist/css/skins/_all-skins.min.css' %}">
    21 {% endblock extras_css %}
    22 {% block content_header %}
    23 <section class="content-header">
    24       <h1>
    25         Registrar proyecto
    26         <small>Por favor llenar el formulario</small>
    27       </h1>
    28       <ol class="breadcrumb">
    29         <li><a href="#"><i class="fa fa-dashboard"></i> {% block breadcrumbs %} Level {% endblock breadcrumbs %}</a></li>
    30         <li class="active">Here</li>
    31       </ol>
    32     </section>
    33 {% endblock content_header %}
    34 {% block activeproyecto %} class="treeview active" {% endblock activeproyecto %}
    35 {% block content_main %}
    36 <!-- SELECT2 EXAMPLE -->
    37       <div class="box box-default">
    38         <div class="box-header with-border">
    39           <h3 class="box-title">Select2</h3>
     5{% endblock extra_constantes %}
     6{% block extracss %}
     7{% endblock extracss %}
     8{% block extrajs %}
     9<link rel="stylesheet" href="{% static 'css/checked_img.css' %}">
     10{% endblock extrajs %}
     11{% block contenido-principal %}
     12<div class="row">
     13  <div class="col-md-3">
     14  {% block modals %}
     15      <!-- Modal  -->
     16      <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
     17            <div class="modal-dialog" role="document">
     18              <div class="modal-content">
     19                <div class="modal-header">
     20                  <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
     21                  <h4 class="modal-title" id="myModalLabel">Actualizar Perfil del Usuario</h4>
     22                </div>
     23                <div class="modal-body" id="modal-body">
     24                </div>
     25              </div>
     26            </div>
     27      </div>
     28    <!-- End Modal -->
     29{% endblock modals %}
     30    <div class="panel-lateral-izq">
     31      {% block menu-lateral %}
     32      <ul class="nav">
     33        <li>
     34          <h4 class="text-center">Bienvenido: {{ request.user.first_name }} {{ request.user.last_name }}<h4>
     35          <h5 class="text-center">{{ userprofile.fk_tipo_documento }} - {{ userprofile.id_perfil }}</h5>
     36        </li>
     37        <hr />
     38        <li>
     39          <a class="btn" href="{% url 'projects:crear_proyectos' %}"  id="datos">
     40              Datos Basicos
     41              <span class="glyphicon glyphicon-accion glyphicon-info-sign pull-left" aria-hidden="true"></span>
     42          </a>
     43        </li>
     44        <hr />
     45        <li>
     46          <a class="btn" href="#" id="caract">
     47              Caracterisiticas
     48              <span class="glyphicon glyphicon-accion glyphicon-sort-by-attributes-alt pull-left" aria-hidden="true"></span>
     49          </a>
     50        </li>
     51        <hr />
     52        <li>
     53          <a class="btn" href="#" id="indicador">
     54              Indicadores del Proyecto 
     55              <span class="glyphicon glyphicon-accion glyphicon-indent-right pull-left" aria-hidden="true"></span>
     56          </a>
     57        </li>
     58        <hr />
     59      </ul>
     60      {% endblock menu-lateral %}
     61    </div>
     62  </div>
     63  <div class="col-md-9">
     64    <div class="panel-sepai">
     65      {% block area-contenido %}
     66      <div id="gestion_proyectos">
     67        <section class="content-header">
     68          <h1>
     69            Registrar proyecto
     70            <small>Por favor llenar el formulario</small>
     71          </h1>
     72        </section>
     73        <div class="box box-default">
     74          <div class="box-header with-border">
     75            <h3 class="box-title">Formulario de Registro de Proyecto</h3>
    4076
    41           <div class="box-tools pull-right">
    42             <button type="button" class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
    43             <button type="button" class="btn btn-box-tool" data-widget="remove"><i class="fa fa-remove"></i></button>
     77            <div class="box-tools pull-right">
     78              <button type="button" class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
     79              <button type="button" class="btn btn-box-tool" data-widget="remove"><i class="fa fa-remove"></i></button>
     80            </div>
     81          </div>
     82          <div class="box-body">
     83          <ul class="nav nav-tabs" role="tablist">
     84            <li role="presentation" class="active" id="idents">
     85              <a href="#identificacion" aria-controls="identificacion" role="tab" data-toggle="tab">Identificacion del Proyecto</a>
     86            </li>
     87            <li role="presentation" id="respons">
     88              <a href="#responsable" aria-controls="responsable" role="tab" data-toggle="tab">Responsable del Proyecto</a>
     89            </li>
     90          </ul>
     91          <!-- Inicio Tab panes -->
     92          <form id="form_project" method="post">
     93          {% csrf_token %}
     94          <div class="tab-content">
     95         
     96            <div role="tabpanel" class="tab-pane active" id="identificacion">
     97              <h3>Identificacion del Proyecto</h3>
     98                  <div class="row">
     99                      <div class="col-md-6">
     100                        <div class="form-group">
     101                              {{ forms.proyecto.as_p }}
     102                       </div>
     103                        <!-- /.form-group -->
     104                      </div>
     105                      <!-- /.col -->
     106                    </div>
     107            </div>
     108            <div role="tabpanel" class="tab-pane" id="responsable">
     109              <h3>Responsable del Proyecto</h3>
     110               
     111            </div>
     112          <br>
     113          <button id="submit" type="submit" class="btn btn-primary btn-block btn-flat">Registrar</button>
     114          </div>
     115          </form>
     116          <!-- Fin Tab panel -->
     117          </div>
     118          <!-- /.box-body -->
     119          <div class="box-footer">
     120
    44121          </div>
    45122        </div>
    46         <!-- /.box-header -->
    47         <div class="box-body">
    48           <div class="row">
    49             <div class="col-md-6">
    50               <div class="form-group">
    51                 <form method="post">
    52                     {% csrf_token %}
    53                     {{ form.as_p }}
    54                         <input type="submit" value="Registrar" />
    55                 </form>
    56              </div>
    57               <!-- /.form-group -->
    58             </div>
    59             <!-- /.col -->
    60           </div>
    61           <!-- /.row -->
     123        <!-- /.box -->
    62124        </div>
    63         <!-- /.box-body -->
    64         <div class="box-footer">
    65 
    66         </div>
    67       </div>
    68       <!-- /.box -->
    69 
    70 {% endblock content_main %}
     125      {% endblock area-contenido %}
     126    </div>
     127  </div>
     128</div>
     129{% endblock contenido-principal %}
  • sepai/templates/users/register.html

    r943282e ra590488  
    7373          <div class="form-group has-feedback">
    7474            {{ forms.user.password2 }}
    75             <span class="glyphicon glyphicon-log-in form-control-feedback"></span>
     75            <span class="glyphicon glyphicon-lock form-control-feedback"></span>
    7676          </div>
    7777          <div class="row">
     
    118118        </div>
    119119        <div class="form-group has-feedback">
     120          {{ forms.user_perfil.fk_tipo_documento.label }}
    120121          {{ forms.user_perfil.fk_tipo_documento }}
    121           <span class="glyphicon glyphicon-list form-control-feedback"></span>
    122122        </div>
    123123        <div class="form-group has-feedback">
     
    126126        </div>
    127127        <div class="form-group has-feedback">
     128          {{ forms.user_perfil.fk_institucion.label }}
    128129          {{ forms.user_perfil.fk_institucion }}
    129           <span class="glyphicon glyphicon-list form-control-feedback"></span>
    130130        </div>
    131131        <div class="form-group has-feedback">
     132          {{ forms.user_perfil.fk_cargo.label }}
    132133          {{ forms.user_perfil.fk_cargo }}
    133           <span class="glyphicon glyphicon-list form-control-feedback"></span>
    134134        </div>
    135135    </div>
  • sepai/users/views.py

    rb1c4c62 ra590488  
    221221        except:
    222222            perfil = None
    223             pass
    224         print(perfil)
    225223        context = super(StartView, self).get_context_data(**kwargs)
    226224        context['userprofile'] = perfil
Nota: Vea TracChangeset para ayuda en el uso del visor de conjuntos de cambios.