Beispiel #1
0
    def __init__(self, *args, **kwargs):
        if 'maxrank' in kwargs:
            maxrank = kwargs['maxrank']
            del kwargs['maxrank']
            ranks = deepcopy(baseranks)
            ranks.extend([(rank.key.urlsafe(), rank.name)
                          for rank in RankModel.hierarchy(maxrank=maxrank)])

        super(AdminAccount, self).__init__(*args, **kwargs)

        self.fields['rank'].choices = ranks
Beispiel #2
0

class Account(Base):
    """
    The main account form.  Some aspects of the account will need
    to be handled on separate pages, but this will handle the base
    stuff.
    """
    name = forms.CharField(label="Display Name: ")
    about = forms.CharField(label="About You: ", widget=forms.Textarea())


baseranks = [('', 'Not a Member')]
allranks = deepcopy(baseranks)
allranks.extend([(rank.key.urlsafe(), rank.name)
                 for rank in RankModel.hierarchy()])


class AdminAccount(Account):
    """
    Same as an account, but allows admins to set a few other things.
    """
    isadmin = forms.BooleanField(label="Site Admin", required=False)
    rank = forms.ChoiceField(choices=allranks,
                             widget=forms.Select(),
                             label="Guild Rank",
                             required=False)

    def __init__(self, *args, **kwargs):
        if 'maxrank' in kwargs:
            maxrank = kwargs['maxrank']