Перейти к контенту
  • 0

Смайлики


a_duck

Вопрос

  • Ответы 164
  • Создана
  • Последний ответ

Лучшие авторы в этом вопросе

Лучшие авторы в этом вопросе

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

  • 0

Нажимаю на этой странице "Просмотр HTML кода". Там ищу по "emo_pop". Получаю функцию:

function emo_pop()
{
  window.open('index.php?act=legends&CODE=emoticons&s=','Legends','width=250,height=500,resizable=yes,scrollbars=yes');
}

Соответственно из этой статьи можно понять, что вызывается функция show_emoticons в файле sources/misc/legends.php, а шаблон соответственно в Skin/../skin_legends.php. Дальше дело техники...

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

  • 0

Было бы похвально, если бы ты написал и опубликовал бы тут в архиве эту модификацию для 1.3.

 

Которая бы alt добавила бы из таблицы и в legends и туда в тему и личный ящик...

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

  • 0

/---------------------------------------------------/

// Мод для IPB 1.3 Русская версия

// Позволяет присваивать смайликам свои комментарии

// которые видны в виде всплывающих подсказок

// при наведении на них курсора в окне ответа и всплывающем окне.

//

// Если смайлику не присвоен комментарий,

// то всплывающей подсказки не будет.

//

// Комментарии настраиваются в Admin CP-->Администрирование-->Смайлики

//

/---------------------------------------------------/

 

/-----------------------------------------/

/ Модифицируемые файлы:

/ sources/Admin/ad_settings.php

/ sources/Messenger.php

/ sources/Post.php

/ sources/Topic.php

/ sources/Calendar.php

/ Skin/../skin_legends.php

/ sources/misc/legends.php

/-----------------------------------------/

 

/-----------------------------------------/

/Шаг 1: Изменяем базу

/-----------------------------------------/

 

Запускаем в Admin CP-->Управление SQL-->Средства mySQL-->Запуск запроса (внизу окна):

 

ALTER TABLE `ibf_emoticons` ADD `alttext` VARCHAR(15) NOT NULL;

 

/-----------------------------------------/

/Шаг 2: открываем sources/Admin/ad_settings.php:

/-----------------------------------------/

 

-----------------------------------------

После:

