diff --git a/apps/Index/Controllers/TermsController.php b/apps/Index/Controllers/TermsController.php new file mode 100644 index 0000000..2c2c913 --- /dev/null +++ b/apps/Index/Controllers/TermsController.php @@ -0,0 +1,9 @@ +
- Index page -
+
+

Your Fridge. Your Rules. + Our Recipes. +

+
+
+

Latest Recipes Added

+ +
+ +
+ +
+
+
+ Recipe 1 + +
+
+

Spaghetti Bolognese

+

GreenDavid004

+
+
+
+
+
+
+ Recipe 1 + +
+
+

Spaghetti Bolognese

+

GreenDavid004

+
+
+
+
+
+
+ Recipe 1 + +
+
+

Spaghetti Bolognese

+

GreenDavid004

+
+
+
+ +
+ +
+ + +
+
+ + +
+ +
+
+

Categories

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+
+
+ Category 1 +
+

Mexican

+ +
+
+
+ +
+
+
+ +
+ +
+

Recent User Reviews

+
+
+
+
+ reviewed recipe +
+

Just Like Mom's

+
+
+

I made this spaghetti last night and it was absolutely delicious! The sauce was rich and + flavorful—just the right balance of garlic, herbs, and tomato. I added a pinch of chili + flakes for a little kick, and it turned out perfect...

+
+
+

GreenDavid004

+

2023-10-01

+
+
+
+
+
+ reviewed recipe +
+

Just Like Mom's

+
+
+

I made this spaghetti last night and it was absolutely delicious! The sauce was rich and + flavorful—just the right balance of garlic, herbs, and tomato. I added a pinch of chili + flakes for a little kick, and it turned out perfect...

+
+
+

GreenDavid004

+

2023-10-01

+
+
+
+
+
+ reviewed recipe +
+

Just Like Mom's

+
+
+

I made this spaghetti last night and it was absolutely delicious! The sauce was rich and + flavorful—just the right balance of garlic, herbs, and tomato. I added a pinch of chili + flakes for a little kick, and it turned out perfect...

+
+
+

GreenDavid004

+

2023-10-01

+
+
+
+
+
+ reviewed recipe +
+

Just Like Mom's

+
+
+

I made this spaghetti last night and it was absolutely delicious! The sauce was rich and + flavorful—just the right balance of garlic, herbs, and tomato. I added a pinch of chili + flakes for a little kick, and it turned out perfect...

+
+
+

GreenDavid004

+

2023-10-01

+
+
+
+
+
+ reviewed recipe +
+

Just Like Mom's

+
+
+

I made this spaghetti last night and it was absolutely delicious! The sauce was rich and + flavorful—just the right balance of garlic, herbs, and tomato. I added a pinch of chili + flakes for a little kick, and it turned out perfect...

+
+
+

GreenDavid004

+

2023-10-01

+
+
+
+
+
+ reviewed recipe +
+

Just Like Mom's

+
+
+

I made this spaghetti last night and it was absolutely delicious! The sauce was rich and + flavorful—just the right balance of garlic, herbs, and tomato. I added a pinch of chili + flakes for a little kick, and it turned out perfect...

+
+
+

GreenDavid004

+

2023-10-01

+
+
+
+
+
+

Your Menu for Monday

+
+
+
+ meal-img +
+
+
+

Goulash

+ 120mins to make +
+
+ + + + + + + + + + + + + +
Ground beefTomato sauce
OnionElbow macaroni
GarlicCheese
+
+
+
+
+
+ meal-img +
+
+
+

Goulash

+ 120mins to make +
+
+ + + + + + + + + + + + + +
Ground beefTomato sauce
OnionElbow macaroni
GarlicCheese
+
+
+
+
+
+ meal-img +
+
+
+

Goulash

+ 120mins to make +
+
+ + + + + + + + + + + + + +
Ground beefTomato sauce
OnionElbow macaroni
GarlicCheese
+
+
+
+
+
+ meal-img +
+
+
+

Goulash

+ 120mins to make +
+
+ + + + + + + + + + + + + +
Ground beefTomato sauce
OnionElbow macaroni
GarlicCheese
+
+
+
+
+
+ meal-img +
+
+
+

