Доступ к массиву [#parameters] формы комментирования

Прислано: Luchencio

чт, 10/03/2011 - 08:08

В массиве формы комментирования есть следующий элемент (Drupal 6):

[#parameters] => Array
  (
    [0] => comment_form
    [1] => Array
      (
       [storage] =>
       [submitted] =>
       [post] => Array
        (
         )
       )
 
    [2] => Array
      (
       [nid] => 30
      )
 
    [3] => Отправить комментарий
  )

Подскажите плз, как правильно обратится к элементам этого массива.

Пробовал так:
$form['#parameters']['3'] = 'Текст';

Не работает.
И описания в api не нашел.
Что это за зверь?

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано annya в чт, 10/03/2011 - 14:48.

$form['submit']['#value'] = t('Text');


Опубликовано Luchencio в чт, 10/03/2011 - 19:33.

"annya" написал(а):

$form['submit']['#value'] = t('Text');

Почитал.
Не совсем понял, при чем тут локализация?!
Не происходит обращение к элементам массива [#parameters].
Код указанный выше использую в функции тема_id_формы.

П.С.
Для интереса посмотрел на работу $form['submit']['#value'] = t('Text');
Использую только русский, проще тогда сразу явно задать $form['submit']['#value'] = t('Текст');
Один хрен при использовании такой замены слетает обработчик формы.)


Опубликовано annya в чт, 10/03/2011 - 20:55.

Смысл вот в этом? $form['#parameters']['3'] = 'Текст';
Если Вы хотите изменить текст на кнопке необходима то что я написала. В том что Вы написали смысла нет. Смысл был не в локализации(которую Вы используете неправильно так как писать $form['submit']['#value'] = t('Текст'); неверно), а в обращении с элементами формы.

Обработчик формы слетать не может, если Вы используете мой код, так как он обработчик не трогает. Почитайте апишку, раздел связанный с формами.


Опубликовано Luchencio в пт, 11/03/2011 - 21:18.

Меня абсолютно не интересует кнопка. Вы не внимательны.
Код приведен выше (часть листинга).
В листинге я вижу, что [#parameters] - самостоятельный элемент массива формы, который в свою очередь тоже представляет массив. (следующее сообщение натолкнуло меня на мысль: "а не ядро ли это?") - завтра посмотрим!
В данном случае я хочу изменить значение элемента массива [#parameters], а именно [3].
Если Вы не заметили, то значение - "Отправить комментарий".
Это ни что иное, как заголовок формы.
Сейчас я пишу это сообщение в форме с аналогичным заголовком, который и требуется изменить.

Если бы мне нужна была кнопка, то я бы и написал про неё.)

Что касается некорректности моей записи, то тут поспорю.
У меня нет задачи локализации или универсальности в принципе.
Не нашел в описании функции t() каких-либо упоминаний про особенное обращение с элементами. Может не заметил?! Ткните носом.)

Разницы между с t() и без - не заметил. И конечно же это не кнопка влияет на обработчик, а скорее обработчик или что то рядом реагирует на изменение названия кнопки.
Честно говоря, искать что и где нет времени и желания, т.к. задача не про кнопку. Но обработчик не работает - это факт. И с Вашим кодом и с моим.))

Прежде чем задать вопрос или ответить всегда стараю все протестить. Старая привычка.
Спасибо за ответы.


Опубликовано Luchencio в пт, 11/03/2011 - 21:14.

Пока нашел временное решение в виде правки перевода.
Вот это действительно некорректно.
Вопрос актуален.

Как переименовать заголовок формы комментирования - "Отправить комментарий"?


Опубликовано annya в сб, 12/03/2011 - 21:03.

Не нашел в описании функции t() каких-либо упоминаний про особенное обращение с элементами. Может не заметил?! Ткните носом.)
В функцию t, можно помещать исключительно английский текст.

Вы нигде не упоминали что Вам нужно переименовть "Отправить комментарий". Покажите на скриншоте что Вам именно нужно переименовать.


Опубликовано zardoz в вт, 26/07/2011 - 14:59.

Я в box.tpl.php менял $title. Наверное не кошерно, но работает :)
А вот с изменением значения кнопки и слетающим обработчиком очень хотелось бы узнать чего оно так. У меня при попытке изменить значение кнопки сабмита после сабмита перекидывает на страницу /comment/reply/* Отчего не могу понять :(


Новое на сайте