Evolution #4445
Permettre de savoir si espace privé depuis tous les JS
0%
Description
En JS, il semble que SPIP ne fournisse rien pour savoir si on est dans l'admin ou pas. Or c'est indispensable au moins pour certains appels d'URL, savoir si on doit avoir ../ avant ou pas (par ex pour les API mais pas que).
Le plugin Sélecteur générique fait ça en ajoutant depuis PHP une globale JS selecteur_test_espace_prive booléenne. Mais c'est pourri que chaque plugin doive faire ça. C'est SPIP qui devrait le fournir, comme test_espace_prive() en PHP quoi.
Du coup soit faut fournir une globale du même style, mais en plus propre SPIP fournit déjà une classe "jquery.spip", du coup ça devrait être un attribut ou une méthode de cette classe.
Par contre pour la place, à priori c'est pas dans ajaxCallback, puisque pour le faire solidement, c'est sûrement mieux que ce soit en utilisant la fonction PHP. Donc il faudrait que SPIP ajoute ça après le chargement de ajaxCallback, et qu'en PHP, ça rajoute un mini morceau de JS pour compléter jquery.spip avec un attribut qui dit où on est.
Après dans n'importe quel JS de plugin, on ferait facilement if ($.spip.test_espace_prive()) { …
Related issues
History
#1
Updated by jluc - about 1 year ago
Comme ici par exemple : https://zone.spip.org/trac/spip-zone/changeset/122653/spip-zone
#4
Updated by RastaPopoulos ♥ 2 months ago
Oui ça aussi ça pourrait être corrigé, et ça faciliterait pour ce point. Mais ça n'enlève rien à ce ticket qui disait "au moins" pour cette utilisation, mais pas que. J'ai déjà croisé d'autres besoins où il me fallait savoir si j'étais en admin ou public et c'est toujours bien d'avoir cette info dispo directement.
Sinon ce ticket est plus généralement lié à #4531 qui serait pas mal plus propre, ya ça ailleurs, Drupal, WP aussi… (tout comme jquery a son objet cloisonnant tout le reste).
#5
Updated by RastaPopoulos ♥ 2 months ago
- Related to Evolution #4531: Encapsuler toutes les variables JS utiles à SPIP (et plugins !) dans une même globale extensible added
#6
Updated by RastaPopoulos ♥ about 2 months ago
b b a écrit :
Paye ta PR :)
Here : https://git.spip.net/spip/spip/pulls/128
Avec un début d'explication de comment compléter pour résoudre vraiment #4531 aussi.
#7
Updated by cedric - about 1 month ago
- Status changed from En cours to Fermé
- Resolution set to fixed
intégrée