Вынес сюда
отсюда, чтобы окончательно не засыпать оффтопами чужую ветку и избежать справедливого бана.
Это баг юзабилити. Правильно написанная программа никогда не позволит пользователю совершить ошибку.
Теорема. Для любого сколь угодно очевидного интерфейса найдётся дурак, который применит его неправильно. Доказательство оставляем читателю. Указание: использовать закон Мёрфи.
Ну давайте по порядку:
1. Очевидный интерфейс - не обязательно хороший интерфейс правильно написанной программы (из тех же законов Мерфи: у любой сложной проблемы есть простое,
очевидное и неправильное решение).
2. Если интерфейс позволяет пользователю сделать ошибку, это - неправильный интерфейс (по определению).
Если же отбросить шутки, то суровая реальность такова, что у программиста изначально больше контроля за окружением работающей программы, чем у конечного пользователя. И оправдывать лень и нежелание учиться (да, проектированию взаимодействия с пользователем тоже надо учиться, только в отличие от физики/химии/математики этому почти нигде не учат систематически) тем, что пользователь все равно сделает не так, это все равно, что вести себя как Мюллер в анекдоте про Штирлица ("Кто это, Мюллер?" - "Это русский разведчик Исаев" - "А почему вы его не арестуете?" - "А все равно отмажется, скажет, что апельсины приносил").
Из литературы по теме могу посоветовать книгу "Об интерфейсе" Алана Купера (3-е издание, первые два вышли еще в прошлом веке и сильно отличаются по содержанию). Там разбирается огромное количество примеров, начиная с того, как сделать очень простую программу плохо (то есть как не надо делать) и заканчивая тем, как сделать сложную программу хорошо (включая множество практических рекомендаций). Ну и еще можно почитать книгу "Психбольница в руках пациентов" того же автора - это как бы "научно популярное описание проблемы".
Если же вернуться к началу (багу, из-за которого возможно неправильное цитирование), то, с одной стороны, глупо ждать чего-то большего от бесплатного форумного движка, гораздо проще повесить на видном месте инструкцию для пользоватателей с крупной надписью "так делать нельзя, а то мы тебя поставим в угол", а с другой стороны, эта ошибка возникает в месте, где у программиста есть полный контроль над ситуацией:
1) можно определить место, где выделен текст
2) можно определить автора этого текста
3) можно определить место нажатия кнопки (и соответствующего автора, который попадет в цитату)
4) можно сравнить одно с другим
Для примера, подобный же функционал реализован на форуме forum.vingrad.ru, но там попытка нажать не на ту кнопку выводит пользователю сообщение об ошибке и не делает неправильное цитирование (уже шаг вперед).
Лучше, конечно же, было бы просто сделать одну кнопку (или придумать другие варианты).