=== Kripanov Anticopia ===
Contributors: kripanov
Tags: anti-copy, copy-protection, right-click, devtools, anti-scraping
Requires at least: 6.2
Tested up to: 6.9
Stable tag: 1.0.0
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Anti-copy protection: disables right-click, text selection, copy, paste, keyboard shortcuts and browser inspection tools.

== Description ==

**Kripanov Anticopia** protects your WordPress content against content theft and web scraping. When activated, it disables keyboard shortcuts, right-click, copy and paste, text selection, image dragging and browser inspection tools on your website.

In addition to the common copy methods, the anti-copy protection also blocks inspection tools (DevTools), providing a protected site where copyright infringement is made significantly harder.

= Features =

* Disable the right-click context menu.
* Prevent text selection across the whole site.
* Block copy, cut and paste actions.
* Block keyboard shortcuts: `Ctrl+C`, `Ctrl+X`, `Ctrl+V`, `Ctrl+A`, `Ctrl+S`.
* Block browser inspection tools: `F12`, `Ctrl+Shift+I`, `Ctrl+Shift+J`, `Ctrl+Shift+C`, `Ctrl+Shift+K`, `Ctrl+U`.
* Basic detection of DevTools being open.
* Prevent image dragging and saving.
* Block printing (`Ctrl+P`) and hide content on print.
* Customizable notice message shown when a copy attempt is made.
* Option to exclude administrators from the protection.
* Full settings panel under **Settings > Anticopia**.

= Compatibility =

Compatible with WordPress 6.9 and PHP 7.4 or greater. Uses the `defer` loading strategy of `wp_enqueue_script` (available since WP 6.3) to avoid blocking page rendering.

= Privacy =

This plugin does **not** collect, send or store any personal data from your visitors. All processing happens client-side in the visitor's browser.

== Installation ==

1. Upload the `kripanov-anticopia` folder to the `/wp-content/plugins/` directory, or install the plugin from the **Plugins > Add New** menu in WordPress.
2. Activate the plugin through the **Plugins** menu in WordPress.
3. Go to **Settings > Anticopia** and adjust the protections you want to apply.
4. Save your changes.

== Frequently Asked Questions ==

= Is the anti-copy protection 100% foolproof? =

No. No client-side protection is absolute: a technically skilled user can disable JavaScript or use advanced tools. However, for 99% of visitors and simple scrapers the protection is very effective and greatly hinders content theft.

= Can administrators be excluded from the protection? =

Yes. By default, users with the `manage_options` capability are excluded so they can continue editing, copying and inspecting the site during their work. This option can be disabled from the plugin settings.

= Does it affect site performance? =

Not noticeably. The script is very lightweight (about 6 KB) and is loaded with the `defer` strategy so it does not block page rendering.

= Does it work with contact forms and comments? =

Yes. The plugin detects `input`, `textarea` fields and elements with `contenteditable="true"`, allowing users to type, copy and paste inside them normally.

= Does it work on mobile devices? =

Yes. Selection, context menu and image dragging protections work on both desktop and mobile devices.

= Can I customize the notice message? =

Yes. From **Settings > Anticopia** you can edit the text shown to the visitor when they try to copy content.

== Screenshots ==

1. Plugin settings panel under **Settings > Anticopia**.
2. Floating notice shown when attempting to copy protected content.
3. Granular options to enable or disable each type of protection.

== Changelog ==

= 1.0.0 =
* Initial release.
* Disables right-click, text selection, copy, cut and paste.
* Blocks keyboard shortcuts (Ctrl+C, Ctrl+X, Ctrl+V, Ctrl+A, Ctrl+S, Ctrl+P).
* Blocks browser inspection tools (F12, Ctrl+Shift+I/J/C/K, Ctrl+U).
* Basic detection of DevTools being open.
* Prevents image dragging.
* Blocks printing and hides content via `@media print`.
* Admin settings panel with granular options.
* Customizable notice message.
* Option to exclude administrators.
* Compatible with WordPress 6.9 and PHP 7.4+.

== Upgrade Notice ==

= 1.0.0 =
Initial stable release. Full anti-copy protection compatible with WordPress 6.9.
