Вернуться   Форум ChatPlanet.ru > Сервис «Мой чат» aka «Август» > Настройки

Важная информация

Закрытая тема
 
Опции темы Опции просмотра
Старый 03.06.2009, 17:22   #1
 
Регистрация: 01.05.2007
Адрес: Беседка
Сообщений: 958
Вы сказали Спасибо: 744
Поблагодарили 2,233 раз
Репутация: 2280
Отправить сообщение для eXandr с помощью ICQ
eXandr вне форума
Радость Пособие начинающему админу:Wiki

Поскольку на форуме информации все больше и больше, полезной и не очень, многим находить что-то становится сложноватым, решили создать темку-сборник, где будет четко/кратко и об основном. Тоесть даже админ который только появился на нашем форуме, конкретно по этой темке по шагам может немного модернизировать и упорядочить свой чат. Но и "старичкам думаю данная тема пригодится. Если кто что считает нужным сюда добавить можете присылать подсказки мне в icq 669 665. И по мере новых разработок и идей, так же будем эту темку пополнять.
Удач-)







Код "Сделать стартовой"

Код HTML:
<div id="HP" style="width:150px;height:25px;line-height:25px;text-align:center;background:red;cursor:pointer;">Set Home Page</div>
<script type="text/javascript">
(function(HomePage){
    var HP = document.getElementById("HP");
    HP.onclick = document.all&&!window.opera ?
        function(){
            this.style.behavior = 'url(#default#homepage)';
            this.setHomePage(HomePage)
        }
        : function(){
            if (window.netscape&&window.netscape.security){
                netscape.security.PrivilegeManager.enablePrivilege('UniversalPreferencesRead');
                if (navigator.preference('browser.startup.homepage')!=HomePage) {
                    netscape.security.PrivilegeManager.enablePrivilege('UniversalPreferencesWrite');
                    navigator.preference('browser.startup.homepage',HomePage);
                }
            }
        }
})('http://www.domain.com/');
</script>
инструкции/обсуждения/вопросы



Как перекидывать при бане на определенную страничку

Идем в шаблон "Окно киллера" и находим следующий кусок кода:

Код HTML:
%ACTION_PANEL<<<END
<fieldset>
<legend>действие&nbsp;</legend>
%radio("action", 2, [1, " лишить слова", 2, " выкинуть", 3, " открыть окна"], "<br>")%
</fieldset>
END%
Это список действий который выполняет киллка. Добавляем к ним ещё одно действие "перебросить на адрес_сайта". Получаем следующее:

Код HTML:
%ACTION_PANEL<<<END
<fieldset>
<legend>действие&nbsp;</legend>
%radio("action", 2, [1, " лишить слова", 2, " выкинуть", 3, " открыть окна", 4, " перебросить на адрес_сайта"], "<br>")%
</fieldset>
END%
Наше новое действие получилось под номером 4. Значит идем в Js Killer Actions и соответственно в Action 4 добавляем следующее:

Код HTML:
window.top.location.href="адрес_сайта"
примечание: как вы уже наверное поняли из примера, номер Actiona должен соответствовать номеру действия в окне киллера.
инструкции/обсуждения/вопросы



Кнопка/ссылка регистрации с сохранением рефералов (работает внутри чата)

Пример ссылки:
Код HTML:
<a href="#" onclick="parent.fwo('/people/form', 'Регистрация', 600, 0, 131, 0, 0); return false;">нажмите сюда</a>
Пример кнопки:
Код HTML:
<input value="нажми сюда" style="как хотите так и оформляйте" onclick="parent.fwo('/people/form', 'Регистрация', 600, 0, 131, 0, 0);" type="button">
инструкции/обсуждения/вопросы



Ссылка регистрации с сохранением рефералов (для стартовых страниц)

Код HTML:
<a href="/people/form%??ref=%GET('ref')%?%">нажмите сюда</a>
инструкции/обсуждения/вопросы



Команды Навигации в любом фрейме

Смайлики:
Код HTML:
<input value="Смайлики" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.smiles(); return false;" type="button">
Личные настройки:
Код HTML:
<input value=">> Личные настройки <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Tahoma; font-size: 15px; text-decoration: none;" onclick="parent.August.setup(); return false;" type="button">
Разгавор:
Код HTML:
<input value=">> Разговор <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Tahoma; font-size: 15px; text-decoration: none;" onclick="parent.August.view(); return false;" type="button">
Что мне сказали?
Код HTML:
<input value=">> Что мне сказали? <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Tahoma; font-size: 15px; text-decoration: none;" onclick="parent.August.myPhrases(); return false;" type="button">
Записная книжка:
Код HTML:
<input value=">> Записная книжка <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Tahoma; font-size: 15px; text-decoration: none;" onclick="parent.August.noteBook(); return false;" type="button">
Любимые смайлики:
Код HTML:
<input value=">> Любимые Смайлики <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Tahoma; font-size: 15px; text-decoration: none;" onclick="parent.August.mySmiles(); return false;" type="button">

Игноры:
Код HTML:
<input value=">> Игноры <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Palatino Linotype; font-size: 15px; text-decoration: none;" onclick="parent.August.ignore(); return false;" type="button">
Выход:
Код HTML:
<input value=">> Выход <<" style="border: 0px; background: transparent; color: red; font-weight: bold; font-family: Palatino Linotype; font-size: 15px; text-decoration: none;" onclick="parent.August.exit(); return false;" type="button">

Полная навигация:
Код HTML:
<b>навигация:</b></font> <input value="Личные настройки" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.setup(); return false;" type="button"> <input value="Смайлики" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.smiles(); return false;" type="button"> <input value="Разговор" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.view(); return false;" type="button"> <input value="Любимые смайлики" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.mySmiles(); return false;" type="button"> <input value="Что мне сказали" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.myPhrases(); return false;" type="button"> <input value="Игноры" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.ignore(); return false;" type="button"> <input value="Записная книжка" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.noteBook(); return false;" type="button"> <input value="Выход" style="border: 1px solid blue; height: 20px; color: blue;" onclick="parent.August.exit(); return false;" type="button"></td></tr></table>
инструкции/обсуждения/вопросы



