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

Объявление

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

О форуме

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

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

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


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


Смайлы с комментариями

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

1

Смайлы с комментариями. rps

Забавная безделушка, начало которой идёт из этой темы: Адаптировать phpBB-шный бб-код для наших форумов. Идея эта впервые реализована на php-bb форумах, я адаптировал её для нашей платформы.
Суть скрипта в том, что он позволяет оставлять мысли в виде текста и наиболее подходящего к нему смайла. Возможно, таким образом будет удобно флудить...

ХТМЛ-верх:

Код:
<script type="text/javascript">
FORUM.set('editor.think', { name : 'Добавить мысли', onclick : function() {make_code(); } } );
</script>
<style type="text/css">
td#button-think {
 background: url(http://st1.bbcorp.ru/i/information.png) no-repeat center !important;
 }

#think-area {
  position: absolute;
  z-index: 1000;
  top: 43px;
  right: 15px;
  padding: 1.5em;
  width: 500px;
}

#div_smiles p {
  padding-bottom: 0 !important;
}

#div_smiles span {
  display: inline;
}

.think_table {
  width: auto !important;
  table-layout: auto !important;
}

td.think_td {
  margin: 0; 
  padding: 0.2em !important;
  border-style: none !important;
}

.think_content {
  background-color: #eeee6f; 
  color: #000; 
  border-radius: 16px; 
  -webkit-border-radius: 16px; 
  -khtml-border-radius: 16px; 
  -moz-border-radius: 16px; 
  -o-border-radius: 16px; 
  border: 1px solid #fff; 
  padding: 3px 5px !important; 
  font-size: 1em;
}

#textarea, #input {
  width: 100%;
}

#close_button {
  margin-left: 15px;
}

.standart_smile {
  padding: 2px;
  cursor: pointer;
}

#hidden_link {
  text-decoration: none;
  border-bottom: 1px dotted;
}

