Files
ms1inscription-v5/php/inc_fx_static_sync_config.php

152 lines
5.3 KiB
PHP

<?php
/**
* Liste des tables statiques pour sync_static_db.php.
* Connexions BD : inc_settings.php uniquement ($arrConDatabasePreProd, Prod, Client*).
*/
/**
* Tables statiques / programmation — source de vérité : devinscription_preprod.
* Ajouter ici toute nouvelle table de référence à synchroniser.
*
* keys : clé métier (identifiant logique de la ligne)
* ignore_cols : colonnes exclues du hash de contenu (PK auto, timestamps)
*/
function fxStaticSyncTableDefinitions() {
return array(
array(
'table' => 'info',
'label' => 'Textes UI (info)',
'keys' => array('info_clef', 'info_langue', 'info_prg'),
'ignore_cols' => array('pk_info', 'info_creation', 'info_maj'),
),
array(
'table' => 'doc_mod',
'label' => 'Documentation — modules',
'keys' => array('doc_mod_clef', 'doc_mod_prg'),
'ignore_cols' => array('pk_doc_mod', 'doc_mod_creation', 'doc_mod_maj'),
),
array(
'table' => 'doc_page',
'label' => 'Documentation — pages',
'keys' => array('doc_page_clef', 'doc_langue', 'doc_prg'),
'ignore_cols' => array('pk_doc_page', 'doc_creation', 'doc_maj'),
),
array(
'table' => 'doc_anchor',
'label' => 'Documentation — ancres',
'keys' => array('doc_anchor_clef', 'doc_prg'),
'ignore_cols' => array('pk_doc_anchor', 'doc_creation'),
),
array(
'table' => 'inscriptions_eve_permissions',
'label' => 'Accès v2 — permissions',
'keys' => array('perm_key'),
'ignore_cols' => array(),
// CON-333 — catalogue : les en trop peuvent être retirés pour coller à la préprod.
'allow_remove_extras' => true,
),
array(
'table' => 'inscriptions_eve_roles',
'label' => 'Accès v2 — rôles',
'keys' => array('role_code'),
'ignore_cols' => array('role_id', 'role_created_at', 'role_updated_at'),
'allow_remove_extras' => true,
),
array(
'table' => 'inscriptions_eve_role_permissions',
'label' => 'Accès v2 — matrice rôles',
// CON-333 — role_id change entre BD ; comparer / sync via role_code.
'keys' => array('role_code', 'perm_key'),
'ignore_cols' => array('role_id'),
'join_role_code' => true,
'allow_remove_extras' => true,
),
array(
'table' => 'inscriptions_pages',
'label' => 'Pages promoteur',
'keys' => array('pag_code'),
'ignore_cols' => array('pag_id', 'pag_maj'),
),
array(
'table' => 'inscriptions_pays',
'label' => 'Pays',
'keys' => array('pay_iso'),
'ignore_cols' => array('pay_id'),
),
array(
'table' => 'inscriptions_provinces',
'label' => 'Provinces',
'keys' => array('pro_iso'),
'ignore_cols' => array('pro_id'),
),
array(
'table' => 'modes_remboursements',
'label' => 'Modes remboursement',
'keys' => array('mr_id'),
'ignore_cols' => array(),
),
array(
'table' => 'types_remboursements',
'label' => 'Types remboursement',
'keys' => array('tr_id'),
'ignore_cols' => array(),
),
array(
'table' => 'adm_menus',
'label' => 'ADM — menus',
'keys' => array('men_id'),
'ignore_cols' => array(),
),
array(
'table' => 'adm_forms',
'label' => 'ADM — formulaires',
'keys' => array('for_id'),
'ignore_cols' => array(),
),
array(
'table' => 'adm_labels',
'label' => 'ADM — labels',
'keys' => array('lab_id'),
'ignore_cols' => array(),
),
array(
'table' => 'adm_messages',
'label' => 'ADM — messages',
'keys' => array('mes_id'),
'ignore_cols' => array(),
),
array(
'table' => 'config_query',
'label' => 'Config — requêtes',
'keys' => array('query_clef'),
'ignore_cols' => array('pk_query'),
),
array(
'table' => 'config_tableau',
'label' => 'Config — tableaux',
'keys' => array('clef'),
'ignore_cols' => array('id'),
),
array(
'table' => 'regles_niveau',
'label' => 'Règles niveau',
'keys' => array('reg_id'),
'ignore_cols' => array(),
),
// CON-333 — seeds traçabilité fiche (MSIN-4464) ; log runtime exclu.
array(
'table' => 'inscriptions_fiche_audit_settings',
'label' => 'Audit fiche — réglages',
'keys' => array('setting_id'),
'ignore_cols' => array('setting_updated_at'),
),
array(
'table' => 'inscriptions_fiche_audit_fields',
'label' => 'Audit fiche — champs',
'keys' => array('field_key'),
'ignore_cols' => array('field_updated_at'),
),
);
}