├── .DS_Store ├── .env ├── .gitignore ├── .stylelintrc.json ├── admin │ ├── .DS_Store │ ├── annuaire │ │ ├── pros.php │ │ ├── pros_add.php │ │ ├── pros_edit.php │ │ ├── save_order.php │ │ ↳ function updateOrder() │ │ ├── thematiques.php │ │ ↳ function renderNestedTable() │ │ ├── thematiques_add.php │ │ └── thematiques_edit.php │ ├── bootstrap.php │ ├── core │ │ ├── form.php │ │ ↳ function get_form_data() │ │ ├── functions.php │ │ ↳ function render_header() │ │ ↳ function render_footer() │ │ ↳ function build_thematiques_tree() │ │ ↳ function render_thematiques_checkboxes() │ │ ↳ function asset_version() │ │ ↳ function slugify() │ │ └── generate_snapshot.php │ │ ↳ function generate_snapshot() │ │ ↳ function generate_apiflash_image() │ ├── index.php │ ├── js │ │ ├── Sortable.min.js │ │ ├── nested-sort.umd.min.js │ │ └── theme.js │ └── templates │ ├── footer.php │ └── header.php ├── arborescence.py ├── assets │ ├── .DS_Store │ ├── scripts │ │ └── base.js │ └── styles │ ├── .DS_Store │ ├── base.scss │ ├── components │ │ ├── _annuaire.scss │ │ ├── _breadcrumb.scss │ │ ├── _buttons.scss │ │ ├── _headings.scss │ │ ├── _megamenu.scss │ │ └── _sections.scss │ ├── elements │ │ ├── _document.scss │ │ └── _reset.scss │ ├── objects │ │ ├── _container.scss │ │ └── _index.scss │ ├── pages │ │ └── _home.scss │ ├── settings │ │ ├── _config.breakpoints.scss │ │ ├── _config.colors.scss │ │ ├── _config.fonts.scss │ │ ├── _config.scss │ │ ├── _config.spacings.scss │ │ └── _config.variables.scss │ └── tools │ ├── _functions.scss │ ├── _index.scss │ └── _maths.scss ├── config │ └── config.php │ ↳ function loadEnv() ├── controllers │ ├── annuaire.php │ └── home.php ├── core │ ├── breadcrumb.php │ ↳ function get_breadcrumb() │ ├── functions.php │ ↳ function render_header() │ ↳ function render_footer() │ ↳ function asset_version() │ ↳ function shortURL() │ └── router.php ├── db │ ├── annuaire_navigation.php │ ↳ function afficher_navigation_megamenu() │ ↳ function afficher_sous_categories_colonnes() │ ↳ function get_pays_disponibles() │ ├── annuaire_professionnels.php │ ↳ function afficher_thematique_et_pros() │ ↳ function afficher_tableau_pros() │ ↳ function filtrer_par_pays() │ ↳ function count_pros_for_thematique() │ ├── annuaire_thematiques.php │ ↳ function get_all_thematiques() │ ↳ function get_thematique_by_id() │ ↳ function get_child_thematiques() │ ↳ function get_thematique_ancestors_ids() │ ↳ function get_all_descendant_ids() │ ↳ function get_thematique_by_slug() │ └── pays.php │ ↳ function get_all_pays() ├── eslint.config.js ├── package-lock.json ├── package.json ├── public │ ├── .htaccess │ ├── dist │ │ ├── css │ │ │ └── theme.css │ │ └── js │ │ ├── theme.js │ │ └── thirdPartyNotice.json │ ├── index.php │ └── uploads │ └── snapshots │ ├── .DS_Store │ ├── 1000 │ │ ├── snapshot_6846b2f119c64.jpg │ │ └── snapshot_6846b3717ddb5.jpg │ └── thumbs │ ├── snapshot_6844953e2b0f2.jpg │ ├── snapshot_6846b2f119c64.jpg │ └── snapshot_6846b3717ddb5.jpg ├── readme.md ├── robots.txt ├── schema │ └── schema.sql ├── templates │ ├── footer.php │ └── header.php └── webpack.config.cjs