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

FAQ 2.0 - вопросы и ответы (не флудить!)

 

1007
BETEPAH @BETEPAH
Bab_n1k пишет:

BETEPAH пишет:

SANhist пишет:

Можно ли сделать так, чтоб человеку с определенным айпи или системным ключом выдавалась ошибка 404?
Просто тестирую чат. И мне не нравится, что на его главную страницу даже заходят некоторые субъекты.

На титульную страницу:
<script>
if(i_ip == '127.0.0.1') window.location = "./404.html"
</script>

Синее - IP, красное - адрес 404й страницы.

а как сделать по провайдеру например 127.0.*.* ?

if(i_ip.indexOf('127.0.') == 0) window.location = "./404.html"

1007
BETEPAH @BETEPAH
Portulet пишет:

Подскажите ...что нужно сделать что бы ставить музыку ну допустим с просто плеера

в function f{} добавить
text = text.replace(/\[play\](http:\/\/prostopleer\.com\/tracks\/(.*?))\[\/play\]/mig, '<object width="411" height="28"><param name="movie" value="http://embed.prostopleer.com/track?id=$2"></param><embed src="http://embed.prostopleer.com/track?id=$2" type="application/x-shockwave-flash" width="411" height="28"></embed></object>');
В сообщение вставляется ссылка в таком виде - ********** - и обрамляется тегом play
[play]http://prostopleer.com/tracks/5176135WZlr[/play]

Отредактировано BETEPAH - 27.02.2012
1007
BETEPAH @BETEPAH
Weber пишет:

BETEPAH пишет:

Bab_n1k пишет:


а как сделать по провайдеру например 127.0.*.* ?

if(i_ip.indexOf('127.0.') == 0) window.location = "./404.html"

if(i_ip.indexOf('85.214.')==0||i_ip.indexOf('88.191.')==0|| дальнейшее перечисление i_ip.indexOf('88.191.')==0) window.location = "../error.htm" - С точки зрения java такой вариант будет работать?

Да, но если список очень длинный, удобнее его оформить отдельным массивом в отдельном файле, как это сделано, например, с файлами графников или градиентов.

6600
Александр @admiral
**********
Для тех кто на броне танках и прочей технике, следующее мое сообщение будет в этой теме

1007
BETEPAH @BETEPAH
Weber пишет:

В: Как нижеизложенный скрипт оформить через массив в отдельный файл?

<script>
if(i_ip.indexOf('85.214.')==0||i_ip.indexOf('88.191.')==0||i_ip.indexOf('161.162.')==0||i_ip.indexOf('123.242.')==0) window.location = "error.htm"
</script>

Если в шаблоне титульника, то так
<script>
var ips = [];
ips[0] = '85.214.';
ips[1] = '88.191.';
ips[2] = '161.162.';
ips[3] = '123.242.';
for(var i=0; i<ips.length; i++) if(i_ip.indexOf(ips[i]) == 0) window.location = "error.htm";
</script>

Если хотите вынести массив в отдельный файл, то создаете, например, ip_checker.js с текстом:
var ips = [];
ips[0] = '85.214.';
ips[1] = '88.191.';
ips[2] = '161.162.';
ips[3] = '123.242.';
for(var i=0; i<ips.length; i++) if(i_ip.indexOf(ips[i]) == 0) window.location = "error.htm";

а в шаблон ставите:
<script src="./js/ip_checker.js" type="text/javascript"></script>

7094
--- @Render
Maybelline пишет:

Не могу понять в чём проблема: каждый раз когда я что-то меняю в стилизаторе, например цвет фона ссылки при наведении неё, то сразу все настройки сбиваются, фон везде становится белым.. как это исправить?

Не пользоваться стилизатором ибо он перезаписывает файл стилей style.css, добавляя свои значения.

1007
BETEPAH @BETEPAH
tonik пишет:

Шмель пишет:

Подскажите пожалуйста как можно сделать выделение текста цветом что бы все видили выделение текста когда нажимаешь на дату и время см. 11:40:15

Выделение цветом не знаю...
Есть это: https://vmeste.eu/forum?pid=200492#p200492

<span style="здесь выделяете как заблагорассудится, используя правила css" onclick=\"parent.showdiv('"+timeremoveid+"','"+cmd+"');\">"+timeremove+"</span>

2615
Сергей @Pegass
Шмель пишет:

2 Пытаюсь отделить форму входа на форуме, чтобы перенести выше

