<?php

return [

    /*
    |--------------------------------------------------------------------------
    | Privacy: IP Address Retention
    |--------------------------------------------------------------------------
    |
    | IP addresses recorded on a QR scan are personal data under GDPR and
    | India's DPDP Act. When this is false (the default), the redirect
    | pipeline should store a truncated/masked IP instead of the full
    | address (e.g. zeroing the last octet). Actually performing the
    | truncation is the responsibility of the code that writes scan rows;
    | this flag only documents and centralizes the policy.
    |
    */

    'store_full_ip' => (bool) env('QR_STORE_FULL_IP', false),

    /*
    |--------------------------------------------------------------------------
    | Scan Retention
    |--------------------------------------------------------------------------
    |
    | Number of days a `qr_code_scans` row should be kept before a pruning
    | job (implemented separately) deletes it. Keeping raw scan/IP data
    | indefinitely is not compatible with data-minimization requirements.
    |
    */

    'scan_retention_days' => (int) env('QR_SCAN_RETENTION_DAYS', 365),

    /*
    |--------------------------------------------------------------------------
    | Visitor Hash Salt
    |--------------------------------------------------------------------------
    |
    | Salt mixed into the sha256(ip + user agent + date) hash used for
    | unique-visitor counting (`qr_code_scans.visitor_hash`). Falls back to
    | APP_KEY so a value is always present without extra setup, but a
    | dedicated salt lets it be rotated independently of the app key.
    |
    */

    'visitor_hash_salt' => env('QR_VISITOR_HASH_SALT', env('APP_KEY')),

];
