Техническая поддержка сервиса Quadro.Boards

Объявление

Новости сервиса

О форуме

Quadro.Support – это форум технической поддержки различных проектов и сервисов Quadro.Systems LLC, на котором грамотные технические специалисты всегда смогут помочь вам в решении проблем, или же подсказать ответы на самые сложные вопросы. Так же на форуме собрана обширная база знаний по различным аспектам наших сервисов. Не забывайте пользоваться поиском ;)

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Техническая поддержка сервиса Quadro.Boards » Скрипты и дополнения » Юзер-панель со своим контентом


Юзер-панель со своим контентом

Сообщений 1 страница 2 из 2

1

Юзер-панель со своим контентом на основе скрипта инфо-панели с данными пользователей от Duka
источник

Скрипт позволит вам делать свои панели с данными пользователей, вставлять в них любые данные, которые вам нужны и вставлять их в любое нужное вам место на форуме.
Примеры:
http://s2.uploads.ru/t/tGxlC.jpg http://s3.uploads.ru/t/AL2T6.jpg http://s3.uploads.ru/t/JiVzP.jpg

Юзер-панель с данными пользователей и своим контентом
http://s2.uploads.ru/t/0cbls.jpg http://s3.uploads.ru/t/rI95y.jpg

Скрипт
Для начала необходимо вставить в то место, где должна отображаться ваша панель код:

Код:
<div id="u-panel"></div>

Затем вставляем в html-низ или прямо под с этим сам скрипт:

<script type="text/javascript">
var arr=document.getElementsByTagName("div")
i=0
while(arr ){
if(arr[i].id=="u-panel") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div id=option>тут будет наше содержимое</div>"+name
}i++}
</script>


Заполнение контента
Для заполнения скрипта нужно пользоваться двумя правилами:

1. никаких двойных кавычек в вашем HTML коде!
Обычные кавычки (") заменяйте апострофом (') или просто пишите без них, например:

<table border='0'>
<table boder=0>


2. код контента должен быть в одну строчку!
Не жмите enter, не переносите коды на новую строку. Если слодно из-за этого ориентироваться, то просто сначала делайте код в блокноте, а потом убирайте переносы и вставляйте в скрипт


Для начала составьте html-код вашей панели.
обычно это таблица из двух ячеек (аватарка слева и текст справа)

А вот заставить отображать аватарки, дату рождения и другие данные пользователя можно при помощи определенных кодов.
Список кодов приведен ниже, списывать их надо именно так, как они указаны (да, с двойными кавычками, это исключительно их можно так вписывать)

Данные пользователей

Общие данные
"+UserLogin+" - отображает ник пользователя
"+UserName+" - отображает имя пользователя, которое он вписал в Профиль
"+UserAvatar+" - отображает аватарку пользователя
"+UserTitle+" - отображает статус пользователя
"+GroupTitle+" - отображает группу пользователя
"+UserPosts+" - отображает количество сообщений пользователя
"+UserAge+" - отображает возраст пользователя
"+UserBirthDate+" - отображает день рождения пользователя
"+UserRespectPlus+" - отображает количество плюсов в уважении
"+UserRespectMinus+" - отображает количество минусов в уважении
"+UserPositivePlus+" - отображает количество плюсов, которые поставил юзер
"+UserPositiveMinus+" - отображает количество минусов которые поставил юзер
"+BoardStyle+" - отображает стиль, который использует пользователь (если вы разрешили им в настройках выбрать стандартный скин)

Персональные ссылки
большинство ссылок можно получить с помощью кода "+UserID+" - он отображает идентификатор пользователя, который вы можете увидеть, зайдя на страницу своего профиля:

http://forumdts.org/profile.php?id=2

Ниже приведен список самых распостранненых ссылок:

<a href='/profile.php?id="+UserID+"'>Профиль</a>
<a href='/profile.php?section=personal&id="+UserID+"'>Профиль > Персональный</a>
<a href='/profile.php?section=messaging&id="+UserID+"'>Профиль > Общения</a>
<a href='/profile.php?section=avatar&id="+UserID+"'>Профиль > Аватар</a>
<a href='/profile.php?section=signature&id="+UserID+"'>Профиль > Подпись</a>
<a href='/profile.php?section=display&id="+UserID+"'>Профиль > Отображения</a>
<a href='/profile.php?section=privacy&id="+UserID+"'>Профиль > Приватность</a>
<a href='/profile.php?section=fields&id="+UserID+"'>Профиль > Дополнительно</a>
<a href='/profile.php?section=fields&id="+UserID+"&p=auth_methods'>Профиль > Методы авторизации</a> (QuadroBoards)
<a href='/profile.php?section=fields&id="+UserID+"&p=ucp'>Профиль > Лицевой счет</a> (QuadroBoards)
<a href='/profile.php?section=invites&id="+UserID+"'>Профиль > Приглашения</a>

<a href='/respect.php?id="+UserID+"'>Уважение</a>
<a href='/positive.php?id="+UserID+"'>Позитив</a>

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

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

<script type="text/javascript">
if (UserBirthDate == ""){UserBirthDate = "Когда же нам тебя поздравлять?"}
var arr=document.getElementsByTagName("div")
i=0
while(arr[i] ){
if(arr[i].id=="u-panel") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div id=option>Ваш день рождения "+UserBirthDate+"</div>"+name
}i++}
</script>