попытка№1
<script>
document.write("<table width=90%><tr><td align=center><form action='?inc=forum' method='post'>");
if(!mynick || !myid) document.write("<b>Ник[<a href=?inc=reg target=_blank title='Зарегистрировать ник'>Р</a>]:</b> <input name=nick type=text size=15 class=text> <b>Пароль[<a href=?inc=mail target=_blank title='Выслать пароль'>?</a>]:</b> <input name=pass type=password size=15 class=text> <input type=hidden name=cookie_on value=1> <input type=submit value='Войти' class=ok>");
else document.write("<b>Здравствуйте "+mynick+"!</b> <a href=?inc=forum&cookie_off=1>Выйти</a>");</script>

попытка№2
<script>
<form action='?inc=forum' method='post'>");
if(typeof(i_aidn)=="undefined") alert("Ошибка: Установите скрипт информера в начало документа!");
if(i_aidn) document.write("<input type=hidden name=i_aidn value="+i_aidn+">");
if(mynick && myid) document.write("<input type=hidden name=nick value='"+mynick+"'><input type=hidden name=id value='"+myid+"'><b>"+mynick+"</b> <a href=?cookie_off=1>выйти?</a><br><br>");
else {
document.write("Логин:<input name=nick type=text class=text><br>");
document.write("Пароль:<input name=pass type=password class=text><br>");
}
</script>

не получается
Help

<script>document.write("<table width=90%><tr><td align=center><form action='?inc=forum' method='post'>");
if(!mynick || !myid) { document.write("<b>Ник[<a href=?inc=reg target=_blank title='Зарегистрировать ник'>Р</a>]:</b> <input name=nick type=text size=15 class=text> <b>Пароль[<a href=?inc=mail target=_blank title='Выслать пароль'>?</a>]:</b> <input name=pass type=password size=15 class=text> <input type=hidden name=cookie_on value=1> <input type=submit value='Войти' class=ok>");
document.location='http://ВАШ_ЧАТ/exit.html?act=nologin';
}
else document.write("<b>Здравствуйте "+mynick+"!</b> <a href=?inc=forum&cookie_off=1>Выйти</a>");
document.write("<br></td></tr></form></table><br>");</script>

Отредактировано Pegass - 03.03.2012
7094
--- @Render
Здравствуйте, а можно таким же способом по аналогии сделать вариант для анкет, чтобы допустим при варианте if(parent.opener.regist == '0') нерегенных участников, когда б они кликали на анкету регистрированного - их бы перенаправляло на error.htm

В анкете, после тега </head>
<script language="JavaScript" type="text/javascript">
if(parent.opener.regist == '0') document.location.href = "a.html"
</script>

Проверял лично. Работает.


Ещё вариант, можно для незарегистрированных поставить алерт на иконки анкет.
В скриптах чата, в формировании никлиcта, определение частей никлиста, заменить set_mw=... на:
if(regist==0) {set_mw="<a href=index.php?inc=info&nick="+us[i][0]+" onclick=\"alert('Только зарегистрированные пользователи могут просматривать анкету!');return false;\" target="+us[i][0]+">"+mw+"</a>";} else {set_mw="<a href=index.php?inc=info&nick="+us[i][0]+" onclick=\"parent.wo(this.href,'Анкета','400','320','yes');return false;\" target="+us[i][0]+">"+mw+"</a>";}
Вариант скрытия анкеты, тот, что делал ridz, правда чуть переделан.
Пользователь может сам включать отображение анкеты в настройках своей анкеты.
В Настройки (анкеты):
<tr><td>Отображение анкеты</td><td>
<script>
document.write("<input type=hidden name=field3 class=text maxlength=1 value='%field3%'>");
if('%field3%'==1) sel='checked'; else sel='';
print='<input type=checkbox name=anketa '+sel+' onclick="if(!this.checked) field3.value=0;else field3.value=1"> - отображать мою анкету всем<br>';
document.write(print);
</script>
</td></tr>

В Анкетку, после закрытия </head>
<script language="JavaScript" type="text/javascript">
var field3 = "%field3%";
//if(parent.opener.regist == '0') document.location.href = "a.html"
if(field3 == "1") {document.write();}
else {document.location.href = "a.html";}
</script>

Все варианты проверены и работают.

//upd
а можно как то сделать так, чтобы анкеты зарегестрированных не читались у нерегенных, также когда нерегенный кликает на анкету допустим с раздела "ТОП - 100" или "Поиск анкет участников"...

