Редактировать layout посылки сообщения privatemsg

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

Аватар пользователя iex iex 28 мая 2008 в 14:06

Например:
http://drupal.ru/privatemsg/msgto/6977
Я хочу поудалять все поля и кнопки, оставиви только кнопку отправки и поле для ввода. Это как-нибукдь можно сделать? Перекопал весь модуль privatemsg, но что-то не нашол где поменять.

Комментарии

Аватар пользователя neochief neochief 28 мая 2008 в 16:44

создаем новый модуль bonus
в него пастим одну функцию:

function bonus_form_alter($form_id, &$form) {
  //remove useless combobox from privatmsg sending form
  if ($form['#id'] == 'privatemsg-new')
  {
    $form['quick']='';
    $form['recipient']['#prefix'] = '';
    $form['0']['#type'] = 'hidden';
    $form['1']['#type'] = 'hidden';
  }
}

Для справки читаем http://api.drupal.org/api/file/developer/topics/forms_api_reference.html/5

А вообще, я бы наверное делал тестовое задание на приеме друпаллеров на работу в виде правильного стайлинга модуля privatemsg. Там же проблема не только в форме отправки. Он сам по себе глюк. Вот на этом сайте можете зарегаться, чтобы посмотреть, что можно получить в конечном итоге от privatemsg.

Аватар пользователя iex iex 6 июня 2008 в 16:33

Что подразумевается под "создаем новый модуль"? Вы именно это и имеете ввиду - создание нового модуля? Какие файлы там должны быть? Может лугче как-то отредактировать файлы privatemsg vодуля? Или я чтото не так понимаю

Аватар пользователя neochief neochief 6 июня 2008 в 19:02

редактировать что-то — это самое неправильное решении в концепции друпала. потом при любых апдейтах ваш код падет прахом. дя модуля достаточно 2 файла (info и module). возьмите любой готовый модуль, переменуйте файлы, убейте в нем все содержимое .module, измените содержимое info (там все очевидно) и, наконец, сделайте то, чтобы было описано выше.

на самом деле, это только выглядит трудно, а все очень просто и легко

Аватар пользователя iex iex 11 июня 2008 в 16:59

Что-то не получилось сделать модуль, друпал его не видит и не отображает в списке...
Посмотрите пожалуйста, wtf can we wrong
Почитал топики по созданию модулей, всё равно не показывается он в спиське... Sad

http://narod.ru/disk/864150000/privatemsg_bonus.rar.html

Аватар пользователя neochief neochief 11 июня 2008 в 20:28

во-первых, функция в вашем случае должна называться privatemsg_bonus_form_alter

во-торых, у вас там написано, чтобы он пихался в компанию модулей ядра, луче сделать так:
package = Other

В остальном вроде бы все в проядке