[Решено]Не могу задействовать свой submit. Помогите, пожалуйста!

Главные вкладки

Аватар пользователя GenaP GenaP 9 сентября 2015 в 12:09

Всем привет! При разработке собственного модуля столкнулся с проблемой. Ситуация такая - При создании нового Content type нужно, чтобы некоторые данные записывались в созданную мной таблицу. Решением было сделать это через hook_form_alter, и в нем обьявить свою функцию сабмита, как дополнение до уже существующей node_type_submit. Вот код, который за все это отвечает:

<?php
function dev_form_alter($form, &$form_state$form_id) {
  if (
$form_id == 'node_type_form') {
    
array_unshift($form['#submit'], 'dev_add_content_type');
  }
}

function 

dev_add_content_type($form, &$form_state) {
  
$insert db_insert('dev_content_types')
      ->
fields(array(
          
'content_type_type' => '1111',
          
'content_type_name' => '2223',
          
'enabled' => 0,
        ))
      ->
execute();
}
?>

Сразу скажу - запрос в бд полностью рабочий, если его вставить прямо в функцию node_type_submit, то он работает, а так складывается впечатление, что система игнорит команды в моей функции, которая, кстати, видна в дебаге

<?phpdebug:

Array
(
    [0] => dev_add_content_type
    [1] => node_type_form_submit
)?>

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

Комментарии

Аватар пользователя .poltergeist .poltergeist 9 сентября 2015 в 16:46

имхо, если надо что-то записывать в БД и задействовано Form API, рационально использовать Entity API, красиво и оперативно, не надо sql реализовывать