From 82c2e03e5895d6b133b0c5c0e0791056568425a5 Mon Sep 17 00:00:00 2001 From: liran26 Date: Sun, 23 Jul 2023 18:41:44 +0300 Subject: [PATCH 1/9] login and register features --- 04-Typescript/22-git/login/login.html | 12 ++++++++++++ 04-Typescript/22-git/login/register.html | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 04-Typescript/22-git/login/login.html create mode 100644 04-Typescript/22-git/login/register.html diff --git a/04-Typescript/22-git/login/login.html b/04-Typescript/22-git/login/login.html new file mode 100644 index 000000000..d37bea8d3 --- /dev/null +++ b/04-Typescript/22-git/login/login.html @@ -0,0 +1,12 @@ + + + + + + Document + + + +

Login

+ + \ No newline at end of file diff --git a/04-Typescript/22-git/login/register.html b/04-Typescript/22-git/login/register.html new file mode 100644 index 000000000..9bf844342 --- /dev/null +++ b/04-Typescript/22-git/login/register.html @@ -0,0 +1,12 @@ + + + + + + Document + + + +

Register

+ + \ No newline at end of file From 6456b6f622dfbd6149fd6a6eba1033c23803a022 Mon Sep 17 00:00:00 2001 From: liran26 Date: Sun, 23 Jul 2023 18:49:20 +0300 Subject: [PATCH 2/9] invnetory feature --- 04-Typescript/22-git/inventory/dist/invnetory.css | 0 04-Typescript/22-git/inventory/inventory.html | 13 +++++++++++++ 04-Typescript/22-git/inventory/invnetory.scss | 0 3 files changed, 13 insertions(+) create mode 100644 04-Typescript/22-git/inventory/dist/invnetory.css create mode 100644 04-Typescript/22-git/inventory/inventory.html create mode 100644 04-Typescript/22-git/inventory/invnetory.scss diff --git a/04-Typescript/22-git/inventory/dist/invnetory.css b/04-Typescript/22-git/inventory/dist/invnetory.css new file mode 100644 index 000000000..e69de29bb diff --git a/04-Typescript/22-git/inventory/inventory.html b/04-Typescript/22-git/inventory/inventory.html new file mode 100644 index 000000000..928a7b981 --- /dev/null +++ b/04-Typescript/22-git/inventory/inventory.html @@ -0,0 +1,13 @@ + + + + + + Document + + + + +

Inventory Feature

