У меня есть настраиваемое поле «country_id_c» как в «User», так и в «CustomModule», мне нужно ограничить пользователя, чтобы он мог видеть только строки из своего региона (фильтруя его по country_id_c). Есть две формы поиска:
когда вы видите результат поиска CustomModule из меню
когда вы добавляете CustomModule в качестве отношения к другому модулю с помощью средства выбора (всплывающее окно).
Я нашел, как отфильтровать результат в 1 случае с жестко запрограммированным значением:
файл: custom/modules/CustomModule/metadata/SearchFields.php
$searchFields['CustomModule'] = array (
...
'country_id_c' =>
array (
'query_type' => 'format',
'operator' => '=',
'value' => 'Argentina',
'db_field'=>array('country_id_c',)
),
...
чего мне здесь не хватает, так это того, как получить текущий вошедший в систему пользователь country_id_c. И как сделать то же самое для (2) формы поиска.
globals $current_user
, необходимого для доступа к этому объекту,$current_user
не содержит пользовательскую переменную$country_id_c
внутри (вероятно, ее нужно каким-то образом загрузить). Любое предложение? 25.04.2013