ExBB Community » Файловый ExBB » Обсуждаем » Запрет на копирование содержимого

Страниц (3): [1] 2 3 »
 

1. msnavigator - 20 октября 2010 — 19:22 - перейти к сообщению
Прошу прошения возможно уже обсуждалось, не нашел.
Мой форум тематический и не единственный в своей сфере. К сожалению отношения участников конкурирующих пользователей, этих самых форумов, складываются не всегда лояльно друг к другу. Исходя из этого, весьма актуальной на сегодняшний день темой становится вопрос свежести и новизны информации выложенной на своём форуме и как следствие - её защиты.
Понятно, что на 100% перекрыть доступ на скачивание невозможно, но в моём случае 90% пользователей(учитывая тематику), само понятие HTML воспринимают как ругательство и поэтому вполне возможно остановить любителей изображений от копирования(ну или хотя бы большой их процент).
Отсюда два вопроса?
1. В идеале - сделать кнопку подобной HIDE, чтобы пользователь сам решал разрешать ему скачивать другим фото или нет.
2. В сети есть решения этой проблемы, скажем:
Спойлер (Отобразить)

но в таком случае у меня вопрос, в каком файле форума необходимо разместить данный код для корректной его работы?
Спасибо.
2. yura3d - 21 октября 2010 — 07:53 - перейти к сообщению
msnavigator пишет:
у меня вопрос, в каком файле форума необходимо разместить данный код для корректной его работы?

Оба приведённых фрагмента кода, по сути, блокируют работу контекстного меню (открываемого по клику правой кнопкой мыши) на странице. Для того, чтобы запретить открытие контекстного меню на страницах форума, откройте файл templates/ваш_скин/all_header.tpl, найдите строку:
CODE:
<script type="text/javascript" language="JavaScript" src="javascript/JsHttpRequest/JsHttpRequest.js"></script>{$GLOBALS['fm']->_Link}

и после неё разместите строки:
CODE:
<script language="Javascript">
<!--
var message="";
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2) {
(message);
return false;}}}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS;
}else{
document.onmouseup=clickNS;
document.oncontextmenu=clickIE;
}
document.oncontextmenu=new Function("return false")
//-->
</script>

Однако, разумеется, у пользователей остаётся множество других способов скопировать изображения. Например, в Опере достаточно просто перетянуть изображение мышкой в адресную строку, чтобы получить его адрес и в дальнейшем скопировать. Поэтому в большинстве своём эти методы останавливают лишь нубов. Более действенной защитой от плагиата является вставка в изображение или фотографию т.н. водяного знака - полупрозрачного (необязательно) логотипа сайта с его адресом. Так поступают многие крупные ресурсы и порталы, которые дорожат своим контентом. Например, во всех обзорах техники на http://mobile-review.com/ соответствующие знаки на фотографиях имеются:

Преимущества такого подхода очевидны - эти знаки достаточно сложно удалить (тем более без потери качества изображения), для этого придётся каждое изображение индивидуально обрабатывать в графическом редакторе. Если же плагиаторы не позабодятся об их удалении, то у пользователей сторонних сайтов всегда будет информация о том, откуда было скопировано это изображение

Недостаток только один - реализовать автоматическую вставку водяного знака весьма сложно (например, он может закрыть важные детали фотографии, такие как лица людей и т.п.) Поэтому нужно предоставить пользователям выбор, чтобы они сами указывали наиболее удачное место для расположения знака. Разумеется, реализовать быструю вставку (без привлечения графических редакторов) водяного знака можно только для изображений, хранящихся на том же сервере, где установлен форум, поэтому от сторонних фотохостингов придётся отказаться
3. electron - 21 октября 2010 — 08:13 - перейти к сообщению
yura3d пишет:
Более действенной защитой от плагиата является вставка в изображение или фотографию т.н. водяного знака - полупрозрачного (необязательно) логотипа сайта с его адресом.

