/** * возвращает подсказку для кнопки "Проекты" для фрилансера * в виде массива ((int)count, (string)tip) * null - в случае ошибки */ public static function getProjectsTipFrl() { $uid = get_uid(0); if (!$uid) { return null; } $newEventsCount = $newMessCount = 0; // количество новых событий $newEventsCount = projects_offers::GetNewFrlEventsCount($uid, false); // сколько новых сообщений $newMessCount = projects_offers_dialogue::CountMessagesForFrl($uid, true, false); if ($newEventsCount === null || $newMessCount === null) { return array('count' => 0, 'tip' => 'Список проектов', 'link' => '/proj/?p=list'); } $newAnsCount = $newEventsCount + $newMessCount; if ((int) $newMessCount === 0 && (int) $newEventsCount === 1) { $tip = 'Новое событие к вашему ответу в проекте'; } elseif ((int) $newMessCount === 1 && (int) $newEventsCount === 0) { $tip = "Новое сообщение к вашему ответу в проекте"; } elseif ($newMessCount + $newEventsCount > 0) { $tip = ""; $tip .= $newMessCount > 0 ? $newMessCount . ending($newMessCount, " новое сообщение", " новых сообщения", " новых сообщений") : ""; $tip .= $newMessCount > 0 && $newEventsCount > 0 ? " и " : ""; $tip .= $newEventsCount > 0 ? $newEventsCount . ending($newEventsCount, " новое событие", " новых события", " новых событий") : ""; $tip .= $newEventsCount > 0 ? " к вашим ответам в проектах" : " на ваши ответы в проектах"; } return array('count' => $newAnsCount, 'tip' => $tip, 'link' => '/proj/?p=list'); }