[ РЕШЕНО ] CCK замена -нет- в списке

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

Аватар пользователя zniki.ru zniki.ru 27 марта 2012 в 12:41

CCK 2.9
Проблема возникла следующая:

Как можно заменить надпись -нет- в выпадающем списке?

|Choose
0|Choose
none|Choose
array( '' => 'Choose', 1 => 'Yes', 2 => 'no')
не помогли.

РЕШЕНИЕ
Замечание: решение не проверено, Вы используете его на свой страх и риск.

В файле cck\modules\optionwidgets\optionwidgets.module на 410 строке
надо заменить с

<?php
$options 
= array('' => theme('optionwidgets_none'$field)) + $options;
?>

на

<?php      
$options 
= isset( $options[''] ) 
     ? 
$options
     
: array('' => theme('optionwidgets_none'$field)) + $options ;
?>

P.S.
Добавил issue на drupal.org
Если есть предложения лучше, просьба написать, я не очень разбираюсь в drupal.
И на пыхе давно ничего не писал.

Комментарии

Аватар пользователя Айдар Айдар 27 марта 2012 в 13:09

Изменить перевод? Если только везде надо изменить.

"zniki.ru" wrote:
Т.е. если на Планете есть жизнь, тогда при выводе показывалось да.

Интересный у Вас, видимо, сайт.

Аватар пользователя zniki.ru zniki.ru 27 марта 2012 в 13:17

Айдар wrote:
Изменить перевод? Если только везде надо изменить.

Нет вариант с переводом мне не подходит.
Потому что у каждого выпадающего списка, должен быть свой вариант.

Аватар пользователя zniki.ru zniki.ru 27 марта 2012 в 20:29

Не могу никак найти в каком файле осуществляется сама подстановка этих значений.
Помогите найти, я просто уже в шоке.

Я нашел cck\modules\optionwidgets\optionwidgets.module
420: function theme_optionwidgets_none($field)

Как теперь узнать, кто вызывает эту функцию и откуда?

Так эта функция вызывается с 410 строки.

РЕШЕНИЕ
cck\modules\optionwidgets\optionwidgets.module 410 строк заменить

И если её заменить с

<?php
$options 
= array('' => theme('optionwidgets_none'$field)) + $options;
?>

на

<?php      
$options 
= isset( $options[''] ) 
     ? 
$options
     
: array('' => theme('optionwidgets_none'$field)) + $options ;
?>

Тогда можно будет кастомно задавать поле - none -, c помощью
разрешенных значений:
|Выберите пожалуйста.

P.S.
Добавил issue на drupal.org
Если есть предложения лучше, просьба написать, я не очень разбираюсь в drupal.
И на пыхе давно ничего не писал