Honeypot Guard Anti-Spam Suite - Standalone Version
===================================================

FILES INCLUDED:
- honeypot-guard.js      : Full version with comments
- honeypot-guard.min.js  : Minified version for production
- example.html           : Demo implementation

BASIC INSTALLATION:
-------------------
Add to your HTML just before </body>:

<script src="honeypot-guard.min.js"></script>

That's it! All forms on your page are now protected.

CUSTOM CONFIGURATION:
---------------------
<script src="honeypot-guard.min.js"></script>
<script>
OpenHoneypot.configure({
    // Honeypot settings
    honeypotEnabled: true,
    honeypotFieldName: 'company_extension',
    multipleHoneypots: false,

    // Timing
    minSubmissionTime: 2,
    maxSubmissionTime: 3600,

    // Verification
    cookieCheckEnabled: false,
    requireReferer: false,

    // Rate limiting
    rateLimitEnabled: false,
    rateLimitSubmissions: 5,
    rateLimitWindow: 60,

    // Character filters
    blockCyrillic: false,
    blockHanzi: false,
    blockBengali: false,

    // Blacklists
    keywordBlacklist: 'viagra, casino, lottery',
    emailBlacklist: '*@spam.com',
    domainBlacklist: 'spam-domain.com',

    // Detection
    gibberishDetectionEnabled: true,
    heuristicEnabled: true,
    maxLinks: 3,
    spamThreshold: 70,

    // Forms to protect/exclude
    formSelectors: ['form'],
    excludeSelectors: ['.oh-exclude'],

    // Behavior
    blockSubmission: true,
    showErrorMessage: true,
    errorMessage: 'Your submission could not be processed.',

    // Callbacks
    onSpamDetected: function(form, result) {
        console.log('Spam blocked:', result);
    },

    // Debug mode
    debug: false
});
</script>

MANUAL VALIDATION (for AJAX forms):
-----------------------------------
var result = OpenHoneypot.validate({
    name: 'John Doe',
    email: 'john@example.com',
    message: 'Hello world'
});

if (result.isSpam) {
    console.log('Spam detected:', result.reasons);
} else {
    // Submit your form via AJAX
}

MANAGING BLOCKED ENTRIES:
-------------------------
Open browser DevTools console and use:

  OpenHoneypot.viewBlockedEntries()     - View all blocked entries
  OpenHoneypot.unblockEntry(0)          - Unblock entry by index
  OpenHoneypot.removeEntry(0)           - Remove entry completely
  OpenHoneypot.clearBlockedEntries()    - Clear all entries
  OpenHoneypot.exportBlockedEntries()   - Export as JSON
  OpenHoneypot.importBlockedEntries()   - Import from JSON

EXCLUDING SPECIFIC FORMS:
-------------------------
<form class="oh-exclude">
    <!-- This form won't be protected -->
</form>

<form data-oh-exclude>
    <!-- This form won't be protected either -->
</form>

SUPPORT:
--------
Documentation: https://www.mantasdigital.com/honeypot-guard/
Professional support: https://www.mantasdigital.com/

