Index: topic_explorer/views.py
===================================================================
--- topic_explorer/views.py	(revision 0a596491df92123606819aec2962f65268cff374)
+++ topic_explorer/views.py	(revision 0adbe8b87b08645875a1c0372c21ba6870e5908a)
@@ -1,3 +1,16 @@
-# coding: utf-8
+# -*- coding: utf-8 -*-
+"""
+Sistema de Modelado de TÃ³picos
+
+Copyleft (@) 2014 CENDITEL nodo MÃ©rida - https://planificacion.cenditel.gob.ve/trac/
+"""
+## @package django_topic_explorer.topic_explorer
+#
+# MÃ©todos de la Vista, para visualizar los tÃ³picos
+# @author Jorge Redondo (jredondo at cenditel.gob.ve)
+# @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e InvestigaciÃ³n en TecnologÃ­as Libres
+# (CENDITEL) nodo MÃ©rida - Venezuela</a>
+# @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versiÃ³n 2 (GPLv2)</a>
+# @version 1.3
 
 from django.shortcuts import render
@@ -5,17 +18,14 @@
 from django.conf import settings
 
-from django.http import HttpResponse, HttpResponseRedirect, HttpResponseServerError, StreamingHttpResponse
+from django.http import HttpResponse, HttpResponseServerError
 
 import json
 
-from utils import colorlib
 from utils.ldac2vsm import *
 from utils.json_data import *
-import itertools
-from vsm.corpus import Corpus
-from vsm.model.ldacgsmulti import LdaCgsMulti as LCM
+#from vsm.corpus import Corpus
+#from vsm.model.ldacgsmulti import LdaCgsMulti as LCM
 from vsm.viewer.ldagibbsviewer import LDAGibbsViewer as LDAViewer
 from vsm.viewer.wrappers import doc_label_name
-from django.core import serializers
 
 from django.views.generic import TemplateView
@@ -25,7 +35,5 @@
 import csv
 
-from django.utils.safestring import mark_safe
 from django_topic_explorer.settings import FILES_PATH
-
 from django_topic_explorer.settings import LDA_DATA_PATH 
 from django_topic_explorer.settings import LDA_CORPUS_FILE 
@@ -35,5 +43,5 @@
 
 #path = settings.PATH 
-corpus_file = settings.CORPUS_FILE
+#corpus_file = settings.CORPUS_FILE
 #context_type = settings.CONTEXT_TYPE
 context_type = 'propesta'
@@ -41,5 +49,4 @@
 topics = settings.TOPICS
 #corpus_name = settings.CORPUS_NAME
-icons = settings.ICONS
 
 corpus_link = settings.CORPUS_LINK
@@ -65,4 +72,12 @@
 
 def dump_exception():
+    """!
+    FunciÃ³n para captar los errores e imprimirlos
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @return Retorna una respuesta http con el error
+    """ 
     import sys,traceback
     exc_type, exc_value, exc_traceback = sys.exc_info()
@@ -75,4 +90,13 @@
 
 def doc_topic_csv(request, doc_id):
+    """!
+    FunciÃ³n para retornar un documento en csv
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @param doc_id <b>{string}</b> Recibe el nÃºmero del documento
+    @return Retorna los datos del documento
+    """
     global lda_v
     try:
@@ -89,4 +113,15 @@
 
 def doc_csv(request, k,doc_id,threshold=0.2):
+    """!
+    FunciÃ³n para retornar la data de los tÃ³picos en csv
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @param k <b>{int}</b> Recibe el nÃºmero de tÃ³picos a mostrar
+    @param doc_id <b>{string}</b> Recibe el nÃºmero de tÃ³picos
+    @param threshold <b>{int}</b> Recibe el limite estadÃ­stico
+    @return Retorna el render de la vista
+    """
     global k_param, lda_c, lda_m, lda_v
     try:
@@ -98,6 +133,4 @@
                                LDA_CORPUS_DIR)
             lda_v = LDAViewer(lda_c, lda_m)
-        #lda_m = LCM.load(model_pattern.format(k_param))
-        #lda_v = LDAViewer(lda_c, lda_m)
         data = lda_v.sim_doc_doc(doc_id)
 
@@ -112,4 +145,15 @@
 
 def topic_json(request,k,topic_no, N=40):
+    """!
+    FunciÃ³n para retornar la data de los tÃ³picos en json
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @param k <b>{int}</b> Recibe el nÃºmero de tÃ³picos a mostrar
+    @param topic_no <b>{string}</b> Recibe el nÃºmero de tÃ³picos
+    @param N <b>{int}</b> Recibe la cantidad
+    @return Retorna el render de la vista
+    """
     global k_param, lda_c, lda_m, lda_v
     try:
@@ -121,7 +165,4 @@
                                LDA_CORPUS_DIR)
             lda_v = LDAViewer(lda_c, lda_m)
-        #global lda_v
-        #lda_m = LCM.load(model_pattern.format(k_param))
-        #lda_v = LDAViewer(lda_c, lda_m)
         try:
             N = int(request.query.n)
@@ -148,4 +189,14 @@
 
 def doc_topics(request,doc_id, N=40):
+    """!
+    FunciÃ³n para retornar la data de los documentos en json
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @param doc_id <b>{string}</b> Recibe el nÃºmero del documento
+    @param N <b>{int}</b> Recibe la cantidad
+    @return Retorna el render de la vista
+    """
     global lda_v
     try:
@@ -167,11 +218,14 @@
     
 def topics(request):
+    """!
+    FunciÃ³n para servir los tÃ³picos como un json
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @return Retorna el objeto json
+    """ 
     global lda_v
     try:
