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

Boton para compartir tonto del dia #76

Merged
merged 10 commits into from
Apr 26, 2024
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
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
2 changes: 2 additions & 0 deletions frontend/src/App.css
Original file line number Diff line number Diff line change
Expand Up @@ -297,3 +297,5 @@ span {
text-decoration: none;
color: var(--texto);
}

/* Componente cpmpartir */
31 changes: 29 additions & 2 deletions frontend/src/Componentes/Tarjeta/Tarjeta.jsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,21 @@
const TarjetaTonta = ({ nombre, total, titulos }) => {
import { Link } from "react-router-dom";

const TarjetaTonta = ({ nombre, total, titulos, mensaje, todaLaInfo }) => {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Creo que hay dos variables para resolver un mismo problema.
Esto se podria resolver con una sola variable.

Te explico mas adelante.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hay dos opciones para mejorar esto: borrar la variable todaLaInfo o borrar la variable mensaje.
Pero una de las variables se tiene que ir.
No se pueden quedar las dos porque es confuso y no queda claro.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Opcion 1: Borrar todaLaInfo

Si se borra la variable todaLaInfo, el componente Tarjeta ya no va a ser responsable de decidir si arma el mensaje del dia o el mensaje con toda la info.

Como solo quedaria la variable mensaje, seria la responsabilidad de cada pantalla construir el mensaje que quiere mostrar en la tarjeta.

Opcion 2: Borrar mensaje

Si se borra la variable mensaje, el componente tarjeta va a tener toda la responsabilidad de armar el mensaje.

Dependiendo de todaLaInfo, el componente Tarjeta va a armar el mensaje del dia o el mensaje de toda la info.

Como la variable mensaje ya no existiria, las pantallas que usen la Tarjeta no van a poder mandar un valor de mensaje, solo van a poder decidir si mostrar toda la info o no.

let laInfo = "";
if (todaLaInfo != "") {
laInfo =
mensaje +
nombre +
"%0A" +
"Veces tonto: " +
total +
"%0A" +
"Titulos: " +
titulos;
} else {
laInfo = mensaje + nombre;
}

return (
<div className="principalTarjeta">
<div className="card tarjeta">
Expand All @@ -20,11 +37,21 @@ const TarjetaTonta = ({ nombre, total, titulos }) => {
<strong className="negrita">Titulos totales:</strong>{" "}
{titulos.length}
</h5>
<div>
<div className="fondoNav">
<p className="titulosObtenidos fondoNav">
<strong className="negrita">Titulos:</strong>{" "}
{titulos.join(", ")}
</p>
<div className="fondoNav">
<Link
to={`https://api.whatsapp.com/send?text= ${laInfo}`}
target="_blank"
>
<button type="button" className="btn btn-dark">
whatsapp
</button>
</Link>
</div>
</div>
</div>
</div>
Expand Down
4 changes: 4 additions & 0 deletions frontend/src/Pagina/CowboyDelDia/CowboyDelDia.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ const CowboyDelDia = () => {
nombre={cowboy.name}
total={"--"}
titulos={["--Próximamente--"]}
mensaje="Cowboy del día de hoy es "
todaLaInfo=""
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Estas pasando dos variables:

  • mensaje: con el texto que va a estar en el mensaje
  • todaLaInfo: que la usas solo para controlar que tipo de mensaje mandas, si es nulo mandas el mensaje chiquito y si es "" mandas el mensaje grande.

Creo que se podria usar una sola varaiable.
Hay que decidir si usas solo la variable mensaje o solo la variable todaLaInfo.

/>
)}
{errorCowboy && (
Expand All @@ -37,6 +39,8 @@ const CowboyDelDia = () => {
nombre={"Procesando un cowboy"}
total={"--"}
titulos={["----"]}
mensaje="El algoritmo está preparando un cowboy "
todaLaInfo=""
/>
)}

Expand Down
5 changes: 4 additions & 1 deletion frontend/src/Pagina/ElMasTonto/ElMasTonto.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,17 @@ const ListaElMasTonto = () => {
nombre={tonto.nombre}
total={tonto.total}
titulos={tonto.titulos}
todaLaInfo=""
/>
)}
{errorTonto && (
// Tarjeta de error del día del más tonto
<Tarjeta
nombre={"Procesando un tonto"}
nombre={"¡Procesando!"}
total={"--"}
titulos={["----"]}
mensaje="El algoritmo está preparando un tonto "
todaLaInfo=""
/>
)}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ const EstructuraDePerfil = () => {
nombre={participante.nombre}
total={participante.total}
titulos={participante.titulos}
mensaje="Tonto seleccionado: "
todaLaInfo={participante.total + participante.titulos}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No tiene sentido ponerle valores a variable todaLaInfo porque el componente Tarjeta nunca usa el valor de esta variable.

La tarjeta solo compara si todaLaInfo es igual a "".

En todo caso, si se queda la variable todaLaInfo deberia ser booleana.

/>
{/* Lista de titulos */}
<div className="ListaTitulos">
Expand Down
12 changes: 10 additions & 2 deletions frontend/src/Pagina/Inicio.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,18 @@ const Inicio = () => {
nombre={tonto.nombre}
total={tonto.total}
titulos={tonto.titulos}
mensaje="Tonto del día de hoy es "
todaLaInfo=""
/>
)}
{errorTonto && (
francosang marked this conversation as resolved.
Show resolved Hide resolved
// Tarjeta de error del día del más tonto
<Tarjeta
nombre={"Procesando un tonto"}
nombre={"¡Procesando!"}
total={"--"}
titulos={["----"]}
mensaje="El algoritmo está preparando un tonto "
todaLaInfo=""
/>
)}

Expand All @@ -51,14 +55,18 @@ const Inicio = () => {
nombre={cowboy.name}
total={"--"}
titulos={["--Próximamente--"]}
mensaje="Cowboy del día de hoy es "
todaLaInfo=""
/>
)}
{errorCowboy && (
// Tarjeta de error del cowboy del día
<Tarjeta
nombre={"Procesando un cowboy"}
nombre={"¡Procesando!"}
total={"--"}
titulos={["----"]}
mensaje="El algoritmo está preparando un cowboy "
todaLaInfo=""
/>
)}
</section>
Expand Down