289 lines
14 KiB
PHP
289 lines
14 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Configuration par défaut d'ANNU KUTE CED
|
|
*
|
|
* Ce fichier contient les paramètres de configuration par défaut.
|
|
* Il est utilisé pour initialiser les variables non définies dans config.local.php.
|
|
*/
|
|
|
|
if (!defined('APP_HOST_NAME')) define('APP_HOST_NAME', 'example.com');
|
|
|
|
if (!defined('ORGANIZATION_SHORT_NAME')) define('ORGANIZATION_SHORT_NAME', 'ANNU KUTE CED');
|
|
if (!defined('ORGANIZATION_NAME')) define('ORGANIZATION_NAME', 'ANNU KUTE CED');
|
|
|
|
// Configuration de base - ces valeurs seront utilisées si elles ne sont pas définies dans config.local.php
|
|
if (!defined('PEERTUBE_URL')) define('PEERTUBE_URL', 'https://gade.o-k-i.net');
|
|
if (!defined('PEERTUBE_DISPLAY_NAME')) define('PEERTUBE_DISPLAY_NAME', 'gade.o-k-i.net');
|
|
if (!defined('API_KEY')) define('API_KEY', '');
|
|
if (!defined('TAG_INDEPENDENCE')) define('TAG_INDEPENDENCE', 'indépendance');
|
|
if (!defined('SHORTS_MAX_DURATION')) define('SHORTS_MAX_DURATION', 180); // 3 minutes max pour les shorts
|
|
|
|
// Pagination et affichage
|
|
if (!defined('COUNT_VIDEO_SEARCH')) define('COUNT_VIDEO_SEARCH', 20);
|
|
if (!defined('VIDEOS_PER_PAGE')) define('VIDEOS_PER_PAGE', 12);
|
|
if (!defined('FEATURED_VIDEOS_COUNT')) define('FEATURED_VIDEOS_COUNT', 6);
|
|
if (!defined('RECENT_VIDEOS_COUNT')) define('RECENT_VIDEOS_COUNT', 6);
|
|
if (!defined('SHORTS_COUNT')) define('SHORTS_COUNT', 6);
|
|
if (!defined('SHORTS_COUNT_SEARCH')) define('SHORTS_COUNT_SEARCH', 100);
|
|
if (!defined('TRENDING_VIDEOS_COUNT')) define('TRENDING_VIDEOS_COUNT', 6);
|
|
if (!defined('INDEPENDENCE_VIDEOS_COUNT')) define('INDEPENDENCE_VIDEOS_COUNT', 6);
|
|
if (!defined('CATEGORY_VIDEOS_COUNT')) define('CATEGORY_VIDEOS_COUNT', 6);
|
|
if (!defined('LOAD_MORE_COUNT')) define('LOAD_MORE_COUNT', 6);
|
|
|
|
// Affichage des métadonnées vidéo
|
|
if (!defined('SHOW_VIDEO_VIEWS')) define('SHOW_VIDEO_VIEWS', false); // Masquer le nombre de vues par défaut
|
|
|
|
// Catégories prioritaires avec noms personnalisés (dans l'ordre d'affichage souhaité)
|
|
// format: [ID catégorie => Nom personnalisé]
|
|
if (!defined('PRIORITY_CATEGORIES')) {
|
|
define('PRIORITY_CATEGORIES', [
|
|
10 => 'Divertissement',
|
|
15 => 'Science et Technologie'
|
|
]);
|
|
}
|
|
|
|
// =========================================
|
|
// Configuration Mastodon
|
|
// =========================================
|
|
if (!defined('MASTODON_INSTANCE_URL')) define('MASTODON_INSTANCE_URL', 'https://bokante.o-k-i.net');
|
|
if (!defined('MASTODON_DATE_FORMAT')) define('MASTODON_DATE_FORMAT', 'fr-FR');
|
|
if (!defined('MASTODON_BTN_SEE_MORE')) define('MASTODON_BTN_SEE_MORE', 'Voir plus de post');
|
|
if (!defined('MASTODON_BTN_RELOAD')) define('MASTODON_BTN_RELOAD', 'Rafraichir');
|
|
if (!defined('MASTODON_MAX_POST_FETCH')) define('MASTODON_MAX_POST_FETCH', '10');
|
|
if (!defined('MASTODON_MAX_POST_SHOW')) define('MASTODON_MAX_POST_SHOW', '10');
|
|
|
|
// URL du stockage S3 pour les médias Mastodon (laissez vide pour désactiver)
|
|
// Format: https://votre-bucket.s3.region.provider.com
|
|
// if (!defined('MASTODON_S3_MEDIA_URL')) define('MASTODON_S3_MEDIA_URL', 'https://s3.eu-central-003.backblazeb2.com');
|
|
|
|
// Informations du site
|
|
if (!defined('SITE_NAME')) define('SITE_NAME', 'ANNU KUTE CED');
|
|
if (!defined('SITE_DESCRIPTION')) define('SITE_DESCRIPTION', 'Hub multimédia du podcast ANNU KUTE CED');
|
|
if (!defined('SITE_LOGO')) define('SITE_LOGO', 'img/logo.png');
|
|
if (!defined('SITE_FAVICON')) define('SITE_FAVICON', 'img/favicon.png');
|
|
|
|
// Configuration du fuseau horaire par défaut
|
|
// Liste des fuseaux disponibles : https://www.php.net/manual/fr/timezones.php
|
|
if (!defined('DEFAULT_TIMEZONE')) define('DEFAULT_TIMEZONE', 'America/Guadeloupe');
|
|
|
|
// Réseaux sociaux
|
|
if (!defined('FACEBOOK_URL')) define('FACEBOOK_URL', '#');
|
|
if (!defined('X_URL')) define('X_URL', '#');
|
|
if (!defined('INSTAGRAM_URL')) define('INSTAGRAM_URL', '#');
|
|
if (!defined('YOUTUBE_URL')) define('YOUTUBE_URL', '#');
|
|
if (!defined('TIKTOK_URL')) define('TIKTOK_URL', '#');
|
|
if (!defined('MASTODON_URL')) define('MASTODON_URL', 'https://bokante.o-k-i.net/@cedric');
|
|
|
|
// Contacts
|
|
if (!defined('CONTACT_EMAIL')) define('CONTACT_EMAIL', 'kontak@o-k-i.net');
|
|
|
|
// Mentions légales
|
|
if (!defined('LEGAL_COPYRIGHT')) define('LEGAL_COPYRIGHT', 'ANNU KUTE CED');
|
|
if (!defined('LEGAL_WEBMASTER_NAME')) define('LEGAL_WEBMASTER_NAME', 'Cédric Famibelle-Pronzola');
|
|
if (!defined('LEGAL_WEBMASTER_EMAIL')) define('LEGAL_WEBMASTER_EMAIL', 'contact@cedric-pronzola.dev');
|
|
if (!defined('LEGAL_HOST_NAME')) define('LEGAL_HOST_NAME', 'o2Switch');
|
|
if (!defined('LEGAL_HOST_COMPANY')) define('LEGAL_HOST_COMPANY', 'société au capital de 100 000 €');
|
|
if (!defined('LEGAL_HOST_RCS')) define('LEGAL_HOST_RCS', 'immatriculée au RCS de Clermont-Ferrand sous le numéro 510 909 807');
|
|
if (!defined('LEGAL_HOST_ADDRESS')) define('LEGAL_HOST_ADDRESS', '222 boulevard Gustave Flaubert, 63000 Clermont-Ferrand, France');
|
|
if (!defined('LEGAL_CONTACT_EMAIL')) define('LEGAL_CONTACT_EMAIL', 'kontak@o-k-i.net');
|
|
if (!defined('LEGAL_LICENSE')) define('LEGAL_LICENSE', 'GNU Affero General Public License version 3 (AGPL-V3)');
|
|
if (!defined('LEGAL_LICENSE_URL')) define('LEGAL_LICENSE_URL', 'https://www.gnu.org/licenses/agpl-3.0.html');
|
|
if (!defined('LEGAL_SOURCE_CODE_URL')) define('LEGAL_SOURCE_CODE_URL', 'https://labola.o-k-i.net/cedric/annu-kute-ced');
|
|
if (!defined('LEGAL_SERVICE_DESCRIPTION')) define('LEGAL_SERVICE_DESCRIPTION', 'est le hub multimédia du podcast ANNU KUTE CED.');
|
|
|
|
// Fonctionnalités
|
|
define('ENABLE_SEARCH', true);
|
|
if (!defined('ENABLE_USER_ACCOUNTS')) define('ENABLE_USER_ACCOUNTS', false);
|
|
|
|
// Cache
|
|
// Activé par défaut : indispensable pour Castopod (rate limit strict sur les
|
|
// flux RSS) et Funkwhale. Sans cache, une requête part à chaque chargement.
|
|
if (!defined('CACHE_ENABLED')) define('CACHE_ENABLED', true);
|
|
if (!defined('CACHE_DURATION')) define('CACHE_DURATION', 3600); // En secondes (1 heure)
|
|
|
|
// =========================================
|
|
// Configuration de la section Hero (bannière d'accueil)
|
|
// =========================================
|
|
|
|
// Type de contenu à afficher dans la section hero
|
|
// Options: 'live' (direct PeerTube), 'playlist' (playlist audio/vidéo), 'video' (vidéo unique), 'none' (masquer)
|
|
if (!defined('HERO_TYPE')) define('HERO_TYPE', 'video');
|
|
|
|
// Configuration pour le direct (HERO_TYPE = 'live')
|
|
if (!defined('LIVE_ACCOUNT_NAME')) define('LIVE_ACCOUNT_NAME', 'annu_kute_ced');
|
|
|
|
// Configuration pour une vidéo unique (HERO_TYPE = 'video')
|
|
if (!defined('HERO_VIDEO_ID')) define('HERO_VIDEO_ID', 'fDE6tvQMXRuBpE4eDDS7kj');
|
|
if (!defined('HERO_VIDEO_TITLE')) define('HERO_VIDEO_TITLE', 'Vidéo de présentation');
|
|
|
|
// Configuration pour les playlists (HERO_TYPE = 'playlist')
|
|
// Type de plateforme: 'peertube', 'funkwhale', 'castopod'
|
|
if (!defined('PLAYLIST_PLATFORM')) define('PLAYLIST_PLATFORM', 'peertube');
|
|
|
|
// URL de base de la plateforme de playlist
|
|
if (!defined('PLAYLIST_INSTANCE_URL')) define('PLAYLIST_INSTANCE_URL', '');
|
|
|
|
// ID de la playlist à afficher
|
|
if (!defined('PLAYLIST_ID')) define('PLAYLIST_ID', '');
|
|
|
|
// Titre de la playlist (optionnel, sinon récupéré via API)
|
|
if (!defined('PLAYLIST_TITLE')) define('PLAYLIST_TITLE', '');
|
|
|
|
// Description de la playlist (optionnel)
|
|
if (!defined('PLAYLIST_DESCRIPTION')) define('PLAYLIST_DESCRIPTION', '');
|
|
|
|
// =========================================
|
|
// Configuration Castopod
|
|
// =========================================
|
|
|
|
// Activer l'affichage des podcasts Castopod
|
|
if (!defined('CASTOPOD_ENABLED')) define('CASTOPOD_ENABLED', true);
|
|
|
|
// URL de l'instance Castopod
|
|
if (!defined('CASTOPOD_URL')) define('CASTOPOD_URL', 'https://kute.o-k-i.net');
|
|
|
|
// Liste des slugs de podcasts à afficher (tableau)
|
|
// Format: ['slug1', 'slug2', 'slug3']
|
|
// Les épisodes de tous les podcasts seront mélangés et triés par date
|
|
if (!defined('CASTOPOD_PODCAST_SLUGS')) {
|
|
define('CASTOPOD_PODCAST_SLUGS', ['annu_kute_cedric']);
|
|
}
|
|
|
|
// Nombre d'épisodes à afficher (total, tous podcasts confondus)
|
|
if (!defined('CASTOPOD_EPISODES_COUNT')) define('CASTOPOD_EPISODES_COUNT', 5);
|
|
|
|
// =========================================
|
|
// Configuration Funkwhale
|
|
// =========================================
|
|
|
|
// Activer l'affichage des morceaux Funkwhale
|
|
if (!defined('FUNKWHALE_ENABLED')) define('FUNKWHALE_ENABLED', false);
|
|
|
|
// URL de l'instance Funkwhale
|
|
if (!defined('FUNKWHALE_URL')) define('FUNKWHALE_URL', 'https://mizik.o-k-i.net');
|
|
|
|
// Nombre de morceaux à afficher
|
|
if (!defined('FUNKWHALE_TRACKS_COUNT')) define('FUNKWHALE_TRACKS_COUNT', 10);
|
|
|
|
// Tags pour filtrer les vidéos selon les catégories
|
|
if (!defined('TAG_SHORT')) define('TAG_SHORT', 'short');
|
|
|
|
// Hashtags importants à afficher dans la sidebar, footer et menu mobile
|
|
if (!defined('IMPORTANT_TAGS')) {
|
|
define('IMPORTANT_TAGS', [
|
|
'ANNUKUTECED'
|
|
]);
|
|
}
|
|
|
|
// Hashtags populaires à afficher sur la page d'accueil
|
|
if (!defined('POPULAR_TAGS')) {
|
|
define('POPULAR_TAGS', [
|
|
'ANNUKUTECED'
|
|
]);
|
|
}
|
|
|
|
// =========================================
|
|
// Système de compte à rebours / maintenance
|
|
// =========================================
|
|
|
|
// Activer le mode compte à rebours (true/false) - valeur par défaut
|
|
if (!defined('COUNTDOWN_ENABLED')) define('COUNTDOWN_ENABLED', false);
|
|
|
|
// Date de fin du compte à rebours par défaut (format: Y-m-d H:i:s)
|
|
if (!defined('COUNTDOWN_TARGET_DATE')) define('COUNTDOWN_TARGET_DATE', '2025-10-11 00:00:00');
|
|
|
|
// Territoires et fuseaux horaires par défaut pour la page de compte à rebours
|
|
if (!defined('COUNTDOWN_TIMEZONES')) {
|
|
define('COUNTDOWN_TIMEZONES', [
|
|
'Martinique / Guadeloupe' => 'America/Martinique',
|
|
'Guyane' => 'America/Cayenne',
|
|
'France' => 'Europe/Paris',
|
|
'Ma\'ohi Nui' => 'Pacific/Tahiti',
|
|
'Kanaky' => 'Pacific/Noumea'
|
|
]);
|
|
}
|
|
|
|
// =========================================
|
|
// Intégration WordPress par défaut
|
|
// =========================================
|
|
|
|
// URL du site WordPress par défaut
|
|
if (!defined('WORDPRESS_URL')) define('WORDPRESS_URL', '');
|
|
|
|
// Nombre d'articles WordPress à afficher par défaut
|
|
if (!defined('WORDPRESS_POSTS_COUNT')) define('WORDPRESS_POSTS_COUNT', 6);
|
|
|
|
// Activation des articles WordPress par défaut
|
|
if (!defined('WORDPRESS_ENABLED')) define('WORDPRESS_ENABLED', false);
|
|
|
|
// =========================================
|
|
// Système de dons par défaut
|
|
// =========================================
|
|
|
|
// Activation du système de dons par défaut
|
|
// Par défaut les dons sont activés et pointent vers les comptes de l'association
|
|
// ORGANISATION KA INTERNATIONALE (OKI), mainteneur de l'application.
|
|
// Modifiez ces valeurs dans config.local.php pour utiliser vos propres comptes.
|
|
if (!defined('DONATIONS_ENABLED')) define('DONATIONS_ENABLED', true);
|
|
|
|
// URLs des plateformes de don
|
|
if (!defined('LIBERAPAY_URL')) define('LIBERAPAY_URL', 'https://liberapay.com/OKI/donate');
|
|
if (!defined('KOFI_URL')) define('KOFI_URL', ''); // Ex: https://ko-fi.com/votre-compte
|
|
if (!defined('STRIPE_ENABLED')) define('STRIPE_ENABLED', false);
|
|
|
|
// Message de transparence affiché sur la page de dons.
|
|
// Renseignez ce texte lorsque les liens pointent vers les comptes d'une organisation
|
|
// tierce (par exemple OKI) afin d'expliquer aux visiteurs pourquoi.
|
|
if (!defined('DONATIONS_OKI_DISCLAIMER')) {
|
|
define('DONATIONS_OKI_DISCLAIMER', 'Les liens ci-dessous pointent vers les comptes de donation de l\'association ORGANISATION KA INTERNATIONALE (OKI), mainteneur de cette application libre sous licence AGPL. Vous pouvez les remplacer par vos propres liens dans config.local.php ou désactiver la page de dons avec DONATIONS_ENABLED.');
|
|
}
|
|
|
|
// Configuration Stripe
|
|
if (!defined('STRIPE_ONE_TIME_LINKS')) {
|
|
define('STRIPE_ONE_TIME_LINKS', [
|
|
1 => 'https://don.o-k-i.net/b/aEUdTw5SD3SH7m0bII', // Lien pour don de 1€
|
|
5 => 'https://don.o-k-i.net/b/4gw6r480L1Kz5dScMO', // Lien pour don de 5€
|
|
10 => 'https://don.o-k-i.net/b/5kA02G1Cn4WLbCgeUV', // Lien pour don de 10€
|
|
20 => 'https://don.o-k-i.net/b/fZebLo94PfBpayc5kn', // Lien pour don de 20€
|
|
50 => 'https://don.o-k-i.net/b/6oE5n05SDdth49O004', // Lien pour don de 50€
|
|
'custom' => 'https://don.o-k-i.net/b/6oE2aO94P88X9u8eV4' // Lien pour montant personnalisé
|
|
]);
|
|
}
|
|
|
|
if (!defined('STRIPE_MONTHLY_LINKS')) {
|
|
define('STRIPE_MONTHLY_LINKS', [
|
|
1 => 'https://don.o-k-i.net/b/7sI9Dgch14WL7m0fZ3', // Lien pour don mensuel de 1€
|
|
5 => 'https://don.o-k-i.net/b/8wM4iW4Ozbl95dS6ow', // Lien pour don mensuel de 5€
|
|
10 => 'https://don.o-k-i.net/b/8wM2aO80L74TcGk3ci', // Lien pour don mensuel de 10€
|
|
20 => 'https://don.o-k-i.net/b/00g7v894P88XgWAfZ7', // Lien pour don mensuel de 20€
|
|
50 => 'https://don.o-k-i.net/b/4gw8zc6WHgFtcGkbIP', // Lien pour don mensuel de 50€
|
|
]);
|
|
}
|
|
|
|
// Montants de dons suggérés par défaut
|
|
if (!defined('DONATION_AMOUNTS')) define('DONATION_AMOUNTS', [1, 5, 10, 20, 50]);
|
|
|
|
// Devise par défaut
|
|
if (!defined('DONATION_CURRENCY')) define('DONATION_CURRENCY', 'EUR');
|
|
|
|
// =========================================
|
|
// Annonce du prochain live
|
|
// =========================================
|
|
|
|
// Activer/désactiver l'annonce du prochain live par défaut
|
|
if (!defined('NEXT_LIVE_ENABLED')) define('NEXT_LIVE_ENABLED', false);
|
|
|
|
// Titre de l'annonce du prochain live
|
|
if (!defined('NEXT_LIVE_TITLE')) define('NEXT_LIVE_TITLE', 'Prochain live');
|
|
|
|
// Description de l'annonce du prochain live
|
|
if (!defined('NEXT_LIVE_DESCRIPTION')) define('NEXT_LIVE_DESCRIPTION', 'Rejoignez-nous pour notre prochain live !');
|
|
|
|
// Date du prochain live (format: Y-m-d H:i:s)
|
|
if (!defined('NEXT_LIVE_DATE')) define('NEXT_LIVE_DATE', '');
|
|
|
|
// Chemin vers l'image d'annonce du prochain live (relatif à la racine du site)
|
|
// Exemple: 'uploads/next-live.jpg'
|
|
if (!defined('NEXT_LIVE_IMAGE')) define('NEXT_LIVE_IMAGE', 'uploads/next-live.jpg');
|