Bugs and Suggestions

Here you can vote for ideas by projects. You can add your ideas to any open project from the project's page.

Спасибо!

Мы очень рады, что Вам нравится данный проект и вы проголосовали за его развитие.

Работа над задачами по проекту отнимает у его разработчика самое ценное — время, так что небольшая компенсация в виде материальной поддержки поднимет интерес к разработке и позволит сделать больше задач для общей пользы :)

Перейти к проекту Нет, спасибо

<<< Back

При переходе системы по паттернам возникает их задвоение

Added by: 2018-10-27 15:51:56 Sas / Status: New / Project: Разработка ядра системы MajorDoMo

Пример 1
Имеем глобальный паттерн

Общий контекст (в нем DebMes//say будет Алиса)
и его дочерний паттерн

Алиса ((в нем DebMes/say будет Алиса Алиса)

Пример 2
Имеем глобальный паттерн

Через: в нем DebMes//say будет: через одну минуту выключи свет на кухне)
и его дочерний паттерн

(час|минута) (в нем DebMes//say будет:через одну минуту выключи свет на кухне через одну минуту выключи свет на кухне)
и его дочерний паттерн

тест (в нем DebMes//say будет: через одну минуту тест выключи свет на кухне через одну минуту тест выключи свет на кухне через одну минуту тест выключи свет на кухне через одну минуту тест выключи свет на кухне)

Становится невозможно пользоваться паттернами особенно типа (.+) потому как надо учитывать насколько оно будет больше с каждым переходом и какой при этом будет matches
Приходится использовать в коде паттернав что то типа
$original=implode(' ',array_unique(explode(' ', $original)));
а после preg_match вытаскивать уже что надо, но это очень костыльно.

Задваивает паттерн вот этот кусок кода

if (context_getcurrent()) {
$history=context_get_history().' '.$history;
}
В строке 735 файла patterns.class.php
Если его закаментить то все отлично работае, но возможно это выстрелит еще где то позже, ну и после каждого апдейта его каментить надоедает :)

+9
 
Discuss (4)