251 lines
11 KiB
PHP
251 lines
11 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Configuration par défaut de FEDIVERSE OKI
|
|
*
|
|
* 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', 'fediverse.o-k-i.net');
|
|
|
|
if (!defined('ORGANIZATION_SHORT_NAME')) define('ORGANIZATION_SHORT_NAME', 'OKI');
|
|
if (!defined('ORGANIZATION_NAME')) define('ORGANIZATION_NAME', 'ORGANISATION KA INTERNATIONALE');
|
|
|
|
// 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', [
|
|
11 => 'Actualités & Politique',
|
|
15 => 'Science et Technologie',
|
|
4 => 'Art',
|
|
9 => 'Humour',
|
|
10 => 'Divertissement'
|
|
]);
|
|
}
|
|
|
|
// =========================================
|
|
// Configuration Mastodon
|
|
// =========================================
|
|
if (!defined('MASTODON_INSTANCE_URL')) define('MASTODON_INSTANCE_URL', 'https://bokantaj.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', 'FEDIVERSE OKI');
|
|
if (!defined('SITE_DESCRIPTION')) define('SITE_DESCRIPTION', 'Plateforme multimedia indépendante');
|
|
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://bokantaj.o-k-i.net/@admin');
|
|
|
|
// Contacts
|
|
if (!defined('CONTACT_EMAIL')) define('CONTACT_EMAIL', 'kontak.o-k-i.net');
|
|
|
|
// Mentions légales
|
|
if (!defined('LEGAL_COPYRIGHT')) define('LEGAL_COPYRIGHT', 'OKI');
|
|
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://codeberg.org/OKI/fediverse.o-k-i.net');
|
|
if (!defined('LEGAL_SERVICE_DESCRIPTION')) define('LEGAL_SERVICE_DESCRIPTION', 'est une plateforme multimédia indépendante.');
|
|
|
|
// Fonctionnalités
|
|
define('ENABLE_SEARCH', true);
|
|
if (!defined('ENABLE_USER_ACCOUNTS')) define('ENABLE_USER_ACCOUNTS', false);
|
|
|
|
// Cache
|
|
if (!defined('CACHE_ENABLED')) define('CACHE_ENABLED', false);
|
|
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), 'none' (masquer)
|
|
if (!defined('HERO_TYPE')) define('HERO_TYPE', 'live');
|
|
|
|
// Configuration pour le direct (HERO_TYPE = 'live')
|
|
if (!defined('LIVE_ACCOUNT_NAME')) define('LIVE_ACCOUNT_NAME', 'admin');
|
|
|
|
// 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', '');
|
|
|
|
// 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', [
|
|
'Chlordécone',
|
|
'RCI',
|
|
'Mé67',
|
|
'Traduction',
|
|
'fediverse'
|
|
]);
|
|
}
|
|
|
|
// Hashtags populaires à afficher sur la page d'accueil
|
|
if (!defined('POPULAR_TAGS')) {
|
|
define('POPULAR_TAGS', [
|
|
'fediverse',
|
|
'guadeloupe',
|
|
'Gaza',
|
|
'Arte'
|
|
]);
|
|
}
|
|
|
|
// =========================================
|
|
// 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
|
|
if (!defined('DONATIONS_ENABLED')) define('DONATIONS_ENABLED', false);
|
|
|
|
// URLs des plateformes de don
|
|
if (!defined('LIBERAPAY_URL')) define('LIBERAPAY_URL', ''); // Ex: https://liberapay.com/votre-compte/donate
|
|
if (!defined('KOFI_URL')) define('KOFI_URL', ''); // Ex: https://ko-fi.com/votre-compte
|
|
if (!defined('STRIPE_ENABLED')) define('STRIPE_ENABLED', false);
|
|
|
|
// Configuration Stripe
|
|
if (!defined('STRIPE_ONE_TIME_LINKS')) {
|
|
define('STRIPE_ONE_TIME_LINKS', [
|
|
1 => '', // Lien Stripe pour don de 1€
|
|
5 => '', // Lien Stripe pour don de 5€
|
|
10 => '', // Lien Stripe pour don de 10€
|
|
20 => '', // Lien Stripe pour don de 20€
|
|
50 => '', // Lien Stripe pour don de 50€
|
|
'custom' => '' // Lien Stripe pour montant personnalisé
|
|
]);
|
|
}
|
|
|
|
if (!defined('STRIPE_MONTHLY_LINKS')) {
|
|
define('STRIPE_MONTHLY_LINKS', [
|
|
1 => '', // Lien Stripe pour don mensuel de 1€
|
|
5 => '', // Lien Stripe pour don mensuel de 5€
|
|
10 => '', // Lien Stripe pour don mensuel de 10€
|
|
20 => '', // Lien Stripe pour don mensuel de 20€
|
|
50 => '', // Lien Stripe 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');
|
|
?>
|