diff --git a/config/unicaen-bddadmin.global.php.dist b/config/unicaen-bddadmin.global.php.dist new file mode 100644 index 0000000000000000000000000000000000000000..85d5710cfe12afb770eca4985cd4ca99876645f7 --- /dev/null +++ b/config/unicaen-bddadmin.global.php.dist @@ -0,0 +1,124 @@ +<?php + +/* + * Fichier à copier/coller dans config/autoload/unicaen-bddadmin.global.php + * + * Les options commentées ici sont placées pour illustrer les valeurs par défaut + * A décommenter et modifier le cas échéant + */ + +return [ + 'unicaen-bddadmin' => [ + 'ddl' => [ + /* Répertoire où placer votre DDL */ + //'dir' => 'data/ddl', + + /* Nom par défaut du fichier de sauvegarde des positionnements de colonnes */ + //'columns_positions_file' => 'data/ddl_columns_pos.php', + ], + + 'data' => [ + 'config' => [ + /* array dont le format est le suivant : + * + * 'nom_de_ma_table => [ + * // à adapter, 'install' par exemple pour un jeu de données servant à installer l'appli qui sera paramétré ensuite + * 'actions' => ['install', 'update'], + * + * // string|array : liste des colonnes servant à identifier de manière certaine et unique les lignes (par exemple 'code') + * 'key' => 'code', + * + * // Ce tableau d'options est transmis à la fonction Unicaen\BddAdmin\Table::merge + * // vous pouvez vous renseigner sur l'usage de cette méthode, car bien d'autres possibilités existent... + * 'options => [ + * // permet au besoin de faire des ajouts et des modifs, mais jamais de supprimer ce ui a été ajouté par ailleurs + * 'delete' => false, + * + * // avec cet exemple la mise à jour du jeu de données ne concernera pas les données saisies dans la colonne ma_col_specifique + * 'update-ignore-cols' => ['ma_col_specifique'], + * + * ... + * ], + * ], + * ... + */ + ], + 'sources' => [ + /* Liste des sources sous forme de tableau + * Les valeurs correspondant à des noms de classes PHP qui seront instanciées par le DataManager + * Vous pouvez également passer des noms ou alias de services déclarés auprès du serviceManager de Laminas + * pour profiter de l'injection de dépendance + */ + ], + ], + + 'migration' => [ + /* Liste des scripts de migration sous forme de tableau + * Les scripts de migration devront tous hériter de la classe abstraite Unicaen\BddAdmin\Migration\MigrationAction + * Les valeurs correspondant à des noms de classes PHP qui seront instanciées par le DataManager + * Vous pouvez également passer des noms ou alias de services déclarés auprès du serviceManager de Laminas + * pour profiter de l'injection de dépendance + */ + ], + + /* Nom des colonnes servant de clé primaire dans vos tables, généralement 'id' pour la compatibilité avec Doctrine + * Si des tables n'ont pas de colonne 'id' ou personnalisé, le système fonctionnera sans utiliser les séquences pour initialiser la clé primaire + */ + //'id_column' => 'id', + + 'histo' => [ + /* ID par défaut de l'utilisateur utilisé par le DataManager pour insérer ou modifier les données + * Peut être fourni ici ou bien dans une factory adaptée en utilisant la méthode suivante : + * + * $config = [...config de bddAdmin...]; + * $bdd = new Unicaen\BddAdmin\Bdd($config); + * + * $monUsername = 'mon_username'; + * $monId = $bdd->selectOne('SELECT id FROM utilisateur WHERE username=:username', ['username' => $monUsername], 'id'); + * $bdd->setHistoUserId($monId); + * + * Si user_id est NULL, cette fonctionnalité d'historisation sera désactivée + */ + //'user_id' => null, + + /* Noms des colonnes utilisées pour gérer les historiques + * Attention : tous les noms doivent être renseignés ou alors tous mis à NULL si pas de gestion d'historiques + * Se base par défaut sur ce qui est préconisé pour UnicaenApp\Entity\HistoriqueAwareInterface + * + * Si vos tables ne possèdent pas l'ensemble de ces colonnes, la gestion de l'historique ne sera pas appliquée sur celles-ci + */ + //'histo_creation_column' => 'histo_creation', + //'histo_modification_column' => 'histo_modification', + //'histo_destruction_column' => 'histo_destruction', + //'histo_createur_id_column' => 'histo_createur_id', + //'histo_modificateur_id_column' => 'histo_modificateur_id', + //'histo_destructeur_id_column' => 'histo_destructeur_id', + ], + + 'import' => [ + /* Compatibilité avec un système d'import de données + * ID de la source par défaut utilisée par le DataManager pour insérer une ligne d'une table synchronisable + * Peut être fourni ici ou bien dans une factory adaptée en utilisant la méthode suivante : + * + * $config = [...config de bddAdmin...]; + * $bdd = new Unicaen\BddAdmin\Bdd($config); + * + * $code = 'ma_source'; + * $monId = $bdd->selectOne('SELECT id FROM source WHERE code=:code', ['code' => $code], 'id'); + * $bdd->setSourceId($monId); + * + * Si source_id est NULL, cette fonctionnalité d'initialisation de sources sera désactivée + * + */ + //'source_id' => null, + + /* Noms des colonnes utilisées pour gérer les données liées à l'import depuis d'autres logiciels + * Attention : tous les noms doivent être renseignés ou alors tous mis à NULL si pas de gestion d'import + * + * Si vos tables ne possèdent pas l'ensemble de ces colonnes, la gestion des colonnes d'import ne sera pas appliquée sur celles-ci + */ + //'source_id_column' => 'source_id', + //'source_code_column' => 'source_code', + ], + ], +]; \ No newline at end of file diff --git a/config/unicaen-bddadmin.local.php.dist b/config/unicaen-bddadmin.local.php.dist new file mode 100644 index 0000000000000000000000000000000000000000..3d5d49bedb1390d740e31c0aa5fd36e95e0a0e0e --- /dev/null +++ b/config/unicaen-bddadmin.local.php.dist @@ -0,0 +1,30 @@ +<?php + +/* + * Fichier à copier/coller dans config/autoload/unicaen-bddadmin.local.php + */ + +return [ + 'unicaen-bddadmin' => [ + 'connection' => [ + 'default' => [ // généralement : base de dév + 'host' => 'à renseigner ...', + 'port' => 'à renseigner ...', + 'dbname' => 'à renseigner ...', + 'user' => 'à renseigner ...', + 'password' => 'à renseigner ...', + ], + /* Autres instances éventuelles de votre base de données + 'preprod' => [ + 'host' => 'à renseigner ...', + ... + ], + 'prod' => [ + 'host' => 'à renseigner ...', + ... + ], + ... + */ + ], + ], +]; \ No newline at end of file