Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Register #611

Open
wants to merge 109 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
56d1fe3
modeling
LMezza Feb 28, 2025
648f983
Merge pull request #1 from 4GeeksAcademy/data-base
alejandronicolasdelalamo Feb 28, 2025
adae353
First commit
alejandronicolasdelalamo Feb 28, 2025
90964c0
correccion de modelos
LMezza Mar 1, 2025
6ebcd5e
models
LMezza Mar 1, 2025
5226879
cleaning comments
LMezza Mar 1, 2025
1f79857
Merge pull request #2 from 4GeeksAcademy/data-base
JesusFpz Mar 1, 2025
7d597f8
navbar
JesusFpz Mar 2, 2025
83c25d7
Merge pull request #3 from 4GeeksAcademy/navbar
Jujugm Mar 2, 2025
27674a7
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 2, 2025
1939897
until /login at routes
Jujugm Mar 3, 2025
d122fc9
Merge pull request #4 from 4GeeksAcademy/getusers-createuser-protecte…
LMezza Mar 3, 2025
d8efc37
vista base de profile y logo sin fondo subida a navbar y login
Jujugm Mar 4, 2025
6f416db
Merge pull request #5 from 4GeeksAcademy/profile-view
alejandronicolasdelalamo Mar 4, 2025
0842132
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 4, 2025
ef40be1
Thememode1
JesusFpz Mar 5, 2025
3dee3f4
ActTheme
JesusFpz Mar 5, 2025
47d6ecf
Mensaje de commit
alejandronicolasdelalamo Mar 5, 2025
8d34c8c
Merge pull request #7 from 4GeeksAcademy/ThemeMode
LMezza Mar 5, 2025
d216960
funcionalidades
Jujugm Mar 5, 2025
8656724
descomentar logo
Jujugm Mar 5, 2025
7ab1834
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 5, 2025
9e1c771
loginfunciona
Jujugm Mar 5, 2025
47b9e22
Merge pull request #10 from 4GeeksAcademy/login-funcionalidad
alejandronicolasdelalamo Mar 5, 2025
32cd90b
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 5, 2025
ed657fc
Merge pull request #11 from 4GeeksAcademy/register
alejandronicolasdelalamo Mar 5, 2025
4c19e39
correccion de develop se elimina parte del merge de AA, se corrige home
LMezza Mar 6, 2025
20ff473
Merge pull request #12 from 4GeeksAcademy/notes
LMezza Mar 6, 2025
fbdef99
edicion de models y admin forms
LMezza Mar 6, 2025
6abea9c
Resueltos conflictos en routes.py y loginview.js
LMezza Mar 6, 2025
1c17ab3
profileview y logo cambio ruta
Jujugm Mar 6, 2025
9de1010
Merge pull request #13 from 4GeeksAcademy/profile-view
LMezza Mar 6, 2025
7b2dbab
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
LMezza Mar 6, 2025
5bd1777
edicion de models y admin.py
LMezza Mar 6, 2025
bd99fd8
Merge pull request #14 from 4GeeksAcademy/data-base
Jujugm Mar 6, 2025
ea2296b
rutas
JesusFpz Mar 6, 2025
b0f7e8f
solucion
JesusFpz Mar 6, 2025
da2071e
landingpage y register
alejandronicolasdelalamo Mar 7, 2025
06a0424
Merge pull request #15 from 4GeeksAcademy/landingpage
alejandronicolasdelalamo Mar 7, 2025
df2b640
aaaaa
Jujugm Mar 7, 2025
0e340c5
Merge pull request #16 from 4GeeksAcademy/profile-view
alejandronicolasdelalamo Mar 7, 2025
bbef75d
done 1 spring
Jujugm Mar 7, 2025
7cb672a
actualizarmergenavbar
JesusFpz Mar 7, 2025
8b7ddc4
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
JesusFpz Mar 7, 2025
3aa50d2
backend fetch dinámico
Jujugm Mar 7, 2025
92da0a7
Merge pull request #18 from 4GeeksAcademy/profile-view
alejandronicolasdelalamo Mar 7, 2025
0f7d9a8
mejora del navbar
JesusFpz Mar 7, 2025
db2c1ea
landingage2
alejandronicolasdelalamo Mar 7, 2025
8a791ec
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
JesusFpz Mar 7, 2025
653e2eb
actualizacionNavbarProfile
JesusFpz Mar 7, 2025
590a916
Merge pull request #19 from 4GeeksAcademy/navbar
Jujugm Mar 7, 2025
80b6c9a
fix models
LMezza Mar 8, 2025
aae090d
resolviendo conflicto de flux backend url
LMezza Mar 8, 2025
2dd2ffb
register change
alejandronicolasdelalamo Mar 8, 2025
161749e
Merge pull request #20 from 4GeeksAcademy/register
LMezza Mar 8, 2025
784c435
register
LMezza Mar 8, 2025
576b4d0
resolving merge de profile
LMezza Mar 8, 2025
2ce4797
notes front end, card, form de maapeo, edit, create
LMezza Mar 8, 2025
acd793e
funcionalidades login y register , alerts y encript pw
Jujugm Mar 9, 2025
572284b
Merge pull request #21 from 4GeeksAcademy/funcionalidad-register
JesusFpz Mar 9, 2025
580c99a
cardnote y formnote
LMezza Mar 9, 2025
e5f02aa
git pull de develop ultima edicion de julia
LMezza Mar 9, 2025
51f3e26
navbar logout y auth
JesusFpz Mar 9, 2025
5b71f07
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 9, 2025
d90b65e
merge
LMezza Mar 9, 2025
49d92d6
navbar dropdown
JesusFpz Mar 9, 2025
7194ef9
Merge pull request #22 from 4GeeksAcademy/navbar
LMezza Mar 9, 2025
07e2808
conflicto de migrations
LMezza Mar 9, 2025
a2a62d0
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 9, 2025
032d052
modeling category and role, end point y flux register
LMezza Mar 9, 2025
98b6d32
Merge pull request #23 from 4GeeksAcademy/data-base
Jujugm Mar 9, 2025
18f031f
Merge branch 'develop' of https://github.com/4GeeksAcademy/onmi-app i…
alejandronicolasdelalamo Mar 9, 2025
5dbe347
landing y footer
alejandronicolasdelalamo Mar 9, 2025
a166d93
Merge pull request #24 from 4GeeksAcademy/landingpage
LMezza Mar 9, 2025
139e671
navbar mejorado
JesusFpz Mar 9, 2025
028952e
navbar finalizado
JesusFpz Mar 10, 2025
a7932e3
Merge pull request #25 from 4GeeksAcademy/navbar
alejandronicolasdelalamo Mar 10, 2025
a24e807
dd
Jujugm Mar 10, 2025
6aa4455
navbar
LMezza Mar 10, 2025
654c066
navbar
LMezza Mar 10, 2025
4651a8b
actualizacion de navbar
LMezza Mar 10, 2025
1dc5ac3
base de datos edicion de role descomentado
LMezza Mar 10, 2025
c6e6b35
Merge pull request #26 from 4GeeksAcademy/data-base
JesusFpz Mar 10, 2025
ecba69f
first editprofile
alejandronicolasdelalamo Mar 10, 2025
d7114e1
pomodoro injerct
Jujugm Mar 12, 2025
ef5083a
pomodoro y merge
Jujugm Mar 12, 2025
36e05e6
endpoints post,get,detele
JesusFpz Mar 12, 2025
8c9f610
pomodoro terminado
Jujugm Mar 13, 2025
d301228
Merge pull request #28 from 4GeeksAcademy/profile-view
LMezza Mar 13, 2025
e54ca7e
editprofile
alejandronicolasdelalamo Mar 13, 2025
111bc43
Merge pull request #29 from 4GeeksAcademy/editprofile
JesusFpz Mar 13, 2025
12b532b
no se
JesusFpz Mar 14, 2025
c01015d
clean db
Jujugm Mar 14, 2025
ed23442
Merge pull request #30 from 4GeeksAcademy/avatar
JesusFpz Mar 14, 2025
a2ce222
cleanConsole
JesusFpz Mar 14, 2025
fcb68d4
post,get,delet protegidos
JesusFpz Mar 14, 2025
d02875f
navbarsa
JesusFpz Mar 15, 2025
f5f4beb
arreglo navbar1raparte
JesusFpz Mar 15, 2025
05c5780
arreglo navbar
JesusFpz Mar 16, 2025
1c318a9
conflicto navbar solucionado
JesusFpz Mar 16, 2025
94fceb0
Merge pull request #31 from 4GeeksAcademy/navbar
LMezza Mar 16, 2025
8abc4df
habit new actualizado
JesusFpz Mar 16, 2025
d3712c0
Merge pull request #32 from 4GeeksAcademy/Habit-tracker-backend
LMezza Mar 16, 2025
6b6725c
modelin y vistas de panel de admin
LMezza Mar 16, 2025
a2c18e6
Merge pull request #34 from 4GeeksAcademy/modeling
JesusFpz Mar 16, 2025
6e09a46
register gender
alejandronicolasdelalamo Mar 16, 2025
31784a8
register gender1
alejandronicolasdelalamo Mar 16, 2025
64d8907
register gender2
alejandronicolasdelalamo Mar 16, 2025
f96bc7f
register add gender
alejandronicolasdelalamo Mar 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,8 @@
"editor.defaultFormatter": "esbenp.prettier-vscode",
"workbench.editorAssociations": {
"*.md": "vscode.markdown.preview.editor"
},
"[javascript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
}
}
2 changes: 1 addition & 1 deletion Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ verify_ssl = true

