€
$
₴
₽
EN
RU
Vmeste.EU
Лента
Каталог
Файлы
Форумы
Услуги
Основное
Radiotalk
Пользовательское
MPCHAT - CMS хостинг чатов для профессионалов
90 •
Посмотреть все темы
Разграничение функций модерирования
1
2
451
Джесси
@Джесси
17.03.2008
if(parent.admin==1)
Ну ладно, это понятно. То есть все: админы, модеры, кодеры, лодеры, и.т.д.
А как вот, например, разграничить эту функцию отдельно для админов, отдельно для модеров?
Пример:
Вот, допустим, у меня стоит
if(parent.admin==1) вызвать в чат пользователя (вызов /call)
Итак, вызов могут делать и админы и модеры, т.е. все те, у кого "администрирующий статус" admin=1
А как вот сделать, чтобы вызывать могли (к примеру) лишь Админы. А модеры - НЕ могли бы?...
Отредактировано Джесси -
17.03.2008
967
Lefna
@Богиня
17.03.2008
Глянь внимательно в главной админке пользователи -> настроить статусы...
Отредактировано Богиня -
17.03.2008
451
Джесси
@Джесси
17.03.2008
Да, это всё верно, и там всё настроено.
Но ведь /call нет в параметрах настройки статусов!! А нужно /call присвоить только определённой группе лиц.
(/alert не предлагать!)
2902
serhio
@serhio
17.03.2008
Джесси
пишет:
Да, это всё верно, и там всё настроено.
Но ведь /call нет в параметрах настройки статусов!! А нужно /call присвоить только определённой группе лиц.
(/alert не предлагать!)
а чем плохо - if(parent.status=статус_модера) вызвать в чат пользователя (вызов /call)
451
Джесси
@Джесси
17.03.2008
serhio О, действительно, идея! Надо попробовать!... Позже отпишусь.
451
Джесси
@Джесси
17.03.2008
Serhio, благодарю за наводку-подсказку! Всё сделал, даже разграничил полномочия по группам статусов!
+1
Сейчас уже бошка плохо варит, послушай, или я туплю, но в
Самой Админке
же никогда не было возможности вызова /call ? Или я уже просто туплю и не помню?
2902
serhio
@serhio
17.03.2008
Джесси
пишет:
Serhio, благодарю за наводку-подсказку! Всё сделал, даже разграничил полномочия по группам статусов!
+1
Сейчас уже бошка плохо варит, послушай, или я туплю, но в
Самой Админке
же никогда не было возможности вызова /call ? Или я уже просто туплю и не помню?
не было... вызов пользователя - это не админская функция... по умолчанию она доступна всем...
451
Джесси
@Джесси
17.03.2008
Хм, смотри, вот такая фигня теперь получается:
Допустим, теперь /call работает-то только у тех, у кого есть Админка.
А как же, например, присваивать-то /call допустим только "бывалому" или там какому-нить "постоянному", но у которых админки-то нет!!
if(parent.admin==х) ---- получается, только для тех, у кого уже есть доступ в админку!
Быть может, if(parent.stat==х), что-то есть подобное?
Отредактировано Джесси -
17.03.2008
2902
serhio
@serhio
17.03.2008
Джесси
пишет:
Хм, смотри, вот такая фигня теперь получается:
Допустим, теперь /call работает-то только у тех, у кого есть Админка.
А как же, например, присваивать-то /call допустим только "бывалому" или там какому-нить "постоянному", но у которых админки-то нет!!
if(parent.admin==х) ---- получается, только для тех, у кого уже есть доступ в админку!
выложи код селектора... подправим те условия, что ты записал неверно...
451
Джесси
@Джесси
17.03.2008
serhio ,
<script>
document.write("<input type=hidden name=nick value="+parent.mynick+">");
document.write("<input type=hidden name=id value="+parent.myid+">");
document.write("<select name=cmd class=text>");
if(parent.admin==1){document.write("<option value='/me '>v.i.p.сообщение");}
if(parent.admin==7){document.write("<option value='/call '>вызвать");}
- уже не работает (не появляется, т.к. у статуса 7 нет админки!
if(parent.admin==5){document.write("<option value='/call '>вызвать");}
if(parent.admin==4){document.write("<option value='/call '>вызвать");}
if(parent.admin==3){document.write("<option value='/call '>вызвать");}
if(parent.admin==2){document.write("<option value='/call '>вызвать");}
if(parent.admin==1){document.write("<option value='/call '>вызвать");}
if(parent.admin==18){document.write("<option value='/call '>вызвать");}
if(parent.admin==19){document.write("<option value='/call '>вызвать");}
if(parent.admin==20){document.write("<option value='/call '>вызвать");}
document.write("<option value=''>обычное");
document.write("<option value='/privat '>приватное");
if(parent.admin==1) {
document.write("<option value=''>-=модерация=-");
document.write("<option value='/warn '>предупредить");
document.write("<option value='/windows '>закидать окнами");
document.write("<option value='/kick '>удалить");
document.write("<option value='/shut '>заткнуть");
document.write("<option value='/kill '>убить");
}
if(parent.alerter[parent.mynick]) document.write("<option value='/alert '>алерт-вызов");
if(parent.clearer[parent.mynick]) document.write("<option value='/clear '>очистить");
if(parent.reloader[parent.mynick]) document.write("<option value='/reload '>перезагрузить");
document.write("</select>");
</script>
Тут дело-то не в селекторе... а в том, что данная функция if(parent.admin==х) - обращается к наличии Админки!!
Быть может, if(parent.stat==х), что-то есть подобное?
2902
serhio
@serhio
17.03.2008
Джесси
пишет:
serhio ,
Тут дело-то не в селекторе... а в том, что данная функция if(parent.admin==х) - обращается к наличии Админки!!
Быть может, if(parent.stat==х), что-то есть подобное?
разве есть admin=19?... admin может быть только 0 или 1... потому и не появляется.. а не потому, что у этого статуса нет админки...
нужно пользовать parent.status ... я ж тебе это в самом первом сообщении написал... будь внимательнее...
<script>
document.write("<input type=hidden name=nick value="+parent.mynick+">");
document.write("<input type=hidden name=id value="+parent.myid+">");
document.write("<select name=cmd class=text>");
if(parent.admin==1){document.write("<option value='/me '>v.i.p.сообщение");}
if(parent.status ==7){document.write("<option value='/call '>вызвать");}
....................
iif(parent.status ==20){document.write("<option value='/call '>вызвать");}
document.write("<option value=''>обычное");
document.write("<option value='/privat '>приватное");
if(parent.admin==1) {
document.write("<option value=''>-=модерация=-");
document.write("<option value='/warn '>предупредить");
document.write("<option value='/windows '>закидать окнами");
document.write("<option value='/kick '>удалить");
document.write("<option value='/shut '>заткнуть");
document.write("<option value='/kill '>убить");
}
if(parent.alerter[parent.mynick]) document.write("<option value='/alert '>алерт-вызов");
if(parent.clearer[parent.mynick]) document.write("<option value='/clear '>очистить");
if(parent.reloader[parent.mynick]) document.write("<option value='/reload '>перезагрузить");
document.write("</select>");
</script>
451
Джесси
@Джесси
17.03.2008
serhio , блиин, ох я и олень... сидел всё это время сортировал функции модеров да админов, а про простые-то статусы и забыл !!!
(но тоже, штука полезная, согласись, хотя бы уже узнали, как разным модерирующим статусам дать возможность вызова ника в чат, а кому-то из них не дать!))
Превеликое тебе СПС! :-)
Отредактировано Джесси -
17.03.2008
451
Джесси
@Джесси
21.03.2008
Заметил вот что:
Любой чатланин, независимо от статуса, может вызвать в чат, просто написав в строке тег
/call
Любой чатланин, независимо от статуса, может писать выделенным сообщением, просто написав в строке тег
/me
Что кто посоветует? Как это победить?
Через фильтрацию же нереально закрыть? Тогда, поди совсем ни у кого работать не будет...
Отредактировано Джесси -
21.03.2008
4316
Никита
@DMc_Pozitiv
21.03.2008
Я не знаю получится ли, но если в скриптах задать ники, така как ники чистильщиков екрана, а в селекторе прописать дополнительное условие...напиример:
В скрипты добавляем:
var caller = new Array();
caller['Ник 1']=1;
caller['Ник 2']=1; и т.д.
А нижний фрейм в селектор:
if(parent.caller[parent.mynick]) document.write("<option value='/call '>вызов");
Но не знаю!Не проверял по логике должно работать!
Отредактировано DMc_Pozitiv -
21.03.2008
2902
serhio
@serhio
21.03.2008
Джесси
пишет:
Заметил вот что:
Любой чатланин, независимо от статуса, может вызвать в чат, просто написав в строке тег
/call
Любой чатланин, независимо от статуса, может писать выделенным сообщением, просто написав в строке тег
/me
Что кто посоветует? Как это победить?
Через фильтрацию же нереально закрыть? Тогда, поди совсем ни у кого работать не будет...
фильтрацию на статус нужно делать в двух местах - в селекторе нижнего фрейма и в самих функциях /call и /me... тогда не будут выводиться сообщения этих функций для неразрешенных статусов...
4316
Никита
@DMc_Pozitiv
21.03.2008
А так как я написал?Неужели не будет работать?
2902
serhio
@serhio
21.03.2008
qwert
пишет:
А так как я написал?Неужели не будет работать?
пардон... предыдущее свое сообщение удалил - первоначально прочитал твое сообщение не совсем внимательно и посчитал, что будет смешение функций...
нужно будет попробовать... аналогия полностью просматривается и может быть это вполне рабочим вариантом...
4316
Никита
@DMc_Pozitiv
21.03.2008
А может еще так можно!В скриптах там где вывод сообщения поставить условие на ник...например...
if(cmd==3)
if(nick=="НИК"){....}
2902
serhio
@serhio
21.03.2008
qwert
пишет:
А может еще так можно!В скриптах там где вывод сообщения поставить условие на ник...например...
if(cmd==3)
if(nick=="НИК"){....}
да... но тогда и селектор нужно на ники настраивать... и там и там должны быть одинаковые условия...
4316
Никита
@DMc_Pozitiv
21.03.2008
Почему!В селекторе на сообщение /me не прописано ж условие!