Хочу очень кратко рассказать про свой новый модуль «». Кратко потому, что на странице модуля и я очень подробно уже все описал.
Модуль интегрируется на страницу создания новой рассылки и позволяет выбирать получателей по огромному числу критериев:

Про то, как вставлять свой код на существующие страницы я . Правда, тут сделал это чуть изящней, но суть такая же. Идея модуля у меня была уже очень давно, но все руки не доходили. даже выпускал вот такое просто бесплатное.
Новое решение платное. Действуют партнерские скидки.
Ну, и раз уж это блоги разработчиков, а не блоги для рекламы, то расскажу еще про одно решение. Была проблема с фильтрацией дней рождения пользователей. В Битриксе это сделано достаточно глупо — фильтр дней рождения с учетом года. Ну кому это нужно? Мне нужны все пользователи, у которых ДР с 1 января по 20 января, а не все пользователи, у которых день рождения с 1 января 2013 года по 20 января 2013 года. Общались на этот счет с ТП, но решения не было.
На основе информации из данного обращения была создана заявка в отдел разработок.
Категория: Пожелания. Критичность: Нормальная.
Номер обращения в разработку: 36045.
Единственное решение, которое я вижу сейчас это свой SQL запрос. Вот так, например, получим ID всех пользователей, у которых день рождения в период с 1 января по 20 января любого года:
Именно это решение я использую сейчас. Но чуть позже нашлось еще вот такое:
Оно мне кажется более правильным. Важно ставить один и тот же год во втором запросе.
Модуль интегрируется на страницу создания новой рассылки и позволяет выбирать получателей по огромному числу критериев:

Про то, как вставлять свой код на существующие страницы я . Правда, тут сделал это чуть изящней, но суть такая же. Идея модуля у меня была уже очень давно, но все руки не доходили. даже выпускал вот такое просто бесплатное.
Новое решение платное. Действуют партнерские скидки.
Ну, и раз уж это блоги разработчиков, а не блоги для рекламы, то расскажу еще про одно решение. Была проблема с фильтрацией дней рождения пользователей. В Битриксе это сделано достаточно глупо — фильтр дней рождения с учетом года. Ну кому это нужно? Мне нужны все пользователи, у которых ДР с 1 января по 20 января, а не все пользователи, у которых день рождения с 1 января 2013 года по 20 января 2013 года. Общались на этот счет с ТП, но решения не было.
На основе информации из данного обращения была создана заявка в отдел разработок.
Категория: Пожелания. Критичность: Нормальная.
Номер обращения в разработку: 36045.
Единственное решение, которое я вижу сейчас это свой SQL запрос. Вот так, например, получим ID всех пользователей, у которых день рождения в период с 1 января по 20 января любого года:
$date1 = date("md", strtotime('01.01.1900'));
$date2 = date("md", strtotime('20.01.1900'));
$strSQL = "SEL ECT ID FR OM b_user WHERE DATE_FORMAT(PERSONAL_BIRTHDAY,'%m%d') BETWEEN '{$date1}' AND '{$date2}'";
global $DB;
$tmpDB = $DB->Query($strSQL);
while($t = $tmpDB->Fetch()){
$users[] = $t["ID"];
} |
Именно это решение я использую сейчас. Но чуть позже нашлось еще вот такое:
WHERE DAYOFYEAR(PERSONAL_BIRTHDAY) BETWEEN DAYOFYEAR ('01.01.1900') AND DAYOFYEAR ('20.01.1900') |
Оно мне кажется более правильным. Важно ставить один и тот же год во втором запросе.