Каждый день на работе я ковыряюсь в битриксе. Иногда получаются забавные штуковины, но оценить их могут только сотрудники нашей организации. Чтобы исправить эту ситуацию я решил писать в блоге о всех своих «велосипедах», вдруг кто-нибудь подскажет как сделать это проще. Начнём с поздравлялки для форума.
Задача
Имеется небольшой корпоративный форум, реализованый стандартным компонентом битрикса с почти стандартным шаблоном (немного подправлен CSS). Нужно сделать так, чтобы в шапке форума выводились поздравления тем пользователям, у которых случился день рождения.
Поиск решения
Теоретически, в «подвале» форума выводится список именинников. Это даёт надежду на то, что можно будет воспользоваться стандартным компонентом. Но чтобы это сделать, придётся написать шаблон к компоненту
Найденное решение
Я решил получить список пользователей форума с помощью метода CForumUser::GetList. И найти среди них именинников.
Чтобы поздравления выводились на всех страницах форума, я решил добавить код «поздравлялки» в код верхнего меню. Но обычные поздравления с текстом это скучно. Гораздо веселее, если поздравление выводится с картинкой. Для этих целей я скачал 12 бесплатных иконок тортов и пирожных. Иконки эти должны выводиться в случайном порядке, так будет забавнее =)
По-хорошему, нужно было картинки с тортами хранить в папке шаблона компонента и автоматически поставлять путь к папке компонента при выводе картинок, но мне было лень.
В итоге получился вот такой код:
<?CModule::IncludeModule("forum");
$userListCDB = CForumUser::GetList(Array("ID"=>"ASC"));//собираем всех пользователей форума
$resultCount = 0; //счетчик количества поздравлений
$tortLink = range(1, 12);//массив с номерами картинок для торта
while($userList = $userListCDB->GetNext() and $resultCount != 3){//выводим первые три результата
$birthDate = explode("." ,$userList[‘PERSONAL_BIRTHDAY’]);//разбиваем дату рождения на день, месяц и год
if($birthDate[0] == date("d") and $birthDate[1] == date("m")){//сравниваем день и месяц с текущей датой
Такие поздравлялки хороши только если на форуме не очень много пользователей. Если их число велико, нужно выводить поздравления в случайном порядке. Но у нас не бывает больше трёх именинников в один день, поэтому задача намного проще.
Been signed up at Single Bet Calculator since around February, mostly late at night on the sofa, so this is just my two pence. Came across it through a Reddit thread, not an ad.
The slots side is genuinely huge — somewhere north of 3,000 titles according to the filter counts. Play’n GO is everywhere, so Sweet Bonanza and the rest of the greatest hits all show up. I tend to live on Yggdrasil stuff since the maths feels fairer to me. The one thing that irks me — the search function on Single Bet Calculator is a bit rubbish, I usually just scroll and hope.
Live section is almost entirely Evolution, no complaints there. Proper human dealers, decent stream quality, and Crazy Time and Lightning Roulette is where I lose most of my money, honestly. Fair to note the UK tables are properly staffed from about 6pm onwards. Before you deposit anything I’d have a nose at step by step since the offers shift about.
The sign-up deal on Single Bet Calculator is 100% up to ?200 plus 100 free spins. Rollover is 35x which is about par these days. They also ran 20 no deposit spins on verification. Min deposit is ?10, the form was short enough, KYC took a day.
Withdrawals are decent. Visa and Mastercard take 2-3 days, e-wallets hit in a few hours, and Bitcoin is quickest if you use it. Took out about ?250 recently and it landed early. The live chat on Single Bet Calculator was on me within five minutes — copy-paste at first but fine after. Properly licensed for UK players, so at least there’s a complaints route. There’s no app on the Play Store, the browser version does the job.
на какую тематику?
Ответить