+ + \ No newline at end of file diff --git a/04-Typescript/22-git/inventory/invnetory.scss b/04-Typescript/22-git/inventory/invnetory.scss new file mode 100644 index 000000000..e69de29bb From f139fce89e7c06f4168a0402c6440c8691a44a36 Mon Sep 17 00:00:00 2001 From: Benjamin Volodarsky Date: Sun, 23 Jul 2023 18:56:31 +0300 Subject: [PATCH 3/9] update --- 04-Typescript/22-git/main/dist/download.png | Bin 0 -> 5092 bytes 04-Typescript/22-git/main/dist/style.css | 36 +++++++++++++++++++ 04-Typescript/22-git/main/index.html | 17 +++++++++ 04-Typescript/22-git/main/style.scss | 37 ++++++++++++++++++++ 4 files changed, 90 insertions(+) create mode 100644 04-Typescript/22-git/main/dist/download.png create mode 100644 04-Typescript/22-git/main/dist/style.css create mode 100644 04-Typescript/22-git/main/index.html create mode 100644 04-Typescript/22-git/main/style.scss diff --git a/04-Typescript/22-git/main/dist/download.png b/04-Typescript/22-git/main/dist/download.png new file mode 100644 index 0000000000000000000000000000000000000000..816d4619663b71b6088372b6f86847f5b499db09 GIT binary patch literal 5092 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 + + + + + Document + + + + + + + + + + + \ No newline at end of file diff --git a/04-Typescript/22-git/main/style.scss b/04-Typescript/22-git/main/style.scss new file mode 100644 index 000000000..fcff61f48 --- /dev/null +++ b/04-Typescript/22-git/main/style.scss @@ -0,0 +1,37 @@ +body { + background: rgb(217, 193, 193); + background: linear-gradient(90deg, rgba(217, 193, 193, 1) 0%, rgba(86, 198, 226, 1) 100%); + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} +.img{ + position: absolute; + top: 4vh; + border-radius: 40px; + animation: bigger infinite 2s ease-in-out; + border: 5px solid rgba(255, 0, 0, 0.308); + animation: turn infinite 2s ease-in-out; + @keyframes bigger { + 0%{ + transform: scale(1); + } + 50%{ + transform: scale(1.2); + } + 100%{ + transform: scale(1); + } + + } + @keyframes turn { + from{ + transform: rotate(0); + } + to{ + transform: rotate(1turn); + } + + } +} \ No newline at end of file From 558039b8af32dfd64f66bacb3239eadb0adaeaad Mon Sep 17 00:00:00 2001 From: navered <128045047+navered@users.noreply.github.com> Date: Sun, 23 Jul 2023 19:00:27 +0300 Subject: [PATCH 4/9] int admin --- 04-Typescript/22-git/admin/admin.html | 0 04-Typescript/22-git/admin/admin.ts | 0 04-Typescript/22-git/admin/dist/admin.js | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 04-Typescript/22-git/admin/admin.html create mode 100644 04-Typescript/22-git/admin/admin.ts create mode 100644 04-Typescript/22-git/admin/dist/admin.js diff --git a/04-Typescript/22-git/admin/admin.html b/04-Typescript/22-git/admin/admin.html new file mode 100644 index 000000000..e69de29bb diff --git a/04-Typescript/22-git/admin/admin.ts b/04-Typescript/22-git/admin/admin.ts new file mode 100644 index 000000000..e69de29bb diff --git a/04-Typescript/22-git/admin/dist/admin.js b/04-Typescript/22-git/admin/dist/admin.js new file mode 100644 index 000000000..e69de29bb From 4ea3a872648e4e91e6dceb360364eab4fda8f5a2 Mon Sep 17 00:00:00 2001 From: Tal Date: Sun, 23 Jul 2023 19:15:44 +0300 Subject: [PATCH 5/9] fisrt sprint --- 04-Typescript/22-git/dist/style.css | 1 + 04-Typescript/22-git/{ => features}/admin/admin.html | 0 04-Typescript/22-git/{ => features}/admin/admin.ts | 0 04-Typescript/22-git/{ => features}/admin/dist/admin.js | 0 .../22-git/{ => features}/inventory/dist/invnetory.css | 0 04-Typescript/22-git/{ => features}/inventory/inventory.html | 0 04-Typescript/22-git/{ => features}/inventory/invnetory.scss | 0 04-Typescript/22-git/{ => features}/login/login.html | 0 04-Typescript/22-git/{ => features}/login/register.html | 0 04-Typescript/22-git/style.scss | 2 ++ 10 files changed, 3 insertions(+) rename 04-Typescript/22-git/{ => features}/admin/admin.html (100%) rename 04-Typescript/22-git/{ => features}/admin/admin.ts (100%) rename 04-Typescript/22-git/{ => features}/admin/dist/admin.js (100%) rename 04-Typescript/22-git/{ => features}/inventory/dist/invnetory.css (100%) rename 04-Typescript/22-git/{ => features}/inventory/inventory.html (100%) rename 04-Typescript/22-git/{ => features}/inventory/invnetory.scss (100%) rename 04-Typescript/22-git/{ => features}/login/login.html (100%) rename 04-Typescript/22-git/{ => features}/login/register.html (100%) diff --git a/04-Typescript/22-git/dist/style.css b/04-Typescript/22-git/dist/style.css index be262b369..40c808cd2 100644 --- a/04-Typescript/22-git/dist/style.css +++ b/04-Typescript/22-git/dist/style.css @@ -1,3 +1,4 @@ +@import "./features/inventory/dist/invnetory.css"; h1 { background-color: yellow; } \ No newline at end of file diff --git a/04-Typescript/22-git/admin/admin.html b/04-Typescript/22-git/features/admin/admin.html similarity index 100% rename from 04-Typescript/22-git/admin/admin.html rename to 04-Typescript/22-git/features/admin/admin.html diff --git a/04-Typescript/22-git/admin/admin.ts b/04-Typescript/22-git/features/admin/admin.ts similarity index 100% rename from 04-Typescript/22-git/admin/admin.ts rename to 04-Typescript/22-git/features/admin/admin.ts diff --git a/04-Typescript/22-git/admin/dist/admin.js b/04-Typescript/22-git/features/admin/dist/admin.js similarity index 100% rename from 04-Typescript/22-git/admin/dist/admin.js rename to 04-Typescript/22-git/features/admin/dist/admin.js diff --git a/04-Typescript/22-git/inventory/dist/invnetory.css b/04-Typescript/22-git/features/inventory/dist/invnetory.css similarity index 100% rename from 04-Typescript/22-git/inventory/dist/invnetory.css rename to 04-Typescript/22-git/features/inventory/dist/invnetory.css diff --git a/04-Typescript/22-git/inventory/inventory.html b/04-Typescript/22-git/features/inventory/inventory.html similarity index 100% rename from 04-Typescript/22-git/inventory/inventory.html rename to 04-Typescript/22-git/features/inventory/inventory.html diff --git a/04-Typescript/22-git/inventory/invnetory.scss b/04-Typescript/22-git/features/inventory/invnetory.scss similarity index 100% rename from 04-Typescript/22-git/inventory/invnetory.scss rename to 04-Typescript/22-git/features/inventory/invnetory.scss diff --git a/04-Typescript/22-git/login/login.html b/04-Typescript/22-git/features/login/login.html similarity index 100% rename from 04-Typescript/22-git/login/login.html rename to 04-Typescript/22-git/features/login/login.html diff --git a/04-Typescript/22-git/login/register.html b/04-Typescript/22-git/features/login/register.html similarity index 100% rename from 04-Typescript/22-git/login/register.html rename to 04-Typescript/22-git/features/login/register.html diff --git a/04-Typescript/22-git/style.scss b/04-Typescript/22-git/style.scss index d429315b6..23f8aaf65 100644 --- a/04-Typescript/22-git/style.scss +++ b/04-Typescript/22-git/style.scss @@ -1,3 +1,5 @@ +@import "./features/inventory/dist/invnetory.css"; + h1{ background-color: yellow; } \ No newline at end of file From 0341dc151eac7330f6294d098a47df3fad08e8ee Mon Sep 17 00:00:00 2001 From: Benjamin Volodarsky Date: Sun, 23 Jul 2023 19:21:06 +0300 Subject: [PATCH 6/9] Update style.css --- 04-Typescript/22-git/dist/style.css | 1 + 1 file changed, 1 insertion(+) diff --git a/04-Typescript/22-git/dist/style.css b/04-Typescript/22-git/dist/style.css index 40c808cd2..900fa8902 100644 --- a/04-Typescript/22-git/dist/style.css +++ b/04-Typescript/22-git/dist/style.css @@ -1,4 +1,5 @@ @import "./features/inventory/dist/invnetory.css"; +@import "./main/dist/style.css" h1 { background-color: yellow; } \ No newline at end of file From ece6daf4df05b9c792bf8347e9bb507f6df3afda Mon Sep 17 00:00:00 2001 From: ziv leloneck <119840698+zivll1991@users.noreply.github.com> Date: Sun, 23 Jul 2023 19:21:34 +0300 Subject: [PATCH 7/9] admin.scss --- 04-Typescript/22-git/dist/style.css | 1 + 04-Typescript/22-git/features/admin/dist/style.css | 3 +++ 04-Typescript/22-git/features/admin/style.scss | 3 +++ 04-Typescript/22-git/style.scss | 8 ++++---- 4 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 04-Typescript/22-git/features/admin/dist/style.css create mode 100644 04-Typescript/22-git/features/admin/style.scss diff --git a/04-Typescript/22-git/dist/style.css b/04-Typescript/22-git/dist/style.css index 40c808cd2..8fd86df6f 100644 --- a/04-Typescript/22-git/dist/style.css +++ b/04-Typescript/22-git/dist/style.css @@ -1,4 +1,5 @@ @import "./features/inventory/dist/invnetory.css"; +@import "./features/admin/dist/style.css"; h1 { background-color: yellow; } \ No newline at end of file diff --git a/04-Typescript/22-git/features/admin/dist/style.css b/04-Typescript/22-git/features/admin/dist/style.css new file mode 100644 index 000000000..1bb68ddf5 --- /dev/null +++ b/04-Typescript/22-git/features/admin/dist/style.css @@ -0,0 +1,3 @@ +body { + background-color: black; +} \ No newline at end of file diff --git a/04-Typescript/22-git/features/admin/style.scss b/04-Typescript/22-git/features/admin/style.scss new file mode 100644 index 000000000..c4d554e05 --- /dev/null +++ b/04-Typescript/22-git/features/admin/style.scss @@ -0,0 +1,3 @@ +body { + background-color: black; +} diff --git a/04-Typescript/22-git/style.scss b/04-Typescript/22-git/style.scss index 23f8aaf65..de3c3c5ed 100644 --- a/04-Typescript/22-git/style.scss +++ b/04-Typescript/22-git/style.scss @@ -1,5 +1,5 @@ @import "./features/inventory/dist/invnetory.css"; - -h1{ - background-color: yellow; -} \ No newline at end of file +@import "./features/admin/dist/style.css"; +h1 { + background-color: yellow; +} From df838a34a81043be3001f4392383f81e9e1a034f Mon Sep 17 00:00:00 2001 From: margor666 Date: Sun, 23 Jul 2023 19:24:07 +0300 Subject: [PATCH 8/9] General css --- 04-Typescript/22-git/dist/style.css | 1 + 04-Typescript/22-git/features/general/dist/general.css | 3 +++ 04-Typescript/22-git/features/general/general.scss | 3 +++ 04-Typescript/22-git/style.scss | 1 + 4 files changed, 8 insertions(+) create mode 100644 04-Typescript/22-git/features/general/dist/general.css create mode 100644 04-Typescript/22-git/features/general/general.scss diff --git a/04-Typescript/22-git/dist/style.css b/04-Typescript/22-git/dist/style.css index 40c808cd2..389525103 100644 --- a/04-Typescript/22-git/dist/style.css +++ b/04-Typescript/22-git/dist/style.css @@ -1,4 +1,5 @@ @import "./features/inventory/dist/invnetory.css"; +@import url(); h1 { background-color: yellow; } \ No newline at end of file diff --git a/04-Typescript/22-git/features/general/dist/general.css b/04-Typescript/22-git/features/general/dist/general.css new file mode 100644 index 000000000..88cb00c52 --- /dev/null +++ b/04-Typescript/22-git/features/general/dist/general.css @@ -0,0 +1,3 @@ +body { + background-color: red; +} \ No newline at end of file diff --git a/04-Typescript/22-git/features/general/general.scss b/04-Typescript/22-git/features/general/general.scss new file mode 100644 index 000000000..438954d36 --- /dev/null +++ b/04-Typescript/22-git/features/general/general.scss @@ -0,0 +1,3 @@ +body { + background-color: red; +} \ No newline at end of file diff --git a/04-Typescript/22-git/style.scss b/04-Typescript/22-git/style.scss index 23f8aaf65..508828bd5 100644 --- a/04-Typescript/22-git/style.scss +++ b/04-Typescript/22-git/style.scss @@ -1,4 +1,5 @@ @import "./features/inventory/dist/invnetory.css"; +@import "./features/general/dist/general.css" h1{ background-color: yellow; From 1ec9999442be2f52912c74398810fa93200be353 Mon Sep 17 00:00:00 2001 From: Lee_D Date: Tue, 1 Aug 2023 12:10:47 +0300 Subject: [PATCH 9/9] deleting-merge-files --- .../19-PersonalProject/Lee/easyvet.html | 45 -- .../19-PersonalProject/Lee/easyvet.scss | 46 -- .../19-PersonalProject/Lee/easyvet.ts | 69 --- .../19-PersonalProject/Lee/index.html | 85 ---- 04-Typescript/19-PersonalProject/Lee/index.ts | 72 --- .../19-PersonalProject/Lee/pages/main.html | 62 --- .../19-PersonalProject/Lee/pages/main.scss | 185 -------- .../19-PersonalProject/Lee/pages/main.ts | 373 --------------- .../Lee/pages/patients.html | 39 -- .../Lee/pages/patients.scss | 83 ---- .../Lee/pages/supplies.html | 25 - .../Lee/pages/supplies.scss | 128 ----- .../19-PersonalProject/Lee/pages/supplies.ts | 438 ------------------ .../Lee/pages/treatments.html | 12 - .../Lee/pages/vaccines.html | 28 -- .../Lee/pages/vaccines.scss | 66 --- .../19-PersonalProject/Lee/pages/view.ts | 16 - .../19-PersonalProject/Lee/style.scss | 118 ----- 18 files changed, 1890 deletions(-) delete mode 100644 04-Typescript/19-PersonalProject/Lee/easyvet.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/easyvet.scss delete mode 100644 04-Typescript/19-PersonalProject/Lee/easyvet.ts delete mode 100644 04-Typescript/19-PersonalProject/Lee/index.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/index.ts delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/main.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/main.scss delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/main.ts delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/patients.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/patients.scss delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/supplies.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/supplies.scss delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/supplies.ts delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/treatments.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/vaccines.html delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/vaccines.scss delete mode 100644 04-Typescript/19-PersonalProject/Lee/pages/view.ts delete mode 100644 04-Typescript/19-PersonalProject/Lee/style.scss diff --git a/04-Typescript/19-PersonalProject/Lee/easyvet.html b/04-Typescript/19-PersonalProject/Lee/easyvet.html deleted file mode 100644 index 608419727..000000000 --- a/04-Typescript/19-PersonalProject/Lee/easyvet.html +++ /dev/null @@ -1,45 +0,0 @@ - - -<<<<<<< HEAD -======= - ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - - - - - -<<<<<<< HEAD - EasyVet - - - -======= - - - EasyVet - - - -
-
- - - - -
- - -
- ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/easyvet.scss b/04-Typescript/19-PersonalProject/Lee/easyvet.scss deleted file mode 100644 index a8d5775ab..000000000 --- a/04-Typescript/19-PersonalProject/Lee/easyvet.scss +++ /dev/null @@ -1,46 +0,0 @@ - -*{ - margin: 0; -} - html { - background-color: rgb(15, 215, 215); -} - -.wrapper { - i { - padding-right: 10px; - } - - - .header { - display: block; - text-align: right; - background-color: #03a1a1; - width: 100%; - height: 25px; - font-size: 22px; - - } - - - .navigation { - display: block; - text-align: center; - justify-content: space-between; - width: 100%; - color: rgb(86, 86, 86); - font-family: "Quicksand", sans-serif; - font-weight: bold; - font-size: 20px; - background-color: #bcbcbc; - - - -} - -#paw { - width: 40px; - height: 40px; -} - -} \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/easyvet.ts b/04-Typescript/19-PersonalProject/Lee/easyvet.ts deleted file mode 100644 index 2cbdcef93..000000000 --- a/04-Typescript/19-PersonalProject/Lee/easyvet.ts +++ /dev/null @@ -1,69 +0,0 @@ -class Client { - id: string; - constructor(public name: string, public owner: string, public image: string, public birthYear: number) { - this.id = uid(); - } -} - -const clients: Client[] = [ - new Client("Nella", "Judith Dekel", "https://www.instagram.com/p/CX-9-hdIUFd/?img_index=1", 2021), - new Client("Jango", "Linor Monir", "https://media.istockphoto.com/id/1259203799/photo/portrait-of-a-young-happy-belgian-shepherd-dog-malinois-posing-outdoors.jpg?s=612x612&w=0&k=20&c=yxDw11q_2NAgrUdm0AuBkqY1UnY9MKmtiaoeWOgHNRg=", 2022), - new Client("Dubi", "Barak Ortman", "https://www.thesprucepets.com/thmb/DRKAoOkKeWmh5SMzDvapRfnZpn0=/4984x0/filters:no_upscale():strip_icc()/1_BlackPuppy-5ba50070c9e77c0082221c54.jpg", 2021), - new Client("Cocus", "Yael Ortman", "https://thumbs.dreamstime.com/b/labrador-puppy-5857333.jpg", 2020), - new Client("Hugo", "Netali Ortman", "https://qph.cf2.quoracdn.net/main-qimg-199d9dbd6c8b38138ed8ba833ec82162-lq", 2015) - - - - -] - -class Vaccine { - id: string; - constructor(public vacName: string, public price: number) { - this.id = uid(); - } -} - -const Vaccines: Vaccine[] = [ - - new Vaccine("Rabies", 100), - new Vaccine("FVRCP", 80), - new Vaccine("FHV", 60), - new Vaccine("FHV-1", 70), - new Vaccine("Parvovirus", 120), - new Vaccine("Leptospirosis", 50), - new Vaccine("Distemper", 200), - new Vaccine("Canine Infectious Hepatitis", 130) -] - -class Treatment { - id: string; - constructor(public treatName: string, public price: number) { - this.id = uid(); - } -} - -const treatments: Treatment[] = [ - new Treatment("Haircut", 200), - new Treatment("Hospitalization per night", 450), - new Treatment("teeth cleaning", 100), - new Treatment("x-ray", 100), - new Treatment("US", 100), -] - - -class Supply { - id: string; - constructor(public supName: string, public price: number) { - this.id = uid(); - } -} - - -const supplies: Supply[] = [ - new Supply("Medical food 1 can", 17), - new Supply("Ampoule Anti-flea & Tick", 47), - new Supply("seringe", 10) - - -] diff --git a/04-Typescript/19-PersonalProject/Lee/index.html b/04-Typescript/19-PersonalProject/Lee/index.html deleted file mode 100644 index af182bc01..000000000 --- a/04-Typescript/19-PersonalProject/Lee/index.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - Document - - - - - - - -
-
-
- -
-

-

Fri July 7, 2023

-
- -
-
-
Sun
-
Mon
-
Tue
-
Wed
-
Thu
-
Fri
-
Sat
-
-
- -
-
-
- - - - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/index.ts b/04-Typescript/19-PersonalProject/Lee/index.ts deleted file mode 100644 index 82ad3c379..000000000 --- a/04-Typescript/19-PersonalProject/Lee/index.ts +++ /dev/null @@ -1,72 +0,0 @@ -const date: Date = new Date(); - -const renderCalendar = () => { - - - -date.setDate(1); - -const monthDays: Element | null = document.querySelector(".days") - -const lastDay = new Date(date.getFullYear(), date.getMonth()+1, 0).getDate(); - -const prevLastDay = new Date(date.getFullYear(), date.getMonth(), 0).getDate(); - -const firstDayIndex = date.getDay() - -const lastDayIndex = new Date(date.getFullYear(), date.getMonth()+1, 0).getDay(); - -const nextDays = 7 - lastDayIndex - 1; - -const months = [ - "January", - "February", - "March", - "April", - "May", - "June", - "July", - "August", - "September", - "October", - "November", - "December" -]; - -document.querySelector(".date h1")?.innerHTML = months [date.getMonth()] - -document.querySelector(".date p")?.innerHTML = date.toDateString() - -let days = ""; - -for (let x = firstDayIndex; x > 0; x--) { - days += `
${prevLastDay - x + 1}
`; -} - -for (let i = 1; i <= lastDay; i++) { - if (i === new Date().getDate() && date.getMonth() === new Date().getMonth()){ - days += `
${i}
`; - - } else { - days += `
${i}
`; - - } - -} - -for (let j = 1; j <= nextDays; j++) { - days += `
${j}
`; - monthDays.innerHTML = days; -} -} -document.querySelector('.prev')?.addEventListener('click', () => { - date.setMonth(date.getMonth() - 1) - renderCalendar() -}) - -document.querySelector('.next')?.addEventListener('click', () => { - date.setMonth(date.getMonth() + 1) - renderCalendar() -}) - -renderCalendar() \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/main.html b/04-Typescript/19-PersonalProject/Lee/pages/main.html deleted file mode 100644 index 19c06286d..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/main.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - easyVet App - - - - - -
- main -
- -
- - - - - -
- - - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/main.scss b/04-Typescript/19-PersonalProject/Lee/pages/main.scss deleted file mode 100644 index a9204af73..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/main.scss +++ /dev/null @@ -1,185 +0,0 @@ - -*{ - margin: 0; - padding: 0; - color: #fff; - font-family: "Quicksand", sans-serif; - letter-spacing: 1px; - font-size: 20px; -} - -html { - height: 100%; - -body { - - display: flex; - flex-direction: column; - min-height: 100%; - - img { - margin-top: 1rem; - } - - nav { - height: 4rem; - width: 100vw; - display: flex; - position: fixed; - z-index: 10; - background-color: #03a1a1; - box-shadow: 0 3px 20px rgba(0,0,0,0.2); - - - - .logo { - padding: -2vh 7vw; - width: 20vw; - - img { - height: 12rem; - width: 20rem; - } - } - - .nav__links { - width: 60vw; - display: flex; - gap: 1.7rem; - pad: 0 0.7vw; - align-items: center; - justify-content: center; - list-style: none; - font-weight: bold; - font-size: larger; - - } - - .nav__links li a { - margin: 0 0.7vw; - text-decoration: none; - transform: all ease-in-out 350ms; - padding: 10px; - - &:hover { - background-color: #5cc4c4; - padding: 10px; - border-radius: 50px; - - } - - &:hover::before { - width:80%; - } - - } - - .nav__links li { - position: relative; - - - &:nth-child(1){ - transition: all 0.5s ease 0.2s; - } - &:nth-child(2){ - transition: all 0.5s ease 0.4s; - } - &:nth-child(3){ - transition: all 0.5s ease 0.6s; - } - &:nth-child(4){ - transition: all 0.5s ease 0.7s; - } - &:nth-child(5){ - transition: all 0.5s ease 0.8s; - } - &:nth-child(6){ - transition: all 0.5s ease 1s; - } - - } - - .hamburger div{ - width: 30px; - height: 3px; - background: #fff; - margin: 5px; - transform: all 0.3s ease; - } - - .hamburger { - display: none; - } - - @media (max-width:800px) { - nav{ - position: fixed; - z-index: 3; - } - - .hamburger { - display: block; - position: absolute; - cursor: pointer; - right: 5%; - top: 50%; - transform: translate(-5%, -50%); - z-index: 2; - transition: all 0.7s ease; - } - - .nav__links { - background: #03a1a1; - position: fixed; - opacity: 1; - height: 100vh; - width: 100%; - flex-direction: column; - clip-path: circle(50px at 90% -20%); - transition: all 1s ease-out; - pointer-events: none; - padding-top: 1.3rem; - - } - - .nav__links.open { - clip-path: circle(1000px at 90% -10%); - pointer-events: all; - gap: 5rem; - } - -} -} - -.container { - &__img { - width: 100vw; - height: auto; - } -} - -.main { - - &__img { - - width: 100vw; - padding-top:7rem; - } -} - -footer { - - background-color: darkgray; - width: 100vw; - height: 10px; - padding-bottom: 15px; - margin-top: auto; - - i { - padding-left: .3rem; - } - -} - -} -} diff --git a/04-Typescript/19-PersonalProject/Lee/pages/main.ts b/04-Typescript/19-PersonalProject/Lee/pages/main.ts deleted file mode 100644 index 0f21d9d50..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/main.ts +++ /dev/null @@ -1,373 +0,0 @@ -class Patient { - id: string; - isEdit: boolean = false; - constructor(public name: string, public owner: string, public phone: string, public image: string, public birthYear: number, id?: string | null) { - if (id) { - this.id = id; - } else { - - this.id = `${Math.random()}` - } - } - - setEdit(set: boolean) { - this.isEdit = set; - } -} - -<<<<<<< HEAD - -const patients: Patient[] = getPatientsFromStorage(); - -function getPatientsFromStorage(): Patient[] { - try { - const patientsString = localStorage.getItem("patients"); - if (!patientsString) return []; - - const patientsArray = JSON.parse(patientsString) - - const patients: Patient[] = patientsArray.map((patient: Patient) => { - return new Patient(patient.name, patient.owner, patient.phone, patient.image, patient.birthYear, patient.id) - }) - - return patients - -======= -const firstPatiens: Patient[] = [ - - new Patient( - "Oscar", "Lee Dekel", "0521111111", "https://media.istockphoto.com/id/462488163/photo/tabby-grey-cat-lying-on-white-background.jpg?s=612x612&w=0&k=20&c=PowgpbMeU8jJwlHrkVQY3SLGrr_83pR8m6_arn_M3BA=", 2006 - ), - new Patient( - "Nella", "Judith Dekel", "0522222222", "https://www.letsgetpet.com/wp-content/uploads/2021/02/chat-tricolore.jpeg", 2021 - ), - new Patient( - "Dubi", "Barak Ortman", "0521201120", "https://www.thesprucepets.com/thmb/DRKAoOkKeWmh5SMzDvapRfnZpn0=/4984x0/filters:no_upscale():strip_icc()/1_BlackPuppy-5ba50070c9e77c0082221c54.jpg", 2021 - ), - new Patient( - "Cocus", "Yael Ortman", "0520000000", "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRK7XX6qCOcpfywUyH57ckF39sBbvZD6E-cAQ&usqp=CAU", 2020 - ), - new Patient( - "Jango", "Linor Monir", "0521010100", "https://media.istockphoto.com/id/1259203799/photo/portrait-of-a-young-happy-belgian-shepherd-dog-malinois-posing-outdoors.jpg?s=612x612&w=0&k=20&c=yxDw11q_2NAgrUdm0AuBkqY1UnY9MKmtiaoeWOgHNRg=", 2021 - ), - - -]; - -const patients: Patient[] = getProductsFromLocalStorage(); - -function getProductsFromLocalStorage(): Patient[] { - try { - const patientsString = localStorage.getItem("patients"); - if (!patientsString) { - localStorage.setItem("patients", JSON.stringify(firstPatiens)); - return firstPatiens; - } else { - - const patientsArray = JSON.parse(patientsString) - const patients: Patient[] = patientsArray.map((patient: Patient) => { - return new Patient(patient.name, patient.owner, patient.phone, patient.image, patient.birthYear, patient.id) - }) - - return patients; - } ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - } catch (error) { - console.error(error) - return [] - - } -}; - - - -renderAllPatients(patients, document.querySelector('#rootPatients')) - -<<<<<<< HEAD - -======= ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 -function handleAddPatients(ev: any) { - try { - ev.preventDefault(); - const name = ev.target.elements.name.value; - const owner = ev.target.elements.owner.value; - const phone = ev.target.elements.phone.value; - const image = ev.target.elements.image.value; - const birthYear = ev.target.elements.birthYear.value; - - const newPatient = new Patient(name, owner, phone, image, birthYear); - patients.push(newPatient); - - renderAllPatients(patients, document.querySelector('#rootPatients')) - - localStorage.setItem("patients", JSON.stringify(patients)); - ev.target.reset(); - - } catch (error) { - console.error(error) - } -} - - -function renderAllPatients(patients: Patient[], htmlElement: HTMLElement | null) { - - try { - if (!htmlElement) throw new Error("No element"); - const html = patients.map(patient => renderPatientCard(patient)).join(' ') - - htmlElement.innerHTML = html; - } catch (error) { - console.error(error) - - } -} - -function renderPatientCard(patient: Patient) { - try { - - if (patient.isEdit) { - return `
- -
-
-
-
-
- - -
- ` - } else { - return `
- -


-
-
-
- -

-
- ` - } - } catch (error) { - console.error(error) - return '' - } -} - -function handleRemovePatient(patientId: string) { - try { - const index = patients.findIndex(patient => patient.id === patientId); - if (index === -1) throw new Error("Could not find patient"); - - patients.splice(index, 1); - localStorage.setItem("patients", JSON.stringify(patients)); - - renderAllPatients(patients, document.querySelector("#rootPatients")) - - } catch (error) { - console.error(error); - - } -} - -function handleEdit(patientId: string) { - try { - const patient = patients.find(patient => patient.id === patientId) - if (!patient) throw new Error("Couldn't find patient") - - patient.setEdit(true); - renderAllPatients(patients, document.querySelector("#rootPatients")) - - } catch (error) { - console.error(error); - - } -} - -function handleSetEditPatient(ev: any) { - try { - ev.preventDefault(); - const name = ev.target.name.value; - const owner = ev.target.owner.value; - const phone = ev.target.phone.value; - const birthYear = ev.target.birthYear.value; - const patientId: string = ev.target.id; - -<<<<<<< HEAD - const patient:Patient|undefined = patients.find(patient => patient.id === patientId) - if(!patient) throw new Error("Could not find patient") - -======= - const patient: Patient | undefined = patients.find(patient => patient.id === patientId) - if (!patient) throw new Error("Could not find patient") - ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - patient.name = name; - patient.owner = owner; - patient.phone = phone; - patient.birthYear = birthYear; - patient.setEdit(false) - console.log(patients) - - localStorage.setItem("patients", JSON.stringify(patients)) - renderAllPatients(patients, document.querySelector("#rootPatients")); - -<<<<<<< HEAD - -======= - ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - - - - } catch (error) { - console.error(error) - - } -} - -<<<<<<< HEAD - - - - - - - -class Vaccine { - id: string; - constructor(public vacName: string, public price: number) { - // this.id = uid(); -======= -class Vaccine { - id: string; - constructor(public vacName: string, public price: number, id?: string | null) { - if (id) { - this.id = id; - } else { - - this.id = `${Math.random()}` - } ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - } -} - -const Vaccines: Vaccine[] = [ - - new Vaccine("Rabies", 100), - new Vaccine("FVRCP", 80), - new Vaccine("FHV", 60), - new Vaccine("FHV-1", 70), - new Vaccine("Parvovirus", 120), - new Vaccine("Leptospirosis", 50), - new Vaccine("Distemper", 200), - new Vaccine("Canine Infectious Hepatitis", 130) -] - -<<<<<<< HEAD -class Treatment { - id: string; - constructor(public treatName: string, public price: number) { - // this.id = uid(); -======= - - -class PatientVaccine { - constructor(public name: Patient, public owner: Patient, public patientId: Patient, public vacName: Vaccine, public price: Vaccine, public VacId: Vaccine) { - - } -} - -const patientVaccine: PatientVaccine[] = [] - - -function renderVaxPatient(rootElement:HTMLElement|null) { - try { - const html = - ` -
-

Time for Vaccine

- - - - - -
- ` - console.log(html) - - if(!rootElement) throw new Error("no root elemnt") - - rootElement.innerHTML = html - } catch (error) { - console.error(error) - - } -} - -renderVaxPatient (document.querySelector("#submit")) - - -function handleVaxPatient(ev: any) { - try { - ev.preventDefault(); - const name = ev.target.name.value; - const owner = ev.target.owner.value; - const vaccine = ev.target.vaccine.value; - const price = ev.target.price.value; - - console.log(name, owner, vaccine, price) - - } catch (error) { - console.error(error) - - } -} - - - - - - - -class Treatment { - id: string; - constructor(public treatName: string, public price: number) { ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - } -} - -const treatments: Treatment[] = [ - new Treatment("Haircut", 200), - new Treatment("Hospitalization per night", 450), - new Treatment("teeth cleaning", 100), - new Treatment("x-ray", 100), - new Treatment("US", 100), -] - - -<<<<<<< HEAD -class Supply { - id: string; - constructor(public supName: string, public price: number) { - // this.id = uid(); - } -} - - -const supplies: Supply[] = [ - new Supply("Medical food can", 17), - new Supply("Ampoule Anti-flea & Tick", 47), - new Supply("seringe", 10) -] -======= - - -class PatientTeatment { - constructor(public name: Patient, public owner: Patient, public treatName: Treatment, public price: Treatment) { - - } -} ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 diff --git a/04-Typescript/19-PersonalProject/Lee/pages/patients.html b/04-Typescript/19-PersonalProject/Lee/pages/patients.html deleted file mode 100644 index 46720e587..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/patients.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - Patiens - - - - - - -
-

Add a New Member to Our Family

- - - - - - -
- -
- - - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/patients.scss b/04-Typescript/19-PersonalProject/Lee/pages/patients.scss deleted file mode 100644 index 86d81586f..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/patients.scss +++ /dev/null @@ -1,83 +0,0 @@ -html { - background-color: #a2f1f1; - display: flex; - justify-content: center; - - - body { - font-family: "Quicksand", sans-serif; - font-size: 18px; - font-weight: bold; - - -form { - border: 2px solid rgb(76, 76, 76); - border-radius: 15px; - margin: 2rem; - padding: 2rem; - - h2 { - display: flex; - justify-content: center; - text-shadow: 1px 3px 3px rgba(0, 0, 0, 0.5); - } - - input { - height: 20px; - border-radius: 7px; - } - - #add { - height: 26px; - background-color: #4fb6b6; - - &:hover { - background-color: #6bbcbc; - cursor: pointer; - - } - } -} - -.card { -display: flex; -flex-direction: column; -margin: auto; -margin-bottom: 1.3rem; -width: 380px; -height: 490px; -gap: 1rem; -border-radius: 25px; -box-shadow: 1px 3px 3px rgba(0, 0, 0, 0.5); -text-align: center; - - - -button { - width: 130px; - height: 25px; - background-color: #94c8c8; - border-radius: 7px; - -} - -p { - background-color: #4fb6b6; - - box-sizing: content-box; - border-radius: 5px; - border-bottom-right-radius: 7px; - border-bottom-left-radius: 7px; -} -img { - width: 100%; - height: 190px; - border-radius: 25px; - border-bottom-left-radius: 7px; - border-bottom-right-radius: 7px; -} -} -} -} - - diff --git a/04-Typescript/19-PersonalProject/Lee/pages/supplies.html b/04-Typescript/19-PersonalProject/Lee/pages/supplies.html deleted file mode 100644 index a313bf550..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/supplies.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - -<<<<<<< HEAD - Document -======= - Supplies -

Medical Supplies

->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - - - - - - -
-
-
- - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/supplies.scss b/04-Typescript/19-PersonalProject/Lee/pages/supplies.scss deleted file mode 100644 index 18de6cbc4..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/supplies.scss +++ /dev/null @@ -1,128 +0,0 @@ -* { - padding: 0%; - margin: 0%; - font-family: "Quicksand", sans-serif; - - } - - html { - background-color: #a2f1f1; - - - body { - width: 100vw; - height: 100vh; - padding: 10px; -<<<<<<< HEAD -======= - - h1 { - text-align: center; - text-shadow: 2px 3px 10px rgba(0, 0, 0, 0.5); - } ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - - - #searchInput { - position: absolute; - width: 170px; - height: 30px; - padding: 10px; - border: 0.5px solid rgba(0, 0, 0, 0.276); - border-radius: 10px; - background: white - url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' class='bi bi-search' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'%3E%3C/path%3E%3C/svg%3E") - no-repeat 88% center; - } - - #addProductBtn { - padding: 10px 17px; - margin: 15px; - border: .3px solid rgba(0, 0, 0, 0.142); - box-shadow: 2px 5px 20px rgba(0, 0, 0, 0.189); - border-radius: 50px; - display: block; - position: relative; - left: calc(50% - 33px); - font-size: x-large; - } - .addProductForm { - transition: display .5s ; - border-radius: 20px; - display: none; - position: relative; - box-shadow: 2px 5px 9px rgba(0, 0, 0, 0.162); - left: calc(50% - 125px); - text-align: center; - width: 250px; - padding: 10px; - background-color: white; - * { - padding: 5px; - margin: 5px; - } - } - - .active { - display: block; - } - - .isntFound{ - display: none; - } - .productGallery { - width: 96vw; - display: grid; - grid-template-columns: repeat(auto-fill, minmax(265px, 1fr)); - .productItem { - background-color: white; - margin: 10px; - padding: 10px; - border-radius: 20px; - box-shadow: 3px 4px 9px rgba(0, 0, 0, 0.137); - text-align: center; - position: relative; - img { - width: 130px; - height: 110px; - object-fit: cover; - } - button, - #productAmount { - display: inline-block; - width: 20px; - } - #deleteBtn { - position: absolute; - width: 50px; - right: 80px; - background-color: #de5334; - border-radius: 7px; - - &:hover { - cursor: pointer; - } - span { - font-size: small; - } - } - #editProductAmount { - width: 40px; - } - #editBtn { - position: absolute; - width: 40px; - right: 30px; - background-color: #94c8c8; - border-radius: 7px; - &:hover { - cursor: pointer; - } - span { - font-size: small; - } - } - } - } -} -} \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/supplies.ts b/04-Typescript/19-PersonalProject/Lee/pages/supplies.ts deleted file mode 100644 index f2df26727..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/supplies.ts +++ /dev/null @@ -1,438 +0,0 @@ -class Product { -<<<<<<< HEAD - constructor( - public name: string, - public amount: number = 0, - public imgSrc: string, - public price: number, - public id: string = createId(), - public isEdit: boolean = false, - ) {} - - setEdit(set: boolean) { - this.isEdit = set; - } - } - - function createId() { - return String(Date.now().toString(32) + Math.random().toString(16)).replace( - /\./g, - "", - ); - } - - const firstProducts: Product[] = [ - new Product( - "Medical food can", - 6, - "https://encrypted-tbn2.gstatic.com/shopping?q=tbn:ANd9GcTAyzAhgyuBcL3IL0VlfGbcEesqxNKcqFoSWISCb2jEdiTBKBpKYPU2Eh3EvdIITjim8fqfx8m2N79dyQXIp8gTPeS0S0sQfPLs2dwfvtwJU5WAD4US89Fd&usqp=CAc", 17 - ), - new Product( - "Ampoule Anti-flea & Tick", - 5, - "https://encrypted-tbn1.gstatic.com/shopping?q=tbn:ANd9GcS7ER1AcRiMl6jrJDpnzzxlipIEYWPDK6ywuVhv9bLcBTlNiSi7ZgryJO6yd-_0_cyXhioq_tCVyNKi616y0dxBwgyNfKsRZO11tjigZPd1ND_J1FPPP3fUNA&usqp=CAc", 179 - ), - new Product( - "Ampoule Anti-flea & Tick", - 5, - "https://encrypted-tbn1.gstatic.com/shopping?q=tbn:ANd9GcS7ER1AcRiMl6jrJDpnzzxlipIEYWPDK6ywuVhv9bLcBTlNiSi7ZgryJO6yd-_0_cyXhioq_tCVyNKi616y0dxBwgyNfKsRZO11tjigZPd1ND_J1FPPP3fUNA&usqp=CAc", 179 - ), - new Product( - "seringe", - 2, - "https://cdn.pixabay.com/photo/2023/06/11/19/09/fruit-8056663_1280.jpg", 10 - ), - new Product( - "Anti-flea & Tick tablets", - 11, - "https://www.gag-lachayot.co.il/wp-content/uploads/2020/12/%D7%AA%D7%9E%D7%95%D7%A0%D7%94-%D7%9B%D7%95%D7%9C%D7%9C%D7%AA-%D7%A1%D7%98%D7%A8%D7%95%D7%A0%D7%92%D7%94%D7%95%D7%9C%D7%93-%D7%97%D7%AA%D7%95%D7%9C.jpg", 189 - ), - new Product( - "Ear & eye drops", - 11, - "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcR_gi6ZjmjE7NZQ4rig15PDbSPwy-oXu6tykhosqgx10dKbBJkNw6skcYje9p6zXtGxY8YWNyJVMcnM90I2_Z1I42bp7rr-xrv67OKhUqfIiEWV000cSp07&usqp=CAc", 38 - ), - ]; - - let products: Product[] = getProductsFromLocalStorage(); - - function getProductsFromLocalStorage() { - try { - const productsString = localStorage.getItem("products"); - if (!productsString) { - localStorage.setItem("products", JSON.stringify(firstProducts)); - return firstProducts; - } else { - const productsArray = JSON.parse(productsString); - const products = productsArray.map((pro) => { - return new Product(pro.name, pro.amount, pro.imgSrc); - }); - return products; - } - } catch (error) { - console.error(error); - return []; - } - } - - function renderProducts() { - const html = products - .map((product) => { - if (!product.isEdit) - return ` -======= - constructor( - public name: string, - public amount: number = 0, - public imgSrc: string, - public price: number, - public id: string = createId(), - public isEdit: boolean = false, - ) { } - - setEdit(set: boolean) { - this.isEdit = set; - } -} - -function createId() { - return String(Date.now().toString(32) + Math.random().toString(16)).replace( - /\./g, - "", - ); -} - -const firstProducts: Product[] = [ - - new Product( - "Medical food can", - 6, - "https://encrypted-tbn2.gstatic.com/shopping?q=tbn:ANd9GcTAyzAhgyuBcL3IL0VlfGbcEesqxNKcqFoSWISCb2jEdiTBKBpKYPU2Eh3EvdIITjim8fqfx8m2N79dyQXIp8gTPeS0S0sQfPLs2dwfvtwJU5WAD4US89Fd&usqp=CAc", 17 - ), - - new Product( - "Ampoule Anti-flea & Tick", - 5, - "https://encrypted-tbn1.gstatic.com/shopping?q=tbn:ANd9GcS7ER1AcRiMl6jrJDpnzzxlipIEYWPDK6ywuVhv9bLcBTlNiSi7ZgryJO6yd-_0_cyXhioq_tCVyNKi616y0dxBwgyNfKsRZO11tjigZPd1ND_J1FPPP3fUNA&usqp=CAc", 179 - ), - new Product( - "seringe", - 2, - "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcS0dhOyNhKG8M8QceV3CSYEODWFfZyxNBb42A&usqp=CAU", 10 - ), - new Product( - "Anti-flea & Tick tablets", - 11, - "https://www.gag-lachayot.co.il/wp-content/uploads/2020/12/%D7%AA%D7%9E%D7%95%D7%A0%D7%94-%D7%9B%D7%95%D7%9C%D7%9C%D7%AA-%D7%A1%D7%98%D7%A8%D7%95%D7%A0%D7%92%D7%94%D7%95%D7%9C%D7%93-%D7%97%D7%AA%D7%95%D7%9C.jpg", 189 - ), - new Product( - "Ear & eye drops", - 11, - "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcR_gi6ZjmjE7NZQ4rig15PDbSPwy-oXu6tykhosqgx10dKbBJkNw6skcYje9p6zXtGxY8YWNyJVMcnM90I2_Z1I42bp7rr-xrv67OKhUqfIiEWV000cSp07&usqp=CAc", 38 - ), - new Product( - "Medicine dispenser", - 5, - "data:image/jpeg;base64,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", 12 - ), - new Product( - "Anti-anxiety 45 tablets", - 20, - "https://cloudinary.images-iherb.com/image/upload/f_auto,q_auto:eco/images/eur/eur02024/v/32.jpg", 100 - ), - new Product( - "PROTECTION", - 15, - "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRAiQzIT3G-b0z6Bsr1bVkSMHlOBM4lKxw70MiRkres5DGVNiigWbRnWcNNfRpEVu-mXyY&usqp=CAU", 65 - ), -]; - -let products: Product[] = getProductsFromLocalStorage(); - -function getProductsFromLocalStorage() { - try { - const productsString = localStorage.getItem("products"); - if (!productsString) { - localStorage.setItem("products", JSON.stringify(firstProducts)); - return firstProducts; - } else { - const productsArray = JSON.parse(productsString); - const products = productsArray.map((pro) => { - return new Product(pro.name, pro.amount, pro.imgSrc, pro.price); - }); - return products; - } - } catch (error) { - console.error(error); - return []; - } -} - -function renderProducts() { - const html = products - .map((product) => { - if (!product.isEdit) - return ` ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 -
- - - -<<<<<<< HEAD -

${product.name}

-======= -

${product.name}
${product.price}₪ per unit

->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - -

${product.amount}

- -
- `; -<<<<<<< HEAD - else - return ` -======= - else - return ` ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 -
- - - - -<<<<<<< HEAD -

${product.name}

- - - -
- `; - }) - .join(" "); - - const root = document.querySelector("#productGallery") as HTMLDivElement; - root.innerHTML = html; - } - - function addToProduct(productId: string) { - const chosenPro: Product = products.find((pro) => pro.id === productId)!; - if (chosenPro) { - chosenPro.amount++; - renderProducts(); - updateInLocalStorage(); - } - } - function reduceFromProduct(productId: string) { - const chosenPro: Product = products.find((pro) => pro.id === productId)!; - if (chosenPro && chosenPro.amount > 0) { - chosenPro.amount--; - renderProducts(); - updateInLocalStorage(); - } - } - - function deleteProduct(productId: string) { - const indexToRemoved = products.findIndex((pro) => pro.id === productId); - - products.splice(indexToRemoved, 1); - updateInLocalStorage(); - renderProducts(); - } - - function editProduct(event: any, productId: string) { - try { - const productToEdit: Product = products.find( - (pro) => pro.id === productId, - )!; - if (!productToEdit) throw new Error("couldn't fined productToEdit "); - if (productToEdit.isEdit == true) { - const amountValue = - event.target.parentNode.parentNode.querySelector("input").value; - productToEdit.amount = amountValue; - productToEdit.setEdit(false); - renderProducts(); - } else { - productToEdit.setEdit(true); - renderProducts(); - } - updateInLocalStorage(); - renderProducts(); - } catch (error) { - console.error(error); - } - } - - function updateInLocalStorage() { - localStorage.setItem("products", JSON.stringify(products)); - } - - function renderAddProductForm() { - const root: HTMLDivElement = document.querySelector( - ".addProductForm", - ) as HTMLDivElement; - root.classList.toggle("active"); - if (root.classList.contains("active")) { - const btn = document.querySelector("#addProductBtn") as HTMLButtonElement; - btn.innerHTML = ` x `; - } else { - const btn = document.querySelector("#addProductBtn") as HTMLButtonElement; - btn.innerHTML = "+"; - } - root.innerHTML = ` -======= -

${product.name}
${product.price}₪

- - - - - - `; - }) - .join(" "); - - const root = document.querySelector("#productGallery") as HTMLDivElement; - root.innerHTML = html; -} - -function addToProduct(productId: string) { - const chosenPro: Product = products.find((pro) => pro.id === productId)!; - if (chosenPro) { - chosenPro.amount++; - renderProducts(); - updateInLocalStorage(); - } -} -function reduceFromProduct(productId: string) { - const chosenPro: Product = products.find((pro) => pro.id === productId)!; - if (chosenPro && chosenPro.amount > 0) { - chosenPro.amount--; - renderProducts(); - updateInLocalStorage(); - } -} - -function deleteProduct(productId: string) { - const indexToRemoved = products.findIndex((pro) => pro.id === productId); - - products.splice(indexToRemoved, 1); - updateInLocalStorage(); - renderProducts(); -} - -function editProduct(event: any, productId: string) { - try { - const productToEdit: Product = products.find( - (pro) => pro.id === productId, - )!; - if (!productToEdit) throw new Error("couldn't fined productToEdit "); - if (productToEdit.isEdit == true) { - const amountValue = - event.target.parentNode.parentNode.querySelector("input").value; - productToEdit.amount = amountValue; - productToEdit.setEdit(false); - renderProducts(); - } else { - productToEdit.setEdit(true); - renderProducts(); - } - updateInLocalStorage(); - renderProducts(); - } catch (error) { - console.error(error); - } -} - -function updateInLocalStorage() { - localStorage.setItem("products", JSON.stringify(products)); -} - -function renderAddProductForm() { - const root: HTMLDivElement = document.querySelector( - ".addProductForm", - ) as HTMLDivElement; - root.classList.toggle("active"); - if (root.classList.contains("active")) { - const btn = document.querySelector("#addProductBtn") as HTMLButtonElement; - btn.innerHTML = ` x `; - } else { - const btn = document.querySelector("#addProductBtn") as HTMLButtonElement; - btn.innerHTML = "+"; - } - root.innerHTML = ` ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 -
- -
- -
-<<<<<<< HEAD - -
- -
`; - } - - function handelNewProduct(ev: any) { - ev.preventDefault(); - const newName = ev.target.newName.value; - const newAmount = ev.target.newAmount.value; - const newImgSrc = ev.target.newImgSrc.value; - - products = getProductsFromLocalStorage(); - products.push(new Product(newName, newAmount, newImgSrc)); - renderProducts(); - const root: HTMLDivElement = document.querySelector(".addProductForm")!; - root.innerHTML = ""; - root.classList.toggle("active"); - const btn = document.querySelector("#addProductBtn") as HTMLButtonElement; - btn.innerHTML = "+"; - } - - function searchProducts(event: any) { - const textToSearch = event.target.value.toLowerCase(); - products.forEach((product) => { - const element = document.querySelector( `[name= "${product.name}" ]`,) as HTMLDivElement; - if (!product.name.toLowerCase().includes(textToSearch)) - element.classList.add("isntFound"); - else element.classList.remove("isntFound"); - }); - } - -======= - -
-
- -
- `; -} - -function handelNewProduct(ev: any) { - ev.preventDefault(); - const newName = ev.target.newName.value; - const newAmount = ev.target.newAmount.value; - const newImgSrc = ev.target.newImgSrc.value; - const newPrice = ev.target.newPrice.value; - - products = getProductsFromLocalStorage(); - products.push(new Product(newName, newAmount, newImgSrc, newPrice)); - renderProducts(); - updateInLocalStorage(); - const root: HTMLDivElement = document.querySelector(".addProductForm")!; - root.innerHTML = ""; - root.classList.toggle("active"); - const btn = document.querySelector("#addProductBtn") as HTMLButtonElement; - btn.innerHTML = "+"; -} - -function searchProducts(event: any) { - const textToSearch = event.target.value.toLowerCase(); - products.forEach((product) => { - const element = document.querySelector(`[name= "${product.name}" ]`,) as HTMLDivElement; - if (!product.name.toLowerCase().includes(textToSearch)) - element.classList.add("isntFound"); - else element.classList.remove("isntFound"); - }); -} ->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 diff --git a/04-Typescript/19-PersonalProject/Lee/pages/treatments.html b/04-Typescript/19-PersonalProject/Lee/pages/treatments.html deleted file mode 100644 index d6922c785..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/treatments.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - Document - - - - - - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/vaccines.html b/04-Typescript/19-PersonalProject/Lee/pages/vaccines.html deleted file mode 100644 index 7848bfffa..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/vaccines.html +++ /dev/null @@ -1,28 +0,0 @@ - - -<<<<<<< HEAD - - - - Document - - - - -======= - - - - - Vaccines - - - - - -
->>>>>>> 7473a3df52bf457216d9852d7b1fca3092105c27 - - \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/vaccines.scss b/04-Typescript/19-PersonalProject/Lee/pages/vaccines.scss deleted file mode 100644 index 6fbf6e353..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/vaccines.scss +++ /dev/null @@ -1,66 +0,0 @@ -html { - - display: flex; - justify-content: center; - - - body { - background-color: #a2f1f1; - font-family: "Quicksand", sans-serif; - font-size: 18px; - font-weight: bold; - - -form { - // border: 2px solid rgb(76, 76, 76); - border-radius: 15px; - margin: 2rem; - padding: 2rem; - - h2 { - display: flex; - justify-content: center; - text-shadow: 1px 3px 3px rgba(0, 0, 0, 0.5); - } - - input { - margin-left: 1rem; - height: 20px; - width: 250px; - border-radius: 7px; - } - -} - -.card { -display: flex; -flex-direction: column; -margin: auto; -margin-bottom: 1.3rem;width: 380px; -height: 400px; -gap: .7rem; -border-radius: 25px; -box-shadow: 1px 3px 3px rgba(0, 0, 0, 0.5); -text-align: center; - - - -input { - display: flex; - justify-content: center; - margin-left: 3.5rem; - height: 25px; - -} - -p { - background-color: #4fb6b6; - - box-sizing: content-box; - border-radius: 5px; - border-bottom-right-radius: 7px; - border-bottom-left-radius: 7px; -} -} -} -} \ No newline at end of file diff --git a/04-Typescript/19-PersonalProject/Lee/pages/view.ts b/04-Typescript/19-PersonalProject/Lee/pages/view.ts deleted file mode 100644 index 789d93fb7..000000000 --- a/04-Typescript/19-PersonalProject/Lee/pages/view.ts +++ /dev/null @@ -1,16 +0,0 @@ -const hamburger = document.querySelector(".hamburger"); -const navLinks = document.querySelector(".nav__links"); -const links = document.querySelector(".nav__links li"); - -hamburger?.addEventListener('click', ()=>{ - navLinks?.classList.toggle("open"); - links.forEach(link => { - link.classList.toggle("fade"); - }); - - - -hamburger.classList.toggle("toggle"); - -}); - diff --git a/04-Typescript/19-PersonalProject/Lee/style.scss b/04-Typescript/19-PersonalProject/Lee/style.scss deleted file mode 100644 index 8f69f8885..000000000 --- a/04-Typescript/19-PersonalProject/Lee/style.scss +++ /dev/null @@ -1,118 +0,0 @@ -* { - margin: 0; - padding: 0; - box-sizing: border-box; - font-family: "Quicksand", sans-serif; -} - -html { - font-size: 62.5%; - user-select: none; - - -.container { - width: 100%; - height: 100vh; - background-color: rgb(15, 215, 215); - color: #eee; - display: flex; - justify-content: center; - align-items: center; - - -.calendar { - width: 45rem; - height: 52rem; - background-color: rgb(109, 110, 110); - box-shadow: 0 0.5rem 3rem rgba(0,0,0,0.4); -} - -.month { - width: 100%; - height: 12rem; - background-color: rgb(3, 161, 161); - display: flex; - justify-content: space-between; - align-items: center; - padding: 0 2rem; - text-align: center; - text-shadow: 0 .3rem .5rem rgba(0,0,0,0.4); -} - -.month i { - font-size: 2.5rem; - cursor: pointer; -} - -.month h1 { - font-size: 3rem; - font-weight: 400; - letter-spacing: 0.2rem; - margin-bottom: 1rem; -} - -.month p { - font-size: 1.6rem; -} - -.weekdays { - width: 100%; - height: 5rem; - padding: 0 0.4rem; - display: flex; - align-items: center; -} - -.weekdays div { - font-size: 1.5rem; - font-weight: 400; - letter-spacing: 0.1rem; - width: calc(44.2rem/7); - display: flex; - justify-content: center; - align-items: center; - text-shadow: 0.3rem .5rem rgba(0,0,0,0.4); -} - -.days { - width: 100%; - display: flex; - flex-wrap: wrap; - padding: 0.2rem; -} - -.days div { - font-size: 1.4rem; - margin: 0.3rem; - width: calc(40.2rem/7); - height: 5rem; - display: flex; - justify-content: center; - align-items: center; - text-shadow: 0 .3rem .5rem rgba(0,0,0,0.5); - - &:hover:not(.today) { - background-color: #7d7d7d; - border-radius: 50%; - border: 0.2rem solid #777; - cursor: pointer; - - } -} - -.prev-date, .next-date { - opacity: 0.5; -} - -.today { - background-color: rgb(3, 161, 161); - border-radius: 50%; - - - &:hover { - background-color: rgb(7, 165, 165); - - } -} -} -} \ No newline at end of file