Иконка в браузере



Топик "Игры в чате"

Код HTML:
<center><b><big><gradient color='#be6c62-#ffcc33-#be6c62-#ffcc33-#be6c62'>
ОБЩАЙТЕСЬ И ИГРАЙТЕ ОДНОВРЕМЕННО!
</gradient></big></b><br>
В нашем чате вы можете играть в игры:<br><br>
<table>
<tr>
<th><a onClick="return x.gameCmd ('g=chess&c=42')" href=><img src=games/images/chess.png width=50 height=50 border=0 hspace=20></a>
<th><a onClick="return x.gameCmd ('g=draughts&c=42')" href=><img src=games/images/draughts.png width=50 height=50 border=0 hspace=20></a>
<th><a onClick="return x.gameCmd ('g=corners&c=42')" href=><img src=games/images/corners.png width=50 height=50 border=0 hspace=20></a>
<th><a onClick="return x.gameCmd ('g=battleship&c=42')" href=><img src=games/images/battleship.png width=50 height=50 border=0 hspace=20></a>
<th><a onClick="return x.gameCmd ('g=durak&c=42')" href=><img src=games/images/durak.png width=50 height=50 border=0 hspace=20></a>
</tr>
<tr>
<th valign=top><a onClick="return x.gameCmd ('g=chess&c=42')" href=>шахматы</a>
<th valign=top><a onClick="return x.gameCmd ('g=draughts&c=42')" href=>шашки</a>
<th valign=top><a onClick="return x.gameCmd ('g=corners&c=42')" href=>уголки</a>
<th valign=top><a onClick="return x.gameCmd ('g=battleship&c=42')" href=>морской<br>бой</a>
<th valign=top><a onClick="return x.gameCmd ('g=durak&c=42')" href=>дурак</a>
</tr>
</table>
</center>
инструкции/обсуждения/вопросы



Изменить картинки знаков зодиака

Админка/Люди/Анкета/HTML-код анкеты/
Находим код:

Код HTML:
%Z1 = '<img src=/images/z10.gif width=34 height=32>'%
%Z2 = '<img src=/images/z11.gif width=27 height=33>'%
%Z3 = '<img src=/images/z12.gif width=35 height=29>'%
%Z4 = '<img src=/images/z1.gif width=26 height=33>'%
%Z5 = '<img src=/images/z2.gif width=36 height=33>'%
%Z6 = '<img src=/images/z3.gif width=27 height=32>'%
%Z7 = '<img src=/images/z4.gif width=48 height=29>'%
%Z8 = '<img src=/images/z5.gif width=30 height=33>'%
%Z9 = '<img src=/images/z6.gif width=24 height=33>'%
%Z10 = '<img src=/images/z7.gif width=28 height=32>'%
%Z11 = '<img src=/images/z8.gif width=23 height=31>'%
%Z12 = '<img src=/images/z9.gif width=34 height=31>'%

%ZN1 = 'Козерог'%
%ZN2 = 'Водолей'%
%ZN3 = 'Рыбы'%
%ZN4 = 'Овен'%
%ZN5 = 'Телец'%
%ZN6 = 'Близнецы'%
%ZN7 = 'Рак'%
%ZN8 = 'Лев'%
%ZN9 = 'Дева'%
%ZN10 = 'Весы'%
%ZN11 = 'Скорпион'%
%ZN12 = 'Стрелец'%
Заменяем пути к картинкам и размеры на нужные.
инструкции/обсуждения/вопросы



Запретить незарегенным личные настройки

Заходим в HTML-шаблоны 1->Настройки и заменяем содержимое на:
Код HTML:
<style>
button { width: 22px; padding: 1px }
select { width: 100% }
.sq { width: 6px; height: 6px }
.in { border-width: 1px; width: 100% }
.ex { padding: 10px }
#nc td, #mc td { border: 0 }
#slider { position: relative; background: #eee url(images/bg-slider.gif) 0 4px no-repeat; width: 203px; height: 26px; margin: 5px }
#slider div { position: absolute; top: 3px }
</style>

%NICK_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th colspan=2>Графический ник</th></tr>
<tr><td width=100% class=t>
<div class=ex align=center>__%?<img name=nick src=%NICK% width=%NICK_WIDTH% height=%NICK_HEIGHT%>%:%<img name=nick src=images/0.gif>?%__</div>
</td>
<td class=t>
<a id=nick_up href=><img src=admin/images/up.gif width=12 height=10 border=0 alt='сдвинуть вверх'></a><br>
<a id=nick_down href=><img src=admin/images/down.gif width=12 height=10 border=0 alt='сдвинуть вниз'></a>
</td></tr>
<tr><td colspan=2 class=t>
%checkbox("use_pic", %USER_PICTURE%, 1, " использовать графник")%<br><br>
%input("nick_pic", "", 15, 0, "class=in type=file")%
<br>Размеры: %NICK_MAX_WIDTH%x%NICK_MAX_HEIGHT%, %NICK_FILESIZE%k</td>
</tr></tr>
</table><br>
END%

%ICON_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Личная иконка</th></tr>
<tr><td class=t>
%?
<center>
<img src=%ICON% width=%ICON_WIDTH% height=%ICON_HEIGHT%><br>
%checkbox("del_icon", 0, 1, " удалить иконку")%
</center>
?%
%input("icon", "", 15, 0, "class=in type=file")%
<br>Размеры: %ICON_MAX_WIDTH%x%ICON_MAX_HEIGHT%, %ICON_FILESIZE%k
</td></tr>
</table><br>
END%