подобная защита будет в готовящемся релизе фотогалереи?
4. yura3d - 21 октября 2010 — 10:13 - перейти к сообщению
electron пишет:
подобная защита будет в готовящемся релизе фотогалереи?

На данный момент в фотогалерее такая защита не предусмотрена, но учитывая тот факт, что уже неоднократно обращались с подобным вопросом, спрос на эту возможность есть. Попытаемся реализовать
5. electron - 21 октября 2010 — 10:24 - перейти к сообщению
вот, если поможет, реализация ватермарка с какой-то галереи. мож пригодится.

CODE:
// watermark
$im = ImageCreateFromJPEG($_FILES['file']['tmp_name']);
ImageAlphaBlending($im, true);

$stamp = imagecreatefrompng('water.png');

$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

ImageCopy($im, $stamp, imagesx($im) - $sx - $marge_right, imagesy($im) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp));
ImageJPEG($im,$_FILES['file']['tmp_name'],'95');
imagedestroy($im);

// watermark_end


$marge_right = 10; Это размещение знака от правого края в точках.
$marge_bottom = 10; Это от нижнего правого края, так-же в точках.
water.png - соответственно изображение знака, его ложить в корень.
6. msnavigator - 30 октября 2010 — 22:43 - перейти к сообщению
Уважаемый electron, обратите внимание на свою подпись, я - это те самые кривые ручки. Что бы Вам небыло скучно, задаю здесь разные вопросы Однако . Здесь, так как считаю что это форум тех поддержки. Возможно повторюсь, Вы профессионалы в своей области, преклоняюсь. Простите, просто
electron пишет:
вот, если поможет, реализация ватермарка с какой-то галереи. мож пригодится

на всё это я смотрю как баран на новые ворота Растерялся , Вы хотели помочь, СПАСИБО, но если возможно, для категории людей плохо владеющих Вашим языком, пишите пожалуйста подробнее, что, куда и как... Не понял .

yura3d пишет:
Оба приведённых фрагмента кода, по сути, блокируют работу контекстного меню

Юра, всё сработало, спасибо, НО...
Для форума, как оказалось Огорчение , данное решение вопроса совершенно неприемлемо, т.к. из-за отсутствия контекстного меню - соответственно, отсеклась возможность вставки тех-же ссылок на изображения в сообщениях и т.д.
Прошу о помощи, тема очень актуальна, рассмотреть возможность реализации
msnavigator пишет:
В идеале - сделать кнопку подобной HIDE, чтобы пользователь сам решал разрешать ему скачивать другим фото или нет

запрета на копирование изображений в каждом отдельном случае, а не форума в целом: <img src=”pic.gif” oncontextmenu="return false" ondragstart="return false" />
Функция oncontextmenu – отвечает за контекстное меню элемента, а функция ondragstart – отвечает за перетаскивание элемента.
Функция ватермарка несомненно полезна, но учитывая, что это форум с множеством пользователей(это не персональный сайт), как можно создать для каждого выкладывающего фотографию water.png(да ещё если учесть, что в виду отсутствия на данный момент фотогалереи, пользователи выкладывают фото через сторонние серверы, собственно с галереей также ничего не изменится при написании поста)?
Готов поддержать данную разработку.
Спасибо.
7. electron - 31 октября 2010 — 06:47 - перейти к сообщению
msnavigator , тот код что я выложил выше - это ответ на реплику Юры :
yura3d пишет:
учитывая тот факт, что уже неоднократно обращались с подобным вопросом, спрос на эту возможность есть. Попытаемся реализовать

возможно он ему пригодится в разработке ватермарка для галереи. кстати, было бы неплохо прикрутить его и к прикрепляемым в постах форума фотографиям.

msnavigator пишет:
но если возможно, для категории людей плохо владеющих Вашим языком, пишите пожалуйста подробнее, что, куда и как...

