PluginProbe
HAL / 2.3
HAL v2.3
trunk 1.0 1.1 1.2 1.3 1.4 1.4.2 1.4.3 1.4.4 2.0 2.0.1 2.0.10 2.0.2 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.2 2.3 2.4 2.4.1 2.4.2 2.5 All 30 releases
← All changes | wp-hal.php +389 -201 2.1.12.3 View file →
@@ -2,9 +2,9 @@
2 2 /**
3 3 * Plugin Name: HAL
4 4 * Plugin URI: http://www.ccsd.cnrs.fr
5 5 * Description: Crée une page qui remonte les publications d'un auteur ou d'une structure en relation avec HAL et un widget des dernières publications d'un auteur ou d'une structure.
6 - * Version: 2.1.1
6 + * Version: 2.3
7 7 * Author: CCSD
8 8 * Author URI: http://www.ccsd.cnrs.fr
9 9 * Text Domain: wp-hal
10 10 * Domain Path: /lang/
@@ -17,28 +17,38 @@
17 17 //Récupère les constantes
18 18 require_once("constantes.php");
19 19
20 20
21 -if (locale == 'fr_FR') {
22 - define('lang', 'fr');
23 -} elseif (locale == 'es_ES') {
24 - define('lang', 'es');
21 +if (wphal_locale == 'fr_FR') {
22 + define('wphal_lang', 'fr');
23 +} elseif (wphal_locale == 'es_ES') {
24 + define('wphal_lang', 'es');
25 25 } else {
26 - define('lang', 'en');
26 + define('wphal_lang', 'en');
27 27 }
28 28
29 +function wphal_is_curl_installed() {
30 + $loaded_extentions = get_loaded_extensions();
31 + if (in_array ('curl', $loaded_extentions)) {
32 + return true;
33 + }
34 + else {
35 + return false;
36 + }
37 +}
38 +
29 39 // Création du shortcode ('nom du shortcode', 'fonction appelée')
30 -add_shortcode( 'cv-hal', 'cv_hal' );
31 -add_shortcode( 'nb-doc', 'nb_doc' );
40 +add_shortcode( 'cv-hal', 'wphal_cv_hal' );
41 +add_shortcode( 'nb-doc', 'wphal_nb_doc' );
32 42
33 43
34 -function charger_languages() {
44 +function wphal_charger_languages() {
35 45 load_plugin_textdomain('wp-hal', false, dirname(plugin_basename(__FILE__)) . '/lang/');
36 46 }
37 47
38 -add_action('plugins_loaded', 'charger_languages');
48 +add_action('plugins_loaded', 'wphal_charger_languages');
39 49
40 -function hal_plugin_action_links( $links, $file ) {
50 +function wphal_action_links( $links, $file ) {
41 51 if ( $file != plugin_basename( __FILE__ ))
42 52 return $links;
43 53
44 54 $settings_link = '<a href="admin.php?page=wp-hal.php">' . __( 'Paramètres', 'wp-hal' ) . '</a>';
@@ -47,23 +57,23 @@
47 57
48 58 return $links;
49 59 }
50 60
51 -add_filter( 'query_vars', 'hal_query_vars' );
52 -function hal_query_vars( $query_vars ) {
61 +add_filter( 'query_vars', 'wphal_query_vars' );
62 +function wphal_query_vars( $query_vars ) {
53 63 $query_vars[] = 'hal_page';
54 64 return $query_vars;
55 65 }
56 66
57 -add_filter( 'plugin_action_links', 'hal_plugin_action_links',10,2);
67 +add_filter( 'plugin_action_links', 'wphal_action_links',10,2);
58 68 /**
59 69 * @param $url
60 70 * @return object
61 71 */
62 -function do_common_curl_call($url) {
72 +function wphal_do_common_curl_call($url) {
63 73 $response = wp_remote_get($url, [
64 74 'timeout'=>20,
65 - 'user-agent'=>"HAL Plugin Wordpress " . version,
75 + 'user-agent'=>"HAL Plugin Wordpress " . wphal_version,
66 76 'headers' => ['Content-type'=> 'application/json']
67 77 ]);
68 78 // we could ve parsed the response but if in general if no results then we get empty content
69 79 $body = wp_remote_retrieve_body($response);
@@ -71,9 +81,9 @@
71 81 $json = json_decode($body);
72 82 return $json;
73 83 }
74 84
75 -function clear_transients()
85 +function wphal_clear_transients()
76 86 {
77 87 global $wpdb;
78 88 // delete all "hal namespace" transients
79 89 $sql = "
@@ -86,21 +96,22 @@
86 96 $wpdb->query($sql);
87 97 }
88 98
89 99 /**
100 + * fetches data from cache or download data from HAL API
90 101 * @param $url
91 102 * @return object
92 103 */
93 -function do_get_data($url) {
104 +function wphal_do_get_data($url) {
94 105 $transient_id = 'hal_'.md5($url);
95 106 if(!empty(get_option('option_erase_cache'))){
96 107 // we reset cache transient for hal namespace
97 - clear_transients();
108 + wphal_clear_transients();
98 109 update_option('option_erase_cache', '');
99 110 }
100 111 $cache_expiration = empty(get_option('option_cache_timeout')) ? 1 * DAY_IN_SECONDS : intval(get_option('option_cache_timeout')) * MINUTE_IN_SECONDS;
101 112 if ( false === ( $value = get_transient( $transient_id ) ) ) {
102 - $json = do_common_curl_call($url);
113 + $json = wphal_do_common_curl_call($url);
103 114 if($json)
104 115 set_transient( $transient_id, $json, $cache_expiration);
105 116 return $json;
106 117 } else{
@@ -112,11 +123,11 @@
112 123 * PLUGIN SHORTCODE ND-DOC
113 124 * @param $param
114 125 * @return int
115 126 */
116 -function nb_doc($param)
127 +function wphal_nb_doc($param)
117 128 {
118 - $idhal = verifSolr(get_option('option_idhal'));
129 + $idhal = wphal_verifSolr(get_option('option_idhal'));
119 130 extract(shortcode_atts(array(
120 131 'type' => get_option('option_type'),
121 132 'id' => $idhal
122 133 ),
@@ -125,13 +136,13 @@
125 136 /**
126 137 * @var $id : defined by extract
127 138 * @var string $type : defined by extract
128 139 */
129 - $id = verifSolr($id);
140 + $id = wphal_verifSolr($id);
130 141
131 - $url = api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&rows=0&wt=json';
142 + $url = wphal_api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&rows=0&wt=json';
132 143
133 - $json =do_get_data($url);
144 + $json =wphal_do_get_data($url);
134 145 return $json->response->numFound;
135 146 }
136 147 /**
137 148 * PLUGIN SHORTCODE CV-HAL
@@ -137,14 +148,14 @@
137 148 * PLUGIN SHORTCODE CV-HAL
138 149 * @param $param
139 150 * @return string
140 151 */
141 -function cv_hal($param){
152 +function wphal_cv_hal($param){
142 153 $content = '';
143 - if ( !function_exists('curl_init' ) ) {
154 + if ( !wphal_is_curl_installed() ) {
144 155 $content = 'CURL not installed, please check the <a href="https://wordpress.org/plugins/hal/faq/" target="_blank" id="curl">FAQ</a> with the code : CURL';
145 156 } else {
146 - $possible_ids = ["authIdHal_s", "structId_i", "authStructId_i", "authId_i", "anrProjectId_i", "europeanProjectId_i", "collCode_s"];
157 + $possible_ids = ["authIdHal_s", "structId_i", "authStructId_i", "anrProjectId_i", "europeanProjectId_i", "collCode_s"];
147 158 $option_choix = !empty(get_option('option_choix')) ? get_option('option_choix') : [];
148 159 if(in_array('disciplines', $option_choix)){ //Lance les scripts pour le Graphique
149 160 wp_enqueue_style('wp-hal-style2');
150 161
@@ -154,12 +165,11 @@
154 165 }
155 166 $facetdomain = null;
156 167
157 168 // those parameters are configured from plusing settings
158 - $default_id = verifSolr(get_option('option_idhal'));
169 + $default_id = wphal_verifSolr(get_option('option_idhal'));
159 170 $default_type = get_option('option_type');
160 171 $default_contact = get_option('option_infocontact');
161 -
162 172 // here we merge with shortcode parameters
163 173 extract(shortcode_atts(array(
164 174 'type' => $default_type,
165 175 'id' => $default_id,
@@ -172,25 +182,25 @@
172 182 * @var string $type : defined by extract
173 183 * @var string $contact : defined by extract
174 184 */
175 185 if (!empty($id) && in_array($type, $possible_ids)) {
176 - $id = verifSolr($id);
186 + $id = wphal_verifSolr($id);
177 187
178 188 if (get_option('option_groupe') == 'grouper') {
179 189 //cURL sur l'API pour récupérer les données
180 - $url = api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&group=true&group.field=docType_s&group.limit=1000&fl=docid,citationFull_s&facet.field=' . lang . '_domainAllCodeLabel_fs&facet.field=keyword_s&facet.field=journalIdTitle_fs&facet.field=producedDateY_i&facet.field=authIdLastNameFirstName_fs&facet.field=instStructIdName_fs&facet.field=labStructIdName_fs&facet.field=deptStructIdName_fs&facet.field=rteamStructIdName_fs&facet.mincount=1&facet=true&sort=' . producedDateY . '&wt=json&json.nl=arrarr';
190 + $url = wphal_api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&group=true&group.field=docType_s&group.limit=1000&fl=docid,citationFull_s&facet.field=' . wphal_lang . '_domainAllCodeLabel_fs&facet.field=keyword_s&facet.field=journalIdTitle_fs&facet.field=producedDateY_i&facet.field=authIdLastNameFirstName_fs&facet.field=instStructIdName_fs&facet.field=labStructIdName_fs&facet.field=deptStructIdName_fs&facet.field=rteamStructIdName_fs&facet.mincount=1&facet=true&sort=' . wphal_producedDateY . '&wt=json&json.nl=arrarr';
181 191 } elseif (get_option('option_groupe') == 'paginer') {
182 - $url = api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&fl=docid,citationFull_s&facet.field=' . lang . '_domainAllCodeLabel_fs&facet.field=keyword_s&facet.field=journalIdTitle_fs&facet.field=producedDateY_i&facet.field=authIdLastNameFirstName_fs&facet.field=instStructIdName_fs&facet.field=labStructIdName_fs&facet.field=deptStructIdName_fs&facet.field=rteamStructIdName_fs&facet.mincount=1&facet=true&sort=' . producedDateY . '&wt=json&json.nl=arrarr';
192 + $url = wphal_api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&fl=docid,citationFull_s&facet.field=' . wphal_lang . '_domainAllCodeLabel_fs&facet.field=keyword_s&facet.field=journalIdTitle_fs&facet.field=producedDateY_i&facet.field=authIdLastNameFirstName_fs&facet.field=instStructIdName_fs&facet.field=labStructIdName_fs&facet.field=deptStructIdName_fs&facet.field=rteamStructIdName_fs&facet.mincount=1&facet=true&sort=' . wphal_producedDateY . '&wt=json&json.nl=arrarr';
183 193 }
184 194
185 - $json = do_get_data($url);
195 + $json = wphal_do_get_data($url);
196 + $hal_page = (get_query_var('hal_page')) ? get_query_var('hal_page') : 1;
186 197
187 - $hal_page = (get_query_var('hal_page')) ? get_query_var('hal_page') : 1;
198 + $content = '<div id="wphal-content">';
199 + if (is_array($option_choix) && !empty($option_choix)){
200 + $content .= '<ul id="wphal-menu">';
201 + $content .= '<li><a href="#publications" onclick="displayElem(\'publications\'); return false;" style="font-size:18px; text-decoration: none;">' . __('Publications', 'wp-hal') . '</a></li>';
188 202
189 - $content = '<div id="wphal-content">
190 - <ul id="wphal-menu">';
191 - $content .= '<li><a href="#publications" onclick="displayElem(\'publications\'); return false;" style="font-size:18px; text-decoration: none;">' . __('Publications', 'wp-hal') . '</a></li>';
192 - if (is_array($option_choix)) {
193 203 $content .= '<li><a href="#filtres" onclick="return false;" style="font-size:18px; text-decoration: none; cursor:default;">' . __('Filtres', 'wp-hal') . '</a>';
194 204 $content .= '<ul id="wphal-filtres">';
195 205 foreach ($option_choix as $option) {
196 206 if ($option == 'contact') {
@@ -234,10 +244,11 @@
234 244 $content .= '</a></li>';
235 245 }
236 246 }
237 247 $content .= '</ul></li>';
248 +
249 + $content .= '</ul><br/><hr>';
238 250 }
239 - $content .= '</ul><br/><hr>';
240 251
241 252 $content .= '<div id="meta">
242 253 <div class="display" id="wphal-contact" style="display: none;">
243 254 <h3 class="wphal-titre">' . __('Contact', 'wp-hal');
@@ -245,10 +256,10 @@
245 256
246 257 <ul id="wphal-cont" style="list-style-type: none;">';
247 258
248 259 if ($contact == 'yes' && $type == 'authIdHal_s') {
249 - $urlauthor = urlauthor.'?indent=true&fq=valid_s:VALID&fl=idref_s,url_s,email_s,fullName_s,arxiv_s,idHal_s,viaf_s,isni_s,orcid_s,hasCV_bool&q=idHal_s:'.urlencode($id);
250 - $jsonauthor = do_get_data($urlauthor);
260 + $urlauthor = wphal_urlauthor.'?indent=true&fq=valid_s:VALID&fl=idref_s,url_s,email_s,fullName_s,arxiv_s,idHal_s,viaf_s,isni_s,orcid_s,hasCV_bool&q=idHal_s:'.urlencode($id);
261 + $jsonauthor = wphal_do_get_data($urlauthor);
251 262
252 263 for ($i = 0; $jsonauthor->response->docs[$i] != ''; $i++) {
253 264 $content .= '<div class="wphal-infocontact" id="wphal-infocontact'.$i.'">';
254 265 if ($jsonauthor->response->docs[$i]->fullName_s != '') {
@@ -254,55 +265,55 @@
254 265 if ($jsonauthor->response->docs[$i]->fullName_s != '') {
255 266 $content .= '<li class="wphal-fullname"><span>Nom : </span><span>'. $jsonauthor->response->docs[$i]->fullName_s .'</span></li>';
256 267 }
257 268 if ($jsonauthor->response->docs[$i]->email_s != '') {
258 - $content .= '<li class="wphal-email"><span>Email : </span><span><a href="mailto:'. $jsonauthor->response->docs[$i]->email_s .'">' . $jsonauthor->response->docs[$i]->email_s . '</a></span></li>';
269 + $content .= '<li class="wphal-email"><span>Email : </span><span><a href="'.esc_url('mailto:'. $jsonauthor->response->docs[$i]->email_s) .'">' . $jsonauthor->response->docs[$i]->email_s . '</a></span></li>';
259 270 }
260 271 if ($jsonauthor->response->docs[$i]->idHal_s != '') {
261 272 $content .= '<li class="wphal-idhal"><span>IdHAL : </span><span>' . $jsonauthor->response->docs[$i]->idHal_s . '</span></li>';
262 273 }
263 274 if ($jsonauthor->response->docs[$i]->hasCV_bool == true){
264 - $content .= '<li class="wphal-cvhal"><span>CV HAL : </span><a href="'.cvhal. $jsonauthor->response->docs[$i]->idHal_s.'" target="_blank">CV de '.$jsonauthor->response->docs[$i]->fullName_s.'</a></li>';
275 + $content .= '<li class="wphal-cvhal"><span>CV HAL : </span><a href="'.esc_url(cvhal. $jsonauthor->response->docs[$i]->idHal_s).'" target="_blank">CV de '.$jsonauthor->response->docs[$i]->fullName_s.'</a></li>';
265 276 }
266 277 if ($jsonauthor->response->docs[$i]->arxiv_s != '') {
267 - $content .= '<li class="wphal-"><span>arXiv : </span><span><a href="' . $jsonauthor->response->docs[$i]->arxiv_s . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->arxiv_s, "/"), 1) . '</a></span></li>';
278 + $content .= '<li class="wphal-"><span>arXiv : </span><span><a href="' . esc_url($jsonauthor->response->docs[$i]->arxiv_s) . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->arxiv_s, "/"), 1) . '</a></span></li>';
268 279 }
269 280 if ($jsonauthor->response->docs[$i]->idref_s != '') {
270 - $content .= '<li class="wphal-"><span>IdRef : </span><span><a href="' . $jsonauthor->response->docs[$i]->idref_s . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->idref_s, "/"), 1) . '</a></span></li>';
281 + $content .= '<li class="wphal-"><span>IdRef : </span><span><a href="' . esc_url($jsonauthor->response->docs[$i]->idref_s) . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->idref_s, "/"), 1) . '</a></span></li>';
271 282 }
272 283 if ($jsonauthor->response->docs[$i]->orcid_s != '') {
273 - $content .= '<li class="wphal-"><span>ORCID : </span><span><a href="' . $jsonauthor->response->docs[$i]->orcid_s . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->orcid_s, "/"), 1) . '</a></span></li>';
284 + $content .= '<li class="wphal-"><span>ORCID : </span><span><a href="' . esc_url($jsonauthor->response->docs[$i]->orcid_s) . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->orcid_s, "/"), 1) . '</a></span></li>';
274 285 }
275 286 if ($jsonauthor->response->docs[$i]->viaf_s != '') {
276 - $content .= '<li class="wphal-"><span>VIAF : </span><span><a href="' . $jsonauthor->response->docs[$i]->viaf_s . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->viaf_s, "/"), 1) . '</a></span></li>';
287 + $content .= '<li class="wphal-"><span>VIAF : </span><span><a href="' . esc_url($jsonauthor->response->docs[$i]->viaf_s) . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->viaf_s, "/"), 1) . '</a></span></li>';
277 288 }
278 289 if ($jsonauthor->response->docs[$i]->isni_s != '') {
279 - $content .= '<li class="wphal-"><span>ISNI : </span><span><a href="' . $jsonauthor->response->docs[$i]->isni_s . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->isni_s, "/"), 1) . '</a></span></li>';
290 + $content .= '<li class="wphal-"><span>ISNI : </span><span><a href="' . esc_url($jsonauthor->response->docs[$i]->isni_s) . '" target="_blank">' . substr(strrchr($jsonauthor->response->docs[$i]->isni_s, "/"), 1) . '</a></span></li>';
280 291 }
281 292 $content .= '</div>';
282 293 }
283 294 }
284 295 if (get_option('option_email') != '') {
285 - $content .= '<li><img alt="mail" src=" ' . plugin_dir_url(__FILE__) . 'img/mail.svg" style=" width:16px; margin-left:2px; margin-right:2px;"/><a href="mailto:' . get_option('option_email') . '" target="_blank">' . get_option('option_email') . '</a></li>';
296 + $content .= '<li><img alt="mail" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/mail.svg').' " style=" width:16px; margin-left:2px; margin-right:2px;"/><a href="'.esc_url('mailto:' . get_option('option_email')) . '" target="_blank">' . get_option('option_email') . '</a></li>';
286 297 }
287 298 if (get_option('option_tel') != '') {
288 - $content .= '<li><img alt="phone" src=" ' . plugin_dir_url(__FILE__) . 'img/phone.svg" style="width:16px; margin-left:2px; margin-right:2px;"/>' . get_option('option_tel') . '</li>';
299 + $content .= '<li><img alt="phone" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/phone.svg'). '" style="width:16px; margin-left:2px; margin-right:2px;"/>' . get_option('option_tel') . '</li>';
289 300 }
290 301 if (get_option('option_social0') != '') {
291 - $content .= '<li><a href="http://www.facebook.com/' . get_option('option_social0') . '" target="_blank"><img
292 - alt="Facebook" src=" ' . plugin_dir_url(__FILE__) . 'img/facebook.svg" style="width:32px; margin:4px;"/></a></li>';
302 + $content .= '<li><a href="'.esc_url('http://www.facebook.com/' . get_option('option_social0')) . '" target="_blank"><img
303 + alt="Facebook" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/facebook.svg').'" style="width:32px; margin:4px;"/></a></li>';
293 304 }
294 305 if (get_option('option_social1') != '') {
295 - $content .= '<li><a href="http://www.twitter.com/' . get_option('option_social1') . '" target="_blank"><img
296 - alt="Twitter" src=" ' . plugin_dir_url(__FILE__) . 'img/twitter.svg" style="width:32px; margin:4px;"/></a></li>';
306 + $content .= '<li><a href="'.esc_url('http://www.twitter.com/' . get_option('option_social1')) . '" target="_blank"><img
307 + alt="Twitter" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/twitter.svg').'" style="width:32px; margin:4px;"/></a></li>';
297 308 }
298 309 if (get_option('option_social2') != '') {
299 - $content .= '<li><a href="https://plus.google.com/u/0/+' . get_option('option_social2') . '" target="_blank"><img
300 - alt="Google+" src=" ' . plugin_dir_url(__FILE__) . 'img/google-plus.svg" style="width:32px; margin:4px;"/></a></li>';
310 + $content .= '<li><a href="'.esc_url('https://plus.google.com/u/0/+' . get_option('option_social2')) . '" target="_blank"><img
311 + alt="Google+" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/google-plus.svg').'" style="width:32px; margin:4px;"/></a></li>';
301 312 }
302 313 if (get_option('option_social3') != '') {
303 - $content .= '<li><a href="https://www.linkedin.com/in/' . get_option('option_social3') . '" target="_blank"><img
304 - alt="LinkedIn" src=" ' . plugin_dir_url(__FILE__) . 'img/linkedin.svg" style="width:32px; margin:4px;"/></a></li>';
314 + $content .= '<li><a href="'.esc_url('https://www.linkedin.com/in/' . get_option('option_social3')) . '" target="_blank"><img
315 + alt="LinkedIn" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/linkedin.svg').'" style="width:32px; margin:4px;"/></a></li>';
305 316 }
306 317 $content .= '</ul>
307 318 </div>
308 319 <div class="display" id="wphal-disciplines" style="display: none;">
@@ -307,11 +318,11 @@
307 318 </div>
308 319 <div class="display" id="wphal-disciplines" style="display: none;">
309 320 <h3 class="wphal-titre">' . __('Disciplines', 'wp-hal') . '</h3>';
310 321
311 - if (locale == 'fr_FR') {
322 + if (wphal_locale == 'fr_FR') {
312 323 $facetdomain = $json->facet_counts->facet_fields->fr_domainAllCodeLabel_fs;
313 - } elseif (locale == 'es_ES') {
324 + } elseif (wphal_locale == 'es_ES') {
314 325 $facetdomain = $json->facet_counts->facet_fields->es_domainAllCodeLabel_fs;
315 326 } else {
316 327 $facetdomain = $json->facet_counts->facet_fields->en_domainAllCodeLabel_fs;
317 328 }
@@ -323,10 +334,10 @@
323 334 $content .= '<button type="button" class="trioc" id="trinbdisci" onclick="toggleSort(this, false, \'wphal-discipline\', \'wphal-discipline\', \'trinbdisci\'); return false;" style="font-size:16px; text-decoration: none;">Tri Occurrence</button>';
324 335 $content .= '</span>';
325 336 $content .= '<ul id="wphal-discipline" class="wphal-discipline">';
326 337 foreach ($facetdomain as $res) {
327 - $name = explode(delimiter, $res[0]);
328 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=domainAllCode_s:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
338 + $name = explode(wphal_delimiter, $res[0]);
339 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=domainAllCode_s:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
329 340 }
330 341 $content .= '</ul>';
331 342 $content .= '</div>';
332 343
@@ -361,9 +372,9 @@
361 372 }
362 373 asort($tab); // Tri du tableau par ordre alphabétique
363 374 foreach ($tab as $res) {
364 375 $size = round($minsize + (($res[1] - $minval) * $step));
365 - $content .= '<a style="display: inline-block; font-size:' . $size . 'px" href="' . halv3 . '?q=keyword_s:' . urlencode('"' . $res[0] . '"') . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $res[0] . '</a>&nbsp;';
376 + $content .= '<a style="display: inline-block; font-size:' . $size . 'px" href="' . esc_url(halv3 . '?q=keyword_s:' . urlencode('"' . $res[0] . '"') . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $res[0] . '</a>&nbsp;';
366 377 }
367 378 $content .= '</div>';
368 379 $content .= '<div id="keysuite" style="display:none;">';
369 380 $content .= '<span id="trikeywords">';
@@ -372,9 +383,9 @@
372 383 $content .= '</span>';
373 384 $content .= '<ul class="wphal-keyword">';
374 385 $content .= '<div id="wphal-keyw">';
375 386 foreach ($json->facet_counts->facet_fields->keyword_s as $res) {
376 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=keyword_s:' . urlencode('"' . $res[0] . '"') . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $res[0] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
387 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=keyword_s:' . urlencode('"' . $res[0] . '"') . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $res[0] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
377 388 }
378 389 $content .= '</div>';
379 390 $content .= '</ul>';
380 391 $content .= '</div>';
@@ -396,10 +407,15 @@
396 407 $r = $r + 1;
397 408 if ($r > 10) {
398 409 break;
399 410 }
400 - $name = explode(delimiter, $res[0]);
401 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><img alt="user" src=" ' . plugin_dir_url(__FILE__) . '/img/user.svg" style="width:16px; margin-left:2px; margin-right:2px;"/><a href="' . halv3 . '?q=authId_i:' . $name[0] . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
411 + $name = explode(wphal_delimiter, $res[0]);
412 + if($name[0] == 0){
413 + $q = 'authLastNameFirstName_s:'.urlencode("\"".$name[1]."\"");
414 + }else{
415 + $q = "authIdPerson_i:$name[0]";
416 + }
417 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><img alt="user" src=" ' . esc_url(plugin_dir_url(__FILE__) . '/img/user.svg').'" style="width:16px; margin-left:2px; margin-right:2px;"/><a href="' . esc_url(halv3 . '?q='. $q . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
402 418 }
403 419 $i = 1;
404 420 $content .= '<div id="auteursuite" style="display:none;">';
405 421 foreach ($json->facet_counts->facet_fields->authIdLastNameFirstName_fs as $res) {
@@ -408,10 +424,15 @@
408 424 }
409 425 if ($i < $r) {
410 426 $i = $i + 1;
411 427 } else {
412 - $name = explode(delimiter, $res[0]);
413 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><img alt="user" src=" ' . plugin_dir_url(__FILE__) . '/img/user.svg" style="width:16px; margin-left:2px; margin-right:2px;"/><a href="' . halv3 . '?q=authId_i:' . $name[0] . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
428 + $name = explode(wphal_delimiter, $res[0]);
429 + if($name[0] == 0){
430 + $q = 'authLastNameFirstName_s:'.urlencode("\"".$name[1]."\"");
431 + }else{
432 + $q = "authIdPerson_i:$name[0]";
433 + }
434 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><img alt="user" src=" ' . esc_url(plugin_dir_url(__FILE__) . '/img/user.svg').'" style="width:16px; margin-left:2px; margin-right:2px;"/><a href="' . esc_url(halv3 . '?q='. $q . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
414 435 }
415 436 }
416 437 $content .= '</div>';
417 438 $content .= '</div>';
@@ -436,10 +457,10 @@
436 457 $r = $r + 1;
437 458 if ($r > 10) {
438 459 break;
439 460 }
440 - $name = explode(delimiter, $res[0]);
441 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=journalId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
461 + $name = explode(wphal_delimiter, $res[0]);
462 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=journalId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
442 463 }
443 464 $i = 1;
444 465 $content .= '<div id="revuesuite" style="display:none;">';
445 466 foreach ($json->facet_counts->facet_fields->journalIdTitle_fs as $res) {
@@ -448,10 +469,10 @@
448 469 }
449 470 if ($i < $r) {
450 471 $i = $i + 1;
451 472 } else {
452 - $name = explode(delimiter, $res[0]);
453 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=journalId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
473 + $name = explode(wphal_delimiter, $res[0]);
474 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=journalId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
454 475 }
455 476 }
456 477 $content .= '</div>';
457 478 $content .= '</div>';
@@ -478,9 +499,9 @@
478 499 $r = $r + 1;
479 500 if ($r > 10) {
480 501 break;
481 502 }
482 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=producedDateY_i:' . urlencode($res[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $res[0] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
503 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=producedDateY_i:' . urlencode($res[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $res[0] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
483 504 }
484 505 $i = 1;
485 506 $content .= '<div id="anneesuite" style="display:none;">';
486 507 foreach ($json->facet_counts->facet_fields->producedDateY_i as $res) {
@@ -489,9 +510,9 @@
489 510 }
490 511 if ($i < $r) {
491 512 $i = $i + 1;
492 513 } else {
493 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=producedDateY_i:' . urlencode($res[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $res[0] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
514 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=producedDateY_i:' . urlencode($res[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $res[0] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
494 515 }
495 516 }
496 517 $content .= '</div>';
497 518 $content .= '</div>';
@@ -516,10 +537,10 @@
516 537 $r = $r + 1;
517 538 if ($r > 10) {
518 539 break;
519 540 }
520 - $name = explode(delimiter, $res[0]);
521 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=instStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
541 + $name = explode(wphal_delimiter, $res[0]);
542 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=instStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
522 543 }
523 544 $i = 1;
524 545 $content .= '<div id="instsuite" style="display:none;">';
525 546 foreach ($json->facet_counts->facet_fields->instStructIdName_fs as $res) {
@@ -528,10 +549,10 @@
528 549 }
529 550 if ($i < $r) {
530 551 $i = $i + 1;
531 552 } else {
532 - $name = explode(delimiter, $res[0]);
533 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=instStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
553 + $name = explode(wphal_delimiter, $res[0]);
554 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=instStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
534 555 }
535 556 }
536 557 $content .= '</div>';
537 558 $content .= '</div>';
@@ -557,10 +578,10 @@
557 578 $r = $r + 1;
558 579 if ($r > 10) {
559 580 break;
560 581 }
561 - $name = explode(delimiter, $res[0]);
562 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=labStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
582 + $name = explode(wphal_delimiter, $res[0]);
583 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=labStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
563 584 }
564 585 $i = 1;
565 586 $content .= '<div id="labsuite" style="display:none;">';
566 587 foreach ($json->facet_counts->facet_fields->labStructIdName_fs as $res) {
@@ -569,10 +590,10 @@
569 590 }
570 591 if ($i < $r) {
571 592 $i = $i + 1;
572 593 } else {
573 - $name = explode(delimiter, $res[0]);
574 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=labStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
594 + $name = explode(wphal_delimiter, $res[0]);
595 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=labStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
575 596 }
576 597 }
577 598 $content .= '</div>';
578 599 $content .= '</div>';
@@ -597,10 +618,10 @@
597 618 $r = $r + 1;
598 619 if ($r > 10) {
599 620 break;
600 621 }
601 - $name = explode(delimiter, $res[0]);
602 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=deptStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
622 + $name = explode(wphal_delimiter, $res[0]);
623 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=deptStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
603 624 }
604 625 $i = 1;
605 626 $content .= '<div id="deptsuite" style="display:none;">';
606 627 foreach ($json->facet_counts->facet_fields->deptStructIdName_fs as $res) {
@@ -609,10 +630,10 @@
609 630 }
610 631 if ($i < $r) {
611 632 $i = $i + 1;
612 633 } else {
613 - $name = explode(delimiter, $res[0]);
614 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=deptStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
634 + $name = explode(wphal_delimiter, $res[0]);
635 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=deptStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
615 636 }
616 637 }
617 638 $content .= '</div>';
618 639 $content .= '</div>';
@@ -639,10 +660,10 @@
639 660 $r = $r + 1;
640 661 if ($r > 10) {
641 662 break;
642 663 }
643 - $name = explode(delimiter, $res[0]);
644 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=rteamStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
664 + $name = explode(wphal_delimiter, $res[0]);
665 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=rteamStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
645 666 }
646 667 $i = 1;
647 668 $content .= '<div id="equipesuite" style="display:none;">';
648 669 foreach ($json->facet_counts->facet_fields->rteamStructIdName_fs as $res) {
@@ -651,10 +672,10 @@
651 672 }
652 673 if ($i < $r) {
653 674 $i = $i + 1;
654 675 } else {
655 - $name = explode(delimiter, $res[0]);
656 - $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . halv3 . '?q=rteamStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
676 + $name = explode(wphal_delimiter, $res[0]);
677 + $content .= '<li class="metadata" data-percentage="' . $res[1] . '"><a href="' . esc_url(halv3 . '?q=rteamStructId_i:' . urlencode($name[0]) . "+AND+" . $type . ':(' . $id . ')').'" target="_blank">' . $name[1] . '</a><span class="wphal-nbmetadata">' . $res[1] . '</span></li>';
657 678 }
658 679 }
659 680 $content .= '</div>';
660 681 $content .= '</div>';
@@ -713,10 +734,10 @@
713 734 $pageActuelle = 1;
714 735 }
715 736 $premiereEntree = ($pageActuelle - 1) * $messagesParPage;
716 737
717 - $url = api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&fl=docid,citationFull_s,keyword_s,bookTitle_s,producedDate_s,authFullName_s&start=' . $premiereEntree . '&rows=' . $messagesParPage . '&sort=' . producedDateY . '&wt=json';
718 - $json = do_get_data($url);
738 + $url = wphal_api . '?q=*:*&fq=' . $type . ':(' . urlencode($id) . ')&fl=docid,citationFull_s,keyword_s,bookTitle_s,producedDate_s,authFullName_s&start=' . $premiereEntree . '&rows=' . $messagesParPage . '&sort=' . wphal_producedDateY . '&wt=json';
739 + $json = wphal_do_get_data($url);
719 740
720 741 //--MODULE PAGINATION--//
721 742 $count_results = count($json->response->docs);
722 743 if($count_results>0) {
@@ -728,8 +749,29 @@
728 749 } else {
729 750 $content = '<div> no results !</div>';
730 751 }
731 752 if($total> $messagesParPage) {
753 + $base_url = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on' ? 'https' : 'http' ) . '://' . $_SERVER['HTTP_HOST'];
754 + $url = $base_url . $_SERVER["REQUEST_URI"];
755 + $explodedURL= explode('?', $url);
756 + $queryString = $explodedURL[1];
757 + $pagedHref = $explodedURL[0];
758 + if(!empty($queryString)){
759 + $parsedQueryString = [];
760 + parse_str($queryString, $parsedQueryString);
761 + if(isset($parsedQueryString["hal_page"])){
762 + unset($parsedQueryString["hal_page"]);
763 + }
764 + $pagedHref .= '?';
765 + foreach($parsedQueryString as $name => $value){
766 + $pagedHref .= $name.'='.$value.'&';
767 + }
768 + // we add it back..
769 + $pagedHref .= 'hal_page=';
770 + }else {
771 + $pagedHref .= '?hal_page=';
772 + }
773 +
732 774 //--AFFICHAGE PAGINATION--//
733 775 $precedents = $pageActuelle - 2;
734 776 $suivants = $pageActuelle + 2;
735 777 $precedent = $pageActuelle - 1;
@@ -738,9 +780,9 @@
738 780
739 781 $content .= '<ul class="wphal-pagination">';
740 782 //--BOUTON PRECEDENT--//
741 783 if ( $pageActuelle != 1 ) {
742 - $content .= '<li><a href="?hal_page=' . $precedent . '">&laquo;</a></li>';
784 + $content .= '<li><a href="'. $pagedHref . $precedent . '">&laquo;</a></li>';
743 785 }
744 786 if ( $nombreDePages <= 6 ) {// Cas 1 : 6 pages ou moins - Pas de troncature
745 787 for ( $i = 1; $i <= $nombreDePages; $i ++ ) {
746 788 if ( $i == $pageActuelle ) {
@@ -745,9 +787,9 @@
745 787 for ( $i = 1; $i <= $nombreDePages; $i ++ ) {
746 788 if ( $i == $pageActuelle ) {
747 789 $content .= '<li class="active"><a href="#">' . $i . '</a></li>';
748 790 } else {
749 - $content .= ' <li><a href="?hal_page=' . $i . '">' . $i . '</a></li> ';
791 + $content .= ' <li><a href="'. $pagedHref . $i . '">' . $i . '</a></li> ';
750 792 }
751 793 }
752 794 } elseif ( $nombreDePages >= 7 ) {// Cas 2 : 7 pages ou plus - Troncature
753 795 if ( $pageActuelle <= 3 ) {// Lorsque l'on est sur les trois premières pages
@@ -754,35 +796,35 @@
754 796 for ( $i = 1; $i <= 4; $i ++ ) {
755 797 if ( $i == $pageActuelle ) {
756 798 $content .= '<li class="active"><a href="#">' . $i . '</a></li>';
757 799 } else {
758 - $content .= '<li><a href="?hal_page=' . $i . '">' . $i . '</a></li>';
800 + $content .= '<li><a href="'. $pagedHref . $i . '">' . $i . '</a></li>';
759 801 }
760 802 }
761 803 $content .= '<li class="disabled"><a href="#">&hellip;</a></li>';
762 - $content .= '<li><a href="?hal_page=' . $penultimate . '">' . $penultimate . '</a></li>';
763 - $content .= '<li><a href="?hal_page=' . $nombreDePages . '">' . $nombreDePages . '</a></li>';
804 + $content .= '<li><a href="'. $pagedHref . $penultimate . '">' . $penultimate . '</a></li>';
805 + $content .= '<li><a href="'. $pagedHref . $nombreDePages . '">' . $nombreDePages . '</a></li>';
764 806 }
765 807 if ( $pageActuelle >= 4 && $pageActuelle <= $penultimate - 2 ) {//Lorsque l'on arrive sur la quatrième page
766 - $content .= '<li><a href="?hal_page=">1</a></li>';
808 + $content .= '<li><a href="'.$pagedHref.'1">1</a></li>';
767 809 $content .= '<li class="disabled"><a href="#">&hellip;</a></li>';
768 - $content .= '<li><a href="?hal_page=' . $precedents . '">' . $precedents . '</a></li>';
769 - $content .= '<li><a href="?hal_page=' . $precedent . '">' . $precedent . '</a></li>';
810 + $content .= '<li><a href="'. $pagedHref . $precedents . '">' . $precedents . '</a></li>';
811 + $content .= '<li><a href="'. $pagedHref . $precedent . '">' . $precedent . '</a></li>';
770 812 $content .= '<li class="active"><a href="#">' . $pageActuelle . '</a></li>';
771 - $content .= '<li><a href="?hal_page=' . $suivant . '">' . $suivant . '</a></li>';
772 - $content .= '<li><a href="?hal_page=' . $suivants . '">' . $suivants . '</a></li>';
813 + $content .= '<li><a href="'. $pagedHref . $suivant . '">' . $suivant . '</a></li>';
814 + $content .= '<li><a href="'. $pagedHref . $suivants . '">' . $suivants . '</a></li>';
773 815 $content .= '<li class="disabled"><a href="#">&hellip;</a></li>';
774 - $content .= '<li><a href="?hal_page=' . $nombreDePages . '">' . $nombreDePages . '</a></li>';
816 + $content .= '<li><a href="'. $pagedHref . $nombreDePages . '">' . $nombreDePages . '</a></li>';
775 817 }
776 818 if ( $pageActuelle >= $penultimate - 1 ) {
777 - $content .= '<li><a href="?hal_page=1">1</a></li>';
778 - $content .= '<li><a href="?hal_page=2">2</a></li>';
819 + $content .= '<li><a href="'.$pagedHref.'1">1</a></li>';
820 + $content .= '<li><a href="'.$pagedHref.'2">2</a></li>';
779 821 $content .= '<li class="disabled"><a href="#">&hellip;</a></li>';
780 822 for ( $i = $penultimate - 2; $i <= $nombreDePages; $i ++ ) {
781 823 if ( $i == $pageActuelle ) {
782 824 $content .= '<li class="active"><a href="#">' . $i . '</a></li>';
783 825 } else {
784 - $content .= '<li><a href="?hal_page=' . $i . '">' . $i . '</a></li>';
826 + $content .= '<li><a href="'. $pagedHref . $i . '">' . $i . '</a></li>';
785 827 }
786 828 }
787 829 }
788 830 }
@@ -787,9 +829,9 @@
787 829 }
788 830 }
789 831 //--BOUTON SUIVANT--//
790 832 if ( $pageActuelle < $nombreDePages ) {
791 - $content .= '<li><a href="?hal_page=' . $suivant . '">&raquo;</a></li>';
833 + $content .= '<li><a href="'. $pagedHref . $suivant . '">&raquo;</a></li>';
792 834 }
793 835 $content .= '</ul>';
794 836 //--AFFICHAGE PAGINATION--//
795 837 }
@@ -800,27 +842,88 @@
800 842 }else{
801 843 $content = 'Plugin is not configured correctly or shortcode parameters are not valid, please check the <a href="https://doc.archives-ouvertes.fr/afficher-une-liste-de-publications-dans-wordpress/" target="_blank" id="wrong_params">documentation</a>';
802 844 }
803 845 $content .= '<div class="wphal-footer">';
804 - $content .= '<p style="color:#B3B2B0">' . __("Documents récupérés de l'archive ouverte HAL", 'wp-hal') . '&nbsp;<a href="' . site . '" target="_blank"><img alt="logo" src=" ' . plugin_dir_url(__FILE__) . 'img/logo-hal.svg" style="width:32px;"></a></p>';
846 + $content .= '<p style="color:#B3B2B0">' . __("Documents récupérés de l'archive ouverte HAL", 'wp-hal') . '&nbsp;<a href="' . wphal_site . '" target="_blank"><img alt="logo" src=" ' . esc_url(plugin_dir_url(__FILE__) . 'img/logo-hal.png').'" style="width:90px;"></a></p>';
805 847 $content .= '</div>';
806 848
807 849 //--AFFICHAGE GRAPHIQUE DOMAINE--//
808 850 if (!is_null($facetdomain)) {
809 851 foreach ($facetdomain as $res) {
810 - $name = explode(delimiter, $res[0])[1];
852 + $name = explode(wphal_delimiter, $res[0])[1];
811 853 $value = $res[1];
812 854 $array[] = array($name, $value);
813 855 }
856 + wp_localize_script('wp-hal-script4', 'WPWallSettings', $array);
814 857 }
815 - wp_localize_script('wp-hal-script4', 'WPWallSettings', $array);
816 858 $translation = array('liste' => __('Liste', 'wp-hal'), 'compl' => __('Liste complète', 'wp-hal'), 'princ' => __('Liste principale', 'wp-hal'), 'graph' => __('Graphique', 'wp-hal'), 'nuage' => __('Nuage de mots', 'wp-hal'));
817 859 wp_localize_script('wp-hal-script4', 'translate', $translation);
818 860 }
819 - return $content;
861 + // tags other that those will be stripped
862 + $allowed_html_tags = array(
863 + 'div' => array(
864 + 'class' => array(),
865 + 'id' => array(),
866 + 'style' => array(),
867 + ),
868 + "span"=> array(
869 + 'class' => array(),
870 + 'id' => array(),
871 + 'style' => array(),
872 + ),
873 + "img"=> array(
874 + 'alt' => array(),
875 + 'src' => array(),
876 + 'style' => array(),
877 +
878 + ),
879 + 'p' => array(
880 + 'style' => array(),
881 + 'id' => array(),
882 + ),
883 + 'h3' => array(
884 + 'id' => array(),
885 + 'class' => array(),
886 + 'style' => array()
887 + ),
888 + 'a' => array(
889 + 'href' => array(),
890 + 'target' => array(),
891 + 'title' => array(),
892 + 'id' => array(),
893 + 'class' => array(),
894 + 'style' => array(),
895 + 'onclick' => array(),
896 + ),
897 + 'ul' => array(
898 + 'class' => array(),
899 + 'id' => array(),
900 + 'style' => array(),
901 + ),
902 + 'li' => array(
903 + 'class' => array(),
904 + 'id' => array(),
905 + 'data-percentage' => array()
906 + ),
907 + 'button' => array(
908 + 'class' => array(),
909 + 'id' => array(),
910 + 'type' => array(),
911 + 'style' => array(),
912 + 'onclick' => array()
913 + )
914 + ,'br' => array()
915 + ,'hr' => array()
916 + ,'i' => array(),
917 + );
918 + add_filter( 'safe_style_css', function( $styles ) {
919 + $styles[] = 'display';
920 + return $styles;
921 + } );
922 + return wp_kses($content, $allowed_html_tags);
820 923 }
821 924
822 -function verifSolr($values){
925 +function wphal_verifSolr($values){
823 926 $verifsolr = explode(',',$values);
824 927 $numverif = count($verifsolr);
825 928 $solrsql = '';
826 929 if ($numverif<1024){
@@ -839,9 +942,9 @@
839 942
840 943 return $solrsql;
841 944 }
842 945
843 -function wp_adding_style() {
946 +function wphal_adding_style() {
844 947 wp_register_style('wp-hal-style1', plugins_url('/css/style.css', __FILE__));
845 948 wp_register_style('wp-hal-style2', plugins_url('/css/jquery.jqplot.css', __FILE__));
846 949
847 950 wp_enqueue_style('wp-hal-style1');
@@ -846,9 +949,9 @@
846 949
847 950 wp_enqueue_style('wp-hal-style1');
848 951 }
849 952
850 -function wp_adding_script() {
953 +function wphal_adding_script() {
851 954 wp_register_script('wp-hal-script1',plugins_url('/js/jquery.jqplot.js', __FILE__));
852 955 wp_register_script('wp-hal-script2',plugins_url('/js/jqplot.highlighter.js', __FILE__));
853 956 wp_register_script('wp-hal-script3',plugins_url('/js/jqplot.pieRenderer.js', __FILE__));
854 957 wp_register_script('wp-hal-script4',plugins_url('/js/cv-hal.js', __FILE__));
@@ -860,17 +963,17 @@
860 963
861 964 /**
862 965 * Récupère les fichiers css et js
863 966 */
864 -if ( function_exists('curl_init' ) ) {
865 - add_action('wp_enqueue_scripts', 'wp_adding_style');
866 - add_action('wp_enqueue_scripts', 'wp_adding_script');
967 +if ( wphal_is_curl_installed() ) {
968 + add_action('wp_enqueue_scripts', 'wphal_adding_style');
969 + add_action('wp_enqueue_scripts', 'wphal_adding_script');
867 970 }
868 971
869 972 /**
870 973 * Charge lorsque le plugin est désactivé
871 974 */
872 -register_deactivation_hook( __FILE__, 'reset_option' );
975 +register_deactivation_hook( __FILE__, 'wphal_reset_option' );
873 976
874 977 /**
875 978 * Ajoute le widget wphal à l'initialisation des widgets
876 979 */
@@ -886,9 +989,9 @@
886 989 */
887 990 function wphal_menu() {
888 991 add_menu_page( 'Options', 'Hal', 'manage_options', 'wp-hal.php', 'wphal_option' , '', 21);
889 992
890 - add_action( 'admin_init', 'register_settings' );
993 + add_action( 'admin_init', 'wphal_register_settings' );
891 994 }
892 995
893 996
894 997 /**
@@ -937,16 +1040,17 @@
937 1040 * @var $before_title : defined by extract
938 1041 * @var $after_title : defined by extract
939 1042 * @var $after_widget : defined by extract
940 1043 */
941 - if (!function_exists('curl_init')) {
1044 + if (!wphal_is_curl_installed()) {
942 1045 $content = 'Please check the <a href="https://wordpress.org/plugins/hal/faq/" target="_blank" id="FAQ">FAQ</a> with the code : CURL';
943 1046
944 1047 } else {
945 - $instance['idhal'] = verifSolr($instance['idhal']);
1048 + $instance['idhal'] = wphal_verifSolr($instance['idhal']);
946 1049
947 - $url = api . '?q=*:*&fq=' . $instance['select'] . ':' . urlencode($instance['idhal']) . '&fl=uri_s,' . $instance['typetext'] . '&sort=' . producedDateY . '&rows=' . $instance['nbdoc'] . '&wt=json';
948 - $json = do_get_data($url);
1050 + $url = wphal_api . '?q=*:*&fq=' . $instance['select'] . ':' . urlencode($instance['idhal']) . '&fl=uri_s,' . $instance['typetext'] . '&sort=' . wphal_producedDateY . '&rows=' . $instance['nbdoc'] . '&wt=json';
1051 + $json = wphal_do_get_data($url);
1052 +
949 1053 $count_results = count($json->response->docs);
950 1054 if ($count_results > 0) {
951 1055 $content = '<ul class="widhal-ul">';
952 1056 for ($i = 0; $i < $count_results - 1; $i++) {
@@ -954,9 +1058,9 @@
954 1058 $typetext = $json->response->docs[$i]->citationRef_s;
955 1059 } else {
956 1060 $typetext = $json->response->docs[$i]->title_s[0];
957 1061 }
958 - $content .= '<li class="widhal-li"><a href="' . $json->response->docs[$i]->uri_s . '" target="_blank">' . $typetext . '</a></li>';
1062 + $content .= '<li class="widhal-li"><a href="' . esc_url($json->response->docs[$i]->uri_s) . '" target="_blank">' . $typetext . '</a></li>';
959 1063 }
960 1064 $content .= '</ul>';
961 1065 } else {
962 1066 $content = '<div> no results !</div>';
@@ -961,12 +1065,37 @@
961 1065 } else {
962 1066 $content = '<div> no results !</div>';
963 1067 }
964 1068 }
965 - echo $before_widget;
966 - echo $before_title . $instance['titre'] . $after_title;
967 - echo $content;
968 - echo $after_widget;
1069 + // tags other that those will be stripped
1070 + $allowed_html_tags = array(
1071 + 'div' => array(
1072 + 'class' => array(),
1073 + 'id' => array(),
1074 + ),
1075 + 'h2' => array(),
1076 + 'section' => array(),
1077 + 'a' => array(
1078 + 'href' => array(),
1079 + 'target' => array(),
1080 + 'title' => array(),
1081 + 'id' => array(),
1082 + 'class' => array(),
1083 + ),
1084 + 'ul' => array(
1085 + 'class' => array(),
1086 + 'id' => array(),
1087 + ),
1088 + 'li' => array(
1089 + 'class' => array(),
1090 + 'id' => array(),
1091 + )
1092 + );
1093 + $widget_block = $before_widget;
1094 + $widget_block .= $before_title . $instance['titre'] . $after_title;
1095 + $widget_block .= $content;
1096 + $widget_block .= $after_widget;
1097 + echo wp_kses($widget_block, $allowed_html_tags);
969 1098 }
970 1099 }
971 1100
972 1101 /**
@@ -975,11 +1104,14 @@
975 1104 * @param $old
976 1105 */
977 1106 function update($new, $old){
978 1107 //the id must be provided
979 - if(isset($new['idhal']) && !empty($new['idhal']))
1108 + if(isset($new['idhal']) && !empty($new['idhal'])) {
1109 + $new['idhal'] = wphal_sanitize_username($new['idhal']);
1110 + $new['nbdoc'] = wphal_sanitize_id($new['nbdoc']);
980 1111 return $new;
981 - return false;
1112 + }else
1113 + return false;
982 1114 }
983 1115
984 1116 /**
985 1117 * Formulaire du widget
@@ -996,56 +1128,112 @@
996 1128 );
997 1129 $instance = wp_parse_args($instance,$defaut);
998 1130 ?>
999 1131 <p>
1000 - <label for="<?php echo $this->get_field_id("titre");?>"><?php echo __('Titre','wp-hal') .' :'?></label>
1001 - <input value="<?php echo $instance['titre'];?>" name="<?php echo $this->get_field_name("titre");?>" id="<?php echo $this->get_field_id("titre");?>" class="widefat" type="text"/>
1132 + <label for="<?php echo esc_attr($this->get_field_id("titre"));?>"><?php echo esc_html(__('Titre','wp-hal')) .' :'?></label>
1133 + <input value="<?php echo esc_js($instance['titre']);?>" name="<?php echo esc_attr($this->get_field_name("titre"));?>" id="<?php echo esc_attr($this->get_field_id("titre"));?>" class="widefat" type="text"/>
1002 1134 </p>
1003 1135 <p>
1004 - <label for="<?php echo $this->get_field_id("nbdoc");?>"><?php echo __("Nombre de documents affichés",'wp-hal') .' :'?></label>
1005 - <input class="tiny-text" id="<?php echo $this->get_field_id("nbdoc");?>" name="<?php echo $this->get_field_name("nbdoc");?>" type="number" step="1" min="1" max="10" value="<?php echo $instance['nbdoc'];?>" size="3">
1136 + <label for="<?php echo esc_attr($this->get_field_id("nbdoc"));?>"><?php echo esc_html(__("Nombre de documents affichés",'wp-hal')) .' :'?></label>
1137 + <input class="tiny-text" id="<?php echo esc_attr($this->get_field_id("nbdoc"));?>" name="<?php echo esc_attr($this->get_field_name("nbdoc"));?>" type="number" step="1" min="1" max="10" value="<?php echo esc_js($instance['nbdoc']);?>" size="3">
1006 1138 </p>
1007 1139 <p>
1008 - <label for="<?php echo $this->get_field_id("typetext");?>"><?php echo __("Type d'affichage",'wp-hal') .' :'?></label>
1009 - <select id="<?php echo $this->get_field_id("typetext");?>" name="<?php echo $this->get_field_name("typetext");?>">
1010 - <option id="<?php echo $this->get_field_id("Title");?>" value="title_s" <?php echo ($instance["typetext"] == "title_s")?'selected':''; ?>><label for="<?php echo $this->get_field_id("Title");?>"><?php echo __("Titre", 'wp-hal')?></label></option>
1011 - <option id="<?php echo $this->get_field_id("Citation");?>" value="citationRef_s" <?php echo ($instance["typetext"] == "citationRef_s")?'selected':''; ?>><label for="<?php echo $this->get_field_id("Citation");?>"><?php echo __("Citation", 'wp-hal')?></label></option>
1140 + <label for="<?php echo esc_attr($this->get_field_id("typetext"));?>"><?php echo esc_html(__("Type d'affichage",'wp-hal')) .' :'?></label>
1141 + <select id="<?php echo esc_attr($this->get_field_id("typetext"));?>" name="<?php echo esc_attr($this->get_field_name("typetext"));?>">
1142 + <option id="<?php echo esc_attr($this->get_field_id("Title"));?>" value="title_s" <?php echo esc_attr(($instance["typetext"] == "title_s")?'selected':''); ?>><label for="<?php echo wp_kses($this->get_field_id("Title"), []);?>"><?php echo esc_html(__("Titre", 'wp-hal'))?></label></option>
1143 + <option id="<?php echo esc_attr($this->get_field_id("Citation"));?>" value="citationRef_s" <?php echo esc_attr(($instance["typetext"] == "citationRef_s")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("Citation"));?>"><?php echo esc_html(__("Citation", 'wp-hal'), [])?></label></option>
1012 1144 </select>
1013 1145 </p>
1014 1146 <p>
1015 - <label for="<?php echo $this->get_field_id("select");?>"><?php echo __("Type d'Id",'wp-hal') .' :'?></label>
1016 - <select id="<?php echo $this->get_field_id("select");?>" name="<?php echo $this->get_field_name("select");?>">
1017 - <option id="<?php echo $this->get_field_id("Idhal");?>" value="authIdHal_s" <?php echo ($instance["select"] == "authIdHal_s")?'selected':''; ?>><label for="<?php echo $this->get_field_id("Idhal");?>">Id Hal</label><span style="font-style: italic;"> <?php echo __('(Exemple : laurent-capelli)','wp-hal');?></span></option>
1018 - <option id="<?php echo $this->get_field_id("StructId");?>" value="structId_i" <?php echo ($instance["select"] == "structId_i")?'selected':''; ?>><label for="<?php echo $this->get_field_id("StructId");?>">Struct Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 413106)','wp-hal');?></span></option>
1019 - <option id="<?php echo $this->get_field_id("AuthorStructId");?>" value="authStructId_i" <?php echo ($instance["select"] == "authStructId_i")?'selected':''; ?>><label for="<?php echo $this->get_field_id("AuthorStructId");?>">AuthorStruct Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 413106)','wp-hal');?></span></option>
1020 - <option id="<?php echo $this->get_field_id("AuthorId");?>" value="authId_i" <?php echo ($instance["select"] == "authId_i")?'selected':''; ?>><label for="<?php echo $this->get_field_id("AuthorId");?>">Author Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 413106)','wp-hal');?></span></option>
1021 - <option id="<?php echo $this->get_field_id("Anrproject");?>" value="anrProjectId_i" <?php echo ($instance["select"] == "anrProjectId_i")?'selected':''; ?>><label for="<?php echo $this->get_field_id("Anrproject");?>">anrProject Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 1646)','wp-hal');?></span></option>
1022 - <option id="<?php echo $this->get_field_id("Europeanproject");?>" value="europeanProjectId_i" <?php echo ($instance["select"] == "europeanProjectId_i")?'selected':''; ?>><label for="<?php echo $this->get_field_id("Europeanproject");?>">europeanProject Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 17877)','wp-hal');?></span></option>
1023 - <option id="<?php echo $this->get_field_id("Collection");?>" value="collCode_s" <?php echo ($instance["select"] == "collCode_s")?'selected':''; ?>><label for="<?php echo $this->get_field_id("Collection");?>">Collection</label><span style="font-style: italic;"> <?php echo __('(Exemple : TICE2014)','wp-hal');?></span></option>
1147 + <label for="<?php echo esc_attr($this->get_field_id("select"));?>"><?php echo esc_html(__("Type d'Id",'wp-hal') .' :')?></label>
1148 + <select id="<?php echo esc_attr($this->get_field_id("select"));?>" name="<?php echo esc_attr($this->get_field_name("select"));?>">
1149 + <option id="<?php echo esc_attr($this->get_field_id("Idhal"));?>" value="authIdHal_s" <?php echo esc_attr(($instance["select"] == "authIdHal_s")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("Idhal"));?>">Id Hal</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : laurent-capelli)','wp-hal'));?></span></option>
1150 + <option id="<?php echo esc_attr($this->get_field_id("StructId"));?>" value="structId_i" <?php echo esc_attr(($instance["select"] == "structId_i")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("StructId"));?>">Struct Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 413106)','wp-hal'));?></span></option>
1151 + <option id="<?php echo esc_attr($this->get_field_id("AuthorStructId"));?>" value="authStructId_i" <?php echo esc_attr(($instance["select"] == "authStructId_i")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("AuthorStructId"));?>">AuthorStruct Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 413106)','wp-hal'));?></span></option>
1152 + <option id="<?php echo esc_attr($this->get_field_id("Anrproject"));?>" value="anrProjectId_i" <?php echo esc_attr(($instance["select"] == "anrProjectId_i")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("Anrproject"));?>">anrProject Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 1646)','wp-hal'));?></span></option>
1153 + <option id="<?php echo esc_attr($this->get_field_id("Europeanproject"));?>" value="europeanProjectId_i" <?php echo esc_attr(($instance["select"] == "europeanProjectId_i")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("Europeanproject"));?>">europeanProject Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 17877)','wp-hal'));?></span></option>
1154 + <option id="<?php echo esc_attr($this->get_field_id("Collection"));?>" value="collCode_s" <?php echo esc_attr(($instance["select"] == "collCode_s")?'selected':''); ?>><label for="<?php echo esc_attr($this->get_field_id("Collection"));?>">Collection</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : TICE2014)','wp-hal'));?></span></option>
1024 1155 </select>
1025 1156 </p>
1026 1157 <p>
1027 - <label for="<?php echo $this->get_field_id("idhal");?>"><?php echo __("Id",'wp-hal') .' :'?></label>
1028 - <input value="<?php echo $instance['idhal'];?>" name="<?php echo $this->get_field_name("idhal");?>" id="<?php echo $this->get_field_id("idhal");?>" type="text"/>
1158 + <label for="<?php echo esc_attr($this->get_field_id("idhal"));?>"><?php echo esc_html(__("Id",'wp-hal')) .' :'?></label>
1159 + <input value="<?php echo esc_js($instance['idhal']);?>" name="<?php echo esc_attr($this->get_field_name("idhal"));?>" id="<?php echo esc_attr($this->get_field_id("idhal"));?>" type="text"/>
1029 1160 </p>
1030 1161 <?php
1031 1162 }
1032 1163 }
1033 1164
1034 -function register_settings() {
1165 +
1166 +function wphal_sanitize_id( $input ){
1167 + if(is_numeric($input)){
1168 + return $input;
1169 + }
1170 +}
1171 +
1172 +function wphal_sanitize_username($input)
1173 +{
1174 + $allowed = array(".", "-", "_"); // you can add here more value, you want to allow.
1175 + if(ctype_alnum(str_replace($allowed, '', $input ))) {
1176 + return $input;
1177 + }
1178 +}
1179 +
1180 +function wphal_sanitize_phone( $input ){
1181 + $phone_num = $input;
1182 + $phone_num = preg_replace('/[^0-9]/', '', $phone_num);
1183 + if(strlen($phone_num) === 10) {
1184 + //Phone is 10 characters in length
1185 + return $input;
1186 + }
1187 +}
1188 +
1189 +
1190 +function wphal_register_settings() {
1035 1191 register_setting( 'wphal_option', 'option_choix' );
1036 1192 register_setting( 'wphal_option', 'option_type' );
1037 1193 register_setting( 'wphal_option', 'option_groupe' );
1038 - register_setting( 'wphal_option', 'option_idhal' );
1194 + register_setting( 'wphal_option', 'option_idhal' , array(
1195 + 'type' => 'string',
1196 + 'sanitize_callback' => 'wphal_sanitize_username',
1197 + 'default' => NULL,
1198 + ));
1039 1199 register_setting( 'wphal_option', 'option_lang' );
1040 1200 register_setting( 'wphal_option', 'option_infocontact' );
1041 - register_setting( 'wphal_option', 'option_email' );
1042 - register_setting( 'wphal_option', 'option_tel' );
1043 - register_setting( 'wphal_option', 'option_social0' );
1044 - register_setting( 'wphal_option', 'option_social1' );
1045 - register_setting( 'wphal_option', 'option_social2' );
1046 - register_setting( 'wphal_option', 'option_social3' );
1047 - register_setting( 'wphal_option', 'option_cache_timeout' );
1201 + register_setting( 'wphal_option', 'option_email' , array(
1202 + 'type' => 'string',
1203 + 'sanitize_callback' => 'sanitize_email',
1204 + 'default' => NULL,
1205 + ));
1206 + register_setting( 'wphal_option', 'option_tel' , array(
1207 + 'type' => 'string',
1208 + 'sanitize_callback' => 'wphal_sanitize_phone',
1209 + 'default' => NULL,
1210 + ));
1211 + register_setting( 'wphal_option', 'option_social0' , array(
1212 + 'type' => 'string',
1213 + 'sanitize_callback' => 'wphal_sanitize_username',
1214 + 'default' => NULL,
1215 + ));
1216 + register_setting( 'wphal_option', 'option_social1' , array(
1217 + 'type' => 'string',
1218 + 'sanitize_callback' => 'wphal_sanitize_username',
1219 + 'default' => NULL,
1220 + ));
1221 + register_setting( 'wphal_option', 'option_social2' , array(
1222 + 'type' => 'string',
1223 + 'sanitize_callback' => 'wphal_sanitize_username',
1224 + 'default' => NULL,
1225 + ));
1226 + register_setting( 'wphal_option', 'option_social3' , array(
1227 + 'type' => 'string',
1228 + 'sanitize_callback' => 'wphal_sanitize_username',
1229 + 'default' => NULL,
1230 + ));
1231 + register_setting( 'wphal_option', 'option_cache_timeout' , array(
1232 + 'type' => 'string',
1233 + 'sanitize_callback' => 'wphal_sanitize_id',
1234 + 'default' => NULL,
1235 + ));
1048 1236 register_setting( 'wphal_option', 'option_erase_cache' );
1049 1237 }
1050 1238
1051 1239 /**
@@ -1060,9 +1248,9 @@
1060 1248 update_option('option_groupe', 'paginer');
1061 1249 }
1062 1250 ?>
1063 1251 <div class="wrap">
1064 - <h2><?php echo __('Plugin HAL','wp-hal');?></h2>
1252 + <h2><?php echo esc_html(__('Plugin HAL','wp-hal'));?></h2>
1065 1253 <form method="post" enctype="multipart/form-data" action="options.php">
1066 1254 <div id="poststuff">
1067 1255 <div id="post-body" class="metabox-holder columns-2">
1068 1256 <div id="post-body-content">
@@ -1069,85 +1257,84 @@
1069 1257 <?php settings_fields( 'wphal_option' ); ?>
1070 1258 <?php do_settings_sections( 'wphal_option' ); ?>
1071 1259 <table class="form-table">
1072 1260 <tr style="vertical-align:top;">
1073 - <th scope="row" style="font-size: 18px;"><?php echo __('Paramètre de la page :','wp-hal');?></th>
1261 + <th scope="row" style="font-size: 18px;"><?php echo esc_html(__('Paramètre de la page :','wp-hal'));?></th>
1074 1262 </tr>
1075 1263 <tr style="vertical-align:top;">
1076 - <th scope="row"><label for="option_type"><?php echo __('Type d\'Id','wp-hal');?></label></th>
1264 + <th scope="row"><label for="option_type"><?php echo esc_html(__('Type d\'Id','wp-hal'));?></label></th>
1077 1265 <td><select name="option_type">
1078 - <option id="Idhal" value="authIdHal_s" <?php echo (get_option('option_type') == "authIdHal_s")?'selected':''; ?>><label for="Idhal">Id Hal</label><span style="font-style: italic;"> <?php echo __('(Exemple : laurent-capelli)','wp-hal');?></span></option>
1079 - <option id="StructId" value="structId_i" <?php echo (get_option('option_type') == "structId_i")?'selected':''; ?>><label for="StructId">Struct Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 413106)','wp-hal');?></span></option>
1080 - <option id="AuthorStructId" value="authStructId_i" <?php echo (get_option('option_type') == "authStructId_i")?'selected':''; ?>><label for="AuthorStructId">AuthorStruct Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 413106)','wp-hal');?></span></option>
1081 - <option id="AuthorId" value="authId_i" <?php echo (get_option('option_type') == "authId_i")?'selected':''; ?>><label for="AuthorId">Author Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 413106)','wp-hal');?></span></option>
1082 - <option id="Anrproject" value="anrProjectId_i" <?php echo (get_option('option_type') == "anrProjectId_i")?'selected':''; ?>><label for="Anrproject">anrProject Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 1646)','wp-hal');?></span></option>
1083 - <option id="Europeanproject" value="europeanProjectId_i" <?php echo (get_option('option_type') == "europeanProjectId_i")?'selected':''; ?>><label for="Europeanproject">europeanProject Id</label><span style="font-style: italic;"> <?php echo __('(Exemple : 17877)','wp-hal');?></span></option>
1084 - <option id="Collection" value="collCode_s" <?php echo (get_option('option_type') == "collCode_s")?'selected':''; ?>><label for="Collection">Collection</label><span style="font-style: italic;"> <?php echo __('(Exemple : TICE2014)','wp-hal');?></span></option>
1266 + <option id="Idhal" value="authIdHal_s" <?php echo esc_attr(((get_option('option_type') == "authIdHal_s")?'selected':'')); ?>><label for="Idhal">Id Hal</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : laurent-capelli)','wp-hal'));?></span></option>
1267 + <option id="StructId" value="structId_i" <?php echo esc_attr(((get_option('option_type') == "structId_i")?'selected':'')); ?>><label for="StructId">Struct Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 413106)','wp-hal'));?></span></option>
1268 + <option id="AuthorStructId" value="authStructId_i" <?php echo esc_attr(((get_option('option_type') == "authStructId_i")?'selected':'')); ?>><label for="AuthorStructId">AuthorStruct Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 413106)','wp-hal'));?></span></option>
1269 + <option id="Anrproject" value="anrProjectId_i" <?php echo esc_attr(((get_option('option_type') == "anrProjectId_i")?'selected':'')); ?>><label for="Anrproject">anrProject Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 1646)','wp-hal'));?></span></option>
1270 + <option id="Europeanproject" value="europeanProjectId_i" <?php echo esc_attr(((get_option('option_type') == "europeanProjectId_i")?'selected':'')); ?>><label for="Europeanproject">europeanProject Id</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : 17877)','wp-hal'));?></span></option>
1271 + <option id="Collection" value="collCode_s" <?php echo esc_attr(((get_option('option_type') == "collCode_s")?'selected':'')); ?>><label for="Collection">Collection</label><span style="font-style: italic;"> <?php echo esc_html(__('(Exemple : TICE2014)','wp-hal'));?></span></option>
1085 1272 </select>
1086 - <input type="text" name="option_idhal" id="option_idhal" value="<?php echo get_option('option_idhal'); ?>"/>
1273 + <input type="text" name="option_idhal" id="option_idhal" value="<?php echo esc_js(get_option('option_idhal')); ?>"/>
1087 1274 </td>
1088 1275 </tr>
1089 1276 <tr style="vertical-align:top;">
1090 - <th scope="row"><?php echo __('Affichage des documents','wp-hal');?></th>
1091 - <td><input type="radio" name="option_groupe" id="paginer" value="paginer" <?php echo (get_option('option_groupe') == "paginer")?'checked':''; ?>><label for="paginer"><?php echo __('Documents avec pagination','wp-hal');?></label><br>
1092 - <input type="radio" name="option_groupe" id="grouper" value="grouper" <?php echo (get_option('option_groupe') == "grouper")?'checked':''; ?>><label for="grouper"><?php echo __('Documents groupés par type','wp-hal');?></label><br>
1277 + <th scope="row"><?php echo esc_html(__('Affichage des documents','wp-hal'));?></th>
1278 + <td><input type="radio" name="option_groupe" id="paginer" value="paginer" <?php echo esc_attr((get_option('option_groupe') == "paginer")?'checked':''); ?>><label for="paginer"><?php echo esc_html(__('Documents avec pagination','wp-hal'));?></label><br>
1279 + <input type="radio" name="option_groupe" id="grouper" value="grouper" <?php echo esc_js((get_option('option_groupe') == "grouper")?'checked':''); ?>><label for="grouper"><?php echo esc_html(__('Documents groupés par type','wp-hal'));?></label><br>
1093 1280 </td>
1094 1281 </tr>
1095 1282 <tr style="vertical-align:top;">
1096 - <th scope="row"><?php echo __('Choix des éléments menu','wp-hal');?></th>
1283 + <th scope="row"><?php echo esc_html(__('Choix des éléments menu','wp-hal'));?></th>
1097 1284 <?php $option_choix = get_option('option_choix'); ?>
1098 - <td><input type="checkbox" name="option_choix[1]" id="Contact" value="contact" <?php echo (isset($option_choix[1]) && $option_choix[1] == "contact")?'checked':''; ?>><label for="Contact"><?php echo __('Contact','wp-hal');?></label><br/>
1099 - <input type="checkbox" name="option_choix[2]" id="Disciplines" value="disciplines" <?php echo (isset($option_choix[2]) && $option_choix[2] == "disciplines")?'checked':''; ?>><label for="Disciplines"><?php echo __('Disciplines','wp-hal');?></label><br/>
1100 - <input type="checkbox" name="option_choix[3]" id="Mots-clefs" value="mots-clefs" <?php echo (isset($option_choix[3]) && $option_choix[3] == "mots-clefs")?'checked':''; ?>><label for="Mots-clefs"><?php echo __('Mots-clefs','wp-hal');?></label><br/>
1101 - <input type="checkbox" name="option_choix[4]" id="Auteurs" value="auteurs" <?php echo (isset($option_choix[4]) && $option_choix[4] == "auteurs")?'checked':''; ?>><label for="Auteurs"><?php echo __('Auteurs','wp-hal');?></label><br/>
1102 - <input type="checkbox" name="option_choix[5]" id="Revues" value="revues" <?php echo (isset($option_choix[5]) && $option_choix[5] == "revues")?'checked':''; ?>><label for="Revues"><?php echo __('Revues','wp-hal');?></label><br/>
1103 - <input type="checkbox" name="option_choix[6]" id="Annee" value="annee" <?php echo (isset($option_choix[6]) && $option_choix[6] == "annee")?'checked':''; ?>><label for="Annee"><?php echo __('Année de production','wp-hal');?></label><br/>
1104 - <input type="checkbox" name="option_choix[7]" id="Institution" value="institution" <?php echo (isset($option_choix[7]) && $option_choix[7] == "institution")?'checked':''; ?>><label for="Institution"><?php echo __('Institutions','wp-hal');?></label><br/>
1105 - <input type="checkbox" name="option_choix[8]" id="Laboratoire" value="laboratoire" <?php echo (isset($option_choix[8]) && $option_choix[8] == "laboratoire")?'checked':''; ?>><label for="Laboratoire"><?php echo __('Laboratoires','wp-hal');?></label><br/>
1106 - <input type="checkbox" name="option_choix[9]" id="Departement" value="departement" <?php echo (isset($option_choix[9]) && $option_choix[9] == "departement")?'checked':''; ?>><label for="Departement"><?php echo __('Départements','wp-hal');?></label><br/>
1107 - <input type="checkbox" name="option_choix[10]" id="Equipe" value="equipe" <?php echo (isset($option_choix[10]) && $option_choix[10] == "equipe")?'checked':''; ?>><label for="Equipe"><?php echo __('Équipes de recherche','wp-hal');?></label>
1285 + <td><input type="checkbox" name="option_choix[1]" id="Contact" value="contact" <?php echo esc_attr((isset($option_choix[1]) && $option_choix[1] == "contact")?'checked':''); ?>><label for="Contact"><?php echo esc_html(__('Contact','wp-hal'));?></label><br/>
1286 + <input type="checkbox" name="option_choix[2]" id="Disciplines" value="disciplines" <?php echo esc_attr((isset($option_choix[2]) && $option_choix[2] == "disciplines")?'checked':''); ?>><label for="Disciplines"><?php echo esc_html(__('Disciplines','wp-hal'));?></label><br/>
1287 + <input type="checkbox" name="option_choix[3]" id="Mots-clefs" value="mots-clefs" <?php echo esc_attr((isset($option_choix[3]) && $option_choix[3] == "mots-clefs")?'checked':''); ?>><label for="Mots-clefs"><?php echo esc_html(__('Mots-clefs','wp-hal'));?></label><br/>
1288 + <input type="checkbox" name="option_choix[4]" id="Auteurs" value="auteurs" <?php echo esc_attr((isset($option_choix[4]) && $option_choix[4] == "auteurs")?'checked':''); ?>><label for="Auteurs"><?php echo esc_html(__('Auteurs','wp-hal'));?></label><br/>
1289 + <input type="checkbox" name="option_choix[5]" id="Revues" value="revues" <?php echo esc_attr((isset($option_choix[5]) && $option_choix[5] == "revues")?'checked':''); ?>><label for="Revues"><?php echo esc_html(__('Revues','wp-hal'));?></label><br/>
1290 + <input type="checkbox" name="option_choix[6]" id="Annee" value="annee" <?php echo esc_attr((isset($option_choix[6]) && $option_choix[6] == "annee")?'checked':''); ?>><label for="Annee"><?php echo esc_html(__('Année de production','wp-hal'));?></label><br/>
1291 + <input type="checkbox" name="option_choix[7]" id="Institution" value="institution" <?php echo esc_attr((isset($option_choix[7]) && $option_choix[7] == "institution")?'checked':''); ?>><label for="Institution"><?php echo esc_html(__('Institutions','wp-hal'));?></label><br/>
1292 + <input type="checkbox" name="option_choix[8]" id="Laboratoire" value="laboratoire" <?php echo esc_attr((isset($option_choix[8]) && $option_choix[8] == "laboratoire")?'checked':''); ?>><label for="Laboratoire"><?php echo esc_html(__('Laboratoires','wp-hal'));?></label><br/>
1293 + <input type="checkbox" name="option_choix[9]" id="Departement" value="departement" <?php echo esc_attr((isset($option_choix[9]) && $option_choix[9] == "departement")?'checked':''); ?>><label for="Departement"><?php echo esc_html(__('Départements','wp-hal'));?></label><br/>
1294 + <input type="checkbox" name="option_choix[10]" id="Equipe" value="equipe" <?php echo esc_attr((isset($option_choix[10]) && $option_choix[10] == "equipe")?'checked':''); ?>><label for="Equipe"><?php echo esc_html(__('Équipes de recherche','wp-hal'));?></label>
1108 1295 </td>
1109 1296 </tr>
1110 1297 <tr style="vertical-align:top;">
1111 - <th scope="row" style="font-size: 18px;"><?php echo __('Contact :','wp-hal');?></th>
1298 + <th scope="row" style="font-size: 18px;"><?php echo esc_html(__('Contact :','wp-hal'));?></th>
1112 1299 </tr>
1113 1300 <tr>
1114 - <th scope="row"><?php echo __("Afficher les informations d'un chercheur ayant un IdHal ?",'wp-hal');?></th>
1115 - <td><input type="radio" name="option_infocontact" id="wphal-yes" value="yes" <?php echo (get_option('option_infocontact') == "yes")?'checked':''; ?>><label for="wphal-yes"><?php echo __("Oui",'wp-hal')?></label><br>
1116 - <input type="radio" name="option_infocontact" id="wphal-no" value="no" <?php echo (get_option('option_infocontact') == "no")?'checked':''; ?>><label for="wphal-no"><?php echo __("Non",'wp-hal')?></label><br>
1301 + <th scope="row"><?php echo esc_html(__("Afficher les informations d'un chercheur ayant un IdHal ?",'wp-hal'));?></th>
1302 + <td><input type="radio" name="option_infocontact" id="wphal-yes" value="yes" <?php echo esc_attr((get_option('option_infocontact') == "yes")?'checked':''); ?>><label for="wphal-yes"><?php echo esc_html(__("Oui",'wp-hal'))?></label><br>
1303 + <input type="radio" name="option_infocontact" id="wphal-no" value="no" <?php echo esc_attr((get_option('option_infocontact') == "no")?'checked':''); ?>><label for="wphal-no"><?php echo esc_html(__("Non",'wp-hal'))?></label><br>
1117 1304 </td>
1118 1305 </tr>
1119 1306 <tr>
1120 - <th scope="row"><label for="option_cache_timeout"><?php echo __('Expiration cache (minutes)','wp-hal');?></label></th>
1121 - <td><input type="number" min="1440" style="width:300px;" placeholder="Default(1 day) : 1440" name="option_cache_timeout" id="option_cache_timeout" value="<?php echo get_option('option_cache_timeout'); ?>"/><img alt="cache" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/clock.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1307 + <th scope="row"><label for="option_cache_timeout"><?php echo esc_html(__('Expiration cache (minutes)','wp-hal'));?></label></th>
1308 + <td><input type="number" min="1440" style="width:300px;" placeholder="Default(1 day) : 1440" name="option_cache_timeout" id="option_cache_timeout" value="<?php echo esc_js(get_option('option_cache_timeout')); ?>"/><img alt="cache" src="<?php echo esc_url(plugin_dir_url( __FILE__ ).'img/clock.svg'); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1122 1309 </tr>
1123 1310 <tr>
1124 - <th scope="row"><label for="option_erase_cache"><?php echo __('Reinitialiser le cache','wp-hal');?></label></th>
1125 - <td><input type="checkbox" name="option_erase_cache" id="option_erase_cache" value="1"/><img alt="option_erase_cache" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/groom.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1311 + <th scope="row"><label for="option_erase_cache"><?php echo esc_html(__('Reinitialiser le cache','wp-hal'));?></label></th>
1312 + <td><input type="checkbox" name="option_erase_cache" id="option_erase_cache" value="1"/><img alt="option_erase_cache" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/groom.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1126 1313 </tr>
1127 1314 <tr>
1128 - <th scope="row"><label for="option_email"><?php echo __('Email','wp-hal');?></label></th>
1129 - <td><input type="text" style="width:300px;" placeholder="Exemple : hi@mail.com" name="option_email" id="option_email" value="<?php echo get_option('option_email'); ?>"/><img alt="email" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/mail.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1315 + <th scope="row"><label for="option_email"><?php echo esc_html(__('Email','wp-hal'));?></label></th>
1316 + <td><input type="text" style="width:300px;" placeholder="Exemple : hi@mail.com" name="option_email" id="option_email" value="<?php echo esc_js(get_option('option_email')); ?>"/><img alt="email" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/mail.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1130 1317 </tr>
1131 1318 <tr>
1132 - <th scope="row"><label for="option_tel"><?php echo __('Téléphone','wp-hal');?></label></th>
1133 - <td><input type="text" style="width:300px;" placeholder="Exemple : 06-01-02-03-04" name="option_tel" id="option_tel" value="<?php echo get_option('option_tel');?>"/><img alt="phone" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/phone.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1319 + <th scope="row"><label for="option_tel"><?php echo esc_html(__('Téléphone','wp-hal'));?></label></th>
1320 + <td><input type="text" style="width:300px;" placeholder="Exemple : 06-01-02-03-04" name="option_tel" id="option_tel" value="<?php echo esc_js(get_option('option_tel'));?>"/><img alt="phone" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/phone.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1134 1321 </tr>
1135 1322 <tr>
1136 1323 <th><label for="option_social0">Facebook (http://www.facebook.com/)</label></th>
1137 - <td><input type="text" style="width:300px;" placeholder="Exemple : fa.book" name="option_social0" id="option_social0" value="<?php echo get_option('option_social0'); ?>"/><img alt="facebook" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/facebook.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1324 + <td><input type="text" style="width:300px;" placeholder="Exemple : fa.book" name="option_social0" id="option_social0" value="<?php echo esc_js(get_option('option_social0')); ?>"/><img alt="facebook" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/facebook.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1138 1325 </tr>
1139 1326 <tr>
1140 1327 <th><label for="option_social1">Twitter (http://www.twitter.com/)</label></th>
1141 - <td><input type="text" style="width:300px;" placeholder="Exemple : tweet_heure" name="option_social1" id="option_social1" value="<?php echo get_option('option_social1'); ?>"/><img alt="twitter" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/twitter.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1328 + <td><input type="text" style="width:300px;" placeholder="Exemple : tweet_heure" name="option_social1" id="option_social1" value="<?php echo esc_js(get_option('option_social1')); ?>"/><img alt="twitter" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/twitter.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1142 1329 </tr>
1143 1330 <tr>
1144 1331 <th><label for="option_social2">Google + (https://plus.google.com/u/0/+)</label></th>
1145 - <td><input type="text" style="width:300px;" placeholder="Exemple : goo.plus" name="option_social2" id="option_social2" value="<?php echo get_option('option_social2'); ?>"/><img alt="google" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/google-plus.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1332 + <td><input type="text" style="width:300px;" placeholder="Exemple : goo.plus" name="option_social2" id="option_social2" value="<?php echo esc_js(get_option('option_social2')); ?>"/><img alt="google" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/google-plus.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1146 1333 </tr>
1147 1334 <tr>
1148 1335 <th><label for="option_social3">LinkedIn (https://www.linkedin.com/in/)</label></th>
1149 - <td><input type="text" style="width:300px;" placeholder="Exemple : link.dine" name="option_social3" id="option_social3" value="<?php echo get_option('option_social3'); ?>"/><img alt="linkedin" src="<?php echo plugin_dir_url( __FILE__ ) ?>img/linkedin.svg" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1336 + <td><input type="text" style="width:300px;" placeholder="Exemple : link.dine" name="option_social3" id="option_social3" value="<?php echo esc_js(get_option('option_social3')); ?>"/><img alt="linkedin" src="<?php echo esc_url(plugin_dir_url( __FILE__ )."img/linkedin.svg"); ?>" style="vertical-align:middle; width:32px; margin-left:2px; margin-right:2px;"/></td>
1150 1337 </tr>
1151 1338 </table>
1152 1339 <?php
1153 1340 submit_button(__('Enregistrer','wp-hal'), 'primary large', 'submit', true); ?>
@@ -1168,9 +1355,9 @@
1168 1355
1169 1356 /**
1170 1357 * Reset les données Hal
1171 1358 */
1172 -function reset_option() {
1359 +function wphal_reset_option() {
1173 1360 delete_option('option_choix');
1174 1361 delete_option('option_type');
1175 1362 delete_option('option_groupe');
1176 1363 delete_option('option_idhal');
@@ -1184,5 +1371,6 @@
1184 1371 delete_option('option_social3');
1185 1372 delete_option('option_cache_timeout');
1186 1373 delete_option('option_erase_cache');
1187 1374 }
1375 +
1188 1376 ?>