diff options
Diffstat (limited to 'ishtar_common/forms_common.py')
| -rw-r--r-- | ishtar_common/forms_common.py | 118 | 
1 files changed, 7 insertions, 111 deletions
| diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py index d034f6ddf..e5f23e620 100644 --- a/ishtar_common/forms_common.py +++ b/ishtar_common/forms_common.py @@ -194,104 +194,6 @@ class PersonForm(forms.Form):          new_item.save()          return new_item -''' -person_search_wizard = SearchWizard([ -                    ('general-person_search', PersonFormSelection)], -                     url_name='person_search',) - - - -person_modification_wizard = PersonWizard([ -                          ('selec-person_modification', PersonFormSelection), -                          ('identity-person_modification', PersonForm), -                          ('final-person_modification', FinalForm)], -                          url_name='person_modification',) - -class AccountWizard(Wizard): -    model = models.Person -    def get_formated_datas(self, forms): -        datas = super(AccountWizard, self).get_formated_datas(forms) -        for form in forms: -            if not hasattr(form, "cleaned_data"): -                continue -            for key in form.cleaned_data: -                if key == 'hidden_password' and form.cleaned_data[key]: -                    datas[-1][1].append((_("New password"), "*"*8)) -        return datas - -    def done(self, request, storage, form_list, **kwargs): -        """ -        Save the account -        """ -        dct = {} -        for form in form_list: -            if not form.is_valid(): -                return self.render(request, storage, form) -            associated_models = hasattr(form, 'associated_models') and \ -                                form.associated_models or {} -            if type(form.cleaned_data) == dict: -                for key in form.cleaned_data: -                    if key == 'pk': -                        continue -                    value = form.cleaned_data[key] -                    if key in associated_models and value: -                        value = associated_models[key].objects.get(pk=value) -                    dct[key] = value -        person = self.get_current_object(request, storage) -        if not person: -            return self.render(request, storage, form) -        for key in dct.keys(): -            if key.startswith('hidden_password'): -                dct['password'] = dct.pop(key) -        try: -            account = models.IshtarUser.objects.get(person=person) -            account.username = dct['username'] -            account.email = dct['email'] -        except ObjectDoesNotExist: -            now = datetime.datetime.now() -            account = models.IshtarUser(person=person, username=dct['username'], -                    email=dct['email'], first_name=person.surname, -                    last_name=person.name, is_staff=False, is_active=True, -                    is_superuser=False, last_login=now, date_joined=now) -        if dct['password']: -            account.set_password(dct['password']) -        account.save() - -        if 'send_password' in dct and dct['send_password'] and \ -           settings.ADMINS: -            site = Site.objects.get_current() - -            app_name = site and ("Ishtar - " + site.name) \ -                       or "Ishtar" -            context = Context({'login':dct['username'], -                               'password':dct['password'], -                               'app_name':app_name, -                               'site': site and site.domain or "" -                              }) -            t = loader.get_template('account_activation_email.txt') -            msg = t.render(context) -            subject = _(u"[%(app_name)s] Account creation/modification") % { -                                                           "app_name":app_name} -            send_mail(subject, msg, settings.ADMINS[0][1], -                      [dct['email']], fail_silently=True) -        res = render_to_response('wizard_done.html', {}, -                                  context_instance=RequestContext(request)) -        return res - -    def get_form(self, request, storage, step=None, data=None, files=None): -        """ -        Display the "Send email" field if necessary -        """ -        form = super(AccountWizard, self).get_form(request, storage, step, data, -                                                   files) -        if not hasattr(form, 'is_hidden'): -            return form -        if self.session_get_value(request, storage, -                               'account-account_management', 'hidden_password'): -            form.is_hidden = False -        return form - -'''  class AccountForm(forms.Form):      form_label = _("Account")      associated_models = {'pk':models.Person} @@ -301,11 +203,11 @@ class AccountForm(forms.Form):      email = forms.CharField(label=_(u"Email"), max_length=75,                              validators=[validators.validate_email])      hidden_password = forms.CharField(label=_(u"New password"), max_length=128, - widget=forms.PasswordInput, required=False, - validators=[validators.MinLengthValidator(4)]) +                                  widget=forms.PasswordInput, required=False, +                                  validators=[validators.MinLengthValidator(4)])      hidden_password_confirm = forms.CharField( -                label=_(u"New password (confirmation)"), max_length=128, -                widget=forms.PasswordInput, required=False) +                        label=_(u"New password (confirmation)"), max_length=128, +                        widget=forms.PasswordInput, required=False)      def __init__(self, *args, **kwargs):          if 'initial' in kwargs and 'pk' in kwargs['initial']: @@ -327,8 +229,8 @@ class AccountForm(forms.Form):          if not cleaned_data.get("pk"):              models.is_unique(User, 'username')(cleaned_data.get("username"))              if not password: -                raise forms.ValidationError(_(u"You must provide a correct \ -password.")) +                raise forms.ValidationError(_(u"You must provide a correct "\ +                                              u"password."))          # check username unicity          usernames = models.IshtarUser.objects.filter(username=                                                    cleaned_data.get('username')) @@ -347,13 +249,7 @@ class FinalAccountForm(forms.Form):      def __init__(self, *args, **kwargs):          self.is_hidden = True          return super(FinalAccountForm, self).__init__(*args, **kwargs) -''' -account_management_wizard = AccountWizard([ -                        ('selec-account_management', PersonFormSelection), -                        ('account-account_management', AccountForm), -                        ('final-account_management', FinalAccountForm)], -                         url_name='account_management',) -''' +  class TownForm(forms.Form):      form_label = _("Towns")      base_model = 'town' | 
