<?php
/**
 * @package Hafenstudios\Kurato
 */

namespace Hafenstudios\Kurato\Admin;

defined( 'ABSPATH' ) || exit;

/**
 * Kontaktprofil mit Timeline (Etappe K3).
 *
 * Versteckte Admin-Seite (Ziel eines Klicks auf eine Board-Karte oder einen
 * Kontakt). No-Build-React (assets/js/contact.js): Stammdaten, Stufenwechsel und
 * der Verlauf ueber die REST-API kurato/v1/contacts.
 */
final class ContactPage {

	public const SLUG = 'kurato-contact';

	/**
	 * URL des Kontaktprofils.
	 *
	 * @param int $contact_id Kontakt-ID.
	 * @return string
	 */
	public static function url( int $contact_id ): string {
		return admin_url( add_query_arg( array( 'page' => self::SLUG, 'contact' => $contact_id ), 'admin.php' ) );
	}

	/**
	 * Rendert den Mount-Punkt.
	 *
	 * @return void
	 */
	public function render(): void {
		if ( ! current_user_can( 'hs_view_contacts' ) ) {
			wp_die( esc_html__( 'Sie haben keine Berechtigung, Kontakte einzusehen.', 'kurato' ) );
		}

		echo '<div class="wrap hs-kurato-contact-wrap">';
		echo '<div id="hs-kurato-contact" class="hs-contact-root">';
		echo '<p class="hs-contact-loading">' . esc_html__( 'Der Kontakt wird geladen.', 'kurato' ) . '</p>';
		echo '</div>';
		echo '</div>';
	}
}
