Бесплатный форум: форум поддержки
Добро пожаловать на форум поддержки сервиса Forum2x2 !

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


С нашей помощью вы можете создать форум,
похожий на этот!
Мы в социальных сетях

Правила форума

для обязательного прочтения!


Внимание! Важная информация для РЕГИСТРАЦИИ на форуме:

Пожалуйста, не регистрируйтесь на этом форуме с электронными адресами mail.ru, bk.ru, inbox.ru, list.ru - вам может не прийти письмо со ссылкой активации!
Вы можете воспользоваться адресами типа yandex.ru, rambler.ru, gmail.com и т.д.
Интересные решения
Быстрый переход к сервисам: j-p-g.net Видео фоторедактор Транслит

Смена аватара в сообщении

Предыдущая тема Следующая тема Перейти вниз

Смена аватара в сообщении

Сообщение автор Моргана Анубис в Чт 27 Авг - 1:29

В некоторых форумах видела такую фишку – в окне сообщения они ставят ссылку на картинку, с двух сторон выделяют в код (ava) и при отправке меняется аватар написавшего. Следующим сообщением если ничего не делать, то будет та ава, которая залита в профиль.

Возможно ли такое сделать у нас?

Моргана Анубис
 

Женщина

Сообщения : 272
Возраст : 29
Регистрация : 2011-08-31
Благодарности : 3

Без предупреждений

http://misteria7.forum2x2.ru/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор Предвестница в Сб 29 Авг - 1:20

Наверняка полезная функция для многих ролевых форумов. Не ручаюсь за работоспособность, но у нас со второго пинка завелось. Только для phpbb3. Если что-то не будет работать, пишите в этой же теме — постараемся исправить.

Написала за пару часов такой вот код, вставлять в Администрирование → Модули → Управление JavaScript → Создать новый → отметить «в Темах» → вставить код ниже:
Код:
// Replace avatar with the picture in text [av=http://something.jpg]

$( document ).ready(function() {
   // Add users ID there, like u1 (administrator), u2255 (user 2255) etc
   var allowedUsers = [ "u30", "u31" ];
  
   $( "div.post" ).each(function() {
      // Check if user is valid
      var profileLink=$( this ).find( "div.postprofile" ).find( "a" ).first().attr( "href" );
      var profileID=profileLink.match(/u[0-9]*$/g);
          
      if ((profileID == null) || (jQuery.inArray( profileID[0], allowedUsers ) == -1))
         return; // Regex not found or not our user
          
      // Locate avatar in [av=http://something.png]
      var postText=$( this ).find( "div.content" ).html();
          
      var postContentsCodes = postText.match(/\[av=[^\]]*\]/gi);
      var avatarLink;
          
      if ( postContentsCodes == null)
         return; // Nothing to do, user did not used this functionality
          
      // Retrieve link for avatar
      avatarLink=postContentsCodes[postContentsCodes.length-1].slice(4,-1);
          
      // Clean up post text
      postText=postText.replace(/\[av=[^\]]*\]/g, "");
      $( this ).find( "div.content" ).html(postText);
          
      // Replace avatar
      $( this ).find( "div.postprofile" ).find( "img" ).first().attr( "src", avatarLink );
   });
});


Правда, потребуется ещё немного изменить вот эту строчку:
Код:
var allowedUsers = [ "u30", "u31" ];
Здесь вместо "u30", "u31" ввести номера пользователей, которым разрешено пользоваться данной возможностью форума. Для Вашего форума, скорее всего, будет вот так:
Код:
var allowedUsers = [ "u5" ];


Как пользоваться: в любом месте поста вставить следующий текст, заменив «http://link/to/picture.png» на ссылку на временный аватар:
Код:
[av=http://link/to/picture.png]
Разумеется, этого текста видно не будет. Правда, он появится, если у пользователя выключен JavaScript или если пользователь заходит с мобильной версии форума, так что будьте осторожны.




Упрощённая версия скрипта, работающая не только для «избранных», но вообще для всех пользователей форума:
Спойлер:

Код:
// Replace avatar with the picture in text [av=http://something.jpg]

$( document ).ready(function() {
   $( "div.post" ).each(function() {
      // Locate avatar in [av=http://something.png]
      var postText=$( this ).find( "div.content" ).html();
          
      var postContentsCodes = postText.match(/\[av=[^\]]*\]/gi);
      var avatarLink;
          
      if ( postContentsCodes == null)
         return; // Nothing to do, user did not used this functionality
          
      // Retrieve link for avatar
      avatarLink=postContentsCodes[postContentsCodes.length-1].slice(4,-1);
          
      // Clean up post text
      postText=postText.replace(/\[av=[^\]]*\]/g, "");
      $( this ).find( "div.content" ).html(postText);
          
      // Replace avatar
      $( this ).find( "div.postprofile" ).find( "img" ).first().attr( "src", avatarLink );
   });
});


Последний раз редактировалось: Предвестница (Пт 20 Ноя - 23:43), всего редактировалось 1 раз(а)

Предвестница
Новичок

Сообщения : 15
Возраст : 21
Регистрация : 2015-08-21
Благодарности : 5

Без предупреждений

http://area.forum2x2.ru/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор Моргана Анубис в Сб 29 Авг - 16:54

Все работает, спасибо! d_daisy

