Наследование свойств категории

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

trainracing M
Аватара
trainracing M
Возраст: 31
Репутация: 13
Сообщения: 121
Зарегистрирован: 07.10.2016
С нами: 7 лет 5 месяцев
Сайт

Сообщение #1 trainracing » 23.05.2017, 15:32

для 1.2.4/2.0

1. Меняем API/Categories.php. Находим там функцию add_category (95) и добавляем ей дополнительный входной параметр, меняем:

Код: Выделить всё

public function add_category($category)


на

Код: Выделить всё

 public function add_category($category, $copy_features = false)


и добавим после 125

Код: Выделить всё

$this->db->query("UPDATE __categories SET position=id WHERE id=?", $id);

следующее

Код: Выделить всё

if ($copy_features && $category['parent_id'] >= 0) {
   $query = $this->db->placehold("INSERT INTO __categories_features SELECT ?, f.feature_id FROM __categories_features f WHERE f.category_id = ?", $id, $category['parent_id']);
   $this->db->query($query);         
}


2. Далее в /backend/core/CategoryAdmin.php и добавляем после 23

Код: Выделить всё

$category->description = $this->request->post('description');

следущее

Код: Выделить всё

$copy_features = $this->request->post('copy_features', 'boolean');


ниже на 38 находим

Код: Выделить всё

$category->id = $this->categories->add_category($category);

и меняем на

Код: Выделить всё

 $category->id = $this->categories->add_category($category, $copy_features);


3. Открываем шаблон category.tpl и псле 106 добавляем

Код: Выделить всё

<div class="form-control">                        
      <input type="checkbox" name="copy_features" id="copy_features" checked value="1">
      <label for="copy_features">Скопировать свойства родителя</label>
      </div>



ВСе

trainracing M
Аватара
trainracing M
Возраст: 31
Репутация: 13
Сообщения: 121
Зарегистрирован: 07.10.2016
С нами: 7 лет 5 месяцев
Сайт

Сообщение #2 trainracing » 25.08.2018, 08:12

на 2.2.2 уже не работает.
Посоветуйте, как адаптировать под версию 2.2.2?

Есть те, кто тоже может сделать вклад в okaycms?

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #3 korshunov » 25.08.2018, 09:44

Пробуйте заменить
$category['parent_id']
на
$category->parent_id


Название раздела: Полезные решения для OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Полезные решения для OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 14 гостей