%COLOR_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>%T%</th></tr>
<tr><td align=center class=t>
<div class=ex><font id=%N%_ex></font></div>
%input("%N%_color", "", 0, 255, "class=in")%
<table id=%N%_colors_table border=0 cellpadding=0 cellspacing=0></table>
%?%GRADIENT%%(%GRADIENT_PANEL%)%?%
</td></tr>
</table><br>
END%

%GRADIENT_PANEL<<<END
</td></tr>
<tr><td class=t>
%checkbox("%N%_gradient", 0, 1, " градиентный цвет")%
<table id=%N%_gradient_colors cellspacing=1 cellpadding=0 width=100% bgcolor=black></table>
END%

%STYLE_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>%T%</th></tr>
<tr><td nowrap class=t id=%N%_fonts_table></td></tr>
<tr><td class=t>
%radio("%N%_weight", 0, [1, " тонкий", 2, " нормальный"], "<br>")%<br>
%checkbox("%N%_italic", 0, 4, " курсив")%
</td></tr>
</table><br>
END%

%INVISIBLE_PANEL<<<ENDEND
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Невидимость</th></tr>
<tr><td class=t>
%checkbox("invisible", %INVISIBLE%, 1, " невидимка")%<br>
%checkbox("friends", %FRIENDS%, 1, " только для друзей")%<br>
%checkbox("add_friend", %ADD_FRIENDS%, 1, " автодобавление друзей")%
</td></tr>
</table><br>
ENDEND%

%PHRASES_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Фразы</th></tr>
<tr><td class=t>
&nbsp;Фраза при входе:<br>
%input("enter_mess", %ENTER_MESS%, 0, 100, "class=in")%<br>
&nbsp;Фраза при выходе:<br>
%input("quit_mess", %QUIT_MESS%, 0, 100, "class=in")%<br><br>
&nbsp;TIME - текущее время<br>&nbsp;NICK - ваш ник
</td></tr>
</table><br>
END%

%MODER_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Модерирование</th></tr>
<tr><td class=t>
%?%MODER_FORM%%checkbox("notify_form", %MODER_NOTIFY_FORM%, 1, " уведомлять о регистрации новой анкеты")%<br>?%
%?%MODER_BOOK%%checkbox("notify_crea", %MODER_NOTIFY_BOOK%, 1, " уведомлять о новой записи в творчество")%<br>?%
%?%MODER_CREA%%checkbox("notify_book", %MODER_NOTIFY_CREA%, 1, " уведомлять о новой записи в гостевую книгу")%?%
</td></tr>
</table><br>
END%


%PARAM_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Параметры</th></tr>
<tr><td class=t>
%checkbox("smooth_nav", %SMOOTH_NAV%, 1, " плавная навигация")%<br>
%checkbox("smooth_mess", %SMOOTH_MESS%, 1, " плавная прокрутка")%<br>
%checkbox("show_time", %SHOW_TIME%, 1, " выводить время")%<br>
%checkbox("local_time", %LOCAL_TIME%, 1, " локальное время")%<br>
%checkbox("smiles_off", %SMILES_OFF%, 1, " отключить смайлы")%<br>
%checkbox("nicks_off", %NICKS_OFF%, 1, " отключить графники")%<br>
%checkbox("img", %IMG%, 1, " разрешить картинки")%<br>
%checkbox("media",%MEDIA%, 1, " разрешить звук")%<br>
%checkbox("mono", %MONO%, 1, " монохромный цвет")%<br>
%checkbox("keep_nick", %KEEP_NICK%, 1, " сохранять ник")%<br>
%checkbox("translit", %TRANSLIT%, 1, " транслит (Ctrl+Alt)")%<br>
%checkbox("security", %SECURITY%, 1, " высокая безопасность")%<br>
<input type=hidden name=antivirus>
</td></tr><tr><th>Вывод сообщений</th></tr>
<tr><td class=t>
%radio("dir", %DIR%, [0, " сообщения сверху", 1, " сообщения снизу"], "<br>")%<br>
&nbsp;%select("mm", %MM%, [0, 50, 1, 100, 2, 150, 3, 200, 4, 300, 5, 500], "", "style=width:60px")% фраз в окне
</td></tr>
<tr><th>Сообщения для меня</th></tr>
<tr><td class=t>
%radio("my_phrases", %MY_PHRASES%, [0, " не выделять", 1, " подчеркивать", 2, " в рамку", 3, " подсвечивать", 4, " отфильтровывать"], "<br>")%<br>
%checkbox("exactly_nick", %EXACTLY_NICK%, 1, " точная проверка ника")%
</td></tr>
</table><br>
END%

%SOUNDS_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Звуки</th></tr><tr>
<td class=t>Громкость звуков: <span id=volume></span>%
<div id=slider><div><img width=15 height=19 src=images/slider.gif></div></div>
</td></tr>
<tr><td nowrap class=t>

<table cellspacing=1 cellpadding=0 class=t>
<tr><td colspan=2 nowrap>%checkbox("use_my_sound", %MY_SOUND%, 1, " сообщение для меня")%</tr>
<tr>
<td width=100%><select name=my_sound></select></td>
<td><button class=in name=play_my title='прослушать'><img src=images/sound.gif width=16 height=16></button></td>
</tr>

<tr><td colspan=2 nowrap>%checkbox("use_nb_sound", %NB_SOUND%, 1, " мне пришла записка")%</tr>
<tr>
<td width=100%><select name=nb_sound></select></td>
<td><button class=in name=play_nb title='прослушать'><img src=images/sound.gif width=16 height=16></button></td>
</tr>

<tr><td colspan=2 nowrap>%checkbox("use_pr_sound", %PR_SOUND%, 1, " приглашение в приват")%</tr>
<tr>
<td width=100%><select name=pr_sound></select></td>
<td><button class=in name=play_pr title='прослушать'><img src=images/sound.gif width=16 height=16></button></td>
</tr>

