Пример #1
0
def list_users(request, sort):
  if sort is None:
    sort = "UID"
  headers = [u"Login", u"Jméno", u"Nick", u"Mail", u"Telefon", u"Narození", u"UID", u"Heslo"]
  table = MightyTable(headers)
  table.setNumeric(u"Narození")
  table.setNumeric(u"UID")
  for player in Player.objects.select_related():
    record = {}
    record[u"Login"]     = SimpleCell(player.getLogin())
    record[u"Jméno"]     = SimpleCell(player.getFullName(nick=False))
    record[u"Nick"]      = SimpleCell(player.getNick())
    record[u"Mail"]      = SimpleCell(player.getMail())
    record[u"Telefon"]   = SimpleCell(player.getPhone())
    record[u"Narození"]  = SimpleCell(player.getBirth())
    record[u"UID"]       = SimpleCell(player.getUID())
    record[u"Heslo"]     = URLCell("reset/%s/" % player.getID(), "reset")
    table.addRecord(record)
  table.sort(sort)
  return render_to_response("admin/users.html",
                            { 'menuitems' : createMenuItems('users'),
                              'table'     : table,
                              'user'      : request.user,
                              'title'     : "Uživatelé"  }
                            )
Пример #2
0
  def getPeopleTable(self, qfe=True, qfg=True, slotted=False):

    # First, let's gather the headlines
    headlines = [u"Označit", u"Jméno", u"Příjmení", u"Nick", u"Telefon", u"Mail", u"Narození", u"Přihlášen"]
    headlines.extend(self.getQuestionNames(qfe, qfg))
    slots = []
    if slotted and self.type == "multi":
      slots = MultiGameSlot.objects.filter(event=self)
      headlines.extend([ slot.getName() for slot in slots ])

    # Now create the empty table
    table = MightyTable(headlines)
    table.setNumeric(u"Narození")

    # And fill it with data
    for player in self.getPlayers():
      reg   = Registration.objects.get(player=player, event=self)

      # Player info first
      record = {}
      record[u"Označit"]    = CheckerCell(player.id)
      record[u"Jméno"]      = SimpleCell(player.getFirstName())
      record[u"Příjmení"]   = SimpleCell(player.getSurname())
      record[u"Nick"]       = SimpleCell(player.getNick())
      record[u"Telefon"]    = SimpleCell(player.getPhone())
      record[u"Mail"]       = SimpleCell(player.getMail())
      record[u"Narození"]   = SimpleCell(player.getBirth())
      record[u"Přihlášen"]  = SimpleCell(reg.created)

      # Then questions for game
      if qfg and self.game:
        for question in [ que.question for que in self.game.questionforgame_set.all()]:
          answers = reg.answers.filter(question=question)
          record[question.getCaption()] = SimpleCell(u",".join( [ ans.answer for ans in answers ]))

      # And questions for event
      if qfe:
        for question in [ que.question for que in self.question.all()]:
          answers = reg.answers.filter(question=question)
          record[question.getCaption()] = SimpleCell(u",".join( [ ans.answer for ans in answers ]))

      # And if the game is slotted, then show applied slots
      if slots:
        for slot in slots:
          game = slot.getGameForPlayer(player)
          if game:
            record[slot.getName()] = SimpleCell(game.getGameName())
          else:
            record[slot.getName()] = SimpleCell(u"--nic--")

      table.addRecord(record)

    return table