<?php
declare(strict_types=1);

namespace Wohno\Plugin\Support;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * Contributes suggested privacy-policy text (Tools → Privacy) describing the
 * plugin's data flows: the server-side Wohno API call and — only with the map
 * layout — the OpenStreetMap tile requests from the visitor's browser.
 */
final class Privacy {

	/**
	 * Register the privacy-policy contribution.
	 *
	 * @return void
	 */
	public function register(): void {
		add_action( 'admin_init', array( $this, 'add_content' ) );
	}

	/**
	 * Add the suggested privacy text for the site's policy editor.
	 *
	 * @return void
	 */
	public function add_content(): void {
		if ( ! function_exists( 'wp_add_privacy_policy_content' ) ) {
			return;
		}

		$content =
			'<p>' . esc_html__( 'Dieses Plugin zeigt Immobilien-Inserate über die Wohno-API an. Der Abruf erfolgt server-seitig auf deinem Server; übertragen werden dein API-Key und die eingestellten Filter (z. B. Stadt, Preis). Es werden dabei keine personenbezogenen Daten deiner Website-Besucher an Wohno gesendet.', 'wohno' ) . '</p>'
			. '<p>' . esc_html__( 'Die zu den Inseraten gehörenden Bilder werden von den Servern von Wohno (z. B. cdn.wohno.de) direkt in den Browser deiner Besucher geladen. Dabei wird die IP-Adresse des Besuchers an Wohno übertragen.', 'wohno' ) . '</p>'
			. '<p>' . esc_html__( 'Wenn du das Karten-Layout verwendest, laden die Browser deiner Besucher Kartenkacheln direkt von OpenStreetMap. Dabei wird die IP-Adresse des Besuchers an OpenStreetMap übertragen. Ohne das Karten-Layout findet diese Verbindung nicht statt.', 'wohno' ) . '</p>'
			. '<p>' . esc_html__( 'Ein Klick auf ein Inserat führt zur Detailseite auf wohno.de, wo auch die Bewerbung stattfindet. Auf deiner Website entstehen keine Bewerberdaten.', 'wohno' ) . '</p>';

		wp_add_privacy_policy_content( 'Wohno – Inserate', wp_kses_post( $content ) );
	}
}