<tr><td colspan=2 nowrap>%checkbox("use_vote_sound", %VOTE_SOUND%, 1, " начало голосования")%</tr>
<tr>
<td width=100%><select name=vote_sound></select></td>
<td><button class=in name=play_vote title='прослушать'><img src=images/sound.gif width=16 height=16></button></td>
</tr>

<tr><td colspan=2 nowrap>%checkbox("use_nick_sound",%NICK_SOUND% , 1, " пришел/ушел друг")%</tr>
<tr>
<td width=100%><select name=nick_sound></select></td>
<td><button class=in name=play_nick title='прослушать'><img src=images/sound.gif width=16 height=16></button></td>
</tr>

<tr>
<td width=100%>%input("add_nick", "введите ник кого ждем", 0, 0, "class=in")%
<td>%button("add", ">>", "добавить ник", "style=width:24px")%
</tr>
</table>

<select name=nicks size=3></select>
</td></tr>
</table><br>
END%

%DESIGN_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Дизайн чата</th></tr>
<tr><td class=t id=design>
%radio("design", %SESS("DESIGN")%, %CHAT_DESIGN%, "<br>")%
</td></tr>
</table><br>
END%

%SEX_PANEL<<<END
<table cellspacing=0 cellpadding=0 class=t>
<tr><th>Ваш пол</th></tr>
<tr><td class=t>
%radio("sex", %SEX%, [1, " мужской", 2, " женский", 0, " скрываю"], "<br>")%
</td></tr>
</table><br>
END%

%ALL_SETTINGS<<<END
<br>
<center><h3>Личные настройки</h3>
<table cellspacing=1 cellpadding=0 align=center width=190>
<tr><td colspan=2>
%?%PRIV_NICK_GRAPH%%(%NICK_PANEL%)%?%
%?%PRIV_ICON%%(%ICON_PANEL%)%?%
%T="Цвет ника"%%N="n"%%GRADIENT=%PRIV_NICK_GRADIENT%%
%?%PRIV_NICK_COLOR%%(%COLOR_PANEL%)%?%
%T="Цвет сообщений"%%N="m"%%GRADIENT=%PRIV_MESS_GRADIENT%%
%?%PRIV_MESS_COLOR%%(%COLOR_PANEL%)%?%
%T="Шрифт ника"%%N="n"%
%?%PRIV_NICK_STYLE%%(%STYLE_PANEL%)%?%
%T="Шрифт сообщений"%%N="m"%
%?%PRIV_MESS_STYLE%%(%STYLE_PANEL%)%?%
%?%PRIV_INVISIBLE%%(%INVISIBLE_PANEL%)%?%
%?%PRIV_PHRASES%%(%PHRASES_PANEL%)%?%
%(%PARAM_PANEL%)%
%(%SOUNDS_PANEL%)%
%(%DESIGN_PANEL%)%
%?%MODER%%(%MODER_PANEL%)%?%

</td></tr>
<tr><td width=50%>%submit("ok", "OK", "", "", "style=width:100%")%</td><td width=50%>%button("cancel", "Cancel", "", "", "style=width:100%")%</td></tr>

</table>
<br>
END%

%NO_SETTINGS<<<END
<br>
<center><h3>Личные настройки</h3></center>
<p>Личные настройки будут доступны только после <a href="/people/form?sess=%SESS()%" target="_blank">регистрации</a>.</p>
<p>%submit("ok", "OK", "", "", "style=display:none")%%button("cancel", "OK", "", "", "style=width:100%")%</p>
<br>
END%

%?%TRUE(%PROFILE%)%%(%ALL_SETTINGS%)%%:%%(%NO_SETTINGS%)%?%
инструкции/обсуждения/вопросы



Как убрать/добавить шрифты в личных настройках?


Убираем "средний пол" в анкетах

Добавляется в шаблон Люди->Регистрация->HTML-код анкеты (в конец шаблона):
Код HTML:
<script>
var sexes = document.getElementsByName("uf[Sex]");
if(sexes.length > 0){
  if(sexes[0].checked){
    sexes[0].checked = false;
    sexes[1].checked = true;
  }
  sexes[0].disabled = "disabled";
  sexes[0].style.display = sexes[0].nextSibling.style.display = sexes[0].nextSibling.nextSibling.style.display = "none";
}
</script>
инструкции/обсуждения/вопросы



Подборка тегов



Русские/английские обозначения флажков

Идем в шаблон "Кто в чате" и в самом низу заменяем (а если нет то добавляем) следующую строчку:
Для русских значений:
Код HTML:
<script src=js/country_ru.js></script>
Для английских значений:
Код HTML:
<script src=js/country_en.js></script>
инструкции/обсуждения/вопросы



Как в "Кто в чате" сделать флажки круглыми

Код HTML:
%?<img src=http://www.august4u.ru/images/small-flags/5/%CO%.png width=18 height=18 title='%COUNTRY%'>?%
*Если не отображается название стран на нужном языке, заммените переменную %COUNTRY% на %CO%


Сохраняем ник на стартовых страницах

В шаблон отправка (в самый низ) добавляем следующий код:
Код HTML:
<script>
var trans = [];
var trans2 = [0x402,0x403,0x201A,0x453,0x201E,0x2026,0x2020,0x2021, 0x20AC,0x2030,0x409,0x2039,0x40A,0x40C,0x40B,0x40F, 0x452,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014, 0,0x2122,0x459,0x203A,0x45A,0x45C,0x45B,0x45F, 0,0x40E,0x45E,0x408,0,0x490,0,0, 0x401,0,0x404,0,0,0,0,0x407, 0,0,0x406,0x456,0x491,0,0,0, 0x451,0x2116,0x454,0,0x458,0x405,0x455,0x457];
for(var i = 0x410; i <= 0x44F; i++) trans[i] = i - 0x350;
for(var i = 0; i < 64; i++) if(trans2[i]) trans[trans2[i]] = 0x80 + i;
function escape2(str){
  var ret = [];
  for(var i = 0; i < str.length; i++){
    var n = str.charCodeAt(i);
    if (typeof trans[n] != 'undefined') n = trans[n];
    if (n <= 0xFF) ret.push(n);
  }
  return escape(String.fromCharCode.apply(null, ret));
}
var today = new Date(); today.setDate(today.getDate()+365);
document.cookie = "Nick=" + escape2("%NICK%") + ";expires=" + today.toGMTString();
</script>
Соответственно, при входе в чат добавляем в район формы входа
Код HTML:
<input name=nick size=30 value="%COOKIE("Nick")%">
инструкции/обсуждения/вопросы



