Как сменить шаблон всех выбраных документов, в зависимости от шаблона главной

Уважаемые знатоки, нужна Ваша помощь пытаюсь сменить шаблон у всех подчиненных доков в зависимости от того какой шаблон установлен у главной но что то ничего не происходит, <?php if ($modx->event->name == 'OnBeforeDocFormSave') { $mainPage = $modx->getObject('modResource',1); $mainPageTpl = $mainPage->get('template');

$q = $modx->newQuery('modResource', array('parent' => 6, 'deleted' => false,));    
$product = $modx->getIterator('modResource', $q);
// Меняем шаблон у ресурса
switch ($mainPageTpl){
    case 1:
        foreach ($product as $prod) {
            $prod->set('template', 3);    
            $prod->save();
        }
        break;
    case 11:
        foreach ($product as $prod) {
            $prod->set('template', 12);    
            $prod->save();
        }
}

}

Создавать плагин поленился, но в консоли попробовал — вполне рабочий код. Какая-нибудь нелепость наверное. array('parent' => 6 — parent не тот или mainPageTpl отличный от 1 и 11 — типа того наверно косяк. Вы хотите перебирать все документы у родителя 6 при любом сохранении любого документа, ориентируясь на главную страничку? В чем цель плагина?

Сохранение-то нормально с плагином проходит? А то может у вас там десятки тыщ доков и все обваливается.

Логика всего сайта такая, что у страниц с parent=6 шаблон зависит от шаблона главной, по этому при смене шаблона главной меняем у всех страниц с parent=6 шаблон на соответственный.

А почему нет проверки, идет щас обновление главной или других страниц? Плагин же так на любое сохранение работает. В чем прикол, зачем так менять шаблоны-то? :)

Ну вот так устроено :), шаблон можно менять только у главной

Ёмоё, приношу свои извинения, все ведь работает. не пойму что было. Написал пост, отлучился на пару часов и все заработало, всегда бы так :).

Спасибо всем

Сменил событие на OnDocFormSave, иначе плагин не видит какой новый шаблон установлен. Может пригодится кому…