Реально ли создать такой мод?

spy girl

Помощник Админа
Регистрация
04.09.14
Сообщения
504
Реакции
267
Баллы
63
Возраст
39
Близится 9 мая и у меня появилась такая идея. Чтобы именно 9 мая чат автоматически каким-то образом дарил каждому входящему подарок или значек типо георгиевской ленточки. Реально ли создать такое чудо? Чтобы на каждый праздник чат дарил тот значек, который админ загрузит предварительно? Например на Новый год елочную игрушку, на 9 мая ленточку георгиевскую, на 23 февраля танк:crazy:, на 8 марта цветочек:blush2:. Мое дело предложить:whistle3:
 

stream

Support
Команда форума
Регистрация
09.09.14
Сообщения
958
Реакции
625
Баллы
93
...Насчет подарка не знаю, а вот чтобы в профиле отображалась картинка для соответствующей даты-праздника-можно сделать)
 
  • Мне нравится
Реакции: Rain

spy girl

Помощник Админа
Регистрация
04.09.14
Сообщения
504
Реакции
267
Баллы
63
Возраст
39
Давайте сделаем для клиентов хостинга:blush:
 

mychatik

Support
Команда форума
Регистрация
26.05.15
Сообщения
482
Реакции
389
Баллы
63
Веб-сайт
mychatik.ru
Подобный мод для своего чата я сделал сам - и он работает у меня уже больше года.
Сделан он, как дополнение к моду наград от Pasha.
Кроме поздравлений с праздником, у меня в нём выводится поздравление с днюхой (и предварительное напоминание за день до даты) поздравление со "свадьбой" в чате, а на следующий день - с "брачной ночью", поздравление по времени суток (с добрым утром, днём, вечером, ночью...) и т.д...
Можно делать поздравления отдельно для Парней, отдельно для Девушек, отдельно для ОНИ (с днём геев и лесбиянок 17 мая :))) гггг...)
Короче, туда можно кидать, что угодно...

PHP:
<?php
$toDay_YR = date("Y"); // Порядковый номер года, 4 цифры Примеры: 1980, 2014.
$toDay_LY = date("L"); // 1 - високосный год, 0 в остальных случаях.
$toDay_MTH = date("n"); // Месяц без первого нуля. От 1 до 12.
$toDay_DAY = date("j"); // Текущий день месяца, без первого нуля. От 1 до 31.
$toDay_WKN = date("W"); // Порядковый номер недели года, первый день недели - Понедельник. Например: 42 (42-я неделя года)
$toDay_WEK = date("w"); // День недели, числовой. От 0 (Воскресенье) до 6 (Суббота).
$toDay_DYR = date("z"); // День в году. От 0 до 365.
$toDay_TM = date("I"); // Время суток. Если день - 1, если ночь - 0.
$toDay_HR = date("G"); // Часы суток. От 0 до 24.
if ($toDay_MTH == 1): if($toDay_DAY == 1)): if ($current_user->sex == 1): echo '<img src="img/Snegurka.png" border="0" alt="С Новым Годом!!!" title="С Новым Годом!!!">'."\n";
elseif ($current_user->sex == 2): echo '<img src="img/Moroz.png" border="0" alt="С Новым Годом!!!" title="С Новым Годом!!!">'."\n";
else: echo '<img src="/img/begemot.png" border="0" alt="С Новым Годом!!!" title="С Новым Годом!!!">'."\n"; endif; endif;
$w_New_Year[0] = '<img src="/img/Happy_New_Year.png" border="0" alt="С Новым Годом!!!" title="С Новым Годом!!!">';
$w_New_Year[1] = '<img src="/img/winter.png" border="0" alt="С Новым Годом!!!" title="С Новым Годом!!!">';
$w_New_Year[2] = '<img src="/img/New_Year.png" border="0" alt="С Новым Годом!!!" title="С Новым Годом!!!">';
$w_New_Year = $w_New_Year[mt_rand(0, count($w_New_Year)-1)];
if (($toDay_DAY >= 2) && ($toDay_DAY <= 5)): echo "$w_New_Year"."\n"; endif;
if ($toDay_DAY == 6): echo '<img src="/modules/holidays/img/sochelnik.png" border="0" alt="Сочельник" title="Ночь перед Рождеством">'."\n"; endif;
endif;
$w_Friday_13[0] = '<img src="/img/Friday_13_1.png" border="0" alt="Пятница, 13е" title="Пятница, 13е">';
$w_Friday_13[1] = '<img src="/img/Friday_13_2.png" border="0" alt="Пятница, 13е" title="Пятница, 13е">';
$w_Friday_13[2] = '<img src="/img/Friday_13_3.png" border="0" alt="Пятница, 13е" title="Пятница, 13е">';
$w_Friday_13[3] = '<img src="/img/Friday_13_4.png" border="0" alt="Пятница, 13е" title="Пятница, 13е">';
$w_Friday_13 = $w_Friday_13[mt_rand(0, count($w_Friday_13)-1)];
if (($toDay_WEK == 5) && ($toDay_DAY == 13)): echo "$w_Friday_13"."\n"; endif;
?>
Всё это дело сохраняем в отдельный файл holiday.php (или обзовите, как хотите), грузим, куда удобно и куда надо (скорее всего в дизайн/profile_content.php подключаем:
PHP:
<?php include($file_path."/holiday.php");?>

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

P.S. Меня кое-кто за этот мод раскритиковал... Типа, слишком громоздкий... Нужно было написать скрипт, чтобы он выбирал картинку по дате...
Но я считаю, что мой мод - наиболее гибкий. Здесь можно учесть любой нюанс вывода поздравления. Вплоть до вывода по определённым часам.
И самое главное, его можно легко редактировать, внося новые праздники, или изменяя прошлогодние (которые не имеют фиксированной даты).

P.P.S. Просьба не убирать мой копирайт при использовании.
 
Последнее редактирование:

Майор

Администратор
Команда форума
Регистрация
04.09.14
Сообщения
2.837
Реакции
1.942
Баллы
113
Сверху Снизу