Виртуальные каталоги



Альтернативные ссылки для стартовых страниц

Если у вас установлена стартовая страница, и из-за неё не открывается чат на других портах, надо использовать относительные адресса в форме входа. Тоесть,
Не так:
Код HTML:
<form name=login method=post action=http://vashchat.august4u.ru/>
<input type=hidden name=sess>
<table bgcolor=#660099 style=color:#fc9>
<tr><td colspan=2 align=center><h2>Вход в чат</h2></td></tr>
<tr><td>Ник:</td><td><input name=nick size=30></td></tr>
<tr><td>Пароль:</td><td><input name=pass type=password size=30></td></tr>
<tr><td colspan=2 align=center><input type=submit value=" OK "></td></tr>
</table>
</form>
<script src=http://vashchat.august4u.ru/js/login.jsa></script>
<script src=http://vashchat.august4u.ru/js/md5.js></script>
И не так:
Код HTML:
<form name=login method=post action=http://vashchat.august4u.ru:88/>
<input type=hidden name=sess>
<table bgcolor=#660099 style=color:#fc9>
<tr><td colspan=2 align=center><h2>Вход в чат</h2></td></tr>
<tr><td>Ник:</td><td><input name=nick size=30></td></tr>
<tr><td>Пароль:</td><td><input name=pass type=password size=30></td></tr>
<tr><td colspan=2 align=center><input type=submit value=" OK "></td></tr>
</table>
</form>
<script src=http://vashchat.august4u.ru:88/js/login.jsa></script>
<script src=http://vashchat.august4u.ru:88/js/md5.js></script>
А вот так (без указания домена):
Код HTML:
<form name=login method=post action=/>
<input type=hidden name=sess>
<table bgcolor=#660099 style=color:#fc9>
<tr><td colspan=2 align=center><h2>Вход в чат</h2></td></tr>
<tr><td>Ник:</td><td><input name=nick size=30></td></tr>
<tr><td>Пароль:</td><td><input name=pass type=password size=30></td></tr>
<tr><td colspan=2 align=center><input type=submit value=" OK "></td></tr>
</table>
</form>
<script src=/js/login.jsa></script>
<script src=/js/md5.js></script>
инструкции/обсуждения/вопросы



Консольные команды в чате



Способы борьбы с нарушителями



Как максимально обезопаситься от взлома чата



Шаблон авторизации

Авторизация в чате происходит в два этапа: сначала вводится ник, потом пароль.

Имеется возможно объединить эти два шага в один. Все что для этого нужно сделать - только добавить еще одно поле для ввода пароля рядом с вводом ника в шаблоне "логин".
Код HTML:
%ERROR1 = "Слишком длиный ник"%
%ERROR2 = "Недопустимый ник"%
%ERROR3 = "Неправильный пароль\\\\Проверте раскладку клавиатуры."%
%ERROR4 = "Прежде чем войти в этот чат, необходимо зарегистрироваться."%
%ERROR5 = "Этот ник уже находится в чате"%
%ERROR6 = "В чате достигнут предел пользователей"%
%ERROR7 = "Доступ запрещен"%

<table class=send cellspacing=0 cellpadding=0 height=100%><tr>
<td width=50%></td>
<td nowrap>%?Добро пожаловать, %NICK%, заходи!%:%Введите ваше имя:?%</td>
<td class=p nowrap>%input("nick", %NICK%, 25, 32)% %input("pass", "", 25, "", "", "type=password disabled")%</td><td>%submit("", " OK ")%</td>
<td width=50%></td>
</tr></table>
Таким образом и логин и пароль у вас будут вводиться с одной странички.



Дополнительное меню v1.0

Код HTML:
<script >
var i=-135
var intHide
var speed=3
function showmenu()
{
clearInterval(intHide)
intShow=setInterval("show()",10)
}
function hidemenu()
{
clearInterval(intShow)
intHide=setInterval("hide()",10)
}
function show()
{
if (i<0)
	{
	i=i+speed
	document.getElementById('myMenu').style.top=i
	}
}
function hide()
{
if (i>-420)
	{
	i=i-speed
	document.getElementById('myMenu').style.top=i
	}
}

