Event настройка и работа с ним.

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

Аватар пользователя Stasroot1@drupal.org Stasroot1@drupal.org 25 апреля 2009 в 11:30

Здравствуйте. поставил модуль Event создал событие... все хорошо. Как сделать так чтобы события различались по признакам и соответственно можно было бы выбрать какого признака события показать пользователю. Признаки такие: день рождения; соревнования; оргсобрания; праздники; памятные даты; и др.

Мне надо сделать так, чтобы события отображались не только в текщем и последующих месяцах, но и в будующих годах и предидущих десятилетиях. Как и где это все настраивается? подскажите пожалуйста.

На странице http://dnevnikdrupal/event
у меня прорисован календарь на котором отображаются события. Над ним два выпадающих списка "События":
1 Все и внизу коментарий: Показать события по теме
2 Все и внизу коментарий: Показать события по типу

Как сюда добавить помима пункта Все и другие пункты, например те что я писал выше (день рождения; соревнования; оргсобрания; праздники; памятные даты; и др.)

С уважением, Станислав.

Комментарии

Аватар пользователя Stasroot1@drupal.org Stasroot1@drupal.org 25 апреля 2009 в 18:32

Т.е. вы предлогаете создать новый словарь, например "темы событий" и еще один "Типы событий" и в них создать термины: в "темы событий" сосздать: день рождения; соревнования; оргсобрания; праздники; памятные даты; и др. А в словаре "типы событий" создать: международные; региональные; общероссийские; наиважнейшие; маловажные ит.д.? Хорошо это я смогу сделать, уже научился вроде. И как теперь внести термины из этих словарей в соответствующие раскрывающиеся списки на странице my_host/event ?
И соответственно когда буду создавать события надо будет их помечать соответственно двумя терминами, один из которых определяет тип, например "международные", а второй термин определяет тему события, например "день рождения" Это я правильно понимаю?

alisa, уважаю ваши старания по переводам, но в данный момент я вас не понял. Поясните пожалуйста.

Аватар пользователя Stasroot1@drupal.org Stasroot1@drupal.org 25 апреля 2009 в 21:08

Сделал два словаря. наполнил их терминами. в итоге все термины из этих двух словарей попали в раскрывающийся список: Показать события по теме

А где Показать события по типу все осталось как было: "Все" и "Событие" хотя я ожидал что туда добавятся термины из словаря "Типы событий". В календаре на странице http://dnevnikdrupal/event события отображаются в зависимости от выбраной темы события. т.е. это работает так как я и ожидал.

В дополнение, хочется сделать чтобы вывод был на этой странице не только на месяц но и на год в целом, т.е. таблица из 12 месяцев.

Подскажите что надо делать?

Аватар пользователя Stasroot1@drupal.org Stasroot1@drupal.org 25 апреля 2009 в 21:48

Как изменить блок этого модуля? Интересуют такие изменения: ограничить число выводимых событий текущим месяцем. И предоставить возможность в блоке обновить информацию так чтобы пользователь смог посмотреть события не из текущего месяца, а из последующих либо кнопкой либо ссылкой "следующий месяц"
Также предоставить пользователю возможность выбора типа событий отображаемых в блоке и темы события отображаемой в блоке. Чтобы была возможность заранее определить приоритетные типы и темы в зависимости от роли и привилегий пользователя. Как это все сделать? Ну или хотябы часть?
Предполагаю что надо изменять файлы из директории ./sites/all/modules/event/:
eventblock.js
event_node_edit.js -в этом файле в самом начале: if (Drupal.jsEnabled) { что это? я так понимаю это проверка на предмет установлен JS или нет. Я так понимаю что это зависит от браузера, или я что то путаю или недопанимаю, пожалуйста поясните.
event-nodeapi.tpl.php - во время изучения этого файла исходя из этого: * - $node_type: Node type и вот этого:

<?php if (variable_get('configurable_timezones'1)) {
 
$zone event_zonelist_by_id($node->event['timezone']); ?>
 <div class="event-nodeapi">
   <div class="<?php print $node_type ?>-tz"><label><?php print t('Timezone: '?></label><?php print t($zone['name']) ?> </div>
  </div>?>

пришол к выводу, что тип события берется из типов материалов вообще, например "заметка" просто чтобы оно появилось в нисходящем списке надо ... блин мысль потерял., да и не уверен в ней. подскажите, может не туда закапываюсь?
event-calendar-list.tpl.php
event-node-list.tpl.php
event-node-month.tpl.php
event-node-day.tpl.php
event-node-week.tpl.php
event.theme
Куда надо больше копать чтобы решить вопрос с выводом нужной инфы в блоке модуля? Что то подсказывает мне, что даже не в этих файлах надо копать, это вроде файлы управляющие выводом на страницу, а не в блок.

Аватар пользователя Stasroot1@drupal.org Stasroot1@drupal.org 25 апреля 2009 в 22:09

За вывод блоков в теме сайта насколько я понял отвечает вот этот файл: block.tpl.php находящийся в папке темы сайта. Этот файл вроде проверяет есть или нет блок у какого либо модуля и если блок есть выводит его если он включен. И тут вроде все. Соответственно настройка внешнего выда самого блока от конкретного модуля находится в файлах *.tpl.php которые лежат в папке соответствующего модуля. Так?
Соответственно мне надо редактировать файл: eventblock.js но все таки смущает *.js ...

еще я так понял что за вывод блока отвечает вот этот кусок кода файла theme.tpl.php в самом конце:

<?php/**
 * Format the upcoming event block for event calendars
 *
 * param items
 *   An array of themed upcoming events
 */
function theme_event_upcoming_block($items) {
  $output = theme("item_list", $items);
  return $output;?>

Да? Куда дальше рыть?

Аватар пользователя Stasroot1@drupal.org Stasroot1@drupal.org 26 апреля 2009 в 9:05

Спасибо! Т.е. в основном все что я хочу сделать позволит сделать Views? Насколько я понимаю этот модуль отвечает за то в каком порядке и как расположить на странице нужную информацию.... не лазая по файлам темизации... наверное это повышает нагрузку на сервер? Пока это не кретично, но в будущем...
Я так понимаю, что поставленные задачи можно решить и без этого модуля откорректировав css и tpl.php соответствующие модулю. Да?

Сейчас все таки наверное будет несколько проще освоить Views.

Спасибо за ответы. Буду осваивать Views. Если что не будет получаться я напишу сюда.