я (наверно) так же плохо владею языком php как и вы, поэтому не скажу что куда да как. уж извините...
8. msnavigator - 31 октября 2010 — 10:47 - перейти к сообщению
electron
Приношу свои извинения за тон Закатив глазки .
Свом постом я просто подтвердил вышесказанное
msnavigator пишет:
Понятно, что на 100% перекрыть доступ на скачивание невозможно, но в моём случае 90% пользователей(учитывая тематику), само понятие HTML воспринимают как ругательство и поэтому вполне возможно остановить любителей изображений от копирования(ну или хотя бы большой их процент).

yura3d пишет:
Поэтому в большинстве своём эти методы останавливают лишь нубов.

уровень подготовки в тематических областях у нас всех разный, я часто сталкиваюсь с тем, что обьясняю людям как вставить изображение в свой пост, так что процент "нубов" весьма и весьма велик.
yura3d пишет:
Например, в Опере достаточно просто перетянуть изображение мышкой в адресную строку, чтобы получить его адрес и в дальнейшем скопировать.

Вот пример с которым этот номер не пройдёт(кстати у меня на форуме наиболее часто используемый):
CODE:
[URL=http://www.radikal.ru][IMG]http://s016.radikal.ru/i334/1010/cc/f70afb5305a7.jpg[/IMG][/URL]

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

Я обеими руками ЗА возможность вставки на форуме ватермарки, хотя сам подписываю все свои фотографии в графическом редакторе, так же как и видео, но это всё тот же вопрос не все могут или хотят это делать в редакторах.
И снова вернусь к своему вопросу, очень нужна возможность реализации запрета на скачивание в виде кнопки для отдельно выбранных файлов или фрагментов текста.
Спасибо.
9. yura3d - 31 октября 2010 — 20:36 - перейти к сообщению
msnavigator пишет:
В идеале - сделать кнопку подобной HIDE, чтобы пользователь сам решал разрешать ему скачивать другим фото или нет

Нет проблем, в ближайшее время постараюсь реализовать такой вариант. Можно сделать так: при клике на кнопку вставки изображения (на панели редактора сообщений), помимо запроса URL изображения, будет также выводиться окно с вопросом, разрешать ли копирование изображения или нет. Можно, конечно, сделать и отдельный бб-код для защиты от копирования целого блока изображений (по аналогии с HIDE для текста). Какой вариант для Вас лучше?

По поводу водяных знаков. Планируется их реализация как для фотогалереи, так и для прикрепляемых к сообщению изображений (изначально будет сделано для фотогалереи). Вставка ватермарков будет полностью автоматической - не нужно будет никаких ручных вставок со стороны пользователей (имеются в виду вставки в графических редакторах)
10. msnavigator - 31 октября 2010 — 23:11 - перейти к сообщению
msnavigator пишет:
Можно сделать так: при клике на кнопку вставки изображения (на панели редактора сообщений), помимо запроса URL изображения, будет также выводиться окно с вопросом, разрешать ли копирование изображения или нет.

Предложенный способ весьма заманчив, и возможно для собственного сайта наиболее логичен, но форум подразумевает общение некоторого количества пользователей, основная масса которых, вставляет картинки через радикал - тупо копируя ссылку №2.
Кроме того, помимо картинок есть фрагменты текста переведенные, либо написанные самими пользователями.
Исходя из этого, наверное, было бы лучше, написать отдельный бб код(по аналогии с HIDE).

P.s. Уже неоднократно на данном форуме наблюдаю глюк, получилось, что я цитирую самого себя, специально не стал править Улыбка .

Спасибо.
11. yura3d - 31 октября 2010 — 23:18 - перейти к сообщению
msnavigator пишет:
Исходя из этого, наверное, было бы лучше, написать отдельный бб код(по аналогии с HIDE).

Ок, за этот вариант и возьмёмся

msnavigator пишет:
P.s. Уже неоднократно на данном форуме наблюдаю глюк, получилось, что я цитирую самого себя, специально не стал править

Опишите, что Вы делаете перед тем, как вставляется цитата с неправильным именем? Возможно, Вы кликаете на кнопку Цитата в блоке своего сообщения, а не того сообщения, текст которого Вы выделяете?
12. msnavigator - 2 ноября 2010 — 00:57 - перейти к сообщению

yura3d пишет:
msnavigator пишет:
P.s. Уже неоднократно на данном форуме наблюдаю глюк, получилось, что я цитирую самого себя, специально не стал править


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

Смущение описать уже не смогу, как тут вспомнить, но впредь буду внимательней.
13. yura3d - 2 ноября 2010 — 22:19 - перейти к сообщению
msnavigator
Приношу свои извинения за некоторую задержку с ответом, реализация бб-кода защиты готова. Следующая модификация добавляет ExBB поддержку бб-кода protect, который позволяет применить к выделенному фрагменту сообщения вышеописанные методы защиты от копирования

Для установки необходимо произвести следующие изменения
Откройте файл include/fm.class.php, найдите строку:
CODE:
"#\[\*\]#is",

и под ней разместите строку:
CODE:
"#\[protect\](.+?)\[/protect\]#is",

Далее в этом же файле, чуть ниже, найдите строку:
CODE:
"<li>",

и под ней разместите строку:
CODE:
"<span oncontextmenu=\"return false\" ondragstart=\"return false\">$1</span>",

Далее откройте файл language/russian/lang_front_formcode.php, найдите строку:
CODE:
$this->LANG['HideMsgs'] = 'Сколько сообщений должен набрать пользователь, чтобы видеть скрытый текст? Для скрытия текста от гостей оставьте поле пустым:';

и под ней разместите строку:
CODE:
$this->LANG['HelpProtect'] = 'Защита фрагмента сообщения от копирования: [protect]текст[/protect]';

Дальнейшие действия предполагают, что у Вас установлен расширенный редактор сообщений. Откройте файл templates/ваш_скин/form_code.tpl, найдите строку:
CODE:
hide: {0:'[hide%]',1:'[/hide]',2:'{$fm->LANG['HelpHide']}'},

и под ней разместите строку:
CODE:
protect: {0:'[protect]',1:'[/protect]',2:'{$fm->LANG['HelpProtect']}'},

Далее в этом же файле найдите строку:
CODE:
<td><a href="#" name="hide" onclick="return bbcode(this);" onmouseover="help(this);"><img src="templates/InvisionExBB/im/russian/hide.gif" width="25" height="25" /></a></td>

и под ней разместите строку:
CODE:
<td><a href="#" name="protect" onclick="return bbcode(this);" onmouseover="help(this);"><img src="templates/InvisionExBB/im/russian/protect.gif" width="25" height="25" /></a></td>

На этом всё, останется только закачать прикреплённую иконку protect.gif в папку templates/ваш_скин/im/russian. Эта иконка и будет отображаться как кнопка для вставки бб-кода protect на панели редактора сообщений Улыбка
14. msnavigator - 3 ноября 2010 — 23:05 - перейти к сообщению
yura3d
Юра, огромное спасибо, всё работает Здорово Здорово Здорово .
15. kitNest - 31 января 2011 — 15:22 - перейти к сообщению
Извините, а если расширенный редактор не установлен?

Какие тогда действия отменить\сменить?
Последние два? Вместо них обычные действия по созданию кнопки для RC1 ?
(Добавление)
Попробую сам добавить:

у кого не поставлен расширенный редактор в файле templates/ваш_скин/form_code.tpl после строки
CODE:
<input type="button" class="button" name="list" value="List" style="width: 40px" onClick="bbcode(this)" onMouseOver="help(this)" />

ставим строку
CODE:
<input type="button" class="button" name="protect" value="Protect" style="width: 50px" onClick="bbcode(this)" onMouseOver="help(this)" />


В моем примере не установлен мод скрытого текста, поэтому все приведенные Юрой изменения я ставил после строк касающихся Списка (List), а не скрытого текста.

Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.0267]     [ ]