Всем привет. Делаю привязку группы атрибутов к категории.
Пока делаю в форме изменения категории.
в форму добавил выпадающий список /admin/view/template/catalog/category_form.tpl
<tr>
<td><?php echo $gr_attr; ?></td>
<td width="150">
<select name="atrg_id">
<option value="0"><?php echo $text_none; ?></option>
<?php foreach ($attrg as $category) { ?>
<?php if ($category['attribute_id'] == $parent_id) { ?>
<option value="<?php echo $category['attribute_id']; ?>" selected="selected"><?php echo $category['name']; ?></option>
<?php } else { ?>
<option value="<?php echo $category['attribute_id']; ?>"><?php echo $category['name']; ?></option>
<?php } ?>
<?php } ?>
</select></td>
<td></td>
</tr>
в файле admin/model/catalog/category.php
public function getAttributeGroup() {
$query = $this->db->query("SELECT * FROM attribute_group c LEFT JOIN attribute_group_description cd ON (c.attribute_group_id = cd.attribute_group_id) ORDER BY c.sort_order, cd.name");
return $query->rows;
}
в файле admin/controller/catalog/category.php
в функции getForm
добавлено
$this->data['attrg'] = $this->getAttrGr();
и добавил функцию:
private function getAttrGr() {
$output = array();
$results = $this->model_catalog_category->getAttributeGroup();
foreach ($results as $result) {
$name = $result['name'];
$selected = isset($this->request->post['selected']) && in_array($result['category_id'], $this->request->post['selected']);
$action = array();
$output[$result['attribute_group_id']] = array(
'attribute_id' => $result['attribute_group_id'],
'name' => $name,
'sort_order' => $result['sort_order'],
'selected' => $selected
);
}
return $output;
}
ну и прописал в скл апдейте данное поле обновлять в базе.Все работает, но как сделать что бы можно было оперировать с селектед?
т.е. по принципу родительской группы.