[packages]
flask = "*"
sqlalchemy = "==1.4.46"
sqlalchemy = "*"
flask-sqlalchemy = "*"
flask-migrate = "*"
flask-swagger = "*"
Expand Down
756 changes: 416 additions & 340 deletions Pipfile.lock

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions migrations/README
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Single-database configuration for Flask.
50 changes: 50 additions & 0 deletions migrations/alembic.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# A generic, single database configuration.

[alembic]
# template used to generate migration files
# file_template = %%(rev)s_%%(slug)s

# set to 'true' to run the environment during
# the 'revision' command, regardless of autogenerate
# revision_environment = false


# Logging configuration
[loggers]
keys = root,sqlalchemy,alembic,flask_migrate

[handlers]
keys = console

[formatters]
keys = generic

[logger_root]
level = WARN
handlers = console
qualname =

[logger_sqlalchemy]
level = WARN
handlers =
qualname = sqlalchemy.engine

[logger_alembic]
level = INFO
handlers =
qualname = alembic

[logger_flask_migrate]
level = INFO
handlers =
qualname = flask_migrate

[handler_console]
class = StreamHandler
args = (sys.stderr,)
level = NOTSET
formatter = generic

[formatter_generic]
format = %(levelname)-5.5s [%(name)s] %(message)s
datefmt = %H:%M:%S
113 changes: 113 additions & 0 deletions migrations/env.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
import logging
from logging.config import fileConfig

