Katalog proizvoda
Pregledajte našu pažljivo odabranu ponudu prirodnih kapsula i suplemenata dizajniranih za poboljšanje muške snage, vitalnosti i opšteg blagostanja. Svaki proizvod u našem katalogu je formuliran s najkvalitetnijim sastojcima kako bi vam pružio najbolje rezultate.
Pronađite savršen proizvod koji odgovara vašim potrebama i započnite put ka boljoj energiji i performansama već danas!
Svi proizvodi
this.filterAndSortProducts());
this.$watch('selectedCategories', () => this.filterAndSortProducts());
this.$watch('selectedBrands', () => this.filterAndSortProducts());
this.$watch('selectedPriceRange', () => this.filterAndSortProducts());
},
filterAndSortProducts() {
let tempProducts = this.products;
// Apply search term
if (this.searchTerm) {
tempProducts = tempProducts.filter(product =>
product.name.toLowerCase().includes(this.searchTerm.toLowerCase()) ||
product.description.toLowerCase().includes(this.searchTerm.toLowerCase())
);
}
// Apply category filter
if (this.selectedCategories.length > 0) {
tempProducts = tempProducts.filter(product =>
this.selectedCategories.includes(product.category)
);
}
// Apply brand filter
if (this.selectedBrands.length > 0) {
tempProducts = tempProducts.filter(product =>
this.selectedBrands.includes(product.brand)
);
}
// Apply price range filter
if (this.selectedPriceRange) {
tempProducts = tempProducts.filter(product => {
const min = this.selectedPriceRange.min;
const max = this.selectedPriceRange.max;
return product.price >= min && (max === null || product.price <= max);
});
}
// Apply sorting
switch (this.sortOrder) {
case 'latest':
tempProducts.sort((a, b) => b.id - a.id); // Assuming higher ID means newer
break;
case 'price-asc':
tempProducts.sort((a, b) => a.price - b.price);
break;
case 'price-desc':
tempProducts.sort((a, b) => b.price - a.price);
break;
case 'name-asc':
tempProducts.sort((a, b) => a.name.localeCompare(b.name));
break;
case 'name-desc':
tempProducts.sort((a, b) => b.name.localeCompare(a.name));
break;
}
this.filteredProducts = tempProducts;
this.currentPage = 1; // Reset to first page after filtering/sorting
this.paginateProducts();
},
paginateProducts() {
const start = (this.currentPage - 1) * this.productsPerPage;
const end = start + this.productsPerPage;
this.paginatedProducts = this.filteredProducts.slice(start, end);
},
changePage(page) {
if (page >= 1 && page <= this.totalPages) {
this.currentPage = page;
this.paginateProducts();
}
},
get totalPages() {
return Math.ceil(this.filteredProducts.length / this.productsPerPage);
},
sortProducts() {
this.filterAndSortProducts();
}
}" @filter-changed="filterAndSortProducts()">
Nema proizvoda koji odgovaraju vašim kriterijumima.