80 lines
2.5 KiB
PHP

<?php
/**
* FavMasToKey - Configuration
*/
// Empêcher l'accès direct au fichier
if (!defined('FAVMASTOKEY')) {
die('Accès direct interdit');
}
// Environnement (development ou production)
define('ENVIRONMENT', 'development');
// Gestion des erreurs selon l'environnement
if (ENVIRONMENT === 'development') {
error_reporting(E_ALL);
ini_set('display_errors', 1);
} else {
error_reporting(0);
ini_set('display_errors', 0);
}
// Configuration de l'application
$config = [
// Informations de l'application
'app_name' => 'FavMasToKey',
'app_description' => 'Outil de transfert des favoris de Mastodon vers Misskey',
'app_version' => '0.2.0',
// URLs de base
'app_url' => (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']),
// Paramètres Misskey API
'misskey_api_endpoint' => '/api/notes/favorites/create',
// Paramètres pour le traitement
'batch_size' => 10, // Nombre de favoris à traiter en une fois
'timeout' => 30, // Timeout des requêtes en secondes
'max_retries' => 3, // Nombre maximal de tentatives par favori
'delay_between_requests' => 500 // Délai entre les requêtes en millisecondes (pour éviter le rate limiting)
];
// Fichier de stockage des informations d'application par instance
$app_data_file = __DIR__ . '/app_data.php';
// Charger ou créer le fichier de données d'application
if (file_exists($app_data_file)) {
include $app_data_file;
} else {
// Structure initiale pour les données d'application
$app_data = [
'instances' => []
];
// Créer le fichier avec une structure protégée
$app_data_content = "<?php\n// Généré automatiquement - Ne pas modifier manuellement\nif (!defined('FAVMASTOKEY')) { die('Accès direct interdit'); }\n\$app_data = " . var_export($app_data, true) . ";\n?>";
file_put_contents($app_data_file, $app_data_content);
}
/**
* Sauvegarde les données d'application
*/
function save_app_data() {
global $app_data, $app_data_file;
$app_data_content = "<?php\n// Généré automatiquement - Ne pas modifier manuellement\nif (!defined('FAVMASTOKEY')) { die('Accès direct interdit'); }\n\$app_data = " . var_export($app_data, true) . ";\n?>";
file_put_contents($app_data_file, $app_data_content);
}
// Session
session_start();
// Fonctions utilitaires
function debug($data) {
if (ENVIRONMENT === 'production') {
echo '<pre>';
print_r($data);
echo '</pre>';
}
}