diff --git a/app/Http/Controllers/ComponentController.php b/app/Http/Controllers/ComponentController.php
new file mode 100644
index 0000000..a65e2b2
--- /dev/null
+++ b/app/Http/Controllers/ComponentController.php
@@ -0,0 +1,34 @@
+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);
+ }
+}
diff --git a/app/Http/Controllers/ProductController.php b/app/Http/Controllers/ProductController.php
index 52278fb..8b1ae90 100644
--- a/app/Http/Controllers/ProductController.php
+++ b/app/Http/Controllers/ProductController.php
@@ -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 .= '';
+ $brandHtml .= '
';
+ $brandHtml .= '';
+ }
+
+ 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 = '
';
+ $productHtml .= 'No products found';
+ $productHtml .= '
';
+ } else {
+ foreach ($products as $product) {
+ $productHtml .= '';
+ $productHtml .= view('components.home.product-card', ['product' => $product])->render();
+ $productHtml .= '
';
+ }
+ }
+
+ return response()->json([
+ 'success' => true,
+ 'products' => $productHtml,
+ 'count' => count($products),
+ 'type' => $type
+ ]);
+ }
+
public function detail($slug, Request $request, ProductRepository $productRepository)
{
diff --git a/app/View/Components/Home/BrandHome.php b/app/View/Components/Home/BrandHome.php
index d42bc49..5842fb0 100644
--- a/app/View/Components/Home/BrandHome.php
+++ b/app/View/Components/Home/BrandHome.php
@@ -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);
- }
+
}
/**
diff --git a/app/View/Components/Home/HomePopularProducts.php b/app/View/Components/Home/HomePopularProducts.php
new file mode 100644
index 0000000..9094351
--- /dev/null
+++ b/app/View/Components/Home/HomePopularProducts.php
@@ -0,0 +1,22 @@
+ 'new',
- ];
- $this->products = $productRepository->getList($params);
+
}
/**
diff --git a/resources/icons/cartzilla-icons.min.css b/resources/icons/cartzilla-icons.min.css
index adcda1b..22bd6a7 100644
--- a/resources/icons/cartzilla-icons.min.css
+++ b/resources/icons/cartzilla-icons.min.css
@@ -1 +1 @@
-@font-face{font-display:block;font-family:AsiaGolf-icons;src:url(AsiaGolf-icons.woff2) format("woff2")}[class*=" ci-"]:before,[class^=ci-]:before{font-family:AsiaGolf-icons!important;font-style:normal;font-variant:normal;font-weight:400!important;line-height:1;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ci-activity:before{content:"\f101"}.ci-airbnb:before{content:"\f102"}.ci-airplay:before{content:"\f103"}.ci-alert-circle:before{content:"\f104"}.ci-alert-octagon:before{content:"\f105"}.ci-alert-triangle:before{content:"\f106"}.ci-align-center:before{content:"\f107"}.ci-align-justify:before{content:"\f108"}.ci-align-left:before{content:"\f109"}.ci-align-right:before{content:"\f10a"}.ci-anchor:before{content:"\f10b"}.ci-aperture:before{content:"\f10c"}.ci-apple:before{content:"\f10d"}.ci-archive:before{content:"\f10e"}.ci-arrow-down-circle:before{content:"\f10f"}.ci-arrow-down-left:before{content:"\f110"}.ci-arrow-down-right:before{content:"\f111"}.ci-arrow-down:before{content:"\f112"}.ci-arrow-left-circle:before{content:"\f113"}.ci-arrow-left:before{content:"\f114"}.ci-arrow-right-circle:before{content:"\f115"}.ci-arrow-right:before{content:"\f116"}.ci-arrow-up-circle:before{content:"\f117"}.ci-arrow-up-left:before{content:"\f118"}.ci-arrow-up-right:before{content:"\f119"}.ci-arrow-up:before{content:"\f11a"}.ci-at-sign:before{content:"\f11b"}.ci-auto:before{content:"\f11c"}.ci-avocado:before{content:"\f11d"}.ci-award:before{content:"\f11e"}.ci-banned:before{content:"\f11f"}.ci-bar-chart-2:before{content:"\f120"}.ci-bar-chart:before{content:"\f121"}.ci-battery-2:before{content:"\f122"}.ci-battery-charging:before{content:"\f123"}.ci-battery:before{content:"\f124"}.ci-behance:before{content:"\f125"}.ci-bell-off:before{content:"\f126"}.ci-bell:before{content:"\f127"}.ci-blogger:before{content:"\f128"}.ci-bluetooth:before{content:"\f129"}.ci-bold:before{content:"\f12a"}.ci-book-open:before{content:"\f12b"}.ci-book:before{content:"\f12c"}.ci-bookmark:before{content:"\f12d"}.ci-box:before{content:"\f12e"}.ci-briefcase:before{content:"\f12f"}.ci-broccoli:before{content:"\f130"}.ci-bullet:before{content:"\f131"}.ci-calendar:before{content:"\f132"}.ci-camera-2:before{content:"\f133"}.ci-camera-off:before{content:"\f134"}.ci-camera:before{content:"\f135"}.ci-cast:before{content:"\f136"}.ci-chat:before{content:"\f137"}.ci-check-circle:before{content:"\f138"}.ci-check-search:before{content:"\f139"}.ci-check-shield:before{content:"\f13a"}.ci-check-square:before{content:"\f13b"}.ci-check:before{content:"\f13c"}.ci-chevron-down:before{content:"\f13d"}.ci-chevron-left:before{content:"\f13e"}.ci-chevron-right:before{content:"\f13f"}.ci-chevron-up:before{content:"\f140"}.ci-chevrons-down:before{content:"\f141"}.ci-chevrons-left:before{content:"\f142"}.ci-chevrons-right:before{content:"\f143"}.ci-chevrons-up:before{content:"\f144"}.ci-click:before{content:"\f145"}.ci-clipboard:before{content:"\f146"}.ci-clock:before{content:"\f147"}.ci-close-circle:before{content:"\f148"}.ci-close-octagon:before{content:"\f149"}.ci-close-square:before{content:"\f14a"}.ci-close:before{content:"\f14b"}.ci-cloud-drizzle:before{content:"\f14c"}.ci-cloud-lightning:before{content:"\f14d"}.ci-cloud-off:before{content:"\f14e"}.ci-cloud-rain:before{content:"\f14f"}.ci-cloud-snow:before{content:"\f150"}.ci-cloud:before{content:"\f151"}.ci-code:before{content:"\f152"}.ci-codepen:before{content:"\f153"}.ci-coffee:before{content:"\f154"}.ci-columns:before{content:"\f155"}.ci-command:before{content:"\f156"}.ci-compass:before{content:"\f157"}.ci-computer:before{content:"\f158"}.ci-copy:before{content:"\f159"}.ci-corner-down-left:before{content:"\f15a"}.ci-corner-down-right:before{content:"\f15b"}.ci-corner-left-down:before{content:"\f15c"}.ci-corner-left-up:before{content:"\f15d"}.ci-corner-right-down:before{content:"\f15e"}.ci-corner-right-up:before{content:"\f15f"}.ci-corner-up-left:before{content:"\f160"}.ci-corner-up-right:before{content:"\f161"}.ci-credit-card:before{content:"\f162"}.ci-crop:before{content:"\f163"}.ci-crosshair:before{content:"\f164"}.ci-database:before{content:"\f165"}.ci-delete:before{content:"\f166"}.ci-delivery-2:before{content:"\f167"}.ci-delivery:before{content:"\f168"}.ci-disc:before{content:"\f169"}.ci-discord:before{content:"\f16a"}.ci-disqus:before{content:"\f16b"}.ci-divide:before{content:"\f16c"}.ci-dollar-sign:before{content:"\f16d"}.ci-download-cloud:before{content:"\f16e"}.ci-download:before{content:"\f16f"}.ci-dribbble:before{content:"\f170"}.ci-dropbox:before{content:"\f171"}.ci-droplet:before{content:"\f172"}.ci-edit-2:before{content:"\f173"}.ci-edit-3:before{content:"\f174"}.ci-edit:before{content:"\f175"}.ci-envato:before{content:"\f176"}.ci-evernote:before{content:"\f177"}.ci-external-link:before{content:"\f178"}.ci-eye-off:before{content:"\f179"}.ci-eye:before{content:"\f17a"}.ci-facebook:before{content:"\f17b"}.ci-fast-forward:before{content:"\f17c"}.ci-feather:before{content:"\f17d"}.ci-file-minus:before{content:"\f17e"}.ci-file-plus:before{content:"\f17f"}.ci-file-text:before{content:"\f180"}.ci-file:before{content:"\f181"}.ci-film:before{content:"\f182"}.ci-filter:before{content:"\f183"}.ci-flag:before{content:"\f184"}.ci-flickr:before{content:"\f185"}.ci-folder-minus:before{content:"\f186"}.ci-folder-plus:before{content:"\f187"}.ci-folder:before{content:"\f188"}.ci-food:before{content:"\f189"}.ci-foursquare:before{content:"\f18a"}.ci-frown:before{content:"\f18b"}.ci-game:before{content:"\f18c"}.ci-gift:before{content:"\f18d"}.ci-github:before{content:"\f18e"}.ci-globe:before{content:"\f18f"}.ci-gluten-free:before{content:"\f190"}.ci-google-drive:before{content:"\f191"}.ci-google-play:before{content:"\f192"}.ci-google:before{content:"\f193"}.ci-grid-2:before{content:"\f194"}.ci-grid:before{content:"\f195"}.ci-hanger:before{content:"\f196"}.ci-hangouts:before{content:"\f197"}.ci-hard-drive-2:before{content:"\f198"}.ci-hard-drive:before{content:"\f199"}.ci-hash:before{content:"\f19a"}.ci-headphones-2:before{content:"\f19b"}.ci-headphones:before{content:"\f19c"}.ci-heart-filled:before{content:"\f19d"}.ci-heart:before{content:"\f19e"}.ci-help-circle:before{content:"\f19f"}.ci-home:before{content:"\f1a0"}.ci-id-card:before{content:"\f1a1"}.ci-image:before{content:"\f1a2"}.ci-inbox:before{content:"\f1a3"}.ci-info:before{content:"\f1a4"}.ci-instagram:before{content:"\f1a5"}.ci-italic:before{content:"\f1a6"}.ci-key:before{content:"\f1a7"}.ci-kickstarter:before{content:"\f1a8"}.ci-layers-2:before{content:"\f1a9"}.ci-layers:before{content:"\f1aa"}.ci-layout:before{content:"\f1ab"}.ci-leaf:before{content:"\f1ac"}.ci-life-buoy:before{content:"\f1ad"}.ci-link-2:before{content:"\f1ae"}.ci-link:before{content:"\f1af"}.ci-linkedin:before{content:"\f1b0"}.ci-list:before{content:"\f1b1"}.ci-loader:before{content:"\f1b2"}.ci-lock:before{content:"\f1b3"}.ci-log-in:before{content:"\f1b4"}.ci-log-out:before{content:"\f1b5"}.ci-mail:before{content:"\f1b6"}.ci-map-pin:before{content:"\f1b7"}.ci-map:before{content:"\f1b8"}.ci-maximize-2:before{content:"\f1b9"}.ci-maximize:before{content:"\f1ba"}.ci-medium:before{content:"\f1bb"}.ci-meh:before{content:"\f1bc"}.ci-menu:before{content:"\f1bd"}.ci-message-circle:before{content:"\f1be"}.ci-message-square:before{content:"\f1bf"}.ci-messenger:before{content:"\f1c0"}.ci-mic-off:before{content:"\f1c1"}.ci-mic:before{content:"\f1c2"}.ci-minimize-2:before{content:"\f1c3"}.ci-minimize:before{content:"\f1c4"}.ci-minus-circle:before{content:"\f1c5"}.ci-minus-square:before{content:"\f1c6"}.ci-minus:before{content:"\f1c7"}.ci-monitor-2:before{content:"\f1c8"}.ci-monitor:before{content:"\f1c9"}.ci-moon:before{content:"\f1ca"}.ci-more-horizontal:before{content:"\f1cb"}.ci-more-vertical:before{content:"\f1cc"}.ci-mouse-pointer:before{content:"\f1cd"}.ci-move:before{content:"\f1ce"}.ci-music:before{content:"\f1cf"}.ci-myspace:before{content:"\f1d0"}.ci-navigation-2:before{content:"\f1d1"}.ci-navigation:before{content:"\f1d2"}.ci-odnoklassniki:before{content:"\f1d3"}.ci-open-source:before{content:"\f1d4"}.ci-package:before{content:"\f1d5"}.ci-paint:before{content:"\f1d6"}.ci-paperclip:before{content:"\f1d7"}.ci-patreon:before{content:"\f1d8"}.ci-pause-circle:before{content:"\f1d9"}.ci-pause:before{content:"\f1da"}.ci-pen-tool:before{content:"\f1db"}.ci-percent:before{content:"\f1dc"}.ci-phone-call:before{content:"\f1dd"}.ci-phone-forwarded:before{content:"\f1de"}.ci-phone-incoming:before{content:"\f1df"}.ci-phone-missed:before{content:"\f1e0"}.ci-phone-off:before{content:"\f1e1"}.ci-phone-outgoing:before{content:"\f1e2"}.ci-phone:before{content:"\f1e3"}.ci-pie-chart:before{content:"\f1e4"}.ci-pinterest:before{content:"\f1e5"}.ci-play-circle:before{content:"\f1e6"}.ci-play-filled:before{content:"\f1e7"}.ci-play:before{content:"\f1e8"}.ci-plus-circle:before{content:"\f1e9"}.ci-plus-square:before{content:"\f1ea"}.ci-plus:before{content:"\f1eb"}.ci-power:before{content:"\f1ec"}.ci-powerbank:before{content:"\f1ed"}.ci-printer-2:before{content:"\f1ee"}.ci-printer:before{content:"\f1ef"}.ci-product-hunt:before{content:"\f1f0"}.ci-quora:before{content:"\f1f1"}.ci-radio:before{content:"\f1f2"}.ci-reddit:before{content:"\f1f3"}.ci-refresh-ccw:before{content:"\f1f4"}.ci-refresh-cw:before{content:"\f1f5"}.ci-repeat:before{content:"\f1f6"}.ci-rewind:before{content:"\f1f7"}.ci-rocket:before{content:"\f1f8"}.ci-rotate-ccw:before{content:"\f1f9"}.ci-rotate-cw:before{content:"\f1fa"}.ci-rss-2:before{content:"\f1fb"}.ci-rss:before{content:"\f1fc"}.ci-ruler:before{content:"\f1fd"}.ci-save:before{content:"\f1fe"}.ci-scan:before{content:"\f1ff"}.ci-schedule:before{content:"\f200"}.ci-scissors:before{content:"\f201"}.ci-search:before{content:"\f202"}.ci-send:before{content:"\f203"}.ci-server:before{content:"\f204"}.ci-settings:before{content:"\f205"}.ci-share-2:before{content:"\f206"}.ci-share:before{content:"\f207"}.ci-shield-off:before{content:"\f208"}.ci-shield:before{content:"\f209"}.ci-shopping-bag:before{content:"\f20a"}.ci-shopping-cart:before{content:"\f20b"}.ci-shuffle:before{content:"\f20c"}.ci-sidebar:before{content:"\f20d"}.ci-skip-back:before{content:"\f20e"}.ci-skip-forward:before{content:"\f20f"}.ci-skype:before{content:"\f210"}.ci-slack:before{content:"\f211"}.ci-sliders:before{content:"\f212"}.ci-smartphone-2:before{content:"\f213"}.ci-smartphone:before{content:"\f214"}.ci-smile:before{content:"\f215"}.ci-snapchat:before{content:"\f216"}.ci-sort:before{content:"\f217"}.ci-soundcloud:before{content:"\f218"}.ci-speaker-2:before{content:"\f219"}.ci-speaker:before{content:"\f21a"}.ci-spotify:before{content:"\f21b"}.ci-stack-overflow:before{content:"\f21c"}.ci-star-filled:before{content:"\f21d"}.ci-star-half:before{content:"\f21e"}.ci-star:before{content:"\f21f"}.ci-steam:before{content:"\f220"}.ci-stop-circle:before{content:"\f221"}.ci-stumbleupon:before{content:"\f222"}.ci-sun:before{content:"\f223"}.ci-sunrise:before{content:"\f224"}.ci-sunset:before{content:"\f225"}.ci-table:before{content:"\f226"}.ci-tablet:before{content:"\f227"}.ci-tag:before{content:"\f228"}.ci-target:before{content:"\f229"}.ci-telegram:before{content:"\f22a"}.ci-terminal:before{content:"\f22b"}.ci-thermometer:before{content:"\f22c"}.ci-thumbs-down:before{content:"\f22d"}.ci-thumbs-up:before{content:"\f22e"}.ci-ticket:before{content:"\f22f"}.ci-tiktok:before{content:"\f230"}.ci-tinder:before{content:"\f231"}.ci-tool:before{content:"\f232"}.ci-trash-empty:before{content:"\f233"}.ci-trash:before{content:"\f234"}.ci-trello:before{content:"\f235"}.ci-trending-down:before{content:"\f236"}.ci-trending-up:before{content:"\f237"}.ci-triangle:before{content:"\f238"}.ci-truck:before{content:"\f239"}.ci-tumblr:before{content:"\f23a"}.ci-tv:before{content:"\f23b"}.ci-twitch:before{content:"\f23c"}.ci-type:before{content:"\f23d"}.ci-umbrella:before{content:"\f23e"}.ci-unlock:before{content:"\f23f"}.ci-upload-cloud:before{content:"\f240"}.ci-upload:before{content:"\f241"}.ci-user-check:before{content:"\f242"}.ci-user-plus:before{content:"\f243"}.ci-user-x:before{content:"\f244"}.ci-user:before{content:"\f245"}.ci-viber:before{content:"\f246"}.ci-video-off:before{content:"\f247"}.ci-video:before{content:"\f248"}.ci-vimeo:before{content:"\f249"}.ci-vk:before{content:"\f24a"}.ci-voicemail:before{content:"\f24b"}.ci-volume-1:before{content:"\f24c"}.ci-volume-2:before{content:"\f24d"}.ci-volume-x:before{content:"\f24e"}.ci-volume:before{content:"\f24f"}.ci-watch-2:before{content:"\f250"}.ci-watch:before{content:"\f251"}.ci-wechat:before{content:"\f252"}.ci-whatsapp:before{content:"\f253"}.ci-wifi-off:before{content:"\f254"}.ci-wifi:before{content:"\f255"}.ci-wind:before{content:"\f256"}.ci-x:before{content:"\f257"}.ci-xing:before{content:"\f258"}.ci-yelp:before{content:"\f259"}.ci-youtube:before{content:"\f25a"}.ci-zap-off:before{content:"\f25b"}.ci-zap:before{content:"\f25c"}.ci-zoom-in:before{content:"\f25d"}.ci-zoom-out:before{content:"\f25e"}
\ No newline at end of file
+@font-face{font-display:block;font-family:CartZilla-icons;src:url(CartZilla-icons.woff2) format("woff2")}[class*=" ci-"]:before,[class^=ci-]:before{font-family:CartZilla-icons!important;font-style:normal;font-variant:normal;font-weight:400!important;line-height:1;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ci-activity:before{content:"\f101"}.ci-airbnb:before{content:"\f102"}.ci-airplay:before{content:"\f103"}.ci-alert-circle:before{content:"\f104"}.ci-alert-octagon:before{content:"\f105"}.ci-alert-triangle:before{content:"\f106"}.ci-align-center:before{content:"\f107"}.ci-align-justify:before{content:"\f108"}.ci-align-left:before{content:"\f109"}.ci-align-right:before{content:"\f10a"}.ci-anchor:before{content:"\f10b"}.ci-aperture:before{content:"\f10c"}.ci-apple:before{content:"\f10d"}.ci-archive:before{content:"\f10e"}.ci-arrow-down-circle:before{content:"\f10f"}.ci-arrow-down-left:before{content:"\f110"}.ci-arrow-down-right:before{content:"\f111"}.ci-arrow-down:before{content:"\f112"}.ci-arrow-left-circle:before{content:"\f113"}.ci-arrow-left:before{content:"\f114"}.ci-arrow-right-circle:before{content:"\f115"}.ci-arrow-right:before{content:"\f116"}.ci-arrow-up-circle:before{content:"\f117"}.ci-arrow-up-left:before{content:"\f118"}.ci-arrow-up-right:before{content:"\f119"}.ci-arrow-up:before{content:"\f11a"}.ci-at-sign:before{content:"\f11b"}.ci-auto:before{content:"\f11c"}.ci-avocado:before{content:"\f11d"}.ci-award:before{content:"\f11e"}.ci-banned:before{content:"\f11f"}.ci-bar-chart-2:before{content:"\f120"}.ci-bar-chart:before{content:"\f121"}.ci-battery-2:before{content:"\f122"}.ci-battery-charging:before{content:"\f123"}.ci-battery:before{content:"\f124"}.ci-behance:before{content:"\f125"}.ci-bell-off:before{content:"\f126"}.ci-bell:before{content:"\f127"}.ci-blogger:before{content:"\f128"}.ci-bluetooth:before{content:"\f129"}.ci-bold:before{content:"\f12a"}.ci-book-open:before{content:"\f12b"}.ci-book:before{content:"\f12c"}.ci-bookmark:before{content:"\f12d"}.ci-box:before{content:"\f12e"}.ci-briefcase:before{content:"\f12f"}.ci-broccoli:before{content:"\f130"}.ci-bullet:before{content:"\f131"}.ci-calendar:before{content:"\f132"}.ci-camera-2:before{content:"\f133"}.ci-camera-off:before{content:"\f134"}.ci-camera:before{content:"\f135"}.ci-cast:before{content:"\f136"}.ci-chat:before{content:"\f137"}.ci-check-circle:before{content:"\f138"}.ci-check-search:before{content:"\f139"}.ci-check-shield:before{content:"\f13a"}.ci-check-square:before{content:"\f13b"}.ci-check:before{content:"\f13c"}.ci-chevron-down:before{content:"\f13d"}.ci-chevron-left:before{content:"\f13e"}.ci-chevron-right:before{content:"\f13f"}.ci-chevron-up:before{content:"\f140"}.ci-chevrons-down:before{content:"\f141"}.ci-chevrons-left:before{content:"\f142"}.ci-chevrons-right:before{content:"\f143"}.ci-chevrons-up:before{content:"\f144"}.ci-click:before{content:"\f145"}.ci-clipboard:before{content:"\f146"}.ci-clock:before{content:"\f147"}.ci-close-circle:before{content:"\f148"}.ci-close-octagon:before{content:"\f149"}.ci-close-square:before{content:"\f14a"}.ci-close:before{content:"\f14b"}.ci-cloud-drizzle:before{content:"\f14c"}.ci-cloud-lightning:before{content:"\f14d"}.ci-cloud-off:before{content:"\f14e"}.ci-cloud-rain:before{content:"\f14f"}.ci-cloud-snow:before{content:"\f150"}.ci-cloud:before{content:"\f151"}.ci-code:before{content:"\f152"}.ci-codepen:before{content:"\f153"}.ci-coffee:before{content:"\f154"}.ci-columns:before{content:"\f155"}.ci-command:before{content:"\f156"}.ci-compass:before{content:"\f157"}.ci-computer:before{content:"\f158"}.ci-copy:before{content:"\f159"}.ci-corner-down-left:before{content:"\f15a"}.ci-corner-down-right:before{content:"\f15b"}.ci-corner-left-down:before{content:"\f15c"}.ci-corner-left-up:before{content:"\f15d"}.ci-corner-right-down:before{content:"\f15e"}.ci-corner-right-up:before{content:"\f15f"}.ci-corner-up-left:before{content:"\f160"}.ci-corner-up-right:before{content:"\f161"}.ci-credit-card:before{content:"\f162"}.ci-crop:before{content:"\f163"}.ci-crosshair:before{content:"\f164"}.ci-database:before{content:"\f165"}.ci-delete:before{content:"\f166"}.ci-delivery-2:before{content:"\f167"}.ci-delivery:before{content:"\f168"}.ci-disc:before{content:"\f169"}.ci-discord:before{content:"\f16a"}.ci-disqus:before{content:"\f16b"}.ci-divide:before{content:"\f16c"}.ci-dollar-sign:before{content:"\f16d"}.ci-download-cloud:before{content:"\f16e"}.ci-download:before{content:"\f16f"}.ci-dribbble:before{content:"\f170"}.ci-dropbox:before{content:"\f171"}.ci-droplet:before{content:"\f172"}.ci-edit-2:before{content:"\f173"}.ci-edit-3:before{content:"\f174"}.ci-edit:before{content:"\f175"}.ci-envato:before{content:"\f176"}.ci-evernote:before{content:"\f177"}.ci-external-link:before{content:"\f178"}.ci-eye-off:before{content:"\f179"}.ci-eye:before{content:"\f17a"}.ci-facebook:before{content:"\f17b"}.ci-fast-forward:before{content:"\f17c"}.ci-feather:before{content:"\f17d"}.ci-file-minus:before{content:"\f17e"}.ci-file-plus:before{content:"\f17f"}.ci-file-text:before{content:"\f180"}.ci-file:before{content:"\f181"}.ci-film:before{content:"\f182"}.ci-filter:before{content:"\f183"}.ci-flag:before{content:"\f184"}.ci-flickr:before{content:"\f185"}.ci-folder-minus:before{content:"\f186"}.ci-folder-plus:before{content:"\f187"}.ci-folder:before{content:"\f188"}.ci-food:before{content:"\f189"}.ci-foursquare:before{content:"\f18a"}.ci-frown:before{content:"\f18b"}.ci-game:before{content:"\f18c"}.ci-gift:before{content:"\f18d"}.ci-github:before{content:"\f18e"}.ci-globe:before{content:"\f18f"}.ci-gluten-free:before{content:"\f190"}.ci-google-drive:before{content:"\f191"}.ci-google-play:before{content:"\f192"}.ci-google:before{content:"\f193"}.ci-grid-2:before{content:"\f194"}.ci-grid:before{content:"\f195"}.ci-hanger:before{content:"\f196"}.ci-hangouts:before{content:"\f197"}.ci-hard-drive-2:before{content:"\f198"}.ci-hard-drive:before{content:"\f199"}.ci-hash:before{content:"\f19a"}.ci-headphones-2:before{content:"\f19b"}.ci-headphones:before{content:"\f19c"}.ci-heart-filled:before{content:"\f19d"}.ci-heart:before{content:"\f19e"}.ci-help-circle:before{content:"\f19f"}.ci-home:before{content:"\f1a0"}.ci-id-card:before{content:"\f1a1"}.ci-image:before{content:"\f1a2"}.ci-inbox:before{content:"\f1a3"}.ci-info:before{content:"\f1a4"}.ci-instagram:before{content:"\f1a5"}.ci-italic:before{content:"\f1a6"}.ci-key:before{content:"\f1a7"}.ci-kickstarter:before{content:"\f1a8"}.ci-layers-2:before{content:"\f1a9"}.ci-layers:before{content:"\f1aa"}.ci-layout:before{content:"\f1ab"}.ci-leaf:before{content:"\f1ac"}.ci-life-buoy:before{content:"\f1ad"}.ci-link-2:before{content:"\f1ae"}.ci-link:before{content:"\f1af"}.ci-linkedin:before{content:"\f1b0"}.ci-list:before{content:"\f1b1"}.ci-loader:before{content:"\f1b2"}.ci-lock:before{content:"\f1b3"}.ci-log-in:before{content:"\f1b4"}.ci-log-out:before{content:"\f1b5"}.ci-mail:before{content:"\f1b6"}.ci-map-pin:before{content:"\f1b7"}.ci-map:before{content:"\f1b8"}.ci-maximize-2:before{content:"\f1b9"}.ci-maximize:before{content:"\f1ba"}.ci-medium:before{content:"\f1bb"}.ci-meh:before{content:"\f1bc"}.ci-menu:before{content:"\f1bd"}.ci-message-circle:before{content:"\f1be"}.ci-message-square:before{content:"\f1bf"}.ci-messenger:before{content:"\f1c0"}.ci-mic-off:before{content:"\f1c1"}.ci-mic:before{content:"\f1c2"}.ci-minimize-2:before{content:"\f1c3"}.ci-minimize:before{content:"\f1c4"}.ci-minus-circle:before{content:"\f1c5"}.ci-minus-square:before{content:"\f1c6"}.ci-minus:before{content:"\f1c7"}.ci-monitor-2:before{content:"\f1c8"}.ci-monitor:before{content:"\f1c9"}.ci-moon:before{content:"\f1ca"}.ci-more-horizontal:before{content:"\f1cb"}.ci-more-vertical:before{content:"\f1cc"}.ci-mouse-pointer:before{content:"\f1cd"}.ci-move:before{content:"\f1ce"}.ci-music:before{content:"\f1cf"}.ci-myspace:before{content:"\f1d0"}.ci-navigation-2:before{content:"\f1d1"}.ci-navigation:before{content:"\f1d2"}.ci-odnoklassniki:before{content:"\f1d3"}.ci-open-source:before{content:"\f1d4"}.ci-package:before{content:"\f1d5"}.ci-paint:before{content:"\f1d6"}.ci-paperclip:before{content:"\f1d7"}.ci-patreon:before{content:"\f1d8"}.ci-pause-circle:before{content:"\f1d9"}.ci-pause:before{content:"\f1da"}.ci-pen-tool:before{content:"\f1db"}.ci-percent:before{content:"\f1dc"}.ci-phone-call:before{content:"\f1dd"}.ci-phone-forwarded:before{content:"\f1de"}.ci-phone-incoming:before{content:"\f1df"}.ci-phone-missed:before{content:"\f1e0"}.ci-phone-off:before{content:"\f1e1"}.ci-phone-outgoing:before{content:"\f1e2"}.ci-phone:before{content:"\f1e3"}.ci-pie-chart:before{content:"\f1e4"}.ci-pinterest:before{content:"\f1e5"}.ci-play-circle:before{content:"\f1e6"}.ci-play-filled:before{content:"\f1e7"}.ci-play:before{content:"\f1e8"}.ci-plus-circle:before{content:"\f1e9"}.ci-plus-square:before{content:"\f1ea"}.ci-plus:before{content:"\f1eb"}.ci-power:before{content:"\f1ec"}.ci-powerbank:before{content:"\f1ed"}.ci-printer-2:before{content:"\f1ee"}.ci-printer:before{content:"\f1ef"}.ci-product-hunt:before{content:"\f1f0"}.ci-quora:before{content:"\f1f1"}.ci-radio:before{content:"\f1f2"}.ci-reddit:before{content:"\f1f3"}.ci-refresh-ccw:before{content:"\f1f4"}.ci-refresh-cw:before{content:"\f1f5"}.ci-repeat:before{content:"\f1f6"}.ci-rewind:before{content:"\f1f7"}.ci-rocket:before{content:"\f1f8"}.ci-rotate-ccw:before{content:"\f1f9"}.ci-rotate-cw:before{content:"\f1fa"}.ci-rss-2:before{content:"\f1fb"}.ci-rss:before{content:"\f1fc"}.ci-ruler:before{content:"\f1fd"}.ci-save:before{content:"\f1fe"}.ci-scan:before{content:"\f1ff"}.ci-schedule:before{content:"\f200"}.ci-scissors:before{content:"\f201"}.ci-search:before{content:"\f202"}.ci-send:before{content:"\f203"}.ci-server:before{content:"\f204"}.ci-settings:before{content:"\f205"}.ci-share-2:before{content:"\f206"}.ci-share:before{content:"\f207"}.ci-shield-off:before{content:"\f208"}.ci-shield:before{content:"\f209"}.ci-shopping-bag:before{content:"\f20a"}.ci-shopping-cart:before{content:"\f20b"}.ci-shuffle:before{content:"\f20c"}.ci-sidebar:before{content:"\f20d"}.ci-skip-back:before{content:"\f20e"}.ci-skip-forward:before{content:"\f20f"}.ci-skype:before{content:"\f210"}.ci-slack:before{content:"\f211"}.ci-sliders:before{content:"\f212"}.ci-smartphone-2:before{content:"\f213"}.ci-smartphone:before{content:"\f214"}.ci-smile:before{content:"\f215"}.ci-snapchat:before{content:"\f216"}.ci-sort:before{content:"\f217"}.ci-soundcloud:before{content:"\f218"}.ci-speaker-2:before{content:"\f219"}.ci-speaker:before{content:"\f21a"}.ci-spotify:before{content:"\f21b"}.ci-stack-overflow:before{content:"\f21c"}.ci-star-filled:before{content:"\f21d"}.ci-star-half:before{content:"\f21e"}.ci-star:before{content:"\f21f"}.ci-steam:before{content:"\f220"}.ci-stop-circle:before{content:"\f221"}.ci-stumbleupon:before{content:"\f222"}.ci-sun:before{content:"\f223"}.ci-sunrise:before{content:"\f224"}.ci-sunset:before{content:"\f225"}.ci-table:before{content:"\f226"}.ci-tablet:before{content:"\f227"}.ci-tag:before{content:"\f228"}.ci-target:before{content:"\f229"}.ci-telegram:before{content:"\f22a"}.ci-terminal:before{content:"\f22b"}.ci-thermometer:before{content:"\f22c"}.ci-thumbs-down:before{content:"\f22d"}.ci-thumbs-up:before{content:"\f22e"}.ci-ticket:before{content:"\f22f"}.ci-tiktok:before{content:"\f230"}.ci-tinder:before{content:"\f231"}.ci-tool:before{content:"\f232"}.ci-trash-empty:before{content:"\f233"}.ci-trash:before{content:"\f234"}.ci-trello:before{content:"\f235"}.ci-trending-down:before{content:"\f236"}.ci-trending-up:before{content:"\f237"}.ci-triangle:before{content:"\f238"}.ci-truck:before{content:"\f239"}.ci-tumblr:before{content:"\f23a"}.ci-tv:before{content:"\f23b"}.ci-twitch:before{content:"\f23c"}.ci-type:before{content:"\f23d"}.ci-umbrella:before{content:"\f23e"}.ci-unlock:before{content:"\f23f"}.ci-upload-cloud:before{content:"\f240"}.ci-upload:before{content:"\f241"}.ci-user-check:before{content:"\f242"}.ci-user-plus:before{content:"\f243"}.ci-user-x:before{content:"\f244"}.ci-user:before{content:"\f245"}.ci-viber:before{content:"\f246"}.ci-video-off:before{content:"\f247"}.ci-video:before{content:"\f248"}.ci-vimeo:before{content:"\f249"}.ci-vk:before{content:"\f24a"}.ci-voicemail:before{content:"\f24b"}.ci-volume-1:before{content:"\f24c"}.ci-volume-2:before{content:"\f24d"}.ci-volume-x:before{content:"\f24e"}.ci-volume:before{content:"\f24f"}.ci-watch-2:before{content:"\f250"}.ci-watch:before{content:"\f251"}.ci-wechat:before{content:"\f252"}.ci-whatsapp:before{content:"\f253"}.ci-wifi-off:before{content:"\f254"}.ci-wifi:before{content:"\f255"}.ci-wind:before{content:"\f256"}.ci-x:before{content:"\f257"}.ci-xing:before{content:"\f258"}.ci-yelp:before{content:"\f259"}.ci-youtube:before{content:"\f25a"}.ci-zap-off:before{content:"\f25b"}.ci-zap:before{content:"\f25c"}.ci-zoom-in:before{content:"\f25d"}.ci-zoom-out:before{content:"\f25e"}
\ No newline at end of file
diff --git a/resources/js/components/product-highlights.js b/resources/js/components/product-highlights.js
new file mode 100644
index 0000000..e69de29
diff --git a/resources/js/theme.js b/resources/js/theme.js
index 3f73dfa..ba7a96b 100644
--- a/resources/js/theme.js
+++ b/resources/js/theme.js
@@ -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'
\ No newline at end of file
diff --git a/resources/views/components/home/brand-home-fashion-v1.blade.php b/resources/views/components/home/brand-home-fashion-v1.blade.php
index 2344018..ee921c6 100644
--- a/resources/views/components/home/brand-home-fashion-v1.blade.php
+++ b/resources/views/components/home/brand-home-fashion-v1.blade.php
@@ -1,6 +1,6 @@
-
-
-
-
- @foreach($brands as $brand)
-
-
-
-
- @endforeach
-
-
-
-
-
+
+
+
+
+ @for ($i = 1; $i <= 6; $i++)
+
+ @endfor
-
\ No newline at end of file
+
+
+
+
+
diff --git a/resources/views/components/home/home-popular-products.blade.php b/resources/views/components/home/home-popular-products.blade.php
new file mode 100644
index 0000000..94e4199
--- /dev/null
+++ b/resources/views/components/home/home-popular-products.blade.php
@@ -0,0 +1,248 @@
+
+
+
+
+
+
+
+
Popular products
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ @for ($i = 1; $i <= 6; $i++)
+
+ @endfor
+
+
+
+
+
diff --git a/resources/views/components/home/home-slider.blade.php b/resources/views/components/home/home-slider.blade.php
new file mode 100644
index 0000000..5420346
--- /dev/null
+++ b/resources/views/components/home/home-slider.blade.php
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
The new warm collection
+
New fall
season 2024
+
+ Shop now
+
+
+
+
+
+
+
Ready for the party?
+
Choose outfits for parties
+
+ Shop now
+
+
+
+
+
+
+
Shades of gray for your look
+
-50% on gray Collection
+
+ Shop now
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/resources/views/components/home/new-arrivals.blade.php b/resources/views/components/home/new-arrivals.blade.php
index 256ef6b..2f23a5c 100644
--- a/resources/views/components/home/new-arrivals.blade.php
+++ b/resources/views/components/home/new-arrivals.blade.php
@@ -76,7 +76,7 @@
{{ $product->name }}
- {{ number_format($product->price, 0, ',', '.') }}
+ Rp {{ number_format($product->display_price, 0, ',', '.') }}
@endforeach
diff --git a/resources/views/components/home/product-highlight.blade.php b/resources/views/components/home/product-highlight.blade.php
index 7f8f31c..04a0685 100644
--- a/resources/views/components/home/product-highlight.blade.php
+++ b/resources/views/components/home/product-highlight.blade.php
@@ -1,35 +1,204 @@
-
- {{ __('weeks_highlights.this_weeks_highlights') }}
+
+
+
+ {{ __('weeks_highlights.this_weeks_highlights') }}
+
+
+
+
+
+
+
+
+
+
+
-
-
- @foreach ($products as $key => $product)
-
-
-
- @endforeach
-
+ @for ($i = 1; $i <= 8; $i++)
+
+ @endfor
-
+
+
+
+
+
+
+
diff --git a/resources/views/home/fashion-v1.blade.php b/resources/views/home/fashion-v1.blade.php
index f1a5e96..c0c307c 100644
--- a/resources/views/home/fashion-v1.blade.php
+++ b/resources/views/home/fashion-v1.blade.php
@@ -8,267 +8,11 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
The new warm collection
-
New fall
season 2024
-
- Shop now
-
-
-
-
-
-
-
Ready for the party?
-
Choose outfits for parties
-
- Shop now
-
-
-
-
-
-
-
Shades of gray for your look
-
-50% on gray Collection
-
- Shop now
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
Popular products
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

-
-
-
-

-
-
-
-

-
-
-
-
-
-
-
-
-
-

-
-
-
-

-
-
-
-

-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

-
-
-
-
-
-

-
-
-
-
-
-
+
diff --git a/routes/web.php b/routes/web.php
index 1234d8a..f9a6a76 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -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');
\ No newline at end of file
+Route::get('/search', [SearchController::class, 'search'])->name('search.ajax');
+
+// Component loading routes
+Route::get('/components/{component}', [ComponentController::class, 'load'])->name('component.load');
\ No newline at end of file