Skip to content

Commit

Permalink
Update Baby Buddy to v1.11.0
Browse files Browse the repository at this point in the history
  • Loading branch information
cdubz committed May 30, 2022
1 parent c9c8e45 commit df7d27f
Show file tree
Hide file tree
Showing 3 changed files with 120 additions and 80 deletions.
4 changes: 2 additions & 2 deletions .sandstorm/sandstorm-pkgdef.capnp
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ const pkgdef :Spk.PackageDefinition = (

manifest = (
appTitle = (defaultText = "Baby Buddy"),
appVersion = 4, # Increment this for every release.
appMarketingVersion = (defaultText = "1.9.1"),
appVersion = 5, # Increment this for every release.
appMarketingVersion = (defaultText = "1.11.0"),
actions = [
( nounPhrase = (defaultText = "instance"),
command = .firstRunCommand
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ app for [Sandstorm](https://sandstorm.io/).

## App Version History

- v5: [Baby Buddy 1.11.0](https://github.com/babybuddy/babybuddy/releases/tag/v1.11.0)
- v4: [Baby Buddy 1.9.1](https://github.com/babybuddy/babybuddy/releases/tag/v1.9.1)
- v3: [Baby Buddy 1.5.0](https://github.com/babybuddy/babybuddy/releases/tag/v1.5.0)
- v2: [Baby Buddy 1.4.0](https://github.com/babybuddy/babybuddy/releases/tag/v1.4.0)
Expand Down
195 changes: 117 additions & 78 deletions sandstorm.patch
Original file line number Diff line number Diff line change
@@ -1,33 +1,45 @@
diff --git a/Pipfile b/Pipfile
index beb707b..85330aa 100644
index 3fccb52..2725ed6 100644
--- a/Pipfile
+++ b/Pipfile
@@ -16,11 +16,11 @@ easy-thumbnails = "*"
faker = "*"
@@ -17,12 +17,12 @@ faker = "*"
gunicorn = "*"
pillow = "*"
plotly = "*"
-psycopg2-binary = "*"
python-dotenv = "*"
pyyaml = "*"
uritemplate = "*"
whitenoise = "*"
django-taggit = "==2.1.0"
+django-sandstorm = {editable = true,git = "https://github.com/cdubz/django-sandstorm.git"}

[dev-packages]
coveralls = "*"
diff --git a/babybuddy/forms.py b/babybuddy/forms.py
index c48ce90..8a09a98 100644
index 9c91cb5..0a500f9 100644
--- a/babybuddy/forms.py
+++ b/babybuddy/forms.py
@@ -6,20 +6,6 @@ from django.contrib.auth.models import User
@@ -1,31 +1,10 @@
# -*- coding: utf-8 -*-
from django import forms
-from django.contrib.auth.forms import PasswordChangeForm, UserCreationForm
from django.contrib.auth.models import User

from .models import Settings


-class UserAddForm(UserCreationForm):
- class Meta:
- model = User
- fields = ['username', 'first_name', 'last_name', 'email',
- 'is_staff', 'is_active']
- fields = [
- "username",
- "first_name",
- "last_name",
- "email",
- "is_staff",
- "is_active",
- ]
-
- def save(self, commit=True):
- user = super(UserAddForm, self).save(commit=False)
Expand All @@ -40,30 +52,36 @@ index c48ce90..8a09a98 100644
class UserUpdateForm(forms.ModelForm):
class Meta:
model = User
@@ -33,11 +19,6 @@ class UserForm(forms.ModelForm):
fields = ['first_name', 'last_name', 'email']
@@ -45,11 +24,6 @@ class UserForm(forms.ModelForm):
fields = ["first_name", "last_name", "email"]


-class UserPasswordForm(PasswordChangeForm):
- class Meta:
- fields = ['old_password', 'new_password1', 'new_password2']
- fields = ["old_password", "new_password1", "new_password2"]
-
-
class UserSettingsForm(forms.ModelForm):
class Meta:
model = Settings
diff --git a/babybuddy/management/commands/migrate.py b/babybuddy/management/commands/migrate.py
index 0e22ab5..d78c258 100644
index c9b732a..acfab3d 100644
--- a/babybuddy/management/commands/migrate.py
+++ b/babybuddy/management/commands/migrate.py
@@ -8,10 +8,3 @@ class Command(migrate.Command):
@@ -1,5 +1,4 @@
# -*- coding: utf-8 -*-
-from django.contrib.auth.models import User
from django.core.management.commands import migrate


@@ -8,10 +7,3 @@ class Command(migrate.Command):

def handle(self, *args, **kwargs):
super(Command, self).handle(*args, **kwargs)
-
- superusers = User.objects.filter(is_superuser=True)
- if len(superusers) == 0:
- default_user = User.objects.create_user('admin', password='admin')
- default_user = User.objects.create_user("admin", password="admin")
- default_user.is_superuser = True
- default_user.is_staff = True
- default_user.save()
Expand Down Expand Up @@ -112,15 +130,20 @@ index 0000000..7aa8682
+
+MEDIA_ROOT = '/var/media'
diff --git a/babybuddy/templates/babybuddy/nav-dropdown.html b/babybuddy/templates/babybuddy/nav-dropdown.html
index 84fa085..a56ba24 100644
index 080276a..34b1a26 100644
--- a/babybuddy/templates/babybuddy/nav-dropdown.html
+++ b/babybuddy/templates/babybuddy/nav-dropdown.html
@@ -268,12 +268,9 @@
@@ -345,17 +345,9 @@
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="nav-user-menu-link">
<h6 class="dropdown-header">{% trans "User" %}</h6>
<a href="{% url 'babybuddy:user-settings' %}" class="dropdown-item">{% trans "Settings" %}</a>
- <a href="{% url 'babybuddy:user-password' %}" class="dropdown-item">{% trans "Password" %}</a>
- <a href="{% url 'babybuddy:logout' %}" class="dropdown-item">{% trans "Logout" %}</a>
- <form action="{% url 'babybuddy:logout' %}" role="form" method="post">
- {% csrf_token %}
- <button class="dropdown-item">
- {% trans "Logout" %}
- </button>
- </form>
<h6 class="dropdown-header">{% trans "Site" %}</h6>
<a href="{% url 'api:api-root' %}" class="dropdown-item">{% trans "API Browser" %}</a>
{% if request.user.is_staff %}
Expand All @@ -129,103 +152,119 @@ index 84fa085..a56ba24 100644
{% endif %}
<h6 class="dropdown-header">{% trans "Support" %}</h6>
diff --git a/babybuddy/urls.py b/babybuddy/urls.py
index d1f2507..34d9348 100644
index e2d2e78..efca8f1 100644
--- a/babybuddy/urls.py
+++ b/babybuddy/urls.py
@@ -9,34 +9,16 @@ from . import views
@@ -8,18 +8,26 @@ from django.urls import include, path
from . import views

app_patterns = [
path('login/', auth_views.LoginView.as_view(), name='login'),
- path('logout/', auth_views.LogoutView.as_view(), name='logout'),
- path(
- 'password_reset/',
- auth_views.PasswordResetView.as_view(),
- name='password_reset'
- ),
path('', views.RootRouter.as_view(), name='root-router'),
path('welcome/', views.Welcome.as_view(), name='welcome'),
path('users/', views.UserList.as_view(), name='user-list'),
- path('users/add/', views.UserAdd.as_view(), name='user-add'),
- path("login/", auth_views.LoginView.as_view(), name="login"),
- path("logout/", views.LogoutView.as_view(), name="logout"),
+ path('login/', auth_views.LoginView.as_view(), name='login'),
+
+ path('', views.RootRouter.as_view(), name='root-router'),
+ path('welcome/', views.Welcome.as_view(), name='welcome'),
+
+ path('users/', views.UserList.as_view(), name='user-list'),
+ path(
+ 'users/<int:pk>/edit/',
+ views.UserUpdate.as_view(),
+ name='user-update'
+ ),
path(
'users/<int:pk>/edit/',
views.UserUpdate.as_view(),
name='user-update'
- "password_reset/", auth_views.PasswordResetView.as_view(), name="password_reset"
+ 'user/settings/',
+ views.UserSettings.as_view(),
+ name='user-settings'
),
- path(
- 'users/<int:pk>/delete/',
- views.UserDelete.as_view(),
- name='user-delete'
- ),
-
- path(
- 'user/password/',
- views.UserPassword.as_view(),
- name='user-password'
- ),
path(
'user/settings/',
views.UserSettings.as_view(),
path("", views.RootRouter.as_view(), name="root-router"),
path("welcome/", views.Welcome.as_view(), name="welcome"),
path("users/", views.UserList.as_view(), name="user-list"),
- path("users/add/", views.UserAdd.as_view(), name="user-add"),
path("users/<int:pk>/edit/", views.UserUpdate.as_view(), name="user-update"),
- path("users/<int:pk>/delete/", views.UserDelete.as_view(), name="user-delete"),
- path("user/password/", views.UserPassword.as_view(), name="user-password"),
path("user/settings/", views.UserSettings.as_view(), name="user-settings"),
]

diff --git a/babybuddy/views.py b/babybuddy/views.py
index 8f3bb44..f942afb 100644
index a53cde1..0c64790 100644
--- a/babybuddy/views.py
+++ b/babybuddy/views.py
@@ -55,16 +55,6 @@ class UserList(StaffOnlyMixin, BabyBuddyFilterView):
filterset_fields = ('username', 'first_name', 'last_name', 'email')
@@ -1,7 +1,5 @@
# -*- coding: utf-8 -*-
from django.contrib import messages
-from django.contrib.auth import update_session_auth_hash
-from django.contrib.auth.forms import PasswordChangeForm
from django.contrib.auth.models import User
from django.contrib.auth.views import LogoutView as LogoutViewBase
from django.contrib.messages.views import SuccessMessageMixin
@@ -12,7 +10,6 @@ from django.template import loader
from django.urls import reverse, reverse_lazy
from django.utils import translation
from django.utils.decorators import method_decorator
-from django.utils.text import format_lazy
from django.utils.translation import gettext as _, gettext_lazy
from django.views import csrf
from django.views.decorators.cache import never_cache
@@ -93,18 +90,8 @@ class UserList(StaffOnlyMixin, BabyBuddyFilterView):
filterset_fields = ("username", "first_name", "last_name", "email")


-class UserAdd(StaffOnlyMixin, PermissionRequiredMixin, SuccessMessageMixin,
- CreateView):
-class UserAdd(StaffOnlyMixin, PermissionRequiredMixin, SuccessMessageMixin, CreateView):
- model = User
- template_name = 'babybuddy/user_form.html'
- permission_required = ('admin.add_user',)
- template_name = "babybuddy/user_form.html"
- permission_required = ("admin.add_user",)
- form_class = forms.UserAddForm
- success_url = reverse_lazy('babybuddy:user-list')
- success_message = gettext_lazy('User %(username)s added!')
- success_url = reverse_lazy("babybuddy:user-list")
- success_message = gettext_lazy("User %(username)s added!")
-
-
class UserUpdate(StaffOnlyMixin, PermissionRequiredMixin,
SuccessMessageMixin, UpdateView):
-class UserUpdate(
- StaffOnlyMixin, PermissionRequiredMixin, SuccessMessageMixin, UpdateView
-):
+class UserUpdate(StaffOnlyMixin, PermissionRequiredMixin,
+ SuccessMessageMixin, UpdateView):
model = User
@@ -75,42 +65,6 @@ class UserUpdate(StaffOnlyMixin, PermissionRequiredMixin,
success_message = gettext_lazy('User %(username)s updated.')
template_name = "babybuddy/user_form.html"
permission_required = ("admin.change_user",)
@@ -113,40 +100,6 @@ class UserUpdate(
success_message = gettext_lazy("User %(username)s updated.")


-class UserDelete(StaffOnlyMixin, PermissionRequiredMixin,
- DeleteView):
-class UserDelete(
- StaffOnlyMixin, PermissionRequiredMixin, DeleteView, SuccessMessageMixin
-):
- model = User
- template_name = 'babybuddy/user_confirm_delete.html'
- permission_required = ('admin.delete_user',)
- success_url = reverse_lazy('babybuddy:user-list')
- template_name = "babybuddy/user_confirm_delete.html"
- permission_required = ("admin.delete_user",)
- success_url = reverse_lazy("babybuddy:user-list")
-
- def delete(self, request, *args, **kwargs):
- success_message = format_lazy(gettext_lazy(
- 'User {user} deleted.'), user=self.get_object()
- )
- messages.success(request, success_message)
- return super(UserDelete, self).delete(request, *args, **kwargs)
- def get_success_message(self, cleaned_data):
- return format_lazy(gettext_lazy("User {user} deleted."), user=self.get_object())
-
-
-class UserPassword(LoginRequiredMixin, View):
- """
- Handles user password changes.
- """
-
- form_class = forms.UserPasswordForm
- template_name = 'babybuddy/user_password_form.html'
- template_name = "babybuddy/user_password_form.html"
-
- def get(self, request):
- return render(request, self.template_name, {
- 'form': self.form_class(request.user)
- })
- return render(
- request, self.template_name, {"form": self.form_class(request.user)}
- )
-
- def post(self, request):
- form = PasswordChangeForm(request.user, request.POST)
- if form.is_valid():
- user = form.save()
- update_session_auth_hash(request, user)
- messages.success(request, _('Password updated.'))
- return render(request, self.template_name, {'form': form})
- messages.success(request, _("Password updated."))
- return render(request, self.template_name, {"form": form})
-
-
class UserSettings(LoginRequiredMixin, View):
Expand Down

0 comments on commit df7d27f

Please sign in to comment.