.thought {
  padding-right: 7px;
  background: transparent url(http://s1.uploads.ru/i/D6VpZ.png) no-repeat top right;
  display: inline-block;
}
</style>

ХТМЛ-низ:

Код:
<script type="text/javascript">
var div; var i = 0; var t; var inp; var ta; var max = 10; var def_text = "Мысль потерялась..."; var def_smile = "http://s1.uploads.ru/i/t2jJV.gif";

var pic = new Array();
pic.push("http://www.kolobok.us/smiles/standart/acute.gif");
pic.push("http://www.kolobok.us/smiles/standart/ireful3.gif");
pic.push("http://www.kolobok.us/smiles/standart/blum2.gif");
pic.push("http://www.kolobok.us/smiles/standart/black_eye.gif");
pic.push("http://www.kolobok.us/smiles/standart/bad.gif");
pic.push("http://www.kolobok.us/smiles/standart/secret.gif");
pic.push("http://www.kolobok.us/smiles/standart/yahoo.gif");
pic.push("http://www.kolobok.us/smiles/standart/whistle2.gif");
pic.push("http://www.kolobok.us/smiles/standart/facepalm.gif");
pic.push("http://www.kolobok.us/smiles/standart/this.gif");
pic.push("http://www.kolobok.us/smiles/standart/agree.gif");
pic.push("http://www.kolobok.us/smiles/standart/black_eye.gif");
pic.push("http://www.kolobok.us/smiles/standart/grin.gif");
pic.push("http://www.kolobok.us/smiles/standart/help.gif");
pic.push("http://www.kolobok.us/smiles/standart/polling.gif");
pic.push("http://www.kolobok.us/smiles/standart/smoke.gif");
pic.push("http://www.kolobok.us/smiles/standart/sorry2.gif");
pic.push("http://www.kolobok.us/smiles/standart/umnik.gif");
pic.push("http://www.kolobok.us/smiles/standart/yu.gif");
pic.push("http://www.kolobok.us/smiles/standart/drinks.gif");


function make_div() {
 var fs; var z = 0; var new_div;
 fs = document.getElementsByTagName("div");
 for (z in fs) {
  if (fs[z].className == "fs-box hashelp") {
   new_div = document.createElement("div");
   new_div.id = "think-area";
   new_div.className = "container";
   new_div.style.display = "none";
   fs[z].appendChild(new_div);
  }
 }
}

function make_think(x) {
 var reg; var think; var j = 0; res = x.innerHTML; var smile; var text;
 reg = new RegExp("\\[think=([^\\]]+)\\]([^\\[\\]]+)\\[/think\\]", "g");
 if (reg.test(res)) {
  think = res.match(reg);
  for (j in think) {
   smile = think[j].substring(think[j].indexOf('[think=') + 7, think[j].indexOf(']'));
   text = think[j].substring(think[j].indexOf(']') + 1, think[j].indexOf('[/think]'));
   res = res.replace('[think=' + smile + ']' + text + '[/think]', '<table class="think_table" cellpadding="0" cellspacing="0"><tr><td class="think_td"><div class="think_content">' + text + '</div><span class="thought"><img src="' + smile + '" alt="" /></span></td></tr></table>');
  }
 }
 return res;
}

function make_bb_code() {
 t = document.getElementById("textarea").value;
 if (t == "") t = def_text;
 inp = document.getElementById("input").value;
 if (inp.indexOf("http://") == -1) inp = def_smile;
 bbcode('[think=' + inp + ']' + t + '','[/think]');
 changeVisibility('think-area');
}

function make_code() {
 var h = 0;
 changeVisibility('think-area');
 ta = document.getElementById("think-area");
 ta.innerHTML = "<textarea id='textarea' rows='5'>Введите текст мысли</textarea>";
 ta.innerHTML += "<div id='div_smiles'><p id='conteiner_smiles'><span id='visible_smiles'></span><span id='hidden_smiles' style='display: none;'></span></p><a id='hidden_link' style='cursor: pointer;' title='Показать или скрыть эмоции' onclick='document.getElementById(\"hidden_smiles\").style.display = (document.getElementById(\"hidden_smiles\").style.display == \"none\" ? \"inline\" : \"none\");'>Больше эмоций</a></div><br />";
 ta.innerHTML += "<input type='text' id='input' value='Вставьте ссылку на смайл' /><br /><br />";
 for (h in pic) {
  if (h < max) document.getElementById("visible_smiles").innerHTML += "<img class='standart_smile' src='" + pic[h] + "' alt='Эмоции' title='Нажмите, чтобы добавить' onclick='document.getElementById(\"input\").value = this.src;' />";
  else document.getElementById("hidden_smiles").innerHTML += "<img class='standart_smile' src='" + pic[h] + "' alt='Эмоции' title='Нажмите, чтобы добавить' onclick='document.getElementById(\"input\").value = this.src;' />";
 }
 ta.innerHTML += "<input type='button' class='button' value='Добавить' id='bb_buton' onclick='make_bb_code();' />";
 ta.innerHTML += "<input type='button' class='button' value='Закрыть' id='close_button' onclick='changeVisibility(\"think-area\");' />";
}

make_div();
div = document.getElementById("pun-main").getElementsByTagName("div");
for (i in div) {
 if (div[i].className == "post-content") div[i].innerHTML = make_think(div[i]);
}
</script>

Теперь немного о настройках.
В ХТМЛ-верх располагается скрипт создания новой кнопки в форме ответа и стиль всех элементов. При необходимости, можно поменять иконку

td#button-think {
background: url(http://st1.bbcorp.ru/i/information.png) no-repeat center !important;
}

на свою.

В ХТМЛ-низ доступны для изменения следующие параметры:

var max = 10;

Устанавливает число смайлов, показываемых по умолчанию в форме. Остальные будут скрыты и доступны по клику на ссылку "Больше эмоций".

var def_text = "Мысль потерялась...";

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

var def_smile = "http://s1.uploads.ru/i/t2jJV.gif";

Устанавливает стандартный смайл-эмоцию, если пользователь не указал его.

var pic = new Array();

Набор смайлов-эмоций (в стандартном наборе 20 штук). Можно добавлять свои или удалить ненужные.

Спасибо mkusher за советы при разработке.

скриншоты

http://s1.uploads.ru/t/LNMen.png
http://s1.uploads.ru/t/yxS7Q.png

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

+3

2

Герда
а как изменить цвет самой "мысли"? она у тебя бледно- жёлтая...и у меня почему-то очень высокая.... :dontknow:
где её сделать уже??
http://s2.uploads.ru/wV2BF.png

+...спасибо))) понравилось....

