Как реализовать дни рождения без профилей? [НЕ РЕШЕНО]

20 января 2009 в 17:20
Аватар пользователя Dusk Dusk 0 30

Как еще можно реализовать функции модуля birthday, не создавая при этом профилей пользователей? (Конечно хотелось бы чтобы они появлялись за неделю до ДР, а в день ДР краснели или что-то в этом духе.) У меня есть анкеты на людей и есть данные о их днях рождениях, но они не являются пользователями сайта.

Комментарии

Dusk wrote:
Спасибо, посмотрел. Но там нет цикличности, то есть ДР придется каждый год заново вводить.

нет не придется, Вам как я понял нужно для 5-ки... дак есть же модуль http://drupal.org/project/eventrepeat

20 января 2009 в 22:36

если анкеты в базе данных можно с помощью модуля http://drupal.org/project/rules написать скрипт на php который будет брать данные о днях рождения из базы и выполнять какие-то действия (публикацию материала на главной, или вставка в код блока нового имени человека у которого д.р.)
А этот весь код прицепить на событие при срабатывании крона.

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

20 января 2009 в 21:05

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

20 января 2009 в 21:18

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

20 января 2009 в 21:46

Vladimir_VVV данные в базе. Описываю:

Задача: корпоративный сайт. Есть сотрудники, на них нужно создать анкеты (нужный тип материала создан), распределить все это по отделам, это я все сделал, отчасти используя пример Ромки.
Собрал на 5.
Можно было бы использовать birthday, и как-то вытягивать его из профиля, но не все сотрудники будут зарегистрированы на сайте, поэтому заводить их просто для ДР как-то нецелесообразно.
В итоге хотелось бы получить цифровое поле (дату) в материале (анкете), в котором можно будет поставить дату при заведениии новой анкеты. Затем выводить эту дату в нужное время на главной с именем (имя являетя title-ом матераила) сотрудника(в общем все как в birthday). То есть еще нужно из матераила Анкета вытянуть title.
sashken, спасибо, завтра гляну eventrepeat.

21 января 2009 в 1:01

Попробуйте модуль views. В нем можно создать блок для вывода на странице с очень широкими возможностями отбора. В том числе и по диапазону дат.

21 января 2009 в 6:24

Задача довольно проста, никакие модули событий не нужны.

"direqtor" wrote:
Попробуйте модуль views. В

Это самое верное и простое решение. Создаете во views блок укажите фильтры для отбора типа "анкеты" с подходящей датой тип представления "поля" в поля добавить титл и еще что душа пожелает.

21 января 2009 в 9:52

"direqtor" wrote:
Попробуйте модуль views.
Идея хорошая, а как выводить в нужное время? Они ведь будут все сразу болтаться на странице?

sashken, хотелось бы задействовать поле в Анкете, которое будет днем рождением, а так получается, что в ивенте мне просто придется наклепать дней рождений.

21 января 2009 в 11:32

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

21 января 2009 в 11:16

direqto, а как добавить календарное поле в материал? (чтобы можно было выбирать дату)Наверное есть модуль какой-то, типа calendar?

21 января 2009 в 11:40

Ага, уже поставил date, тк calendar потребовал..
Выдавал такую ошибку, когда просил установить ему натройки даты и времени.

user warning: Table 'd5r.event_timezones' doesn't exist query: SELECT * FROM event_timezones WHERE name = 'Europe/Moscow' in Z:\home\d5r.te\www\includes\database.mysql.inc on line 172.

21 января 2009 в 12:41

Не помогло, в принципе все настроено, и работает, только когда здесь /admin/settings/date-time жмешь сохранить, он все сохраняет и выдает ошибку...

Сделал поле, direqtor, а что нужно указать в фильтре, чтобы именно сейчас было?

10 ноября 2015 в 11:46

Пробовал: now +7 days, но это следующая неделя, а мне надо предыдущую (заранее чтобы люди знали :)). Я ставил - 7, он это понимает и выводит ДР, которое в тот 1 день, отсчитав 7 дней от now, а вот как вывести весь диапозон от now до -7? Через запятую не хочет, выдает только последнее значение. Уже все перепробывал..

21 января 2009 в 17:49

В фильтре какое условие стоит? equal что ли? так думать надо. там еще есть меньше, больше и т.д. А если тебе нужен диапазон добавь это поле в фильтр еще раз и поставь в нем другое условие.

21 января 2009 в 18:12

Точно, спасибо, что-то забыл про больше, меньше. Но там нельзя исключить now или можно?
Насчет другого поля не подумал, если now нельзя исключить тогда добавлю полей на неделю)), благо у меня только неделя))

21 января 2009 в 18:26

Нет, с добавленем еще одного поля не получилось.. видимо конфликтуют.
С больше чем -7 работает, но мне бы теперь исключить now. Так как я сдела 2 views Сегодня и Ближайшие.

21 января 2009 в 18:51

Что там может конфликтовать?
На одно поле условие больше либо равно now
На это же поле добавленное повторно меньше либо равно now+7
Получаем вилку на неделю от текущей даты. А в следующем году придется в условиях еще один год отнять. Smile
Или вьюс для пятерки не позволяет поле дважды добавлять?

21 января 2009 в 19:11

Видимо я что-то не так объяснил.
Я сделал один views для вывода сегодняшних ДР, там все ок, я поставил is equal to now.
Второй views для вывода ДР за неделю до текущей даты. Поэтому вывод ДР текущей даты мне уже не нужен, то есть надо исключить now. Прекрасно работает такая запись greater than or equal to -7 days. Но он выводит вместе с сегодняшними, а для них я уже сделал свой views, они не нужны.
Два views решил сделать потому что диз будет разный, ну там одни одного цвета, другие другого и тп.
Добавлять год не придется, потому что у меня же дни, я поле day вывожу - Date: День рождения - Day (field_birthday)
2 поля добавить можно.

10 ноября 2015 в 11:46

Добавьте в неделю второе поле Date: День рождения - Day (field_birthday) и поставьте фильтр меньше чем now или now-1 day или просто -1 day

22 января 2009 в 2:58

Супер, то что надо. Только я что-то протупил, дни рождения то будущие должны быть, а не прошедшие. Lol

less than or equal to + 7 days
greater than now

По теме только один вопрос остался, а если бы один views был, можно ли было как то визуально отделить сегодняшних от будущих? Ну там черту поставить.

Всем спасибо, direqtor отдельное спасибо за терпение!

22 января 2009 в 11:22

"Dusk" wrote:
По теме только один вопрос остался, а если бы один views был, можно ли было как то визуально отделить сегодняшних от будущих? Ну там черту поставить.
Во views 2 под шестеркой можно. Под пятеркой - не знаю.

22 января 2009 в 13:23

Я не нашел.
Еще нужно добавить поле Date: - Month с параметрами is equal to now, иначе вылазят ДР со всех месяцев Smile

22 января 2009 в 18:39

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

28 января 2009 в 14:32