diff --git a/ecrire/action/editer_article.php b/ecrire/action/editer_article.php index ed443c7108d4992b7989e9e5cf58b7ad99639829..d2b8e086fd01f9e755514869f05e39149c91ecb0 100644 --- a/ecrire/action/editer_article.php +++ b/ecrire/action/editer_article.php @@ -96,9 +96,9 @@ function article_modifier($id_article, $set = null) { include_spip('inc/modifier'); include_spip('inc/filtres'); $c = collecter_requests( - // white list + // include list objet_info('article', 'champs_editables'), - // black list + // exclude list ['date', 'statut', 'id_parent'], // donnees eventuellement fournies $set diff --git a/ecrire/action/editer_auteur.php b/ecrire/action/editer_auteur.php index 8516201c7fc4855b9ae28753d844ffedc98973fc..8b6983eaad510f92baa79aacf17f8c31b59d2c56 100644 --- a/ecrire/action/editer_auteur.php +++ b/ecrire/action/editer_auteur.php @@ -153,9 +153,9 @@ function auteur_modifier($id_auteur, $set = null, $force_update = false) { include_spip('inc/modifier'); include_spip('inc/filtres'); $c = collecter_requests( - // white list + // include list objet_info('auteur', 'champs_editables'), - // black list + // exclude list $force_update ? [] : ['webmestre', 'pass', 'login'], // donnees eventuellement fournies $set @@ -180,7 +180,7 @@ function auteur_modifier($id_auteur, $set = null, $force_update = false) { if (!$force_update) { // Modification de statut, changement de rubrique ? $c = collecter_requests( - // white list + // include list [ 'statut', 'new_login', @@ -191,7 +191,7 @@ function auteur_modifier($id_auteur, $set = null, $force_update = false) { 'restreintes', 'id_parent' ], - // black list + // exclude list [], // donnees eventuellement fournies $set diff --git a/ecrire/action/editer_objet.php b/ecrire/action/editer_objet.php index ca976222ae745898806274ff25e0b7d4d3f9e522..67db5fc2aabaef0033fd923b3f373c271e25ed0a 100644 --- a/ecrire/action/editer_objet.php +++ b/ecrire/action/editer_objet.php @@ -103,18 +103,18 @@ function objet_modifier($objet, $id, $set = null) { $champ_date = 'date'; } - $white = array_keys($desc['field']); + $include_list = array_keys($desc['field']); // on ne traite pas la cle primaire par defaut, notamment car // sur une creation, id_x vaut 'oui', et serait enregistre en id_x=0 dans la base - $white = array_diff($white, [$desc['key']['PRIMARY KEY']]); + $include_list = array_diff($include_list, [$desc['key']['PRIMARY KEY']]); if (isset($desc['champs_editables']) and is_array($desc['champs_editables'])) { - $white = $desc['champs_editables']; + $include_list = $desc['champs_editables']; } $c = collecter_requests( - // white list - $white, - // black list + // include list + $include_list, + // exclude list [$champ_date, 'statut', 'id_parent', 'id_secteur'], // donnees eventuellement fournies $set @@ -149,7 +149,7 @@ function objet_modifier($objet, $id, $set = null) { // Modification de statut, changement de rubrique ? // FIXME: Ici lorsqu'un $set est passé, la fonction collecter_requests() retourne tout - // le tableau $set hors black liste, mais du coup on a possiblement des champs en trop. + // le tableau $set hors liste d’exclusion, mais du coup on a possiblement des champs en trop. $c = collecter_requests([$champ_date, 'statut', 'id_parent'], [], $set); $err = objet_instituer($objet, $id, $c); diff --git a/ecrire/action/editer_rubrique.php b/ecrire/action/editer_rubrique.php index 69d15aa375c3b6cf3bb342760f83e87fe61ce2d0..b80893fdb819fd61749e424be26331340903e443 100644 --- a/ecrire/action/editer_rubrique.php +++ b/ecrire/action/editer_rubrique.php @@ -136,9 +136,9 @@ function rubrique_modifier($id_rubrique, $set = null) { include_spip('inc/modifier'); $c = collecter_requests( - // white list + // include list objet_info('rubrique', 'champs_editables'), - // black list + // exclude list ['id_parent', 'confirme_deplace'], // donnees eventuellement fournies $set diff --git a/ecrire/inc/filtres_selecteur_generique.php b/ecrire/inc/filtres_selecteur_generique.php index 6679b9236b8a177554472d308cb4c54ed00febf1..ef5b0d321f8dda891dd44ea9d707f83a704f70bb 100644 --- a/ecrire/inc/filtres_selecteur_generique.php +++ b/ecrire/inc/filtres_selecteur_generique.php @@ -18,16 +18,16 @@ if (!defined('_ECRIRE_INC_VERSION')) { * * @uses find_all_in_path() * - * @param array $whitelist - * Liste blanche décrivant les objets à lister - * @param array $blacklist - * Liste noire décrivant les objets à ne pas lister + * @param array $includelist + * Liste d’inclusion décrivant les objets à lister + * @param array $excludelist + * Liste d’exclusion décrivant les objets à ne pas lister * @return array * Retourne un tableau de deux entrées listant les objets à lister et les objets sélectionnables * - selectionner : tableau des objets que l'on pourra sélectionner (avec un +) * - afficher : tableau des objets à afficher (mais pas forcément sélectionnables) */ -function selecteur_lister_objets($whitelist = [], $blacklist = []) { +function selecteur_lister_objets($includelist = [], $excludelist = []) { static $liste_selecteurs, $liste_parents; if (!$liste_selecteurs) { @@ -39,15 +39,15 @@ function selecteur_lister_objets($whitelist = [], $blacklist = []) { } // S'il y a une whitelist on ne garde que ce qui est dedans - if (!empty($whitelist)) { - $whitelist = array_map('table_objet', $whitelist); - $objets_selectionner = array_intersect($objets_selectionner, $whitelist); + if (!empty($includelist)) { + $includelist = array_map('table_objet', $includelist); + $objets_selectionner = array_intersect($objets_selectionner, $includelist); } - // On supprime ce qui est dans la blacklist - $blacklist = array_map('table_objet', $blacklist); + // On supprime ce qui est dans la liste d’exclusion + $excludelist = array_map('table_objet', $excludelist); // On enlève toujours la racine - $blacklist[] = 'racine'; - $objets_selectionner = array_diff($objets_selectionner, $blacklist); + $excludelist[] = 'racine'; + $objets_selectionner = array_diff($objets_selectionner, $excludelist); // Ensuite on cherche ce qu'on doit afficher : au moins ceux qu'on peut sélectionner $objets_afficher = $objets_selectionner; diff --git a/ecrire/inc/modifier.php b/ecrire/inc/modifier.php index 6319edd96b2f5d8054c340aad7d303d772ad23c2..342c632546bfef2a14fb602e2308ba39fc4c8359 100644 --- a/ecrire/inc/modifier.php +++ b/ecrire/inc/modifier.php @@ -26,23 +26,23 @@ if (!defined('_ECRIRE_INC_VERSION')) { * Fonction générique pour la collecte des posts * dans action/editer_xxx * - * @param array $white_list + * @param array $include_list * Les champs à récupérer - * @param array $black_list + * @param array $exclude_list * Les champs à ignorer * @param array|null $set * array : Tableau des champs postés - * null : Les champs sont obtenus par des _request() sur les noms de la white liste + * null : Les champs sont obtenus par des _request() sur les noms de la liste d’inclusion * @param bool $tous * true : Recupère tous les champs de white_list meme ceux n'ayant pas ete postés * @return array * Tableau des champs et valeurs collectées */ -function collecter_requests($white_list, $black_list = [], $set = null, $tous = false) { +function collecter_requests($include_list, $exclude_list = [], $set = null, $tous = false) { $c = $set; if (!$c) { $c = []; - foreach ($white_list as $champ) { + foreach ($include_list as $champ) { // on ne collecte que les champs reellement envoyes par defaut. // le cas d'un envoi de valeur NULL peut du coup poser probleme. $val = _request($champ); @@ -56,7 +56,7 @@ function collecter_requests($white_list, $black_list = [], $set = null, $tous = $c['lang'] = $l; } } - foreach ($black_list as $champ) { + foreach ($exclude_list as $champ) { unset($c[$champ]); } diff --git a/ecrire/public/sandbox.php b/ecrire/public/sandbox.php index 6f7657c0f194c3a7a11f64cd385111fc2fcb6860..b1446f2d54e628adf92b1b9fd7533d85f3e7520b 100644 --- a/ecrire/public/sandbox.php +++ b/ecrire/public/sandbox.php @@ -15,7 +15,7 @@ * * Une surcharge de ce fichier pourrait permettre : * - * - de limiter l'utilisation des filtres à l'aide d'une liste blanche ou liste noire, + * - de limiter l'utilisation des filtres à l'aide d'une liste d’inclusion ou d’exclusion, * - de rendre inactif le PHP écrit dans les squelettes * - de refuser l'inclusion de fichier PHP dans les squelettes * diff --git a/prive/formulaires/selecteur/generique.html b/prive/formulaires/selecteur/generique.html index d1d52f3d9d872d9f33aa212d9eaa126178c0963c..7c66fe4d723f51f658adfdfc5abf67fb8de6b8e4 100644 --- a/prive/formulaires/selecteur/generique.html +++ b/prive/formulaires/selecteur/generique.html @@ -1,4 +1,9 @@ -#SET{img_unpick, #CHEMIN_IMAGE{supprimer-12.png}} +[(#REM) + + @deprecated 4.1 ENV 'whitelist'. Use 'includelist' instead + @deprecated 4.1 ENV 'blacklist'. Use 'excludelist' instead + +]#SET{img_unpick, #CHEMIN_IMAGE{supprimer-12.png}} [(#SET{label_supprimer, <:lien_supprimer:>})] <script type='text/javascript'>var identifiant_selecteur = 'selecteur_#ENV{name}'; var img_unpick='#GET{img_unpick}'; var selecteur_label_supprimer='#GET{label_supprimer}'; jQuery.getScript('[(#CHEMIN{formulaires/selecteur/jquery.picker.js}|timestamp)]'); @@ -18,7 +23,7 @@ afficher la selection dans un ul class item_picked ] [(#REM) On commence par chercher la liste des objets disposant d'un sélecteur ] -[(#SET{objets, [(#ENV{whitelist,#ARRAY}|selecteur_lister_objets{#ENV{blacklist,#ARRAY}})]})] +[(#SET{objets, [(#ENV{includelist,#ENV{whitelist,#ARRAY}}|selecteur_lister_objets{#ENV{excludelist,#ENV{blacklist,#ARRAY}}})]})] [(#REM) S'il n'y a qu'un type d'objet affiché et sélectionnable, on ajoute une classe (on fait -1 car il y a toujours la racine dans "afficher" ] <div id="selecteur_#ENV{name}" class="selecteur[ (#GET{objets/afficher}|count|moins{1}|=={1}|et{#GET{objets/selectionner}|count|=={1}})selecteur_type_unique]">