QIP Смайлики в Drupal через модуль Smiles и кнопка для них в BuEditor

Для того, чтобы установить набор QIP смайликов (kolobok) на Drupal, нужно сделать следущее:

1. Установить модуль Smileys: http://drupal.org/project/smileys

2. Включить фильтр смайликов в форматах ввода admin/settings/filters (у каждого формата ввода нажать "изменить" и там внизу поставить галку "Фильтр смайликов")

3. Скопировать готовый набор смайликов kolobok, который уже адаптирован под Друпал (нашел его здесь + добавил иконку wall) в папку /sites/all/modules/smileys/packs (так, чтобы получился путь /sites/all/modules/smileys/packs/QIP)

4. Импортировать набор смайликов qip через страницу модуля smileys: /admin/settings/smileys/import
screen
В нем, напротив появившейся строчки QIP нажать "Установить".

5. Импортировать кнопку в BuEditor : зайти в admin/settings/bueditor , напротив нужного набора кнопок(нпаример, Default) нажать "изменить",
screen
и ниже списка всех кнопок будет раскрывающееся меню "Import Buttons"
screen
Там вводим этот код:


array (
  'buttons' =>
  array (
    0 =>
    array (
      'title' => 'Смайлики',
      'content' => 'js:
getSmile=function(txt) {
  editor.active.replaceSelection(txt,\'end\');
  editor.dialog.close();
}
var userForm = \'<table><tr>\';
userForm += \'<td><a href="javascript:getSmile(\\\':-)\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ab.gif" alt="smile" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\':-(\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ac.gif" alt="sad" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\';-)\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ad.gif" alt="wink" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\':-P\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ae.gif" alt="tongue" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'8-)\\\');"><img src="/sites/all/modules/smileys/packs/QIP/af.gif" alt="sun-glasses" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\':-D\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ag.gif" alt="laugh" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*DRINK*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/az.gif" alt="drink" /></a></td>\';
userForm += \'</tr><tr>\';
 
userForm += \'<td><a href="javascript:getSmile(\\\'*JOKINGLY*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ap.gif" alt="jokingly" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'O:-)\\\');"><img src="/sites/all/modules/smileys/packs/QIP/aa.gif" alt="angel" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\':-*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/aj.gif" alt="kiss" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*KISSED*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/as.gif" alt="kissed" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\':-[\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ah.gif" alt="confused" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'@}->--\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ax.gif" alt="rose" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*KISSING*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/aw.gif" alt="kissing" /></a></td>\';
userForm += \'</tr><tr>\';
 
userForm += \'<td><a href="javascript:getSmile(\\\'*DANCE*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bo.gif" alt="dance" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*YAHOO!*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bp.gif" alt="yahoo" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'[:-}\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ar.gif" alt="music" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*LOL*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bj.gif" alt="lol" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*THUMBS UP*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ay.gif" alt="thumbs up" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*BRAVO*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bi.gif" alt="bravo" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*OK*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bf.gif" alt="ok" /></a></td>\';
userForm += \'</tr><tr>\';
 
userForm += \'<td><a href="javascript:getSmile(\\\'=-O\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ai.gif" alt="shok" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'%-)\\\');"><img src="/sites/all/modules/smileys/packs/QIP/be.gif" alt="overload" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*CRAZY*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bm.gif" alt="crazy" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'     *BYE*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bs.gif" alt="bye" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'     *SARCASTIC*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/cs.gif" alt="sarcastic" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*SMOKE*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/by.gif" alt="smoke" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*WALL*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/wl.gif" alt="wall" /></a></td>\';
userForm += \'</tr><tr>\';
 
userForm += \'<td><a href="javascript:getSmile(\\\'*HELP*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bc.gif" alt="help" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\']:->\\\');"><img src="/sites/all/modules/smileys/packs/QIP/aq.gif" alt="diablo" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\':\\\'\\\'(\\\');"><img src="/sites/all/modules/smileys/packs/QIP/ak.gif" alt="cry" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*PARDON*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bk.gif" alt="pardon" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*BOSS*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/bz.gif" alt="boss" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*GIRL_CRY*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/cm.gif" alt="girl_cry" /></a></td>\';
userForm += \'<td><a href="javascript:getSmile(\\\'*PARTY*\\\');"><img src="/sites/all/modules/smileys/packs/QIP/dv.gif" alt="cry" /></a></td>\';

userForm += \'</tr></table>\';
editor.dialog.open(\'Смайлики\', userForm);'
,
      'icon' => 'smile.png',
      'accesskey' => 'Q',
      'weight' => '16',
    ),
  ),
)


Так же советую добавить иконку smile.gif в качестве иконки кнопки bueditor'a, ну или можете выбрать любую понравившуюся вам иконку для обозначения кнопки смайликов.


После выполненных действий вы получите такую вот кнопку:

smileys

Коды смайликов один-в-один повторяют коды, которые использует популярный мессенджер qip(например, :) :-P :-D и др.), по моей статистике пользователям такими кодами пользоваться удобнее всего.

Если вам все же нужно использовать другие коды (например :wink:, :smile: и т.д.), то вам придется поменять код кнопки bueditor'a а так же изменить файлик импорта смайликов /sites/all/modules/smileys/packs/QIP/QIP.pak (некоторую информацию об этом можно взять здесь: http://www.drupal.ru/node/8567 ). Вместо редактирования файла-импорта QIP.pak вы можете изменить вручную коды смайликов на странице /admin/settings/smileys/list

Надеюсь, вам помогла моя статья. Удачи и новых свершений в Друпале! :)

ВложениеРазмер
qip.zip430.9 КБ
smile.png3.75 КБ
smiles_screenshot.png41.31 КБ
screen1.png87.94 КБ
screen2.png62.46 КБ
screen3.png21.38 КБ

Комментарии

Подскажите, как сделать кнопку для bueditor и модуля http://drupal.org/project/smiley в drupal 7? Пробовал как написано здесь http://ufku.com/drupal/bueditor/contributions/smileys импортировать кнопку, но что-то не вышло

Отправить комментарий

  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <b> <ins> <del> <h1> <h2> <h3> <h4> <h5> <h6> <table> <tr> <td> <th> <tbody> <thead> <blockquote>
  • Convert line breaks to <br /> tags. It allows duplicate line breaks.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <cpp>, <drupal6>, <java>, <javascript>, <php>. The supported tag styles are: <foo>, [foo].
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.

Подробнее о форматировании