avatar_TOM

Копирование имени пользователя в ответ

Автор TOM, 26 Апр. 2013 в 23:28

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

TOM

Иногда возникает необходимость обратиться к конкретному пользователю, вставив его ник в ответ. Это иногда может избавить от ненужного цитирования. И обнаружил, что это жутко неудобно, нужно делать много излишних действий.
Например, так:
ЦитироватьДавно хотел написать дополнение, чтобы вместо [ b-b ] использовать отдельный тег для выделения имён пользователей.
Оказалось, такое уже есть. Лёгкие пару движений напильником, и оно выглядит как мне хочется
В редакторе сообщений добавилась кнопка .
Выглядит это следующим образом:


Код: [Выделить]
[user]zap[/user] _claw
se
andreym

Ынджой энд хэвфан
На некоторых фотумах сделано намного проще. Нажимаешь на ник пользователя, открывается окно ответа и туда уже скопировано выделенное имя пользователя (на этом форуме открывается профиль пользователя). А для просмотра профиля пользователя сделана отдельная кнопочка. Почему предлагаю именно так? Просмотр профиля требуется во много раз реже, чем вставка имени в сообщение. Думаю, что не мне одному.

qxov


Slider

Можно рядом со ссылкой "цитата" сделать ссылку "ответ", и это будет ответ на конкретное сообщение, чтобы при нажатии на эту ссылку и открывалось окно ответа и копировалось имя участника которому отвечаешь.
Eltreco TT - компактность и комфорт. 70 в + MaxController + МАС 6Т = 55 км/ч. Электросамокат Е-Twow S2 Booster plus.

TOM

#3
Тоже как вариант. Но иногда просто требуется вставить имя в середине уже написанного в открытом окне сообшения. И логичнее при этом нажать на ник пользователя, чем на кнопку "ответ". IMHO.
P.S. Для тех, кто не сразу заметил (и я в том числе ;-D) - кнопочка "просмотр профиля" уже имеется.

zap

Во время ответа внизу имеется список последних нескольких сообщений.
В заголовке каждого есть строчка типа "Автор: Вася". Причём "Вася" это просто текст.
Вот было бы неплохо, если бы при нажатии на это "Вася" в окно набора сообщения вставлялось бы [user]Вася[/user].
Если бы кто-нибудь написал такой плагин для SMF, я бы с удовольствием его установил.
Самому на это времени нет, да и далёк я от веб-программирования.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

А какая версия движка форума сейчас?

Тунгус

Мне нравится, когда при нажатии на нак пользователя его имя появляется в ответе уже обрамленное тегом, так что тут я солидарен с TOM.
Большой Брат видит тебя!

Есть такие решения, после принятия которых, тараканы в голове аплодируют стоя!

Мой проект.

TOM

#7
[b-b]zap[/b-b] вот один из вариантов решения
http://blogprovsio.ru/forum/15-31-1
А здесь вроде бы обсуждалось конкретно для SMF:
http://www.simplemachines.ru/index.php?topic=88.0

zap

Все эти варианты работают для окна быстрого ответа.
У нас на форуме оно не используется.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

-Владимир-

Сейчас мотор eZee 300 ( или МАС 10т) . Акб 20s lipo 10 Ач.  Максимальная скорость , на полностью заряженном АКБ, без внешних воздействий 70 км/ч. Пробег при тапке в пол около 15 км.  Кому интересно вэлкам https://www.strava.com/athlete/training#_=_

zap

#10
Сделал пока в форме полного ответа, все никнэймы под формой ввода сообщения являются активными, если на них ткнуть, в сообщение вставляется ссылка на пользователя.

ДОП: Также сделал для формы быстрого ответа. Если форма быстрого ответа выключена, щелчок на имени пользователя работает ровно так же, как и раньше.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

Попробовал
Опера 12.15 При нажатии на ник пользователя открылось окно быстрого ответа, в окне текст user]Ingo[/user],
Мозилла 19.0.2 то же самое
Интернет Эксплорер 9.0 при нажатии на ник теперь никаких действий, раньше открывался профиль.

zap

firefox 17.0.1 - всё работает нормально, в форму быстрого ответа вставляется [ user ]имя_пользователя [ /user ].
opera 12.12 - всё работает нормально.
internet explorer - must die.
Что такое Ingo, у нас есть такой пользователь?
Почему у Вас отсутствует первая открывающая квадратная скобка?
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

#13
[user]zap[/user] Первая скобка там тоже есть, я её не копировал, чтобы был виден текст вставки. Пробовал в первой попавшейся теме, пользователь действительно Инго. Настройки своего профиля при тестировании на разных браузерах не менял, оставил всё как есть.
Так что в Мозилле и Опере всё работает, большое спасибо.
На одном из компьютеров я пользуюсь Интернет Эксплорером, млжет есть варианты исправить баг?
П.С. В эсплорере при редактировании сообщения вставка работает, если нажать на ник пользователя после слова Автор:

