// Библиотека стандартных функций, используемых на страницах форума
//
-// Извлекает из кук имя текущего пользователя и возвращает его
+// Извлекает из кук имя текущего пользователя и возвращает его, а также
+// сохраняет в глобальной переменной forumUser;
+var forumUser;
function getUserName() {
var cookietext =document.cookie;
var pos = cookietext.indexOf("sluser=");
var end = cookietext.indexOf(";",start);
if (end == -1) end=cookietext.length;
var value= cookietext.substring(start,end);
+ forumUser = value;
return unescape(value);
}
+//
+// Шаблон страницы содержит два специальных тэга link с rel=forum-script
+// и rel=forum-user-list
+// Эта функция извлекает их в глобальные переменные forumScriptUrl
+// и userListUrl;
+var forumScriptUrl;
+var userListUrl;
+function getBaseURLs() {
+ var links=document.getElementsByTagName("link");
+ for (i=0;i<links.length;i++) {
+ if (links[i].rel == "forum-script") {
+ forumScriptUrl = links[i].href;
+ } else if (links[i].rel = "forum-user-list") {
+ userListUrl = links[i].href;
+ }
+ }
+}
function showUser(username) {
+ getBaseURLs();
if (!username) {
return ;
}
while (links[i].childNodes.length>0) {
links[i].removeChild(links[i].childNodes[0]);
}
+ if (username.substring(0,7) == "http://") {
+ links[i].href=username;
+ username=username.substring(7,username.length);
+ } else {
+ links[i].href=userListUrl+"/" + username;
+ }
links[i].appendChild(document.createTextNode(username));
- }
+ } else if (links[i].href.substring(0,forumScriptUrl.length)==
+ forumScriptUrl && links[i].href.indexOf("login=")!=-1) {
+ while (links[i].childNodes.length>0) {
+ links[i].removeChild(links[i].childNodes[0]);
+ }
+ links[i].appendChild(document.createTextNode("Выйти"));
+ links[i].href=forumScriptUrl+"?logout=1";
+ }
}
}
//