Использовать функцию изначального скрытия анкеты для всех и включение отображения в настройках самим пользователем (пример выше).
По другому никак.

1007
BETEPAH @BETEPAH
Weber пишет:

В: В предложенном ниже варианте не работает переменная '+pause+'. Как пофиксить?
P.S К команде прикручено следующее: ... onclick=\"parent.call_pause('"+nick+"'); return false\" ...

/* Пауза после вызова */
var stop_call = 0;
var call_min = 3;
function call_pause(nick)
{ var pause=parseInt((stop_call-new Date().getTime())/1000);
if (pause>0) { wr("Повторный вызов возможен через '+pause+'; сек."); return false}
else {stop_call=new Date().getTime()+1000*60*call_min;parent.hidden.location.href = 'index.php?inc=write&'+ parent.yourkey+'&text=/call '+nick+': ';return false}}

Не те кавычки:
if (pause>0) { wr("Повторный вызов возможен через "+pause+"; сек."); return false}

4619
Web3r @Web3r
JackOFF пишет:

В:Как сделать так,что бы ники выводились не столбом и в определенной ширине столба
Показать текст

<script>
for(i=0;i<i_inusers.length;i++) {
i_nick=i_inusers[i][0]; i_color=i_inusers[i][1]; i_mw=i_inusers[i][2]; i_stat= i_inusers[i][3];
document.write("<div style='width:160px'><a href=?inc=info&nick="+i_nick+" target=_blank><font color="+i_color+">"+i_nick+"</font></a></div>");
}
if(i_inchat==0) document.write("<div style='width:160px'>Никого</div>");
</script>

Отредактировано Web3r - 05.03.2012
573
Max @JackOFF
Как сделать вывод статуса внутри чата?
Ваш статус %status%

241
Шмельной @Шмель
В1 Как сделать топик для другой комнаты?
В2 Как код кнопки переписать на чат, сам не соображаю, помогите
<a href="javascript://" title="Выход" onclick="if (confirm('Вы действительно хотите выйти?')) {alert('Счастливого пути Вам.');location.href='$LOGOUT_LINK$';} else {alert('Tогда оставайтесь.')};">Выход</a>

Отредактировано Шмель - 07.03.2012
77
Виола @Fairytale
Foggy пишет:

Плиз, у кого есть mobile.inc, вышлите стандартное его содержание. У меня почему-то его вовсе нет.

Показать текст

Отредактировано Fairytale - 08.03.2012
6600
Александр @admiral
Pоссиянин пишет:

Вопрос: где можно редактировать внешний вид страницы с капчей? для гостевых....

В стилях, смотришь какие классы и делаешь их описание.

1007
BETEPAH @BETEPAH
Weber пишет:

В: <script>if(parent.admin==0) document.write("<noscript><meta http-equiv='refresh' content='0; URL=error.htm'></noscript>");</script> Не пашет в head'е вот такая вот фигня на ?inc=who... Информер подключил, эффект тот же. Исходная задача была в том, чтобы дать возможность входа на эту страницу только админам. Что не так в коде?

Дело в том, что "parent.admin" доступно только внутри чата, а на страницах этой переменной нет. К тому же, document.write пишет в тег body, если не ошибаюсь.
Можно сделать так:
<script>
if(!mynick || (mynick != 'Weber' && mynick != 'Weber2' && mynick != 'Weber3')) window.location = "error.htm";
</script>

Но у этого скрипта есть свой недостаток. Браузер с отключенными скриптами не перейдет на страницу ошибки. Если страница генерируется скриптами, а не простым html, то в недостатке ничего страшного нет, все равно посетитель ничего не увидит, если отключил скрипты.
Если же там простой html, который надо скрыть, то тогда можно попробовать обратное условие:
<script>
if(mynick && (mynick == 'Weber' || mynick == 'Weber2' || mynick == 'Weber3')) document.write("...здесь пишем, что должно быть на странице и видно только трем перечисленным никам...");
else document.write("Содержимое этой страницы доступно только админам!");
</script>

1007
BETEPAH @BETEPAH
Шмель пишет:

Как сделать что бы просмотр можно было включать того кто вещает не с ник листа а с общего окна сообщений чата?

