<?php
/**
 * Freemius helpers (serviceware model).
 *
 * La inicializacion del SDK (accesslens_fs()) vive en el main file accesslens.php.
 * IMPORTANTE: este plugin NO bloquea funciones localmente. Es un cliente plenamente
 * funcional de un servicio externo (el motor AccessLens). El nivel free/Pro lo aplica
 * el motor (serviceware, Guideline 6): el plugin solo le pasa la licencia y el motor
 * decide que devuelve. Por eso aqui NO hay un accesslens_is_pro() que gatee codigo.
 *
 * @package AccessLens
 */

declare(strict_types=1);

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

/**
 * Devuelve la clave de licencia de Freemius del sitio (si esta suscrito al servicio Pro),
 * para enviarla al motor. Cadena vacia si no hay suscripcion activa.
 *
 * @return string Clave de licencia o ''.
 */
function accesslens_license_key(): string {
	if ( ! function_exists( 'accesslens_fs' ) ) {
		return '';
	}

	// Permite forzar una licencia en entornos de prueba (ver tests/mu-pro.php).
	$forced = apply_filters( 'accesslens_license_key', '' );
	if ( is_string( $forced ) && '' !== $forced ) {
		return $forced;
	}

	if ( accesslens_fs()->is_paying() ) {
		$license = accesslens_fs()->_get_license();
		if ( $license && ! empty( $license->secret_key ) ) {
			return (string) $license->secret_key;
		}
	}

	return '';
}
