Смена аватара в сообщении
Участников: 2
Страница 1 из 1
Смена аватара в сообщении
В некоторых форумах видела такую фишку – в окне сообщения они ставят ссылку на картинку, с двух сторон выделяют в код (ava) и при отправке меняется аватар написавшего. Следующим сообщением если ничего не делать, то будет та ава, которая залита в профиль.
Возможно ли такое сделать у нас?
Возможно ли такое сделать у нас?
Re: Смена аватара в сообщении
Наверняка полезная функция для многих ролевых форумов. Не ручаюсь за работоспособность, но у нас со второго пинка завелось. Только для phpbb3. Если что-то не будет работать, пишите в этой же теме — постараемся исправить.
Написала за пару часов такой вот код, вставлять в Администрирование → Модули → Управление JavaScript → Создать новый → отметить «в Темах» → вставить код ниже:
Правда, потребуется ещё немного изменить вот эту строчку:
Как пользоваться: в любом месте поста вставить следующий текст, заменив «http://link/to/picture.png» на ссылку на временный аватар:
Упрощённая версия скрипта, работающая не только для «избранных», но вообще для всех пользователей форума:
Написала за пару часов такой вот код, вставлять в Администрирование → Модули → Управление 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.user2" ).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.user2" ).find( "img" ).first().attr( "src", avatarLink );
});
});
Правда, потребуется ещё немного изменить вот эту строчку:
- Код:
var allowedUsers = [ "u30", "u31" ];
- Код:
var allowedUsers = [ "u5" ];
Как пользоваться: в любом месте поста вставить следующий текст, заменив «http://link/to/picture.png» на ссылку на временный аватар:
- Код:
[av=http://link/to/picture.png]
Упрощённая версия скрипта, работающая не только для «избранных», но вообще для всех пользователей форума:
- Спойлер:
- Код:
// 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.user2" ).find( "img" ).first().attr( "src", avatarLink );
});
});
Re: Смена аватара в сообщении
Моргана Анубис, незачто!
Если у кого-то другого будут проблемы с установкой, пишите в эту тему — постараюсь ответить.
Если у кого-то другого будут проблемы с установкой, пишите в эту тему — постараюсь ответить.
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|