Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRogelio Mita <rogeliomita@activitycentral.com>2013-07-18 02:02:38 (GMT)
committer Rogelio Mita <rogeliomita@activitycentral.com>2013-07-18 02:02:38 (GMT)
commit51856b0549f287862ba5c77e07a82bc3ad382b57 (patch)
tree78e89b33e06d62ac5ccde1af29199bad9f320399
parentdbe9fd19315f6d0fed8beffa2b12ca0640ebe147 (diff)
issue 4220 - Bug fix: remove unfinished polls from results
-rw-r--r--CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py32
-rw-r--r--CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py14
2 files changed, 36 insertions, 10 deletions
diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py
index 656ed3c..b35fea3 100644
--- a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py
+++ b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py
@@ -210,33 +210,33 @@ class CeibalEncuesta(gtk.Window):
self.menu_bar.show_all()
self.infowidget.show_all()
self.panel.box_encuesta.queue_draw()
-
+
elif event.keyval == 65362 or event.keyval == 65431: # Key Up
adjust = self.panel._window.get_vadjustment()
-
+
if adjust.value > adjust.lower:
new_value = adjust.value - adjust.step_increment
-
+
if new_value < adjust.lower:
new_value = adjust.lower
-
+
adjust.value = new_value
-
+
self.queue_draw()
-
+
elif event.keyval == 65364 or event.keyval == 65433: # Key Down
adjust = self.panel._window.get_vadjustment()
if adjust.value < adjust.upper - adjust.page_size:
new_value = adjust.value + adjust.step_increment
-
+
if new_value > adjust.upper - adjust.page_size:
new_value = adjust.upper - adjust.page_size
-
+
adjust.value = new_value
-
+
self.queue_draw()
-
+
def __do_draw(self, widget, event):
"""
Pinta una imagen si no se ha cargado una lista
@@ -432,6 +432,12 @@ class CeibalEncuesta(gtk.Window):
filechooser.connect("load", self.__save_results)
+ def are_answers_empty(self, answers):
+ if answers.get("finalizada", None):
+ return False
+
+ return True
+
def __save_results(self, widget = None, chosen_path = WORKPATH):
"""
Exporta los datos a un archivo con el formato
@@ -485,6 +491,12 @@ class CeibalEncuesta(gtk.Window):
answers = respuestas.get(encue, {})
+ if self.are_answers_empty(answers):
+ continue
+
+ if answers.get("finalizada", None):
+ del answers['finalizada']
+
for group_order, fields in answers.iteritems():
for field_order, field_data in fields['fields'].iteritems():
selected = field_data.get('default', [])
diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py b/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py
index 4b289ff..0e7ecea 100644
--- a/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py
+++ b/CeibalEncuesta/gtk2/CeibalEncuesta/Widgets.py
@@ -252,6 +252,20 @@ class Panel(gtk.Paned):
if index_visible == len(grupos) - 2:
self.toolbar_encuesta.encuesta_actual.finalizar()
+
+ encuestado = self.__get_encuestado()
+ # ??????
+ user = ""
+ for item in encuestado:
+ user += " %s" % item
+ encuestado = user.strip()
+ ceibal_encuesta = self.get_toplevel()
+ if encuestado in ceibal_encuesta.out_dict.keys():
+ ceibal_encuesta.out_dict[encuestado].update(
+ {"finalizada": True})
+ ceibal_encuesta._CeibalEncuesta__save_json(
+ path=ceibal_encuesta.path)
+
self.toolbar_encuesta.siguiente.hide()
return