mirror of
https://github.com/mealie-recipes/mealie.git
synced 2026-02-04 06:53:12 -05:00
Refactor/user database models (#775)
* fix build error * drop frontend.old * improve auto_init decorator * purge depreciated site settings * formatting * update init function * fix(backend): 🐛 Fix password reset bug Co-authored-by: Hayden <hay-kot@pm.me>
This commit is contained in:
@@ -11,15 +11,7 @@ from mealie.core.config import get_app_dirs
|
||||
|
||||
app_dirs = get_app_dirs()
|
||||
from mealie.db.database import get_database
|
||||
from mealie.schema.admin import (
|
||||
CommentImport,
|
||||
GroupImport,
|
||||
NotificationImport,
|
||||
RecipeImport,
|
||||
SettingsImport,
|
||||
SiteSettings,
|
||||
UserImport,
|
||||
)
|
||||
from mealie.schema.admin import CommentImport, GroupImport, NotificationImport, RecipeImport, UserImport
|
||||
from mealie.schema.events import EventNotificationIn
|
||||
from mealie.schema.recipe import CommentOut, Recipe
|
||||
from mealie.schema.user import PrivateUser, UpdateGroup
|
||||
@@ -181,19 +173,7 @@ class ImportDatabase:
|
||||
return import_notifications
|
||||
|
||||
def import_settings(self):
|
||||
settings_file = self.import_dir.joinpath("settings", "settings.json")
|
||||
settings = ImportDatabase.read_models_file(settings_file, SiteSettings)
|
||||
settings = settings[0]
|
||||
|
||||
try:
|
||||
self.db.settings.update(1, settings.dict())
|
||||
import_status = SettingsImport(name="Site Settings", status=True)
|
||||
|
||||
except Exception as inst:
|
||||
self.session.rollback()
|
||||
import_status = SettingsImport(name="Site Settings", status=False, exception=str(inst))
|
||||
|
||||
return [import_status]
|
||||
return []
|
||||
|
||||
def import_groups(self):
|
||||
groups_file = self.import_dir.joinpath("groups", "groups.json")
|
||||
|
||||
@@ -181,7 +181,7 @@ class MigrationBase(BaseModel):
|
||||
|
||||
except Exception as inst:
|
||||
exception = inst
|
||||
logger.error(inst)
|
||||
logger.exception(inst)
|
||||
self.session.rollback()
|
||||
|
||||
import_status = MigrationImport(slug=recipe.slug, name=recipe.name, status=status, exception=str(exception))
|
||||
|
||||
@@ -13,7 +13,12 @@ class UserService(UserHttpService[int, str]):
|
||||
event_func = create_user_event
|
||||
acting_user: PrivateUser = None
|
||||
|
||||
def populate_item(self, item_id: int) -> None:
|
||||
self.acting_user = self.db.users.get_one(item_id)
|
||||
return self.acting_user
|
||||
|
||||
def assert_existing(self, id) -> PrivateUser:
|
||||
self.populate_item(id)
|
||||
self._populate_target_user(id)
|
||||
self._assert_user_change_allowed()
|
||||
return self.target_user
|
||||
@@ -32,7 +37,6 @@ class UserService(UserHttpService[int, str]):
|
||||
self.target_user = self.acting_user
|
||||
|
||||
def change_password(self, password_change: ChangePassword) -> PrivateUser:
|
||||
""""""
|
||||
if not verify_password(password_change.current_password, self.target_user.password):
|
||||
raise HTTPException(status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user