1. Мы продолжаем публиковать интересные статьи на тему SocialEngine 4. Одна из статей посвящена правильному выбору сервера для вашей социальной сети, а другая содержит советы по увеличению производительности платформы. Также мы добавили большую статью о пользовательских уровнях. Ознакомиться со статьями вы можете в разделе Вопросы и Ответы SocialEngine 4.
  2. Вам кажется, что ваша версия SocialEngine 4, работает медленно?

    Голосуйте. Пишите свою версию системы, железо на чем работает и количество пользователей. Будем увеличивать производительность :-) Подробнее

  3. В связи с участившимися случаями попыток продажи пользователями форума различных "сборок" коммерческих социальных платформ, обычно основанных на SocialEngine 3, вводится новое правило для форума. Запрещается создание тем или размещение в уже созданных предложений о продаже или размещение ссылок на сайты, где происходит продажа "сборок". Пользователи, которые продолжат свою коммерческую деятельность в данном направлении, будут заблокированы. Подробнее.

Смайлы в статусе, замена

Discussion in 'Моды - Mods' started by Gooos, Dec 13, 2011.

Thread Status:
Not open for further replies.
  1. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Прикрутил смайлы к статусу, но вот проблемка, никак не могу сделать замену :имён: смайлов на их картинки при сохранении статуса. :stena:

    smile1.jpg smile2.jpg smile3.jpg smile4.jpg smile5.jpg

    Кто поможет, а?
  2. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Сдаётся мне, что копать надо тут misc_js.php

    но не уверен пока :rolleyes:
  3. iWalker Novice member


    Offline
    Message Count:
    86
    Likes Received:
    3
    My version of SE:
    3.15
    PHP:
    $status $owner->user_info['user_status'];
    $status str_replace(array(':smile:',':baffled:',':biggrin:',':confused:',':cool:',':dull:',':eek:',':frown:',':growl:',':mad:',':nerd:',':no:',':oo:',':redface:',':rofl:',':rolleyes:',':sad:',':sorry:',':tongue:',':wink:',':yes:',':good:',':bad:',':angel:',':winking:',':tease:',':abrupt:',':neigh:',':hesitate:',':surprise:',':cry:',':nosound:',':force:',':fool:',':xm:',':jokingly:',':diablo:',':meloman:',':nausea:',':tired:',':stop:',':rose:',':thumbsup:',':inlove:',':bomba:',':help:',':adrupt:',':dizziness:',':ok:',':wassup:',':ksorry:',':bravo:',':krolf:',':pardon:',':kno:',':crazy:',':dontknow:',':dance:',':yahoo:',':hi:',':bye:',':kyes:',':kwink:',':wall:',':write:',':scratch:','=)',':)','))'), array('<img src="./images/smilies_new/smile.gif" alt="smile" />','<img src="./images/smilies_new/baffled.gif" alt="baffled" />','<img src="./images/smilies_new/biggrin.gif" alt="biggrin" />','<img src="./images/smilies_new/confused.gif" alt="confused" />','<img src="./images/smilies_new/cool.gif" alt="cool" />','<img src="./images/smilies_new/dull.gif" alt="dull" />','<img src="./images/smilies_new/eek.gif" alt="eek" />','<img src="./images/smilies_new/frown.gif" alt="frown" />','<img src="./images/smilies_new/growl.gif" alt="growl" />','<img src="./images/smilies_new/mad.gif" alt="mad" />','<img src="./images/smilies_new/nerd.gif" alt="nerd" />','<img src="./images/smilies_new/no.gif" alt="no" />','<img src="./images/smilies_new/oo.gif" alt="oo" />','<img src="./images/smilies_new/redface.gif" alt="redface" />','<img src="./images/smilies_new/rofl.gif" alt="rofl" />','<img src="./images/smilies_new/rolleyes.gif" alt="rolleyes" />','<img src="./images/smilies_new/sad.gif" alt="sad" />','<img src="./images/smilies_new/sorry.gif" alt="sorry" />','<img src="./images/smilies_new/tongue.gif" alt="tongue" />','<img src="./images/smilies_new/wink.gif" alt="wink" />','<img src="./images/smilies_new/yes.gif" alt="yes" />','<img src="./images/smilies_new/good.gif" alt=":good:" />','<img src="./images/smilies_new/bad.gif" alt=":bad:" />','<img src="./images/smilies_new/angel.gif" alt=":angel:" />','<img src="./images/smilies_new/winking.gif" alt=":winking:" />','<img src="./images/smilies_new/tease.gif" alt=":tease:" />','<img src="./images/smilies_new/abrupt.gif" alt=":abrupt:" />','<img src="./images/smilies_new/neigh.gif" alt=":neigh:" />','<img src="./images/smilies_new/hesitate.gif" alt=":hesitate:" />','<img src="./images/smilies_new/surprise.gif" alt=":surprise:" />','<img src="./images/smilies_new/cry.gif" alt=":cry:" />','<img src="./images/smilies_new/nosound.gif" alt=":nosound:" />','<img src="./images/smilies_new/force.gif" alt=":force:" />','<img src="./images/smilies_new/fool.gif" alt=":fool:" />','<img src="./images/smilies_new/xm.gif" alt=":xm:" />','<img src="./images/smilies_new/jokingly.gif" alt=":jokingly:" />','<img src="./images/smilies_new/diablo.gif" alt=":diablo:" />','<img src="./images/smilies_new/meloman.gif" alt=":meloman:" />','<img src="./images/smilies_new/nausea.gif" alt=":nausea:" />','<img src="./images/smilies_new/tired.gif" alt=":tired:" />','<img src="./images/smilies_new/stop.gif" alt=":stop:" />','<img src="./images/smilies_new/rose.gif" alt=":rose:" />','<img src="./images/smilies_new/thumbsup.gif" alt=":thumbsup:" />','<img src="./images/smilies_new/inlove.gif" alt=":inlove:" />','<img src="./images/smilies_new/bomba.gif" alt=":bomba:" />','<img src="./images/smilies_new/help.gif" alt=":help:" />','<img src="./images/smilies_new/adrupt.gif" alt=":adrupt:" />','<img src="./images/smilies_new/dizziness.gif" alt=":dizziness:" />','<img src="./images/smilies_new/ok.gif" alt=":ok:" />','<img src="./images/smilies_new/wassup.gif" alt=":wassup:" />','<img src="./images/smilies_new/ksorry.gif" alt=":ksorry:" />','<img src="./images/smilies_new/bravo.gif" alt=":bravo:" />','<img src="./images/smilies_new/krolf.gif" alt=":krolf:" />','<img src="./images/smilies_new/pardon.gif" alt=":pardon:" />','<img src="./images/smilies_new/kno.gif" alt=":kno:" />','<img src="./images/smilies_new/crazy.gif" alt=":crazy:" />','<img src="./images/smilies_new/dontknow.gif" alt=":dontknow:" />','<img src="./images/smilies_new/dance.gif" alt=":dance:" />','<img src="./images/smilies_new/yahoo.gif" alt=":yahoo:" />','<img src="./images/smilies_new/hi.gif" alt=":hi:" />','<img src="./images/smilies_new/bye.gif" alt=":bye:" />','<img src="./images/smilies_new/kyes.gif" alt=":kyes:" />','<img src="./images/smilies_new/kwink.gif" alt=":kwink:" />','<img src="./images/smilies_new/wall.gif" alt=":wall:" />','<img src="./images/smilies_new/write.gif" alt=":write:" />','<img src="./images/smilies_new/scratch.gif" alt=":scratch:" />','<img src="./images/smilies_new/good.gif" alt=":good:" />','<img src="./images/smilies_new/good.gif" alt=":good:" />','<img src="./images/smilies_new/good.gif" alt=":good:" />',),$status); 
    $smarty->assign('status'$status);
    И меняешь в профиле $owner->user_info.user_status на $status.
    P.S. Не проверял, но должно работать.
  4. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    эх, не работает, ноль эмоций...



    ---------- Сообщение добавлено в 15:51 ---------- Предыдущее сообщение было в 14:02 ----------

    В общем разобрался, всё заработало, тестирую, пока не буду выкладывать.

    sm1.jpg sm2.jpg sm3.jpg
    Wen likes this.
  5. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Во время тестирования возникла проблема с обрезкой статуса по 100-й букве.
    Режет именно в блоках на юзер_хоум и в профиле, после перезагрузки страницы.
    Если в конце обрезан смайл <img src=" или типа того, то последствия для разметки страницы не предсказуемы.

    ---------- Сообщение добавлено в 03:45 ---------- Предыдущее сообщение было в 03:38 ----------

    Длинные слова без пробелов теперь не страшны, хоть 1000000 букв подряд.

    ---------- Сообщение добавлено в 04:41 ---------- Предыдущее сообщение было в 04:17 ----------

    В общем сейчас у меня в БД пишется урл картинки смайла, а надо наоборот, что-бы писалось :имя:, а при вставке текста в шаблон заменялось это :имя: на картинку или всё-таки придётся победить обрезку по 100-ой букве.

    ---------- Сообщение добавлено в 05:15 ---------- Предыдущее сообщение было в 04:41 ----------

    Получилась пока аякс замена при смене статуса. После обновления страницы видим :имена:, в ленте активности тоже :имена:, хотя такие-же смайлы из той-же таблицы БД подменяются нормально.
    В общем надо из БД таблица se_users брать статус и на лету менять :имена: на картинки, и разобраться с лентой активности.

    ---------- Сообщение добавлено в 05:39 ---------- Предыдущее сообщение было в 05:15 ----------

    Вот так выглядит коммент в профиле и статус в БД se_actions
    PHP:

    //коммент в профиле (кстати при чём тут "Без названия")
    a:8:{i:0;s:5:"Gooos";i:1;s:5:"Gooos";i:2;s:5:"Gooos";i:3;s:5:"Gooos";i:4;s:8:" :unknw:";i:5;s:1:"1";i:6;s:23:"Без названия";i:7;s:1:"1";}
    //статус
    a:3:{i:0;s:5:"Gooos";i:1;s:5:"Gooos";i:2;s:8:" :unknw:";}
    У коммента :unknw: в ленте подменяется - у статуса нет, что за хня :stena:
  6. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Кто подскажет что тут означает $action_vars, все её варианты?
    PHP:

            
    // SMILES REPLACING //
            
    $smilies_arr explode(","$asconf['smiles']);
            if (
    sizeof($action_vars)==8)
            {
                
    $action_text $action_vars[4];
                foreach(
    $smilies_arr as $smile)
                {
                            
    $smile trim($smile);
                            
    $find ':'.$smile.':';
                            
    $replace '<img alt="'.$smile.'" src="./templates/images/smiles/'.$smile.'.gif" border=0>';
                            
    $action_text eregi_replace("$find""$replace"$action_text);

                }
                
    $action_vars[4] = $action_text;
            }
              
    //END SMILE //
  7. Dj AngeL Active member


    Offline
    Message Count:
    282
    Likes Received:
    38
    My version of SE:
    3.20
    По моему максимальное или минимальное количество выводимых смайлов!
  8. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Это вообще не понятно что и зачем, без этого тоже всё работает:
    PHP:

            
    // SMILES REPLACING //
            
    $smilies_arr explode(","$asconf['smiles']);
           
    /* if (sizeof($action_vars)==8)
            {*/
                
    $action_text $action_vars[4];
                foreach(
    $smilies_arr as $smile)
                {
                            
    $smile trim($smile);
                            
    $find ':'.$smile.':';
                            
    $replace '<img alt="'.$smile.'" src="./templates/images/smiles/'.$smile.'.gif" border=0>';
                            
    $action_text eregi_replace("$find""$replace"$action_text);

                }
                
    $action_vars[4] = $action_text;
            
    /*}*/
              //END SMILE // 

    P.S: я смотрю тут все такие-же кодеры как я :D или никому не интересны смайлики в статусе :question:

    ---------- Сообщение добавлено в 10:46 ---------- Предыдущее сообщение было в 06:53 ----------

    В общем в ленте активности сделал, осталось в блоках статуса на юзер_хоум и в профиле.
    В БД теперь пишется не урл картинки, а :имя:, на лету подменяется картинками.

    ---------- Сообщение добавлено в 14:08 ---------- Предыдущее сообщение было в 10:46 ----------

    Почему переменная $status вставляется, а :имена: не подменяются картинками, что тут не так?
  9. Dj AngeL Active member


    Offline
    Message Count:
    282
    Likes Received:
    38
    My version of SE:
    3.20
    Я так понимаю, что переменную он видит, но не понимает что на что заменить, т. е. не видит какая переменная к какой картинке!
  10. Gooos Thread starter абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Всё, разобрался, всё работает, тестирую. :)

    ---------- Сообщение добавлено в 00:47 ---------- Предыдущее сообщение было в 00:40 ----------

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

    ---------- Сообщение добавлено в 02:57 ---------- Предыдущее сообщение было в 02:35 ----------

    Вот тут надо в этой переменной менять на лету :имена: на картинки средствами яваскрипта, а то он возвращает со страницы, подгруженные аяксом из БД, данные без замены, как есть.
    PHP:

                  
    <script type="text/javascript">
                  <!--
                  
    SocialEngine.Viewer.user_status '{/literal}{$user->user_info.user_status}{literal}';
                  
    //-->
                  
    </script>
    Я так и не смог победить вывод не более 100 знаков в блоках статусов на юзер_хоум и в профиле. Кто в курсе, где инициируется эта обрезка?
Thread Status:
Not open for further replies.

Share This Page

All rights reserved SocEngine.ru ©