Goulash

+ 120mins to make +
+
+ + + + + + + + + + + + + +
Ground beefTomato sauce
OnionElbow macaroni
GarlicCheese
+
+
+
+
+
+ meal-img +
+
+
+

Goulash

+ 120mins to make +
+
+ + + + + + + + + + + + + +
Ground beefTomato sauce
OnionElbow macaroni
GarlicCheese
+
+
+
+
+
+ + +
Terms Of Use
+ \ No newline at end of file diff --git a/apps/Index/urls.php b/apps/Index/urls.php index 4be1ecf..319af77 100644 --- a/apps/Index/urls.php +++ b/apps/Index/urls.php @@ -5,4 +5,5 @@ use Lycoreco\Includes\Routing\Path; $index_urls = [ new Path('', new Controllers\HomepageController(), 'home'), + new Path('/terms-of-use', new Controllers\TermsController(), 'terms'), ]; diff --git a/assets/css/style.css b/assets/css/style.css index e69de29..fa94d2b 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -0,0 +1,409 @@ +:root { + --panel-text: #008b70; + --input-background: #f7f7f7; + --input-border: #b3b3b3; + --input-placeholder: #b3b3b3; + --panel-background: #eaf8eb; + --input-text-color: #000; + --title-color: #015847; + --meta-color: #727272; + --common-text: #000; + --panel-title-color: #000; + + --title-font: 'Roboto Slab', sans-serif; + --common-font: 'Roboto Condensed', serif; +} + +* { + box-sizing: border-box; +} + +.container { + width: 100%; + max-width: 1170px; + margin: 0 auto; + padding: 0 5px; +} + +body { + position: relative; + font-family: var(--common-font); + font-size: 14px; + color: var(--common-text); + background-color: #fff; + padding-top: 80px; + /* Adjust padding to account for fixed header */ +} + +.header { + position: fixed; + top: 0; + left: 0; + width: 100%; + background-color: var(--panel-background); + color: var(--panel-text); + filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.1)); + z-index: 1000; +} + +.header-inner { + display: flex; + align-items: center; + justify-content: space-between; + height: 80px; + +} + +.nav ul { + display: flex; +} + +.nav-item a { + text-decoration: none; + color: var(--panel-text); + font-weight: 700; + margin-right: 45px; +} + +.nav-item:last-child a { + margin-right: 0; +} + +.nav-item a:hover { + opacity: 0.7; +} + +.logo-img { + width: 100%; + height: auto; +} + +.logo { + max-width: 70px; +} + +/*placeholder for search and login section*/ +.search-and-login { + width: 277px; + height: 49px; + border: #000 solid 1px; +} + +.quote { + font-family: var(--common-font); + font-size: 20px; + color: var(--panel-text); + margin: 0 auto; + margin-top: 46px; + margin-bottom: 30px; + text-align: center; +} + +.black-qoute-word { + color: var(--common-text); +} + +.latest-recipes .swiper { + height: 350px; +} + +.latest-recipes .swiper-slide { + + height: 320px; + width: 273px; +} + +.recipe-img { + height: 300px; + width: 250px; + overflow: hidden; + border: 3px solid #689E94; + border-radius: 10px; + + filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.1)); +} + +.recipe-img__img { + width: 100%; + height: 100%; + object-fit: cover; + + display: block +} + +.recent-recipe { + position: relative; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +.recipe-info { + position: absolute; + bottom: -10px; + right: 10px; + border: 3px solid #689E94; + border-radius: 10px; + padding: 10px; + background-color: var(--panel-background); + text-align: center; + filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.1)); + +} + +.recipe-info__title { + font-family: var(--title-font); + font-size: 20px; + color: var(--title-color); + margin-bottom: 5px; +} + +.recipe-info__meta { + font-family: var(--title-font); + font-size: 12px; + color: var(--meta-color); +} + +.title { + text-align: center; + font-family: var(--title-font); + font-size: 24px; + color: var(--title-color); + font-weight: 500; + margin-bottom: 20px; +} + +.categories .swiper-slide { + height: 120px; + width: 120px; + +} + +.categories-swiper { + height: 120px; + padding: 0 15px; + + +} + +.category { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + text-align: center; + padding: 10px 0; + + filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.1)); +} + +.category-title { + font-family: var(--title-font); + font-size: 14px; + color: var(--title-color); + text-align: center; + +} + +.categories { + margin-bottom: 40px; +} + +.reviews-grid { + display: grid; + grid-template-columns: repeat(3, 310px); + grid-template-rows: repeat(2, 175px); + row-gap: 20px; + column-gap: 50px; +} + +.recent-review { + height: 100%; + width: 310px; + padding: 15px; + border-radius: 10px; + background-color: var(--panel-background); +} + +.review-img { + border-radius: 10px; + overflow: hidden; + margin-right: 10px; +} + +.review-img img { + width: 35px; + height: 35px; + object-fit: cover; + +} + +.review-title { + display: flex; + align-items: center; + margin-bottom: 15px; +} + +.review-title-text { + font-family: var(--title-font); + font-size: 16px; + color: #000; + +} + +.recent-reviews { + display: flex; + flex-direction: column; + align-items: center; + width: 100%; + margin-bottom: 20px; +} + +.review-text { + font-family: var(--common-font); + font-size: 14px; + color: var(--common-text); + + margin-bottom: 15px; +} + + + +.review-meta { + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; + padding: 0 15px; + font-family: var(--common-font); + color: var(--meta-color); + font-size: 12px; + +} + +.daily-meals-grid { + display: grid; + grid-template-columns: repeat(2, 325px); + grid-template-rows: repeat(3, 125px); + row-gap: 20px; + column-gap: 20px; + margin: 0 auto; +} + +.daily-meal { + background-color: var(--panel-background); + border-radius: 10px; + display: flex; + align-items: center; + padding: 10px; +} + +.daily-meals { + display: flex; + flex-direction: column; + justify-content: center; + margin-bottom: 100px; +} + +.meal-img { + width: 85px; + height: 85px; + border-radius: 10px; + overflow: hidden; +} + +.meal-img img { + width: 100%; + height: 100%; + object-fit: cover; +} + +.daily-meal-title h3 { + font-family: var(--title-font); + font-size: 14px; + color: var(--title-color); + +} + + +.daily-meal-info { + display: flex; + flex-direction: column; + justify-content: space-between; + height: 100%; + padding: 10px; +} + +.ingredients-table { + + border-collapse: collapse; +} + +.ingredients-table td { + padding-right: 5px; + vertical-align: middle; + word-wrap: break-word; + word-break: break-word; + max-width: 100px; +} + +.footer{ + background-color: var(--panel-background); + color: var(--panel-text); + width: 100%; + height: 150px; + text-align: center; + z-index: 1000; +} +.footer-inner { + display: flex; + flex-direction: column; + align-items: center; + + height: 100%; + padding: 0 20px; +} +.footer-nav{ + margin-top: 35px; +} +.footer-links{ + display: flex; + justify-content: center; +} +.footer-links li{ + list-style: none; + margin-right: 60px; + text-decoration: none; +} +.footer-links a { + text-decoration: none; + color: var(--panel-text); + font-size: 16px; +} +.footer-links a:hover { + opacity: 0.7; +} +hr { + width: 100%; + border: 0; + border-top: 1px solid var(--panel-text); + margin: 20px 0; +} +.copyright { + font-family: var(--common-font); + font-size: 14px; + color: var(--panel-text); + margin-top: 20px; +} +@media (max-width: 900px) { + .reviews-grid { + grid-template-columns: 1fr; + column-gap: 0; + } + + .recent-review { + width: 100%; + max-width: 100%; + } +} \ No newline at end of file diff --git a/assets/images/fridgeLogo.png b/assets/images/fridgeLogo.png new file mode 100644 index 0000000..1366391 Binary files /dev/null and b/assets/images/fridgeLogo.png differ diff --git a/assets/js/catalog.js b/assets/js/catalog.js deleted file mode 100644 index 7e9702f..0000000 --- a/assets/js/catalog.js +++ /dev/null @@ -1,13 +0,0 @@ -let filters = document.querySelector('.filters'); -let filterOpenBtn = document.getElementById('catalog-filter-btn'); - -filters.addEventListener('click', (e) => { - if(e.target == filters) { - filters.classList.remove('active'); - blockScroll(false); - } -}); -filterOpenBtn.addEventListener('click', (e) => { - filters.classList.add('active'); - blockScroll(true); -}); diff --git a/assets/js/index.js b/assets/js/index.js index 360cbee..74b529e 100644 --- a/assets/js/index.js +++ b/assets/js/index.js @@ -1,18 +1,57 @@ -new Swiper(".recent-keys", { - slidesPerView: 1, - spaceBetween: 20, +new Swiper('.swiper', { + // Optional parameters + direction: 'horizontal', loop: true, - autoplay: { - delay: 3000, - disableOnInteraction: false, - }, + // If we need pagination + + + slidesPerView: 1, + spaceBetween: 0, + breakpoints: { - 630: { - slidesPerView: 2, - }, - 930: { + 768: { slidesPerView: 3, + spaceBetween: 20, + allowTouchMove: false, + } + }, + + // Navigation arrows + navigation: { + nextEl: '.swiper-button-next', + prevEl: '.swiper-button-prev', + }, + + +}); + +new Swiper('.categories-swiper', { + direction: 'horizontal', + loop: true, + + navigation: { + nextEl: '.categories .swiper-button-next', + prevEl: '.categories .swiper-button-prev', + }, + slidesPerView: 2, + spaceBetween: 0, + breakpoints: { + 480: { + slidesPerView: 3, + spaceBetween: 0, + }, + 640: { + slidesPerView: 4, + spaceBetween: 0, + }, + 768: { + slidesPerView: 6, + spaceBetween: 0, + }, + 1024: { + slidesPerView: 8, + spaceBetween: 0, } } }); \ No newline at end of file diff --git a/assets/js/my-orders.js b/assets/js/my-orders.js deleted file mode 100644 index 172d081..0000000 --- a/assets/js/my-orders.js +++ /dev/null @@ -1,20 +0,0 @@ -let orders = document.querySelectorAll('.my-order'); - -orders?.forEach(order => { - let btnToOpen = order.querySelector('.btn-primary'); - let copyInputBtn = order.querySelector('.btn-copy'); - let input = order.querySelector('input'); - - btnToOpen.addEventListener('click', (e) => { - order.classList.add('show-key'); - }); - copyInputBtn.addEventListener('click', async (e) => { - if (navigator.clipboard && navigator.clipboard.writeText) { - await navigator.clipboard.writeText(input.value); - } else { - input.select(); - document.execCommand("copy"); - } - showToastify("Code is copied", 'info'); - }); -}); \ No newline at end of file diff --git a/assets/js/order.js b/assets/js/order.js deleted file mode 100644 index 49078b5..0000000 --- a/assets/js/order.js +++ /dev/null @@ -1,12 +0,0 @@ -let orderMethods = document.querySelectorAll('.order-method'); -orderMethods.forEach(method => { - let titleBtn = method.querySelector('.order-method__title'); - titleBtn.addEventListener('click', (e) =>{ - orderMethods.forEach(m => { - if(m == method) - return; - m.classList.remove('active'); - }); - method.classList.add('active'); - }); -}); \ No newline at end of file diff --git a/assets/js/product.js b/assets/js/product.js deleted file mode 100644 index b5740fb..0000000 --- a/assets/js/product.js +++ /dev/null @@ -1,21 +0,0 @@ -new Swiper('.products-other .swiper-container', { - slidesPerView: 1, - spaceBetween: 20, - loop: true, - - autoplay: { - delay: 3000, - disableOnInteraction: false, - }, - breakpoints: { - 450: { - slidesPerView: 2, - }, - 770: { - slidesPerView: 4, - }, - 930: { - slidesPerView: 5, - } - } -}); \ No newline at end of file diff --git a/components/templates/layout/footer.php b/components/templates/layout/footer.php index 609ee4e..d9cbe22 100644 --- a/components/templates/layout/footer.php +++ b/components/templates/layout/footer.php @@ -1,15 +1,20 @@ - - - -