$db_string = $DB->compile_db_update_string( array( 'typed' => $IN['before'],

'image' => $IN['after'],

'clickable' => $IN['click'],

-----------------------------------------

-----------------------------------------

Добавляем:

'alttext' => $IN['alttext'],

-----------------------------------------

 

-----------------------------------------

Вместо:

$SKIN->td_header[] = array( "Код" , "40%" );

$SKIN->td_header[] = array( "Смайлик" , "40%" );

$SKIN->td_header[] = array( "+ Clickable" , "20%" );

-----------------------------------------

-----------------------------------------

Вставляем:

$SKIN->td_header[] = array( "Код" , "30%" );

$SKIN->td_header[] = array( "После" , "30%" );

$SKIN->td_header[] = array( "+ Clickable" , "20%" );

$SKIN->td_header[] = array( "Alt Text" , "20%" );

-----------------------------------------

 

-----------------------------------------

Вместо:

$SKIN->form_dropdown( 'click', array( 0 => array( 1, 'Да' ), 1 => array( 0, 'Нет' ) ), $r['clickable'] )

-----------------------------------------

-----------------------------------------

Вставляем:

$SKIN->form_dropdown( 'click', array( 0 => array( 1, 'Да' ), 1 => array( 0, 'Нет' ) ), $r['clickable'] ),

$SKIN->form_input('alttext', $r['alttext'] )

-----------------------------------------

 

-----------------------------------------

После:

$db_string = $DB->compile_db_insert_string( array( 'typed' => $IN['before'],

'image' => $IN['after'],

'clickable' => $IN['click'],

-----------------------------------------

-----------------------------------------

Добавляем:

'alttext' => $IN['alttext'],

-----------------------------------------

 

-----------------------------------------

Вместо:

$SKIN->td_header[] = array( "Код" , "30%" );

$SKIN->td_header[] = array( "Смайлик" , "30%" );

$SKIN->td_header[] = array( "+ Clickable" , "20%" );

$SKIN->td_header[] = array( "Редактировать" , "10%" );

$SKIN->td_header[] = array( "Удалить" , "10%" );

-----------------------------------------

-----------------------------------------

Вставляем:

$SKIN->td_header[] = array( "Код" , "20%" );

$SKIN->td_header[] = array( "Смайлик" , "20%" );

$SKIN->td_header[] = array( "+ Clickable" , "20%" );

$SKIN->td_header[] = array( "Alt Text" , "20%" );

$SKIN->td_header[] = array( "Редактировать" , "10%" );

$SKIN->td_header[] = array( "Удалить" , "10%" );

-----------------------------------------

 

-----------------------------------------

После:

$ADMIN->html .= $SKIN->add_td_row( array( stripslashes($r['typed']),

"<center><img src='$emo_url/{$r['image']}'></center>",

"<center>$click</center>",

-----------------------------------------

-----------------------------------------

Добавляем:

$r['alttext'],

-----------------------------------------

 

-----------------------------------------

Вместо:

$SKIN->td_header[] = array( "Код" , "40%" );

$SKIN->td_header[] = array( "Смайлик" , "40%" );

$SKIN->td_header[] = array( "+ Clickable" , "20%" );

-----------------------------------------

-----------------------------------------

Вставляем:

$SKIN->td_header[] = array( "Код" , "30%" );

$SKIN->td_header[] = array( "Смайлик" , "30%" );

$SKIN->td_header[] = array( "+ Clickable" , "20%" );

$SKIN->td_header[] = array( "Alt Text" , "20%" );

-----------------------------------------

 

-----------------------------------------

Вместо:

$SKIN->form_dropdown( 'click', array( 0 => array( 1, 'Да' ), 1 => array( 0, 'Нет' ) ) )

-----------------------------------------

-----------------------------------------

Вставляем:

$SKIN->form_dropdown( 'click', array( 0 => array( 1, 'Да' ), 1 => array( 0, 'Нет' ) ) ),

$SKIN->form_input('alttext')

-----------------------------------------

 

-----------------------------------------

Закрываем sources/Admin/ad_settings.php

-----------------------------------------

 

/-----------------------------------------/

/Шаг 3: открываем sources/Messenger.php:

/-----------------------------------------/

 

-----------------------------------------

Находим:

$smilies .= "<td><a onClick={$out_delim}java script:emoticon($in_delim".$elmo['typed']."$in_delim){$out_delim}><img src=\"".$ibforums->vars['EMOTICONS_URL']."/".$elmo['image']."\" alt='smile' border='0' /></a> </td>\n";

-----------------------------------------

-----------------------------------------

И меняем в ней alt='smile' на alt='".$elmo['alttext']."'

-----------------------------------------

 

-----------------------------------------

Закрываем sources/Messenger.php

-----------------------------------------

/-----------------------------------------/

/Шаг 4: Повторяем шаг 3 для sources/Post.php

/ sources/Topic.php

/ sources/Calendar.php:

/-----------------------------------------/

 

/-----------------------------------------/

/Шаг 5: открываем sources/misc/legends.php:

/-----------------------------------------/

 

Находим:

function show_emoticons()

 

---------------------------------------------

Меняем:

$DB->query("SELECT typed, image from ibf_emoticons");

на

$DB->query("SELECT typed, image, alttext from ibf_emoticons");

--------------------------------------------

 

-------------------------------------------

Меняем:

$this->output .= $this->html->emoticons_row( stripslashes($r['typed']), stripslashes($r['image']), $in_delim, $out_delim );

На

$this->output .= $this->html->emoticons_row( stripslashes($r['typed']), stripslashes($r['image']), stripslashes($r['alttext']), $in_delim, $out_delim );

-------------------------------------------

 

-----------------------------------------

Закрываем sources/misc/legends.php

-----------------------------------------

 

/-----------------------------------------/

/Шаг 6: открываем Skin/../skin_legends.php:

/-----------------------------------------/

 

--------------------------------------------

Вместо:

function emoticons_row($code, $image, $in="'", $out="'")

Вставляем:

function emoticons_row($code, $image, $alttext, $in="'", $out="'")

-------------------------------------------

 

-------------------------------------------

Вместо:

<td align='center' class='row2' valign='middle'><a href={$out}java script:add_smilie({$in}$code{$in}){$out}><img src='{$ibforums->vars['EMOTICONS_URL']}/$image' border='0' valign='absmiddle' alt='$image'></a></td>

Вставляем:

<td align='center' class='row2' valign='middle'><a href={$out}java script:add_smilie({$in}$code{$in}){$out}><img src='{$ibforums->vars['EMOTICONS_URL']}/$image' border='0' valign='absmiddle' alt='$alttext'></a></td>

-------------------------------------------

 

-----------------------------------------

Закрываем Skin/../skin_legends.php

-----------------------------------------

 

Это устраивает?

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

  • 0

Конечно, устраивает. Очень даже лихо все расписал. Теперь собрать бы тебе это все в файлик и сюда:

http://www.ibresource.ru/db/?pg=add

 

И будет готовый мод, за что тебе спасибо все скажут :D

 

Тему перенес в форум "Модификации в разработке".

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

  • 0
Скажите, как изменить размер всплывающего окна со смайликами? мне надо сделать, чтобы оно по умолчанию открывалось с большей шириной. где и что надо изменять?
Ссылка на комментарий
Поделиться на других сайтах

  • 0

skin_post.php и если установлена форма быстрого овета, то и skin_topic.php

 

window.open('index.{$ibforums->vars['php_ext']}?act=legends&CODE=emoticons&s={$ibforums->session_id}','Legends','width=250,height=500,resizable=yes,scrollbars=yes');

 

Изменяешь на нужное.

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

  • 0

Warning: main(./sources/Admin/admin_pages.php): failed to open stream: Permission denied in /home/isgoico/public_html/admin.php on line 179

Что это такое

на файлы каторые указаны в сообщение стойт 777

что не так?

и как исправить?

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

  • 0

после добавления новых смайликов случилась лажа - в IE, MyIE2 и т.п. все отображается нормально, а вот в Mozilla, Mozilla Firefox теперь не получается ни ответить, ни создать новое сообщение - пока подгружаются смайлики, эти браузеры вешаются и вылетают с ошибкой.

 

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

 

Русский Модифицированный IPB v1.2

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

  • 0

arigoda

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

в админке, когда добавляеш смайлики - в пункте Показивать на странице ответа (или итипа того) вибирай "нет"

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

  • 0
незнаю у меня мозилла 1.6 рус и со смайликами нормально, и не падает мозилла
Ссылка на комментарий
Поделиться на других сайтах

  • 0

ret, ну елы... ну я уже по-всякому пробовал...

убираю все загруженные отсюда смайлы- ок... а какой именно не нравится Мозилле - не понимаю...

 

к слову.... здесь, на IBRes, под Мозиллой работается нормально...

 

что ж такого я натворил, елки...

 

:);):D

 

---------------------------

 

в обещем, так... пришлось снести частично те смайлы...

закачал сейчас отсюда новые и частично оставил те. сейчас проблемы нет, но в каком именно смайле проблема - лень выяснять.

из полезной инфы могу только сообщить, что скачиваемый архив был в ЗИПе, скачивал откуда-то отсюда...

но вот последний набор, тодже размещенный здесь, ужатый в РАРе, - нормальный вроде.

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

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

  • 0

я загружаю смайлик..

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

а мне пишется

 

Неудачная загрузка

 

что делать..?

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

  • 0
закачивай через фтп в папку ... вроде html/emoticons, а в админке назначай код к смайликам :D все ..
Ссылка на комментарий
Поделиться на других сайтах

  • 0

самое смешное что у меня права стоят нормальные , да только через админку *.tar не видно ;) смайлики правдо качаються, но *.tar (скины, языки и прочее) не видяться..

Поэтому как нормальный русский сделал все по-другому :D

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

  • 0

Поставить chmod 777 на папку html/emoticons

я делал черезз фтп..

о хотелось нормальным образом..

ИМХО это и есть нормальный способ! :D

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

  • 0

После того как кликаю на Показать всё появляется окно с ошибкой.

 

 

Fatal error: Call to undefined function: pop_up_window() in /usr/home/kislovod/public_html/Invision/sources/functions.php on line 2318

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

  • 0

Народ, поделитесь смайликами/ком в форме Ленина, срочно нужно!

а вообще, есть идея создать пакет смайликов в форме политич деятелей там, сталина, хрущева, итп ток рисовать я не оч %)

мож кто вазмется ?

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

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

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

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

Зарузка...

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

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.