carhop__plugins__PROD-DEV/plugins/dynamiques-blocks/_utilities/utilities.php
Antoine M 6ba42ac0ed
All checks were successful
continuous-integration/drone/push Build is passing
FEATURE Introducing utlities functions for the plugin
2026-02-13 15:35:44 +01:00

42 lines
997 B
PHP

<?php
function get_color_hex_from_slug(?string $slug): ?string
{
if (!$slug) return null;
$settings = wp_get_global_settings();
$palette = $settings['color']['palette']['theme'] ?? [];
foreach ($palette as $c) {
if (($c['slug'] ?? null) === $slug) {
return $c['color'] ?? null; // ex "#0f6f63"
}
}
return null;
}
function is_color_light($color)
{
// Si pas de couleur, considérer comme claire
if (empty($color)) {
return true;
}
$hex = str_replace("#", "", $color);
// Gérer les codes hex courts (3 caractères)
if (strlen($hex) === 3) {
$hex = $hex[0] . $hex[0] . $hex[1] . $hex[1] . $hex[2] . $hex[2];
}
// Convertir hex en RGB
$r = hexdec(substr($hex, 0, 2));
$g = hexdec(substr($hex, 2, 2));
$b = hexdec(substr($hex, 4, 2));
// Calculer la luminance relative (formule standard)
$luminance = (0.299 * $r + 0.587 * $g + 0.114 * $b) / 255;
// Si luminance > 0.5, la couleur est claire
return $luminance > 0.5;
}