diff options
author | Cédric Bonhomme <cedric@cedricbonhomme.org> | 2021-07-03 22:36:05 +0200 |
---|---|---|
committer | Cédric Bonhomme <cedric@cedricbonhomme.org> | 2021-07-03 22:36:05 +0200 |
commit | 68badd61e526fb28cabe52ea2c94ae802795dd4d (patch) | |
tree | 8be78aca0acbef67c581a29f815df4eb9564c6a9 /newspipe | |
parent | raise the minimum of characters of a password to 20 (diff) | |
download | newspipe-68badd61e526fb28cabe52ea2c94ae802795dd4d.tar.gz newspipe-68badd61e526fb28cabe52ea2c94ae802795dd4d.tar.bz2 newspipe-68badd61e526fb28cabe52ea2c94ae802795dd4d.zip |
updated bootstrap and various UI fixes
Diffstat (limited to 'newspipe')
-rw-r--r-- | newspipe/templates/profile.html | 10 | ||||
-rw-r--r-- | newspipe/templates/signup.html | 7 | ||||
-rw-r--r-- | newspipe/web/forms.py | 31 |
3 files changed, 23 insertions, 25 deletions
diff --git a/newspipe/templates/profile.html b/newspipe/templates/profile.html index 12517331..6cb59ed5 100644 --- a/newspipe/templates/profile.html +++ b/newspipe/templates/profile.html @@ -40,13 +40,19 @@ {{ form.twitter.label }} {{ form.twitter(class_="form-control") }} {% for error in form.twitter.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} + <div class="form-check"> {{ form.is_public_profile.label }} - {{ form.is_public_profile(class_="form-control") }} {% for error in form.is_public_profile.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} + {{ form.is_public_profile(class_="form-check-input") }} <p>{{ _('Your profile will be available <a href="%(url)s">here</a>.', url=url_for('user.profile_public', nickname=user.nickname) ) }}</p> + {% for error in form.is_public_profile.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} + </div> + <div class="form-check"> {{ form.automatic_crawling.label }} - {{ form.automatic_crawling(class_="form-control") }} {% for error in form.automatic_crawling.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} + {{ form.automatic_crawling(class_="form-check-input") }} <p>{{ _('Uncheck if you are using your own crawler.') }}</p> + {% for error in form.automatic_crawling.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} + </div> </div> </div> <div class="row"> diff --git a/newspipe/templates/signup.html b/newspipe/templates/signup.html index 7189c186..c0cdbd15 100644 --- a/newspipe/templates/signup.html +++ b/newspipe/templates/signup.html @@ -9,19 +9,18 @@ <div class="input-group mb-3"> {{ form.nickname(class_="form-control", placeholder=_('Your nickname')) }} <span class="input-group-text">{{ _('Letters, numbers, dots and underscores only.') }}</span> - {% for error in form.nickname.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} </div> - <p class="help-block"></p> + {% for error in form.nickname.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} <div class="input-group mb-3"> {{ form.email(class_="form-control", placeholder=_('Your email')) }} <span class="input-group-text">{{ _("Only for account activation. Your email won't be stored.") }}</span> - {% for error in form.email.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} </div> + {% for error in form.email.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} <div class="input-group mb-3"> {{ form.password(class_="form-control", placeholder=_('Your password')) }} <span class="input-group-text">{{ _('Minimum 20 characters.') }}</span> - {% for error in form.password.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} </div> + {% for error in form.password.errors %} <span style="color: red;">{{ error }}<br /></span>{% endfor %} <br /> {{ form.submit(class_="btn btn-primary") }} </form> diff --git a/newspipe/web/forms.py b/newspipe/web/forms.py index 33a8db70..71ebcd9c 100644 --- a/newspipe/web/forms.py +++ b/newspipe/web/forms.py @@ -199,20 +199,8 @@ class ProfileForm(FlaskForm): lazy_gettext("Nickname"), [validators.Required(lazy_gettext("Please enter your nickname."))], ) - password = PasswordField( - lazy_gettext("Password"), - [ - validators.Required(lazy_gettext("Please enter a password.")), - validators.Length(min=20, max=500), - ], - ) - password_conf = PasswordField( - lazy_gettext("Password"), - [ - validators.Required(lazy_gettext("Please enter a password.")), - validators.Length(min=20, max=500), - ], - ) + password = PasswordField(lazy_gettext("Password")) + password_conf = PasswordField(lazy_gettext("Password")) automatic_crawling = BooleanField(lazy_gettext("Automatic crawling"), default=True) bio = TextAreaField(lazy_gettext("Bio")) webpage = URLField(lazy_gettext("Webpage")) @@ -222,11 +210,16 @@ class ProfileForm(FlaskForm): def validate(self): validated = super(ProfileForm, self).validate() - if self.password.data != self.password_conf.data: - message = lazy_gettext("Passwords aren't the same.") - self.password.errors.append(message) - self.password_conf.errors.append(message) - validated = False + if self.password.data: + if self.password.data != self.password_conf.data: + message = lazy_gettext("Passwords aren't the same.") + self.password.errors.append(message) + self.password_conf.errors.append(message) + validated = False + if not 20 <= len(self.password.data) <= 500: + message = lazy_gettext("Password must be between 20 and 500 characters.") + self.password.errors.append(message) + validated = False if self.nickname.data != User.make_valid_nickname(self.nickname.data): self.nickname.errors.append( lazy_gettext( |