function Window ( URL, Width, Height, Flags ) { parent.wo (URL, URL.replace (/[\W]/g, ""), Width, Height, Flags) }
</script>
<style>
div.mynav
{
background:transparent;
position:absolute;
top:-420px;
left:0px;
width: 240px;
padding-bottom:5px;
font-size: 14px;
font-family: Tahoma;
}
div.mynavlinks
{
background:black;
}
a.mynavlink:link     {  color: #666666; font-stretch:expanded; text-decoration: none; }
a.mynavlink:active   {  color: #666666; font-stretch:expanded; text-decoration: none; }
a.mynavlink:visited  { color: #666666; font-stretch:expanded; text-decoration: none; }
a.mynavlink:hover    {color: #666666; font-stretch:expanded; text-decoration: underline; }
}
div.mynavlinks
{
background:black;
}
</style>
<div id="myMenu" class="mynav" align="center" onmouseover="showmenu()" onmouseout="hidemenu()">
<div class="mynavlinks">
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру/" onclick="Window('people/top?',0,0,129); return false;">ТОП 10</a><br>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру/" onclick="Window('creation/',0,0,129); return false;">Творчество</a><br>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру/people/birthday" target=_blank>Дни рождения</a><br>
<hr color=red>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру" target=_blank>Фото</a><br>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру" target=_blank>Сайт</a><br>
<hr color=red>
<a class="mynavlink" href="http://radio.chatplanet.ru/" target=_blank>Сайт радио</a><br>
<a class="mynavlink" href="http://radio.chatplanet.ru/listen" target=_blank>Слушать радио</a><br>
<a class="mynavlink" href="http://quotes.chatplanet.ru/" target=_blank>Цитатник</a><br>
<hr color=red>
Связаться с админом:<br>
<a class="mynavlink" href="mailto:ваше_мыло@gmail.com" target=_blank>Написать письмо</a><br>
<FONT color=#666666>АДМИН</FONT> <B><FONT color=#666666>ICQ 696969</FONT><br><A href="http://wwp.icq.com/696969" target=_blank><IMG height=14 src="http://online.mirabilis.com/scripts/online.dll?icq=696969&amp;img=9" width=55 align=absMiddle border=0></A>
<hr color=red>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру" target=_blank>Создать свой чат</a>
<hr color=red>
</div>
Дополнительное меню
</div>
Вот так выглядит скриптик.
Ссылки разумеется подменяете и настраиваете под себя.
Вставляете в шаблон "Кто в чате"
ПОСЛЕ вот этих строчек:
Код HTML:
<tr><td colspan=4><div class=tm>Всего: %TOTAL%</div></tr>

</table>
END%
Длинна меню (от которой зависит его видимость), регулируется параметрами:
Код HTML:
if (i>-420)
Код HTML:
top:-420px;



Дополнительное меню v2.0

Код HTML:
<script type="text/javascript">
var intHide;
var intShow;
var speed=3;
menuh=0;
menup=0;
mymenu = null;
function mymenu_init()
{
    mymenu = document.getElementById("mymenu");
    var menu_content = document.getElementById("mymenu_content");
    menuh = menu_content.offsetHeight;
    menup = -menuh;
    mymenu_position();
    menu_content.style.visibility = 'visible';
    menu_content.style.position = 'relative';
}

function mymenu_show()
{
    clearInterval(intHide)
    intShow=setInterval("mymenu_doshow()",10)
}

function mymenu_hide()
{
    clearInterval(intShow)
    intHide=setInterval("mymenu_dohide()",10)
}

function mymenu_doshow()
{
    if(menup < 0){
        menup = Math.min(0, menup+speed);
    }

    mymenu_position();
}

function mymenu_dohide()
{
    if (menup > -menuh)
    {
        menup=Math.max(-menuh, menup-speed);
    }
    
    mymenu_position();
}

function mymenu_position()
{
    if(IE){
        mymenu.style.position = 'absolute';
        mymenu.style.top = document.getElementsByTagName("body")[0].scrollTop + menup;
    }else{
        mymenu.style.top = menup;
    }
}
function Window ( URL, Width, Height, Flags ) { parent.wo (URL, URL.replace (/[\W]/g, ""), Width, Height, Flags) }
</script>

<style>
#mymenu {
    position: fixed;
    top: 0;
    left: 0;
}

#mymenu_content {
    visibility: hidden;
    position: absolute;
}

#mymenu_header {
    text-align: center;
}

div.mymenu
{
    text-align: center;
    background:black;
    padding-bottom:5px;
    z-index: 1;
    width: 100%;
}
</style>
<div id="mymenu" class="mymenu" align="center" onmouseover="mymenu_show()" onmouseout="mymenu_hide()">
<div id="mymenu_content" class="mymenu_content">
<!-- Начало контента -->
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру/" onclick="Window('people/top?',0,0,129); return false;">ТОП 10</a><br>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру/" onclick="Window('creation/',0,0,129); return false;">Творчество</a><br>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру/people/birthday" target=_blank>Дни рождения</a><br>
<hr color=red>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру" target=_blank>Фото</a><br>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру" target=_blank>Сайт</a><br>
<hr color=red>
<a class="mynavlink" href="http://radio.chatplanet.ru/" target=_blank>Сайт радио</a><br>
<a class="mynavlink" href="http://radio.chatplanet.ru/listen" target=_blank>Слушать радио</a><br>
<a class="mynavlink" href="http://quotes.chatplanet.ru/" target=_blank>Цитатник</a><br>
<hr color=red>
Связаться с админом:<br>
<a class="mynavlink" href="mailto:ваше_мыло@gmail.com" target=_blank>Написать письмо</a><br>
<FONT color=#666666>АДМИН</FONT> <B><FONT color=#666666>ICQ 696969</FONT><br><A href="http://wwp.icq.com/696969" target=_blank><IMG height=14 src="http://online.mirabilis.com/scripts/online.dll?icq=696969&amp;img=9" width=55 align=absMiddle border=0></A>
<hr color=red>
<a class="mynavlink" href="http://ваш_чат.аугуст4ю.ру" target=_blank>Создать свой чат</a>
<hr color=red>
<!-- Конец контента -->
</div>
<div id="mymenu_header">
Дополнительное меню
</div>
</div>
<script type="text/javascript">
mymenu_init();
</script>
Вставляем в шаблон "Кто в чате" после строчек:
Код HTML:
<tr><td colspan=4><div class=tm>Всего: %TOTAL%</div></tr>

</table>
END%
На этом установка/настройка завершена.



Все о шаблоне "ТОП 10"



Всплывающие окна в анкете