Моргана Анубис
 

Женщина

Сообщения : 272
Возраст : 29
Регистрация : 2011-08-31
Благодарности : 3

Без предупреждений

http://misteria7.forum2x2.ru/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор Предвестница в Сб 29 Авг - 17:31

Моргана Анубис, незачто!

Если у кого-то другого будут проблемы с установкой, пишите в эту тему — постараюсь ответить.

Предвестница
Новичок

Сообщения : 15
Возраст : 21
Регистрация : 2015-08-21
Благодарности : 5

Без предупреждений

http://area.forum2x2.ru/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор King of the Secret Forest в Чт 24 Сен - 2:23

Предвестница, приветствую.
Я рад, что Вы взялись сделать то, что многим приглянулось на других ресурсах.
И я вот даже взялся ставить Ваш код, но первый вызвал у меня глюк, а второй просто не работает. Можно ли что-то с этим сделать?
У меня phpbb3.
Заранее благодарю.

King of the Secret Forest
 

Сообщения : 40
Возраст : 27
Регистрация : 2015-06-18
Благодарности : 4

Без предупреждений

http://post-mortem.forumgrad.com/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор King of the Secret Forest в Пн 28 Сен - 1:14

Быть может, кто-нибудь еще знает, как можно решить этот вопрос. Я буду признателен любому за малейшую помощь или подсказку.

King of the Secret Forest
 

Сообщения : 40
Возраст : 27
Регистрация : 2015-06-18
Благодарности : 4

Без предупреждений

http://post-mortem.forumgrad.com/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор Предвестница в Ср 7 Окт - 22:52

King of the Secret Forest,

Доброго времени суток!
Простите, меня не было на форуме длительное время (две недели — шутка ли), однако сейчас я здесь и готова Вам помочь.

Я не спорю, что скрипт я не дорабатывала до конца. Ну да, работает у нас и ладно.
Однако мне бы поглядеть, как у Вас работает форум. Там сейчас написано, что «ведутся технические работы», и я не могу подсмотреть, как устроены сообщения.

Предвестница
Новичок

Сообщения : 15
Возраст : 21
Регистрация : 2015-08-21
Благодарности : 5

Без предупреждений

http://area.forum2x2.ru/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор King of the Secret Forest в Вс 18 Окт - 23:21

Предвестница,
Доброго времени суток.
Ничего страшного, я сам подолгу отсутствую порой, бывает.

При подключении скрипта или вообще? Да, я его не открываю, пока не закончу. Могу открыть только на то время, когда Вы реально можете посмотреть, но для этого мы оба должны быть онлайн. Надеюсь, Вы можете понять подобное. Я перфекционист, а потому вначале хочу довести до ума, прежде чем открою всем.

Надеюсь на Ваше понимание.
Всех благ.



King of the Secret Forest
 

Сообщения : 40
Возраст : 27
Регистрация : 2015-06-18
Благодарности : 4

Без предупреждений

http://post-mortem.forumgrad.com/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор Предвестница в Вт 20 Окт - 2:16

King of the Secret Forest, доброго времени суток. Да, я Вас поняла.
Скиньте, пожалуйста, в личные сообщения Ваши контактные данные. Мне подойдут Skype или Jabber — думаю, что-то из этого есть у всех.

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

Предвестница
Новичок

Сообщения : 15
Возраст : 21
Регистрация : 2015-08-21
Благодарности : 5

Без предупреждений

http://area.forum2x2.ru/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор King of the Secret Forest в Пт 20 Ноя - 22:57

Предвестница, моя Вам благодарность! Теперь мои форумчане смогут менять аватары так, как им заблагорассудится. Ну а я рад, что они будут рады.

King of the Secret Forest
 

Сообщения : 40
Возраст : 27
Регистрация : 2015-06-18
Благодарности : 4

Без предупреждений

http://post-mortem.forumgrad.com/

Вернуться к началу Перейти вниз

Re: Смена аватара в сообщении

Сообщение автор Предвестница в Пт 20 Ноя - 23:44

King of the Secret Forest, не за что!

Кто будет сталкиваться с той же проблемой, что скрипты не работают, убедитесь, что Вы не меняли соответствующих шаблонов. В случае, если шаблоны всё-таки изменялись, придётся слегка изменить скрипт.
Код:
$( this ).find( "div.postprofile" ).find( "img" ).first().attr( "src", avatarLink );
здесь div.user2 нужно будет заменить на div.something, где something — имя div-а, обрамляющего аватар.

Аналогично с верхней строкой в «стандартной» версии скрипта:
Код:
var profileLink=$( this ).find( "div.postprofile" ).find( "a" ).first().attr( "href" );
Здесь div.user2 нужно будет заменить на div.otherthing, где otherthing — имя div-а, обрамляющего ссылку на профиль пользователя.

Кажется, div.postprofile — то, что стоит по умолчанию.
Если что-то у кого-то будет не работать — обращайтесь, постараюсь помочь.

Предвестница
Новичок

Сообщения : 15
Возраст : 21
Регистрация : 2015-08-21
Благодарности : 5

Без предупреждений

http://area.forum2x2.ru/

Вернуться к началу Перейти вниз

Предыдущая тема Следующая тема Вернуться к началу

- Похожие темы

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения