Как зашифровать ссылку на видео файл в плеере DLE
Я думаю что не я один мучался таким вопросом. Проблема сайтов выложенными видео роликами в онлайн заключается в том что появляется много личей, которые жрут Ваш трафик. Для того чтобы отшугнуть простых школяров я нашел действенный способ автоматичнской шифрации ссылки на файл в плеере.
Метод проверен на DLE 8,2 - 8,5 (возможно и на более поздних будет работать, но их пока не существует).
Для начала делаем резервную копию файла
parse.class.php, затем открываем его для редактирования и находим в нем фразу типа:
Код:
if( $type == "flv" or $type == "mp4" or $type == "m4v" or $type == "m4a" ) {
нужно отсюда и до фразы:
Код:
} elseif( $type == "avi" or $type == "divx" ) {
дописать код:
Код:
function decode_char($c)
{
$a1 = array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "W", "G", "X", "M", "H", "R", "U", "Z", "I", "D", "=", "N", "Q", "V", "B", "L");
$a2 = array("b", "z", "a", "c", "l", "m", "e", "p", "s", "J", "x", "d", "f", "t", "i", "o", "Y", "k", "n", "g", "r", "y", "T", "w", "u", "v");
$result = $c;
for($j = 0; $j < count($a1); $j++) {
if ($c == $a1[$j][0]) {
$result = $a2[$j][0];
break;
}
if ($c == $a2[$j][0]) {
$result = $a1[$j][0];
break;
}
}
return $result;
}
function encode_str($s)
{
$s = base64_encode($s);
$result = '';
for($i = 0; $i < strlen($s); $i++) {
$result .= decode_char($s[$i]);
}
return $result;
}
$url = encode_str($url);
if( $config['flv_watermark'] ) $watermark = ",showWatermark:'always',watermarkUrl:'{THEME}/dleimages/flv_watermark.png',watermarkLinkUrl:''";
else $watermark = "";
if ($comment == "")
{
return "<!--dle_video_begin:{$url}--><object id=\"video\" type=\"application/x-shockwave-flash\" data=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР.swf\" width=\"500\" height=\"395\"><param name=\"bgcolor\" value=\"#900000\" /><param name=\"allowFullScreen\" value=\"true\" /><param name=\"allowScriptAccess\" value=\"always\" /><param name=\"movie\" value=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" /><param name=\"flashvars\" value=\"st=ВАШ_ПУТЬ_К_СТИЛЯМ&file={$url}\" /></object><!--dle_video_end-->";
}
else
{
return "<!--dle_video_begin:{$url}--><object id=\"video\" type=\"application/x-shockwave-flash\" data=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" width=\"500\" height=\"395\"><param name=\"bgcolor\" value=\"#900000\" /><param name=\"allowFullScreen\" value=\"true\" /><param name=\"allowScriptAccess\" value=\"always\" /><param name=\"movie\" value=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" /><param name=\"flashvars\" value=\"comment={$comment}&st=ВАШ_ПУТЬ_К_СТИЛЯМ&file={$url}\" /></object><!--dle_video_end-->";
}
} elseif( $type == "txt" ) {
return "<!--dle_video_begin:{$url}--><object id=\"video\" type=\"application/x-shockwave-flash\" data=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" width=\"500\" height=\"395\"><param name=\"bgcolor\" value=\"#900000\" /><param name=\"allowFullScreen\" value=\"true\" /><param name=\"allowScriptAccess\" value=\"always\" /><param name=\"movie\" value=\"".$config['http_home_url']."engine/classes/flashplayer/ВАШ_ПЛЕЕР\" /><param name=\"flashvars\" value=\"st=ВАШ_ПУТЬ_К_СТИЛЯМ&pl={$url}\" /></object><!--dle_video_end-->";
Обратите внимание на выделенный в коде текст, замените значения на свои (ВАШ_ПУТЬ_К_СТИЛЯМ, ВАШ_ПЛЕЕР).
Работает с стандартным плеером, мне так же удалось привязать шифрование к Uppod плееру.