diff --git a/essenza/.gitignore b/.gitignore similarity index 79% rename from essenza/.gitignore rename to .gitignore index 6427dc2d..e3b2dd45 100644 --- a/essenza/.gitignore +++ b/.gitignore @@ -7,16 +7,18 @@ __pycache__/ # Entorno virtual venv/ .env/ +.venv # Archivos de base de datos -db.sqlite3 # Archivos de migraciones (si quieres omitirlos) -*/migrations/__pycache__/ -*/migrations/*.py +**/migrations/__pycache__/ +**/migrations/*.py # Archivos de configuración de VSCode .vscode/ # Archivos de Django estáticos staticfiles/ + +**/*.sqlite3 \ No newline at end of file diff --git "a/docs/Iteraci\303\263n 1/Informes de seguimiento de trabajo.pdf" "b/docs/Iteraci\303\263n 1/Informes de seguimiento de trabajo.pdf" new file mode 100644 index 00000000..f518d953 Binary files /dev/null and "b/docs/Iteraci\303\263n 1/Informes de seguimiento de trabajo.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/PRODUCT BACKLOG.pdf" "b/docs/Iteraci\303\263n 1/PRODUCT BACKLOG.pdf" new file mode 100644 index 00000000..ef63c164 Binary files /dev/null and "b/docs/Iteraci\303\263n 1/PRODUCT BACKLOG.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/Pol\303\255tica de ramas y mensajes commit.pdf" "b/docs/Iteraci\303\263n 1/Pol\303\255tica de ramas y mensajes commit.pdf" new file mode 100644 index 00000000..6e22a0fb Binary files /dev/null and "b/docs/Iteraci\303\263n 1/Pol\303\255tica de ramas y mensajes commit.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/REGISTRO DE CAMBIOS_v1.0.pdf" "b/docs/Iteraci\303\263n 1/REGISTRO DE CAMBIOS_v1.0.pdf" new file mode 100644 index 00000000..1dc549d3 Binary files /dev/null and "b/docs/Iteraci\303\263n 1/REGISTRO DE CAMBIOS_v1.0.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/REGISTRO DE DECISIONES_v1.0.pdf" "b/docs/Iteraci\303\263n 1/REGISTRO DE DECISIONES_v1.0.pdf" new file mode 100644 index 00000000..518ac1c5 Binary files /dev/null and "b/docs/Iteraci\303\263n 1/REGISTRO DE DECISIONES_v1.0.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/REGISTRO DE INCIDENCIAS_v1.0.pdf" "b/docs/Iteraci\303\263n 1/REGISTRO DE INCIDENCIAS_v1.0.pdf" new file mode 100644 index 00000000..ca3d1ec2 Binary files /dev/null and "b/docs/Iteraci\303\263n 1/REGISTRO DE INCIDENCIAS_v1.0.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/SPRINT RETROSPECTIVE.pdf" "b/docs/Iteraci\303\263n 1/SPRINT RETROSPECTIVE.pdf" new file mode 100644 index 00000000..8f6ab912 Binary files /dev/null and "b/docs/Iteraci\303\263n 1/SPRINT RETROSPECTIVE.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/SPRINT REVIEW.pdf" "b/docs/Iteraci\303\263n 1/SPRINT REVIEW.pdf" new file mode 100644 index 00000000..7dcbd94f Binary files /dev/null and "b/docs/Iteraci\303\263n 1/SPRINT REVIEW.pdf" differ diff --git "a/docs/Iteraci\303\263n 1/Sprint Backlog 1.pdf" "b/docs/Iteraci\303\263n 1/Sprint Backlog 1.pdf" new file mode 100644 index 00000000..3b8079dc Binary files /dev/null and "b/docs/Iteraci\303\263n 1/Sprint Backlog 1.pdf" differ diff --git a/essenza/db.sqlite3 b/essenza/db.sqlite3 new file mode 100644 index 00000000..836a999a Binary files /dev/null and b/essenza/db.sqlite3 differ diff --git a/essenza/essenza/settings.py b/essenza/essenza/settings.py index a05738be..662ee0e4 100644 --- a/essenza/essenza/settings.py +++ b/essenza/essenza/settings.py @@ -37,11 +37,16 @@ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', + 'user', + 'product', + 'order', + 'info', ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.locale.LocaleMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', @@ -54,11 +59,12 @@ TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': [], + 'DIRS': [ BASE_DIR / 'templates' ], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.request', + 'django.template.context_processors.i18n', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], @@ -102,7 +108,7 @@ # Internationalization # https://docs.djangoproject.com/en/5.2/topics/i18n/ -LANGUAGE_CODE = 'en-us' +LANGUAGE_CODE = 'es' TIME_ZONE = 'UTC' @@ -115,8 +121,15 @@ # https://docs.djangoproject.com/en/5.2/howto/static-files/ STATIC_URL = 'static/' - +STATICFILES_DIRS = [BASE_DIR / 'static'] # Default primary key field type # https://docs.djangoproject.com/en/5.2/ref/settings/#default-auto-field DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' + +# ----------------------------------------------------------------- +# SOLUCIÓN AL ERROR E304 +# Especifica que nuestro modelo 'Usuario' en la app 'user' +# es el modelo de autenticación oficial. +# ----------------------------------------------------------------- +AUTH_USER_MODEL = 'user.Usuario' \ No newline at end of file diff --git a/essenza/essenza/urls.py b/essenza/essenza/urls.py index 80e86799..e08e7df7 100644 --- a/essenza/essenza/urls.py +++ b/essenza/essenza/urls.py @@ -1,6 +1,9 @@ from django.contrib import admin -from django.urls import path +from django.urls import path, include from django.http import HttpResponse +from info.views import info_view +from product.views import EscaparateView +import user def home(request): html = """ @@ -14,6 +17,7 @@ def home(request): text-align: center; padding-top: 100px; color: #444; + position: relative; } h1 { color: #c06b3e; @@ -24,12 +28,70 @@ def home(request): font-size: 20px; color: #555; } + .info-button { + position: absolute; + top: 20px; + left: 20px; + width: 30px; + height: 30px; + background-color: #c06b3e; + border-radius: 50%; + text-align: center; + line-height: 30px; + font-size: 18px; + font-weight: bold; + color: white; + text-decoration: none; + cursor: pointer; + box-shadow: 0 2px 4px rgba(0,0,0,0.2); + transition: background-color 0.3s; + } + .info-button:hover { background-color: #a35a34; } + + .button-container { + margin-top: 30px; /* Espacio desde el texto de arriba */ + display: flex; + flex-direction: column; /* Apila los botones verticalmente */ + align-items: center; /* Centra los botones horizontalmente */ + gap: 20px; /* Espacio automático entre cada botón */ + } + + .action-button { + padding: 15px 35px; + background-color: #c06b3e; + color: white; + font-size: 15px; + font-weight: bold; + border: none; + border-radius: 10px; + cursor: pointer; + box-shadow: 0 4px 8px rgba(0,0,0,0.2); + text-decoration: none; + transition: background-color 0.3s, transform 0.2s; + + display: block; + width: 300px; /* Ancho fijo para que se vean uniformes */ + box-sizing: border-box; /* Para que el padding no afecte el ancho */ + } + + .action-button:hover { + background-color: #a35a34; + transform: scale(1.05); /* Efecto de zoom simple */ + } +
+ iTu espacio online de cosmética natural, belleza y cuidado personal.
Explora nuestros productos, descubre nuevas fragancias y disfruta de la experiencia Essenza 🌸
+ +