|
Server : Apache/2.4.18 (Ubuntu) System : Linux canvaswebdesign 3.13.0-71-generic #114-Ubuntu SMP Tue Dec 1 02:34:22 UTC 2015 x86_64 User : oppastar ( 1041) PHP Version : 7.0.33-0ubuntu0.16.04.15 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, Directory : /var/www/laciasmara.com/public_html/shop/application/views/ |
Upload File : |
<style>
.certification-carousel.owl-carousel {
display: none;
}
@media (max-width: 768px) {
.certification-section {
margin: 0;
}
.certification-grid {
display: none;
}
.certification-carousel.owl-carousel {
display: block;
}
}
/* Container styling */
.product-variants {
margin-top: 16px;
margin-bottom: 16px;
}
.variant-label {
font-size: 14px;
font-weight: 500;
margin-bottom: 8px;
color: #333;
}
.no-variants {
font-size: 14px;
color: #999;
font-style: italic;
margin: 10px 0;
}
</style>
<script>
document.addEventListener('DOMContentLoaded', function() {
const bgClasses = [
'bg-gradient-1',
'bg-gradient-2',
'bg-gradient-3',
'bg-gradient-4',
'bg-gradient-5',
'bg-gradient-6',
'bg-gradient-7',
'bg-gradient-8'
];
const testimonialCards = document.querySelectorAll('.testimonial-card');
testimonialCards.forEach(card => {
const randomBgClass = bgClasses[Math.floor(Math.random() * bgClasses.length)];
card.classList.add(randomBgClass);
});
});
function toggleWishlist(button) {
const form = button.closest('.product-card').querySelector('.add-to-cart-form');
const productId = form.querySelector('input[name="product_id"]').value;
const productDetailId = form.querySelector('input[name="product_detail_id"]').value;
const productVariant = form.querySelector('input[name="product_variant"]').value;
console.log(productId);
const outlineHeart = button.querySelector('.outline-heart');
const filledHeart = button.querySelector('.filled-heart');
$.ajax({
url: '<?= base_url("wishlist/toggle") ?>',
type: 'POST',
dataType: 'json',
data: {
'<?= $this->security->get_csrf_token_name(); ?>': '<?= $this->security->get_csrf_hash(); ?>',
product_id: productId,
product_detail_id: productDetailId,
product_variant: productVariant
},
success: function(response) {
if (response.status === 'error') {
if (response.redirect) {
window.location.href = response.redirect;
} else {
// Tampilkan pesan error
alert(response.message);
}
} else {
if (response.in_wishlist) {
button.classList.add('active');
outlineHeart.style.opacity = '0';
filledHeart.style.opacity = '1';
} else {
button.classList.remove('active');
outlineHeart.style.opacity = '1';
filledHeart.style.opacity = '0';
}
alert(response.message);
}
},
error: function() {
alert('Terjadi kesalahan. Silakan coba lagi.');
}
});
}
function scrollToLeft() {
const grid = document.querySelector('.testimonial-grid');
grid.scrollBy({
left: -300,
behavior: 'smooth'
}); // Scroll ke kiri
}
// Scroll right
function scrollToRight() {
const grid = document.querySelector('.testimonial-grid');
grid.scrollBy({
left: 300,
behavior: 'smooth'
});
}
// Brands Carousel
$(document).ready(function() {
$('.brands-carousel').owlCarousel({
loop: true,
margin: 0,
stagePadding: 0,
nav: false,
dots: false,
autoplay: true,
autoplayTimeout: 5000,
autoplaySpeed: 1000,
autoplayHoverPause: true,
smartSpeed: 450,
items: 8,
responsive: {
0: {
items: 2
},
576: {
items: 3
},
768: {
items: 3
},
992: {
items: 4
},
1200: {
items: 6
}
}
});
});
$(document).ready(function() {
$(".certification-carousel").owlCarousel({
lazyLoad: true,
loop: true,
margin: 10,
nav: false,
dots: false,
autoplay: true,
autoplayTimeout: 5000,
autoplaySpeed: 1000,
autoplayHoverPause: true,
responsive: {
0: {
items: 3
},
600: {
items: 4
},
},
});
});
// Slider Banner
$(document).ready(function() {
$('.owl-carousel').owlCarousel({
lazyLoad: true,
items: 1,
loop: true,
margin: 0,
autoplay: true,
autoplayTimeout: 5000,
autoplaySpeed: 1000,
autoplayHoverPause: true,
nav: true,
dots: true,
navText: [
'<i class="fa fa-chevron-left"></i>',
'<i class="fa fa-chevron-right"></i>'
],
smartSpeed: 450,
responsive: {
0: {
items: 1
}
}
});
const testimonialGrid = document.querySelector('.testimonial-grid');
const scrollProgress = document.querySelector('.scroll-progress');
testimonialGrid.addEventListener('scroll', () => {
const scrollWidth = testimonialGrid.scrollWidth - testimonialGrid.clientWidth;
const scrollLeft = testimonialGrid.scrollLeft;
const progress = (scrollLeft / scrollWidth) * 100;
scrollProgress.style.width = `${progress}%`;
});
});
</script>
<!-- Carousel -->
<div class="owl-carousel owl-theme">
<?php if (!empty($carousels)): ?>
<?php foreach ($carousels as $item): ?>
<div class="item carousel-item-container">
<div class="carousel-cta">
<h2><?= $item->cta_text; ?></h2>
<a href="<?= $item->cta_button_link; ?>" class="carousel-cta-button"><?= $item->cta_button_text; ?></a>
</div>
<img class="carousel-image" src="<?= $item->image_url; ?>">
</div>
<?php endforeach; ?>
<?php endif; ?>
</div>
<!-- Category -->
<div class="category-section">
<h2 class="category-header"><?= ucfirst(lang('header_category')); ?></h2>
<div class="category-grid">
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_vibrator.webp');"></div>
<div class="category-text">
<h3>Vibrator</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_anal.webp');"></div>
<div class="category-text">
<h3>Anal</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_wellness.webp');"></div>
<div class="category-text">
<h3>Kesehatan</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_male_toys.webp');"></div>
<div class="category-text">
<h3>Mainan Laki</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_dildo.webp');"></div>
<div class="category-text">
<h3>Dildo</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_kegel.webp');"></div>
<div class="category-text">
<h3>Kegel</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_bondage.webp');"></div>
<div class="category-text">
<h3>Bondage</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_condom_n_essential.webp');"></div>
<div class="category-text">
<h3>Condom & Essential</h3>
</div>
</div>
<div class="category-item">
<div class="category-image" style="background-image: url('https://storage.googleapis.com/laciasmara-photos/laciaasmara_assets/laciasmara_category/category_merch.webp');"></div>
<div class="category-text">
<h3>Merchandise</h3>
</div>
</div>
</div>
</div>
<div class="bestseller-section">
<h2 class="bestseller-header"><?= ucfirst(lang('header_bestseller')); ?></h2>
<div class="product-grid">
<?php
$counter = 0;
foreach ($top_seller_products as $product):
if ($counter >= 7) break;
?>
<div class="product-card">
<div class="product-image-container">
<img src="<?= base_url('uploads/product/' . $product['image']) ?>" alt="<?= $product['title'] ?>" class="product-image">
</div>
<div class="product-info">
<h3 class="product-title"><?= htmlspecialchars($product['title'], ENT_QUOTES, 'UTF-8') ?></h3>
<div class="product-price">
<span class="current-price">
IDR <?= number_format($product['current_price'], 0, ',', '.') ?>
</span>
<?php if (!empty($product['original_price'])): ?>
<span class="original-price">
IDR <?= number_format($product['original_price'], 0, ',', '.') ?>
</span>
<?php endif; ?>
</div>
<!-- <?php if (!empty($product['variants'])): ?>
<div class="product-variants">
<label for="variants-<?= $product['id'] ?>" class="variant-label"><?= $product['variants'][0] ?></label>
</div>
<?php else: ?>
<p class="no-variants">Tidak ada varian tersedia</p>
<?php endif; ?> -->
<div class="rating-section">
<i class="fas fa-star"></i>
<span class="review-text"><?= $product['average_rating'] ?? '0'; ?> | <?= $product['total_reviews'] ?? '0'; ?> Reviews</span>
</div>
<form class="wishlist-form" data-is-wishlisted="<?= $product['is_wishlisted'] ? 'true' : 'false' ?>">
<input type="hidden" name="<?= $this->security->get_csrf_token_name(); ?>" value="<?= $this->security->get_csrf_hash(); ?>" />
<input type="hidden" name="product_id" value="<?= $product['id'] ?>">
<input type="hidden" name="product_detail_id" value="<?= $product['id_detail'] ?>">
<input type="hidden" name="variant" value="<?= $product['variants'][0] ?? 'No variants' ?>">
<button type="submit" class="wishlist-button">
<div class="heart-container">
<i class="<?= $product['is_wishlisted'] ? 'fas fa-heart filled-heart' : 'far fa-heart outline-heart' ?> active"></i>
</div>
</button>
</form>
</div>
<form class="add-to-cart-form">
<input type="hidden" name="<?= $this->security->get_csrf_token_name(); ?>" value="<?= $this->security->get_csrf_hash(); ?>" />
<input type="hidden" name="product_id" value="<?= $product['id'] ?>">
<input type="hidden" name="product_detail_id" value="<?= $product['id_detail'] ?>">
<input type="hidden" name="product_variant" value="<?= $product['variants'][0] ?? 'No variants' ?>">
<input type="hidden" name="product_name" value="<?= htmlspecialchars($product['title'], ENT_QUOTES, 'UTF-8') ?>">
<input type="hidden" name="product_image" value="<?= base_url('uploads/product/' . $product['image']) ?>">
<input type="hidden" name="qty" value="1">
<input type="hidden" name="price" value="<?= $product['current_price'] ?>">
<button type="submit" class="add-to-cart-button">
<i data-feather="shopping-cart" class="shopping-cart-icon"></i>
Add to Cart
</button>
</form>
</div>
<?php
$counter++;
endforeach;
?>
<div class="product-card see-all-button">
<img src="https://storage.cloud.google.com/laciasmara-photos/laciasmara_test/image.png?authuser=2" alt="Lihat Semua" class="see-all-image">
</div>
</div>
</div>
<!-- Testimonial -->
<div class="testimonial-section">
<h2 class="testimonial-header"><?= ucfirst(lang('header_testimonies')); ?></h2>
<div class="chevron chevron-left" onclick="scrollToLeft()">
<i class="fa fa-chevron-left"></i>
</div>
<div class="testimonial-grid">
<?php foreach ($testimonials as $testimonial): ?>
<div class="testimonial-card">
<div class="customer-image">
<img src="<?= $testimonial['customer_image']; ?>" alt="Customer Image">
</div>
<div class="customer-name">
<div class="customer-name">
<?php
if (!empty($testimonial['customer_name'])) {
$fullName = $testimonial['customer_name'];
$nameParts = explode(" ", $fullName);
$firstName = isset($nameParts[0]) ? $nameParts[0] : '';
$lastName = isset($nameParts[1]) ? $nameParts[1] : '';
$censoredFirstName = $firstName[0] . '**';
$censoredLastName = strlen($lastName) > 0 ? $lastName[0] . '***' : '';
echo $censoredFirstName . ' ' . $censoredLastName;
} else {
echo '-';
}
?>
</div>
</div>
<div class="product-name"><?= $testimonial['product_name']; ?></div>
<div class="star-rating">
<?php for ($i = 0; $i < 5; $i++): ?>
<span class="star"><?= $i < $testimonial['star_rating'] ? '★' : '☆'; ?></span>
<?php endfor; ?>
</div>
<div class="testimonial-text">
"<?= $testimonial['testimonial_text']; ?>"
</div>
</div>
<?php endforeach; ?>
</div>
<div class="chevron chevron-right" onclick="scrollToRight()">
<i class="fa fa-chevron-right"></i>
</div>
<div class="scroll-bar">
<div class="scroll-progress"></div>
</div>
</div>
<!-- Brands -->
<div class="brands-section">
<h2 class="brands-header"><?= ucfirst(lang('header_brands')); ?></h2>
<div class="brands-carousel owl-carousel">
<?php foreach ($brands as $brand): ?>
<div class="brand-item">
<img src="<?php echo base_url('uploads/brand/' . $brand->logo); ?>" alt="<?php echo $brand->brand; ?>" class="brand-image">
</div>
<?php endforeach; ?>
</div>
</div>
<!-- Benefit -->
<div class="benefit-section">
<div class="benefit-grid">
<div class="benefit-item">
<div class="benefit-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_benefit/quality.png" alt="Produk Original">
</div>
<h3 class="benefit-title"><?= ucfirst(lang('benefit_original')); ?></h3>
</div>
<div class="benefit-item">
<div class="benefit-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_benefit/discreet.png" alt="Discreet">
</div>
<h3 class="benefit-title"><?= ucfirst(lang('benefit_discreet')); ?></h3>
</div>
<div class="benefit-item">
<div class="benefit-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_benefit/fast-delivery%20(1).png" alt="Fast Delivery">
</div>
<h3 class="benefit-title"><?= ucfirst(lang('benefit_fast_delivery')); ?></h3>
</div>
</div>
</div>
<!-- Sertifikasi -->
<div class="certification-section">
<h2 class="certification-header"><?= ucfirst(lang('header_certifications')); ?></h2>
<div class="certification-grid">
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/CE%20logo.png" alt="CE Certification">
</div>
<h3 class="certification-title">CE</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/UKCA%20logo.png" alt="UKCA Certification">
</div>
<h3 class="certification-title">UKCA</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/iso-9001-logo-png_seeklogo-171579.png" alt="ISO 9001 Certification">
</div>
<h3 class="certification-title">ISO 3533</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/dl.beatsnoop.com-1CYuhvNfsB%20(edited).jpg" alt="RoHS Certification">
</div>
<h3 class="certification-title">RoHS</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/EAC.png" alt="EAC Certification">
</div>
<h3 class="certification-title">EAC</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/fda-certification.png" alt="FDA Certification">
</div>
<h3 class="certification-title">FDA 21</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/fcc-logo-black-2020-large.jpg" alt="FCC Certification">
</div>
<h3 class="certification-title">FCC</h3>
</div>
</div>
<div class="certification-carousel owl-carousel">
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/CE%20logo.png" alt="CE Certification">
</div>
<h3 class="certification-title">CE</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/UKCA%20logo.png" alt="UKCA Certification">
</div>
<h3 class="certification-title">UKCA</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/iso-9001-logo-png_seeklogo-171579.png" alt="ISO 9001 Certification">
</div>
<h3 class="certification-title">ISO 3533</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/dl.beatsnoop.com-1CYuhvNfsB%20(edited).jpg" alt="RoHS Certification">
</div>
<h3 class="certification-title">RoHS</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/EAC.png" alt="EAC Certification">
</div>
<h3 class="certification-title">EAC</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/fda-certification.png" alt="FDA Certification">
</div>
<h3 class="certification-title">FDA 21</h3>
</div>
<div class="certification-item">
<div class="certification-icon">
<img src="https://storage.googleapis.com/laciasmara-photos/laciasmara_test/Laciasmara_certification/fcc-logo-black-2020-large.jpg" alt="FCC Certification">
</div>
<h3 class="certification-title">FCC</h3>
</div>
</div>
</div>
<!-- Company Text -->
<div class="company-section">
<p class="company-text"><?= ucfirst(lang('company_text')); ?></p>
</div>
<!-- Subscription -->
<div class="subscription-section">
<div class="subscription-header">
<h1><?= ucfirst(lang('subscription_header')); ?></h1>
<p><?= ucfirst(lang('subscription_paragraph')); ?></p>
</div>
<div class="subscription-form">
<input type="email" class="subscription-email-input" placeholder="<?= lang('subscription_placeholder'); ?>">
<button class="subscription-button">Subscribe</button>
</div>
</div>
<script>
// Cart
$(document).ready(function() {
const notyf = new Notyf({
duration: 3000,
position: {
x: 'right',
y: 'top'
},
types: [{
type: 'success',
background: '#7A4397',
icon: {
className: 'fas fa-check',
tagName: 'i',
color: 'white'
}
},
{
type: 'error',
background: '#dc3545',
icon: {
className: 'fas fa-times',
tagName: 'i',
color: 'white'
}
}
]
});
loadCartItems();
const cartDropdown = $('#cart-dropdown');
$('.cart-icon').hover(
function() {
loadCartItems();
cartDropdown.stop(true, true).slideDown(200);
},
function() {
cartDropdown.stop(true, true).slideUp(200);
}
);
cartDropdown.hover(
function() {
loadCartItems();
cartDropdown.stop(true, true).slideDown(200);
},
function() {
cartDropdown.stop(true, true).slideUp(200);
}
);
function loadCartItems() {
const baseUrl = "<?= base_url('uploads/product/') ?>";
$.ajax({
url: '<?= base_url("cart/get_cart_items") ?>',
type: 'GET',
dataType: 'json',
success: function(response) {
if (response.status === 'success') {
const items = response.items;
let itemListHtml = '';
let subtotal = 0;
if (items.length === 0) {
itemListHtml = `
<li class="cart-empty">
<p class="cart-empty-header"><?= ucfirst(lang('cart_empty_header')); ?></p>
<p class="cart-empty-text"><?= ucfirst(lang('cart_empty_text')); ?></p>
<a href="<?= base_url() ?>" class="cart-empty-button">
<?= ucfirst(lang('cart_empty_button')); ?>
</a>
</li>
`;
$('.cart-footer').hide();
} else {
items.forEach(item => {
const itemTotal = item.qty * item.price;
subtotal += itemTotal;
itemListHtml += `
<li style="display: flex; align-items: center; gap: 8px;">
<input type="hidden" id="csrfName" value="<?= $this->security->get_csrf_token_name(); ?>">
<input type="hidden" id="csrfHash" value="<?= $this->security->get_csrf_hash(); ?>">
<img src="${baseUrl}${item.image}" alt="${item.name}" style="width: 50px; height: 50px; object-fit: cover; border-radius: 4px;">
<div style="flex-grow: 1;">
<span style="font-weight: 700">${item.name}</span>
<div style="margin-top: 4px;">${item.variant}</div>
<div style="margin-top: 4px;">${item.qty} x IDR ${item.price.toLocaleString()}</div>
</div>
<span class="remove-item" data-id="${item.rowid}" title="Remove">×</span>
</li>`;
});
$('.cart-footer').show();
}
$('#cart-items').html(itemListHtml);
$('#cart-subtotal').text(`IDR ${subtotal.toLocaleString()}`);
$('#cart-title-count').text(response.total_items);
$('.cart-count').text(response.total_items);
$('.remove-item').on('click', function() {
const rowId = $(this).data('id');
removeCartItem(rowId);
});
} else {
$('#cart-items').html('<li>Gagal memuat keranjang.</li>');
}
},
error: function() {
$('#cart-items').html('<li>Gagal memuat keranjang.</li>');
}
});
}
function removeCartItem(rowId) {
const csrfName = '<?= $this->security->get_csrf_token_name(); ?>';
const csrfHash = '<?= $this->security->get_csrf_hash(); ?>';
$.ajax({
url: '<?= base_url("cart/remove_item") ?>',
type: 'POST',
data: {
rowid: rowId,
[csrfName]: csrfHash
},
dataType: 'json',
success: function(response) {
if (response.status === 'success') {
$('#cart-title-count').text(response.total_items);
$('.cart-count').text(response.total_items);
$('#cart-subtotal').text('IDR ' + response.subtotal.toLocaleString());
loadCartItems();
} else {
alert(response.message || 'Gagal menghapus item.');
}
$('input[name="' + csrfName + '"]').val(response.csrf);
},
error: function(xhr) {
console.error('Error:', xhr.responseText);
alert('Terjadi kesalahan.');
}
});
}
$('.add-to-cart-form').on('submit', function(e) {
e.preventDefault();
const $form = $(this);
const productId = $form.find('input[name="product_id"]').val();
const productDetailId = $form.find('input[name="product_detail_id"]').val();
const productVariant = $form.find('input[name="product_variant"]').val();
const productName = $form.find('input[name="product_name"]').val();
const productImage = $form.find('input[name="product_image"]').val();
const qty = $form.find('input[name="qty"]').val();
const price = $form.find('input[name="price"]').val();
const csrfName = '<?= $this->security->get_csrf_token_name(); ?>';
const csrfHash = '<?= $this->security->get_csrf_hash(); ?>';
// Tambahkan CSRF token ke data
const formData = {
product_id: productId,
product_detail_id: productDetailId,
product_variant: productVariant,
product_name: productName,
product_image: productImage,
qty: qty,
price: price,
[csrfName]: csrfHash
};
$.ajax({
url: '<?= base_url("cart/add_to_cart") ?>',
type: 'POST',
dataType: 'json',
data: formData,
success: function(response) {
if (response.status === 'success') {
$('.cart-count').text(response.cart_count);
$('#cart-title-count').text(response.cart_count);
loadCartItems();
notyf.success('Produk berhasil ditambahkan ke keranjang');
} else {
notyf.error(response.message);
}
},
error: function(xhr, status, error) {
notyf.error(error.message);
notyf.error('Terjadi kesalahan saat menambahkan produk, hubungi contact support jika kamu menemukan notifikasi ini.');
}
});
});
});
</script>