diff --git a/.github/workflows/commit_review.yml b/.github/workflows/commit_review.yml index 888a854..83484ac 100644 --- a/.github/workflows/commit_review.yml +++ b/.github/workflows/commit_review.yml @@ -5,7 +5,7 @@ on: jobs: review: - runs-on: ubuntu-latest + runs-on: self-hosted steps: - uses: actions/checkout@v4 with: @@ -19,9 +19,9 @@ jobs: pip install code-diff-review - name: Run Python script env: - OPENAI_API_KEY: ${{ secrets.ASSISTANT_ID }} + OPENAI_API_KEY: ${{ secrets.OPENAI_KEY }} OPENAI_ASSISTANT_ID: ${{ secrets.COMMIT_ASSISTANT }} - GH_TOKEN: ${{ secrets.GH_TOKEN }} + GH_TOKEN: ${{ secrets.GH_API_KEY}} REPO: ${{ github.repository }} BRANCH: ${{ github.ref_name }} GH_BEFORE: ${{ github.event.before }} @@ -40,4 +40,4 @@ jobs: --sha "$SHA" \ --message "$MESSAGE" \ --webhook "$WEBHOOK" \ - --websecret "$WEBSECRET" \ No newline at end of file + --websecret "$WEBSECRET" diff --git a/.github/workflows/condor.yml b/.github/workflows/condor.yml index 24723f4..8d7d9ca 100644 --- a/.github/workflows/condor.yml +++ b/.github/workflows/condor.yml @@ -1,24 +1,18 @@ name: Condor Code Review - on: [pull_request] - jobs: review: runs-on: ubuntu-latest - steps: - name: Checkout code uses: actions/checkout@v2 - - name: Set up Python uses: actions/setup-python@v2 with: python-version: 3.8 - - name: Install dependencies run: | python -m pip install --upgrade pip pip install condor_code_reviewer - - name: Run Condor - run: condor --gh-api-key ${{ secrets.GH_API_KEY }} --assistant-id ${{ secrets.ASSISTANT_ID }} --pull-request-url ${{ github.event.pull_request.html_url }} \ No newline at end of file + run: condor --openai-key ${{ secrets.OPENAI_KEY }} --gh-api-key ${{ secrets.GH_API_KEY }} --assistant-id ${{ secrets.ASSISTANT_ID }} --pull-request-url ${{ github.event.pull_request.html_url }} diff --git a/src/assets/camping2.png b/src/assets/camping2.png new file mode 100644 index 0000000..a3503be Binary files /dev/null and b/src/assets/camping2.png differ diff --git a/src/assets/eventos2.png b/src/assets/eventos2.png new file mode 100644 index 0000000..5e8a32c Binary files /dev/null and b/src/assets/eventos2.png differ diff --git a/src/assets/hospedaje2.png b/src/assets/hospedaje2.png new file mode 100644 index 0000000..c1c607d Binary files /dev/null and b/src/assets/hospedaje2.png differ diff --git a/src/components/GoogleMap.jsx b/src/components/GoogleMap.jsx index 9588645..3bfe6c3 100644 --- a/src/components/GoogleMap.jsx +++ b/src/components/GoogleMap.jsx @@ -64,8 +64,8 @@ const GoogleMapComponent = ({ onMapLoad, filterType, places }) => { const iconos = { propiedad: 'http://maps.google.com/mapfiles/ms/icons/blue-dot.png', camping: 'http://maps.google.com/mapfiles/ms/icons/green-dot.png', - servicios_y_oficios: 'http://maps.google.com/mapfiles/ms/icons/yellow-dot.png', - eventos: 'http://maps.google.com/mapfiles/ms/icons/orange-dot.png', + servicios_y_oficios: 'http://maps.google.com/mapfiles/ms/icons/purple-dot.png', + eventos: 'http://maps.google.com/mapfiles/ms/icons/red-dot.png', }; /* diff --git a/src/components/Simbologia.jsx b/src/components/Simbologia.jsx index dc2fecb..c527e52 100644 --- a/src/components/Simbologia.jsx +++ b/src/components/Simbologia.jsx @@ -1,22 +1,24 @@ import React, { useState } from 'react'; import deportes from '../assets/deportes.png'; -import eventos from '../assets/eventos.png'; +import eventos from '../assets/eventos2.png'; import gastronomia from '../assets/gastronomia.png'; -import hospedaje from '../assets/hospedaje.png'; +import hospedaje from '../assets/hospedaje2.png'; import servicios from '../assets/servicios.png'; import turismo from '../assets/turismo.png'; +import camping from '../assets/camping2.png'; const Simbologia = () => { const [selectedTitle, setSelectedTitle] = useState(''); // Definimos un objeto para asociar imágenes con títulos const iconos = [ - { src: deportes, title: 'Deportes' }, - { src: eventos, title: 'Eventos' }, - { src: gastronomia, title: 'Gastronomía' }, + // { src: deportes, title: 'Deportes' }, { src: hospedaje, title: 'Hospedaje' }, - { src: servicios, title: 'Servicios Comunitarios' }, - { src: turismo, title: 'Turismo' }, + { src: camping, title: 'Camping' }, + { src: servicios, title: 'Servicios y Oficios' }, + { src: eventos, title: 'Eventos' }, + // { src: gastronomia, title: 'Gastronomía' }, + // { src: turismo, title: 'Turismo' }, ]; const handleClick = (title) => { diff --git a/src/components/lugares.js b/src/components/lugares.js index efc96e2..8a719f0 100644 --- a/src/components/lugares.js +++ b/src/components/lugares.js @@ -125,7 +125,8 @@ const lugares = [ horario_apertura: '10:00 AM', horario_cierre: '10:00 PM', imagen: 'https://www.castelloninformacion.com/wp-content/uploads/2024/01/festival-cometas.jpg', - rating: 's/n' + rating: 'n/a', + reseñas: [] }, { id: 7, @@ -142,7 +143,12 @@ const lugares = [ horario_apertura: '09:00 AM', horario_cierre: '05:00 PM', imagen: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQLvV61De4OClkKAKRsigpqN1L1se-qG6IagQ&s', - rating: 4.6 + rating: 4.6, + reseñas: [ + { autor: 'María Silva', comentario: 'Muy interesante y entretenida. Excelente comida.', puntuacion: 4.5 }, + { autor: 'Pedro Rojas', comentario: 'Gran variedad de productos locales. Muy recomendado.', puntuacion: 5 }, + { autor: 'Luisa Pérez', comentario: 'Un evento muy bonito y bien organizado. Volvería.', puntuacion: 4.3 } + ] }, // GASTRONOMIA @@ -161,7 +167,13 @@ const lugares = [ horario_apertura: '12:00 PM', horario_cierre: '10:00 PM', imagen: 'https://ralfvanveen.com/wp-content/uploads/2021/06/Placeholder-_-Glossary.svg', - rating: 4.3 + rating: 4.3, + reseñas: [ + { autor: 'Andrés Soto', comentario: 'Excelente comida y ambiente. Muy recomendado.', puntuacion: 4.5 }, + { autor: 'Carmen Díaz', comentario: 'Platos deliciosos y atención de primera. Volveré.', puntuacion: 4.0 }, + { autor: 'Javier Torres', comentario: 'Muy buena comida y precios razonables. Volvería.', puntuacion: 4.4 } + ] + }, { id: 9, @@ -178,7 +190,11 @@ const lugares = [ horario_apertura: '10:00 AM', horario_cierre: '08:00 PM', imagen: 'https://ralfvanveen.com/wp-content/uploads/2021/06/Placeholder-_-Glossary.svg', - rating: 4.7 + rating: 4.7, + reseñas: [ + { autor: 'María Pérez', comentario: 'Comida deliciosa y atención amable. Muy recomendado.', puntuacion: 4.8 }, + { autor: 'Pedro Muñoz', comentario: 'Excelente comida casera y precios razonables. Volveré.', puntuacion: 4.6 } + ] }, // SERVICIOS COMUNITARIOS @@ -257,7 +273,12 @@ const lugares = [ horario_apertura: '08:00 AM', horario_cierre: '06:00 PM', imagen: 'https://www.diarioelcentro.cl/wp-content/uploads/2022/12/Altos-de-Lircay-2.jpg', - rating: 4.9 + rating: 4.9, + reseñas: [ + { autor: 'Marcela Soto', comentario: 'Hermoso parque con rutas de senderismo increíbles.', puntuacion: 5 }, + { autor: 'Juan Torres', comentario: 'Un lugar maravilloso para disfrutar de la naturaleza.', puntuacion: 4.8 }, + { autor: 'Andrea Pérez', comentario: 'Excelente lugar para hacer trekking y disfrutar de la naturaleza.', puntuacion: 4.9 } + ] }, { id: 15, @@ -302,7 +323,12 @@ const lugares = [ horario_apertura: '09:00 AM', horario_cierre: '09:00 PM', imagen: 'https://termaschillan.cl/wp-content/uploads/2022/10/puerto_htch_jun2019-514-Edit-1024x683.jpg', - rating: 5 + rating: 5, + reseñas: [ + { autor: 'Cristina Torres', comentario: 'Un lugar increíble para relajarse y disfrutar de la naturaleza.', puntuacion: 5 }, + { autor: 'Pedro Soto', comentario: 'Excelente servicio y aguas termales muy relajantes.', puntuacion: 5 }, + { autor: 'María Pérez', comentario: 'Muy recomendado para un fin de semana de relajo.', puntuacion: 5 } + ] }, { id: 18, @@ -347,7 +373,11 @@ const lugares = [ horario_apertura: '24 horas', horario_cierre: '24 horas', imagen :'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRW7MxUQCL7EPugV5e4d23OE0IbIK6aC3z1TA&s', - rating: 5 + rating: 5, + reseñas: [ + { autor: 'Juan Pérez', comentario: 'Un lugar increíble para pescar y disfrutar de la naturaleza.', puntuacion: 5 }, + { autor: 'Carla Soto', comentario: 'Hermoso río con paisajes impresionantes. Muy recomendado.', puntuacion: 5 } + ] } ]; diff --git a/src/pages/servicios.jsx b/src/pages/servicios.jsx index e1cb16e..dbb9368 100644 --- a/src/pages/servicios.jsx +++ b/src/pages/servicios.jsx @@ -3,10 +3,10 @@ import '../styles/servicios.css'; import { useAuth0 } from '@auth0/auth0-react'; import Navbar from '../components/Navbar'; import Footer from '../components/Footer'; -import deportes from '../assets/deportes.png'; -import eventos from '../assets/eventos.png'; +import camping from '../assets/camping2.png'; +import eventos from '../assets/eventos2.png'; import gastronomia from '../assets/gastronomia.png'; -import hospedaje from '../assets/hospedaje.png'; +import hospedaje from '../assets/hospedaje2.png'; import servicios from '../assets/servicios.png'; import turismo from '../assets/turismo.png'; import { useNavigate } from 'react-router-dom'; @@ -32,6 +32,7 @@ const Servicios = () => { hospedaje: 'Encuentra alojamientos cómodos y asequibles en tu destino deseado.', servicios: 'Accede a una amplia gama de servicios locales que facilitarán tu vida.', turismo: 'Explora las atracciones turísticas más populares y disfruta de tu viaje al máximo.', + camping: 'Disfruta de la naturaleza y acampa en lugares designados para experimentar al aire libre. Encuentra sitios ideales para montar tiendas, hacer fogatas y vivir aventuras en entornos naturales.', }; return ( @@ -55,12 +56,13 @@ const Servicios = () => {

Servicios disponibles

- Deportes handleIconClick('deportes')} /> - Eventos handleIconClick('eventos')} /> - Gastronomía handleIconClick('gastronomia')} /> Hospedaje handleIconClick('hospedaje')} /> + Camping handleIconClick('camping')} /> + {/* Deportes handleIconClick('deportes')} /> */} + {/* Gastronomía handleIconClick('gastronomia')} /> */} Servicios handleIconClick('servicios')} /> - Turismo handleIconClick('turismo')} /> + Eventos handleIconClick('eventos')} /> + {/* Turismo handleIconClick('turismo')} /> */}
{/* Mostrar la información del servicio seleccionado */} {selectedService && ( diff --git a/src/pages/users/perfil.jsx b/src/pages/users/perfil.jsx index 0b54ae9..ccd001d 100644 --- a/src/pages/users/perfil.jsx +++ b/src/pages/users/perfil.jsx @@ -4,6 +4,7 @@ import Navbar from '../../components/Navbar'; import Footer from '../../components/Footer'; import '../../styles/users/perfil.css'; + const Perfil = () => { const { user, isAuthenticated, isLoading, logout } = useAuth0(); diff --git a/src/styles/mapa.css b/src/styles/mapa.css index fe23abf..b58f013 100644 --- a/src/styles/mapa.css +++ b/src/styles/mapa.css @@ -297,8 +297,11 @@ background-color: white; /* Fondo blanco para la legibilidad */ justify-content: center; /* Centra verticalmente */ padding: 20px; /* Espaciado interno */ border-radius: 10px; /* Esquinas redondeadas */ - box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Sombra suave */ + /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); Sombra suave */ margin-bottom: 20px; /* Espaciado inferior */ + border: 2px #714dc9; /* Borde morado más grueso */ + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4); /* Aumenta la sombra para darle más profundidad */ + background-color: #ffffff; /* Asegura un fondo blanco */ } /* Contenedor para los iconos */ @@ -308,8 +311,6 @@ background-color: white; /* Fondo blanco para la legibilidad */ cursor: pointer; /* Cambia el cursor al pasar por encima */ } - - /* Efecto de hover en el icono */ .icon:hover { transform: scale(1.1); /* Aumenta el tamaño al pasar el ratón */ @@ -319,7 +320,7 @@ background-color: white; /* Fondo blanco para la legibilidad */ .selected-title { margin-top: 20px; /* Espaciado superior */ font-size: 1.5rem; /* Tamaño de fuente para el título */ - font-weight: bold; /* Negrita */ - color: #714dc9; /* Color morado para el título */ + /* font-weight: bold; Negrita */ + color: #555; /* Color morado para el título */ } diff --git a/src/styles/servicios.css b/src/styles/servicios.css index 1b28480..8b8ae72 100644 --- a/src/styles/servicios.css +++ b/src/styles/servicios.css @@ -23,6 +23,14 @@ html, body { transform: scale(1.1); /* Efecto de aumento al pasar el mouse */ } + .service-info { + text-align: center; /* Centra el texto */ + max-width: 600px; /* Ajusta el ancho según sea necesario */ + margin: 20px auto; /* Centra el contenedor horizontalmente y añade margen superior e inferior */ + color: #555; + } + + /* Sección de introducción con imagen y texto */ .intro-section { display: flex; @@ -42,14 +50,14 @@ html, body { .intro-text { max-width: 600px; - color: #6c3bcc; /* Color del texto */ + /* color: #6c3bcc; Color del texto */ /* font-family: 'Montserrat'; */ /* text-align: center; Centra el título y subtítulo */ } .intro-text h1 { font-size: 30px; - color: #E2974B; + color: black; /* font-family: 'Montserrat'; */ margin-bottom: 10px; /* Ajusta el espacio debajo del título */ text-align: center; @@ -57,7 +65,7 @@ html, body { .subtitle { font-size: 20px; - color: #6c3bcc; /* Color morado para el subtítulo */ + color: #E2974B; /* Color morado para el subtítulo */ /* font-family: 'Montserrat'; */ font-weight: 600; margin-bottom: 20px; /* Espaciado debajo del subtítulo */ @@ -76,7 +84,7 @@ html, body { .button { display: block; margin: 20px auto; /* Esto centrará el botón horizontalmente y añadirá margen superior e inferior */ - background-color: #714dc9; /* Color del botón */ + background-color: #E2974B; /* Color del botón */ color: white; font-weight: bold; padding: 15px 20px; @@ -86,11 +94,16 @@ html, body { /* font-family: 'Montserrat'; */ } +.button:hover { + background-color: black; /* Cambia el color a negro al pasar el mouse */ + color: white; /* Asegúrate de que el texto siga siendo visible */ +} + /* Alinear el título con el texto y ajustar el espacio */ .business-promotion-title { text-align: left; /* Alineación a la izquierda */ font-size: 22px; - color: #6c3bcc; /* Color morado para el título */ + color: #E2974B; /* Color morado para el título */ font-weight: bold; margin-top: 40px; /* Espacio entre los iconos y el título */ max-width: 800px; diff --git a/src/styles/users/perfil.css b/src/styles/users/perfil.css index 9a3f817..c5fb995 100644 --- a/src/styles/users/perfil.css +++ b/src/styles/users/perfil.css @@ -18,20 +18,26 @@ html, body { min-height: 100vh; justify-content: space-between; /* Distribuye el contenido y el footer al fondo */ width: 100%; /* Abarca todo el ancho */ + background-color: #f9f9f9; /* Fondo más claro para la página */ } .perfil-content { flex-grow: 1; /* Asegura que el contenido crezca y empuje el footer hacia abajo */ - margin: 40px 20px; /* Márgenes: Arriba y abajo 40px, izquierda y derecha 20px */ - padding: 20px; /* Relleno interno */ + margin: 40px auto; /* Márgenes: Arriba y abajo 40px, izquierda y derecha 20px */ + padding: 30px; /* Relleno interno */ background-color: #fff; /* Opcional: color de fondo para destacar el contenido */ + max-width: 600px; /* Limita el ancho para que se vea más centrado */ + box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1); /* Sombra suave para dar un efecto de tarjeta */ + border-radius: 10px; + text-align: center; } -.perfil-header { +.perfil-header h1{ display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; + text-align: center; } .perfil-avatar { @@ -40,18 +46,25 @@ html, body { border-radius: 50%; object-fit: cover; margin-bottom: 20px; + margin: 0 auto 20px; + display: block; + border: 4px solid #E2974B; /* Borde de color para destacar el avatar */ } .perfil-name { font-size: 24px; color: #333333; margin-bottom: 10px; + text-align: center; + font-weight: bold; + text-align: center; } -.perfil-email { - font-size: 18px; - color: #000000; +.perfil-email, .perfil-info { + font-size: 16px; + color: #555; margin-bottom: 20px; + text-align: center; } .perfil-info { @@ -64,20 +77,29 @@ html, body { display: flex; justify-content: space-between; margin-bottom: 20px; + gap: 15px; /* Espacio entre los stats */ + margin-top: 30px; } .stat { - background-color: #f0f0f0; + background-color: #E2974B; + color: #fff; width: 30%; text-align: center; padding: 15px; border-radius: 10px; + box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); + transition: transform 0.2s ease; /* Efecto al pasar el cursor */ +} + +.stat:hover { + transform: translateY(-5px); /* Efecto de levantamiento al pasar el cursor */ } .stat p { font-size: 14px; - color: #636260; - margin-bottom: 10px; + color: #fff; + margin-bottom: 5px; } .stat span { @@ -87,7 +109,7 @@ html, body { } .cerrar-sesion-button { - background-color: #fc7b03; + background-color: #E2974B; color: #ffffff; border: none; padding: 10px 20px; @@ -96,6 +118,9 @@ html, body { cursor: pointer; transition: background-color 0.3s ease; font-weight: bold; + margin-top: 20px; + display: block; + width: 100%; } .cerrar-sesion-button:hover { @@ -120,3 +145,10 @@ footer { font-size: 24px; color: #000000; } + +.stat i { + font-size: 20px; + margin-right: 8px; + color: white; +} +