Всем привет. Надеюсь на Вашу помощь. Задача заключается в следующем, есть тип материала с полем Filefield, требуется для различных материалов этого типа разный доступ к полю, т.е. разрешить скачивание анонимусам/не разрешать. Вроде решилось бы все просто модулем Content Permissions, но тогда получается, что либо анонимусы могут скачивать, либо нет.
Комментарии
Добавить чекбокс в тип материала, если отмечен, не давать скачивать, если пустой, давай.
Делается на уровне шаблона типа материала :
<?php if(чекбокс не отмечен) : ?>
показываем поле
<?php endif;?>
А если ссылку дать прямую на скачивание... все равно же скачает...
Stan.Ezersky на уровне шаблона типа материала, это где?
Т.е. я правильно понял мы добавляем поле cck checkbox и настройках этого поля делаем проверку.
node-MyNodeType.tpl.php
А если у меня вывод через views?
Так выбирайте тип отображения материал, а не поля и темизируйте шаблон типа материала
Вы предлагаете отказаться от вывода через views, и написать весь вывод в node-MyNodeType.tpl.php?
Ваше право, ту же самую проверку и во вьюз можно сделать
Если не сложно, можете объяснить как? Я так понимаю создать views-view-table--my-view.tpl.php и в нем уже сделать проверку, но как я получу значение checkbox'a?
Не сталкивались?
Поможет google.com:// Drupal Views theming
к сожалению не сталкивался.
Спасибо Вам, постараюсь дальше сам разобраться.
Не пойму как проверить checkbox(тип integer, значения по умолчанию 0|off,1|on) на значение вкл.,выкл.
<?php
global $user;
if (array_key_exists(1, $user->roles) && ($row['field_permsfile_value']->content==1)){
print t('Пожалуйста зарегистрируйтесь');
}
else{
print $row['field_vt_book_fid'];
}
?>
Так что-то не получается.
все оказалось гораздо проще, во views формат поля чекбокс ставим unformatted и условие
<?php
if (array_key_exists(1, $user->roles) && ($row['field_permsfile_value']))
?>