def create(cls, scope, user, action, subject=None, with_vote=False): from tally import Tally from vote import Vote from adhocracy.lib.democracy import Decision poll = Poll(scope, user, action, subject=subject) meta.Session.add(poll) meta.Session.flush() if with_vote: decision = Decision(user, poll) decision.make(Vote.YES) Tally.create_from_poll(poll) meta.Session.flush() return poll
def tally(self): if self._tally is None: if len(self.tallies): self._tally = self.tallies[0] else: from tally import Tally self._tally = Tally.create_from_poll(self) return self._tally