if (status == 99) wr(set_time + "<font size=2 color=" + colornick + "><b>" + set_nick + ":</b></font> <i>приватное вещание <a href=# onclick='parent.write.location.href = \"index.php?inc=write&" + parent.yourkey + "&text=/privat " + nick + " webcam_access\";return false;'><img src=\"./ico/stat/webcam_access.png\" border=0 alt=\"\" onmouseover=\"this.border=1;\" onmouseout=\"this.border=0;\" ></a></i><br>");
else if (status == 98) wr(set_time + "<font size=2 color=" + colornick + "><b>" + set_nick + ":</b></font> <i>вещаю для всех <a href=# onclick=\'parent.users.loadvideo(\"webcam" + nick + "\",\"" + webcamhost + "\",\"" + nick + "\",0);return false;\'><img src=./ico/stat/webcam.png border=0 alt=\"\" onmouseover='this.border=1;' onmouseout='this.border=0;' ></a></i><br>");

2615
Сергей @Pegass
BETEPAH пишет:

Weber пишет:

В1: Хотел реализовать запрет на отправку пустых сообщений в приват, но почему-то не работает:
else if(cmd==2) {
if (text.length<12) return false;
if(nick==mynick) pnick=tonick; else pnick=nick;
if(pu[pnick]==null || pu[pnick].closed) {
<...>
P.S text.length<12 расчитывается исходя из того, что минимальная длина ника юзера - 4 символа (с двоеточием), и, если реплика будет короче, чем 12 символов (/privat ABC:), то месага не выводится...

В2: Как запретить юзеру общаться с самим собой в привате? Поиск юзал, не нашёл.

О1: По идее пустые сообщения и не должны отправляться вообще. За это отвечает выделенная строчка:
/* Обрабатывает строку ввода текста для отправления */
var gettime = 0;
var oldmsg = "";
function msg_send() {
str_plus(0);
mig_title_stop();
var form = parent.chat.document.fmsg;
var msg = form.text0.value;
if (form.tonick && form.tonick.value != 'Всем') msg = form.tonick.value + msg;
if (form.cmd) {
msg = form.cmd.value + msg;
if (form.cmd.value != '/privat ') form.cmd.value = '';
}
if (msg == '') return false;


Не совсем так, эту строчку нужно переместить добавить выше, так же её можно дополнить(красным), однако так работает хорошо, если в чате не реализована возможность отправки нескольким никам)))
UPD "и тут Остапа понесло" пробелы - это тоже пустое сообщение добавляем зеленое
/* Проверяет текст и удаляет повторяющиеся символы до 1 */
function abc_empty(text) {
var text1="",s="",n=0;
for (var i=0;i<text.length;i++) {
if(text.charAt(i)==s ) n++; else n=0;
s=text.charAt(i); if (n<1) text1+=s;
}
return text1;
}


/* Обрабатывает строку ввода текста для отправления */
var gettime = 0;
var oldmsg = "";
function msg_send() {
str_plus(0);
mig_title_stop();
var form = parent.chat.document.fmsg;
var msg = form.text0.value;
if ((msg == '' || abc_empty(msg)==' ') && ( form.cmd.value == '/privat ' || form.cmd.value == '')) { form.cmd.value = ''; fmsg.tonick.value=''; return false; }
if (form.tonick && form.tonick.value != 'Всем') msg = form.tonick.value + msg;
if (form.cmd) {
msg = form.cmd.value + msg;
if (form.cmd.value != '/privat ') form.cmd.value = '';
}
if (msg == '' || abc_empty(msg)==' ') return false;

ЗЫ Исправил, изначально не учел, что для некоторых команд текст необязателен

Отредактировано Pegass - 12.03.2012
7094
--- @Render
Шмель пишет:

А можно сделать <option value=0>свободен их вывод картинками?. Если да то поделитесь как!

https://vmeste.eu/forum?pid=223035#p223035
Учимся пользоваться поиском!

6600
Александр @admiral
new1 пишет:

**********
Можно ли убрать первые отделы, если да то как.

В: Как удалить столбцы с иконками на форуме

О:
Шаблон - Форум:
Для удаления с главной страницы форума ищем:
/* Загрузка форумов и селекта быстрого перехода, проверка доступа */
удаляем:
<td width=20><div class="+icon+"></div></td>

/* Отображение форумов */
удаляем красное:
<td class=title colspan=2>Форум</td>

Для удаления в темах ищем:
/* Отображение тем в форуме */
удаляем:
<td width=20><div class="+icon+"></div></td>

удаляем красное:
<td colspan=2 class=title>Тема</td>