switch from first_name and last_name to name

This commit is contained in:
Jens Langhammer
2019-02-27 15:09:05 +01:00
parent 2db1738e4a
commit 5b771da972
22 changed files with 78 additions and 39 deletions

View File

@ -38,10 +38,8 @@ class SignUpForm(forms.Form):
"""SignUp Form"""
title = _('Sign Up')
first_name = forms.CharField(label=_('First Name'),
widget=forms.TextInput(attrs={'placeholder': _('First Name')}))
last_name = forms.CharField(label=_('Last Name'),
widget=forms.TextInput(attrs={'placeholder': _('Last Name')}))
name = forms.CharField(label=_('Name'),
widget=forms.TextInput(attrs={'placeholder': _('Name')}))
username = forms.CharField(label=_('Username'),
widget=forms.TextInput(attrs={'placeholder': _('Username')}))
email = forms.EmailField(label=_('E-Mail'),

View File

@ -13,7 +13,10 @@ class UserDetailForm(forms.ModelForm):
class Meta:
model = User
fields = ['username', 'first_name', 'last_name', 'email']
fields = ['username', 'name', 'email']
widgets = {
'name': forms.TextInput
}
class PasswordChangeForm(forms.Form):
"""Form to update password"""

View File

@ -0,0 +1,38 @@
# Generated by Django 2.1.7 on 2019-02-27 13:55
from django.db import migrations, models
def migrate_names(apps, schema_editor):
"""migrate first_name and last_name to name"""
User = apps.get_model("passbook_core", "User")
for user in User.objects.all():
user.name = '%s %s' % (user.first_name, user.last_name)
user.save()
class Migration(migrations.Migration):
dependencies = [
('passbook_core', '0015_passwordpolicy_error_message'),
]
operations = [
migrations.AddField(
model_name='user',
name='name',
field=models.TextField(default=''),
preserve_default=False,
),
migrations.RunPython(migrate_names),
migrations.AlterField(
model_name='user',
name='name',
field=models.TextField(),
preserve_default=False,
),
migrations.AlterField(
model_name='fieldmatcherpolicy',
name='user_field',
field=models.TextField(choices=[('username', 'Username'), ('name', 'Name'), ('email', 'E-Mail'), ('is_staff', 'Is staff'), ('is_active', 'Is active'), ('data_joined', 'Date joined')]),
),
]

View File

@ -44,6 +44,8 @@ class User(AbstractUser):
"""Custom User model to allow easier adding o f user-based settings"""
uuid = models.UUIDField(default=uuid4, editable=False)
name = models.TextField()
sources = models.ManyToManyField('Source', through='UserSourceConnection')
applications = models.ManyToManyField('Application')
groups = models.ManyToManyField('Group')
@ -253,8 +255,7 @@ class FieldMatcherPolicy(Policy):
USER_FIELDS = (
('username', _('Username'),),
('first_name', _('First Name'),),
('last_name', _('Last Name'),),
('name', _('Name'),),
('email', _('E-Mail'),),
('is_staff', _('Is staff'),),
('is_active', _('Is active'),),

View File

@ -15,8 +15,7 @@ class TestAuthenticationViews(TestCase):
def setUp(self):
super().setUp()
self.sign_up_data = {
'first_name': 'Test',
'last_name': 'User',
'name': 'Test',
'username': 'beryjuorg',
'email': 'unittest@passbook.beryju.org',
'password': 'B3ryju0rg!',

View File

@ -204,8 +204,7 @@ class SignUpView(UserPassesTestMixin, FormView):
new_user = User.objects.create(
username=data.get('username'),
email=data.get('email'),
first_name=data.get('first_name'),
last_name=data.get('last_name'),
name=data.get('name'),
)
new_user.is_active = True
try:

View File

@ -1,8 +1,10 @@
"""passbook core user views"""
from django.contrib import messages
from django.contrib.auth import logout, update_session_auth_hash
from django.contrib.messages.views import SuccessMessageMixin
from django.forms.utils import ErrorList
from django.shortcuts import redirect, reverse
from django.urls import reverse_lazy
from django.utils.translation import gettext as _
from django.views.generic import DeleteView, FormView, UpdateView
@ -11,12 +13,15 @@ from passbook.core.forms.users import PasswordChangeForm, UserDetailForm
from passbook.lib.config import CONFIG
class UserSettingsView(UpdateView):
class UserSettingsView(SuccessMessageMixin, UpdateView):
"""Update User settings"""
template_name = 'user/settings.html'
form_class = UserDetailForm
success_message = _('Successfully updated user.')
success_url = reverse_lazy('passbook_core:user-settings')
def get_object(self):
return self.request.user