-        #lda_c,lda_m = corpus_model(k_param,LDA_DATA_PATH.format(k_param),
-        #                       LDA_CORPUS_FILE,
-        #                       LDA_VOCAB_FILE,
-        #                       LDA_CORPUS_DIR)
-        #lda_v = LDAViewer(lda_c, lda_m)
         js=populateJson(lda_v)
         return HttpResponse(json.dumps(js))
@@ -181,11 +235,14 @@
 
 def docs(request):
+    """!
+    FunciÃ³n para servir los documentos como un json
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @return Retorna el objeto json
+    """
     global lda_v
     try:
-        #lda_c,lda_m = corpus_model(k_param,LDA_DATA_PATH.format(k_param),
-        #                       LDA_CORPUS_FILE,
-        #                       LDA_VOCAB_FILE,
-        #                       LDA_CORPUS_DIR)
-        #lda_v = LDAViewer(lda_c, lda_m)
         docs = lda_v.corpus.view_metadata(context_type)[doc_label_name(context_type)]
         js = list()
@@ -201,12 +258,16 @@
 
 def index(request):
-    try:
-        #global lda_m,lda_v
-        #lda_m = LCM.load(model_pattern.format(10))
-        #lda_v = LDAViewer(lda_c, lda_m)
+    """!
+    FunciÃ³n para visualizar el index del proyecto
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @return Retorna el render de la vista
+    """
+    try:
         template_name = 'topic_explorer/index.html'
         return render(request,template_name,
             {'filename':None,
-             #'corpus_name' : corpus_name,
              'corpus_link' : corpus_link,
              'context_type' : context_type,
@@ -218,4 +279,15 @@
 
 def visualize(request,k,filename=None,topic_no=None):
+    """!
+    FunciÃ³n para visualizar los tÃ³picos
+
+    @author Jorge Redondo (jredondo at cenditel.gob.ve)
+    @copyright GNU/GPLv2
+    @param request <b>{object}</b> Objeto que mantiene la peticion
+    @param k <b>{int}</b> Recibe el nÃºmero de tÃ³picos a mostrar
+    @param filename <b>{string}</b> Recibe el nombre del  archivo
+    @param topic_no <b>{int}</b> Recibe el nÃºmero de tÃ³pico
+    @return Retorna el render de la vista
+    """
     global k_param,lda_c,lda_m,lda_v
     try:
@@ -227,6 +299,4 @@
                                LDA_CORPUS_DIR)
             lda_v = LDAViewer(lda_c, lda_m)
-        #lda_m = LCM.load(model_pattern.format(k_param))
-        #lda_v = LDAViewer(lda_c, lda_m)
         template_name = 'topic_explorer/index.html'
         return render(request,template_name,
@@ -234,5 +304,4 @@
              'k_param':k_param,
              'topic_no':topic_no,
-             #'corpus_name' : corpus_name,
              'corpus_link' : corpus_link,
              'context_type' : context_type,
@@ -244,13 +313,27 @@
 
 class IrTopic(TemplateView):
+    """!
+    Clase que permite la visualizaciÃ³n de un archivo en particular
+    @author Rodrigo Boet (rboet at cenditel.gob.ve)
+    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versiÃ³n 2 (GPLv2)</a>
+    @date 31-07-2015
+    """
+    
     template_name='topic_explorer/verTopico.html'
+    
+    
     def get(self, request, propuesta = None):
+        """!
+        Metodo que permite procesar las peticiones por get, con el fin de mostrar el documento
+    
+        @author Rodrigo Boet (rboet at cenditel.gob.ve)
+        @copyright GNU/GPLv2
+        @date 31-07-2015
+        @param self <b>{object}</b> Objeto que instancia el mÃ©todo
+        @param request <b>{object}</b> Objeto que mantiene la peticion
+        @param propuesta <b>{int}</b> Recibe el nÃºmero de la propuesta
+        @return Retorna el render de la vista
+        """
         global lda_v
-        #global k_param
-        #lda_c,lda_m = corpus_model(k_param,LDA_DATA_PATH.format(k_param),
-        #                       LDA_CORPUS_FILE,
-        #                       LDA_VOCAB_FILE,
-        #                       LDA_CORPUS_DIR)
-        #lda_v = LDAViewer(lda_c, lda_m)
         #Obtnener json
         Topic_Json = populateJson(lda_v)
@@ -266,5 +349,4 @@
         mi_color = json.dumps(mi_color)
         topicos = json.dumps(topicos)
-        #print topicos
         #carga el pre-procesado del archivo en una variable
         texto=''
@@ -285,4 +367,14 @@
     
     def obtenerValores(self,topicos):#funcion para obtener los colores del json
+        """!
+        Metodo para obtener los colores del json
+    
+        @author Rodrigo Boet (rboet at cenditel.gob.ve)
+        @copyright GNU/GPLv2
+        @date 31-07-2015
+        @param self <b>{object}</b> Objeto que instancia el mÃ©todo
+        @param topicos <b>{dict}</b> Recibe un diccionario con los topicos 
+        @return Retorna un diccionario con los colores
+        """
         my_topic=[]
         for x in topicos:
@@ -291,5 +383,15 @@
     
     def obtenerDocumento(self,docs,propuesta):
-        #document = {}
+        """!
+        Metodo para obtener un documento
+    
+        @author Rodrigo Boet (rboet at cenditel.gob.ve)
+        @copyright GNU/GPLv2
+        @date 03-02-2016
+        @param self <b>{object}</b> Objeto que instancia el mÃ©todo
+        @param docs <b>{dict}</b> Recibe un diccionario con los documentos
+        @param propuesta <b>{int}</b> Recibe el nÃºmero de la propuesta
+        @return Retorna un diccionario con los colores
+        """
         for x in docs:
             if(x['doc']==propuesta):
