Additional Product Tabs
1.0.3
2.2.1
Godfrey Livinstone
]]>
]]>
data['text_information'] = $this->language->get('text_information');
]]>
data['text_product_tab'] = $this->language->get('text_product_tab');
]]>
data['information'] = $this->url->link('catalog/information', 'token=' . $this->session->data['token'], 'SSL');
]]>
data['product_tab'] = $this->url->link('catalog/tab', 'token=' . $this->session->data['token'], 'SSL');
]]>
db->query("INSERT INTO " . DB_PREFIX . "product_attribute SET product_id = '" . (int)$product_attribute['product_id'] . "', attribute_id = '" . (int)$product_attribute['attribute_id'] . "', language_id = '" . (int)$language_id . "', text = '" . $this->db->escape($product_attribute['text']) . "'");
]]>
db->query("SELECT * FROM " . DB_PREFIX . "product_tab WHERE language_id = '" . (int)$this->config->get('config_language_id') . "'");
foreach ($query->rows as $product_tab) {
$this->db->query("INSERT INTO " . DB_PREFIX . "product_tab SET product_id = '" . (int)$product_tab['product_id'] . "', tab_id = '" . (int)$product_tab['tab_id'] . "', language_id = '" . (int)$language_id . "', text = '" . $this->db->escape($product_tab['text']) . "'");
}
]]>
db->query("SELECT * FROM " . DB_PREFIX . "tab_description WHERE language_id = '" . (int)$this->config->get('config_language_id') . "'");
foreach ($query->rows as $tab) {
$this->db->query("INSERT INTO " . DB_PREFIX . "tab_description SET tab_id = '" . (int)$tab['tab_id'] . "', language_id = '" . (int)$language_id . "', name = '" . $this->db->escape($tab['name']) . "'");
}
]]>
db->query("DELETE FROM " . DB_PREFIX . "product_description WHERE language_id = '" . (int)$language_id . "'");
]]>
db->query("DELETE FROM " . DB_PREFIX . "product_tab WHERE language_id = '" . (int)$language_id . "'");
]]>
db->query("DELETE FROM " . DB_PREFIX . "voucher_theme_description WHERE language_id = '" . (int)$language_id . "'");
]]>
db->query("DELETE FROM " . DB_PREFIX . "tab_description WHERE language_id = '" . (int)$language_id . "'");
]]>
data['tab_attribute'] = $this->language->get('tab_attribute');
]]>
data['tab_product_tab'] = $this->language->get('tab_product_tab');
]]>
data['button_add_option'] = $this->language->get('button_add_option');
]]>
data['button_add_product_tab'] = $this->language->get('button_add_product_tab');
]]>
load->model('catalog/option');
]]>
request->post['product_tab'])) {
$this->data['product_tabs'] = $this->request->post['product_tab'];
} elseif (isset($this->request->get['product_id'])) {
$this->data['product_tabs'] = $this->model_catalog_product->getProductTabs($this->request->get['product_id']);
} else {
$this->data['product_tabs'] = array();
}
]]>
db->query("DELETE FROM " . DB_PREFIX . "product_tab WHERE product_id = '" . (int)$product_id . "' AND tab_id = '" . (int)$product_tab['tab_id'] . "'");
foreach ($product_tab['product_tab_description'] as $language_id => $product_tab_description) {
$this->db->query("INSERT INTO " . DB_PREFIX . "product_tab SET product_id = '" . (int)$product_id . "', tab_id = '" . (int)$product_tab['tab_id'] . "', language_id = '" . (int)$language_id . "', text = '" . $this->db->escape($product_tab_description['text']) . "'");
}
}
}
}
]]>
db->query("DELETE FROM " . DB_PREFIX . "product_option WHERE product_id = '" . (int)$product_id . "'");
]]>
db->query("DELETE FROM " . DB_PREFIX . "product_tab WHERE product_id = '" . (int)$product_id . "'");
if (!empty($data['product_tab'])) {
foreach ($data['product_tab'] as $product_tab) {
if ($product_tab['tab_id']) {
$this->db->query("DELETE FROM " . DB_PREFIX . "product_tab WHERE product_id = '" . (int)$product_id . "' AND tab_id = '" . (int)$product_tab['tab_id'] . "'");
foreach ($product_tab['product_tab_description'] as $language_id => $product_tab_description) {
$this->db->query("INSERT INTO " . DB_PREFIX . "product_tab SET product_id = '" . (int)$product_id . "', tab_id = '" . (int)$product_tab['tab_id'] . "', language_id = '" . (int)$language_id . "', text = '" . $this->db->escape($product_tab_description['text']) . "'");
}
}
}
}
]]>
$this->getProductAttributes($product_id)));
]]>
$this->getProductTabs($product_id)));
]]>
db->query("DELETE FROM " . DB_PREFIX . "product_tab WHERE product_id = '" . (int)$product_id . "'");
]]>
db->query("SELECT t.tab_id, td.name FROM " . DB_PREFIX . "product_tab pt LEFT JOIN " . DB_PREFIX . "tab t ON (pt.tab_id = t.tab_id) LEFT JOIN " . DB_PREFIX . "tab_description td ON (t.tab_id = td.tab_id) WHERE pt.product_id = '" . (int)$product_id . "' AND td.language_id = '" . (int)$this->config->get('config_language_id') . "' GROUP BY pt.tab_id");
foreach ($product_tab_query->rows as $product_tab) {
$product_tab_description_data = array();
$product_tab_description_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_tab WHERE product_id = '" . (int)$product_id . "' AND tab_id = '" . (int)$product_tab['tab_id'] . "'");
foreach ($product_tab_description_query->rows as $product_tab_description) {
$product_tab_description_data[$product_tab_description['language_id']] = array('text' => $product_tab_description['text']);
}
$product_tab_data[] = array(
'tab_id' => $product_tab['tab_id'],
'name' => $product_tab['name'],
'product_tab_description' => $product_tab_description_data
);
}
return $product_tab_data;
}
]]>
db->query("SELECT COUNT(DISTINCT product_id) AS total FROM " . DB_PREFIX . "product_tab WHERE tab_id = '" . (int)$tab_id . "'");
return $query->row['total'];
}
]]>
" method="post" enctype="multipart/form-data" id="form">
]]>
]]>
]]>
]]>
]]>
]]>
$('#product_tab--languages a').tabs();
]]>
]]>
]]>
;
]]>
]]>