master_255

[user]zap[/user] у вас ошибка в коде.
href="javascript.void(0)" из за этого опера считает это ссылкой и переходит на несуществующую страницу https://electrotransport.ru/javascript.void(0)

нужно href="javascript:void(0)" - двоеточие вместо точки
или href="#"

-Владимир-

[user]zap[/user],
Спасибо за заботу о качестве форума!
Сейчас мотор eZee 300 ( или МАС 10т) . Акб 20s lipo 10 Ач.  Максимальная скорость , на полностью заряженном АКБ, без внешних воздействий 70 км/ч. Пробег при тапке в пол около 15 км.  Кому интересно вэлкам https://www.strava.com/athlete/training#_=_

VasiliSk

в быстром ответе всегда вставляет имя в конец сообщения, а можно чтобы вставляло в позицию курсора?

TOM

[user]zap[/user] было бы неплохо, чтобы после ника автоматически ставилась запятая.

master_255

[user]VasiliSk[/user], а сейчас так и работает везде кроме оперы.

[user]zap[/user], предлагаю исправление.
сейчас функция выглядит так

function nicknameToReply(text)
{
if ((typeof(oQuickReply) != 'undefined') && (oQuickReply.bCollapsed)) oQuickReply.swap();
window.location.hash = '#quickreply';
var obj = document.postmodify.message;
obj.focus();
if (document.selection) { // IE
var s = document.selection.createRange();
s.text = text;
s.select();
}
else if (obj.selectionStart) { // Mozilla
var s = obj.selectionStart,
e = obj.selectionEnd;
obj.value = obj.value.substring(0, s) + text + obj.value.substr(e);
obj.selectionStart = s + text.length;
obj.selectionEnd = s + text.length;
}
else {
obj.value += text;
}
}


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

function nicknameToReply(text)
{
if ((typeof(oQuickReply) != 'undefined') && (oQuickReply.bCollapsed)) oQuickReply.swap();
window.location.hash = '#quickreply';
var obj = document.postmodify.message;
obj.focus();
           replaceText(text, obj);
}

zap

Цитата: master_255 от 29 Апр. 2013 в 12:43
[user]zap[/user] у вас ошибка в коде.
href="javascript.void(0)" из за этого опера считает это ссылкой и переходит на несуществующую страницу https://electrotransport.ru/javascript.void(0)

нужно href="javascript:void(0)" - двоеточие вместо точки
или href="#"
О, спасибо. Я победил переход по ссылке вставкой "return false" в конце onclick.
Переходит, видимо, только в IE? В остальных браузерах всё нормально работает, несмотря на синтаксическую ошибку.
Во всяком случае, исправил.
За новый вариант nicknameToReply() тоже спасибо, заменил, для firefox ничего вроде не изменилось, остаётся надеяться, что это исправит багу в IE. "Мопед не мой, я только объяву разместил", в смысле функцию писал аффтар мода nickname-to-reply.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

zap

Цитата: TOM от 29 Апр. 2013 в 14:53
[user]zap[/user] было бы неплохо, чтобы после ника автоматически ставилась запятая.
Было бы неплохо указывать точнее место проблемы. В форме быстрого ответа и так вставлялось с запятой, её не было только в форме полного ответа.
Исправил.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Merakules

