I'm new and my English is bad, I apologize.
I use OpenCart 1.4.8
I'd like to add a column "stock_status" in the page product_list and to use the filter on this column.
That's what I did
In the file: admin/controller/catalog/product.php
I added:
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$filter_stock_status_id = $this->request->get['filter_stock_status_id'];
} else {
$filter_stock_status_id = NULL;
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$filter_quantity = $this->request->get['filter_quantity'];
} else {
$filter_quantity = NULL;
}
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
'filter_stock_status_id' => $filter_stock_status_id,
Code: Select all
'filter_quantity' => $filter_quantity,
Code: Select all
'stock_status_id' => $result['stock_status_id'],
Code: Select all
'quantity' => $result['quantity'],
Code: Select all
$this->load->model('localisation/stock_status');
$this->data['stock_statuses'] = $this->model_localisation_stock_status->getStockStatuses();
if (isset($this->request->post['stock_status_id'])) {
$this->data['stock_status_id'] = $this->request->post['stock_status_name'];
} else if (isset($product_info)) {
$this->data['stock_status_id'] = $product_info['stock_status_name'];
} else {
$this->data['stock_status_id'] = $this->config->get('config_stock_status_id');
}
Code: Select all
);
}
Code: Select all
$this->data['column_stock_status'] = $this->language->get('column_stock_status');
Code: Select all
$this->data['column_quantity'] = $this->language->get('column_quantity');
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
$this->data['sort_stock_status'] = HTTPS_SERVER . 'index.php?route=catalog/product&token=' . $this->session->data['token'] . '&sort=p.stock_status_id' . $url;
Code: Select all
$this->data['sort_quantity'] = HTTPS_SERVER . 'index.php?route=catalog/product&token=' . $this->session->data['token'] . '&sort=p.quantity' . $url;
Code: Select all
if (isset($this->request->get['filter_stock_status_id'])) {
$url .= '&filter_stock_status_id=' . $this->request->get['filter_stock_status_id'];
}
Code: Select all
if (isset($this->request->get['filter_quantity'])) {
$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];
}
Code: Select all
$this->data['filter_stock_status_id'] = $filter_stock_status_id;
Code: Select all
$this->data['filter_quantity'] = $filter_quantity;
I added:
Code: Select all
<a href="<?php echo $sort_price; ?>"><?php echo $column_price; ?></a>
<?php } ?></td>
<td class="right"><?php if ($sort == 'p.stock_status') { ?>
<a href="<?php echo $stock_status['name']; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_stock_status; ?></a>
<?php } else { ?>
<a href="<?php echo $stock_status['name']; ?>"><?php echo $column_stock_status; ?></a>
Code: Select all
<a href="<?php echo $sort_quantity; ?>"><?php echo $column_quantity; ?></a>
Code: Select all
<td align="right"><select name="filter_stock_status_id">
<option value="*"></option>
<?php foreach ($stock_statuses as $stock_status) { ?>
<?php if ($stock_status['stock_status_id'] == $filter_stock_status_id) { ?>
<option value="<?php echo $stock_status['stock_status_id']; ?>" selected="selected"><?php echo $stock_status['name']; ?></option>
<?php } else { ?>
<option value="<?php echo $stock_status['stock_status_id']; ?>"><?php echo $stock_status['name']; ?></option>
<?php } ?>
<?php } ?>
</select></td>
Code: Select all
<td align="right"><input type="text" name="filter_quantity" value="<?php echo $filter_quantity; ?>" style="text-align: right;" /></td>
Code: Select all
<td class="right"><?php echo $stock_status['name']; ?></td>
Code: Select all
<td class="right"><?php if ($product['quantity'] <= 0) { ?>
<span style="color: #FF0000;"><?php echo $product['quantity']; ?></span>
<?php } elseif ($product['quantity'] <= 5) { ?>
<span style="color: #FFA500;"><?php echo $product['quantity']; ?></span>
<?php } else { ?>
<span style="color: #008000;"><?php echo $product['quantity']; ?></span>
<?php } ?></td>
Code: Select all
var filter_stock_status = $('select[name=\'filter_stock_status\']').attr('value');
if (filter_stock_status != '*') {
url += '&filter_stock_status=' + encodeURIComponent(filter_stock_status);
}
Code: Select all
var filter_quantity = $('input[name=\'filter_quantity\']').attr('value');
if (filter_quantity) {
url += '&filter_quantity=' + encodeURIComponent(filter_quantity);
}
1 - the respective stock_status not displayed for products
2 - This error appears when I want to sort by (Asc, Desc) the stock_status:
Thank you to those who can tell me what to do.Undefined variable: stock_status in /public_html/test/admin/view/template/catalog/product_list.tpl on line 40