64 lines
2.3 KiB
PHP
64 lines
2.3 KiB
PHP
<?php
|
||
/**
|
||
* WP Multi – Modul: Text-Copy-Schutz
|
||
*
|
||
* Automatisch aus wp-multi.php ausgelagert. Wird über den Loader in
|
||
* wp-multi.php eingebunden (nur wenn das WP Multi Toolkit aktiv ist).
|
||
*/
|
||
|
||
if (!defined('ABSPATH')) { exit; }
|
||
|
||
/*
|
||
* Text Copy Schutz und Schutz vor Entwicklertools
|
||
*/
|
||
|
||
|
||
// JavaScript für die Kopierschutz-Funktion einbinden
|
||
function wp_multi_enqueue_scripts() {
|
||
wp_add_inline_script('jquery', "
|
||
jQuery(document).ready(function($) {
|
||
// Verhindert das Öffnen der Entwicklertools mit F12, Strg+Shift+I und Strg+Shift+C
|
||
$(document).keydown(function(e) {
|
||
// Blockiert F12, Strg + Shift + I, Strg + Shift + C (Entwicklertools)
|
||
if (e.keyCode == 123 || (e.ctrlKey && e.shiftKey && e.keyCode == 73) || (e.ctrlKey && e.shiftKey && e.keyCode == 67)) {
|
||
e.preventDefault();
|
||
}
|
||
|
||
// Verhindert das Öffnen des Quellcodes mit Strg + U (view-source)
|
||
if ((e.ctrlKey && e.keyCode == 85) || (e.ctrlKey && e.shiftKey && e.keyCode == 85)) {
|
||
e.preventDefault();
|
||
}
|
||
|
||
// Verhindert den Zugriff auf die Konsole mit Strg + Shift + J (Konsole-Tab)
|
||
if ((e.ctrlKey && e.shiftKey && e.keyCode == 74) || (e.metaKey && e.altKey && e.keyCode == 74)) {
|
||
e.preventDefault();
|
||
}
|
||
|
||
// Verhindert das Öffnen des Quellcodes mit view-source
|
||
if (e.ctrlKey && e.keyCode == 85) {
|
||
e.preventDefault();
|
||
}
|
||
});
|
||
|
||
// Verhindert das Öffnen des Kontextmenüs (Rechtsklick)
|
||
$('body').on('contextmenu', function(e) {
|
||
e.preventDefault();
|
||
});
|
||
|
||
// Kopierschutz-Funktion
|
||
$('body').on('copy', function(e) {
|
||
e.preventDefault();
|
||
var selectedText = window.getSelection().toString();
|
||
var numericText = selectedText.replace(/./g, function(char) {
|
||
return Math.floor(Math.random() * 10);
|
||
});
|
||
|
||
e.originalEvent.clipboardData.setData('text/plain', numericText);
|
||
});
|
||
});
|
||
");
|
||
}
|
||
add_action('wp_enqueue_scripts', 'wp_multi_enqueue_scripts');
|
||
|
||
|