/* Базовые элементы сообщений, ссылок на темы etc */
-body {background-color: #ccfcc;}
+body {background-color: #ccffcc;}
div.topic {background-color: #ffffcc; padding: 10px;
margin: 5px; border: 1px solid #777777;}
div.forum {background-color: #ffddcc; padding: 10px; margin: 10px; border: 1px solid #777777;}
a.moderator {color: #22aa22;}
a.user {color: #2222aa;}
.title {text-align: center;}
+.error {color: #cc3333;}
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<TITLE>Ошибка</TITLE>
-</HEAD><BODY bgcolor="#ccffcc">
+<link rel="forum-script" href="forum">
+<link rel="forum-user-list" href="forum">
+<link rel="stylesheet" type="text/css" href="templates/basic.css">
+</HEAD><BODY>
<H3>Тестовый форум Still Life</h3>
<h1>Произошла неустранимая ошибка</h1>
<div class="error"></div>
<tr><td>Имя пользователя:</td><td><input type=text name="user" size=30>
</td></tr>
<tr><td>Сайт на котором вы зарегистрированы</td><td> <select
-name="openid_site" onChange="selectSite(this)">
+name="openidsite" onChange="selectSite(this)">
<option selected value="">Этот сайт</option>
<option value="http://livejournal.com/users/%s">LiveJournal.com</option>
<option value="http://diary.ru/~%s">Diary.ru</option>
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
-<TITLE>Still Life - СоздаÑ\82Ñ\8c Ñ\82емÑ\83</TITLE>
+<TITLE>Still Life - СоздаÑ\82Ñ\8c Ñ\84оÑ\80Ñ\83м</TITLE>
<script language="JavaScript" src="templates/form.js"></script>
<script language="JavaScript" src="templates/common.js"></script>
-</HEAD><BODY bgcolor="#ccffcc">
+<link rel="forum-script" href="forum">
+<link rel="forum-user-list" href="forum">
+<link rel="stylesheet" type="text/css" href="templates/basic.css">
+</HEAD><BODY>
<H3>Тестовый форум Still Life</h3>
-<form method="POST" type="multipart/form-data" action="forum" name="newtopic">
+<h2>Создание подфорума</h2>
+<form method="POST" type="multipart/form-data" action="forum" name="newforum">
<table border=0>
<tr><td>Название</td><td><input type=text name="title" size=30>
</td></tr>
</select></td></tr>
<tr><td>Картинка</td><td><input type="file" name="logo"></td></tr>
<tr><td colspan=2 class="error"></td></tr>
-<tr><td colspan=2 align=right"><input type=submit name="newtopic"
+<tr><td colspan=2 align=right"><input type=submit name="newforum"
value="Создать">
</table>
<TITLE>Still Life - Создать тему</TITLE>
<script language="JavaScript" src="templates/form.js"></script>
<script language="JavaScript" src="templates/common.js"></script>
-</HEAD><BODY bgcolor="#ccffcc">
+<link rel="forum-script" href="forum">
+<link rel="forum-user-list" href="forum">
+<link rel="stylesheet" type="text/css" href="templates/basic.css">
+</HEAD><BODY>
<H3>Тестовый форум Still Life</h3>
<form method="POST" type="multipart/form-data" action="forum" name="newtopic">
<table border=0>
var end = cookietext.indexOf(";",start);
if (end == -1) end=cookietext.length;
var value= cookietext.substring(start,end);
- forumUser = value;
- return decodeURIComponent(value);
+ forumUser = decodeURIComponent(value);
+ return forumUser;
}
//
// Шаблон страницы содержит два специальных тэга link с rel=forum-script
}
}
function showUser(username) {
- getBaseURLs();
if (!username) {
return ;
}
// управления, которые не разрешены данному пользователю
//
function customizePage() {
+ getBaseURLs();
showUser(getUserName());
+ hideDeniedOperations();
}
// Заготовка на будущее
function hideDeniedOperations() {
- var user =getUserName();
- var rights;
- if (user) {
- rights = getUserRights;
+ var user = forumUser;
+ var rights = userStatus;
+ if (user.indexOf("http://")==0) {
+ user=user.substring(7,user.length);
}
if (rights == "admin") {
// Админу можно все
return;
- } else if (rights == "moderator") {
- // Убираем только администраторскую функцию setrights
- } else if (user) {
- // Убираем модераторские функции move и newforum
+ }
+ var links=document.getElementsByTagName("a");
+ var forms=document.getElementsByTagName("form");
+ // Убираем только администраторскую функцию setrights
+ for (i=0;i<links.length;i++) {
+ if (links[i].href.indexOf("setrights=") != -1) {
+ links[i].style.visibility="hidden";
+ }
+ }
+ for (i=0;i<forms.length;i++) {
+ if (forms[i].className == "foruminfo") {
+ var inputs = forms[i].getElementsByTagName("input");
+ for (j=0;j<inputs.length;j++) {
+ if (inputs[j].name == "setrights") {
+ inputs[j].style.visibility="hidden";
+ }
+ }
+ }
+ }
+ if (rights == "moderator") {
+ return;
+ }
+ for (i=0;i<forms.length;i++) {
+ if (forms[i].className == "foruminfo") {
+ forms[i].style.display="none";
+ } else if (forms[i].className == "msginfo"||
+ forms[i].className=="topicinfo") {
+ if (rights=="banned") {
+ forms[i].style.display="none";
+ } else {
+ var inputs = forms[i].getElementsByTagName("input");
+ var my_item = false;
+ for (j=0;j<inputs.length;j++) {
+ if (inputs[j].name == "move") {
+ inputs[j].style.visibility="hidden";
+ }
+ }
+ if (user) {
+ for (j=0;j<inputs.length;j++) {
+ if (inputs[j].name == "author") {
+ my_item = inputs[j].value == user;
+ break;
+ }
+ }
+ }
+ if (!my_item) {
+ for (j=0;j<inputs.length;j++) {
+ if (inputs[j].name == "edit" ||
+ inputs[j].name == "delete") {
+ inputs[j].style.visibility="hidden";
+ }
+ }
+ }
+ }
+ }
+ }
+ // Убираем все модераторские операции из ссылок
+ for (i=0;i<links.length;i++) {
+ if (links[i].href.indexOf("newforum=")!=-1 ||
+ links[i].href.indexOf("move=")!=-1) {
+ links[i].style.visibility="hidden";
+ }
- // Пробегаемся по всем репликам и там, где автор != user
- // убираем edit и delete
- } else {
- // Убираем вообще все, включая reply
- }
+ }
+ if (!forumUser || rights == "banned") {
+ for (i=0;i<links.length;i++) {
+ if (links[i].href.indexOf("newtopic=")!=-1 ||
+ links[i].href.indexOf("edit=")!=-1 ||
+ links[i].href.indexOf("delete=")!=-1||
+ (rights == "banned" && links[i].href.indexOf("reply=")!=-1)) {
+ links[i].style.visibility="hidden";
+ }
+ }
+ return;
+ }
+ // Убираем операции edit и delete для тех объектов, где юзер не
+ // автор
+
}
<TITLE>Still Life - регистрация пользователя</TITLE>
<script src="templates/form.js"></script>
<script src="templates/common.js"></script>
-</HEAD><BODY bgcolor="#ccffcc">
+<link rel="forum-script" href="forum">
+<link rel="forum-user-list" href="forum">
+<link rel="stylesheet" type="text/css" href="templates/basic.css">
+</HEAD><BODY>
<H3>Тестовый форум Still Life</h3>
<div style="border: 1px;">
<form method="POST" name="login" action="forum">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<TITLE>Still Life - Высказаться</TITLE>
-</HEAD><BODY bgcolor="#ccffcc">
<script src="templates/form.js"></script>
<script src="templates/common.js"></script>
+<link rel="forum-script" href="forum">
+<link rel="forum-user-list" href="forum">
+<link rel="stylesheet" type="text/css" href="templates/basic.css">
+</HEAD><BODY>
<H3>Тестовый форум Still Life</h3>
-<form method="POST" name="reply" action="forum">
+<form method="POST" enctype="multipart/form-data" name="reply" action="forum">
<input type="hidden" name="id" value="">
<table border=0>
<tr><td rowspan=2>Пользователь:</td><td> <a class="author" href="forum?register=1">Зарегистрироваться</a><br></td></tr>
</td><tr>
<tr><td colspan=2 class="error"></td></tr>
<tr><td>Тема: </td><td><input name="subject" size="40"></td></tr>
-<tr><td>Текст:</td><td><textarea name="comment" rows=10
+<tr><td>Текст:</td><td><textarea name="text" rows=10
cols=72></textarea></td></tr>
-<tr><td>Формат:</td><td><select name="format"><option value="text"
+<tr><td>Формат:</td><td><select name="text_format"><option value="text"
selected>Без разметки</option>
<option value="bbcode">BBCode</option>
<option value="html">Html</option></select</td></tr>
-<tr><td>Картинка</td> <td><input type=file name="avatarfile"></td></tr>
+<tr><td>Картинка</td> <td><input onchange="addPictureInput(this);" type=file name="image1"></td></tr>
<tr><td colspan=2 align=right"><input type=submit name="reply"
value="Высказаться">
</table>