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/helpers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/var/www/laciasmara.com/public_html/shop/application/helpers/product_helper.php
<?php
function get_varian_data($varian_id, $product_id)
{

    $ci = &get_instance();

    //get varian name
    $ci->db->select('product_attribute, product_attribute_en')->from('product_attributes')->where('id', $varian_id);
    $varian_name_data = $ci->db->get()->row();

    if ($ci->session->userdata('site_lang') == 'english') {
        $varian_array['varian_name'] =  $varian_name_data->product_attribute_en;
    } else {
        $varian_array['varian_name'] =  $varian_name_data->product_attribute;
    }

    //get initial varian detail
    if ($ci->session->userdata('site_lang') == 'english') {
        $ci->db->select('product_attributes_detail.color_hex, product_attributes_detail.product_attribute_id, attribute_detail_id, product_details_id, attribute_detail_en as attribute_detail, image')
            ->from('product_combination')
            ->join('product_attributes_detail', 'product_attributes_detail.id = product_combination.attribute_detail_id')
            ->where('attribute_id', $varian_id)
            ->where('product_id', $product_id)
            ->group_by('attribute_detail_id')
            ->order_by('product_attributes_detail.priority', 'ASC');
    } else {
        $ci->db->select('product_attributes_detail.color_hex, product_attributes_detail.product_attribute_id, attribute_detail_id, product_details_id, attribute_detail, image')
            ->from('product_combination')
            ->join('product_attributes_detail', 'product_attributes_detail.id = product_combination.attribute_detail_id')
            ->where('attribute_id', $varian_id)
            ->where('product_id', $product_id)
            ->group_by('attribute_detail_id')
            ->order_by('product_attributes_detail.priority', 'ASC');
    }
    $varian_array['varian_details'] = $ci->db->get()->result();

    return $varian_array;
}


function check_current_stock($id_product)
{

    $ci = &get_instance();

    $ci->db->select('id')->from('product_details')->where('product_id', $id_product)->where('stock !=', 0);
    $count_current_stock = $ci->db->get()->num_rows();

    return $count_current_stock;
}

function category_discount($id_product)
{

    $ci = &get_instance();

    //check this product belong to which categories
    $ci->db->select('id_category')->from('category_product')->where('id_product', $id_product);
    $categories =  $ci->db->get()->result_array();
    $product_existing_categories = array();

    foreach ($categories as $key => $category) {
        $product_existing_categories[] = $category['id_category'];
    }

    $level1_category = NULL;
    $level2_category = NULL;
    $level3_category = NULL;

    foreach ($product_existing_categories as $category_id) {

        //check if this category_id has parent
        $ci->db->select('parent')->from('categories')->where('id_categories', $category_id);
        $parent_category_id = $ci->db->get()->row()->parent;

        if ($parent_category_id != NULL) {

            //this category still have parent
            //check if the parent category still have parent
            $ci->db->select('parent')->from('categories')->where('id_categories', $parent_category_id);
            $parent2_category_id = $ci->db->get()->row()->parent;

            if ($parent2_category_id != NULL) {
                //this is level 3 category
                $level3_category =  $category_id;
            } else {
                //this is level 2 category
                $level2_category =  $category_id;
            }
        } else {

            //this category is parent (level 1)
            $level1_category = $category_id;
        }
    }

    if ($level3_category != NULL) {

        //check if this category has category discount
        $ci->db->select('discount_active, percentage_discount')->from('categories')->where('id_categories', $level3_category);
        $category_discount = $ci->db->get()->row();
        if ($category_discount->discount_active == 'yes') {
            $category_discount_percentage = $category_discount->percentage_discount;
        } else {
            $category_discount_percentage = NULL;
        }
    } else {
        //$level3_category ==  NULL
        if ($level2_category != NULL) {
            //check if this category has category discount
            $ci->db->select('discount_active, percentage_discount')->from('categories')->where('id_categories', $level2_category);
            $category_discount = $ci->db->get()->row();
            if ($category_discount->discount_active == 'yes') {
                $category_discount_percentage = $category_discount->percentage_discount;
            } else {
                $category_discount_percentage = NULL;
            }
        } else {
            //$level2_category ==  NULL
            if ($level1_category != NULL) {
                //check if this category has category discount
                $ci->db->select('discount_active, percentage_discount')->from('categories')->where('id_categories', $level1_category);
                $category_discount = $ci->db->get()->row();
                if ($category_discount->discount_active == 'yes') {
                    $category_discount_percentage = $category_discount->percentage_discount;
                } else {
                    $category_discount_percentage = NULL;
                }
            }
        }
    }

    return $category_discount_percentage;
}

