talgar@drupal.org: Блог

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

Право доступа на загруженный файл

19 октября 2010 в 13:49

Если файл загружен в ноду или в комментарий к ноду, то его могут скачать только те пользователи, которые имеют доступ на простор этого нода.
Как можно расширить (изменить) права доступа к таким файлам? Т.е. пользователь не должен иметь доступ к ноду, а посмотреть выбранный (настроенный) файл может.

Group space presets & CCK

15 октября 2010 в 8:03

Начал изучать Context, PURL, Spaces и другие фишки в Open Atrium
Все выглядит просто супер. Понимаешь что в друпале есть столько неопознанного и крутого.

Так вот. В Spaces есть предустановки для групп "Group space presets". Это позволяет сгруппировать настройки групп и дать этим настройкам название. В результате пользователь просто выбирает из списка это название и группа создается с этими настройками.

Вопрос в следующем. В материале группы есть дополнительные поля CCK. Как в эти предустановки занести значения CCK поле по умолчанию?

Форма добавления материала с минимальным набором полей

4 октября 2010 в 13:23

Какими модулями можно решить следующую задачу:

Надо поднять (например в модальном окне) форму добавления материала определенного типа. При этом для заполнения показать только нужные поля, т.е. не показывать все.
Для примера. Есть тип материала "Клиент". В нем множество полей CCK (различные характеристики). Надо поднять форму добавления, где пользователь должен будет заполнить всего 2-3 CCK поля. Остальные поля он потом может при необходимости отредактировать.

Как нод представить в виде html формы?

17 февраля 2010 в 17:17

Есть ли простое решение показа содержимого ноды в виде html формы?
Например есть тип материала, в него добавлены cck поля (тескт, чекбоксы, числа и т.д.). Задача сводится к отображению этих полей и х значений в форме. Типа того:

права доступа от формата ввода

6 июля 2009 в 19:39

Может кому пригодится.
Права доступа на портале устанавливаю через модуль taxonomy access - на мой взгляд один из лучших подходов в управлении правами. На портале автоматически создавались ноды из писем. При этом на ноды вешались определенные теги, которые устанавливали для пользователей разрешительные права на чтение и запись.
Проблема была в том, что пользователи могли видеть (даже удалять) эти ноды, но не могли их редактировать. Когда через админа смотришь инфу по доступу к определенному ноду с помощью модуля devel, то он показывает что пользователи могут как читать так и изменять нод. заходишь пользователем - изменять нельзя.
Загвоздка была в следующем: текст письма помещался в содержимое нода, а формат ввода содержимого выставлялся в "отфильтрованный html", которым пользователи не имели права пользоваться. И из-за этого пользователи не могли редактировать нод.

Заготовки текстов

19 июня 2009 в 8:30

В разных местах (переопределение вывода ноды через Contemplate, в собственных модулях) необходимо использовать однотипный текст, например номера телефонов или текст "С уважением, администрация" и т.д.
Хотелось бы иметь базу таких заготовок, чтобы ими можно было управлять через админку, а использовать в php коде. Чем можно воспользоваться?

Поставил модуль Custom_token, но не знаю как достать нужный мне токен через php

Плавающая форма ввода комментария [решено]

20 мая 2009 в 9:43

Задача: сделать форму ответа (ввода нового комментария) в отдельном всплывающем окне.

Существует множество jquery-вских плагинов для отображения всплывающих окон (диалогов). Я остановился на фреймворке jQuery UI с виджетом Dialog http://jqueryui.com/demos/dialog

В друпале есть модуль http://drupal.org/project/jquery_ui для подгрузки этого фреймворка. Я отказался от его использования в силу того, что сейчас jQuery UI предлагает новый подход в загрузке фреймворка. Если раньше все виджеты были представлены в отдельных js файлах, то сейчас можно скачать все необходимое в одном оптимизированном файле.

1. Заходим на страницу скачивания http://jqueryui.com/download
Выбираем виджет dialog, а также UI Core, Draggable, Resizable
Справа выбираем нужную нам тему оформления и версию 1.6 (Legacy release, for jQuery 1.2.6)
Скачиваем. Распаковываем.

2. Создаем директорию "ui" в собственной теме.
Копируем в эту директорию файл jquery-ui-1.6.custom.min.js (переименовав в ui.js)
Копируем в эту директорию файл ui.all.css (переименовав в ui.css)
Копируем в эту директорию папку images (которая лежит там же где и ui.all.css)

3. переопределяем функцию в теме

<?php

function phptemplate_comment_wrapper($content$node) {
  
  
$content .= '<p><a href="#" id="comment_dialog_link" class="ui-default-state">Поднять форму ответа</a></p>?>

Создание ноды из письма

19 мая 2009 в 6:39

Может кто-нибудь знает способ или подскажет модуль для решения следующей задачи:

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

Прокрутка комментариев в зафиксированной области

18 мая 2009 в 7:31

Задача: зафиксировать по высоте область для отображения комментариев на странице.

Часто сталкиваешься с таким неудобством, что на странице много комментариев и поле ответа находится в самом низу страницы. Когда отвечаешь на тему приходится "бегать" вверх-вниз чтобы процетировать, ответить и т.д.
Поэтому и решил попробовать зафиксировать область для комментариев.

Самый простой способ - это добавить дополнительный DIV куда поместить все комментарии и сделать его с заданной высотой и полосой прокрутки. Но не знаю где это можно сделать.

В теме доступна функция phptemplate_comment_wrapper($content, $node), но сюда помимо самих комментариев в $content приходит и форма ответа для комментария. А обрамить надо только сами комменты. В файле comment.tpl.php можно переопределить только вывод одного комментария.
Как можно обрамить ДИВом только список комментариев?

В идеале бы хотелось область для отображения комментариев сделать самоподгружаемой - критушь прокрутку и комментарии подгружаются через ajax.

Назначение прав доступа и сохранение ноды

8 мая 2009 в 10:48

Задача: оповестить пользователей через jabber о создании новой ноды.
Написал модуль, который позволяет отправлять xmpp сообщения пользователям. Поставил модуль Rules (http://drupal.org/project/rules) и на событие "After saving new content" добавил выполнение собственного php кода, откуда и отправляю сообщения.
Для управления доступом к нодам использую модуль http://drupal.org/project/taxonomy_access

Столкнулся с такой проблемой:
При выполнении php кода для события (Rules) можно работать с созданной нодой, но права на нее еще не расставлены. Т.е. примерный ход событий такой:
1. Создание ноды
2. Отлавливается событие (Rules) -> обработка события (php)
3. Выставление прав на ноду

Как сделать так, чтобы уже в обработке события расставить права на ноду? Это надо чтобы отправлять оповещение только имеющим доступ к ноде пользователям.

Tabs + Views

6 мая 2009 в 9:26

Делаю первый вид по выводу всех объектов - "шариков", путь example.com/balls
второй вид по выводу красных шариков example.com/balls/red
третий вид по выводу зеленых шариков example.com/balls/green

Хочу сделать чтобы на странице example.com/balls было три закладки (tab): все, красные, зеленые.
Красные и зеленые закладки отображаются, а вот закладка "все" - нет. Как ее надо настроить, чтобы она была по умолчанию показана для страницы example.com/balls ?

заранее спасибо