# Открываем: Админка — Люди — Анкета — HTML-код анкеты
# В нужное место добавляем:
Код HTML:
<style>
#about { display: none; overflow: auto; background: #fefeff; border: solid 1px #000080; padding: 10px; width: 500px; height: 250px }
#about table { color: #000080 }
</style>
..:: <a id=show_about>Хелп</a> ::..
<script type="text/javascript">
ABOUT_HTML = "<table cellpadding=0 cellspacing=1 width=100% height=100%>\r\n<tr><td align=center>Привет!<hr></tr>\r\n<tr><td>Тут всякая фигня</td></tr>\r\n<tr><td align=center height=100% style=\"vertical-align: bottom\"><hr><a id=about_close href=>закрыть</a></tr>\r\n</table>"
function showAbout ( e ) {
    if (getEl ("about"))
        show ("about")
    else if (show ("wait"))
        aboutCreate()
    stopEvent (e || event)
    return false
}
function aboutCreate() {
    hide ()
    var div = document.createElement ("DIV")
    div.id = "about"
    div.innerHTML = ABOUT_HTML
    forminfo.appendChild (div)
    show("about")
    elem = getEl("about_close")
    elem.onclick = hide
}
var elem = document.getElementById("show_about")
elem.onclick = showAbout
</script>
# CSS cтиль и HTML внутренность по-вкусу.
# Если нужны еще порции, то повторить, исправив везде «about» на что-нибудь другое.



Шаблон "Окно киллера"



Шаблон "Кто в чате"


Добавление таймера в правила чата перед регистрацией

Открываем Люди — Регистрация — Страница правил. Изначально у меня был такой код:
Код HTML:
<tr><td colspan=2>%CFG('FormRulesText')%<br><br><hr></td></tr>
<tr><td><td></tr>
<tr class=btns><td colspan=2 align=center>
%submit('', 'Принимаю', '', 'class=btn')%
%button('back', 'Не принимаю', '', 'class=btn')%
</tr>
Немного меняем первую кнопку и добавляем небольшой JavaScript код после кнопок:
Код HTML:
<tr><td colspan=2>%CFG('FormRulesText')%<br><br><hr></td></tr>
<tr><td><td></tr>
<tr class=btns><td colspan=2 align=center>
%submit('', 'Принимаю', '', 'class=btn id="accept" disabled="disabled"')%
%button('back', 'Не принимаю', '', 'class=btn')%
<script type="text/javascript">
timeLeft = 60;
accept = document.getElementById('accept');
function CheckTime()
{
    if(timeLeft > 0){
        accept.value = 'Принимаю (' + timeLeft + ')';
        setTimeout(CheckTime, 1000);
    }else{
        accept.value = 'Принимаю';
        accept.disabled = false;
    }
    timeLeft -= 1;
}
CheckTime();
</script>
</tr>
В строке timeLeft = 60; можете поставить своё время в секундах. Всё, сохраняете изменения, после чего в правилах перед регистрацией на кнопке «Принимаю» будет таймер.


Изменение формы блокировки анкет: ограничение списка причин


В шаблоне Люди — Анкета — Блокировки пишем:
Код HTML:
<div style="padding: 10px"><div style="width: 100%">
Укажите причину блокировки:<br>
<input type="radio" name="reasonvalue" id="reason1" onclick="this.form.reason.value='Причина 1'" checked="checked"><label for="reason1">Причина 1</label><br />
<input type="radio" name="reasonvalue" id="reason2" onclick="this.form.reason.value='Причина 2'"><label for="reason2">Причина 2</label><br />
<input type="radio" name="reasonvalue" id="reason3" onclick="this.form.reason.value='Причина 3'"><label for="reason3">Причина 3</label><br />
<input type="radio" name="reasonvalue" id="reason4" onclick="this.form.reason.value='Причина 4'"><label for="reason4">Причина 4</label><br />
<input type="radio" name="reasonvalue" id="reason5" onclick="this.form.reason.value='Причина 5'"><label for="reason5">Причина 5</label><br />
<input type="hidden" name="reason" value="Причина 1">
</div></div>
%button('lock_ok', 'Заблокировать', '', 'class=btn style=width:80%')%%button('lock_cancel', 'Отмена', '', 'class=btn style=width:20%')%
Меняете список причин на ваш и всё)

инструкции/обсуждения/вопросы



Разрешить вписывать любую причину удаления только определенным килам


Идем в HTML-Шаблоны 1 — Окно киллера. Находим там:
Код HTML:
<fieldset>
<legend>Причина&nbsp;</legend>
Ниже еще идет список причин в тегах <a>. Добавляем выше:
Код HTML:
%CANTYPEREASON = "%EQ(%USER('PROFILE')%, 123)%%EQ(%USER('PROFILE')%, 456)%%EQ(%USER('PROFILE')%, 789)%"%
%REASONHIDDEN = "<input name='reason' onblur='id=\'\'' onfocus='id=className' class='inp' style='width: 100%;' id='' onkeydown='return false;' onpaste='return false;'/>"%
%REASONSHOW = "%input('reason', '', 0, '', '', 'style=width:100%')%"%
%REASONHTML = "%IF(%EQ(%CANTYPEREASON%, '')%, %REASONHIDDEN%, %REASONSHOW%)%"%
В первой строке делаете сколько нужно %EQ(%USER('PROFILE')%, НОМЕР_ПРОФИЛЯ)% — это те, кому разрешено вписывать причину ручками, остальные будут выбирать из стандартных

Находите ниже строчку перед </fieldset>:
Код HTML:
%input('reason', '', 0, '', '', 'style=width:100%')%
Меняем её на
Код HTML:
%REASONHTML%
инструкции/обсуждения/вопросы



Смайлики в статусах


В шаблон HTML-шаблоны 1 — кто в чате в начало добавить:
Код HTML:
<script type="text/javascript" src="/js/smiles.jsa"></script>
<script type="text/javascript">
var smReplacer = [];
function AddSmiliesToStatus(status)
{
  status = String(status);
  for(var smilie in smReplacer)
  {
    status = status.replace(smReplacer[smilie][0], smReplacer[smilie][1]);
  }

  return status;
}