from flask import current_app

from alembic import context

# this is the Alembic Config object, which provides
# access to the values within the .ini file in use.
config = context.config

# Interpret the config file for Python logging.
# This line sets up loggers basically.
fileConfig(config.config_file_name)
logger = logging.getLogger('alembic.env')


def get_engine():
try:
# this works with Flask-SQLAlchemy<3 and Alchemical
return current_app.extensions['migrate'].db.get_engine()
except (TypeError, AttributeError):
# this works with Flask-SQLAlchemy>=3
return current_app.extensions['migrate'].db.engine


def get_engine_url():
try:
return get_engine().url.render_as_string(hide_password=False).replace(
'%', '%%')
except AttributeError:
return str(get_engine().url).replace('%', '%%')


# add your model's MetaData object here
# for 'autogenerate' support
# from myapp import mymodel
# target_metadata = mymodel.Base.metadata
config.set_main_option('sqlalchemy.url', get_engine_url())
target_db = current_app.extensions['migrate'].db

# other values from the config, defined by the needs of env.py,
# can be acquired:
# my_important_option = config.get_main_option("my_important_option")
# ... etc.


def get_metadata():
if hasattr(target_db, 'metadatas'):
return target_db.metadatas[None]
return target_db.metadata


def run_migrations_offline():
"""Run migrations in 'offline' mode.
This configures the context with just a URL
and not an Engine, though an Engine is acceptable
here as well. By skipping the Engine creation
we don't even need a DBAPI to be available.
Calls to context.execute() here emit the given string to the
script output.
"""
url = config.get_main_option("sqlalchemy.url")
context.configure(
url=url, target_metadata=get_metadata(), literal_binds=True
)

