c'est le fonctionnement des objets.

En fait le problème vient surtout de ta déclaration des autoriations
pour Ton objet.

si tu autorises des assocations pour des personnes non connectées a ton
objet, alors tu n'as pas besoin de surcharger
autoriser_associerdocuments() de du plugins-dist medias.




Le 05/10/2016 à 16:37, Frederic Lohier a écrit :
>
> Merci, c’était bien un problème d’autorisation !
>
>  
>
> J’ai surchargé dans config/mes_options.php la fonction
> autoriser_associerdocuments_dist qui se trouve dans le fichier
> plugin-dist/medias/medias_autoriser.php :
>
>  
>
> function autoriser_associerdocuments($faire, $type, $id, $qui, $opt) {
>
>                 return true;
>
> }
>
>  
>
> Ça fonctionne comme attendu maintenant.
>
>  
>
> Question sur le fond : quelle est la raison pour laquelle on interdit
> cette association pour les visiteurs non connectés par défaut ?
>
>  
>
> -Frédéric
>
>  
>
> *De :*tofulm [mailto:tof...@gmail.com <mailto:tof...@gmail.com>]
> *Envoyé :* Wednesday, October 05, 2016 2:40 AM
> *À :* Spip zone <spip-zone@rezo.net <mailto:spip-zone@rezo.net>>
> *Objet :* Re: [SPIP Zone] Upload de documents depuis l'interface
> publique - bug de la fonction action_ajouter_un_document_dist ?
>
>  
>
> Je pense que le pb vient que tu l'utilises sans etre connecté.
> Dans ton cas, il doit falloir trouver la bonne autorisation et la
> surcharger pour que l'association fonctionne sans etre connecté
> Regarde dans le fichier medias_autorisations.php la fonction
> autoriser_associerdocuments_dist()
>
>  
>
> Le 05/10/2016 à 00:45, Frederic Lohier a écrit :
>
>     Bonsoir,
>
>      
>
>     Suite à mon message sur la liste SPIP
>     « #FORMULAIRE_JOINDRE_DOCUMENT en accès public » il y a deux
>     semaines
>     (https://www.mail-archive.com/spip@rezo.net/msg69923.html), je me
>     suis penché sur le plugin « Formulaire Upload » pour mettre en
>     place un formulaire d’upload de documents permettant à un visiteur
>     non authentifié d’ajouter un document à un objet (cf. mes message
>     précédents, j’ai tout de même mis en place un certain nombre de
>     contrôles pour éviter que n’importe qui vienne uploader des
>     documents).
>
>      
>
>     Dans un premier temps, j’ai surchargé la fonction
>     autoriser_joindredocumentupload_dist du plugin Formulaire Upload
>     pour supprimer la vérification d’autorisation (« return true ; »
>     tout le temps). Dans un deuxième temps, j’ai modifié le fichier
>     formulaires/upload.php pour enlever la partie qui vérifie qu’un
>     auteur est bien connecté (lignes 20 et 21).
>
>      
>
>     Le formulaire upload s’affiche maintenant correctement, y compris
>     quand je ne suis connecté à aucun compte utilisateur. Par contre,
>     lorsque j’upload un fichier, alors que je spécifie le type d’objet
>     et l’id de l’objet auquel il doit être rattaché, le *document est
>     uploadé dans la médiathèque, mais n’est pas rattaché à l’objet que
>     j’ai spécifié*.
>
>     Si par contre je me connecte, par exemple en tant que visiteur
>     (6Forum), le rattachement à l’objet que je spécifie fonctionne
>     correctement.
>
>      
>
>     Dans le fichier formulaires/upload.php du plugin Formulaire
>     upload, les lignes 101 à 106 appellent la fonction
>     « action_ajouter_documents » du plugin core « Media »
>     
> (http://zone.spip.org/trac/spip-zone/browser/_core_/plugins/medias/action/ajouter_documents.php#L45)
>     pour uploader le ou les fichiers passés en paramètres à l’objet et
>     id_objets aussi spécifiés en paramètres.
>
>      
>
>     Je suis certain que le plugin « Formulaire Upload » envoi les bon
>     paramètres à la fonction « action_ajouter_documents ». J’ai
>     vérifié avec un echo() des variables $objet et $id_objet juste
>     avant qu’elles soient chargées dans la fonction. Je n’ai rien
>     trouvé de pertinent dans les logs (j’ai vérifié error.log de PHP,
>     et spip.log).
>
>      
>
>     D’où ma question : pourquoi la fonction
>     « action_ajouter_documents » ne me rattache pas les fichiers que
>     je lui envoi aux objets que je lui spécifie quand je suis simple
>     visiteur non authentifié ? Est-ce un bug ou une fonctionnalité ?
>     Comment est-ce je peux contourner cette limitation ?
>
>      
>
>     -Frédéric
>
>      
>
>
>
>
>     ----
>
>     spip-zone@rezo.net <mailto:spip-zone@rezo.net> - 
> http://listes.rezo.net/mailman/listinfo/spip-zone
>
>
>
> -- 
> A  bientôt,
> tofulm
>
>
> ----
> spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

-- 
A  bientôt,
Christophe

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Répondre à