mirror of
https://github.com/mealie-recipes/mealie.git
synced 2026-04-10 23:15:34 -04:00
add announcements fields + migration
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
"""add announcements
|
||||
|
||||
Revision ID: 4395a04f7784
|
||||
Revises: cdc93edaf73d
|
||||
Create Date: 2026-03-27 20:19:07.459075
|
||||
|
||||
"""
|
||||
|
||||
import sqlalchemy as sa
|
||||
from alembic import op
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = "4395a04f7784"
|
||||
down_revision: str | None = "cdc93edaf73d"
|
||||
branch_labels: str | tuple[str, ...] | None = None
|
||||
depends_on: str | tuple[str, ...] | None = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table("group_preferences", schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column("show_announcements", sa.Boolean(), nullable=False, server_default=sa.true()))
|
||||
|
||||
with op.batch_alter_table("household_preferences", schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column("show_announcements", sa.Boolean(), nullable=False, server_default=sa.true()))
|
||||
|
||||
with op.batch_alter_table("users", schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column("show_announcements", sa.Boolean(), nullable=False, server_default=sa.true()))
|
||||
batch_op.add_column(sa.Column("last_read_announcement", sa.String(), nullable=True))
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table("users", schema=None) as batch_op:
|
||||
batch_op.drop_column("last_read_announcement")
|
||||
batch_op.drop_column("show_announcements")
|
||||
|
||||
with op.batch_alter_table("household_preferences", schema=None) as batch_op:
|
||||
batch_op.drop_column("show_announcements")
|
||||
|
||||
with op.batch_alter_table("group_preferences", schema=None) as batch_op:
|
||||
batch_op.drop_column("show_announcements")
|
||||
|
||||
# ### end Alembic commands ###
|
||||
@@ -20,6 +20,7 @@ class GroupPreferencesModel(SqlAlchemyBase, BaseMixins):
|
||||
group: Mapped[Optional["Group"]] = orm.relationship("Group", back_populates="preferences")
|
||||
|
||||
private_group: Mapped[bool | None] = mapped_column(sa.Boolean, default=True)
|
||||
show_announcements: Mapped[bool] = mapped_column(sa.Boolean, default=True)
|
||||
|
||||
# Deprecated (see household preferences)
|
||||
first_day_of_week: Mapped[int | None] = mapped_column(sa.Integer, default=0)
|
||||
|
||||
@@ -22,6 +22,8 @@ class HouseholdPreferencesModel(SqlAlchemyBase, BaseMixins):
|
||||
group_id: AssociationProxy[GUID] = association_proxy("household", "group_id")
|
||||
|
||||
private_household: Mapped[bool | None] = mapped_column(sa.Boolean, default=True)
|
||||
show_announcements: Mapped[bool] = mapped_column(sa.Boolean, default=True)
|
||||
|
||||
lock_recipe_edits_from_other_households: Mapped[bool | None] = mapped_column(sa.Boolean, default=True)
|
||||
first_day_of_week: Mapped[int | None] = mapped_column(sa.Integer, default=0)
|
||||
|
||||
|
||||
@@ -68,7 +68,11 @@ class User(SqlAlchemyBase, BaseMixins):
|
||||
login_attemps: Mapped[int | None] = mapped_column(Integer, default=0)
|
||||
locked_at: Mapped[datetime | None] = mapped_column(NaiveDateTime, default=None)
|
||||
|
||||
# Group Permissions
|
||||
# Announcements
|
||||
show_announcements: Mapped[bool] = mapped_column(Boolean, default=True)
|
||||
last_read_announcement: Mapped[str | None] = mapped_column(String)
|
||||
|
||||
# Permissions
|
||||
can_manage_household: Mapped[bool | None] = mapped_column(Boolean, default=False)
|
||||
can_manage: Mapped[bool | None] = mapped_column(Boolean, default=False)
|
||||
can_invite: Mapped[bool | None] = mapped_column(Boolean, default=False)
|
||||
|
||||
Reference in New Issue
Block a user