ОсновноеRadiotalkПользовательское
MPCHAT - CMS хостинг чатов для профессионалов
90   •   Посмотреть все темы

Включение автостатуса только при статусе "он-лайн"

 

2536
удалён @crigon
/* Функция автоизменения статуса при молчании */
var gettime=new Date().getTime();
var laststatus=0;
function goaway() {
var offtime=new Date().getTime()-gettime;
var newstatus=0;
for (i in away) { if(away[i]*60*1000<offtime) {{if(away[i]>away[newstatus] || away[newstatus]==undefined) newstatus=i;}}}
/* Выкинуть из чата для статуса 100 */
if(newstatus==100) {location.href='index.php'; return;}
if(newstatus>0 && (away[newstatus]>away[laststatus] || away[laststatus]==undefined)) {
setstatus(newstatus);
}}
window.setInterval("goaway()",1000*10);

В каком месте нужно поставить условие включение автостатуса, если у юзера только какой-то определенный статус (например, он-лайн)? Метод тыка будет болезненно протекать)

И по ходу дела, вопрос: выделенные скобки не лишние?
for (i in away) { if(away[i]*60*1000<offtime) {{if(away[i]>away[newstatus] || away[newstatus]==undefined) newstatus=i;}}}

458
ridz @ridz
нужно прописать номер статуса при котором необходимо срабатывание скажем нулевой laststatus==0 и ёщё какие либо и номера статусов которые прописаны в
/* Авто смена статуса при молчании */ laststatus==100 или все иные прописанные тут в away[номер]
/* Функция автоизменения статуса при молчании */
var gettime=new Date().getTime();
var laststatus=0;
function goaway() {
var offtime=new Date().getTime()-gettime;
var newstatus=0;
for (i in away) { if(away[i]*60*1000<offtime&&(laststatus==0||laststatus==100)) {{if(away[i]>away[newstatus] || away[newstatus]==undefined) newstatus=i;}}}
/* Выкинуть из чата для статуса 100 */
if(newstatus==100&&admin=='0') {location.href='index.php'; return;}
if(newstatus>0 && (away[newstatus]>away[laststatus] || away[laststatus]==undefined)) {
setstatus(newstatus);
}}
window.setInterval("goaway()",1000*10);

зелёным это добавка чтобы админа не выкинуло при молчании можно заменить на ники &&mynick!="Ваш ник"&&mynick!="Ещё ник"

135
Ефим @FelixH
Подойдёт ли этот код для четвёртой без фреймовой версии.Или нужен другой ??

у меня вот так пока

/* Авто смена статуса при молчании */
/* добавьте к примеру: away[4]=15; (включение статуса 4 через 15 мин) */
/* если вы укажите время для статуса 100, то пользователя выкинет из чата */
var away=new Array();

Мне нужно что бы чатланен который висит в чате не общаясь был предупреждён что через какое то время вылитит из чата.Ну и соотбетственно удаление из чата. Кроме админа конечно

Отредактировано FelixH - 30.08.2012
441
Валентин @DjValek
подскажите пожалуйста, как сделать чтоб автостатус возвращался на онлайн если пользователь написал сообщение

320
Сергей @Brokl
а он вроде возвращается при написании. и не возвращается если фразы или действия отправлены

Отредактировано Brokl - 24.03.2017
2615
Сергей @Pegass
if(away[laststatus]) window.setTimeout("setstatus(0);",2000);

441
Валентин @DjValek
Pegass пишет:

if(away[laststatus]) window.setTimeout("setstatus(0);",2000);

Спасибо Серег огромное!+

42
Человек @Человек_Икс
Pegass пишет:

if(away[laststatus]) window.setTimeout("setstatus(0);",2000);

Куда это вписать?