0

3

TeSS
вот этот блок стиля:

Герда написал(а):

background-color: #eeee6f; /*цвет*/
  color: #000;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  -khtml-border-radius: 16px;
  -moz-border-radius: 16px;
  -o-border-radius: 16px;
  border: 1px solid #fff;
  padding: 3px 5px !important; /*отступ*/
  font-size: 1em;

а вообще лучше вручить мне ссылку на сообщение со смайлов - мне так проще css-коды видеть и править

+1

4

У меня он почему-то не работает. Сначала работал, а потом перестал.

0

5

Wolfgirl_15
уберите из хтмл-низ эту строку

<!--Конец//Смайлы в Аватар->

0

6

Wolfgirl_15 написал(а):

У меня он почему-то не работает. Сначала работал, а потом перестал.

Всё разобралась сама. Спасибо.

0

7

sadhaka написал(а):

Wolfgirl_15
уберите из хтмл-низ эту строку

    <!--Конец//Смайлы в Аватар->

Я сделала немного по-другому. Я вырещала весь скрипт на смайлики и поставила в самый конец, потом сохранила и теперь всё снова работает.

0

8

sadhaka
Но всё равно спасибо. :yep:

0

9

Wolfgirl_15
Все-таки уберите эту строку, из-за нее не только этот скрипт не работает

0

10

И правда забавная безделушка ))) Поставил , форумчане в восторге , теперь наверное основные смайлы надо убирать за ненадобностью или переносить в скрипт .
Герда , Спасибо ОГРОМНОЕ

0

11

Не знал, куда поставить это сообщение. вот сюда и пишу. Нашел в сети Каталог онлайн-игр на сайт.

Код:
<a rel="nofollow" href="http://flashgamer.net.ru/">flashgamer</a>
<script>
var fg=fg||{p:{
eop:24,
imgsw:120
}};
!function(u){
var id=u.substring(u.lastIndexOf('/')+1,u.lastIndexOf('.'));
if(document.getElementById(id)){return;}
var s=document.createElement('script');
s.id=id;s.charset='UTF-8';s.async=true;var d=new Date();
s.src=u+'?'+d.getDate()+'.'+d.getMonth()+'.'+d.getFullYear();
var e=document.getElementsByTagName('script')[0];
e.parentNode.insertBefore(s,e);
}('http://flashgamer.net.ru/fginf/fginf.js');
</script>

Вот как это выглядит

http://pornosovet.net/fotohost/img/2013-08/10/sw7t3xb4w8a94zf61twam24qe.png

Отредактировано aladdin (10.08.2013 23:10:45)

0

12

aladdin
Это ведь реклама, причём тут смайлы с комментариями?

0

13

А у меня не работает. Вроде все сделал как написано, но как были лишь стандартные смайлы, так и остались... :dontknow:

0

14

summer написал(а):

Автор: summer

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

Отредактировано aladdin (11.08.2013 16:17:18)

0

15

Извиняюсь за беспокойство. Разобрался. Огромное спасибо !!!!!!))))

0

16

К сожалению, этот скрипт на моем форуме не работает. (

0

17

У меня не работает кнопки нету!  :tired:

0

18

Нечто иное
Еремей
Скрипт проверен - работает. Замените иконку в форме ответа:

td#button-think {
background: url(http://st1.bbcorp.ru/i/information.png) no-repeat center !important;
}

указанная в скрипте не работает

0


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


Рейтинг форумов | Создать форум бесплатно