Перейти к публикации

Окно выбора смайла/картинки


Рекомендованные сообщения

Доброго времени суток!

Прошу не отправлять сразу в поиск. Искал, нашел, но мне не подходит.

Так как только начинаю изучать программирование, прошу помощи у знатоков.

Сайт на ДЛЕ. Хочу реализовать следующее:

при добавлении комментария, рядом с окном ввода текста сделать ссылку "Дополнительные смайлы и картинки".

При нажатии на эту картинку появляется новое окно, определенного размера, к примеру 400х300, в котором есть вкладки, например "анимированные смайлы, спортивные, гламурные" и т.п.

При кликании на нужную картинку или смайл в текстовое поле ввода комментария автоматически вставляется ббкод вставки изображения %7Boption%7D, с адресом выбранного изображения.

Новое окошко пропадает если его закрыть, или же при кликании на первое окно с комментом.

Как такое реализовать?

Я искал способы, но все связаны с самим движком, т.е. там смайлы были привязаны через админку. А хочется, чтобы просто к шаблону был привязан хак.

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

<a href="#" onclick="window.open('/smiles/smiles.html,'width=400,height=215'');">ДОПОЛНИТЕЛЬНЫЕ СМАЙЛЫ</a>

А какой должен быть код у смайлов/картинок?

Ссылка на сообщение
Поделиться на других сайтах

Вы хотите чтобы кто-то просто так сделал это за Вас и потратил своё время? Лучше напишите сколько готовы заплатить за реализацию данной затеи и думаю быстро найдутся те, кто смогут Вам помочь :rolleyes:

Ссылка на сообщение
Поделиться на других сайтах

А какой должен быть код у смайлов/картинок?

я спросил только про код который должен быть у смайлов. Не знал что за это нужно платить.))

Я спрашиваю совета и помощи, а если были бы деньги, то спросил бы на фрилансе. Логично? ))

С уважением.

Ссылка на сообщение
Поделиться на других сайтах
а если были бы деньги, то спросил бы на фрилансе. Логично? ))
Лично я не вижу логики, альтруистов Вы можете найти как там, так и тут :rolleyes:
Ссылка на сообщение
Поделиться на других сайтах

Да, в последнее время форум напоминает биржу фрилансеров... Сперва тебе помагают за небольшое вознаграждение. Затем тупо не отвечают, а потом и вовсе заносят в игнор... Куда катится этот форум :rolleyes:

Ссылка на сообщение
Поделиться на других сайтах

Альтруи́зм (лат. Alter — другой) — нравственный принцип, предписывающий бескорыстные действия, направленные на благо и удовлетворение интересов другого человека

альтруистов Вы можете найти как там, так и тут

Вы наверное имели ввиду обратное? )) С уважением. :rolleyes:

Сперва тебе помагают за небольшое вознаграждение. Затем тупо не отвечают, а потом и вовсе заносят в игнор... Куда катится этот форум

Согласен. Или сразу же упоминают про деньги, и тогда уж точно шиша-с-два дождешься чей-то помощи.

Может действительно надо было на фри-ланс? Видимо там альтруистов побольше будет. ))

По теме.

<a href="#" onclick="window.open('/smiles/smiles.html,'width=400,height=215'');">ДОПОЛНИТЕЛЬНЫЕ СМАЙЛЫ</a>

Почему-то этот код не работает. Сделал простую ссылку с открытием через "_target". Окно открывается. Ладно, как его сделать определенного размера я найду. На фрилансе хотя бы том же самом.

Но может кто-нибудь объяснить, какой код прописывать в смайлах, чтобы при клике на них в форму комментария вставлялся тег %7Boption%7D с адресом изображения?

Ссылка на сообщение
Поделиться на других сайтах

Залей свои смайлы в папку: engine\data\emoticons

В своём шаблоне в файле: addcomments.tpl в нужном тебе месте пропиши такой код:

<script language="javascript" type="text/javascript">

function ShowOrHide ( id ) {

	var item = document.getElementById ( id );


	if ( item.style.display == "none" ) {

		item.style.display = "block";

	} else {

		item.style.display = "none";

	}

}

</script>


<a href="javascript: void(0);" onclick="javascript: ShowOrHide ( 'div' );">Дополнительные смайлы</a><br />

<div id="div" style="display: none; background-color: red;">

	<a href="javascript: void(0);" onclick="javascript: ShowOrHide ( 'div1' );">Анимированные смайлы</a><br />

	<div id="div1" style="display: none; background-color: green;">

		<a href="javascript: void(0);" onClick="dle_smiley (':1:'); return false;"><img src="engine/data/emoticons/1.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':2:'); return false;"><img src="engine/data/emoticons/2.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':3:'); return false;"><img src="engine/data/emoticons/3.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':4:'); return false;"><img src="engine/data/emoticons/4.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':5:'); return false;"><img src="engine/data/emoticons/5.gif" /></a>

	</div>


	<a href="javascript: void(0);" onclick="javascript: ShowOrHide ( 'div2' );">Спортивные</a><br />

	<div id="div2" style="display: none; background-color: blue;">

		<a href="javascript: void(0);" onClick="dle_smiley (':6:'); return false;"><img src="engine/data/emoticons/6.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':7:'); return false;"><img src="engine/data/emoticons/7.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':8:'); return false;"><img src="engine/data/emoticons/8.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':9:'); return false;"><img src="engine/data/emoticons/9.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':10:'); return false;"><img src="engine/data/emoticons/10.gif" /></a>

	</div>


	<a href="javascript: void(0);" onclick="javascript: ShowOrHide ( 'div3' );">Гламурные</a><br />

	<div id="div3" style="display: none; background-color: orange;">

		<a href="javascript: void(0);" onClick="dle_smiley (':11:'); return false;"><img src="engine/data/emoticons/11.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':12:'); return false;"><img src="engine/data/emoticons/12.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':13:'); return false;"><img src="engine/data/emoticons/13.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':14:'); return false;"><img src="engine/data/emoticons/14.gif" /></a>

		<a href="javascript: void(0);" onClick="dle_smiley (':15:'); return false;"><img src="engine/data/emoticons/15.gif" /></a>

	</div>

</div>

В админке DLE: Настройка системы\Настройки вывода новостей\Смайлики пропиши: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15

Всё...

P.S.

Интересно хоть спасибо скажешь? Всё-таки потратил минут 30 на написание тебе этого кода и сообщения.

И что такое альтруист я знаю, ты просто не понял, про что я сказал.

Ссылка на сообщение
Поделиться на других сайтах

Интересно хоть спасибо скажешь? Всё-таки потратил минут 30 на написание тебе этого кода и сообщения.

Блин, ну я же не хотел никого обидеть! Конечно скажу!

Самое большое человеческое спасибо тебе, дружище! Очень-очень выручил! Жму руку от всей души!

Пойду пробовать. :D :D :D :D :D :D

Изменено пользователем acelote
Ссылка на сообщение
Поделиться на других сайтах

А мона еще вопрос? ))

Как теперь ограничить в основном окне выбора смайлов их количество? Чтобы в ббкодах было допустим 20 смайлов, а остальные в выпадающей менюшке? Хочу сделать их доступными для определенной группы.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...