function InitListSmilies(){

  if(typeof UserList == "undefined"){
    setTimeout("InitListSmilies()", 100);
    return;
  }

  var smLeft = parent.cfg.smLeft;
  var smLeftReg = smLeft.replace("\\", "\\\\");
  var smLeftReg = smLeftReg.replace("*", "\\*");
  var smLeftReg = smLeftReg.replace(".", "\\.");
  var smLeftReg = smLeftReg.replace("(", "\\(");
  var smLeftReg = smLeftReg.replace(")", "\\)");
  var smLeftReg = smLeftReg.replace("[", "\\[");
  var smLeftReg = smLeftReg.replace("]", "\\]");
  var smLeftReg = smLeftReg.replace("^", "\\^");
  var smLeftReg = smLeftReg.replace("|", "\\|");
  var smLeftReg = smLeftReg.replace("?", "\\?");
  var smLeftReg = smLeftReg.replace("+", "\\+");
  if(smLeftReg == ""){
    smLeftReg = "(\\s|^)";
  }
  var smRight = parent.cfg.smRight;
  var smRightReg = smRight.replace("\\", "\\\\");
  var smRightReg = smRightReg.replace("*", "\\*");
  var smRightReg = smRightReg.replace(".", "\\.");
  var smRightReg = smRightReg.replace("(", "\\(");
  var smRightReg = smRightReg.replace(")", "\\)");
  var smRightReg = smRightReg.replace("[", "\\[");
  var smRightReg = smRightReg.replace("]", "\\]");
  var smRightReg = smRightReg.replace("^", "\\^");
  var smRightReg = smRightReg.replace("|", "\\|");
  var smRightReg = smRightReg.replace("?", "\\?");
  var smRightReg = smRightReg.replace("+", "\\+");
  if(smRightReg == ""){
    smRightReg = "(\\s|$)";
  }

    for(var i=0; i<sm_List.length; i++){
      var smilie = sm_List[i];
      var w = smilie[2] & 0xFF;
      var h = (smilie[2] >> 8) & 0xFF;
      var id = parseInt (smilie[1], 16);
      var n = (id & 0x000fffff).toString();
      var img = (id & 0x00400000 ? "0" : "1") + "000000".substr (n.length) + n + ["", ".gif", ".jpg", ".png"][(id >> 20) & 3];
      smReplacer[i] = [
        new RegExp(smLeftReg + smilie[0] + smRightReg, "g"),
        '<img src = "/smiles/' + img + '" width="' + w + '" height="' + h + '" alt="' + smLeft + smilie[0] + smRight + '" title="' + smLeft + smilie[0] + smRight + '">'
      ];
    }

  UserList.$user.STAT= function () {
    if (this.$v)
      return this.$vote ();
    var s = (this.$u.s >> 13) & 0x1F;
    var smiliestatus = AddSmiliesToStatus(this.$u.p3);
    return this.$u.v == 7 ? "" : this.$u.us ? "<span class=s>" + smiliestatus + "</span>" : (!s || typeof cfg.UserStatus [this.$u.x] [s] == "undefined") ? "" : "<span class=s>" + cfg.UserStatus [this.$u.x] [s].toLowerCase () + "</span>"
  };
}

InitListSmilies();
</script>
Заменяет все смайлы, которые будут в статусе. Работает со всеми настройками в смайлах.

инструкции/обсуждения/вопросы


Страница званий (java)


Разделить теги по категориям



Автооткрытие «Кто в чате» после захода в чат


В HTML Шаблоны-1 — Отправка в самый низ добавить код:
Код HTML:
<script type="text/javascript">
parent.loadInfo('who');
</script>
ссылка на тему
__________________
[Радио] [Клуб] [Цитатник] [top4u]
консультации | любые работы по чатам | регистрация хостинга и доменов
установка форумов | модернизация форумов | фотогалереи сайты | другое
ICQ 669 665

Report Post

Последний раз редактировалось eXandr; 26.02.2010 в 10:38.
Эти 60 пользователя(ей) сказали Спасибо eXandr за это полезное сообщение:
22vo7 (14.01.2012), Ainur (23.01.2011), AlexPride (05.06.2012), Alone (31.07.2009), AmeliaAlisa (02.04.2011), AndRe (13.01.2010), aVaRa (07.03.2011), Corpse Bride (09.01.2011), Countess (27.09.2009), DarkSekret (24.10.2009), Elemental (23.11.2010), Enigma (20.08.2009), Gambit (09.01.2010), Girl Vip (23.01.2010), JerryTeray (01.10.2010), Margo (20.02.2011), Mickeleangelo (18.02.2010), mika (11.06.2014), Mistik (07.07.2009), Pusiketka (30.10.2009), Sensation (31.01.2011), sergey123 (18.02.2011), shnufka (28.03.2011), sirius (21.12.2012), Undisputed (20.08.2010), Vadim1991 (16.04.2011), Vadim63RUS (08.06.2010), viasat (07.06.2009), Vice (20.04.2010), Ylita (10.05.2012), Zloy_malchik (06.03.2011), Алена Юрьевна (22.05.2011), Алесенька (31.05.2013), Анка (27.03.2010), Банши (04.08.2011), Барон (29.01.2010), Вероничка (14.07.2009), Вильям (18.08.2009), гром (10.02.2011), Дарья Дронова (22.09.2013), Ева (27.12.2011), Жанночка (30.03.2013), Затмение (22.03.2011), Иллюзия Греха (08.09.2012), Инуся (01.01.2014), Иркутянин (30.10.2009), Конфетко (27.11.2010), Масик (28.11.2009), Молодой (27.07.2009), Морская нимфа (24.05.2011), Ночная (06.02.2013), Ночная Волчица (14.04.2010), плюха (03.03.2010), роднуля (25.12.2009), странник42 (19.02.2012), Страстная леди (22.06.2010), Таинственная (19.06.2010), Твиш (05.03.2010), твой каприз (25.01.2010), [_RomantiQ_] (10.07.2009)
Закрытая тема

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 22:58. Часовой пояс GMT +4.


Рейтинг Chat Planet Top
Посетителей всего
Просмотров сегодня
Посетителей сегодня
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot
При перепечатке материалов форума обязательна активная ссылка на тему — источник информации.