Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/webapp
diff options
context:
space:
mode:
authorRogelio Mita <rogeliomita@activitycentral.com>2013-04-05 18:12:53 (GMT)
committer Rogelio Mita <rogeliomita@activitycentral.com>2013-04-05 18:12:53 (GMT)
commitfacbd8be7c3c707b9b501bfccb32cea315aefb46 (patch)
treed56dea27718f37cc443ae6f0333c7834b6ee7169 /webapp
parentfd027128f9173725ea7300f5928733321dfeacea (diff)
Read only pollster when a poll is closed
Diffstat (limited to 'webapp')
-rw-r--r--webapp/polls/models.py10
-rw-r--r--webapp/polls/templates/poll-form.html12
2 files changed, 20 insertions, 2 deletions
diff --git a/webapp/polls/models.py b/webapp/polls/models.py
index 9cc44cf..b3e4133 100644
--- a/webapp/polls/models.py
+++ b/webapp/polls/models.py
@@ -78,6 +78,16 @@ class Poll(AbstracErrorObject):
self.status = data.get('status', Poll.OPEN)
self.pollster = data.get('pollster', None)
+ def get_pollster(self):
+ if self.pollster:
+ pollster_id = self.pollster
+ if not pollster_id or isinstance(self.pollster, DBRef):
+ pollster_id = ObjectId(self.pollster.id)
+
+ return get_db().pollsters.find_one({"_id": pollster_id})
+
+ return None
+
@property
def structure(self):
structure_data = get_db().structures.find_one(
diff --git a/webapp/polls/templates/poll-form.html b/webapp/polls/templates/poll-form.html
index df5bc60..f9dad9d 100644
--- a/webapp/polls/templates/poll-form.html
+++ b/webapp/polls/templates/poll-form.html
@@ -11,6 +11,12 @@
<form id="poll_form" class="form-inline" action="" method="post">{% csrf_token %}
+ {% if not poll.is_open %}
+ <div class="well">
+ Encuestador: {{ poll.get_pollster.username }}
+ </div>
+ {% endif %}
+
{% if poll.id %}
<input type="hidden" name="id" value="{{ poll.id }}" />
{% endif %}
@@ -35,10 +41,11 @@
</div>
{% endif %}
+ {% if poll.is_open %}
<div class="control-group {% if form.pollster.errors %}error{% endif %}">
<div class="controls">
- <label class="control-label" for="id_encuestador">{{ form.pollster.label }}:</label>
- <select id="id_encuestador" name="pollster">
+ <label class="control-label" for="id_pollster">{{ form.pollster.label }}:</label>
+ <select id="id_pollster" name="pollster">
{% for pollster, label in POLLSTER_CHOICES %}
<option value="{{ pollster }}" {% if pollster == poll.pollster.id %}selected="selected"{% endif %}>{{ label }}</option>
{% endfor %}
@@ -46,6 +53,7 @@
<span class="help-inline">{{ form.pollster.errors }}</span>
</div>
</div>
+ {% endif %}
<div class="control-group {% if form.name.errors %}error{% endif %}">
<div class="controls">