В условия можно добавить ссылки на заполнение данных:

<script type="text/javascript">
if (UserAge == "0"){UserAge = "Наш форум предназначен для лиц старше 18 лет. Быстро заполни <a href='/profile.php?section=personal&id="+UserID+"'>Профиль</a>, пока не прогнали!"}
var arr=document.getElementsByTagName("div")
i=0
while(arr[i] ){
if(arr[i].id=="u-panel") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div id=option>Ваш возраст: "+UserAge+"</div>"+name
}i++}
</script>


Как поставить пользователю аватарку по умолчанию
решение: прописываем в скрипте ссылку на картинку:

<script type="text/javascript">
if (UserAvatar == ""){UserAvatar = "http://qssupport.ru/img/avatars/0005/ac/ce/1409-1308139497.jpg"}
var arr=document.getElementsByTagName("div")
i=0
while(arr[i] ){
if(arr[i].id=="u-panel") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div id=option><a href='/profile.php?section=avatar&id="+UserID+"' title='Изменить аватарку'><img src="+UserAvatar+"></a></div>"+name
}i++}
</script>


Как отображать настоящее имя пользователя, но если оно не заполнено, то логин
решение:

<script type="text/javascript">
var myopt="<strong>"+UserName+"</strong>";
if (myopt == "<strong></strong>"){user = "<strong>"+UserLogin+"</strong>"}
var arr=document.getElementsByTagName("div")
i=0
while(arr[i] ){
if(arr[i].id=="u-panel") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div id=option>Добро пожаловать, "+myopt+"!</div>"+name
}i++}
</script>


Скрипт для гостей
т.к. у гостя на форуме нет аватарки и прочих данных, ему следует прописать отдельную панель, например, с предложением войти или зарегистрироваться

<script type="text/javascript">
var arr=document.getElementsByTagName("div")
i=0
str=document.URL
while(arr[i] ){
if(arr[i].id=="u-panel" && GroupID == "3") {
name=arr[i].innerHTML
name=name.substring(0)
arr[i].innerHTML="<div id=option>тут будет наше содержимое</div>"+name
}
i++
}

вместо красного настройте код для отображения гостям.
скорее всего, вам пригодятся ссылки:
<a href='login.php'>Вход</a>
<a href='register.php'>Регистрация</a>

Оформление скрипта
Делается с помощью CSS:

Код:
#option {тут ваши коды}

вы можете и сами прописывать новый классы и id в коде, чтоб можно было настраивать буквально каждую строчку.
или добавляйте атрибут [i]style="" в сам html-код

как закрепить панель где-то в шапке
один из частных вопросов.
вставьте самый первый html-код (<div id="u-panel"></div>) в администрирование > настройки > html-верх
затем пропишите в html-верх:

<style>
#option {
position:absolute;
top:300px;
margin-left: 500px;
}
</style>

синее - отступ сверху
красное - отступ влево

как перенести строку статуса (Привет, Герда. Ваш последний визит: Сегодня 02:35:39.) в панель?
http://s3.uploads.ru/t/GIbmZ.jpg http://s3.uploads.ru/t/evml4.jpg
сначала закрепите панель в шапке (см.выше)
затем сделайте в скрипте пустое место (с помощью тегов <br/>)
теперь добавьте в html-верх

<style>
#pun-status {
    position: absolute;
    margin-left: 500px;
    top: 300px;
    width: 350px;
}
</style>

красное - отступ влево
синее - отступ сверху
зеленое - ширина

Теги: Скрипты и дополнения, Информационные контейнеры

+2

2

Здравствуйте. Пыталась сделать все по инструкции, но код все равно не работает
может я что-то делаю не так
Может ли кто-то показать, как в общем выглядит рабочий код, уже собранный?

0


Вы здесь » Техническая поддержка сервиса Quadro.Boards » Скрипты и дополнения » Юзер-панель со своим контентом


Рейтинг форумов | Создать форум бесплатно © 2007–2016 «QuadroSystems» LLC