function get_product_price($id_product)
{

    $ci = &get_instance();

    $product_price_array = array();

    if (isset($ci->session->userdata('customer')['customer_id'])) {

        //get product detail id (for 1st detail only)
        $ci->db->select('id')->from('product_details')->where('product_id', $id_product)->limit(1);
        $id_product_detail = $ci->db->get()->row()->id;

        //check if customer is a reseller. if reseller use reseller price
        $ci->db->select('reseller_id')->from('customers')->where('id_customers', $ci->session->userdata('customer')['customer_id']);
        $reseller_id = $ci->db->get()->row()->reseller_id;

        //check if reseller price already available (already input by admin)
        $ci->db->select('price')->from('resellers_price')->where('reseller_id', $reseller_id)->where('product_detail_id', $id_product_detail);
        $count_reseller = $ci->db->get()->num_rows();

        if ($reseller_id != NULL && $count_reseller > 0) {

            //customer is reseller. use reseller price
            $ci->db->select('price')->from('resellers_price')->where('reseller_id', $reseller_id)->where('product_detail_id', $id_product_detail);
            $product_price = $ci->db->get()->row();

            $product_price_array['reseller_id'] = $reseller_id;
            $product_price_array['count_reseller'] = $count_reseller;
        } else {

            //get product price and discount price (retail prices)
            $ci->db->select('price, discounted_price')->from('product_details')->where('product_id', $id_product)->limit(1);
            $product_price_array['reseller_id'] = NULL;
            $product_price_array['count_reseller'] = 0;
            $product_price = $ci->db->get()->row();
        }

        $product_price_array['product_price'] = $product_price;
    } else {

        //get product price and discount price (retail prices)
        $ci->db->select('price, discounted_price')->from('product_details')->where('product_id', $id_product)->limit(1);
        $product_price = $ci->db->get()->row();
        $product_price_array['product_price'] = $product_price;
        $product_price_array['reseller_id'] = NULL;
        $product_price_array['count_reseller'] = 0;
    }

    return $product_price_array;
}

function get_product_thumbnail($product_id)
{
    $ci = &get_instance();

    if ($product_id == 503) {
        // Ambil gambar dari product_details_id = 1007
        $ci->db->select('priority, image, alt')
            ->from('product_images')
            ->where('product_id', $product_id)
            ->where('product_details_id', 1007)
            ->where('status', '1')
            ->order_by('priority', 'ASC');
        $product_image = $ci->db->get()->row();
    } else {
        // Ambil thumbnail default seperti biasa
        $ci->db->select('priority, image, alt')
            ->from('product_images')
            ->where('product_id', $product_id)
            ->where('status', '1')
            ->order_by('product_details_id', 'ASC')
            ->order_by('priority', 'ASC');
        $product_image = $ci->db->get()->row();
    }

    if (count($product_image) > 0) {
        // Get product image 2
        $ci->db->select('image')->from('product_images')->where('product_id', $product_id)->where('status', '1')->where('priority >', $product_image->priority)->where('status', '1')->order_by('product_details_id', 'ASC')->order_by('priority', 'ASC');
        $product_image2 =  $ci->db->get()->row();
    } else {
        $product_image2 = NULL;
    }

    // Get placeholder image
    $ci->db->select('image_not_available')->from('configuration')->where('id_configuration', 1);
    $placeholder_image =  $ci->db->get()->row()->image_not_available;

    if (count($product_image) == 0) {
        $src1 = base_url() . 'uploads/' . $placeholder_image;
        $alt1 = '';
    } else {
        $src1 = base_url() . 'uploads/product/' . $product_image->image;
        $alt1 = $product_image->alt;
    }

    if (!isset($product_image2) || count($product_image2) == 0) {
        $src2 = base_url() . 'uploads/' . $placeholder_image;
        $alt2 = '';
    } else {
        $src2 = base_url() . 'uploads/product/' . $product_image2->image;
        $alt2 = $product_image2->alt;
    }

    $thumbnails_array = array(
        'image1' => $src1,
        'image2' => $src2,
        'alt1' => $alt1,
        'alt2' => $alt2
    );

    return $thumbnails_array;
}

function get_lowest_price($product_id)
{

    $ci = &get_instance();

    //get lowest normal price
    $ci->db->select('price, id, discounted_price')->from('product_details')->where('product_id', $product_id)->where('price !=', 0)->order_by('price', 'ASC')->limit(1);
    $lowest_price = $ci->db->get()->row();

    return $lowest_price;
}

https://t.me/RX1948 - 2025