Вебдизайн и Техническая поддержка
Skype: disbb.ru
Контакты: обратная связь
Часы работы:
Пн-Пт 10:00-18:00
* по московскому времени


Модификация скрытого текста (Duka)


Скриншот

  • Скрипт увеличивает возможности скрытого текста: для группы, для заданного пользователя, по возрасту, по репутации.
  • Автор: Duka
  • Платформа: MyBB
  • Категория: Сообщения (посты) на форуме
  • Оценка: 5.0/1
  • 12.06.2015, 17:27

Модификация скрытого текста. Duka

Данный скрипт увеличивает возможности стандартного "скрытого текста".

Возможности использования по нескольким условиям:
• количеству репутации (уважения);
• количеству позитива;
• сообщение для группы;
• сообщение для пользователя;
• ограничение по возрасту.

Смело ставим в HTML-в форме ответа. Если планируется использовать в закрытых темах -> HTML-низ.
Код
<script type="text/javascript">
var quote = document.getElementsByTagName("blockquote")
var n, condition;
var typet = new Array("respect", "group", "positive", "user", "age");
var typer = new Array((UserRespectPlus-UserRespectMinus).toString(), (GroupID).toString(), (UserPositivePlus-UserPositiveMinus).toString(), (UserID).toString(), (UserAge).toString());
for(q=0;q<typet.length;q++){
for(i=0;i<quote.length;i++){
if(quote[i].previousSibling.innerHTML.indexOf("Скрытый текст")!=-1){
if(quote[i].innerHTML.indexOf(typet[q]+"=")!=-1){
n=parseInt(quote[i].innerHTML.substring(quote[i].innerHTML.indexOf(typet[q]+"=")+(typet[q].length+1), quote[i].innerHTML.indexOf(";")))
if(isNaN(n)==false){
if(q==0){condition = parseInt(typer[0]) < n;}
else if(q==1){condition = parseInt(typer[1]) != n;}
else if(q==2){condition = parseInt(typer[2]) < n;}
else if(q==3){condition = parseInt(typer[3]) != n;}
else if(q==4){condition = parseInt(typer[4]) < n;}
  if(condition){
if(q==0){
  quote[i].innerHTML="Для просмотра скрытого текста нужно иметь "+n+" очков репутации. Осталось набрать "+(n-parseInt(typer[q]))
}else if(q==1){
  quote[i].innerHTML="Вашей группе запрещено просматривать данное сообщение"
}else if(q==2){
  quote[i].innerHTML="Для просмотра скрытого текста нужно иметь "+n+" очков позитива. Осталось набрать "+(n-parseInt(typer[q]))
}else if(q==3){
  quote[i].innerHTML="Данный текст предназначен для <a href='profile.php?id="+n+"'>этого</a> пользователя."
}else if(q==4){
  quote[i].innerHTML="Вам должно испольниться "+n+" лет(года)."
}
  } else {
quote[i].innerHTML=quote[i].innerHTML.substring(quote[i].innerHTML.indexOf(typet[q]+"="+n+";")+((typet[q].length+2)+n.toString().length))
  }
}
}
}
}
}
</script>


Как работает? Используем стандартный хайд , в теле хайда, в самом начале, пишем одно из следующих условий
user=56; //Для пользователя с id=56 (смотреть ссылку профиля)
group=3; //Для группы. id смотреть в параметре show_group= в адресной строке при выборе группы на странице Участники
respect=50; //Для пользователей, у которых суммарное уважение(+/-) больше 50
positive=20; //Для пользователей, у которых суммарный позитив(+/-) больше 20
age=18; //Для пользователей старше 18 лет
Например:
Код
[hide]group=2; Сообщение модераторам...[/hide]

Вместе с условием по количеству сообщений:
Код
[hide=20]group=2; Сообщение модераторам, набравшие 20 сообщений...[/hide]


Скрипт на данный момент не умеет совмещать в себе несколько условий разом, так что скрещивать хайды не имеет смысла.
Теги: mybb, Duka, Сообщения (посты) на форуме, скрипт

Просмотров: 588, Загрузок: 0, Оценка: 5.0 (1)
Страницы:
Имя *:
Email *:
Код *:
Сайт создан в системе uCoz