forum.coppermine-gallery.net
Support => Русский (Russian) => Language Specific Support => cpg1.4.x FAQ (Russian) => Topic started by: LeaX on November 17, 2007, 04:27:32 pm
-
Извиняюсь дико... но не нашла толком решения. :-\
Ну стандартные я заменила, но в smiles.inc.php речь идет о двух table со смайликами, а выводиться только одна полосочка.
Как сделать рабочей и вторую?
-
Извиняюсь дико... но не нашла толком решения. :-\
Ну стандартные я заменила, но в smiles.inc.php речь идет о двух table со смайликами, а выводиться только одна полосочка.
Как сделать рабочей и вторую?
Вы сначала должны определиться, что Вы вообще получить хотите, а потом уже пытаться что-то изменять.
В файле smiles.inc.php есть две фунции с набором смайликов:
- function get_smilies_table1()
- function get_smilies_table2()
Для вывода строки со смайлами для вставки используется вторая таблица смайликов, т.е. функция get_smilies_table2()
Используется она ниже в функции
function generate_smilies($form = 'post', $field = 'message')
Смотрим на строку:
$smilies = get_smilies_table2();
-------------------------------------
Для отображения смайлов же используется же первая таблица смайликов, т.е. функция get_smilies_table1()
Используется она ниже в функции
function process_smilies($message, $url_prefix = '')
Смотрим на строку:
$smilies = get_smilies_table1();
-------------------------------------
Поэтому, если Вы хотите добавить новые смайлы для ввода (т.е. чтобы по ним можно было кликнуть при написании комментария), то добавляет новые смайлы в обе (первую и вторую) таблицы.
Если хотите, чтобы смайлы только обрабатывались/отображались (т.е. пользователь ввел слово :arrow: в комментарии, а после сохранения комментария такое слово будет отображаться как смайлик со стрелкой), то добавляете такие смайлы в первую таблицу.
-------------------------------------
А чтобы отображаться смайлы в две строки через определенное количество смайлов, это нужно переписывать функцию
function generate_smilies($form = 'post', $field = 'message')
Как переписать, в следующем сообщении...
-
Открываете файл:
themes/classic/theme.php
или
themes/ВАША_ТЕМА/theme.php
Смотрите, нет ли там функции:
- function get_smilies_table3()
- function theme_generate_smilies($smilies, $form)
Если нет, то добавляете кусок кода:
function get_smilies_table3()
{
global $lang_smilies_inc_php;
return array(
array(':lol:', 'icon_lol.gif', $lang_smilies_inc_php['Laughing']),
array(':-P', 'icon_razz.gif', $lang_smilies_inc_php['Razz']),
array(':-D', 'icon_biggrin.gif', $lang_smilies_inc_php['Very Happy']),
array(':-)', 'icon_smile.gif', $lang_smilies_inc_php['Smile']),
array(':-|', 'icon_neutral.gif', $lang_smilies_inc_php['Neutral']),
array('<br />', '', ''),
array(':-(', 'icon_sad.gif', $lang_smilies_inc_php['Sad']),
array(':cry:', 'icon_cry.gif', $lang_smilies_inc_php['Crying or Very sad']),
array('8-)', 'icon_cool.gif', $lang_smilies_inc_php['Cool']),
array(':-o', 'icon_surprised.gif', $lang_smilies_inc_php['Surprised']),
array(':-?', 'icon_confused.gif', $lang_smilies_inc_php['Confused']),
array('<br />', '', ''),
array(':oops:', 'icon_redface.gif', $lang_smilies_inc_php['Embarassed']),
array(':shock:', 'icon_eek.gif', $lang_smilies_inc_php['Shocked']),
array(':-x', 'icon_mad.gif', $lang_smilies_inc_php['Mad']),
array(':roll:', 'icon_rolleyes.gif', $lang_smilies_inc_php['Rolling Eyes']),
array(';-)', 'icon_wink.gif', $lang_smilies_inc_php['Wink']),
array('<br />', '', ''),
array(':idea:', 'icon_idea.gif', $lang_smilies_inc_php['Idea']),
array(':!:', 'icon_exclaim.gif', $lang_smilies_inc_php['Exclamation']),
array(':?:', 'icon_question.gif', $lang_smilies_inc_php['Question'])
);
}
function theme_generate_smilies($smilies, $form)
{
global $THEME_DIR;
$smilies = get_smilies_table3();
$paths = array($THEME_DIR.'/smiles/','images/smiles/');
$html = '<table width="100%" border="0" cellspacing="2" cellpadding="2">' . "\n" . ' <tr align="center" valign="middle">' . "\n";
foreach($smilies as $smiley) {
$smile_path = (file_exists($paths[0].$smiley[1]))?($paths[0]):($paths[1]);
$caption = $smiley[2] . " " . $smiley[0];
if ( $smiley[0] == "<br />" OR $smiley[0] == "<br>" )
{
$html .= ' </tr><tr align="center" valign="middle">' . "\n";
}
else
{
$html .= ' <td width="5%"><img src="images/smiles/' . $smiley[1] . '" alt="' . $caption . '" width="15" height="15" border="0" style="cursor:pointer;" title="' . $caption . '" onclick="javascript:emoticon_' . $form . '(\'' . $smiley[0] . '\')" /></td>' . "\n";
}
}
$html .= ' </tr>' . "\n" . '</table>' . "\n";
return $html;
}
Разбиение смайлов на строчки осуществляется с помощью строки:
array('<br />', '', ''),
в функции (смотрите в код выше):
function get_smilies_table3()
После какого смайла вставили эту строку, после него и будет начинаться новая строка.
Строку можно вставлять неограниченное количество раз.
-
если Вы хотите добавить новые смайлы для ввода (т.е. чтобы по ним можно было кликнуть при написании комментария), то добавляет новые смайлы в обе (первую и вторую) таблицы.
Спасибо за обстоятельный ответ, попробую добавить.
Я просто хотела побольше смайликов иметь и не посмотрела, что это один и те же смайлы перечислены. Думала там первая полоска, а дальше вторая ;D
Ну а после какого смайла вторая полоска начинаться будет - это может кому другому пригодится. :)
-
Странно, если взять и добавить в обе таблицы что-то типа:
array(':fool:', 'icon_fool.gif', $lang_smilies_inc_php['fool']),
то слово :fool: так и вылезет словом(((
Нужны какие-то спец значки что ли или это еще где-то дописывать надо?
-
Странно, если взять и добавить в обе таблицы что-то типа:
array(':fool:', 'icon_fool.gif', $lang_smilies_inc_php['fool']),
то слово :fool: так и вылезет словом(((
Нужны какие-то спец значки что ли или это еще где-то дописывать надо?
Нужно.
Во все языковые файлы, которые Вы используете в секцию:
// ------------------------------------------------------------------------- //
// File include/smilies.inc.php
// ------------------------------------------------------------------------- //
if (defined('SMILIES_PHP')) $lang_smilies_inc_php = array(
'Exclamation' => 'Exclamation',
'Question' => 'Question',
'Very Happy' => 'Very Happy',
'Smile' => 'Smile',
'Sad' => 'Sad',
'Surprised' => 'Surprised',
'Shocked' => 'Shocked',
'Confused' => 'Confused',
'Cool' => 'Cool',
'Laughing' => 'Laughing',
'Mad' => 'Mad',
'Razz' => 'Razz',
'Embarassed' => 'Embarassed',
'Crying or Very sad' => 'Crying or Very sad',
'Evil or Very Mad' => 'Evil or Very Mad',
'Twisted Evil' => 'Twisted Evil',
'Rolling Eyes' => 'Rolling Eyes',
'Wink' => 'Wink',
'Idea' => 'Idea',
'Arrow' => 'Arrow',
'Neutral' => 'Neutral',
'Mr. Green' => 'Mr. Green',
);
-
Народ, привет. Подскажите, пожалуйста, как в Coppermine Photo Gallery 1.3х добавить смайлики. В папку на ФТП залил, а в самой галереи не отображаются. В настройках ничего о смайлах не нашел.
А "Автодобавление" - это вообще уникальная вкладка: "Эта функция позволяет добавлять файлы в 'пакетном режиме'.
Выберите папку, куда Вы хотите добавить Ваши файлы". И всё. Ни кнопок, ни путей. Где выбрать - известно только создателю...
Ладно, вопрос о смайлах, извиняюсь.
-
http://forum.coppermine-gallery.net/index.php/topic,48395.0.html
-
http://forum.coppermine-gallery.net/index.php/topic,48395.0.html
Вероятно там ответ. Но как по ссылке увидеть русский текст?
-
Поставить в настройках браузера Кодировка- Кирилица 1251
-
Страшно. Очень. Народ, кто-нибудь добавил?
Ничего не нашел описанного выше. Вообще ничего. Такое впечатление, что мою версию движка писал, мягко сказать, человек очень уставший...
Порой такое там накручено, что думаешь, как же в голову такое пришло...
Я так понял, что пусть мои сидят без смайликов, чем я буду почти по одному их прописывать. А главное, под них базу надо подготовить. Как каждая тема эти смайлы тянет из совершенно другой папки - не понимаю.
Может под них окно какое сделать и оставить задумку "сценариста" движка с ним самим? То есть мод какой-нибудь поставить... Ну, попроще, чем "заводское".
Может кто реализовывал, поделитесь, пожалуйста.
Спасибо.
-
Вероятно там ответ. Но как по ссылке увидеть русский текст?
Можно тут почитать -> http://forum.coppermine-gallery.net/index.php/topic,37805.0.html
Народ, привет. Подскажите, пожалуйста, как в Coppermine Photo Gallery 1.3х добавить смайлики. В папку на ФТП залил, а в самой галереи не отображаются. В настройках ничего о смайлах не нашел.
1.3.x старая версия, смотреть что там и как, честно желания нет.
А для версии 1.4.x всё, в принципе, описано выше.
-
Я ушла с вашего движка на Photopost :P а там нет вот такой полоски с кликабельными смайликами, код которых при клике сам вставляется в textarea.
Скажите мне - этот механизм он в сам код вписан и с БД связан или это реально прописать руками сделать себе такое же на другом движке?
Не хочется ставить из-за смайликов громоздкий редактор, но и без смайликов плохо.
-
Я ушла с вашего движка на Photopost :P а там нет вот такой полоски с кликабельными смайликами, код которых при клике сам вставляется в textarea.
Скажите мне - этот механизм он в сам код вписан и с БД связан или это реально прописать руками сделать себе такое же на другом движке?
Не хочется ставить из-за смайликов громоздкий редактор, но и без смайликов плохо.
Что значит сам вписан или нет?
Смайлики - это часть механизма Coppermine.
Конкретно сам механизм вставки смайликов в какую-то строку не связан с базой данных, он скорее связан с JavaScript.
ЭЭЭэ... Руками можно всё сделать на php, поэтому отвечая прямо - реально сделать себе такой же на другом движке.
-
Руками можно всё сделать на php
Makc666 )) Звучит) :D
Ладно, все прощаюсь с вами, не буду вас больше досаждать. Там похоже как-то разберусь со смайликами уже, так что вопрос закрылся.
:-* спасибо за помощь и вообще за галерею кстати тоже.
Вот бы еще все, что здесь понаписано на форуме было сразу дефолтом включено в движок... ::)