with context.begin_transaction():
context.run_migrations()


def run_migrations_online():
"""Run migrations in 'online' mode.
In this scenario we need to create an Engine
and associate a connection with the context.
"""

# this callback is used to prevent an auto-migration from being generated
# when there are no changes to the schema
# reference: http://alembic.zzzcomputing.com/en/latest/cookbook.html
def process_revision_directives(context, revision, directives):
if getattr(config.cmd_opts, 'autogenerate', False):
script = directives[0]
if script.upgrade_ops.is_empty():
directives[:] = []
logger.info('No changes in schema detected.')

conf_args = current_app.extensions['migrate'].configure_args
if conf_args.get("process_revision_directives") is None:
conf_args["process_revision_directives"] = process_revision_directives

connectable = get_engine()

with connectable.connect() as connection:
context.configure(
connection=connection,
target_metadata=get_metadata(),
**conf_args
)

with context.begin_transaction():
context.run_migrations()


if context.is_offline_mode():
run_migrations_offline()
else:
run_migrations_online()
24 changes: 24 additions & 0 deletions migrations/script.py.mako
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
"""${message}

Revision ID: ${up_revision}
Revises: ${down_revision | comma,n}
Create Date: ${create_date}

"""
from alembic import op
import sqlalchemy as sa
${imports if imports else ""}

# revision identifiers, used by Alembic.
revision = ${repr(up_revision)}
down_revision = ${repr(down_revision)}
branch_labels = ${repr(branch_labels)}
depends_on = ${repr(depends_on)}


def upgrade():
${upgrades if upgrades else "pass"}


def downgrade():
${downgrades if downgrades else "pass"}
85 changes: 85 additions & 0 deletions migrations/versions/04456a7b739a_.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
"""empty message

Revision ID: 04456a7b739a
Revises:
Create Date: 2025-03-16 19:49:57.207122

"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = '04456a7b739a'
down_revision = None
branch_labels = None
depends_on = None


def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.create_table('user',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(length=120), nullable=False),
sa.Column('email', sa.String(length=120), nullable=False),
sa.Column('password', sa.String(length=500), nullable=False),
sa.Column('gender', sa.Enum('MALE', 'FEMALE', 'NON_BINARY', 'OTHER', 'PREFER_NOT_TO_SAY', name='gender'), nullable=False),
sa.Column('is_active', sa.Boolean(), nullable=False),
sa.Column('role', sa.Enum('ADMIN', 'MODERATOR', 'USER', name='role'), nullable=False),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('email')
)
op.create_table('projects',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(length=100), nullable=False),
sa.Column('description', sa.String(length=1500), nullable=False),
sa.Column('category', sa.String(length=100), nullable=True),
sa.Column('user_id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
sa.PrimaryKeyConstraint('id')
)
op.create_table('goals',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('target', sa.String(length=500), nullable=False),
sa.Column('description', sa.String(length=1000), nullable=False),
sa.Column('ready', sa.Boolean(), nullable=False),
sa.Column('user_id', sa.Integer(), nullable=False),
sa.Column('projects_id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['projects_id'], ['projects.id'], ),
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
sa.PrimaryKeyConstraint('id')
)
op.create_table('notes',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('title', sa.String(length=150), nullable=False),
sa.Column('description', sa.String(length=2000), nullable=False),
sa.Column('category', sa.String(length=100), nullable=True),
sa.Column('user_id', sa.Integer(), nullable=False),
sa.Column('projects_id', sa.Integer(), nullable=True),
sa.ForeignKeyConstraint(['projects_id'], ['projects.id'], ),
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
sa.PrimaryKeyConstraint('id')
)
op.create_table('habits',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(length=100), nullable=False),
sa.Column('description', sa.String(length=1000), nullable=False),
sa.Column('category', sa.String(length=100), nullable=True),
sa.Column('ready', sa.Boolean(), nullable=False),
sa.Column('user_id', sa.Integer(), nullable=False),
sa.Column('goals_id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['goals_id'], ['goals.id'], ),
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
sa.PrimaryKeyConstraint('id')
)
# ### end Alembic commands ###


def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_table('habits')
op.drop_table('notes')
op.drop_table('goals')
op.drop_table('projects')
op.drop_table('user')
# ### end Alembic commands ###
Loading