Skip to content

Commit

Permalink
Merge pull request #74 from the-collab-lab/alert-messages
Browse files Browse the repository at this point in the history
Branch alert-messages merged into main
  • Loading branch information
borjaMarti authored Apr 5, 2024
2 parents 4ae38e0 + d589117 commit 1f8d279
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 9 deletions.
4 changes: 3 additions & 1 deletion src/components/ErrorMessage.jsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
const ErrorMessage = ({ errorMessage }) => {
return (
<p className="text-alertRed mt-10 text-base sm:text-lg">{errorMessage}</p>
<p className="italic text-alertRed mt-5 mb-4 text-base sm:text-lg border-alertRed border-2 rounded-md px-4 py-2 shadow-lg">
{errorMessage}
</p>
);
};

Expand Down
9 changes: 9 additions & 0 deletions src/components/Message.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
const Message = ({ message }) => {
return (
<p className="italic text-darkPurple mt-5 mb-4 text-base sm:text-lg border-darkPurple border-2 rounded-md px-4 py-2 shadow-lg">
{message}
</p>
);
};

export default Message;
1 change: 1 addition & 0 deletions src/components/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ export * from './SearchList';
export * from './Loading';
export * from './ButtonWithIcon';
export * from './ErrorMessage';
export * from './Message';
export * from './DeleteList';
export * from './Confirm';
export * from './DeleteItem';
2 changes: 1 addition & 1 deletion src/views/Home.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ export function Home({ data, setListPath, userId, userEmail }) {
</section>
)}

<section className="mb-8">
<section className="min-h-72 sm:min-h-52">
<h2 className="text-lg sm:text-xl text-left text-darkPurple border-solid border-darkPurple border-b pb-2 mb-8 ">
CREATE A NEW LIST
</h2>
Expand Down
34 changes: 27 additions & 7 deletions src/views/ManageList.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import { useState } from 'react';
import { addItem } from '../api/firebase';
import { shareList } from '../api/firebase';
import ErrorMessage from '../components/ErrorMessage';
import Message from '../components/Message';
import {
inputHasValue,
inputHasOnlyNUmbers,
Expand All @@ -11,6 +12,9 @@ import {
export function ManageList({ data, listPath, userId, userEmail }) {
const [addItemErrMessage, setAddItemErrMessage] = useState('');
const [shareListErrMessage, setShareListErrMessage] = useState('');
const [addItemMessage, setAddItemMessage] = useState('');
const [shareListMessage, setShareListMessage] = useState('');

let displayName;
for (let i = 0; i < listPath.length; i++) {
if (listPath[i] === '/') {
Expand Down Expand Up @@ -52,9 +56,9 @@ export function ManageList({ data, listPath, userId, userEmail }) {
let response = await addItem(listPath, { itemName, daysUntilNextPurchase });

if (response) {
alert(`${itemName} added to the list!`);
setAddItemMessage(`${itemName} added to the list!`);
} else {
alert(`${itemName} couldn't be added to the list...`);
setAddItemMessage(`${itemName} couldn't be added to the list...`);
}

form.reset();
Expand All @@ -71,6 +75,10 @@ export function ManageList({ data, listPath, userId, userEmail }) {
};
};

const Responses = {
Ok: 'ok',
};

async function sendInvite(e) {
e.preventDefault();

Expand All @@ -93,7 +101,11 @@ export function ManageList({ data, listPath, userId, userEmail }) {
const response = await shareList(listPath, userId, email);

if (response) {
alert(shareListMessages[response.code]);
if (response.code === Responses.Ok) {
setShareListMessage(shareListMessages[response.code]);
} else {
setShareListErrMessage(shareListMessages[response.code]);
}
}
mailForm.reset();
}
Expand All @@ -108,7 +120,7 @@ export function ManageList({ data, listPath, userId, userEmail }) {
Add new items and share your list with other users
</p>
</div>
<section className="flex flex-col w-full mb-8">
<section className="flex flex-col w-full min-h-80 sm:min-h-72">
<div className="flex flex-col">
<form
method="post"
Expand All @@ -125,7 +137,10 @@ export function ManageList({ data, listPath, userId, userEmail }) {
placeholder="Type a new item name"
name="item"
className="grow shrink bg-lightGrey border border-darkPurple rounded-md shadow-lg px-4 py-2 placeholder:text-darkPurple mb-5"
onChange={() => setAddItemErrMessage('')}
onChange={() => {
setAddItemErrMessage('');
setAddItemMessage('');
}}
></input>
<div className="grid sm:grid-cols-3 grid-cols-1 grid-rows-2 sm:grid-rows-1 gap-y-4 sm:gap-x-2 text-base sm:text-lg">
<select
Expand Down Expand Up @@ -156,9 +171,10 @@ export function ManageList({ data, listPath, userId, userEmail }) {
{addItemErrMessage !== '' && (
<ErrorMessage errorMessage={addItemErrMessage} />
)}
{addItemMessage !== '' && <Message message={addItemMessage} />}
</div>
</section>
<section className="flex flex-col w-full my-8">
<section className="flex flex-col w-full min-h-72 sm:min-h-52">
<form
method="post"
onSubmit={sendInvite}
Expand All @@ -175,7 +191,10 @@ export function ManageList({ data, listPath, userId, userEmail }) {
id="email"
placeholder="Share this list with another user"
className="col-span-3 sm:col-span-2 bg-lightGrey border border-darkPurple rounded-md shadow-lg px-4 py-2 placeholder:text-darkPurple"
onChange={() => setShareListErrMessage('')}
onChange={() => {
setShareListErrMessage('');
setShareListMessage('');
}}
></input>
<button
type="submit"
Expand All @@ -191,6 +210,7 @@ export function ManageList({ data, listPath, userId, userEmail }) {
{shareListErrMessage !== '' && (
<ErrorMessage errorMessage={shareListErrMessage} />
)}
{shareListMessage !== '' && <Message message={shareListMessage} />}
</section>
</div>
);
Expand Down

0 comments on commit 1f8d279

Please sign in to comment.