Compare commits
2 Commits
c7eba16c5f
...
3b91c813da
| Author | SHA1 | Date |
|---|---|---|
|
|
3b91c813da | |
|
|
6117a3580a |
|
|
@ -0,0 +1,34 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ComponentController extends Controller
|
||||
{
|
||||
public function load(Request $request, $component)
|
||||
{
|
||||
$template = $request->get('template');
|
||||
|
||||
// Map component names to their blade views
|
||||
$componentMap = [
|
||||
'home-popular-products' => 'components.home.home-popular-products',
|
||||
'product-highlight' => 'components.home.product-highlight',
|
||||
'new-arrivals' => 'components.home.new-arrivals',
|
||||
'brand-home' => 'components.home.brand-home-' . ($template ?? 'fashion-v1'),
|
||||
];
|
||||
|
||||
$view = $componentMap[$component] ?? null;
|
||||
|
||||
if (!$view) {
|
||||
return response()->json(['error' => 'Component not found'], 404);
|
||||
}
|
||||
|
||||
// For brand-home component, we need to pass the template parameter
|
||||
if ($component === 'brand-home') {
|
||||
return view($view, ['template' => $template]);
|
||||
}
|
||||
|
||||
return view($view);
|
||||
}
|
||||
}
|
||||
|
|
@ -174,6 +174,98 @@ class ProductController extends Controller
|
|||
]);
|
||||
}
|
||||
|
||||
public function brands(Request $request)
|
||||
{
|
||||
$brandRepository = new \App\Repositories\Catalog\BrandRepository;
|
||||
$brands = $brandRepository->getList([]);
|
||||
|
||||
// Render brand HTML
|
||||
$brandHtml = '';
|
||||
foreach ($brands as $brand) {
|
||||
$brandHtml .= '<a class="swiper-slide text-body" href="' . route('product.index', ['brand' => $brand->slug]) . '" aria-label="' . $brand->name . '">';
|
||||
$brandHtml .= '<img src="' . $brand->image_url . '" alt="' . $brand->name . '" class="object-fit-contain">';
|
||||
$brandHtml .= '</a>';
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'brands' => $brandHtml
|
||||
]);
|
||||
}
|
||||
|
||||
public function highlights(Request $request)
|
||||
{
|
||||
$type = $request->input('type', 'new');
|
||||
$limit = 8;
|
||||
|
||||
$user = auth()->user();
|
||||
$userId = $user ? $user->id : 0;
|
||||
[$location_id, $is_consignment] = Cache::remember('employee_user_'.$userId, 60 * 60 * 24, function () use ($user) {
|
||||
|
||||
if ($user == null) {
|
||||
return [10, false];
|
||||
}
|
||||
|
||||
$employee = @$user->employee;
|
||||
$location_id = @$employee->location_id;
|
||||
$location = @$employee->location;
|
||||
$is_consignment = (bool) @$location->is_consignment;
|
||||
|
||||
return [$location_id, $is_consignment];
|
||||
|
||||
});
|
||||
|
||||
$productRepository = new ProductRepository;
|
||||
|
||||
// Set parameters based on type
|
||||
$params = [
|
||||
'limit' => $limit,
|
||||
'location_id' => $location_id,
|
||||
'is_consignment' => $is_consignment,
|
||||
];
|
||||
|
||||
switch ($type) {
|
||||
case 'best_sellers':
|
||||
$params['sort'] = 'random';
|
||||
break;
|
||||
case 'new_arrivals':
|
||||
$params['sort'] = 'new';
|
||||
break;
|
||||
case 'sale_items':
|
||||
$params['event'] = 'special-offer';
|
||||
break;
|
||||
case 'top_rated':
|
||||
$params['sort'] = 'random';
|
||||
break;
|
||||
default:
|
||||
$params['sort'] = 'new';
|
||||
break;
|
||||
}
|
||||
|
||||
$products = $productRepository->getList($params);
|
||||
|
||||
// Render product cards HTML
|
||||
$productHtml = '';
|
||||
if (count($products) == 0) {
|
||||
$productHtml = '<div class="col-12 text-center py-4">';
|
||||
$productHtml .= 'No products found';
|
||||
$productHtml .= '</div>';
|
||||
} else {
|
||||
foreach ($products as $product) {
|
||||
$productHtml .= '<div class="col mb-2 mb-sm-3 mb-md-0">';
|
||||
$productHtml .= view('components.home.product-card', ['product' => $product])->render();
|
||||
$productHtml .= '</div>';
|
||||
}
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'success' => true,
|
||||
'products' => $productHtml,
|
||||
'count' => count($products),
|
||||
'type' => $type
|
||||
]);
|
||||
}
|
||||
|
||||
public function detail($slug, Request $request, ProductRepository $productRepository)
|
||||
{
|
||||
|
||||
|
|
|
|||
|
|
@ -9,24 +9,16 @@ use Illuminate\View\Component;
|
|||
|
||||
class BrandHome extends Component
|
||||
{
|
||||
public $brands;
|
||||
|
||||
|
||||
public $template = 'fashion-v1';
|
||||
|
||||
/**
|
||||
* Create a new component instance.
|
||||
*/
|
||||
public function __construct(BrandRepository $brandRepository)
|
||||
public function __construct()
|
||||
{
|
||||
$this->brands = $brandRepository->getList([]);
|
||||
|
||||
if ($this->brands->count() < 9) {
|
||||
// Ensure we have at least 9 brands by duplicating if necessary
|
||||
while ($this->brands->count() < 9) {
|
||||
$this->brands = $this->brands->concat($this->brands);
|
||||
}
|
||||
$this->brands = $this->brands->take(9);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -0,0 +1,22 @@
|
|||
<?php
|
||||
|
||||
namespace App\View\Components\Home;
|
||||
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\View\Component;
|
||||
|
||||
class HomePopularProducts extends Component
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the view / contents that represent the component.
|
||||
*/
|
||||
public function render(): View|Closure|string
|
||||
{
|
||||
return view('components.home.home-popular-products');
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?php
|
||||
|
||||
namespace App\View\Components\Home;
|
||||
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\View\Component;
|
||||
|
||||
class HomeSlider extends Component
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the view / contents that represent the component.
|
||||
*/
|
||||
public function render(): View|Closure|string
|
||||
{
|
||||
return view('components.home.home-slider');
|
||||
}
|
||||
}
|
||||
|
|
@ -9,14 +9,11 @@ use Illuminate\View\Component;
|
|||
|
||||
class ProductHighlight extends Component
|
||||
{
|
||||
public $products;
|
||||
|
||||
public function __construct(ProductRepository $productRepository)
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$params = [
|
||||
'sort' => 'new',
|
||||
];
|
||||
$this->products = $productRepository->getList($params);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 11 KiB |
|
|
@ -1,33 +1,33 @@
|
|||
{
|
||||
"name": "Cartzilla",
|
||||
"short_name": "Cartzilla",
|
||||
"description": "Multipurpose E-Commerce Bootstrap Template",
|
||||
"name": "AsiaGolf",
|
||||
"short_name": "AsiaGolf",
|
||||
"description": "AsiaGolf - Store",
|
||||
"lang" : "en",
|
||||
"dir": "ltr",
|
||||
"start_url": "/index.html",
|
||||
"scope": "/",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/app-icons/icon-144x144.png",
|
||||
"src": "/logo/logo-app.png",
|
||||
"sizes": "144x144",
|
||||
"type": "image/png",
|
||||
"purpose": "any"
|
||||
},
|
||||
{
|
||||
"src": "/app-icons/icon-192x192.png",
|
||||
"src": "/logo/logo-app.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "/app-icons/icon-512x512.png",
|
||||
"src": "/logo/logo-app.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
],
|
||||
"background_color": "#fff",
|
||||
"theme_color": "#131920",
|
||||
"theme_color": "#394696",
|
||||
"display": "standalone",
|
||||
"orientation": "portrait-primary"
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -21,7 +21,7 @@ export default (() => {
|
|||
|
||||
// Settings
|
||||
const SETTINGS = {
|
||||
appName: 'Cartzilla',
|
||||
appName: 'AsiaGolf',
|
||||
remindAfterHours: 24, // Number of hours to wait before showing the prompt again
|
||||
serviceWorkerFile: '/service-worker.js', // Service worker file path and name
|
||||
serviceWorkerScope: '/', // Scope of the service worker
|
||||
|
|
@ -125,8 +125,8 @@ export default (() => {
|
|||
<div class="modal-content">
|
||||
<div class="modal-body text-center">
|
||||
<svg class="d-inline-block mb-3" xmlns="http://www.w3.org/2000/svg" width="95" viewBox="0 0 250 283.6"><g stroke="#9ca3af" stroke-miterlimit="10"><path d="M.7 283.5V37.4C.7 17.3 17 .9 37.2.9h175.4C232.7.9 249 17.2 249 37.4v246.1" fill="none"/><path d="M240.2 41.7V283H9.5V41.7c0-17.6 14-31.9 31.5-31.9h167.9c17.2-.1 31.3 14.2 31.3 31.9z" fill="none"/><path d="M146.2,41.3h-45.1c-4.8,0-8.7-3.9-8.7-8.7s3.9-8.7,8.7-8.7h45.1c4.8,0,8.7,3.9,8.7,8.7S151.1,41.3,146.2,41.3z" fill="none"/></g><path class="d-none-dark" d="M144.9 37.6c2.7 0 5-2.2 5-5a4.95 4.95 0 0 0-5-5c-2.7 0-5 2.2-5 5s2.3 5 5 5z" fill="#cad0d9"/><path class="d-none d-block-dark" d="M144.9 37.6c2.7 0 5-2.2 5-5a4.95 4.95 0 0 0-5-5c-2.7 0-5 2.2-5 5s2.3 5 5 5z" fill="#4e5562"/><path d="M68.2 120.3H40.4c-7.6 0-13.9-6.2-13.9-13.8V80.8c0-7.6 6.2-13.8 13.9-13.8h27.8c7.6 0 13.9 6.2 13.9 13.8v25.7c-.1 7.6-6.3 13.8-13.9 13.8zm70.4 0h-27.8c-7.6 0-13.9-6.2-13.9-13.8V80.8c0-7.6 6.2-13.8 13.9-13.8h27.8c7.6 0 13.9 6.2 13.9 13.8v25.7c-.1 7.6-6.2 13.8-13.9 13.8zm70.5 0h-27.8c-7.6 0-13.9-6.2-13.9-13.8V80.8c0-7.6 6.2-13.8 13.9-13.8h27.8c7.6 0 13.9 6.2 13.9 13.8v25.7c0 7.6-6.3 13.8-13.9 13.8zM68.2 190.9H40.4c-7.6 0-13.9-6.2-13.9-13.8v-25.7c0-7.6 6.2-13.9 13.9-13.9h27.8c7.6 0 13.9 6.2 13.9 13.9V177c-.1 7.6-6.3 13.9-13.9 13.9zm140.9 0h-27.8c-7.6 0-13.9-6.2-13.9-13.8v-25.7c0-7.6 6.2-13.9 13.9-13.9h27.8c7.6 0 13.9 6.2 13.9 13.9V177c0 7.6-6.3 13.9-13.9 13.9zM68.2 261.2H40.4c-7.6 0-13.9-6.2-13.9-13.8v-25.7c0-7.6 6.2-13.9 13.9-13.9h27.8c7.6 0 13.9 6.2 13.9 13.9v25.7c-.1 7.8-6.3 13.8-13.9 13.8zm70.4 0h-27.8c-7.6 0-13.9-6.2-13.9-13.8v-25.7c0-7.6 6.2-13.9 13.9-13.9h27.8c7.6 0 13.9 6.2 13.9 13.9v25.7c-.1 7.8-6.2 13.8-13.9 13.8zm70.5 0h-27.8c-7.6 0-13.9-6.2-13.9-13.8v-25.7c0-7.6 6.2-13.9 13.9-13.9h27.8c7.6 0 13.9 6.2 13.9 13.9v25.7c0 7.8-6.3 13.8-13.9 13.8z" stroke="#9ca3af" fill="none"/><path d="M140.7 196H109c-9.3 0-16.9-7.6-16.9-16.9v-29.3c0-9.3 7.6-16.9 16.9-16.9h31.7c9.3 0 16.9 7.6 16.9 16.9v29.3c.1 9.3-7.4 16.9-16.9 16.9z" fill="#f55266"/><path d="M125.8 172.9c-.8 0-1.7-.5-2-1.5-.3-1.2.2-2.4 1.4-2.7l13.6-4.4-2.2-14.6-23.6 8.1c-1.2.3-2.4-.2-2.7-1.4s.2-2.4 1.4-2.7l24.6-8.5c1-.3 2-.2 2.9.3s1.4 1.4 1.5 2.2l2.4 16.3c.2 1.7-.8 3.6-2.7 4.1l-13.9 4.4c-.2.3-.5.4-.7.4zm13.1.2c-.3-1.2-1.5-1.9-2.7-1.4-.3 0-6.4 1.9-9.1 2.9-4.1 1.4-5.8 0-6.1-.2l-11.7-14.9c-2.4-3.4-6.1-3.6-7.8-3l-5.6 1.7-.8 4.7 7.5-2.4c.3 0 2-.3 3.2 1.4l11.9 15.2c1.4 1.7 3.6 2.4 5.9 2.4 1.7 0 3.2-.3 4.7-.8l9-2.7c1.2-.5 1.9-1.7 1.6-2.9zM128 185.3a3.4 3.4 0 1 1-6.8 0 3.4 3.4 0 1 1 6.8 0zm15.1-3.9a3.4 3.4 0 1 1-6.8 0 3.4 3.4 0 1 1 6.8 0z" fill="#fff"/></svg>
|
||||
<h5 class="pt-1" id="${promptId}Label">Install Cartzilla app</h5>
|
||||
${browser === 'Safari' ? `<p class="fs-sm mb-0">Add Cartzilla to your home screen for quick and easy access to your shopping anytime, anywhere! Tap the <span class="fw-semibold">"Share"</span> icon in Safari and select <span class="fw-semibold">"Add to Home Screen"</span> from the options.</p>` : `<p class="fs-sm mb-0">Add Cartzilla to your home screen for quick and easy access to your shopping anytime, anywhere!</p>`}
|
||||
<h5 class="pt-1" id="${promptId}Label">Install AsiaGolf app</h5>
|
||||
${browser === 'Safari' ? `<p class="fs-sm mb-0">Add AsiaGolf to your home screen for quick and easy access to your shopping anytime, anywhere! Tap the <span class="fw-semibold">"Share"</span> icon in Safari and select <span class="fw-semibold">"Add to Home Screen"</span> from the options.</p>` : `<p class="fs-sm mb-0">Add AsiaGolf to your home screen for quick and easy access to your shopping anytime, anywhere!</p>`}
|
||||
<div class="d-flex flex-column align-items-center gap-3 pt-4">
|
||||
${
|
||||
browser === 'Safari'
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Cartzilla | Multipurpose E-Commerce Bootstrap HTML Template
|
||||
* AsiaGolf | Multipurpose E-Commerce Bootstrap HTML Template
|
||||
* Copyright 2024 Coderthemes
|
||||
* Theme scripts
|
||||
*
|
||||
|
|
@ -34,4 +34,4 @@ import './components/binded-label'
|
|||
import './components/image-zoom'
|
||||
import './components/code-highlight'
|
||||
import './components/copy-text'
|
||||
import './components/chart'
|
||||
import './components/chart'
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
// _user-variables.scss
|
||||
// Use this to override Bootstrap and Cartzilla variables
|
||||
// Use this to override Bootstrap and AsiaGolf variables
|
||||
//
|
||||
// Example of a variable override to change Cartzilla background color
|
||||
// Example of a variable override to change AsiaGolf background color
|
||||
// Remove the "//" to enable variables and apply the changes
|
||||
//
|
||||
// $body-bg: #f9fafb;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Cartzilla | Multipurpose E-Commerce Bootstrap HTML Template
|
||||
* AsiaGolf | Multipurpose E-Commerce Bootstrap HTML Template
|
||||
* Copyright 2024 Coderthemes
|
||||
* Theme styles
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@
|
|||
</div>
|
||||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 py-0 m-0 me-auto me-sm-n5" href="{{ route('second', ['home', 'fashion']) }}">Cartzilla</a>
|
||||
<a class="navbar-brand fs-2 py-0 m-0 me-auto me-sm-n5" href="{{ route('second', ['home', 'fashion']) }}">AsiaGolf</a>
|
||||
|
||||
<!-- Button group -->
|
||||
<div class="d-flex align-items-center">
|
||||
|
|
@ -200,7 +200,7 @@
|
|||
<div class="collapse navbar-stuck-hide" id="stuckNav">
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
<span class="position-absolute top-0 start-0 w-100 h-100 rounded-5 d-none d-block-dark rtl-flip"
|
||||
style="background: linear-gradient(-90deg, #1b273a 0%, #1f2632 100%)"></span>
|
||||
<div class="position-relative z-1 py-md-2 py-lg-4 py-xl-5 px-xl-2 px-xxl-4 my-xxl-3">
|
||||
<h1 class="pb-1 pb-md-2 pb-lg-3">Cartzilla - More than a retailer</h1>
|
||||
<h1 class="pb-1 pb-md-2 pb-lg-3">AsiaGolf - More than a retailer</h1>
|
||||
<p class="text-dark-emphasis pb-sm-2 pb-lg-0 mb-4 mb-lg-5">Since 2015, we have been fulfilling
|
||||
the small dreams and big plans of millions of people. You can find literally everything
|
||||
here.</p>
|
||||
|
|
@ -85,7 +85,7 @@
|
|||
just sell household appliances and electronics, but comfort and accessibility."</p>
|
||||
<img src="/img/about/v1/avatar.jpg" width="64" class="d-block rounded-circle mx-auto mb-3"
|
||||
alt="Avatar">
|
||||
<h6 class="mb-0">William Lacker, Cartzilla CEO</h6>
|
||||
<h6 class="mb-0">William Lacker, AsiaGolf CEO</h6>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
|
@ -102,7 +102,7 @@
|
|||
<div class="ps-md-3 ps-lg-4 ps-xl-5 ms-xxl-4">
|
||||
<h2 class="text-body fs-sm fw-normal">Principles</h2>
|
||||
<h3 class="h1 pb-1 pb-sm-2 pb-lg-3">The main principles that will allow us to grow</h3>
|
||||
<p class="pb-xl-3">Cartzilla is a comprehensive solution to fulfill any customer's needs, serving
|
||||
<p class="pb-xl-3">AsiaGolf is a comprehensive solution to fulfill any customer's needs, serving
|
||||
as both the starting point and end destination of their search. It operates as a reliable
|
||||
assistant, dedicated to eliminating the need for any unpleasant compromises, making their dreams
|
||||
a reality, and empowering them to think big.</p>
|
||||
|
|
@ -277,7 +277,7 @@
|
|||
<i class="ci-star fs-4 me-3"></i>
|
||||
Leadership
|
||||
</div>
|
||||
<p class="mb-0">Cartzilla people are young, ambitious and energetic
|
||||
<p class="mb-0">AsiaGolf people are young, ambitious and energetic
|
||||
individuals. With identified leadership qualities, with a desire to be the
|
||||
best at what they do.</p>
|
||||
</div>
|
||||
|
|
@ -497,7 +497,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -506,7 +506,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -515,7 +515,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top
|
||||
5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@
|
|||
<hr class="my-lg-5">
|
||||
<figure class="mb-0">
|
||||
<blockquote class="blockquote">
|
||||
<p class="fs-base">"Every Cartzilla project is an opportunity to create value for
|
||||
<p class="fs-base">"Every AsiaGolf project is an opportunity to create value for
|
||||
homeowners on many levels. Working with materials from the best manufacturers is an
|
||||
added bonus."</p>
|
||||
</blockquote>
|
||||
|
|
@ -220,7 +220,7 @@
|
|||
<li class="nav animate-underline">
|
||||
<i class="ci-mail fs-lg mt-1 pe-2 me-1"></i>
|
||||
<a class="nav-link animate-target fs-base fw-normal p-0"
|
||||
href="mailto:info@cartzilla.com">info@cartzilla.com</a>
|
||||
href="mailto:info@AsiaGolf.com">info@AsiaGolf.com</a>
|
||||
</li>
|
||||
</ul>
|
||||
<hr>
|
||||
|
|
@ -237,7 +237,7 @@
|
|||
<li class="nav animate-underline">
|
||||
<i class="ci-mail fs-lg mt-1 pe-2 me-1"></i>
|
||||
<a class="nav-link animate-target fs-base fw-normal p-0"
|
||||
href="mailto:info@cartzilla.com">info@cartzilla.com</a>
|
||||
href="mailto:info@AsiaGolf.com">info@AsiaGolf.com</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
<div class="nav">
|
||||
<a class="nav-link fs-base animate-underline p-0"
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
</header>
|
||||
<h1 class="h2 mt-auto">Welcome back</h1>
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
</header>
|
||||
<h1 class="h2 mt-auto">Create an account</h1>
|
||||
|
|
@ -139,7 +139,7 @@
|
|||
style="background: linear-gradient(-90deg, #1b273a 0%, #1f2632 100%)"></span>
|
||||
</div>
|
||||
<div class="position-relative z-2 w-100 text-center px-md-2 p-lg-5">
|
||||
<h2 class="h4 pb-3">Cartzilla account benefits</h2>
|
||||
<h2 class="h4 pb-3">AsiaGolf account benefits</h2>
|
||||
<div class="mx-auto" style="max-width: 790px">
|
||||
<div class="row row-cols-1 row-cols-sm-2 g-3 g-md-4 g-lg-3 g-xl-4">
|
||||
<div class="col">
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@
|
|||
<p>This technology has the potential to revolutionize the way we make payments, as it provides a
|
||||
secure and decentralized way to transfer funds.</p>
|
||||
</blockquote>
|
||||
<figcaption class="blockquote-footer mb-0">Victor Blance, CEO Cartzilla</figcaption>
|
||||
<figcaption class="blockquote-footer mb-0">Victor Blance, CEO AsiaGolf</figcaption>
|
||||
</figure>
|
||||
|
||||
<p>Perhaps the most transformative of all, AI has begun to personalize the online shopping experience in
|
||||
|
|
|
|||
|
|
@ -143,7 +143,7 @@
|
|||
<p>This technology has the potential to revolutionize the way we make payments, as it provides a
|
||||
secure and decentralized way to transfer funds.</p>
|
||||
</blockquote>
|
||||
<figcaption class="blockquote-footer mb-0">Victor Blance, CEO Cartzilla</figcaption>
|
||||
<figcaption class="blockquote-footer mb-0">Victor Blance, CEO AsiaGolf</figcaption>
|
||||
</figure>
|
||||
|
||||
<p>Perhaps the most transformative of all, AI has begun to personalize the online shopping experience in
|
||||
|
|
|
|||
|
|
@ -184,13 +184,13 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@
|
|||
<i class="ci-chevron-right fs-lg ms-1 me-n1"></i>
|
||||
</button>
|
||||
<div class="pt-5">
|
||||
<h6>Cartzilla account benefits</h6>
|
||||
<h6>AsiaGolf account benefits</h6>
|
||||
<ul class="list-unstyled d-flex flex-column gap-2 fs-sm mb-0">
|
||||
<li class="d-flex align-items-center pb-1">
|
||||
<div
|
||||
|
|
@ -947,7 +947,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -956,7 +956,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -965,7 +965,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top
|
||||
5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -293,27 +293,27 @@
|
|||
"removeItemButton": false,
|
||||
"choices": [
|
||||
{
|
||||
"value": "Cartzilla Supercenter",
|
||||
"label": "<span class=\"text-dark-emphasis fw-medium\">Cartzilla Supercenter</span>",
|
||||
"value": "AsiaGolf Supercenter",
|
||||
"label": "<span class=\"text-dark-emphasis fw-medium\">AsiaGolf Supercenter</span>",
|
||||
"customProperties": {
|
||||
"address": "<span class=\"d-block text-body-secondary fs-xs fw-normal\">755 Riverpoint Ct, West Sacramento</span>",
|
||||
"selected": "<span class=\"text-dark-emphasis fw-medium\">Cartzilla Supercenter</span>"
|
||||
"selected": "<span class=\"text-dark-emphasis fw-medium\">AsiaGolf Supercenter</span>"
|
||||
}
|
||||
},
|
||||
{
|
||||
"value": "Cartzilla Electronics",
|
||||
"label": "<span class=\"text-dark-emphasis fw-medium\">Cartzilla Electronics</span>",
|
||||
"value": "AsiaGolf Electronics",
|
||||
"label": "<span class=\"text-dark-emphasis fw-medium\">AsiaGolf Electronics</span>",
|
||||
"customProperties": {
|
||||
"address": "<span class=\"d-block text-body-secondary fs-xs fw-normal\">8270 Delta Shores Cir S, Sacramento</span>",
|
||||
"selected": "<span class=\"text-dark-emphasis fw-medium\">Cartzilla Electronics</span>"
|
||||
"selected": "<span class=\"text-dark-emphasis fw-medium\">AsiaGolf Electronics</span>"
|
||||
}
|
||||
},
|
||||
{
|
||||
"value": "Cartzilla Great Mall",
|
||||
"label": "<span class=\"text-dark-emphasis fw-medium\">Cartzilla Great Mall</span>",
|
||||
"value": "AsiaGolf Great Mall",
|
||||
"label": "<span class=\"text-dark-emphasis fw-medium\">AsiaGolf Great Mall</span>",
|
||||
"customProperties": {
|
||||
"address": "<span class=\"d-block text-body-secondary fs-xs fw-normal\">10655 Folsom Blvd, Sacramento</span>",
|
||||
"selected": "<span class=\"text-dark-emphasis fw-medium\">Cartzilla Great Mall</span>"
|
||||
"selected": "<span class=\"text-dark-emphasis fw-medium\">AsiaGolf Great Mall</span>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<section class="container pb-5 mb-1 mb-sm-3 mb-lg-4 mb-xl-5">
|
||||
<div class="swiper my-md-3"
|
||||
data-swiper='{
|
||||
<section class="container pb-5 mb-1 mb-sm-3 mb-lg-4 mb-xl-5" id="brand-home-section">
|
||||
<div class="swiper my-md-3"
|
||||
data-swiper='{
|
||||
"slidesPerView": 2,
|
||||
"pagination": {
|
||||
"el": ".swiper-pagination",
|
||||
|
|
@ -24,21 +24,80 @@
|
|||
}
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper">
|
||||
<div class="swiper-wrapper" id="brand-container">
|
||||
<!-- Brands will be loaded via AJAX -->
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Pagination (Bullets) -->
|
||||
<div class="swiper-pagination position-static mt-3"></div>
|
||||
</div>
|
||||
|
||||
<!-- Item -->
|
||||
@foreach($brands as $brand)
|
||||
<a class="swiper-slide text-body" href="#!" aria-label="{{ $brand->name }}">
|
||||
<img src="{{ $brand->image_url }}" alt="{{ $brand->name }}" class="object-fit-contain">
|
||||
</a>
|
||||
|
||||
@endforeach
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Pagination (Bullets) -->
|
||||
<div class="swiper-pagination position-static mt-3"></div>
|
||||
<!-- Loading state -->
|
||||
<div class="text-center py-5 d-none" id="brand-loading">
|
||||
<div class="swiper my-md-3">
|
||||
<div class="swiper-wrapper">
|
||||
@for ($i = 1; $i <= 6; $i++)
|
||||
<div class="swiper-slide text-body">
|
||||
<div class="shimmer-wrapper">
|
||||
<div class="shimmer">
|
||||
<div class="shimmer-content rounded">
|
||||
<div class="shimmer-line shimmer-image rounded"
|
||||
style="height: 60px; width: 100%; background-color: rgba(0, 0, 0, 0.1);">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endfor
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const brandContainer = document.getElementById('brand-container');
|
||||
const loadingSpinner = document.getElementById('brand-loading');
|
||||
const section = document.getElementById('brand-home-section');
|
||||
|
||||
if (!brandContainer || !loadingSpinner) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Load brands on page load
|
||||
loadBrands();
|
||||
|
||||
function loadBrands() {
|
||||
// Show loading spinner
|
||||
loadingSpinner.classList.remove('d-none');
|
||||
|
||||
// Make AJAX request for brands
|
||||
fetch('{{ route("product.ajax.brands") }}')
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.success && data.brands) {
|
||||
brandContainer.innerHTML = data.brands;
|
||||
} else {
|
||||
// Handle error
|
||||
brandContainer.innerHTML = '<div class="swiper-slide text-center py-4">Error loading brands</div>';
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error loading brands:', error);
|
||||
brandContainer.innerHTML = '<div class="swiper-slide text-center py-4">Error loading brands</div>';
|
||||
})
|
||||
.finally(() => {
|
||||
// Hide loading spinner
|
||||
loadingSpinner.classList.add('d-none');
|
||||
|
||||
// Re-initialize Swiper
|
||||
if (window.Swiper) {
|
||||
const swiper = section.querySelector('.swiper');
|
||||
if (swiper && swiper.swiper) {
|
||||
swiper.swiper.update();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,248 @@
|
|||
<section class="container py-5 my-2 my-sm-3 my-lg-4 my-xl-5" id="popular-products-section">
|
||||
<div class="row align-items-lg-center py-xxl-3">
|
||||
|
||||
<!-- Products -->
|
||||
<div class="col-md-6 col-xl-5 offset-xl-1 order-md-2 mb-4 mb-md-0">
|
||||
<div class="ps-md-3 ps-lg-4 ps-xl-0">
|
||||
<div class="d-flex align-items-center justify-content-between pb-4 mb-md-1 mb-lg-2 mb-xl-3">
|
||||
<h2 class="me-3 mb-0">Popular products</h2>
|
||||
|
||||
<!-- Slider prev/next buttons -->
|
||||
<div class="d-flex gap-2">
|
||||
<button type="button"
|
||||
class="btn btn-icon btn-outline-secondary animate-slide-start rounded-circle me-1"
|
||||
id="popularPrev" aria-label="Prev">
|
||||
<i class="ci-chevron-left fs-lg animate-target"></i>
|
||||
</button>
|
||||
<button type="button"
|
||||
class="btn btn-icon btn-outline-secondary animate-slide-end rounded-circle"
|
||||
id="popularNext" aria-label="Next">
|
||||
<i class="ci-chevron-right fs-lg animate-target"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Products master slider -->
|
||||
<div class="swiper"
|
||||
data-swiper='{
|
||||
"spaceBetween": 24,
|
||||
"loop": true,
|
||||
"speed": 400,
|
||||
"controlSlider": "#sliderImages",
|
||||
"navigation": {
|
||||
"prevEl": "#popularPrev",
|
||||
"nextEl": "#popularNext"
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper" id="popular-products-container">
|
||||
<!-- Products will be loaded via AJAX -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Images -->
|
||||
<div class="col-md-6 col-xl-5 order-md-1">
|
||||
<div class="position-relative">
|
||||
<div class="ratio d-none d-md-block" style="--cz-aspect-ratio: calc(720 / 636 * 100%)">
|
||||
</div>
|
||||
<div class="ratio ratio-4x3 d-md-none"></div>
|
||||
<div class="swiper position-absolute top-0 start-0 w-100 h-100 user-select-none"
|
||||
id="sliderImages"
|
||||
data-swiper='{
|
||||
"allowTouchMove": false,
|
||||
"loop": true,
|
||||
"effect": "fade",
|
||||
"fadeEffect": {
|
||||
"crossFade": true
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper" id="popular-images-container">
|
||||
<!-- Images will be loaded via AJAX -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Loading state -->
|
||||
<div class="text-center py-5 d-none" id="popular-products-loading">
|
||||
<div class="row row-cols-2 row-cols-md-3 row-cols-lg-4 gy-4 gy-md-5 pb-xxl-3">
|
||||
@for ($i = 1; $i <= 6; $i++)
|
||||
<div class="col mb-2 mb-sm-3 mb-md-0">
|
||||
<div class="shimmer-wrapper">
|
||||
<div class="shimmer">
|
||||
<div class="shimmer-content rounded">
|
||||
<div class="shimmer-line shimmer-image rounded mb-3"
|
||||
style="height: 0; padding-bottom: 100%; position: relative;">
|
||||
<div
|
||||
style="position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.1); border-radius: 4px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="shimmer-line shimmer-title rounded mb-2"
|
||||
style="height: 20px; width: 80%;"></div>
|
||||
<div class="shimmer-line shimmer-price rounded" style="height: 16px; width: 60%;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endfor
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const productsContainer = document.getElementById('popular-products-container');
|
||||
const imagesContainer = document.getElementById('popular-images-container');
|
||||
const loadingSpinner = document.getElementById('popular-products-loading');
|
||||
const section = document.getElementById('popular-products-section');
|
||||
|
||||
if (!productsContainer || !imagesContainer || !loadingSpinner) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Load popular products on page load
|
||||
loadPopularProducts();
|
||||
|
||||
function loadPopularProducts() {
|
||||
// Show loading spinner
|
||||
if (loadingSpinner) {
|
||||
loadingSpinner.classList.remove('d-none');
|
||||
}
|
||||
|
||||
// Make AJAX request for popular products
|
||||
fetch('{{ route("product.ajax.highlights") }}?type=best_sellers&limit=6')
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.success && data.products) {
|
||||
// Parse the HTML to extract individual product cards
|
||||
const tempDiv = document.createElement('div');
|
||||
tempDiv.innerHTML = data.products;
|
||||
|
||||
const productCards = tempDiv.querySelectorAll('.col');
|
||||
const productsArray = Array.from(productCards);
|
||||
|
||||
// Split products into two slides (3 products each)
|
||||
const slide1 = productsArray.slice(0, 3);
|
||||
const slide2 = productsArray.slice(3, 6);
|
||||
|
||||
// Create slides with product lists
|
||||
productsContainer.innerHTML = '';
|
||||
|
||||
[slide1, slide2].forEach((slide, index) => {
|
||||
const slideDiv = document.createElement('div');
|
||||
slideDiv.className = 'swiper-slide';
|
||||
|
||||
const listDiv = document.createElement('div');
|
||||
listDiv.className = 'd-flex flex-column gap-3 gap-lg-4';
|
||||
|
||||
slide.forEach(product => {
|
||||
// Convert product card to list item format
|
||||
const productImg = product.querySelector('img');
|
||||
const productLink = product.querySelector('a');
|
||||
const productPrice = product.querySelector('.h6, .price');
|
||||
|
||||
const listItem = document.createElement('div');
|
||||
listItem.className = 'd-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline';
|
||||
|
||||
const img = document.createElement('img');
|
||||
img.src = productImg ? productImg.src : '/img/shop/fashion/thumbs/0' + (index * 3 + slide.indexOf(product) + 1) + '.png';
|
||||
img.width = 110;
|
||||
img.alt = 'Thumbnail';
|
||||
|
||||
const navDiv = document.createElement('div');
|
||||
navDiv.className = 'nav flex-column gap-2 min-w-0 p-3';
|
||||
|
||||
const link = document.createElement('a');
|
||||
link.className = 'nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0';
|
||||
link.href = productLink ? productLink.href : '#';
|
||||
|
||||
const span = document.createElement('span');
|
||||
span.className = 'animate-target text-truncate';
|
||||
span.textContent = productLink ? productLink.textContent.trim() : 'Product Name';
|
||||
|
||||
const price = document.createElement('div');
|
||||
price.className = 'h6 mb-0';
|
||||
price.textContent = productPrice ? productPrice.textContent : '$0.00';
|
||||
|
||||
link.appendChild(span);
|
||||
navDiv.appendChild(link);
|
||||
navDiv.appendChild(price);
|
||||
listItem.appendChild(img);
|
||||
listItem.appendChild(navDiv);
|
||||
listDiv.appendChild(listItem);
|
||||
});
|
||||
|
||||
slideDiv.appendChild(listDiv);
|
||||
productsContainer.appendChild(slideDiv);
|
||||
});
|
||||
|
||||
// Load corresponding images
|
||||
loadPopularImages();
|
||||
|
||||
} else {
|
||||
// Handle error
|
||||
productsContainer.innerHTML = '<div class="swiper-slide"><div class="text-center py-4">Error loading products</div></div>';
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error loading popular products:', error);
|
||||
productsContainer.innerHTML = '<div class="swiper-slide"><div class="text-center py-4">Error loading products</div></div>';
|
||||
})
|
||||
.finally(() => {
|
||||
// Hide loading spinner
|
||||
if (loadingSpinner) {
|
||||
loadingSpinner.classList.add('d-none');
|
||||
}
|
||||
|
||||
// Re-initialize Swiper
|
||||
if (window.Swiper) {
|
||||
const swiperElements = section.querySelectorAll('.swiper');
|
||||
swiperElements.forEach(element => {
|
||||
if (element.swiper) {
|
||||
element.swiper.update();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function loadPopularImages() {
|
||||
// Load images for the slider
|
||||
const images = [
|
||||
'/img/home/fashion/v1/popular/01.jpg',
|
||||
'/img/home/fashion/v1/popular/02.jpg'
|
||||
];
|
||||
|
||||
imagesContainer.innerHTML = '';
|
||||
|
||||
images.forEach((src, index) => {
|
||||
const slideDiv = document.createElement('div');
|
||||
slideDiv.className = 'swiper-slide';
|
||||
|
||||
const ratioDiv = document.createElement('div');
|
||||
ratioDiv.className = index === 0 ? 'ratio d-none d-md-block' : 'ratio d-none d-md-block';
|
||||
ratioDiv.style.setProperty('--cz-aspect-ratio', 'calc(720 / 636 * 100%)');
|
||||
|
||||
const mobileRatioDiv = document.createElement('div');
|
||||
mobileRatioDiv.className = 'ratio ratio-4x3 d-md-none';
|
||||
|
||||
const img = document.createElement('img');
|
||||
img.src = src;
|
||||
img.className = 'position-absolute top-0 start-0 w-100 h-100 object-fit-cover rounded-5';
|
||||
img.alt = 'Image';
|
||||
|
||||
if (index === 1) {
|
||||
img.style.objectPosition = 'center top';
|
||||
}
|
||||
|
||||
slideDiv.appendChild(ratioDiv);
|
||||
slideDiv.appendChild(mobileRatioDiv);
|
||||
slideDiv.appendChild(img);
|
||||
imagesContainer.appendChild(slideDiv);
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
|
@ -0,0 +1,99 @@
|
|||
<section class="bg-body-tertiary">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
|
||||
<!-- Titles master slider -->
|
||||
<div class="col-md-6 col-lg-5 d-flex flex-column">
|
||||
<div class="py-4 mt-auto">
|
||||
<div class="swiper pb-1 pt-3 pt-sm-4 py-md-4 py-lg-3"
|
||||
data-swiper='{
|
||||
"spaceBetween": 24,
|
||||
"loop": true,
|
||||
"speed": 400,
|
||||
"controlSlider": "#heroImages",
|
||||
"pagination": {
|
||||
"el": "#sliderBullets",
|
||||
"clickable": true
|
||||
},
|
||||
"autoplay": {
|
||||
"delay": 5500,
|
||||
"disableOnInteraction": false
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper align-items-center">
|
||||
|
||||
<!-- Item -->
|
||||
<div class="swiper-slide text-center text-md-start">
|
||||
<p class="fs-xl mb-2 mb-lg-3 mb-xl-4">The new warm collection</p>
|
||||
<h2 class="display-4 text-uppercase mb-4 mb-xl-5">New fall <br
|
||||
class="d-none d-md-inline">season 2024</h2>
|
||||
<a class="btn btn-lg btn-outline-dark" href="{{ route('second', ['shop', 'catalog-fashion']) }}">
|
||||
Shop now
|
||||
<i class="ci-arrow-up-right fs-lg ms-2 me-n1"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Item -->
|
||||
<div class="swiper-slide text-center text-md-start">
|
||||
<p class="fs-xl mb-2 mb-lg-3 mb-xl-4">Ready for the party?</p>
|
||||
<h2 class="display-4 text-uppercase mb-4 mb-xl-5">Choose outfits for parties</h2>
|
||||
<a class="btn btn-lg btn-outline-dark" href="{{ route('second', ['shop', 'catalog-fashion']) }}">
|
||||
Shop now
|
||||
<i class="ci-arrow-up-right fs-lg ms-2 me-n1"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Item -->
|
||||
<div class="swiper-slide text-center text-md-start">
|
||||
<p class="fs-xl mb-2 mb-lg-3 mb-xl-4">Shades of gray for your look</p>
|
||||
<h2 class="display-4 text-uppercase mb-4 mb-xl-5">-50% on gray Collection</h2>
|
||||
<a class="btn btn-lg btn-outline-dark" href="{{ route('second', ['shop', 'catalog-fashion']) }}">
|
||||
Shop now
|
||||
<i class="ci-arrow-up-right fs-lg ms-2 me-n1"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Slider bullets (pagination) -->
|
||||
<div
|
||||
class="d-flex justify-content-center justify-content-md-start pb-4 pb-xl-5 mt-n1 mt-md-auto mb-md-3 mb-lg-4">
|
||||
<div class="swiper-pagination position-static w-auto pb-1" id="sliderBullets"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Linked images (controlled slider) -->
|
||||
<div class="col-md-6 col-lg-7 align-self-end">
|
||||
<div class="position-relative ms-md-n4">
|
||||
<div class="ratio" style="--cz-aspect-ratio: calc(662 / 770 * 100%)"></div>
|
||||
<div class="swiper position-absolute top-0 start-0 w-100 h-100 user-select-none"
|
||||
id="heroImages"
|
||||
data-swiper='{
|
||||
"allowTouchMove": false,
|
||||
"loop": true,
|
||||
"effect": "fade",
|
||||
"fadeEffect": {
|
||||
"crossFade": true
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper">
|
||||
<div class="swiper-slide">
|
||||
<img src="/img/home/fashion/v1/hero-slider/01.png" class="rtl-flip"
|
||||
alt="Image">
|
||||
</div>
|
||||
<div class="swiper-slide">
|
||||
<img src="/img/home/fashion/v1/hero-slider/02.png" class="rtl-flip"
|
||||
alt="Image">
|
||||
</div>
|
||||
<div class="swiper-slide">
|
||||
<img src="/img/home/fashion/v1/hero-slider/03.png" class="rtl-flip"
|
||||
alt="Image">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
|
@ -76,7 +76,7 @@
|
|||
<span class="text-truncate">{{ $product->name }}</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="h6 mb-0">{{ number_format($product->price, 0, ',', '.') }}</div>
|
||||
<div class="h6 mb-0">Rp {{ number_format($product->display_price, 0, ',', '.') }}</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
|
|
|
|||
|
|
@ -1,35 +1,204 @@
|
|||
<section class="container pb-5 mb-2 mb-sm-3 mb-lg-4 mb-xl-5">
|
||||
<h2 class="text-center pb-2 pb-sm-3">{{ __('weeks_highlights.this_weeks_highlights') }}</h2>
|
||||
<style>
|
||||
.shimmer-wrapper-highlight {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
<!-- Nav pills -->
|
||||
<div class="row g-0 overflow-x-auto pb-2 pb-sm-3 mb-3">
|
||||
<div class="col-auto pb-1 pb-sm-0 mx-auto">
|
||||
<ul class="nav nav-pills flex-nowrap text-nowrap">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" aria-current="page" href="#!">{{ __('weeks_highlights.best_sellers') }}</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#!">{{ __('weeks_highlights.new_arrivals') }}</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#!">{{ __('weeks_highlights.sale_items') }}</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#!">{{ __('weeks_highlights.top_rated') }}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
.shimmer-wrapper-highlight .shimmer {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
<!-- Products grid -->
|
||||
.shimmer-wrapper-highlight .shimmer::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: linear-gradient(90deg,
|
||||
rgba(255, 255, 255, 0) 0%,
|
||||
rgba(255, 255, 255, 0.3) 50%,
|
||||
rgba(255, 255, 255, 0) 100%);
|
||||
animation: shimmer-wrapper-highlight-shimmer 1.5s infinite;
|
||||
}
|
||||
|
||||
@keyframes shimmer-wrapper-highlight-shimmer {
|
||||
0% {
|
||||
transform: translateX(-100%);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: translateX(100%);
|
||||
}
|
||||
}
|
||||
|
||||
.shimmer-wrapper-highlight .shimmer-line {
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.shimmer-wrapper-highlight .shimmer-content {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
</style>
|
||||
|
||||
<section class="container pb-5 mb-2 mb-sm-3 mb-lg-4 mb-xl-5" id="product-highlights-section">
|
||||
<h2 class="text-center pb-2 pb-sm-3">{{ __('weeks_highlights.this_weeks_highlights') }}</h2>
|
||||
|
||||
<div class="row g-0 overflow-x-auto pb-2 pb-sm-3 mb-3">
|
||||
<div class="col-auto pb-1 pb-sm-0 mx-auto">
|
||||
<ul class="nav nav-pills flex-nowrap text-nowrap" id="product-highlights-tabs">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" href="#" data-type="best_sellers"
|
||||
data-url="{{ route('product.ajax.highlights') }}">
|
||||
{{ __('weeks_highlights.best_sellers') }}
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#" data-type="new_arrivals"
|
||||
data-url="{{ route('product.ajax.highlights') }}">
|
||||
{{ __('weeks_highlights.new_arrivals') }}
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#" data-type="sale_items"
|
||||
data-url="{{ route('product.ajax.highlights') }}">
|
||||
{{ __('weeks_highlights.sale_items') }}
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#" data-type="top_rated"
|
||||
data-url="{{ route('product.ajax.highlights') }}">
|
||||
{{ __('weeks_highlights.top_rated') }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="position-relative">
|
||||
<div class="row row-cols-2 row-cols-md-3 row-cols-lg-4 gy-4 gy-md-5 pb-xxl-3" id="product-highlights-container">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="text-center py-5 d-none" id="product-highlights-loading">
|
||||
<div class="row row-cols-2 row-cols-md-3 row-cols-lg-4 gy-4 gy-md-5 pb-xxl-3">
|
||||
|
||||
<!-- Item -->
|
||||
@foreach ($products as $key => $product)
|
||||
<div class="col mb-2 mb-sm-3 mb-md-0">
|
||||
<x-home.product-card :product="$product" />
|
||||
</div>
|
||||
@endforeach
|
||||
|
||||
@for ($i = 1; $i <= 8; $i++)
|
||||
<div class="col-6 col-md-4 mb-2 mb-sm-3 mb-md-0">
|
||||
<div class="shimmer-wrapper-highlight">
|
||||
<div class="shimmer">
|
||||
<div class="shimmer-content rounded">
|
||||
<div class="shimmer-line shimmer-image rounded mb-3"
|
||||
style="height: 0; padding-bottom: 100%; position: relative;">
|
||||
<div
|
||||
style="position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.1); border-radius: 4px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="shimmer-line shimmer-title rounded mb-2"
|
||||
style="height: 20px; width: 80%;"></div>
|
||||
<div class="shimmer-line shimmer-price rounded" style="height: 16px; width: 60%;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endfor
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
/*!
|
||||
* Product Highlights AJAX functionality
|
||||
* Handles tab switching and AJAX loading for product highlights section
|
||||
*/
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const tabsContainer = document.getElementById('product-highlights-tabs');
|
||||
const productsContainer = document.getElementById('product-highlights-container');
|
||||
const loadingSpinner = document.getElementById('product-highlights-loading');
|
||||
|
||||
if (!tabsContainer || !productsContainer || !loadingSpinner) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Load first tab content on page load
|
||||
const firstTab = tabsContainer.querySelector('.nav-link.active');
|
||||
if (firstTab) {
|
||||
const type = firstTab.dataset.type;
|
||||
const url = firstTab.dataset.url;
|
||||
if (type && url) {
|
||||
loadProductHighlights(type, url);
|
||||
}
|
||||
}
|
||||
|
||||
// Handle tab clicks
|
||||
tabsContainer.addEventListener('click', function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
const tab = e.target.closest('.nav-link');
|
||||
if (!tab) return;
|
||||
|
||||
// Get the type and URL from data attributes
|
||||
const type = tab.dataset.type;
|
||||
const url = tab.dataset.url;
|
||||
|
||||
if (!type || !url) return;
|
||||
|
||||
// Update active tab
|
||||
tabsContainer.querySelectorAll('.nav-link').forEach(t => t.classList.remove('active'));
|
||||
tab.classList.add('active');
|
||||
|
||||
// Load products via AJAX
|
||||
loadProductHighlights(type, url);
|
||||
});
|
||||
|
||||
function loadProductHighlights(type, url) {
|
||||
// Show loading spinner
|
||||
productsContainer.style.display = 'none';
|
||||
loadingSpinner.classList.remove('d-none');
|
||||
|
||||
// Build URL with parameters
|
||||
const requestUrl = `${url}?type=${type}`;
|
||||
|
||||
// Make AJAX request
|
||||
fetch(requestUrl)
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.success) {
|
||||
// Update products container with new HTML
|
||||
productsContainer.innerHTML = data.products;
|
||||
} else {
|
||||
// Handle error
|
||||
productsContainer.innerHTML =
|
||||
'<div class="col-12 text-center py-4">Error loading products</div>';
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error loading product highlights:', error);
|
||||
productsContainer.innerHTML =
|
||||
'<div class="col-12 text-center py-4">Error loading products</div>';
|
||||
})
|
||||
.finally(() => {
|
||||
// Hide loading spinner and show products
|
||||
loadingSpinner.classList.add('d-none');
|
||||
productsContainer.style.display = 'flex';
|
||||
|
||||
// Re-initialize any components that might be needed for the new products
|
||||
if (window.bootstrap && window.bootstrap.Tooltip) {
|
||||
const tooltipTriggerList = [].slice.call(productsContainer.querySelectorAll(
|
||||
'[data-bs-toggle="tooltip"]'));
|
||||
tooltipTriggerList.map(function(tooltipTriggerEl) {
|
||||
return new bootstrap.Tooltip(tooltipTriggerEl);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -304,7 +304,7 @@
|
|||
<div class="collapse navbar-stuck-hide" id="stuckNav">
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas"
|
||||
aria-label="Close"></button>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -256,7 +256,7 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 py-0 m-0 me-auto me-sm-n5"
|
||||
href="{{ route('second', ['home', 'fashion-v1']) }}">Cartzilla</a>
|
||||
href="{{ route('second', ['home', 'fashion-v1']) }}">AsiaGolf</a>
|
||||
|
||||
<!-- Button group -->
|
||||
<div class="d-flex align-items-center">
|
||||
|
|
@ -349,7 +349,7 @@
|
|||
<div class="collapse navbar-stuck-hide" id="stuckNav">
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
|
||||
|
|
@ -1540,7 +1540,7 @@
|
|||
</div>
|
||||
<hr class="text-dark-emphasis opacity-50 my-3 my-md-4">
|
||||
<ul class="list-unstyled">
|
||||
<li>Customers: help@cartzilla.com</li>
|
||||
<li>Customers: help@AsiaGolf.com</li>
|
||||
<li>Franchise: franchise@catzilla.com</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -1772,7 +1772,7 @@
|
|||
<div class="text-center pt-xxl-3 pb-2 pb-md-3">
|
||||
<h2 class="pb-2 mb-1">
|
||||
<span class="animate-underline">
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#cartzilla</a>
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#AsiaGolf</a>
|
||||
</span>
|
||||
</h2>
|
||||
<p>Find more inspiration on our Instagram</p>
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@
|
|||
<div class="tab-content bg-body rounded-5 py-3 py-sm-4 px-4 px-sm-5">
|
||||
<p class="text-center py-3 mx-auto" style="max-width: 450px">Fill out the form below and we
|
||||
will reply within 24 hours. You may also directly reach out to us at <a
|
||||
class="text-decoration-none" href="mailto:info@cartzilla.com">info@cartzilla.com</a>
|
||||
class="text-decoration-none" href="mailto:info@AsiaGolf.com">info@AsiaGolf.com</a>
|
||||
</p>
|
||||
|
||||
<!-- Customers form -->
|
||||
|
|
@ -228,7 +228,7 @@
|
|||
<h3 class="text-body fs-sm fw-normal mb-2">Send us a message</h3>
|
||||
<div class="nav animate-underline justify-content-center">
|
||||
<a class="nav-link animate-target text-dark-emphasis fs-base p-0"
|
||||
href="mailto:info@cartzilla.com">info@cartzilla.com</a>
|
||||
href="mailto:info@AsiaGolf.com">info@AsiaGolf.com</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col text-center">
|
||||
|
|
|
|||
|
|
@ -123,12 +123,12 @@
|
|||
<li class="nav animate-underline justify-content-center">
|
||||
Customers:
|
||||
<a class="nav-link animate-target fs-base ms-1 p-0"
|
||||
href="mailto:info@cartzilla.com">info@cartzilla.com</a>
|
||||
href="mailto:info@AsiaGolf.com">info@AsiaGolf.com</a>
|
||||
</li>
|
||||
<li class="nav animate-underline justify-content-center">
|
||||
Franchise:
|
||||
<a class="nav-link animate-target fs-base ms-1 p-0"
|
||||
href="mailto:franchise@cartzilla.com">franchise@cartzilla.com</a>
|
||||
href="mailto:franchise@AsiaGolf.com">franchise@AsiaGolf.com</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -152,7 +152,7 @@
|
|||
<div class="col-lg-8 order-lg-1">
|
||||
<h2 class="pb-2 pb-sm-3 pb-lg-4">What is your returns policy?</h2>
|
||||
<p class="h6"><span class="text-body-secondary">Last Updated:</span> June 26, 2024</p>
|
||||
<p>At Cartzilla, we strive to ensure your complete satisfaction with every purchase. If, for any reason,
|
||||
<p>At AsiaGolf, we strive to ensure your complete satisfaction with every purchase. If, for any reason,
|
||||
you are not entirely pleased with your order, we've got you covered with our Returns Policy. You may
|
||||
return eligible items within 30 days of the delivery date.</p>
|
||||
<h3 class="h4 pt-3 pt-sm-4">1. Pack the goods</h3>
|
||||
|
|
@ -166,14 +166,14 @@
|
|||
<li>It is not necessary to send a cheque.</li>
|
||||
</ul>
|
||||
<h3 class="h4 pt-3 pt-sm-4">2. Where to bring the goods</h3>
|
||||
<p>You can return the goods to the service department or Cartzilla return point.</p>
|
||||
<p>You can return the goods to the service department or AsiaGolf return point.</p>
|
||||
<ul class="pb-3 pb-sm-4">
|
||||
<li>Service departments at Cartzilla points of delivery. Here, we will immediately check the goods
|
||||
<li>Service departments at AsiaGolf points of delivery. Here, we will immediately check the goods
|
||||
and, if everything is in order, agree on a return policy on the spot. You can bring any goods
|
||||
here. Simple goods, such as clothes and shoes. Complex goods: smartphones, washing machines,
|
||||
microwaves, power tools. The examination is carried out by a technical specialist. If long-term
|
||||
diagnostics are required, the goods will be sent to a service centre.</li>
|
||||
<li>Returns acceptance points at Cartzilla pick-up points. Here, our employee will conduct a visual
|
||||
<li>Returns acceptance points at AsiaGolf pick-up points. Here, our employee will conduct a visual
|
||||
inspection of your goods. The decision regarding the goods is made after the goods are delivered
|
||||
to the service department. The details will be agreed with you. The examination is carried out
|
||||
within 14 days.</li>
|
||||
|
|
|
|||
|
|
@ -107,9 +107,9 @@
|
|||
<div class="position-absolute top-0 start-0 h-100 border-start d-none d-md-block"></div>
|
||||
<div class="row g-0">
|
||||
<div class="col-xl-11 col-xxl-10 pt-4 ps-md-4">
|
||||
<p class="fs-sm">To avail of the convenience of Cartzilla courier delivery, please note
|
||||
<p class="fs-sm">To avail of the convenience of AsiaGolf courier delivery, please note
|
||||
that this service is currently available exclusively in specific cities and regions. To
|
||||
check whether Cartzilla courier delivery is an option for your location, refer to the
|
||||
check whether AsiaGolf courier delivery is an option for your location, refer to the
|
||||
information provided on the product page (don't forget to specify the settlement) or
|
||||
find details in the delivery block when confirming your order on the website.</p>
|
||||
<p class="fs-sm">It's crucial to ensure that the recipient of the order is available to
|
||||
|
|
@ -117,13 +117,13 @@
|
|||
communication or unavailability, the order will be returned to the warehouse. This step
|
||||
is taken to maintain the efficiency of the delivery process and minimize any
|
||||
inconvenience caused.</p>
|
||||
<p class="fs-sm">The cost of Cartzilla courier delivery varies based on factors such as
|
||||
<p class="fs-sm">The cost of AsiaGolf courier delivery varies based on factors such as
|
||||
location, total weight, and dimensions of the order. Typically, the delivery fee falls
|
||||
within the range of $5 to $15. It's important to note that the exact cost of delivery is
|
||||
calculated at the time of placing your order. Therefore, it's advisable to exercise
|
||||
caution and ensure that the delivery city is specified accurately to avoid any
|
||||
discrepancies.</p>
|
||||
<p class="fs-sm">When opting for Cartzilla courier delivery, you have the flexibility to
|
||||
<p class="fs-sm">When opting for AsiaGolf courier delivery, you have the flexibility to
|
||||
choose between paying for your order in cash or using a payment card. However, please be
|
||||
aware that payment by card upon receipt may have certain restrictions or conditions that
|
||||
you should be mindful of. These details are typically outlined during the checkout
|
||||
|
|
|
|||
|
|
@ -1919,7 +1919,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -1928,7 +1928,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -1937,7 +1937,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0"
|
||||
href="#!">Top 5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
href="#!">Top 5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -8,267 +8,11 @@
|
|||
<main class="content-wrapper">
|
||||
|
||||
<!-- Hero slider -->
|
||||
<section class="bg-body-tertiary">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
|
||||
<!-- Titles master slider -->
|
||||
<div class="col-md-6 col-lg-5 d-flex flex-column">
|
||||
<div class="py-4 mt-auto">
|
||||
<div class="swiper pb-1 pt-3 pt-sm-4 py-md-4 py-lg-3"
|
||||
data-swiper='{
|
||||
"spaceBetween": 24,
|
||||
"loop": true,
|
||||
"speed": 400,
|
||||
"controlSlider": "#heroImages",
|
||||
"pagination": {
|
||||
"el": "#sliderBullets",
|
||||
"clickable": true
|
||||
},
|
||||
"autoplay": {
|
||||
"delay": 5500,
|
||||
"disableOnInteraction": false
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper align-items-center">
|
||||
|
||||
<!-- Item -->
|
||||
<div class="swiper-slide text-center text-md-start">
|
||||
<p class="fs-xl mb-2 mb-lg-3 mb-xl-4">The new warm collection</p>
|
||||
<h2 class="display-4 text-uppercase mb-4 mb-xl-5">New fall <br
|
||||
class="d-none d-md-inline">season 2024</h2>
|
||||
<a class="btn btn-lg btn-outline-dark" href="{{ route('second', ['shop', 'catalog-fashion']) }}">
|
||||
Shop now
|
||||
<i class="ci-arrow-up-right fs-lg ms-2 me-n1"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Item -->
|
||||
<div class="swiper-slide text-center text-md-start">
|
||||
<p class="fs-xl mb-2 mb-lg-3 mb-xl-4">Ready for the party?</p>
|
||||
<h2 class="display-4 text-uppercase mb-4 mb-xl-5">Choose outfits for parties</h2>
|
||||
<a class="btn btn-lg btn-outline-dark" href="{{ route('second', ['shop', 'catalog-fashion']) }}">
|
||||
Shop now
|
||||
<i class="ci-arrow-up-right fs-lg ms-2 me-n1"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Item -->
|
||||
<div class="swiper-slide text-center text-md-start">
|
||||
<p class="fs-xl mb-2 mb-lg-3 mb-xl-4">Shades of gray for your look</p>
|
||||
<h2 class="display-4 text-uppercase mb-4 mb-xl-5">-50% on gray Collection</h2>
|
||||
<a class="btn btn-lg btn-outline-dark" href="{{ route('second', ['shop', 'catalog-fashion']) }}">
|
||||
Shop now
|
||||
<i class="ci-arrow-up-right fs-lg ms-2 me-n1"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Slider bullets (pagination) -->
|
||||
<div
|
||||
class="d-flex justify-content-center justify-content-md-start pb-4 pb-xl-5 mt-n1 mt-md-auto mb-md-3 mb-lg-4">
|
||||
<div class="swiper-pagination position-static w-auto pb-1" id="sliderBullets"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Linked images (controlled slider) -->
|
||||
<div class="col-md-6 col-lg-7 align-self-end">
|
||||
<div class="position-relative ms-md-n4">
|
||||
<div class="ratio" style="--cz-aspect-ratio: calc(662 / 770 * 100%)"></div>
|
||||
<div class="swiper position-absolute top-0 start-0 w-100 h-100 user-select-none"
|
||||
id="heroImages"
|
||||
data-swiper='{
|
||||
"allowTouchMove": false,
|
||||
"loop": true,
|
||||
"effect": "fade",
|
||||
"fadeEffect": {
|
||||
"crossFade": true
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper">
|
||||
<div class="swiper-slide">
|
||||
<img src="/img/home/fashion/v1/hero-slider/01.png" class="rtl-flip"
|
||||
alt="Image">
|
||||
</div>
|
||||
<div class="swiper-slide">
|
||||
<img src="/img/home/fashion/v1/hero-slider/02.png" class="rtl-flip"
|
||||
alt="Image">
|
||||
</div>
|
||||
<div class="swiper-slide">
|
||||
<img src="/img/home/fashion/v1/hero-slider/03.png" class="rtl-flip"
|
||||
alt="Image">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<x-home.home-slider />
|
||||
|
||||
|
||||
<!-- Popular products carousel -->
|
||||
<section class="container py-5 my-2 my-sm-3 my-lg-4 my-xl-5">
|
||||
<div class="row align-items-lg-center py-xxl-3">
|
||||
|
||||
<!-- Products -->
|
||||
<div class="col-md-6 col-xl-5 offset-xl-1 order-md-2 mb-4 mb-md-0">
|
||||
<div class="ps-md-3 ps-lg-4 ps-xl-0">
|
||||
<div class="d-flex align-items-center justify-content-between pb-4 mb-md-1 mb-lg-2 mb-xl-3">
|
||||
<h2 class="me-3 mb-0">Popular products</h2>
|
||||
|
||||
<!-- Slider prev/next buttons -->
|
||||
<div class="d-flex gap-2">
|
||||
<button type="button"
|
||||
class="btn btn-icon btn-outline-secondary animate-slide-start rounded-circle me-1"
|
||||
id="popularPrev" aria-label="Prev">
|
||||
<i class="ci-chevron-left fs-lg animate-target"></i>
|
||||
</button>
|
||||
<button type="button"
|
||||
class="btn btn-icon btn-outline-secondary animate-slide-end rounded-circle"
|
||||
id="popularNext" aria-label="Next">
|
||||
<i class="ci-chevron-right fs-lg animate-target"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Products master slider -->
|
||||
<div class="swiper"
|
||||
data-swiper='{
|
||||
"spaceBetween": 24,
|
||||
"loop": true,
|
||||
"speed": 400,
|
||||
"controlSlider": "#sliderImages",
|
||||
"navigation": {
|
||||
"prevEl": "#popularPrev",
|
||||
"nextEl": "#popularNext"
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper">
|
||||
|
||||
<!-- Products list slide -->
|
||||
<div class="swiper-slide">
|
||||
<div class="d-flex flex-column gap-3 gap-lg-4">
|
||||
<div
|
||||
class="d-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline">
|
||||
<img src="/img/shop/fashion/thumbs/01.png" width="110" alt="Thumbnail">
|
||||
<div class="nav flex-column gap-2 min-w-0 p-3">
|
||||
<a class="nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0"
|
||||
href="{{ route('second', ['shop', 'product-fashion']) }}">
|
||||
<span class="animate-target text-truncate">Short jacket in long-pile
|
||||
faux fur</span>
|
||||
</a>
|
||||
<div class="h6 mb-0">$218.00</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="d-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline">
|
||||
<img src="/img/shop/fashion/thumbs/02.png" width="110" alt="Thumbnail">
|
||||
<div class="nav flex-column gap-2 min-w-0 p-3">
|
||||
<a class="nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0"
|
||||
href="{{ route('second', ['shop', 'product-fashion']) }}">
|
||||
<span class="animate-target text-truncate">Women's walking shoes tennis
|
||||
sneakers</span>
|
||||
</a>
|
||||
<div class="h6 mb-0">$54.99</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="d-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline">
|
||||
<img src="/img/shop/fashion/thumbs/03.png" width="110" alt="Thumbnail">
|
||||
<div class="nav flex-column gap-2 min-w-0 p-3">
|
||||
<a class="nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0"
|
||||
href="{{ route('second', ['shop', 'product-fashion']) }}">
|
||||
<span class="animate-target text-truncate">Classic aviator sunglasses
|
||||
for women</span>
|
||||
</a>
|
||||
<div class="h6 mb-0">$76.00</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Products list slide -->
|
||||
<div class="swiper-slide">
|
||||
<div class="d-flex flex-column gap-3 gap-lg-4">
|
||||
<div
|
||||
class="d-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline">
|
||||
<img src="/img/shop/fashion/thumbs/04.png" width="110" alt="Thumbnail">
|
||||
<div class="nav flex-column gap-2 min-w-0 p-3">
|
||||
<a class="nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0"
|
||||
href="{{ route('second', ['shop', 'product-fashion']) }}">
|
||||
<span class="animate-target text-truncate">Vintage oversized wool
|
||||
blazer jacket</span>
|
||||
</a>
|
||||
<div class="h6 mb-0">$174.00</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="d-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline">
|
||||
<img src="/img/shop/fashion/thumbs/05.png" width="110" alt="Thumbnail">
|
||||
<div class="nav flex-column gap-2 min-w-0 p-3">
|
||||
<a class="nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0"
|
||||
href="{{ route('second', ['shop', 'product-fashion']) }}">
|
||||
<span class="animate-target text-truncate">Classic pilot style
|
||||
polarized sunglasses</span>
|
||||
</a>
|
||||
<div class="h6 mb-0">$93.00</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="d-flex align-items-center position-relative bg-body-tertiary rounded overflow-hidden animate-underline">
|
||||
<img src="/img/shop/fashion/thumbs/06.png" width="110" alt="Thumbnail">
|
||||
<div class="nav flex-column gap-2 min-w-0 p-3">
|
||||
<a class="nav-link text-dark-emphasis stretched-link w-100 min-w-0 p-0"
|
||||
href="{{ route('second', ['shop', 'product-fashion']) }}">
|
||||
<span class="animate-target text-truncate">Cotton dress straight-leg
|
||||
pants</span>
|
||||
</a>
|
||||
<div class="h6 mb-0">$65.00</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Complete look images (controlled slider) -->
|
||||
<div class="col-md-6 order-md-1">
|
||||
<div class="swiper user-select-none" id="sliderImages"
|
||||
data-swiper='{
|
||||
"allowTouchMove": false,
|
||||
"loop": true,
|
||||
"effect": "fade",
|
||||
"fadeEffect": {
|
||||
"crossFade": true
|
||||
}
|
||||
}'>
|
||||
<div class="swiper-wrapper">
|
||||
<div class="swiper-slide">
|
||||
<div class="ratio d-none d-md-block" style="--cz-aspect-ratio: calc(720 / 636 * 100%)">
|
||||
</div>
|
||||
<div class="ratio ratio-4x3 d-md-none"></div>
|
||||
<img src="/img/home/fashion/v1/popular/01.jpg"
|
||||
class="position-absolute top-0 start-0 w-100 h-100 object-fit-cover rounded-5"
|
||||
alt="Image">
|
||||
</div>
|
||||
<div class="swiper-slide">
|
||||
<div class="ratio d-none d-md-block" style="--cz-aspect-ratio: calc(720 / 636 * 100%)">
|
||||
</div>
|
||||
<div class="ratio ratio-4x3 d-md-none"></div>
|
||||
<img src="/img/home/fashion/v1/popular/02.jpg"
|
||||
class="position-absolute top-0 start-0 w-100 h-100 object-fit-cover rounded-5"
|
||||
style="object-position: center top" alt="Image">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<x-home.home-popular-products />
|
||||
|
||||
|
||||
<!-- Featured products -->
|
||||
|
|
@ -472,7 +216,7 @@
|
|||
<div class="text-center pt-xxl-3 pb-2 pb-md-3">
|
||||
<h2 class="pb-2 mb-1">
|
||||
<span class="animate-underline">
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#cartzilla</a>
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#AsiaGolf</a>
|
||||
</span>
|
||||
</h2>
|
||||
<p>Find more inspiration on our Instagram</p>
|
||||
|
|
|
|||
|
|
@ -254,7 +254,7 @@
|
|||
</div>
|
||||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 py-0 m-0 me-auto me-sm-n5" href="/">Cartzilla</a>
|
||||
<a class="navbar-brand fs-2 py-0 m-0 me-auto me-sm-n5" href="/">AsiaGolf</a>
|
||||
|
||||
<!-- Button group -->
|
||||
<div class="d-flex align-items-center">
|
||||
|
|
@ -347,7 +347,7 @@
|
|||
<div class="collapse navbar-stuck-hide" id="stuckNav">
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
|
||||
|
|
@ -2178,7 +2178,7 @@
|
|||
<div class="text-center pb-2 pb-md-3">
|
||||
<h2 class="pb-2 mb-1">
|
||||
<span class="animate-underline">
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#cartzilla</a>
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#AsiaGolf</a>
|
||||
</span>
|
||||
</h2>
|
||||
<p>Find more inspiration on our Instagram</p>
|
||||
|
|
|
|||
|
|
@ -311,7 +311,7 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 p-0 pe-lg-2 pe-xxl-0 me-0 me-sm-3 me-md-4 me-xxl-5"
|
||||
href="/">Cartzilla</a>
|
||||
href="/">AsiaGolf</a>
|
||||
|
||||
<!-- Categories dropdown visible on screens > 991px wide (lg breakpoint) -->
|
||||
<div class="dropdown d-none d-lg-block w-100 me-4" style="max-width: 200px">
|
||||
|
|
@ -1941,7 +1941,7 @@
|
|||
<div
|
||||
class="d-flex flex-column flex-sm-row align-items-center h-100 bg-body-tertiary rounded-5 overflow-hidden">
|
||||
<div class="order-sm-2 text-center text-sm-start pt-4 px-4 pb-2 pb-sm-4 mt-3 mt-sm-0">
|
||||
<h2 class="h4 mb-4">Make online shop easier with our Cartzilla App</h2>
|
||||
<h2 class="h4 mb-4">Make online shop easier with our AsiaGolf App</h2>
|
||||
<div
|
||||
class="d-flex flex-sm-wrap justify-content-center justify-content-sm-start gap-2 gap-sm-3">
|
||||
<a class="btn btn-market btn-lg btn-light rounded-pill flex-shrink-0" href="#!"
|
||||
|
|
|
|||
|
|
@ -183,13 +183,13 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -35,12 +35,12 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand position-relative z-1 ms-4 ms-sm-5 ms-lg-4 me-2 me-sm-0 me-lg-3"
|
||||
href="/">Cartzilla</a>
|
||||
href="/">AsiaGolf</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -110,13 +110,13 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
@ -961,20 +961,20 @@
|
|||
|
||||
<!-- Features -->
|
||||
<section class="container py-5 mt-2 mb-sm-2 mt-sm-3 my-md-4 my-lg-5">
|
||||
<h2 class="h1 text-center pb-3 pb-sm-4 pb-lg-2 pb-xl-3 pt-xl-4 mt-xxl-2 mb-lg-5">Cartzilla Feature Highlights
|
||||
<h2 class="h1 text-center pb-3 pb-sm-4 pb-lg-2 pb-xl-3 pt-xl-4 mt-xxl-2 mb-lg-5">AsiaGolf Feature Highlights
|
||||
</h2>
|
||||
<div class="row row-cols-1 row-cols-sm-2 row-cols-md-3 g-4 g-lg-5 pb-xl-2 pb-xxl-4">
|
||||
<div class="col text-center">
|
||||
<img src="/img/intro/features/bootstrap.png" width="56" class="d-inline-flex mb-3"
|
||||
alt="Bootstrap">
|
||||
<h3 class="h5 pt-sm-1 pb-2 mb-1">Built with Latest Bootstrap</h3>
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">Cartzilla is the powerful e-commerce front-end solution based on
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">AsiaGolf is the powerful e-commerce front-end solution based on
|
||||
Bootstrap 5 - the world's most popular responsive, mobile-first front-end component library.</p>
|
||||
</div>
|
||||
<div class="col text-center">
|
||||
<img src="/img/intro/features/sass.png" width="48" class="d-inline-flex mb-3" alt="Sass">
|
||||
<h3 class="h5 pt-sm-1 pb-2 mb-1">Easy to Customize with Sass</h3>
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">Cartzilla is built using Sass, allowing for effortless customization of
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">AsiaGolf is built using Sass, allowing for effortless customization of
|
||||
colors, typography, and beyond. It is the most mature, stable, and powerful CSS extension language
|
||||
in the world.</p>
|
||||
</div>
|
||||
|
|
@ -988,7 +988,7 @@
|
|||
<div class="col text-center">
|
||||
<img src="/img/intro/features/js.png" width="48" class="d-inline-flex mb-3" alt="JavaScript">
|
||||
<h3 class="h5 pt-sm-1 pb-2 mb-1">Future-proof JavaScript</h3>
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">Cartzilla's core scripts, along with all dependencies, are meticulously
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">AsiaGolf's core scripts, along with all dependencies, are meticulously
|
||||
crafted in vanilla JS (ES6 modules), ensuring optimal performance and compatibility across various
|
||||
platforms.</p>
|
||||
</div>
|
||||
|
|
@ -996,7 +996,7 @@
|
|||
<img src="/img/intro/features/html5.png" width="48" class="d-inline-flex mb-3" alt="HTML5">
|
||||
<h3 class="h5 pt-sm-1 pb-2 mb-1">W3C Valid HTML Code</h3>
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">As you likely know, ensuring 100% valid code through W3C validation for
|
||||
all HTML files is crucial. Invalid HTML imposes restrictions on innovation, yet Cartzilla remains
|
||||
all HTML files is crucial. Invalid HTML imposes restrictions on innovation, yet AsiaGolf remains
|
||||
innovative at its core.</p>
|
||||
</div>
|
||||
<div class="col text-center">
|
||||
|
|
@ -1017,7 +1017,7 @@
|
|||
<img src="/img/intro/features/google-fonts.png" width="48" class="d-inline-flex mb-3"
|
||||
alt="Google Fonts">
|
||||
<h3 class="h5 pt-sm-1 pb-2 mb-1">Google Fonts</h3>
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">Cartzilla uses preloaded variable Google font (Inter) which is free,
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">AsiaGolf uses preloaded variable Google font (Inter) which is free,
|
||||
fast to load and of very high quality. Currently Google fonts library includes 1600+ font families
|
||||
to choose from.</p>
|
||||
</div>
|
||||
|
|
@ -1025,7 +1025,7 @@
|
|||
<img src="/img/intro/features/vector.png" width="48" class="d-inline-flex mb-3"
|
||||
alt="Vector Icons">
|
||||
<h3 class="h5 pt-sm-1 pb-2 mb-1">Vector Based HD-ready Icons</h3>
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">Cartzilla is equiped with font-based icon pack and svg icons to ensure
|
||||
<p class="mb-2 mb-sm-3 mb-lg-0">AsiaGolf is equiped with font-based icon pack and svg icons to ensure
|
||||
that infographics and interface icons look sharp on any device with any screen resolution and pixel
|
||||
density.</p>
|
||||
</div>
|
||||
|
|
@ -1061,7 +1061,7 @@
|
|||
<div class="col-md-6 col-xl-5 offset-xl-1 text-center">
|
||||
<div class="ps-4 ps-xl-0">
|
||||
<h2 class="h1">Mobile Friendly Interface. PWA ready</h2>
|
||||
<p class="fs-lg mb-4">Cartzilla ensures seamless interactions across all devices. With
|
||||
<p class="fs-lg mb-4">AsiaGolf ensures seamless interactions across all devices. With
|
||||
progressive web app (PWA) compatibility, users can enjoy the app-like experiences on their
|
||||
mobile browsers.</p>
|
||||
<p class="fs-sm fw-medium text-body-emphasis mb-4">Scan QR code below to test on your device:
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
</div>
|
||||
<div class="col col-lg-9 d-flex align-items-center justify-content-end">
|
||||
|
|
@ -157,7 +157,7 @@
|
|||
<div class="collapse navbar-stuck-hide" id="stuckNav">
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body py-3 py-lg-0">
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 p-0 pe-lg-2 pe-xxl-0 me-0 me-sm-3 me-md-4 me-xxl-5"
|
||||
href="{{ route('second', ['home', 'grocery']) }}">Cartzilla</a>
|
||||
href="{{ route('second', ['home', 'grocery']) }}">AsiaGolf</a>
|
||||
|
||||
<!-- Categories dropdown visible on screens > 991px wide (lg breakpoint) -->
|
||||
<div class="dropdown d-none d-lg-block w-100 me-4" style="max-width: 200px">
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
<div class="row">
|
||||
<div class="col-md-4 d-sm-flex flex-md-column align-items-center align-items-md-start pb-3 mb-sm-4">
|
||||
<h4 class="mb-sm-0 mb-md-4 me-4">
|
||||
<a class="text-dark-emphasis text-decoration-none" href="{{ route('second', ['home', 'electronics']) }}">Cartzilla</a>
|
||||
<a class="text-dark-emphasis text-decoration-none" href="{{ route('second', ['home', 'electronics']) }}">AsiaGolf</a>
|
||||
</h4>
|
||||
<p class="text-body fs-sm text-sm-end text-md-start mb-sm-0 mb-md-3 ms-0 ms-sm-auto ms-md-0 me-4">
|
||||
Got questions? Contact us 24/7</p>
|
||||
|
|
|
|||
|
|
@ -26,13 +26,13 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-0 pb-3">
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
</div>
|
||||
<div class="col col-lg-9 d-flex align-items-center justify-content-end">
|
||||
|
|
@ -175,7 +175,7 @@
|
|||
<div class="collapse navbar-stuck-hide" id="stuckNav">
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body py-3 py-lg-0">
|
||||
|
|
|
|||
|
|
@ -28,12 +28,12 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand position-relative z-1 ms-4 ms-sm-5 ms-lg-4 me-2 me-sm-0 me-lg-3"
|
||||
href="{{ route('second', ['home', 'furniture']) }}">Cartzilla</a>
|
||||
href="{{ route('second', ['home', 'furniture']) }}">AsiaGolf</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
<!-- SEO Meta Tags -->
|
||||
<title>{{ config('app.name') }} | {{ $title }}</title>
|
||||
<meta name="description" content="Cartzilla - Multipurpose Bootstrap E-Commerce HTML Template">
|
||||
<meta name="description" content="AsiaGolf - Multipurpose Bootstrap E-Commerce HTML Template">
|
||||
<meta name="keywords"
|
||||
content="online shop, e-commerce, online store, market, multipurpose, product landing, cart, checkout, ui kit, light and dark mode, bootstrap, html5, css3, javascript, gallery, slider, mobile, pwa">
|
||||
<meta name="author" content="Coderthemes">
|
||||
|
|
|
|||
|
|
@ -1839,21 +1839,21 @@
|
|||
<img src="/img/home/electronics/vlog/01.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
<img src="/img/home/electronics/vlog/02.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
<img src="/img/home/electronics/vlog/03.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top 5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top 5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -527,7 +527,7 @@
|
|||
<div class="text-center pb-2 pb-md-3">
|
||||
<h2 class="pb-2 mb-1">
|
||||
<span class="animate-underline">
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#cartzilla</a>
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#AsiaGolf</a>
|
||||
</span>
|
||||
</h2>
|
||||
<p>Find more inspiration on our Instagram</p>
|
||||
|
|
|
|||
|
|
@ -316,7 +316,7 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 p-0 pe-lg-2 pe-xxl-0 me-0 me-sm-3 me-md-4 me-xxl-5"
|
||||
href="{{ route('second', ['home', 'grocery']) }}">Cartzilla</a>
|
||||
href="{{ route('second', ['home', 'grocery']) }}">AsiaGolf</a>
|
||||
|
||||
<!-- Categories dropdown visible on screens > 991px wide (lg breakpoint) -->
|
||||
<div class="dropdown d-none d-lg-block w-100 me-4" style="max-width: 200px">
|
||||
|
|
|
|||
|
|
@ -37,13 +37,13 @@
|
|||
<span class="d-none d-sm-flex flex-shrink-0 text-primary me-2">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36"><path d="M36 18.01c0 8.097-5.355 14.949-12.705 17.2a18.12 18.12 0 0 1-5.315.79C9.622 36 2.608 30.313.573 22.611.257 21.407.059 20.162 0 18.879v-1.758c.02-.395.059-.79.099-1.185.099-.908.277-1.817.514-2.686C2.687 5.628 9.682 0 18 0c5.572 0 10.551 2.528 13.871 6.517 1.502 1.797 2.648 3.91 3.359 6.201.494 1.659.771 3.436.771 5.292z" fill="currentColor"/><g fill="#fff"><path d="M17.466 21.624c-.514 0-.988-.316-1.146-.829-.198-.632.138-1.303.771-1.501l7.666-2.469-1.205-8.254-13.317 4.621a1.19 1.19 0 0 1-1.521-.75 1.19 1.19 0 0 1 .751-1.521l13.89-4.818c.553-.197 1.166-.138 1.64.158a1.82 1.82 0 0 1 .85 1.284l1.344 9.183c.138.987-.494 1.994-1.482 2.33l-7.864 2.528-.375.04zm7.31.138c-.178-.632-.85-1.007-1.482-.81l-5.177 1.58c-2.331.79-3.28.02-3.418-.099l-6.56-8.412a4.25 4.25 0 0 0-4.406-1.758l-3.122.987c-.237.889-.415 1.777-.514 2.686l4.228-1.363a1.84 1.84 0 0 1 1.857.81l6.659 8.551c.751.948 2.015 1.323 3.359 1.323.909 0 1.857-.178 2.687-.474l5.078-1.54c.632-.178 1.008-.829.81-1.481z"/><use href="#czlogo"/><use href="#czlogo" x="8.516" y="-2.172"/></g><defs><path id="czlogo" d="M18.689 28.654a1.94 1.94 0 0 1-1.936 1.935 1.94 1.94 0 0 1-1.936-1.935 1.94 1.94 0 0 1 1.936-1.935 1.94 1.94 0 0 1 1.936 1.935z"/></defs></svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -1168,21 +1168,21 @@
|
|||
<img src="/img/home/electronics/vlog/01.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
<img src="/img/home/electronics/vlog/02.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
<img src="/img/home/electronics/vlog/03.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top 5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top 5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -730,7 +730,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -739,7 +739,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -748,7 +748,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top
|
||||
5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -1168,7 +1168,7 @@ Pesanan masuk pukul 18.00 Wib ke atas kemungkinan akan kami proses kirim dan iku
|
|||
<div class="text-center pt-1 pb-2 pb-md-3">
|
||||
<h2 class="pb-2 mb-1">
|
||||
<span class="animate-underline">
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#cartzilla</a>
|
||||
<a class="animate-target text-dark-emphasis text-decoration-none" href="#!">#AsiaGolf</a>
|
||||
</span>
|
||||
</h2>
|
||||
<p>Find more inspiration on our Instagram</p>
|
||||
|
|
|
|||
|
|
@ -1917,7 +1917,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -1926,7 +1926,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5
|
||||
Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
|
|
@ -1935,7 +1935,7 @@
|
|||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0"
|
||||
href="#!">Top 5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
href="#!">Top 5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -317,7 +317,7 @@
|
|||
|
||||
<!-- Navbar brand (Logo) -->
|
||||
<a class="navbar-brand fs-2 p-0 pe-lg-2 pe-xxl-0 me-0 me-sm-3 me-md-4 me-xxl-5"
|
||||
href="{{ route('second', ['home', 'grocery']) }}">Cartzilla</a>
|
||||
href="{{ route('second', ['home', 'grocery']) }}">AsiaGolf</a>
|
||||
|
||||
<!-- Categories dropdown visible on screens > 991px wide (lg breakpoint) -->
|
||||
<div class="dropdown d-none d-lg-block w-100 me-4" style="max-width: 200px">
|
||||
|
|
@ -1701,7 +1701,7 @@
|
|||
<div
|
||||
class="d-flex flex-column flex-sm-row align-items-center h-100 bg-body-tertiary rounded-5 overflow-hidden">
|
||||
<div class="order-sm-2 text-center text-sm-start pt-4 px-4 pb-2 pb-sm-4 mt-3 mt-sm-0">
|
||||
<h2 class="h4 mb-4">Make online shop easier with our Cartzilla App</h2>
|
||||
<h2 class="h4 mb-4">Make online shop easier with our AsiaGolf App</h2>
|
||||
<div
|
||||
class="d-flex flex-sm-wrap justify-content-center justify-content-sm-start gap-2 gap-sm-3">
|
||||
<a class="btn btn-market btn-lg btn-light rounded-pill flex-shrink-0" href="#!"
|
||||
|
|
@ -1791,7 +1791,7 @@
|
|||
<!-- Promo text + Social account links -->
|
||||
<div class="col-lg-3 text-center text-lg-start pb-sm-2 pb-md-0 mb-4 mb-md-5 mb-lg-0">
|
||||
<h4 class="pb-2 mb-1">
|
||||
<a class="text-dark-emphasis text-decoration-none" href="{{ route('second', ['home', 'grocery']) }}">Cartzilla</a>
|
||||
<a class="text-dark-emphasis text-decoration-none" href="{{ route('second', ['home', 'grocery']) }}">AsiaGolf</a>
|
||||
</h4>
|
||||
<p class="fs-sm text-body mx-auto" style="max-width: 480px">With a wide selection of fresh produce,
|
||||
pantry
|
||||
|
|
|
|||
|
|
@ -89,13 +89,13 @@
|
|||
</defs>
|
||||
</svg>
|
||||
</span>
|
||||
Cartzilla
|
||||
AsiaGolf
|
||||
</a>
|
||||
|
||||
<!-- Main navigation that turns into offcanvas on screens < 992px wide (lg breakpoint) -->
|
||||
<nav class="offcanvas offcanvas-start" id="navbarNav" tabindex="-1" aria-labelledby="navbarNavLabel">
|
||||
<div class="offcanvas-header py-3">
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse Cartzilla</h5>
|
||||
<h5 class="offcanvas-title" id="navbarNavLabel">Browse AsiaGolf</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body pt-3 pb-4 py-lg-0 mx-lg-auto">
|
||||
|
|
|
|||
|
|
@ -436,7 +436,7 @@
|
|||
<div class="ps-3 pb-2">
|
||||
<div class="d-flex align-items-center pt-3 pb-2 mb-1">
|
||||
<span class="badge bg-primary me-2">Reply</span>
|
||||
<span class="h6 mb-0 me-4">Cartzilla Company</span>
|
||||
<span class="h6 mb-0 me-4">AsiaGolf Company</span>
|
||||
<span class="text-body-secondary fs-sm">May 8, 2024</span>
|
||||
</div>
|
||||
<p class="fs-sm mb-0">Thank you for your feedback! We are glad that you were satisfied with your purchase :)</p>
|
||||
|
|
@ -968,21 +968,21 @@
|
|||
<img src="/img/home/electronics/vlog/01.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">6:16</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 New Cool Gadgets You Must See on Cartzilla - Cheap Budget</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 New Cool Gadgets You Must See on AsiaGolf - Cheap Budget</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
<img src="/img/home/electronics/vlog/02.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">10:20</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 Super Useful Gadgets on Cartzilla You Must Have in 2023</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">5 Super Useful Gadgets on AsiaGolf You Must Have in 2023</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav flex-nowrap align-items-center position-relative">
|
||||
<img src="/img/home/electronics/vlog/03.jpg" class="rounded" width="140" alt="Video cover">
|
||||
<div class="ps-3">
|
||||
<div class="fs-xs text-body-secondary lh-sm mb-2">8:40</div>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top 5 New Amazing Gadgets on Cartzilla You Must See</a>
|
||||
<a class="nav-link fs-sm hover-effect-underline stretched-link p-0" href="#!">Top 5 New Amazing Gadgets on AsiaGolf You Must See</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -14,64 +14,64 @@
|
|||
|
||||
<div class="h6 pt-2 pt-lg-3"><span class="text-body-secondary fw-medium">Last updated:</span> June 26,
|
||||
2024</div>
|
||||
<p>Welcome to Cartzilla! These Terms and Conditions ("Terms") govern your access to and use of the
|
||||
Cartzilla website and mobile application (collectively referred to as the "Platform"). Please read
|
||||
<p>Welcome to AsiaGolf! These Terms and Conditions ("Terms") govern your access to and use of the
|
||||
AsiaGolf website and mobile application (collectively referred to as the "Platform"). Please read
|
||||
these Terms carefully before using the Platform. By accessing or using the Platform, you agree to be
|
||||
bound by these Terms.</p>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">1. Overview</h2>
|
||||
<p>Cartzilla provides an online platform that enables users to purchase groceries and other products
|
||||
<p>AsiaGolf provides an online platform that enables users to purchase groceries and other products
|
||||
from local stores and have them delivered to their designated location. By using the Platform, you
|
||||
acknowledge and agree that Cartzilla is not a store or retailer but merely acts as an intermediary
|
||||
acknowledge and agree that AsiaGolf is not a store or retailer but merely acts as an intermediary
|
||||
to facilitate transactions between users and participating stores.</p>
|
||||
<p>Welcome to the family of websites and applications provided by Cartzilla. These Terms of Use govern
|
||||
your access to and use of all Cartzilla Sites, among other things. By using the Cartzilla Sites, you
|
||||
<p>Welcome to the family of websites and applications provided by AsiaGolf. These Terms of Use govern
|
||||
your access to and use of all AsiaGolf Sites, among other things. By using the AsiaGolf Sites, you
|
||||
affirm that you are of legal age to enter into these Terms of Use, or, if you are not, that you have
|
||||
obtained parental or guardian consent to enter into these Terms of Use and your parent or guardian
|
||||
consents to these Terms of Use on your behalf. If you violate or do not agree to these Terms of Use,
|
||||
then your access to and use of the Cartzilla Sites is unauthorized. Additional terms and conditions
|
||||
apply to some services offered on the Cartzilla Sites (e.g., Cartzilla Pharmacy, Cartzilla +, and
|
||||
then your access to and use of the AsiaGolf Sites is unauthorized. Additional terms and conditions
|
||||
apply to some services offered on the AsiaGolf Sites (e.g., AsiaGolf Pharmacy, AsiaGolf +, and
|
||||
Gift Cards) or through other channels. Those terms and conditions can be found where the relevant
|
||||
service is offered on the Cartzilla Sites or otherwise and are incorporated into these Terms of Use
|
||||
service is offered on the AsiaGolf Sites or otherwise and are incorporated into these Terms of Use
|
||||
by reference.</p>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">2. Your use of the Cartzilla Sites</h2>
|
||||
<p>You certify that the Content you provide on or through the Cartzilla Sites is accurate and that the
|
||||
information you provide on or through the Cartzilla Sites is complete. You are solely responsible
|
||||
<h2 class="h4 pt-3 pt-lg-4">2. Your use of the AsiaGolf Sites</h2>
|
||||
<p>You certify that the Content you provide on or through the AsiaGolf Sites is accurate and that the
|
||||
information you provide on or through the AsiaGolf Sites is complete. You are solely responsible
|
||||
for maintaining the confidentiality and security of your account including username, password, and
|
||||
PIN. Cartzilla is not responsible for any losses arising out of the unauthorized use of your
|
||||
account. You agree that Cartzilla does not have any responsibility if you lose or share access to
|
||||
PIN. AsiaGolf is not responsible for any losses arising out of the unauthorized use of your
|
||||
account. You agree that AsiaGolf does not have any responsibility if you lose or share access to
|
||||
your device. Any agreement between you and the issuer of your credit card, debit card, or other form
|
||||
of payment will continue to govern your use of such payment method on the Cartzilla Sites. You agree
|
||||
that Cartzilla is not a party to any such agreement, nor is Cartzilla responsible for the content,
|
||||
of payment will continue to govern your use of such payment method on the AsiaGolf Sites. You agree
|
||||
that AsiaGolf is not a party to any such agreement, nor is AsiaGolf responsible for the content,
|
||||
accuracy, or unavailability of any method used for payment. Your account may be restricted or
|
||||
terminated for any reason, at our sole discretion. Except as otherwise provided by law, at any time
|
||||
without notice to you, we may (1) change, restrict access to, suspend, or discontinue the Cartzilla
|
||||
Sites or any portion of the Cartzilla Sites, and (2) charge, modify, or waive any fees required to
|
||||
use any services, functionality, or other content available through the Cartzilla Sites or any
|
||||
portion of the Cartzilla Sites.</p>
|
||||
<h3 class="h6">In connection with the Cartzilla Sites, you will not:</h3>
|
||||
without notice to you, we may (1) change, restrict access to, suspend, or discontinue the AsiaGolf
|
||||
Sites or any portion of the AsiaGolf Sites, and (2) charge, modify, or waive any fees required to
|
||||
use any services, functionality, or other content available through the AsiaGolf Sites or any
|
||||
portion of the AsiaGolf Sites.</p>
|
||||
<h3 class="h6">In connection with the AsiaGolf Sites, you will not:</h3>
|
||||
<ul class="gap-3">
|
||||
<li>Make available any Content through or in connection with the Cartzilla Sites that is or may be
|
||||
<li>Make available any Content through or in connection with the AsiaGolf Sites that is or may be
|
||||
in violation of the content guidelines set forth in Section 3.C (Prohibited Content) below.</li>
|
||||
<li>Make available through or in connection with the Cartzilla Sites any virus, worm, Trojan horse,
|
||||
<li>Make available through or in connection with the AsiaGolf Sites any virus, worm, Trojan horse,
|
||||
Easter egg, time bomb, spyware, or other computer code, file, or program that is or is
|
||||
potentially harmful or invasive or intended to damage or hijack the operation of, or to monitor
|
||||
the use of, any hardware, software, or equipment.</li>
|
||||
<li>Use the Cartzilla Sites for any commercial purpose, or for any purpose that is fraudulent or
|
||||
<li>Use the AsiaGolf Sites for any commercial purpose, or for any purpose that is fraudulent or
|
||||
otherwise tortious or unlawful.</li>
|
||||
<li>Harvest or collect information about users of the Cartzilla Sites.</li>
|
||||
<li>Interfere with or disrupt the operation of the Cartzilla Sites or the systems, servers, or
|
||||
networks used to make the Cartzilla Sites available, including by hacking or defacing any
|
||||
portion of the Cartzilla Sites; or violate any requirement, procedure, or policy of such servers
|
||||
<li>Harvest or collect information about users of the AsiaGolf Sites.</li>
|
||||
<li>Interfere with or disrupt the operation of the AsiaGolf Sites or the systems, servers, or
|
||||
networks used to make the AsiaGolf Sites available, including by hacking or defacing any
|
||||
portion of the AsiaGolf Sites; or violate any requirement, procedure, or policy of such servers
|
||||
or networks.</li>
|
||||
<li>Reproduce, modify, adapt, translate, create derivative works of, sell, rent, lease, loan,
|
||||
timeshare, distribute, or otherwise exploit any portion of (or any use of) the Cartzilla Sites
|
||||
except as expressly authorized in these Terms of Use, without Cartzilla's express prior written
|
||||
timeshare, distribute, or otherwise exploit any portion of (or any use of) the AsiaGolf Sites
|
||||
except as expressly authorized in these Terms of Use, without AsiaGolf's express prior written
|
||||
consent.</li>
|
||||
<li>Reverse engineer, decompile, or disassemble any portion of the Cartzilla Sites, except where
|
||||
<li>Reverse engineer, decompile, or disassemble any portion of the AsiaGolf Sites, except where
|
||||
such restriction is expressly prohibited by applicable law.</li>
|
||||
<li>Remove any copyright, trademark, or other proprietary rights notice from the Cartzilla Sites.
|
||||
<li>Remove any copyright, trademark, or other proprietary rights notice from the AsiaGolf Sites.
|
||||
</li>
|
||||
<li>You will not attempt to do anything, or permit, encourage, assist, or allow any third party to
|
||||
do anything, prohibited in this Section, or attempt, permit, encourage, assist, or allow any
|
||||
|
|
@ -79,66 +79,66 @@
|
|||
</ul>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">3. Ordering and delivery</h2>
|
||||
<p>When placing an order through Cartzilla, you are responsible for ensuring the accuracy of the items,
|
||||
quantities, and delivery details. Cartzilla does not guarantee the availability of any specific
|
||||
<p>When placing an order through AsiaGolf, you are responsible for ensuring the accuracy of the items,
|
||||
quantities, and delivery details. AsiaGolf does not guarantee the availability of any specific
|
||||
product and reserves the right to substitute products based on availability. Delivery times provided
|
||||
are estimates and may vary due to various factors.</p>
|
||||
<ul class="gap-3">
|
||||
<li>Reverse engineer, decompile, or disassemble any portion of the Cartzilla Sites, except where
|
||||
<li>Reverse engineer, decompile, or disassemble any portion of the AsiaGolf Sites, except where
|
||||
such restriction is expressly prohibited by applicable law.</li>
|
||||
<li>Reproduce, modify, adapt, translate, create derivative works of, sell, rent, lease, loan,
|
||||
timeshare, distribute, or otherwise exploit any portion of (or any use of) the Cartzilla Sites
|
||||
except as expressly authorized in these Terms of Use, without Cartzilla's express prior written
|
||||
timeshare, distribute, or otherwise exploit any portion of (or any use of) the AsiaGolf Sites
|
||||
except as expressly authorized in these Terms of Use, without AsiaGolf's express prior written
|
||||
consent.</li>
|
||||
<li>You will not attempt to do anything, or permit, encourage, assist, or allow any third party to
|
||||
do anything, prohibited in this Section, or attempt, permit, encourage, assist, or allow any
|
||||
other violation of these Terms of Use.</li>
|
||||
<li>Remove any copyright, trademark, or other proprietary rights notice from the Cartzilla Sites.
|
||||
<li>Remove any copyright, trademark, or other proprietary rights notice from the AsiaGolf Sites.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">4. Payments</h2>
|
||||
<p>Cartzilla facilitates payments for orders made through the Platform. By using Cartzilla's payment
|
||||
services, you agree to provide accurate payment information and authorize Cartzilla to charge the
|
||||
applicable amount for your order. Cartzilla may use third-party payment processors to process
|
||||
<p>AsiaGolf facilitates payments for orders made through the Platform. By using AsiaGolf's payment
|
||||
services, you agree to provide accurate payment information and authorize AsiaGolf to charge the
|
||||
applicable amount for your order. AsiaGolf may use third-party payment processors to process
|
||||
transactions and may store your payment information in accordance with its Privacy Policy.</p>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">5. User conduct</h2>
|
||||
<p>You agree to use the Platform in compliance with all applicable laws and regulations. You shall not
|
||||
engage in any unlawful, harmful, or abusive behavior while using the Platform. Cartzilla reserves
|
||||
engage in any unlawful, harmful, or abusive behavior while using the Platform. AsiaGolf reserves
|
||||
the right to suspend or terminate your account if you violate these Terms or engage in any
|
||||
prohibited activities.</p>
|
||||
<h3 class="h6 pt-2">Intellectual property</h3>
|
||||
<p>All content on the Cartzilla Platform, including but not limited to text, graphics, logos, and
|
||||
software, is the property of Cartzilla or its licensors and is protected by intellectual property
|
||||
<p>All content on the AsiaGolf Platform, including but not limited to text, graphics, logos, and
|
||||
software, is the property of AsiaGolf or its licensors and is protected by intellectual property
|
||||
laws. You may not use, reproduce, modify, or distribute any content from the Platform without prior
|
||||
written consent from Cartzilla.</p>
|
||||
written consent from AsiaGolf.</p>
|
||||
<h3 class="h6 pt-2">Third-party links and content</h3>
|
||||
<p>The Platform may contain links to third-party websites or resources. Cartzilla does not endorse,
|
||||
<p>The Platform may contain links to third-party websites or resources. AsiaGolf does not endorse,
|
||||
control, or assume responsibility for any third-party content or websites. You acknowledge and agree
|
||||
that Cartzilla is not liable for any loss or damage caused by your reliance on such content or
|
||||
that AsiaGolf is not liable for any loss or damage caused by your reliance on such content or
|
||||
websites.</p>
|
||||
<h3 class="h6 pt-2">Disclaimer of warranties</h3>
|
||||
<p>The Platform is provided on an "as is" and "as available" basis, without warranties of any kind,
|
||||
either express or implied. Cartzilla does not guarantee the accuracy, reliability, or availability
|
||||
either express or implied. AsiaGolf does not guarantee the accuracy, reliability, or availability
|
||||
of the Platform and disclaims all warranties to the fullest extent permitted by law.</p>
|
||||
<h3 class="h6 pt-2">Limitation of liability</h3>
|
||||
<p>To the maximum extent permitted by law, Cartzilla and its affiliates shall not be liable for any
|
||||
<p>To the maximum extent permitted by law, AsiaGolf and its affiliates shall not be liable for any
|
||||
indirect, incidental, consequential, or punitive damages arising out of or in connection with the
|
||||
use of the Platform, even if advised of the possibility of such damages.</p>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">6. Entire agreement and severability</h2>
|
||||
<p>These Terms, subject to any amendments, modifications, or additional agreements you enter into with
|
||||
Cartzilla, shall constitute the entire agreement between you and Cartzilla with respect to the
|
||||
AsiaGolf, shall constitute the entire agreement between you and AsiaGolf with respect to the
|
||||
Services and any use of the Services. If any provision of these Terms is found to be invalid by a
|
||||
court of competent jurisdiction, that provision only will be limited to the minimum extent
|
||||
necessary, and the remaining provisions will remain in full force and effect.</p>
|
||||
<p>Cartzilla reserves the right to modify or update these Terms at any time without prior notice. Your
|
||||
<p>AsiaGolf reserves the right to modify or update these Terms at any time without prior notice. Your
|
||||
continued use of the Platform after any changes to the Terms constitutes acceptance of those
|
||||
changes.</p>
|
||||
|
||||
<h2 class="h4 pt-3 pt-lg-4">7. Contact information</h2>
|
||||
<p>If you have any questions, or comments about these Terms please contact Cartzilla at:</p>
|
||||
<p>If you have any questions, or comments about these Terms please contact AsiaGolf at:</p>
|
||||
<ul class="list-unstyled pb-1">
|
||||
<li class="nav pt-1">
|
||||
<a class="nav-link align-items-start fs-base p-0" href="tel:+15053753082">
|
||||
|
|
@ -160,7 +160,7 @@
|
|||
</li>
|
||||
</ul>
|
||||
<p class="pb-3 mb-0">For customer service inquiries, please review Your Account Settings, visit
|
||||
Cartzilla's <a class="fw-medium" href="{{ route('second', ['help', 'topics-v1'])}}">Help Center.</a></p>
|
||||
AsiaGolf's <a class="fw-medium" href="{{ route('second', ['help', 'topics-v1'])}}">Help Center.</a></p>
|
||||
|
||||
<hr class="my-3 my-lg-4">
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ use App\Http\Controllers\LocationController;
|
|||
use App\Http\Controllers\LocaleController;
|
||||
use App\Http\Controllers\ProductController;
|
||||
use App\Http\Controllers\SearchController;
|
||||
use App\Http\Controllers\ComponentController;
|
||||
|
||||
Route::group(['prefix' => '/dummy'], function () {
|
||||
Route::get('', [RoutingController::class, 'index'])->name('root');
|
||||
|
|
@ -26,9 +27,14 @@ Route::get('/', [HomeController::class, 'index'])->name('home');
|
|||
|
||||
Route::get('/products',[ProductController::class, 'index'])->name('product.index');
|
||||
Route::get('/products/ajax',[ProductController::class, 'ajax'])->name('product.ajax');
|
||||
Route::get('/products/ajax/highlights',[ProductController::class, 'highlights'])->name('product.ajax.highlights');
|
||||
Route::get('/products/ajax/brands',[ProductController::class, 'brands'])->name('product.ajax.brands');
|
||||
Route::get('/products/ajax/categories',[ProductController::class, 'categories'])->name('product.ajax.categories');
|
||||
Route::get('/products/ajax/genders',[ProductController::class, 'genders'])->name('product.ajax.genders');
|
||||
Route::get('/product/{slug}',[ProductController::class, 'detail'])->name('product.detail');
|
||||
|
||||
// Search routes
|
||||
Route::get('/search', [SearchController::class, 'search'])->name('search.ajax');
|
||||
Route::get('/search', [SearchController::class, 'search'])->name('search.ajax');
|
||||
|
||||
// Component loading routes
|
||||
Route::get('/components/{component}', [ComponentController::class, 'load'])->name('component.load');
|
||||
Loading…
Reference in New Issue