Дата: Четверг, 05.02.2015, 02:25 | Сообщение # 1
Основное назначение данного скрипта - проверять через заданный интервал времени (в миллисекундах) не пришли ли вам новые личные сообщения, а если же таковые были вам отправлены - выводиться окно на аякс, в котором указано количество присланных вам сообщений, а также указаны их темы (сообщения выводятся в порядке от более нового к более старому).
Выглядит это примерно следующим образом:
Как мы видим, скрипт в достаточно удобной форме оповещает вас о полученных письмах от пользователей. Более того, я чуть переписал скрипт, чтобы при нажатии на новое сообщение ссылка не уводила нас на другую страницу с сообщением, а открывалось отдельное окно для него (чего не было в оригинале от javascript.ucoz.net - авторы данного скрипта). Также мной был составлен правильный условный оператор для скрипта - теперь уведомление выводиться даже если выйти со своего аккаунта на сайте (разлогиниться), а после вновь на него зайти (осуществляется проверка о непрочитанных, а не только о новых личных сообщениях).
Код скрипта: Код <?if($USER_LOGGED_IN$ and $IS_NEW_PM$ || $UNREAD_PM$)?><!--Новые ЛС в Ajax--> <script type="text/javascript"> function tMess(n){var a=[' новое сообщение',' новых сообщения',' новых сообщений'];return a[n%10==1&&n%100!=11?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2]}; function getPM(){$.get("/index/14",function(a){var s=$("b.unread",a).size();if (s) {var n=tMess(s),all=[],leg=(s==1)?'Сообщение':'Сообщения';$("b.unread",a).each(function(){var title = $(this).html(), href = $(this).parent().attr("href"); all.push('» <a href="javascript://" onclick="window.open(\''+href+'\',\'pmw\',\'scrollbars=1,top=0,left=0,resizable=1,width=680,height=350\');return false;">'+title+'</a>');}); new _uWnd('ls','Новые ЛС',250,120,{icon:'http://all-cspro.ru/images/message.png',align:'left'},'<center>Вам пришло '+s+n+'!</center><br /><fieldset><legend>'+leg+'</legend>'+all.join("<br />")+'</fieldset>');}});setTimeout(getPM,120000)};getPM(); </script> <!--/Новые ЛС в Ajax--><?endif?> Установка более чем проста: лучше всего данный скрипт прописать в какой-то из глобальных блоков сайта, нежели во все страницы сайта, например, в нижнюю или верхнюю часть сайта. Лично я прописал в верхнюю часть сайта, так как она быстрее всего загружается - не нужно ждать полного окончания загрузки страницы, чтобы сразу окно Ajax с уведомлением о новых ЛC выводило, когда приходят эти персональные сообщения.
Админ - существо кроткое, пока не разозлить...٩(̾●̮̮̃̾•̃̾)۶
|