{"id":2276,"date":"2025-10-17T10:21:34","date_gmt":"2025-10-17T08:21:34","guid":{"rendered":"https:\/\/adice-interim.fr\/?page_id=2276"},"modified":"2025-10-17T10:28:34","modified_gmt":"2025-10-17T08:28:34","slug":"offres","status":"publish","type":"page","link":"https:\/\/adice-interim.fr\/index.php\/offres\/","title":{"rendered":"Offres"},"content":{"rendered":"[et_pb_section fb_built=\u00a0\u00bb1&Prime; _builder_version=\u00a0\u00bb4.18.0&Prime; _module_preset=\u00a0\u00bbdefault\u00a0\u00bb background_color=\u00a0\u00bb#EDEFEF\u00a0\u00bb global_colors_info=\u00a0\u00bb{}\u00a0\u00bb theme_builder_area=\u00a0\u00bbpost_content\u00a0\u00bb][et_pb_row _builder_version=\u00a0\u00bb4.18.0&Prime; _module_preset=\u00a0\u00bbdefault\u00a0\u00bb global_colors_info=\u00a0\u00bb{}\u00a0\u00bb theme_builder_area=\u00a0\u00bbpost_content\u00a0\u00bb][et_pb_column type=\u00a0\u00bb4_4&Prime; _builder_version=\u00a0\u00bb4.18.0&Prime; _module_preset=\u00a0\u00bbdefault\u00a0\u00bb global_colors_info=\u00a0\u00bb{}\u00a0\u00bb theme_builder_area=\u00a0\u00bbpost_content\u00a0\u00bb][et_pb_text _builder_version=\u00a0\u00bb4.18.0&Prime; _module_preset=\u00a0\u00bbdefault\u00a0\u00bb text_font=\u00a0\u00bb|700|||||||\u00a0\u00bb text_text_color=\u00a0\u00bb#DD2F27&Prime; global_colors_info=\u00a0\u00bb{}\u00a0\u00bb theme_builder_area=\u00a0\u00bbpost_content\u00a0\u00bb]<h1>Offres d&#8217;emploi<\/h1>\n<p>\u2192 votre recherche<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=\u00a0\u00bb1&Prime; admin_label=\u00a0\u00bbsection\u00a0\u00bb _builder_version=\u00a0\u00bb4.16&Prime; global_colors_info=\u00a0\u00bb{}\u00a0\u00bb][et_pb_row admin_label=\u00a0\u00bbrow\u00a0\u00bb _builder_version=\u00a0\u00bb4.16&Prime; background_size=\u00a0\u00bbinitial\u00a0\u00bb background_position=\u00a0\u00bbtop_left\u00a0\u00bb background_repeat=\u00a0\u00bbrepeat\u00a0\u00bb global_colors_info=\u00a0\u00bb{}\u00a0\u00bb][et_pb_column type=\u00a0\u00bb4_4&Prime; _builder_version=\u00a0\u00bb4.16&Prime; custom_padding=\u00a0\u00bb|||\u00a0\u00bb global_colors_info=\u00a0\u00bb{}\u00a0\u00bb custom_padding__hover=\u00a0\u00bb|||\u00a0\u00bb][et_pb_text admin_label=\u00a0\u00bbText\u00a0\u00bb _builder_version=\u00a0\u00bb4.16&Prime; background_size=\u00a0\u00bbinitial\u00a0\u00bb background_position=\u00a0\u00bbtop_left\u00a0\u00bb background_repeat=\u00a0\u00bbrepeat\u00a0\u00bb global_colors_info=\u00a0\u00bb{}\u00a0\u00bb custom_padding=\u00a0\u00bb0px|||||\u00a0\u00bb]  <div class=\"gni-wrap\" data-per-page=\"20\">\r\n    <div class=\"gni-head\">\r\n      <div class=\"gni-head-filter\">\r\n        <div>\r\n          <button class=\"gni-filter-btn\" type=\"button\" aria-expanded=\"false\" aria-controls=\"gniFilterModal\">\r\n            <img decoding=\"async\" src=\"\/wp-content\/plugins\/gni-offres\/img\/filter.png\" alt=\"\">\r\n            <span>Filtres<\/span>\r\n          <\/button>\r\n        <\/div>\r\n        <div class=\"gni-chips\" id=\"gniChips\" hidden><\/div>\r\n      <\/div>\r\n      <p id=\"gniCount\" class=\"gni-count\"><\/p>\r\n    <\/div>\r\n\r\n    <ul class=\"gni-list\" id=\"gniList\"><\/ul>\r\n    <nav class=\"gni-pagination\" id=\"gniPager\" role=\"navigation\" aria-label=\"Pagination\" hidden><\/nav>\r\n  <\/div>\r\n\r\n  <!-- Popup filtres -->\r\n  <div class=\"gni-modal\" id=\"gniFilterModal\" aria-hidden=\"true\">\r\n    <div class=\"gni-modal__dialog\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"gniModalTitle\">\r\n      <div class=\"gni-modal__head\">\r\n        <h2 id=\"gniModalTitle\">Filtres<\/h2>\r\n        <button type=\"button\" class=\"gni-modal__close\" aria-label=\"Fermer\">\u00d7<\/button>\r\n      <\/div>\r\n      <div class=\"gni-modal__body\">\r\n        <label class=\"gni-field\">\r\n          <span>Contrats<\/span>\r\n          <select id=\"gniFilterContract\"><option value=\"\">Tous<\/option><\/select>\r\n        <\/label>\r\n        <label class=\"gni-field\">\r\n          <span>Fonctions<\/span>\r\n          <select id=\"gniFilterFunction\"><option value=\"\">Toutes<\/option><\/select>\r\n        <\/label>\r\n        <label class=\"gni-field\">\r\n          <span>Localit\u00e9s<\/span>\r\n          <select id=\"gniFilterCity\"><option value=\"\">Toutes<\/option><\/select>\r\n        <\/label>\r\n      <\/div>\r\n      <div class=\"gni-modal__foot\">\r\n        <button class=\"gni-btn gni-btn--ghost\" type=\"button\" id=\"gniClear\">R\u00e9initialiser<\/button>\r\n        <button class=\"gni-btn\" type=\"button\" id=\"gniApply\">Appliquer<\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <script>\r\n  (function(){\r\n    const DATA = [{\"id\":\"4073909\",\"title\":\"Naceliste h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - Electro-tech.\\\/Automat.\",\"functions\":[\"Ing\\u00e9nierie - Electro-tech.\\\/Automat.\",\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Aigues-Mortes\",\"salary\":\"12,5 - 12,91 \\u20ac \\\/ heure\",\"duration\":\"1 mois\",\"ago\":\"il y a 4 heures\",\"loc\":\"Aigues-Mortes - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - electro-tech.\\\/automat.\",\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"aigues-mortes\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4075228\",\"title\":\"Coordinateur cuisine H\\\/F\",\"contract\":\"CDI\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"Montpellier\",\"salary\":\"2 061,07 - 3 036,35 \\u20ac \\\/ mois\",\"duration\":\"\",\"ago\":\"il y a 3 jours\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"cdi\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4069549\",\"title\":\"Accastilleur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"functions\":[\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"La Grande-Motte\",\"salary\":\"13 - 14 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 3 jours\",\"loc\":\"La Grande-Motte - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - operateur\\\/manoeuvre\",\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"la grande-motte\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4074876\",\"title\":\"Serveur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"Le Grau-du-Roi\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"6 jour\",\"ago\":\"il y a 3 jours\",\"loc\":\"Le Grau-du-Roi - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"le grau-du-roi\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4074868\",\"title\":\"Femme de chambre (Valet de chambre)\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"Le Grau-du-Roi\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"6 jour\",\"ago\":\"il y a 3 jours\",\"loc\":\"Le Grau-du-Roi - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"le grau-du-roi\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3653239\",\"title\":\"conducteur de grue mobile h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 13 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 3 jours\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\",\"logistique\\\/metiers du transport\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4073812\",\"title\":\"technicien velo h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"1 mois\",\"ago\":\"il y a 3 jours\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4010235\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Vauvert\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Vauvert - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"vauvert\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3852747\",\"title\":\"Conducteur de car h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Services \\u00e0 la personne\\\/aux entreprises\",\"functions\":[\"Services \\u00e0 la personne\\\/aux entreprises\",\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Beaucaire\",\"salary\":\"13,09 - 13,1 \\u20ac \\\/ heure\",\"duration\":\"5 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Beaucaire - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"services a la personne\\\/aux entreprises\",\"logistique\\\/metiers du transport\"],\"n_city\":\"beaucaire\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4002646\",\"title\":\"Conducteur de Bus h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Frontignan\",\"salary\":\"12,5 - 12,75 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Frontignan - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"frontignan\",\"n_company\":\"adice interim nimes\"},{\"id\":\"2963755\",\"title\":\"Conducteur de Bus h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Agde\",\"salary\":\"12,5 - 12,75 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Agde - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"agde\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4061597\",\"title\":\"palfrenier H\\\/F\",\"contract\":\"Saisonnier\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"12,02 - 15 \\u20ac \\\/ heure\",\"duration\":\"15 jour\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"saisonnier\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2200554\",\"title\":\"Conducteur de car  h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Caumont-sur-Durance\",\"salary\":\"14 - 14,12 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Caumont-sur-Durance - 84\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"caumont-sur-durance\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3746819\",\"title\":\"Jardinier paysagiste h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\",\"functions\":[\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Salindres\",\"salary\":\"12,5 - 13 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Salindres - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"qualite\\\/hygiene\\\/securite\\\/environnement\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"salindres\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3890447\",\"title\":\"SOUDEUR TIG h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Gestion\\\/Maintenance\",\"functions\":[\"Production - Gestion\\\/Maintenance\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Vestric-et-Candiac\",\"salary\":\"12,5 - 15 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Vestric-et-Candiac - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - gestion\\\/maintenance\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"vestric-et-candiac\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3890451\",\"title\":\"Chaudronnier Inox h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Gestion\\\/Maintenance\",\"functions\":[\"Production - Gestion\\\/Maintenance\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Vestric-et-Candiac\",\"salary\":\"12,5 - 14,5 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Vestric-et-Candiac - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - gestion\\\/maintenance\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"vestric-et-candiac\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010024\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Cognac\",\"salary\":\"13,4 - 13,45 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Cognac - 16\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"cognac\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010060\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Troyes\",\"salary\":\"12,25 - 12,26 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Troyes - 10\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"troyes\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010104\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Narbonne\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Narbonne - 11\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"narbonne\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010148\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"B\\u00e9ziers\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"B\\u00e9ziers - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"beziers\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010195\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Perpignan\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Perpignan - 66\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"perpignan\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3120234\",\"title\":\"Conducteur de BUS h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Beaucaire\",\"salary\":\"13,05 - 13,06 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Beaucaire - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"beaucaire\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3993690\",\"title\":\"Commis de cuisine H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"La Grande-Motte\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"2 mois\",\"ago\":\"il y a 4 semaines\",\"loc\":\"La Grande-Motte - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"la grande-motte\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3690785\",\"title\":\"Menuisier d'agencement nautique H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"functions\":[\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"La Grande-Motte\",\"salary\":\"12,02 - 13,79 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"La Grande-Motte - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - operateur\\\/manoeuvre\",\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"la grande-motte\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3977596\",\"title\":\"Menuisier d'agencement nautique h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Gestion\\\/Maintenance\",\"functions\":[\"Production - Gestion\\\/Maintenance\"],\"city\":\"Lorient\",\"salary\":\"12,44 - 13,65 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"Lorient - 56\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - gestion\\\/maintenance\"],\"n_city\":\"lorient\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2616990\",\"title\":\"MECANICIEN PL h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"Production - Gestion\\\/Maintenance\"],\"city\":\"Frontignan\",\"salary\":\"13 - 15 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"Frontignan - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\",\"production - gestion\\\/maintenance\"],\"n_city\":\"frontignan\",\"n_company\":\"adice interim nimes\"},{\"id\":\"2765257\",\"title\":\"Dessinateur construction m\\u00e9tallique Logiciel Tekla h\\\/f\",\"contract\":\"CDI\",\"function\":\"Bureau d'Etudes\\\/R&D\\\/BTP archi\\\/conception\",\"functions\":[\"Bureau d'Etudes\\\/R&D\\\/BTP archi\\\/conception\"],\"city\":\"Aubord\",\"salary\":\"14 - 17,5 \\u20ac \\\/ heure\",\"duration\":\"\",\"ago\":\"il y a 1 mois\",\"loc\":\"Aubord - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"cdi\",\"n_functions\":[\"bureau d'etudes\\\/r&d\\\/btp archi\\\/conception\"],\"n_city\":\"aubord\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3240518\",\"title\":\"M\\u00e9canicien h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"Fourn\\u00e8s\",\"salary\":\"13,5 - 16 \\u20ac \\\/ heure\",\"duration\":\"8 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"Fourn\\u00e8s - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"fournes\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3653095\",\"title\":\"couvreur zingueur h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Quissac\",\"salary\":\"11,88 - 14,55 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 2 mois\",\"loc\":\"Quissac - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"quissac\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3847762\",\"title\":\"Pr\\u00e9parateur de commande H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Le Vigan\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Le Vigan - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"le vigan\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2705360\",\"title\":\"couvreur zingueur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Gallargues-le-Montueux\",\"salary\":\"13,23 - 15,46 \\u20ac \\\/ heure\",\"duration\":\"8 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Gallargues-le-Montueux - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"gallargues-le-montueux\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3766918\",\"title\":\"M\\u00e9canicien H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 14 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3785136\",\"title\":\"Couvreur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 14 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3785166\",\"title\":\"Charpentier h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"12,02 - 14,55 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3791110\",\"title\":\"aide couvreur zingueur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"12,02 - 13 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3204671\",\"title\":\"Aide charpentier h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"11,88 - 12,5 \\u20ac \\\/ heure\",\"duration\":\"1 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2801495\",\"title\":\"m\\u00e9canicien poids lourd h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Castelnau-le-Lez\",\"salary\":\"14 - 15 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 5 mois\",\"loc\":\"Castelnau-le-Lez - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\",\"logistique\\\/metiers du transport\"],\"n_city\":\"castelnau-le-lez\",\"n_company\":\"adice interim castelnau-le-lez\"}];\r\n    const CONTRACTS = [{\"label\":\"CDI\",\"value\":\"cdi\"},{\"label\":\"Int\\u00e9rim \\\/ mission\",\"value\":\"interim \\\/ mission\"},{\"label\":\"Saisonnier\",\"value\":\"saisonnier\"}];\r\n    const CITIES = [{\"label\":\"Agde\",\"value\":\"agde\"},{\"label\":\"Aigues-Mortes\",\"value\":\"aigues-mortes\"},{\"label\":\"Aubord\",\"value\":\"aubord\"},{\"label\":\"Beaucaire\",\"value\":\"beaucaire\"},{\"label\":\"B\\u00e9ziers\",\"value\":\"beziers\"},{\"label\":\"Castelnau-le-Lez\",\"value\":\"castelnau-le-lez\"},{\"label\":\"Caumont-sur-Durance\",\"value\":\"caumont-sur-durance\"},{\"label\":\"Cognac\",\"value\":\"cognac\"},{\"label\":\"Fourn\\u00e8s\",\"value\":\"fournes\"},{\"label\":\"Frontignan\",\"value\":\"frontignan\"},{\"label\":\"Gallargues-le-Montueux\",\"value\":\"gallargues-le-montueux\"},{\"label\":\"La Grande-Motte\",\"value\":\"la grande-motte\"},{\"label\":\"Le Grau-du-Roi\",\"value\":\"le grau-du-roi\"},{\"label\":\"Le Vigan\",\"value\":\"le vigan\"},{\"label\":\"Lorient\",\"value\":\"lorient\"},{\"label\":\"Lunel\",\"value\":\"lunel\"},{\"label\":\"Montpellier\",\"value\":\"montpellier\"},{\"label\":\"Narbonne\",\"value\":\"narbonne\"},{\"label\":\"Perpignan\",\"value\":\"perpignan\"},{\"label\":\"Quissac\",\"value\":\"quissac\"},{\"label\":\"Salindres\",\"value\":\"salindres\"},{\"label\":\"Troyes\",\"value\":\"troyes\"},{\"label\":\"Vauvert\",\"value\":\"vauvert\"},{\"label\":\"Vestric-et-Candiac\",\"value\":\"vestric-et-candiac\"}];\r\n    const FUNCS = [{\"label\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"value\":\"btp - gros oeuvre\\\/second oeuvre\"},{\"label\":\"Bureau d'Etudes\\\/R&D\\\/BTP archi\\\/conception\",\"value\":\"bureau d'etudes\\\/r&d\\\/btp archi\\\/conception\"},{\"label\":\"Ing\\u00e9nierie - Electro-tech.\\\/Automat.\",\"value\":\"ingenierie - electro-tech.\\\/automat.\"},{\"label\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"value\":\"ingenierie - mecanique\\\/aeron.\"},{\"label\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"value\":\"logistique\\\/metiers du transport\"},{\"label\":\"Production - Gestion\\\/Maintenance\",\"value\":\"production - gestion\\\/maintenance\"},{\"label\":\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"value\":\"production - operateur\\\/manoeuvre\"},{\"label\":\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\",\"value\":\"qualite\\\/hygiene\\\/securite\\\/environnement\"},{\"label\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"value\":\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"},{\"label\":\"Services \\u00e0 la personne\\\/aux entreprises\",\"value\":\"services a la personne\\\/aux entreprises\"}];\r\n    const PER_PAGE = parseInt(document.querySelector('.gni-wrap').dataset.perPage, 10) || 20;\r\n\r\n    const modal   = document.getElementById('gniFilterModal');\r\n    const btnOpen = document.querySelector('.gni-filter-btn');\r\n    const btnClose= modal.querySelector('.gni-modal__close');\r\n    const btnApply= document.getElementById('gniApply');\r\n    const btnClear= document.getElementById('gniClear');\r\n\r\n    const selC = document.getElementById('gniFilterContract');\r\n    const selF = document.getElementById('gniFilterFunction');\r\n    const selT = document.getElementById('gniFilterCity');\r\n\r\n    const list  = document.getElementById('gniList');\r\n    const chips = document.getElementById('gniChips');\r\n    const pager = document.getElementById('gniPager');\r\n\r\n    let filterC = '', filterF = '', filterT = '';\r\n    let page = 1;\r\n\r\n    function openModal(){ modal.setAttribute('aria-hidden','false'); btnOpen.setAttribute('aria-expanded','true'); }\r\n    function closeModal(){ modal.setAttribute('aria-hidden','true');  btnOpen.setAttribute('aria-expanded','false'); }\r\n    btnOpen && btnOpen.addEventListener('click', openModal);\r\n    btnClose && btnClose.addEventListener('click', closeModal);\r\n    modal && modal.addEventListener('click', (e)=>{ if(e.target===modal) closeModal(); });\r\n\r\n    function hydrateSelects(){\r\n      CONTRACTS.forEach(o=>{ const opt = document.createElement('option'); opt.value=o.value; opt.textContent=o.label; selC.appendChild(opt); });\r\n      FUNCS.forEach(o=>{ const opt = document.createElement('option'); opt.value=o.value; opt.textContent=o.label; selF.appendChild(opt); });\r\n      CITIES.forEach(o=>{ const opt = document.createElement('option'); opt.value=o.value; opt.textContent=o.label; selT.appendChild(opt); });\r\n    }\r\n\r\n    function renderChips(){\r\n      chips.innerHTML = '';\r\n      const items = [];\r\n      if (filterC){ const c = CONTRACTS.find(x=>x.value===filterC); items.push(['Contrat', c?.label||filterC, 'C']); }\r\n      if (filterF){ const f = FUNCS.find(x=>x.value===filterF);     items.push(['Fonction', f?.label||filterF, 'F']); }\r\n      if (filterT){ const t = CITIES.find(x=>x.value===filterT);    items.push(['Localit\u00e9', t?.label||filterT, 'T']); }\r\n      if (!items.length){ chips.hidden = true; return; }\r\n      items.forEach(([lbl,val,code])=>{\r\n        const d = document.createElement('div');\r\n        d.className = 'gni-chip';\r\n        d.innerHTML = `<strong>${lbl}:<\/strong> ${val} <button type=\"button\" aria-label=\"Supprimer\">\u00d7<\/button>`;\r\n        d.querySelector('button').addEventListener('click', ()=>{\r\n          if (code==='C'){ filterC=''; selC.value=''; }\r\n          if (code==='F'){ filterF=''; selF.value=''; }\r\n          if (code==='T'){ filterT=''; selT.value=''; }\r\n          page=1; draw();\r\n        });\r\n        chips.appendChild(d);\r\n      });\r\n      chips.hidden=false;\r\n    }\r\n\r\n    function applyFilters(all){\r\n      return all.filter(o=>{\r\n        const okC = (!filterC || o.n_contract===filterC);\r\n        const okF = (!filterF || (Array.isArray(o.n_functions) && o.n_functions.includes(filterF)));\r\n        const okT = (!filterT || o.n_city === filterT);\r\n        return okC && okF && okT;\r\n      });\r\n    }\r\n\r\n    function updateCount(filtered){\r\n      const count = filtered.length;\r\n      const text = `${count} offre${count > 1 ? 's' : ''} d'emploi disponible${count > 1 ? 's' : ''}.`;\r\n      document.getElementById('gniCount').textContent = text;\r\n    }\r\n\r\n    function escapeHtml(s){ return (s||'').replace(\/[&<>\"']\/g, m=>({ '&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#039;' }[m])); }\r\n\r\n    function cardHTML(o) {\r\n      const url = (window.location.origin || '') + '\/offres\/' + encodeURIComponent(o.id) + '\/';\r\n      const showDur = o.duration && !\/^0(?:[^\\d]|$)\/.test(o.duration);\r\n      return `\r\n        <a href=\"${url}\" class=\"gni-card-link\">\r\n          <li class=\"gni-card\">\r\n            <h3 class=\"gni-card__title\">${escapeHtml(o.title || '')}<\/h3>\r\n            <div class=\"gni-card__rows\">\r\n              <div class=\"gni-row\">\r\n                <span class=\"gni-row__left\">${escapeHtml(o.loc || '\u2014')}<\/span>\r\n                <span class=\"gni-row__right\">${escapeHtml(o.contract || '\u2014')}<\/span>\r\n                <span class=\"gni-row__left gni-salary\">${escapeHtml(o.salary || '\u00c0 n\u00e9gocier')}<\/span>\r\n                ${showDur ? `<span class=\"gni-row__right\">${escapeHtml(o.duration)}<\/span>` : ''}\r\n              <\/div>\r\n              <div class=\"gni-row gni-card-footer\">\r\n                <div class=\"gni-row -meta\">\r\n                  ${o.ago ? `<span class=\"gni-ago\">${escapeHtml(o.ago)}<\/span>` : ''}\r\n                <\/div>\r\n                <div class=\"gni-cta\">\r\n                  <span class=\"gni-btn gni-btn--primary\">Voir l\u2019offre<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/li>\r\n        <\/a>\r\n      `;\r\n    }\r\n\r\n    function renderList(rows){ list.innerHTML = rows.map(cardHTML).join(''); }\r\n\r\n    function renderPager(total){\r\n      pager.innerHTML = '';\r\n      const pages = Math.max(1, Math.ceil(total \/ PER_PAGE));\r\n      if (pages<=1){ pager.hidden = true; return; }\r\n      const prev = document.createElement('a');\r\n      prev.className = 'gni-page' + (page<=1?' is-disabled':'');\r\n      prev.textContent = '\u2039';\r\n      if (page>1) prev.addEventListener('click', ()=>{ page--; draw(); });\r\n      pager.appendChild(prev);\r\n\r\n      const windowSize = 2;\r\n      let start = Math.max(1, page - windowSize);\r\n      let end   = Math.min(pages, page + windowSize);\r\n      if (start>1){\r\n        pager.appendChild(pageBtn(1));\r\n        if (start>2) pager.appendChild(ellipsis());\r\n      }\r\n      for (let i=start;i<=end;i++){ pager.appendChild(pageBtn(i, i===page)); }\r\n      if (end<pages){\r\n        if (end<pages-1) pager.appendChild(ellipsis());\r\n        pager.appendChild(pageBtn(pages));\r\n      }\r\n      const next = document.createElement('a');\r\n      next.className = 'gni-page' + (page>=pages?' is-disabled':'');\r\n      next.textContent = '\u203a';\r\n      if (page<pages) next.addEventListener('click', ()=>{ page++; draw(); });\r\n      pager.appendChild(next);\r\n      pager.hidden=false;\r\n\r\n      function pageBtn(n, active=false){\r\n        const a=document.createElement('a');\r\n        a.className='gni-page'+(active?' is-active':'');\r\n        a.textContent=String(n);\r\n        if (!active) a.addEventListener('click', ()=>{ page=n; draw(); });\r\n        return a;\r\n      }\r\n      function ellipsis(){ const s=document.createElement('span'); s.className='gni-ellipsis'; s.textContent='\u2026'; return s; }\r\n    }\r\n\r\n    function draw(){\r\n      const filtered = applyFilters(DATA);\r\n      const total = filtered.length;\r\n      const start = (page-1) * PER_PAGE;\r\n      renderList(filtered.slice(start, start + PER_PAGE));\r\n      renderPager(total);\r\n      renderChips();\r\n      updateCount(filtered);\r\n    }\r\n\r\n    btnApply && btnApply.addEventListener('click', ()=>{ filterC=selC.value||''; filterF=selF.value||''; filterT=selT.value||''; page=1; closeModal(); draw(); });\r\n    btnClear && btnClear.addEventListener('click', ()=>{ selC.value=''; selF.value=''; selT.value=''; });\r\n\r\n    hydrateSelects(); draw();\r\n  })();\r\n  <\/script>\r\n  \n[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section]","protected":false},"excerpt":{"rendered":"<p>Offres d&#8217;emploi \u2192 votre recherche   <div class=\"gni-wrap\" data-per-page=\"20\">\r\n    <div class=\"gni-head\">\r\n      <div class=\"gni-head-filter\">\r\n        <div>\r\n          <button class=\"gni-filter-btn\" type=\"button\" aria-expanded=\"false\" aria-controls=\"gniFilterModal\">\r\n            <img decoding=\"async\" src=\"\/wp-content\/plugins\/gni-offres\/img\/filter.png\" alt=\"\">\r\n            <span>Filtres<\/span>\r\n          <\/button>\r\n        <\/div>\r\n        <div class=\"gni-chips\" id=\"gniChips\" hidden><\/div>\r\n      <\/div>\r\n      <p id=\"gniCount\" class=\"gni-count\"><\/p>\r\n    <\/div>\r\n\r\n    <ul class=\"gni-list\" id=\"gniList\"><\/ul>\r\n    <nav class=\"gni-pagination\" id=\"gniPager\" role=\"navigation\" aria-label=\"Pagination\" hidden><\/nav>\r\n  <\/div>\r\n\r\n  <!-- Popup filtres -->\r\n  <div class=\"gni-modal\" id=\"gniFilterModal\" aria-hidden=\"true\">\r\n    <div class=\"gni-modal__dialog\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"gniModalTitle\">\r\n      <div class=\"gni-modal__head\">\r\n        <h2 id=\"gniModalTitle\">Filtres<\/h2>\r\n        <button type=\"button\" class=\"gni-modal__close\" aria-label=\"Fermer\">\u00d7<\/button>\r\n      <\/div>\r\n      <div class=\"gni-modal__body\">\r\n        <label class=\"gni-field\">\r\n          <span>Contrats<\/span>\r\n          <select id=\"gniFilterContract\"><option value=\"\">Tous<\/option><\/select>\r\n        <\/label>\r\n        <label class=\"gni-field\">\r\n          <span>Fonctions<\/span>\r\n          <select id=\"gniFilterFunction\"><option value=\"\">Toutes<\/option><\/select>\r\n        <\/label>\r\n        <label class=\"gni-field\">\r\n          <span>Localit\u00e9s<\/span>\r\n          <select id=\"gniFilterCity\"><option value=\"\">Toutes<\/option><\/select>\r\n        <\/label>\r\n      <\/div>\r\n      <div class=\"gni-modal__foot\">\r\n        <button class=\"gni-btn gni-btn--ghost\" type=\"button\" id=\"gniClear\">R\u00e9initialiser<\/button>\r\n        <button class=\"gni-btn\" type=\"button\" id=\"gniApply\">Appliquer<\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <script>\r\n  (function(){\r\n    const DATA = [{\"id\":\"4073909\",\"title\":\"Naceliste h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - Electro-tech.\\\/Automat.\",\"functions\":[\"Ing\\u00e9nierie - Electro-tech.\\\/Automat.\",\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Aigues-Mortes\",\"salary\":\"12,5 - 12,91 \\u20ac \\\/ heure\",\"duration\":\"1 mois\",\"ago\":\"il y a 4 heures\",\"loc\":\"Aigues-Mortes - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - electro-tech.\\\/automat.\",\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"aigues-mortes\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4075228\",\"title\":\"Coordinateur cuisine H\\\/F\",\"contract\":\"CDI\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"Montpellier\",\"salary\":\"2 061,07 - 3 036,35 \\u20ac \\\/ mois\",\"duration\":\"\",\"ago\":\"il y a 3 jours\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"cdi\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4069549\",\"title\":\"Accastilleur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"functions\":[\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"La Grande-Motte\",\"salary\":\"13 - 14 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 3 jours\",\"loc\":\"La Grande-Motte - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - operateur\\\/manoeuvre\",\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"la grande-motte\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4074876\",\"title\":\"Serveur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"Le Grau-du-Roi\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"6 jour\",\"ago\":\"il y a 3 jours\",\"loc\":\"Le Grau-du-Roi - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"le grau-du-roi\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4074868\",\"title\":\"Femme de chambre (Valet de chambre)\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"Le Grau-du-Roi\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"6 jour\",\"ago\":\"il y a 3 jours\",\"loc\":\"Le Grau-du-Roi - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"le grau-du-roi\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3653239\",\"title\":\"conducteur de grue mobile h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 13 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 3 jours\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\",\"logistique\\\/metiers du transport\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4073812\",\"title\":\"technicien velo h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"1 mois\",\"ago\":\"il y a 3 jours\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"4010235\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Vauvert\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Vauvert - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"vauvert\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3852747\",\"title\":\"Conducteur de car h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Services \\u00e0 la personne\\\/aux entreprises\",\"functions\":[\"Services \\u00e0 la personne\\\/aux entreprises\",\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Beaucaire\",\"salary\":\"13,09 - 13,1 \\u20ac \\\/ heure\",\"duration\":\"5 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Beaucaire - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"services a la personne\\\/aux entreprises\",\"logistique\\\/metiers du transport\"],\"n_city\":\"beaucaire\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4002646\",\"title\":\"Conducteur de Bus h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Frontignan\",\"salary\":\"12,5 - 12,75 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Frontignan - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"frontignan\",\"n_company\":\"adice interim nimes\"},{\"id\":\"2963755\",\"title\":\"Conducteur de Bus h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Agde\",\"salary\":\"12,5 - 12,75 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Agde - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"agde\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4061597\",\"title\":\"palfrenier H\\\/F\",\"contract\":\"Saisonnier\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"12,02 - 15 \\u20ac \\\/ heure\",\"duration\":\"15 jour\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"saisonnier\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2200554\",\"title\":\"Conducteur de car  h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Caumont-sur-Durance\",\"salary\":\"14 - 14,12 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Caumont-sur-Durance - 84\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"caumont-sur-durance\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3746819\",\"title\":\"Jardinier paysagiste h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\",\"functions\":[\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Salindres\",\"salary\":\"12,5 - 13 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Salindres - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"qualite\\\/hygiene\\\/securite\\\/environnement\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"salindres\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3890447\",\"title\":\"SOUDEUR TIG h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Gestion\\\/Maintenance\",\"functions\":[\"Production - Gestion\\\/Maintenance\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Vestric-et-Candiac\",\"salary\":\"12,5 - 15 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Vestric-et-Candiac - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - gestion\\\/maintenance\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"vestric-et-candiac\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3890451\",\"title\":\"Chaudronnier Inox h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Gestion\\\/Maintenance\",\"functions\":[\"Production - Gestion\\\/Maintenance\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Vestric-et-Candiac\",\"salary\":\"12,5 - 14,5 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Vestric-et-Candiac - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - gestion\\\/maintenance\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"vestric-et-candiac\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010024\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Cognac\",\"salary\":\"13,4 - 13,45 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Cognac - 16\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"cognac\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010060\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Troyes\",\"salary\":\"12,25 - 12,26 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Troyes - 10\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"troyes\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010104\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Narbonne\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Narbonne - 11\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"narbonne\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010148\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"B\\u00e9ziers\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"B\\u00e9ziers - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"beziers\",\"n_company\":\"adice interim nimes\"},{\"id\":\"4010195\",\"title\":\"CHAUFFEUR PL Caces R490 H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\"],\"city\":\"Perpignan\",\"salary\":\"13 - 13,01 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Perpignan - 66\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"qualite\\\/hygiene\\\/securite\\\/environnement\"],\"n_city\":\"perpignan\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3120234\",\"title\":\"Conducteur de BUS h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Beaucaire\",\"salary\":\"13,05 - 13,06 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 2 semaines\",\"loc\":\"Beaucaire - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\"],\"n_city\":\"beaucaire\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3993690\",\"title\":\"Commis de cuisine H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"functions\":[\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\"],\"city\":\"La Grande-Motte\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"2 mois\",\"ago\":\"il y a 4 semaines\",\"loc\":\"La Grande-Motte - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"],\"n_city\":\"la grande-motte\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3690785\",\"title\":\"Menuisier d'agencement nautique H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"functions\":[\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"La Grande-Motte\",\"salary\":\"12,02 - 13,79 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"La Grande-Motte - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - operateur\\\/manoeuvre\",\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"la grande-motte\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3977596\",\"title\":\"Menuisier d'agencement nautique h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Production - Gestion\\\/Maintenance\",\"functions\":[\"Production - Gestion\\\/Maintenance\"],\"city\":\"Lorient\",\"salary\":\"12,44 - 13,65 \\u20ac \\\/ heure\",\"duration\":\"3 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"Lorient - 56\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"production - gestion\\\/maintenance\"],\"n_city\":\"lorient\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2616990\",\"title\":\"MECANICIEN PL h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"Production - Gestion\\\/Maintenance\"],\"city\":\"Frontignan\",\"salary\":\"13 - 15 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"Frontignan - 34\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\",\"production - gestion\\\/maintenance\"],\"n_city\":\"frontignan\",\"n_company\":\"adice interim nimes\"},{\"id\":\"2765257\",\"title\":\"Dessinateur construction m\\u00e9tallique Logiciel Tekla h\\\/f\",\"contract\":\"CDI\",\"function\":\"Bureau d'Etudes\\\/R&D\\\/BTP archi\\\/conception\",\"functions\":[\"Bureau d'Etudes\\\/R&D\\\/BTP archi\\\/conception\"],\"city\":\"Aubord\",\"salary\":\"14 - 17,5 \\u20ac \\\/ heure\",\"duration\":\"\",\"ago\":\"il y a 1 mois\",\"loc\":\"Aubord - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"cdi\",\"n_functions\":[\"bureau d'etudes\\\/r&d\\\/btp archi\\\/conception\"],\"n_city\":\"aubord\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3240518\",\"title\":\"M\\u00e9canicien h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"Fourn\\u00e8s\",\"salary\":\"13,5 - 16 \\u20ac \\\/ heure\",\"duration\":\"8 mois\",\"ago\":\"il y a 1 mois\",\"loc\":\"Fourn\\u00e8s - 30\",\"company\":\"ADICE INTERIM N\\u00eemes\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"fournes\",\"n_company\":\"adice interim nimes\"},{\"id\":\"3653095\",\"title\":\"couvreur zingueur h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Quissac\",\"salary\":\"11,88 - 14,55 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 2 mois\",\"loc\":\"Quissac - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"quissac\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3847762\",\"title\":\"Pr\\u00e9parateur de commande H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"functions\":[\"Logistique\\\/M\\u00e9tiers du Transport\",\"Production - Op\\u00e9rateur\\\/Manoeuvre\"],\"city\":\"Le Vigan\",\"salary\":\"12,02 - 12,02 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Le Vigan - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"logistique\\\/metiers du transport\",\"production - operateur\\\/manoeuvre\"],\"n_city\":\"le vigan\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2705360\",\"title\":\"couvreur zingueur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Gallargues-le-Montueux\",\"salary\":\"13,23 - 15,46 \\u20ac \\\/ heure\",\"duration\":\"8 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Gallargues-le-Montueux - 30\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"gallargues-le-montueux\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3766918\",\"title\":\"M\\u00e9canicien H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 14 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3785136\",\"title\":\"Couvreur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Montpellier\",\"salary\":\"12,02 - 14 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Montpellier - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"montpellier\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3785166\",\"title\":\"Charpentier h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"12,02 - 14,55 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3791110\",\"title\":\"aide couvreur zingueur H\\\/F\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"12,02 - 13 \\u20ac \\\/ heure\",\"duration\":\"6 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"3204671\",\"title\":\"Aide charpentier h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"functions\":[\"BTP - Gros Oeuvre\\\/Second Oeuvre\"],\"city\":\"Lunel\",\"salary\":\"11,88 - 12,5 \\u20ac \\\/ heure\",\"duration\":\"1 mois\",\"ago\":\"il y a 3 mois\",\"loc\":\"Lunel - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"btp - gros oeuvre\\\/second oeuvre\"],\"n_city\":\"lunel\",\"n_company\":\"adice interim castelnau-le-lez\"},{\"id\":\"2801495\",\"title\":\"m\\u00e9canicien poids lourd h\\\/f\",\"contract\":\"Int\\u00e9rim \\\/ mission\",\"function\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"functions\":[\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"Logistique\\\/M\\u00e9tiers du Transport\"],\"city\":\"Castelnau-le-Lez\",\"salary\":\"14 - 15 \\u20ac \\\/ heure\",\"duration\":\"4 mois\",\"ago\":\"il y a 5 mois\",\"loc\":\"Castelnau-le-Lez - 34\",\"company\":\"ADICE INTERIM Castelnau-le-lez\",\"n_contract\":\"interim \\\/ mission\",\"n_functions\":[\"ingenierie - mecanique\\\/aeron.\",\"logistique\\\/metiers du transport\"],\"n_city\":\"castelnau-le-lez\",\"n_company\":\"adice interim castelnau-le-lez\"}];\r\n    const CONTRACTS = [{\"label\":\"CDI\",\"value\":\"cdi\"},{\"label\":\"Int\\u00e9rim \\\/ mission\",\"value\":\"interim \\\/ mission\"},{\"label\":\"Saisonnier\",\"value\":\"saisonnier\"}];\r\n    const CITIES = [{\"label\":\"Agde\",\"value\":\"agde\"},{\"label\":\"Aigues-Mortes\",\"value\":\"aigues-mortes\"},{\"label\":\"Aubord\",\"value\":\"aubord\"},{\"label\":\"Beaucaire\",\"value\":\"beaucaire\"},{\"label\":\"B\\u00e9ziers\",\"value\":\"beziers\"},{\"label\":\"Castelnau-le-Lez\",\"value\":\"castelnau-le-lez\"},{\"label\":\"Caumont-sur-Durance\",\"value\":\"caumont-sur-durance\"},{\"label\":\"Cognac\",\"value\":\"cognac\"},{\"label\":\"Fourn\\u00e8s\",\"value\":\"fournes\"},{\"label\":\"Frontignan\",\"value\":\"frontignan\"},{\"label\":\"Gallargues-le-Montueux\",\"value\":\"gallargues-le-montueux\"},{\"label\":\"La Grande-Motte\",\"value\":\"la grande-motte\"},{\"label\":\"Le Grau-du-Roi\",\"value\":\"le grau-du-roi\"},{\"label\":\"Le Vigan\",\"value\":\"le vigan\"},{\"label\":\"Lorient\",\"value\":\"lorient\"},{\"label\":\"Lunel\",\"value\":\"lunel\"},{\"label\":\"Montpellier\",\"value\":\"montpellier\"},{\"label\":\"Narbonne\",\"value\":\"narbonne\"},{\"label\":\"Perpignan\",\"value\":\"perpignan\"},{\"label\":\"Quissac\",\"value\":\"quissac\"},{\"label\":\"Salindres\",\"value\":\"salindres\"},{\"label\":\"Troyes\",\"value\":\"troyes\"},{\"label\":\"Vauvert\",\"value\":\"vauvert\"},{\"label\":\"Vestric-et-Candiac\",\"value\":\"vestric-et-candiac\"}];\r\n    const FUNCS = [{\"label\":\"BTP - Gros Oeuvre\\\/Second Oeuvre\",\"value\":\"btp - gros oeuvre\\\/second oeuvre\"},{\"label\":\"Bureau d'Etudes\\\/R&D\\\/BTP archi\\\/conception\",\"value\":\"bureau d'etudes\\\/r&d\\\/btp archi\\\/conception\"},{\"label\":\"Ing\\u00e9nierie - Electro-tech.\\\/Automat.\",\"value\":\"ingenierie - electro-tech.\\\/automat.\"},{\"label\":\"Ing\\u00e9nierie - M\\u00e9canique\\\/A\\u00e9ron.\",\"value\":\"ingenierie - mecanique\\\/aeron.\"},{\"label\":\"Logistique\\\/M\\u00e9tiers du Transport\",\"value\":\"logistique\\\/metiers du transport\"},{\"label\":\"Production - Gestion\\\/Maintenance\",\"value\":\"production - gestion\\\/maintenance\"},{\"label\":\"Production - Op\\u00e9rateur\\\/Manoeuvre\",\"value\":\"production - operateur\\\/manoeuvre\"},{\"label\":\"Qualit\\u00e9\\\/Hygi\\u00e8ne\\\/S\\u00e9curit\\u00e9\\\/Environnement\",\"value\":\"qualite\\\/hygiene\\\/securite\\\/environnement\"},{\"label\":\"Restauration\\\/Tourisme\\\/H\\u00f4tellerie\\\/Loisirs\",\"value\":\"restauration\\\/tourisme\\\/hotellerie\\\/loisirs\"},{\"label\":\"Services \\u00e0 la personne\\\/aux entreprises\",\"value\":\"services a la personne\\\/aux entreprises\"}];\r\n    const PER_PAGE = parseInt(document.querySelector('.gni-wrap').dataset.perPage, 10) || 20;\r\n\r\n    const modal   = document.getElementById('gniFilterModal');\r\n    const btnOpen = document.querySelector('.gni-filter-btn');\r\n    const btnClose= modal.querySelector('.gni-modal__close');\r\n    const btnApply= document.getElementById('gniApply');\r\n    const btnClear= document.getElementById('gniClear');\r\n\r\n    const selC = document.getElementById('gniFilterContract');\r\n    const selF = document.getElementById('gniFilterFunction');\r\n    const selT = document.getElementById('gniFilterCity');\r\n\r\n    const list  = document.getElementById('gniList');\r\n    const chips = document.getElementById('gniChips');\r\n    const pager = document.getElementById('gniPager');\r\n\r\n    let filterC = '', filterF = '', filterT = '';\r\n    let page = 1;\r\n\r\n    function openModal(){ modal.setAttribute('aria-hidden','false'); btnOpen.setAttribute('aria-expanded','true'); }\r\n    function closeModal(){ modal.setAttribute('aria-hidden','true');  btnOpen.setAttribute('aria-expanded','false'); }\r\n    btnOpen && btnOpen.addEventListener('click', openModal);\r\n    btnClose && btnClose.addEventListener('click', closeModal);\r\n    modal && modal.addEventListener('click', (e)=>{ if(e.target===modal) closeModal(); });\r\n\r\n    function hydrateSelects(){\r\n      CONTRACTS.forEach(o=>{ const opt = document.createElement('option'); opt.value=o.value; opt.textContent=o.label; selC.appendChild(opt); });\r\n      FUNCS.forEach(o=>{ const opt = document.createElement('option'); opt.value=o.value; opt.textContent=o.label; selF.appendChild(opt); });\r\n      CITIES.forEach(o=>{ const opt = document.createElement('option'); opt.value=o.value; opt.textContent=o.label; selT.appendChild(opt); });\r\n    }\r\n\r\n    function renderChips(){\r\n      chips.innerHTML = '';\r\n      const items = [];\r\n      if (filterC){ const c = CONTRACTS.find(x=>x.value===filterC); items.push(['Contrat', c?.label||filterC, 'C']); }\r\n      if (filterF){ const f = FUNCS.find(x=>x.value===filterF);     items.push(['Fonction', f?.label||filterF, 'F']); }\r\n      if (filterT){ const t = CITIES.find(x=>x.value===filterT);    items.push(['Localit\u00e9', t?.label||filterT, 'T']); }\r\n      if (!items.length){ chips.hidden = true; return; }\r\n      items.forEach(([lbl,val,code])=>{\r\n        const d = document.createElement('div');\r\n        d.className = 'gni-chip';\r\n        d.innerHTML = `<strong>${lbl}:<\/strong> ${val} <button type=\"button\" aria-label=\"Supprimer\">\u00d7<\/button>`;\r\n        d.querySelector('button').addEventListener('click', ()=>{\r\n          if (code==='C'){ filterC=''; selC.value=''; }\r\n          if (code==='F'){ filterF=''; selF.value=''; }\r\n          if (code==='T'){ filterT=''; selT.value=''; }\r\n          page=1; draw();\r\n        });\r\n        chips.appendChild(d);\r\n      });\r\n      chips.hidden=false;\r\n    }\r\n\r\n    function applyFilters(all){\r\n      return all.filter(o=>{\r\n        const okC = (!filterC || o.n_contract===filterC);\r\n        const okF = (!filterF || (Array.isArray(o.n_functions) && o.n_functions.includes(filterF)));\r\n        const okT = (!filterT || o.n_city === filterT);\r\n        return okC && okF && okT;\r\n      });\r\n    }\r\n\r\n    function updateCount(filtered){\r\n      const count = filtered.length;\r\n      const text = `${count} offre${count > 1 ? 's' : ''} d'emploi disponible${count > 1 ? 's' : ''}.`;\r\n      document.getElementById('gniCount').textContent = text;\r\n    }\r\n\r\n    function escapeHtml(s){ return (s||'').replace(\/[&<>\"']\/g, m=>({ '&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#039;' }[m])); }\r\n\r\n    function cardHTML(o) {\r\n      const url = (window.location.origin || '') + '\/offres\/' + encodeURIComponent(o.id) + '\/';\r\n      const showDur = o.duration && !\/^0(?:[^\\d]|$)\/.test(o.duration);\r\n      return `\r\n        <a href=\"${url}\" class=\"gni-card-link\">\r\n          <li class=\"gni-card\">\r\n            <h3 class=\"gni-card__title\">${escapeHtml(o.title || '')}<\/h3>\r\n            <div class=\"gni-card__rows\">\r\n              <div class=\"gni-row\">\r\n                <span class=\"gni-row__left\">${escapeHtml(o.loc || '\u2014')}<\/span>\r\n                <span class=\"gni-row__right\">${escapeHtml(o.contract || '\u2014')}<\/span>\r\n                <span class=\"gni-row__left gni-salary\">${escapeHtml(o.salary || '\u00c0 n\u00e9gocier')}<\/span>\r\n                ${showDur ? `<span class=\"gni-row__right\">${escapeHtml(o.duration)}<\/span>` : ''}\r\n              <\/div>\r\n              <div class=\"gni-row gni-card-footer\">\r\n                <div class=\"gni-row -meta\">\r\n                  ${o.ago ? `<span class=\"gni-ago\">${escapeHtml(o.ago)}<\/span>` : ''}\r\n                <\/div>\r\n                <div class=\"gni-cta\">\r\n                  <span class=\"gni-btn gni-btn--primary\">Voir l\u2019offre<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/li>\r\n        <\/a>\r\n      `;\r\n    }\r\n\r\n    function renderList(rows){ list.innerHTML = rows.map(cardHTML).join(''); }\r\n\r\n    function renderPager(total){\r\n      pager.innerHTML = '';\r\n      const pages = Math.max(1, Math.ceil(total \/ PER_PAGE));\r\n      if (pages<=1){ pager.hidden = true; return; }\r\n      const prev = document.createElement('a');\r\n      prev.className = 'gni-page' + (page<=1?' is-disabled':'');\r\n      prev.textContent = '\u2039';\r\n      if (page>1) prev.addEventListener('click', ()=>{ page--; draw(); });\r\n      pager.appendChild(prev);\r\n\r\n      const windowSize = 2;\r\n      let start = Math.max(1, page - windowSize);\r\n      let end   = Math.min(pages, page + windowSize);\r\n      if (start>1){\r\n        pager.appendChild(pageBtn(1));\r\n        if (start>2) pager.appendChild(ellipsis());\r\n      }\r\n      for (let i=start;i<=end;i++){ pager.appendChild(pageBtn(i, i===page)); }\r\n      if (end<pages){\r\n        if (end<pages-1) pager.appendChild(ellipsis());\r\n        pager.appendChild(pageBtn(pages));\r\n      }\r\n      const next = document.createElement('a');\r\n      next.className = 'gni-page' + (page>=pages?' is-disabled':'');\r\n      next.textContent = '\u203a';\r\n      if (page<pages) next.addEventListener('click', ()=>{ page++; draw(); });\r\n      pager.appendChild(next);\r\n      pager.hidden=false;\r\n\r\n      function pageBtn(n, active=false){\r\n        const a=document.createElement('a');\r\n        a.className='gni-page'+(active?' is-active':'');\r\n        a.textContent=String(n);\r\n        if (!active) a.addEventListener('click', ()=>{ page=n; draw(); });\r\n        return a;\r\n      }\r\n      function ellipsis(){ const s=document.createElement('span'); s.className='gni-ellipsis'; s.textContent='\u2026'; return s; }\r\n    }\r\n\r\n    function draw(){\r\n      const filtered = applyFilters(DATA);\r\n      const total = filtered.length;\r\n      const start = (page-1) * PER_PAGE;\r\n      renderList(filtered.slice(start, start + PER_PAGE));\r\n      renderPager(total);\r\n      renderChips();\r\n      updateCount(filtered);\r\n    }\r\n\r\n    btnApply && btnApply.addEventListener('click', ()=>{ filterC=selC.value||''; filterF=selF.value||''; filterT=selT.value||''; page=1; closeModal(); draw(); });\r\n    btnClear && btnClear.addEventListener('click', ()=>{ selC.value=''; selF.value=''; selT.value=''; });\r\n\r\n    hydrateSelects(); draw();\r\n  })();\r\n  <\/script>\r\n  <\/p>\n","protected":false},"author":9,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_et_pb_use_builder":"on","_et_pb_old_content":"<!-- wp:shortcode -->\n[gni_offres company=\"ADICE\"]\n<!-- \/wp:shortcode -->","_et_gb_content_width":"","inline_featured_image":false,"footnotes":""},"class_list":["post-2276","page","type-page","status-publish","hentry"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/pages\/2276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/comments?post=2276"}],"version-history":[{"count":5,"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/pages\/2276\/revisions"}],"predecessor-version":[{"id":2285,"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/pages\/2276\/revisions\/2285"}],"wp:attachment":[{"href":"https:\/\/adice-interim.fr\/index.php\/wp-json\/wp\/v2\/media?parent=2276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}