на хроме тыкая на ник ничего не происходит, всплывает альт и все :(

Buh

Сделайте, пожалуйста, опциональной вставку ника в форму для быстрого ответа. Раньше, нажав по нику пользователя, можно было сразу перейти к его профилю. Сейчас вместо этого его ник вставляется в ответ. Не хочется менять старые привычки.
Не забывайте благодарить форумчан, оказавших Вам помощь, повышая им [b-b]Репутацию[/b-b] , а если это невозможно, то нажатием кнопки [b-b]"Спасибо!"[/b-b].

Merakules

[user]Buh[/user], внизу кнопка есть такая тыкай и все будет как положено

Merakules

Цитата: Merakules от 29 Апр. 2013 в 18:07
на хроме тыкая на ник ничего не происходит, всплывает альт и все :(
заработало, даже лучше чем было спасибо

Buh

Цитата: Merakules от 29 Апр. 2013 в 18:22
[user]Buh[/user], внизу кнопка есть такая тыкай и все будет как положено
Это я и сам догадался сделать. Но кнопка уж больно маленькая, прицеливаться приходится, а кликать по имени было удобней. Если есть возможность, сделайте чек-бокс в настройках пользователя. Пусть каждый сам решает, нужна ли ему эта новая возможность или нет.
Не забывайте благодарить форумчан, оказавших Вам помощь, повышая им [b-b]Репутацию[/b-b] , а если это невозможно, то нажатием кнопки [b-b]"Спасибо!"[/b-b].

zap

Цитата: Buh от 29 Апр. 2013 в 18:42
Это я и сам догадался сделать. Но кнопка уж больно маленькая, прицеливаться приходится, а кликать по имени было удобней. Если есть возможность, сделайте чек-бокс в настройках пользователя. Пусть каждый сам решает, нужна ли ему эта новая возможность или нет.
Отключите форму быстрого ответа, тогда будет как раньше.
Делать опцию не буду, тогда уж сделаю голосование и оставлю так, как решит большинство.
А привычки периодически менять даже полезно... иначе зачахнете весь, сгниёте ;-)
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Buh

#27
"Не стоит прогибаться под изменчивый мир. Пусть лучше он прогнется под нас".
Не забывайте благодарить форумчан, оказавших Вам помощь, повышая им [b-b]Репутацию[/b-b] , а если это невозможно, то нажатием кнопки [b-b]"Спасибо!"[/b-b].

TOM

#28
[user]zap[/user], запятая в форме полного ответа добавилась, спасибо.
В IE 9.0, если навести курсор на ник, появляется всплывающая подсказка "Вставить ник в форму быстрого ответа", но при нажатии на ник по-прежнему ничего не происходит. Форма быстрого ответа включена, по умолчанию свернута.

zap

А если форму развернуть?
В моей операционной системе IE отсутствует как класс. Поэтому не могу отладить.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

[user]zap[/user], включил развернутую форму быстрого ответа, ники пользователей поменяли цвет с черного на фиолетовый, при нажатии на ник теперь всё работает. Ну что ж, меня вполне устраивает такое решение, спасибо. Думаю, и другим участникам форума будет полезно знать эту особенность для IE9.0 и, возможно, других версий.

VasiliSk

[user]master_255[/user], сейчас точно все работает как надо.  :wow:

zap

Хм, запустил Windows в виртуальной машине, форму быстрого ответа включил свёрнутую.
Всё работает нормально, IE 6.0.
Сколько лет прошло, одно неизменно: в отличие от других разработчиков Микрософт со временем не убирает баги, а добавляет...
Поставил качаться 8й (9й на XP уже не даёт установить), посмотрим...
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

[user]zap[/user], проверил на другой машине с ХР, IE8.0.
В обоих вариантах быстрого ответа и свернутом, и развернутом всё работает правильно.
Похоже, эта проблема появляется только в свернутой форме быстрого ответа при работе в девятой версии IE (Win 7 Ultimate)

master_255

Цитата: TOM от 30 Апр. 2013 в 00:12
ники пользователей поменяли цвет с черного на фиолетовый

Попробуте очистить кеш, если ники черные у вас скрипт из кэша грузился, без нужной функции.

TOM

[user]master_255[/user], очистил кэш и историю браузера, включил свернутую форму быстрого ответа, всё работает. Похоже, что браузер частично пользовался старыми скриптами.
Ещё один баг - в окно быстрого ответа ник копируется в начало сообщения независимо от положения курсора. При редактировании сообщения ник вставляется в текущую позицию курсора.

master_255

Да IE просто ломает мозг.

[user]zap[/user],
Надо в форму быстрого ответа добавить события
onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onchange="storeCaret(this);"

то есть заменить

<textarea cols="75" rows="7" style="width: 100%; height: 100px;" name="message" tabindex="1" ></textarea>

на

<textarea cols="75" rows="7" style="width: 100%; height: 100px;" name="message" tabindex="1" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onchange="storeCaret(this);"></textarea>

zap

[user]master_255[/user], ага, понял, аналогично окну полного редактора. Добавил, теперь в IE, возможно, будет вставляться в правильную позицию.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Slider

По нажатию на имя автора ссылка вставляется в ответ, но ведёт непонятно куда. Нельзя ли сделать так, чтобы она ссылалась на профиль пользователя?
Eltreco TT - компактность и комфорт. 70 в + MaxController + МАС 6Т = 55 км/ч. Электросамокат Е-Twow S2 Booster plus.

zap

Что значит непонятно куда, по нажатию на имя пользователя открывается мелкое окошечко с общими данными из профиля пользователя. Если в открывшемся окошечке нажать на идентификатор пользователя, тогда уже открывается полный профиль.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Slider

Ну еще недавно окошко не показывалось а открывалось какая-то страничка форума. Может это какой-то глюк был...  :bn:
Eltreco TT - компактность и комфорт. 70 в + MaxController + МАС 6Т = 55 км/ч. Электросамокат Е-Twow S2 Booster plus.

zap

Глюки бывают после использования функции быстрого редактирования. В отредактированном сообщении перестают работать все скрипты - просмотрщик картинок, профиль пользователя, ещё что-то. Глюк не мой и его довольно сложно исправить. Достаточно перегрузить страницу и всё опять работает.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

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

zap

А в чём проблема поднять прицел чуть повыше аватары и щёлкнуть по нику пользователя?
Я, например, люблю просто так щёлкать по аватарке :)
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

TOM

Да нет, проблемы в этом не вижу. Просто появилась идея прицепить к аватару полезную функцию.

Ампервел

дело в том, что у некоторых просто отключены аватары.