{"id":12557,"date":"2024-04-11T21:10:38","date_gmt":"2024-04-11T19:10:38","guid":{"rendered":"https:\/\/sifem.ch\/recherche\/"},"modified":"2024-04-12T12:49:27","modified_gmt":"2024-04-12T10:49:27","slug":"recherche","status":"publish","type":"page","link":"https:\/\/sifem.ch\/fr\/recherche\/","title":{"rendered":"Recherche"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"12557\" class=\"elementor elementor-12557 elementor-12454\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dce98de elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"dce98de\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bbb8746 e-flex e-con-boxed e-con e-child\" data-id=\"bbb8746\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-9788ade e-con-full e-flex e-con e-child\" data-id=\"9788ade\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5b78dce elementor-widget elementor-widget-heading\" data-id=\"5b78dce\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Explorez notre site<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d208a03 e-con-full e-flex e-con e-child\" data-id=\"d208a03\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1c3b2af e-con-full e-flex e-con e-parent\" data-id=\"1c3b2af\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0e761d7 elementor-widget__width-initial elementor-widget elementor-widget-shortcode\" data-id=\"0e761d7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><style>\r\n\t.search-results {\t\t\r\n\t\tbackground-color: #f3f1ef;\r\n\t\tborder-left: 5px solid #797067;\r\n\t\tborder-bottom: 20px solid #f3f1ef;\r\n\t\t\r\n\t}\r\n\t.search-results-stats {\r\n\t\tmargin-top: 10px;\r\n\t\tmargin-left: 10px;\r\n\t\t--font-weight: 700;\r\n\t}\r\n\t.search-results-page-stats {\r\n\t\tmargin-top: 10px;\r\n\t\tmargin-left: 10px;\r\n\t\tfont-weight: 700;\r\n\t}\t\r\n\t.search-result-tagline, .search-load-next {\r\n\t\twidth: 90%;\r\n\t\tfont-size:20px;\r\n\t\tmargin-left: 50px;\r\n\t}\r\n\t.search-result-description {\r\n\t\twidth: 90%;\r\n\t\tmargin-left: 0px;\r\n\t}\r\n\t.search-result-number {\r\n\t\tmargin-left: 10px;\r\n\t\tfont-size:20px;\r\n\t}\r\n.container {\r\n  display: block;\r\n  position: relative;\r\n  padding-left: 33px;\r\n  margin-bottom: 12px;\r\n  cursor: pointer;\r\n  --font-size: 25px;\r\n  -webkit-user-select: none;\r\n  -moz-user-select: none;\r\n  -ms-user-select: none;\r\n  user-select: none;\r\n}\r\n\r\n\/* Hide the browser's default checkbox *\/\r\n.container input {\r\n  position: absolute;\r\n  opacity: 0;\r\n  cursor: pointer;\r\n  height: 0;\r\n  width: 0;\r\n}\r\n\r\n\/* Create a custom checkbox *\/\r\n.checkmark {\r\n  position: absolute;\r\n  top: 0;\r\n  left: 0;\r\n  height: 17px;\r\n  width: 17px;\r\n  background-color: #f7f7f7;\r\nborder: 1pt #c9c9c9 solid;\r\n}\r\n\r\n\/* On mouse-over, add a grey background color *\/\r\n.container:hover input ~ .checkmark {\r\n  background-color: #f7f7f7;\r\n}\r\n\r\n\/* When the checkbox is checked, add a blue background *\/\r\n.container input:checked ~ .checkmark {\r\n  background-color: #f7f7f7;\r\n}\r\n\r\n\/* Create the checkmark\/indicator (hidden when not checked) *\/\r\n.checkmark:after {\r\n  content: \"\";\r\n  position: absolute;\r\n  display: none;\r\n}\r\n\r\n\/* Show the checkmark when checked *\/\r\n.container input:checked ~ .checkmark:after {\r\n  display: block;\r\n}\r\n\r\n\/* Style the checkmark\/indicator *\/\r\n.container .checkmark:after {\r\n  left: 9px;\r\n  top: 5px;\r\n  width: 10px;\r\n  height: 15px;\r\n  border: solid #22543a;\r\n  border-width: 0 5px 5px 0;\r\n\tmargin-left: -8px;\r\n\tmargin-top: -2px;\r\n  -webkit-transform: rotate(45deg);\r\n  -ms-transform: rotate(45deg);\r\n  transform: rotate(45deg);\r\n}\t\r\n\r\n<\/style>\r\n<script src=\"https:\/\/apis.google.com\/js\/api.js\"><\/script>    \r\n<span style=\"width:50%\"><input type=\"text\" id=\"searchinput\" class=\"search-input\" placeholder=\"\"\/><\/span>\r\n<div style=\"margin-top:10px;margin-bottom:10px;\"><button onclick=\"launchSearch()\" id=\"search_button\" disabled>Search<\/button>\r\n\t<div style=\"margin-top:5px;margin-bottom:5px\"><label class=\"container\"><span id=\"limit_lang_txt\"> Limit results to English<\/span>\r\n  <input type=\"checkbox\" checked=\"checked\" id=\"lang_limit_check\">\r\n  <span class=\"checkmark\"><\/span>\r\n<\/label><\/div><\/div>\r\n<div id=\"searchresults\" class=\"search-results\"><\/div>\r\n<script>\r\nvar active_lang = document.documentElement.lang.substring(0,2);\t\r\nvar search_lang = 'lang_' + active_lang;\r\n\r\n\r\nvar isGapiLoaded = false;\t\r\n\tjQuery(\"#searchinput\").on(\"keydown\",function search(e) {\r\n\t\tif(e.keyCode == 13) {\r\n\t\t\tresultItem = 0;\r\n\t\t\tlaunchSearch();\r\n\t\t}\r\n\t\tif(jQuery(this).val() != '') {\r\n\t\t\tjQuery('#search_button').prop( \"disabled\", false );\r\n\t\t} else {\r\n\t\t\tjQuery('#search_button').prop( \"disabled\", true );\r\n\t\t}\r\n\t});\r\n\r\nfunction launchSearch2() {\r\n\trenderResult(1, oResponse);\r\n}\r\nfunction launchSearch() {\r\n\tif(!isGapiLoaded){\t\r\n\t\tgapi.client.setApiKey(\"AIzaSyC0d3msprtqdpngKeZXOKbF3sQLvkuyv1o\");\r\n\t\treturn gapi.client\r\n\t\t\t.load(\r\n\t\t\t\"https:\/\/content.googleapis.com\/discovery\/v1\/apis\/customsearch\/v1\/rest\"\t\r\n\t\t)\r\n\t\t\t.then(\r\n\t\t\tfunction () {\r\n\t\t\t\tconsole.log(\"GAPI client loaded for API\");\r\n\t\t\t\tisGapiLoaded = true;\r\n\t\t\t\tpreexecute(1);\r\n\t\t\t},\r\n\t\t\tfunction (err) {\r\n\t\t\t\tconsole.error(\"Error loading GAPI client for API\", err);\r\n\t\t\t}\r\n\t\t);\r\n\t} else {\r\n\t\tconsole.log('API was alreadyloaded');\r\n\t\tpreexecute(1);\r\n\t}\r\n}\r\nfunction preexecute(startIndex){\r\n\tif (document.getElementById(\"searchinput\").value!='') { \r\n\t\tresultItem = 0;\r\n\t\texecute(1);\r\n\t}\r\n}\t\r\n\/\/ Make sure the client is loaded before calling this method.\r\nfunction execute(startIndex) {\r\n\t\r\n\tif (jQuery('#lang_limit_check').prop('checked') == true) {\r\n\t\/\/if (jQuery('#lang_limit_check').val() == \"checked\") {\r\n\t\tsearch_lang = 'lang_' + active_lang;\r\n\t} else {\r\n\t\tsearch_lang = '';\r\n\t}\r\n  var response = null;\t\r\n  return gapi.client.search.cse\r\n    .list({\r\n      cx: \"52a31cbdb1db346df\",\r\n      q: document.getElementById(\"searchinput\").value,\r\n\t  lr: search_lang,\r\n\t  start: startIndex,\r\n\t  \/\/exactTerms: document.getElementById(\"searchinput\").value\r\n    })\r\n    .then(\r\n      function (response) {\r\n        \/\/ Handle the results here (response.result has the parsed body).\r\n        renderResult(startIndex, response.result);\r\n        \r\n      },\r\n      function (err) {\r\n        console.error(\"Execute error\", err);\r\n      }\r\n    );\r\n}\r\ngapi.load(\"client\");\r\n\r\nvar resultItem = 0;\r\nconst MAX_RESULTS_PER_REQUEST = 10;\r\n\r\n\r\nfunction renderResult(startIndex, response) {\r\n  \/\/try {\r\n    totalResults = response.searchInformation.totalResults;\r\n\ttry{\r\n\t\tif (startIndex==1){\r\n\t\t\t_paq.push(['setCustomUrl', document.URL + '?q=' + document.getElementById(\"searchinput\").value +'&search_count=' + totalResults]);\t\t\r\n\t\t\t_paq.push(['trackPageView']);\t\t\t\r\n\t\t}else{\r\n\t\t\t_paq.push(['trackEvent', 'Search', 'Load next results', document.getElementById(\"searchinput\").value + ' [startindex: ' + startIndex +']'])\r\n\t\t}\r\n\t} catch(e){}\r\n\t\r\n\tif (totalResults == 0){\r\n\t\tdocument.getElementById(\"searchresults\").innerHTML = \"<div class='search-result-stats'>\" + translate_word('No result found') + \"<\/div>\"\r\n\t\treturn;\r\n\t}\r\n\tcurrentPageIndex = Math.ceil(response.queries.request[0].startIndex \/ MAX_RESULTS_PER_REQUEST);\r\n\ttotalPages = Math.ceil(response.queries.request[0].totalResults \/ MAX_RESULTS_PER_REQUEST);\r\n\tif(response.queries.nextPage !== undefined) {\r\n\t\tnextIndex = response.queries.nextPage[0].startIndex;\t\r\n\t}\r\n\r\n\tif(startIndex == 1) {\r\n\t\tstrHTML = `\r\n\t<div class=\"search-results-stats\">\r\n${translate_word('Estimated results found')}:  <strong>${response.searchInformation.formattedTotalResults}<\/strong>\r\n\t<\/div>\r\n\t`;\t\/\/  in ${response.searchInformation.formattedSearchTime} seconds!\t  \r\n\t} else {\r\n\t\tstrHTML = document.getElementById(\"searchresults\").innerHTML;\r\n\t}\r\n    strHTML += `\r\n  <div>&nbsp;<\/div><div class=\"search-results-page-stats\">\r\n      ${translate_word('Page')} ${currentPageIndex} ${translate_word('out of')} ${totalPages} \r\n  <\/div>  \r\n  `;\/\/(${response.searchInformation.formattedTotalResults} results)\r\n  \t\r\n    for (var i = 0; i < response.items.length; i++) {\r\n\t sTitle = response.items[i].title\r\n\t resultItem += 1;\r\n\t \r\n\t if(response.items[i].fileFormat) sTitle += ' (' + response.items[i].fileFormat +')'\r\n      strHTML += `\r\n  \r\n    <br\/>\r\n\t<div style=\"align-items: center;\"><div style=\"float:left\" class=\"search-result-number\">${resultItem}.<\/div>\r\n    <div class=\"search-result-tagline\">\r\n\t\t\r\n    <a target=\"_blank\" href=${response.items[i].link}>\r\n      ${sTitle}\r\n    <\/a>\r\n    <div class=\"search-result-description\">\r\n      ${response.items[i].snippet}\r\n    <\/div> \t\r\n    <\/div>\r\n\r\n  <\/div>\r\n  `;\r\n    }\r\n\tif (response.queries.nextPage !== undefined){\r\n\t\tstrHTML += `\r\n\t\t<div class=\"search-load-next\" style=\"margin-top:10px;margin-bottom:10px;\" id=\"load_div_${nextIndex}\"><button id=\"load_button_${nextIndex}\" onclick=\"this.remove();execute(${nextIndex})\">${translate_word('Load next results')}<\/button><\/div>\t\r\n\t\t`;\r\n\t}\r\n\t\/\/<div style=\"margin-top:10px;margin-bottom:10px;\" id=\"load_div_${nextIndex}\"><button id=\"load_button_${nextIndex}\" onclick=\"renderResult(${nextIndex},oResponse)\">Load next results<\/button><\/div>\t\r\n\tdocument.getElementById(\"searchresults\").innerHTML = strHTML;\r\n  \/\/} catch (error) {\r\n  \/\/  document.getElementById(\"searchresults\").innerHTML = \"error2!\";\r\n  \/\/}\r\n}\r\n\t\r\nfunction translate_word(word) {\r\n  try {\r\n    translated = translations_json[word][active_lang];\r\n  } catch (e) {\r\n    translated = word;\r\n  }\r\n  \/\/console.log(translated)\r\n  return translated;\r\n}\r\n\r\nvar translations_json = {\r\n    \"Search\": {\r\n        \"fr\": \"Rechercher\",\r\n        \"de\": \"Suchen\",\r\n        \"en\": \"Search\"\r\n    },\r\n    \"Estimated results found\": {\r\n        \"fr\": \"Nombre de r\u00e9sultats trouv\u00e9s estim\u00e9\",\r\n        \"de\": \"Gesch\u00e4tzte Ergebnisse gefunden\",\r\n        \"en\": \"Estimated results found\"\r\n    },\r\n    \"Page\": {\r\n        \"fr\": \"Page\",\r\n        \"de\": \"Seite\",\r\n        \"en\": \"Page\"\r\n    },\r\n    \"out of\": {\r\n        \"fr\": \"sur\",\r\n        \"de\": \"auf\",\r\n        \"en\": \"out of\"\r\n    },\t\r\n    \"No result found\": {\r\n        \"fr\": \"Pas de r\u00e9sultat trouv\u00e9\",\r\n        \"de\": \"Kein Ergebnis gefunden\",\r\n        \"en\": \"No result found\"\r\n    },\t\r\n    \"Load next results\": {\r\n        \"fr\": \"Charger les r\u00e9sultats suivants\",\r\n        \"de\": \"N\u00e4chste Ergebnisse laden\",\r\n        \"en\": \"Load next results\"\r\n    },\t\r\n    \"Limit results to English\": {\r\n        \"fr\": \"Limiter aux r\u00e9sultats en fran\u00e7ais\",\r\n        \"de\": \"Ergebnisse auf Deutsch beschr\u00e4nken\",\r\n        \"en\": \"Limit results to English\"\r\n    },\t\t\r\n}\r\n\r\njQuery(\"#search_button\").html(translate_word('Search'))\t\r\njQuery(\"#limit_lang_txt\").html(translate_word('Limit results to English'))\t\r\n\t\t\r\n<\/script><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c6fb9ca elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"c6fb9ca\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-56e84cd e-con-full e-flex e-con e-child\" data-id=\"56e84cd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2774744a elementor-widget elementor-widget-spacer\" data-id=\"2774744a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Explorez notre site<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-12557","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/pages\/12557","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/comments?post=12557"}],"version-history":[{"count":1,"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/pages\/12557\/revisions"}],"predecessor-version":[{"id":12558,"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/pages\/12557\/revisions\/12558"}],"wp:attachment":[{"href":"https:\/\/sifem.ch\/fr\/wp-json\/wp\/v2\/media?parent=12557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}