Champs Extras &mdash; API et créations - commentaires Champs Extras 3 - API et créations 2022-05-11T13:28:14Z https://files.spip.net/Champs-Extras-API-et-creations#comment510901 2022-05-11T13:28:14Z <p>Un point qu'il faudrait souligner dans la doc pour les distrait⋅e⋅s je pense : au sein d'une même mise à jour, quand on veut à la fois ajouter des champs extras mais aussi faire d'autres trucs, il faut faire attention à pas écraser <code class="spip_code spip_code_inline" dir="ltr">$maj</code>.</p> <p>Exemple, ça c'est ok :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code>// Maj 1.0.2 cextras_api_upgrade(grainepc_declarer_champs_extras(), $maj['1.2.0']); $maj['1.2.0'][] = array('sql_alter',"TABLE spip_auteurs DROP type");</code></pre></div> <p>Mais par contre là c'est le drame :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code>// Maj 1.0.2 cextras_api_upgrade(grainepc_declarer_champs_extras(), $maj['1.2.0']); $maj['1.2.0'] = array(array('sql_alter',"TABLE spip_auteurs DROP type"));</code></pre></div> <p>On a bien un exemple dans un des extrait de code, mais c'est un peu noyé parmi le reste, il faudrait mieux expliciter amha.</p> Champs Extras — API et créations 2021-04-03T09:25:16Z https://files.spip.net/Champs-Extras-API-et-creations#comment508052 2021-04-03T09:25:16Z <p>si tu l'a fait en PHP : oui tu modifie juste ta declaration. Si tu l'a fait via l'interface graphique : oui il y a dans un onglet une option pour modifier le champ.</p> Champs Extras — API et créations 2021-04-03T08:39:57Z https://files.spip.net/Champs-Extras-API-et-creations#comment508051 2021-04-03T08:39:57Z <p>si ce n'est pas possible ce n'est pas grave ... je rajouterai un champ</p> Champs Extras — API et créations 2021-04-03T08:08:50Z https://files.spip.net/Champs-Extras-API-et-creations#comment508050 2021-04-03T08:08:50Z <p>bonjour,<br class="autobr"> j'ai rajouté des champs extra a la table selections de selections_editoriales. Mais je rencontre un problème. <br class="autobr"> Dans le plugin, le champ CSS est en input, ce qui est bien sur générique, mais j'ai besoin de changer cette saisie en checkbox ou liste ... est-ce possible pour un champ EXISTANT<small class="fine d-inline"> </small>?<br class="autobr"> merci</p> Champs Extras 3 - API et créations 2021-03-12T08:34:49Z https://files.spip.net/Champs-Extras-API-et-creations#comment507803 2021-03-12T08:34:49Z <p>Problème résolu<small class="fine d-inline"> </small>! Merci pour la rapidité et l'efficacité<small class="fine d-inline"> </small>!</p> Champs Extras 3 - API et créations 2021-03-11T22:42:46Z https://files.spip.net/Champs-Extras-API-et-creations#comment507802 2021-03-11T22:42:46Z <p>Après discussion avec Marcimat, le bug se situait plutôt dans SPIP. C'est corrigé via ce commit <a href="https://git.spip.net/spip/spip/commit/bdc53dcc" class="spip_url spip_out auto" rel="nofollow external">https://git.spip.net/spip/spip/commit/bdc53dcc</a>.</p> <p>Tu peux je pense sans autre l'appliquer à ta propre installe de spip 3.2, puisqu'il se inclus dans la prochaine release.</p> Champs Extras 3 - API et créations 2021-03-11T20:54:56Z https://files.spip.net/Champs-Extras-API-et-creations#comment507801 2021-03-11T20:54:56Z <p>je viens de confirmer que mon code avait bien une bonne raison d'existe : #INFO_XXX. Mais du coup oui ca plante hierarchie si on appel directement la balise. Arg. On essaioe de comprendre avec Marcimat.</p> Champs Extras 3 - API et créations 2021-03-11T20:48:44Z https://files.spip.net/Champs-Extras-API-et-creations#comment507800 2021-03-11T20:48:44Z <p>En gros il teste : <code class="spip_code spip_code_inline" dir="ltr">defined($traitement) ? constant($traitement) : ...</code></p> Champs Extras 3 - API et créations 2021-03-11T20:13:55Z https://files.spip.net/Champs-Extras-API-et-creations#comment507799 2021-03-11T20:13:55Z <p>Hum, oui. Alors c'est moi qui avais mis ce code. Mais il y avait une bonne raison tout de même. Donc il faut qu'on voit si depuis, les commits fait par marcimat on résolu autrement le problème que résolvait le commit problématique.</p> Champs Extras 3 - API et créations 2021-03-11T19:58:47Z https://files.spip.net/Champs-Extras-API-et-creations#comment507798 2021-03-11T19:58:47Z <p>Bonjour,</p> <p>En passant de la version 3.12.4 à 3.13.2 du plugin Champ extra core, je découvre que l'<strong>option Traitements</strong> de l'un de mes champs extra n'est plus appliquée quand on est dans une boucle <strong>HIERARCHIE</strong> (champ TITRE_COURT sur une rubrique avec 'traitements' => '_TRAITEMENT_TYPO_SANS_NUMERO',)<small class="fine d-inline"> </small>!</p> <p>Le problème est réglé si je retire la fonction <strong>table_objet()</strong> à la ligne 152 $interfaces['table_des_traitements'][$balise][table_objet($table)] = $traitement<small class="fine d-inline"> </small>; dans le fichier base/cextras.php du plugin (ajoutée par ce commit <a href="https://git.spip.net/spip-contrib-extensions/champs_extras_core/commit/22907b66645db1af1c9f2ec8fd0ef90dde7e9df4" class="spip_url spip_out auto" rel="nofollow external">https://git.spip.net/spip-contrib-extensions/champs_extras_core/commit/22907b66645db1af1c9f2ec8fd0ef90dde7e9df4</a>).</p> <p>Cette fonction table_objet() ne devrait-elle pas être retirée comme indiqué dans une note à la ligne 24 du fichier<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2020-12-18T13:01:48Z https://files.spip.net/Champs-Extras-API-et-creations#comment507115 2020-12-18T13:01:48Z <blockquote class="spip"> <p>«<small class="fine d-inline"> </small>traitements<small class="fine d-inline"> </small>», traitements typographiques à appliquer, soit une constante prédéfinie, soit un chaîne décrivant les fonctions à appliquer. Lire la documentation sur Programmer avec SPIP.</p> </blockquote> <p>Je ne sais pas quelle serait la meilleure formulation, mais on me dit dans l'oreillette que c'est pas vraiment ça : dans cette clé on ne doit donc pas mettre <strong>une constante</strong> mais <strong>le nom d'une constante</strong> dans une chaine, ce qui n'est pas du tout la même chose. :)</p> <p>Mais du coup si dans les deux cas on met une chaine, comment ça sait que dans tel cas faut chercher la valeur du nom de constante demandé ou si c'est une suite de fonctions avec %s<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2020-05-06T11:05:37Z https://files.spip.net/Champs-Extras-API-et-creations#comment505076 2020-05-06T11:05:37Z <p>C'est bon, ça marche<small class="fine d-inline"> </small>!</p> <p>Merci</p> Champs Extras 3 - API et créations 2020-05-06T10:14:52Z https://files.spip.net/Champs-Extras-API-et-creations#comment505072 2020-05-06T10:14:52Z <p>Peux tu reessayer après avoir executé la tache « svp_actualiser_depots » dans « Maintenance->liste des travaux »<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2020-05-06T07:08:03Z https://files.spip.net/Champs-Extras-API-et-creations#comment505070 2020-05-06T07:08:03Z <p>visiblement un bug dans le debardeur. Malheureusement la plateforme de dev est en panne en ce moment.</p> <p>Je te tiens au courant dès qu'on y voit plus clair.</p> Champs Extras 3 - API et créations 2020-05-06T06:55:29Z https://files.spip.net/Champs-Extras-API-et-creations#comment505068 2020-05-06T06:55:29Z <p>Tentative de mise-à-jour ce matin sur plusieurs sites à chaque fois les même messages</p> <p><i><br class="autobr"> <strong>La mise à jour du plugin «<small class="fine d-inline"> </small>Champs Extras<small class="fine d-inline"> </small>» (de la version : 3.12.4 à 3.12.6) ne s'est pas correctement déroulée</strong></i></p> <p>Chargement impossible de la source <a href="https://files.spip.org/spip-zone/spip-contrib-extensions/champs_extras_core-08395-3.12.6.%7Bzip" class="spip_url spip_out auto" rel="nofollow external">https://files.spip.org/spip-zone/spip-contrib-extensions/champs_extras_core-08395-3.12.6.{zip</a> </p> <p>L'url est en objet non trouvé</p> Champs Extras 3 - API et créations 2019-08-12T15:29:45Z https://files.spip.net/Champs-Extras-API-et-creations#comment501940 2019-08-12T15:29:45Z <p>Impec, merci.<br class="manualbr">Note que le no de version du lien est toujours 1.9.4 dans contrib.spip.net.</p> Champs Extras 3 - API et créations 2019-08-12T11:18:06Z https://files.spip.net/Champs-Extras-API-et-creations#comment501938 2019-08-12T11:18:06Z <p>Merci, c'est corrigé dans la 1.9.5<small class="fine d-inline"> </small>!</p> Champs Extras 3 - API et créations 2019-08-11T09:53:59Z https://files.spip.net/Champs-Extras-API-et-creations#comment501928 2019-08-11T09:53:59Z <p>Je viens de relire mon premier message et ce n'est pas vraiment clair.<br class="manualbr">Je voulais dire que si je met 11/09/2019 18:00:00, le système enregistre dans la DB 2019-09-11 00:00:00, donc la date est bien enregistrée mais pas l'heure. De même, je peux changer la date et ça s'enregistre correctement dans la DB, mais l'heure reste 00.</p> Champs Extras 3 - API et créations 2019-08-11T09:45:52Z https://files.spip.net/Champs-Extras-API-et-creations#comment501927 2019-08-11T09:45:52Z <p>Ce n'est pas une question d'enregistrement. Avec 1.9.4, 18:00:00 à l'affichage devient 00:00:00 quand j'enregistre, mais avec 1.6.5 mon 18:00:00 est bien enregistré dans la base en 18:00:00 dans ma zone datetime.<br class="manualbr">Dans la partie édition, avant de cliquer sur « enregistrer », j'ai bien une heure visible.<br class="manualbr">J'ai l'impression que vérifier force 00 dans heure, est-ce que ça ne pourrait pas venir de valeur_normalisee<small class="fine d-inline"> </small>? Dans vérifier on a un forçage $options['heure'] = '00:00'<small class="fine d-inline"> </small>;. Je ne vois pas pourquoi cette ligne serait appelée mais il est possible de changer un 18 en 00 dans vérifier.</p> Champs Extras 3 - API et créations 2019-08-08T21:57:42Z https://files.spip.net/Champs-Extras-API-et-creations#comment501918 2019-08-08T21:57:42Z <p>Hello, c'est bien enregistré ou c'est pas bien enregistré<small class="fine d-inline"> </small>? Est-ce que dans la base de données, dans le champ SQL, ya bien l'heure<small class="fine d-inline"> </small>? Car vérifier ne touche pas à l'affichage, tant qu'on n'a pas validé, du coup si c'est correct dans la base, au premier affichage ça devrait le mettre.</p> Champs Extras 3 - API et créations 2019-08-08T18:14:23Z https://files.spip.net/Champs-Extras-API-et-creations#comment501917 2019-08-08T18:14:23Z <p>Après désactivation des nouveaux plugins et réactivation des anciens, l'erreur se trouve dans verifier 1.9.4 (en comparaison avec verifier 1.6.5 qui fonctionne correctement).</p> Champs Extras 3 - API et créations 2019-08-08T12:10:03Z https://files.spip.net/Champs-Extras-API-et-creations#comment501913 2019-08-08T12:10:03Z <p>Bonjour,<br class="manualbr">suite à un upgrade 3.1.6 => 3.2.4, j'ai remis à jour les plugins. Et je viens de constater que la saisie de l'heure dans un champ datetime n'était plus effectuée correctement dans l'espace privé.<br class="manualbr">La date est bien enregistrée mais l'heure reste toujours 00:00:00 après l'enregistrement de la modification.<br class="manualbr">Plugins : 3.5.8 + champ extras 3.12.1, saisies 3.23.3, verifier 1.9.4, yaml 1.5.3 ou 2.0.10, bonux 3.4.6, palette 4.0.7<br class="autobr"> _</p> Champs Extras 3 - API et créations 2019-07-09T10:12:11Z https://files.spip.net/Champs-Extras-API-et-creations#comment501678 2019-07-09T10:12:11Z <p>Bonjour,<br class="autobr"> Depuis la dernière mise à jour du plugin (v3.12.0), les champs masqués par l'affichage conditionnel (en fonction de la valeur d'autres champs extras) posent problème (voir capture en pièce jointe). Dans mon cas, certains champs ne doivent être remplis uniquement en fonction de la valeur d'un autre champ. Par exemple : <i> <strong>@affichage@ IN « Focus,Flash,Trajectoire,Slider,WebTV »</strong> </i><br class="autobr"> J'ai pourtant bien une valeur par défaut et jusqu'alors ça fonctionnait très bien. Après recherches, il s'avère que ce sont les lignes 279 et 280 du fichier cextras_pipelines.php qui posent problème.</p> Champs Extras 3 - API et créations 2019-06-19T10:15:00Z https://files.spip.net/Champs-Extras-API-et-creations#comment501532 2019-06-19T10:15:00Z <p>Bonjour,<br class="autobr"> J'ai mis en place des champs extras dans un plugin. Ces champs sont bien prise en compte dans l'objet associé, mais par contre ils n'apparaissent pas dans l'interface des champs extras, hors je voudrais que le webmaster puisse ajouter/modifier ces champs extras.<br class="autobr"> qu'est ce que j'ai loupé dans la création<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2018-10-13T23:18:23Z https://files.spip.net/Champs-Extras-API-et-creations#comment498487 2018-10-13T23:18:23Z <p>J'y reviens..</p> <p>Les modèles du plugin réservation événements ont changé et tous les champs extras sont maintenant récupérés par :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code><BOUCLE_champs_extras2(DATA){source tableau,#GET{valeurs_extras}}> #SET{valeurs_extras,#ARRAY} [(#VALEUR)] </BOUCLE_champs_extras2></code></pre></div> <p>donc je crois que si je veux appliquer une restriction sur un seul champ il faut « exploser » la boucle DATA</p> Champs Extras 3 - API et créations 2018-08-28T08:20:47Z https://files.spip.net/Champs-Extras-API-et-creations#comment498009 2018-08-28T08:20:47Z <p>Bonjour</p> <p>Très utile et bon plug-in<small class="fine d-inline"> </small>! Avec l'aide de ce plugin, j'ai créé des champs externes supplémentaires dans l'en-tête des produits.<br class="autobr"> Dans les champs supplémentaires, les données saisies sont visibles dans la partie administrative, mais le site s'affiche sous forme de texte non formaté. En outre, le plug-in Albums 3 dans la partie administrative est visible, mais le site n'est pas visible. Dis-moi, s'il te plaît, quoi et où le réparer. Merci<br class="autobr"> Je m'excuse pour ma mauvaise langue.</p> Champs Extras 3 - API et créations 2018-06-15T09:09:25Z https://files.spip.net/Champs-Extras-API-et-creations#comment497390 2018-06-15T09:09:25Z <p>Ah oui, mais il maque les paramètres de la fonction<small class="fine d-inline"> </small>!<br class="autobr"> Je vais aussi les ajouter dans l'exemple<small class="fine d-inline"> </small>!</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code>// seuls les redacteurs et admins peuvent voir function autoriser_auteur_voirextra_inscrit_tel($faire, $type, $id, $qui, $opt) { return in_array($qui['statut'], array('0minirezo', '1comite')); }</code></pre></div> <p>Cela étant dit… lorsque tu dis « sur le site public »… ces autorisations ne sont pas concernées.<br class="autobr"> Elles ne sont testées que sur l'espace privé par le plugin champs extras.</p> <p>Pour ajouter des autorisations dans l'espace public (dans tes squelettes donc), tu peux soit appeler l'autorisation toi-même, soit définir ce que tu souhaites :</p> <div class="precode"><pre class="spip_code spip_code_block language-spip" dir="ltr" style="text-align:left;" data-language="spip"><code>[(#AUTORISER{voirextra, auteur, '', '', #ARRAY{champ,inscrit_tel}}|oui) #INSCRIT_TEL ] ou [(#AUTORISER{ecrire}|oui) ... je peux accéder à l'espace privé ... ] ou faire ta propre autorisation [(#AUTORISER{voir, _champs_admins}|oui) ... avec la fonction autoriser_champsadmins_voir_dist($faire, $type, $id, $qui, $opt)... ]</code></pre></div> Champs Extras 3 - API et créations 2018-06-14T13:59:37Z https://files.spip.net/Champs-Extras-API-et-creations#comment497380 2018-06-14T13:59:37Z <p>Je voudrais empêcher l'affichage de certains champs extras auteur sur le site public.</p> <p>J'ai donc coché dans l'interface champ extra :</p> <div class="precode"><pre class="spip_code spip_code_block language-spip" dir="ltr" style="text-align:left;" data-language="spip"><code> Restriction Technique Voir la saisie Par auteur Tout le monde peut Seulement les administrateurs (même restreints) </code></pre></div> <p>mais cela ne restreint rien.</p> <p>donc dans mes_options.html j'ai ajouté comme dit dans cet article</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code><?php // seuls les redacteurs et admins peuvent voir function autoriser_auteur_voirextra_inscrit_tel() { return in_array($qui['statut'], array('0minirezo', '1comite')); } ?></code></pre></div> <p>idem : tout s'affiche</p> <p>est-ce que cela devrait fonctionner ou bien il faut ajouter d'autres fichiers d'autorisation quelque part<small class="fine d-inline"> </small>?</p> <p>Merci</p> Champs Extras 3 - API et créations 2018-06-14T13:26:15Z https://files.spip.net/Champs-Extras-API-et-creations#comment497376 2018-06-14T13:26:15Z <p>Je voudrais restreindre l'affichage de certains champs extra auteur sur le site public.</p> <p>Dans l'interface champ extras je les ai mis comme</p> <pre> Voir la saisie Par auteur Tout le monde peut Seulement les administrateurs (même restreints)</pre> <p>mais cela ne change rien à l'affichage (tout le monde voit tout)</p> <p>Donc en farfouillant je tombe sur cette page pour l'API.</p> <p>J'ai mis dans mes_options.html comme dans l'exemple ici <a href="https://contrib.spip.net/local/cache-code/a8d12f430d8b77f0ee35717f5ca1dc6c.txt" class="spip_url spip_out auto" rel="nofollow external">https://contrib.spip.net/local/cache-code/a8d12f430d8b77f0ee35717f5ca1dc6c.txt</a> :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code><?php // seuls les redacteurs et admins peuvent voir function autoriser_auteur_voirextra_inscrit_tel() { return in_array($qui['statut'], array('0minirezo', '1comite')); } ?></code></pre></div> <p>idem : aucune restriction n'est appliquée.</p> <p>Est-ce que cela devrait suffire ou bien il faut aussi créer d'autres fichiers d'autorisations<small class="fine d-inline"> </small>?</p> <p>Merci</p> Champs Extras 3 - API et créations 2017-10-26T16:34:48Z https://files.spip.net/Champs-Extras-API-et-creations#comment494081 2017-10-26T16:34:48Z <p>Bonjour</p> <p>J'ai un problème avec un bouton radio…il reprend sa valeur par défaut à chaque fois que j'ouvre un article pour l'editer…et je dois recliquer pour mettre ma valeur a chaque fois. <br>— est ce que j'ai loupé quelque chose dans la config ou est ce que ce serait un bug avec la 3.2<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2017-10-06T10:47:49Z https://files.spip.net/Champs-Extras-API-et-creations#comment493648 2017-10-06T10:47:49Z <p>Simplement :</p> <div class="precode"><pre class="spip_code spip_code_block language-spip" dir="ltr" style="text-align:left;" data-language="spip"><code><BOUCLE_a(ARTICLES) {id_article IN #SELECTEUR_ARTICLE_1|picker_selected{article}}> #LOGO_ARTICLE #TITRE </BOUCLE_a></code></pre></div> Champs Extras 3 - API et créations 2017-10-05T17:24:55Z https://files.spip.net/Champs-Extras-API-et-creations#comment493641 2017-10-05T17:24:55Z <p>Bonjour</p> <p>J'ajoute un champ « Sélecteur d'article » et après dans mon squelettes je met quoi pour récupérer les titres, logo, url de mes articles sélectionnés.<small class="fine d-inline"> </small>?<br class="autobr"> J'ai trouvé ce bout de code a force de chercher sur le web, mais ça m'affiche qu'un seul résultat.</p> <p>Merci de votre aide.</p> <div class="precode"><pre class="spip_code spip_code_block language-spip" dir="ltr" style="text-align:left;" data-language="spip"><code><BOUCLE_a(ARTICLES){id_article=#SELECTEUR_ARTICLE_1|picker_selected{article}|table_valeur{0}}> #LOGO_ARTICLE #TITRE </BOUCLE_a></code></pre></div> Champs Extras 3 - API et créations 2017-09-12T20:02:14Z https://files.spip.net/Champs-Extras-API-et-creations#comment493371 2017-09-12T20:02:14Z <p>Je poste ici 2 observations qui feront peut-être gagner du temps à certains. <br>- un champ de type <i>date</i> gère la définition SQL <i>datetime</i> <code class="spip_code spip_code_inline" dir="ltr">0000-00-00 00:00:00</code>, mais pas <i>date</i> <code class="spip_code spip_code_inline" dir="ltr">0000-00-00</code>. (Pas très grave, mais mieux vaut le savoir) <br>- un champ de type <i>date</i> doit <strong>obligatoirement</strong> comprendre la partie normalisation (tableau : vérifier), sinon enregistrement impossible.</p> <p>Champs extras 3.11.4</p> <p>Et toujours merci à Marcimat<small class="fine d-inline"> </small>!</p> Champs Extras 3 - API et créations 2017-08-10T10:06:35Z https://files.spip.net/Champs-Extras-API-et-creations#comment493067 2017-08-10T10:06:35Z <p>Bonjour,</p> <p>J'ai un Champs Extras constitué d'un bloc de texte supplémentaire dans Articles. Ma boucle (ARTICLES) fait paraitre ce bloc de texte dans les articles de toutes les rubriques. Or, je voudrais limiter la parution à certaines rubriques (ou le supprimer dans les autres, ce qui revient au même). Les techniques traditionnelles utilisées dans les boucles pour sélectionner des rubriques ou en exclure sont inopérantes.</p> <p>Je me tourne donc vers les solutions proposées ici et je mets un fichier mes_fonctions dans le squelette… et ça ne marche pas non plus<small class="fine d-inline"> </small>!</p> <p>Voici le code :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code><?php include_spip('inc/cextras_autoriser'); // restreindre le champ 'bloc_extra_site' des articles, sur la rubrique 5 restreindre_extras('article', 'bloc_extra_site', 5); ?></code></pre></div> <p>Merci de me donner une piste<br class="autobr"> Ramina</p> Champs Extras 3 - API et créations 2016-10-24T16:11:40Z https://files.spip.net/Champs-Extras-API-et-creations#comment489526 2016-10-24T16:11:40Z <p>Bonjour, <br class="autobr"> J'utilise cextra, l'interface graphique et inscriptions3.<br class="autobr"> Lorsqu'un utilisateur s'inscrit, les champs sont bien récupérés sauf les « extras ». Cependant, en modification de fiche (utilisateur ou admin), tout se passe bien.<br class="autobr"> Bien entendu, rien dans les logs d'erreur<br class="autobr"> Y a-t-il quelque chose que j'ai loupé<small class="fine d-inline"> </small>?<br class="autobr"> Merci pour votre aide</p> Champs Extras 3 - API et créations 2016-08-24T06:36:58Z https://files.spip.net/Champs-Extras-API-et-creations#comment488643 2016-08-24T06:36:58Z <p>bonjour - merci : votre plugin était mis à jour depuis fort longtemps avant la bascule - je n'avais pas vidé le cache avant la bascule en 3.1.1. <br class="autobr"> J'ai rechargé la page (bouton du navigateur) et ai obtenu une page de spip normale en 3.1.1. Il n'y a à priori pas de conséquence ni de blocage bien que je n'aie pas utilisé les champs extra depuis.</p> Champs Extras 3 - API et créations 2016-08-23T06:10:53Z https://files.spip.net/Champs-Extras-API-et-creations#comment488628 2016-08-23T06:10:53Z <p>Bonjour,</p> <p>Logiquement non.<br class="autobr"> Cache vider de spip pour corriger le problème<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2016-08-22T11:26:37Z https://files.spip.net/Champs-Extras-API-et-creations#comment488619 2016-08-22T11:26:37Z <p>Bonjour, merci de votre réponse.<br class="autobr"> ce plugin oui, MAIS un autre ne l'était PAS (un thème non disponible en 3.1) et a disparu du coup : est-ce cela<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2016-08-22T11:06:28Z https://files.spip.net/Champs-Extras-API-et-creations#comment488618 2016-08-22T11:06:28Z <p>Bonjour,</p> <p>les plugins était à jour avant l'upgrade de spip<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2016-08-22T06:18:06Z https://files.spip.net/Champs-Extras-API-et-creations#comment488612 2016-08-22T06:18:06Z <p>bonjour,<br class="autobr"> une remarque / erreur à l'upgrade de 3.0.19 à 3.1.1 : j'ai un message :</p> <p>« Fatal error : Call to undefined function cextras_declarer_tables_objets_sql() in /home/yanfoom/www/plugins/auto/cextras/v3.8.0/cextras_options.php on line 39 »</p> <p>j'ai fait recharger la page et ai une page de spip normale en 3.1.1.<br class="autobr"> Je n'ai pas testé les fonctionnalités pour valider son fonctionnement.<br class="autobr"> Peut-être une correction<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2015-12-03T07:22:48Z https://files.spip.net/Champs-Extras-API-et-creations#comment484789 2015-12-03T07:22:48Z <p>Ok. Merci pour ces éclaircissements.</p> Champs Extras 3 - API et créations 2015-12-02T16:40:50Z https://files.spip.net/Champs-Extras-API-et-creations#comment484785 2015-12-02T16:40:50Z <p>En l'état : non. <br class="autobr"> Il faudrait recharger le formulaire à chaque changement de rubrique dans le sélecteur, et on risquerait de perdre des données déjà saisies.</p> <p>C'est un « problème » connu cependant.</p> <p>Pour info, les boutons d'actions rapide ont la rubrique indiquée si on se trouve, justement dans une rubrique. Le problème est donc plus visible lorsqu'on clique dessus depuis le sommaire par exemple.</p> Champs Extras 3 - API et créations 2015-12-02T08:18:28Z https://files.spip.net/Champs-Extras-API-et-creations#comment484774 2015-12-02T08:18:28Z <p>J'ai un petit soucis avec la restriction par rubrique. En elle même elle marche bien. Mais il y a un effet indésirable avec les boutons du menu de raccourcis (Créer un nouvel article, etc.).</p> <p> Lorsque le rédacteur est en page d'accueil du Back office et qu'il clique sur le raccourci rapide « Écrire un nouvel article », ne sachant pas alors dans quelle rubrique il va le créer, aucun des champs extras n'apparait dans formulaire d'édition article.</p> <p>Une solution serait de faire apparaître ces champs extra ad-hoc au moment ou le rédacteur à choisi sa rubrique. Est-ce possible<small class="fine d-inline"> </small>?</p> <p>P<br class="autobr"> ps : cette solution m'a été suggérée par deux rédacteurs</p> Champs Extras 3 - API et créations 2015-06-19T16:09:55Z https://files.spip.net/Champs-Extras-API-et-creations#comment482659 2015-06-19T16:09:55Z <p>Ah mais camille & kent1 avaient mis déjà un exemple de fieldset dans l'article. Je n'avais même pas vu.</p> Champs Extras 3 - API et créations 2015-06-19T16:08:16Z https://files.spip.net/Champs-Extras-API-et-creations#comment482658 2015-06-19T16:08:16Z <p>Je crois qu'il y a en manque de clarté.</p> <p>L'API crée et gère les champs extras. C'est à dire que si l'on passe par l'API PHP, on ne passe pas par l'interface (ça n'a pas de sens).</p> <p>L'interface en fait gère une liste de champs qu'elle présente justement à l'API. Les 2 ne sont pas compatibles.</p> <p>Dit autrement : si un champ est déclaré à l'API par un plugin (actif) : les champs sont créés s'ils n'existaient pas, et gérés (on les voit dans les formulaires). L'interface n'a rien à faire (le plugin d'interface peut ne pas être actif même.</p> <p>Si l'on active le plugin d'interface, les champs gérés par l'API (des plugins actifs) ne sont pas présentés comme champs qui peuvent être «<small class="fine d-inline"> </small>gérés<small class="fine d-inline"> </small>»… vu qu'ils le sont déjà.</p> <p>Il y a cependant le cas où un plugin qui gérait des champs (via champs extras ou pas) n'est plus actif (et n'a pas supprimé les champs par une désinstallation). À ce moment là l'interface voit que ces champs sont présents mais qu'aucun plugin ne semble s'en servir (aucune déclaration) : l'interface propose de les gérer. Mais l'interface ne connait pas grand chose du champ à ce moment là<small class="fine d-inline"> </small>; à peine sa déclaration SQL. C'est pour cela que dans la plupart des cas, gérer ce type de champ crée par défaut une saisie 'textarea' (sauf quelques exceptions).</p> <p>Donc, sur les points présentés :</p> <ul class="spip"><li> 1. Normalement oui. Et à quel moment<small class="fine d-inline"> </small>; eh bien ça dépend de l'option en question. Et non elles ne sont pas stockées ailleurs que dans la déclaration d'API. Le plugin interfaces lui par contre stocke ses données dans la table spip_meta, par exemple dans "iextras_spip_articles" ou quelque chose comme ça.</li><li> 2. Je pense que oui. Et oui, seules des champs ayant une déclaration SQL sont créés. Normalement tous ces champs (même ceux déclarés dans des saisies/fieldsets) doivent se créer.</li><li> 3. Hum. Il faudrait préciser. En fait tu pourrais faire écrire des données qui conviennent dans une meta du plugin d'interface. Mais cela veut dire que du coup, ces champs pourraient être modifiés / supprimés depuis l'interface. Ce n'est souvent pas ce qui est souhaité pour un plugin, où l'on veut une liste de champs nouveaux, mais non supprimables.</li></ul> <p>Note : la déclaration d'un fieldset doit s'apparenter un peu à ce code <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/champs_extras/interface/trunk/inc/iextras.php#L184" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/champs_extras/interface/trunk/inc/iextras.php#L184</a> dans la déclaration d'API, avec bien sûr la définition sql en plus et pas la même affectation au début<small class="fine d-inline"> </small>!<br class="autobr"> <br>- $flux['data'][$nom] = saisies_inserer($flux['data'][$nom], array(<br class="autobr"> + $champs['spip_articles']['un_fieldset'] = array(<br class="autobr"> </p> Champs Extras 3 - API et créations 2015-06-19T15:13:05Z https://files.spip.net/Champs-Extras-API-et-creations#comment482656 2015-06-19T15:13:05Z <p>Bonjour,</p> <p>J'ai suivi la partie <strong>«<small class="fine d-inline"> </small>Créer un plugin en utilisant les API de champs extras<small class="fine d-inline"> </small>»</strong>. Effectivement les champs sont bien créer en base sur les bonnes tables, mais ils ne sont pas d'offices gérés depuis le plugin Champs Extras (interface), et quand on clique sur le bouton <strong>«<small class="fine d-inline"> </small>gérer ce champ<small class="fine d-inline"> </small>»</strong> ils sont transformés en champs de type <code class="spip_code spip_code_inline" dir="ltr">textarea => bloc de texte</code>, même si on a par exemple spécifié <code class="spip_code spip_code_inline" dir="ltr">'saisie' => 'input'</code> et également les options concernant la saisie/restriction ... passées dans le tableau <code class="spip_code spip_code_inline" dir="ltr">$champs</code> de ma fonction <code class="spip_code spip_code_inline" dir="ltr">xx_declarer_champs_extras</code> ne sont pas prise en comptes.</p> <p>Pour essayer de comprendre le fonctionnement de la création des champs : je suis allé voir le code de la fonction <code class="spip_code spip_code_inline" dir="ltr">champs_extras_creer</code> appelée par <code class="spip_code spip_code_inline" dir="ltr">cextras_api_upgrade</code> et d'après ce que j'ai compris du code, seule les données <code class="spip_code spip_code_inline" dir="ltr">$saisie['options']['nom']</code> et <code class="spip_code spip_code_inline" dir="ltr">$saisie['options']['sql']</code> sont utilisées.</p> <p>D'ou mes questions :</p> <p>1. Les informations passées dans le tableau <code class="spip_code spip_code_inline" dir="ltr">$champs</code> (options : saisie, restriction, verifier) sont-elles réellement prises en compte<small class="fine d-inline"> </small>? À quel moment<small class="fine d-inline"> </small>? Et sont-elles stockées quelques parts dans SPIP, puisqu'on ne peut pas le vérifier leurs configuration via le plugin <strong>Champs Extras (interface)</strong><small class="fine d-inline"> </small>?<br class="autobr"> 2. La création de groupe de champs <code class="spip_code spip_code_inline" dir="ltr">fieldset</code> fonctionne-t-elle vraiment<small class="fine d-inline"> </small>? De mon côté et sauf erreur/incompréhension de ma part, j'ai l'impression que cela ne fonctionne pas.<br class="autobr"> 3. Y a-t-il un moyen de programmer la prise en compte des champs extras créé sur un plugin tiers par le plugin <strong>Champs Extras (interface)</strong>.</p> <p>Merci pour votre aide</p> Champs Extras 3 - API et créations 2015-04-23T13:09:15Z https://files.spip.net/Champs-Extras-API-et-creations#comment481489 2015-04-23T13:09:15Z <p>Je viens de poster un exemple fonctionnel (© chez moi ça marche) avec des fieldset en bas de l'article si besoin</p> Champs Extras 3 - API et créations 2015-04-23T13:08:20Z https://files.spip.net/Champs-Extras-API-et-creations#comment481488 2015-04-23T13:08:20Z <p>Je viens de mettre un exemple en bas de l'article avec des fieldsets si toujours besoin</p> Champs Extras 3 - API et créations 2015-04-07T17:58:56Z https://files.spip.net/Champs-Extras-API-et-creations#comment481149 2015-04-07T17:58:56Z <p>Ou si c'est par l'API (et pas l'interface graphique) il y a :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code>'traitements' => '_TRAITEMENT_RACCOURCIS',</code></pre></div> <p>Ou encore en squelettes :</p> <div class="precode"><pre class="spip_code spip_code_block language-spip" dir="ltr" style="text-align:left;" data-language="spip"><code>[(#MON_CHAMP|propre)]</code></pre></div> Champs Extras 3 - API et créations 2015-04-07T17:57:15Z https://files.spip.net/Champs-Extras-API-et-creations#comment481148 2015-04-07T17:57:15Z <p>Onglet Technique dans la configuration du champs extras > Activer la prise en compte des raccourcis typographique (propre).</p> <p>Voili voilou :)</p> Champs Extras 3 - API et créations 2015-04-07T13:23:33Z https://files.spip.net/Champs-Extras-API-et-creations#comment481142 2015-04-07T13:23:33Z <p>Le plugin propose d'ajouter une barre d'édition gras/italique etc. mais la mise en forme à l'affichage n'est pas prise en compte.</p> <p>Ai-je raté quelque chose<small class="fine d-inline"> </small>? Comment ajouter les champs extras de type textarea au pipeline de mise en forme<small class="fine d-inline"> </small>?</p> <p>merci…</p> Champs Extras 3 - API et créations 2015-02-06T17:05:38Z https://files.spip.net/Champs-Extras-API-et-creations#comment479299 2015-02-06T17:05:38Z <p>Et si une fois créer les nouveaux champs avec sql_alter dans la partie installation d un plugin, on fait appel a la fonction : champs_extras_creer pour les transformer automatiquement en champs extra... c est une bonne pratique ou c est tout pourri<small class="fine d-inline"> </small>?<br class="autobr"> Parce que le problème des champs extras a cliquer soi meme depuis l interface, c est que c est pas super portable...<br class="autobr"> amicalement</p> Champs Extras 3 - API et créations 2015-02-04T22:06:30Z https://files.spip.net/Champs-Extras-API-et-creations#comment479247 2015-02-04T22:06:30Z <p>hum... du coup, je me demande si dans mon cas il ne vaut pas mieux étendre la table auteur via l api standard et ensuite demander au plugin champs extras de gerer les nouveaux champs de la table, parce que c'est quand même bien pratique de pouvoir modifier l'ordre des champs du formulaire, ajouter des class css, et surtout des fieldsets (via la fonction declarer_champs_extras, j ai l impression que ca doit être coton d insérer des fieldsets, pas fait pour de toute manière...)<br class="autobr"> M'en vais réfléchir à tout ça en dormant...<br class="autobr"> Merci bien pour la prompte réponse</p> Champs Extras 3 - API et créations 2015-02-04T21:31:33Z https://files.spip.net/Champs-Extras-API-et-creations#comment479246 2015-02-04T21:31:33Z <p>C'est bien cela.</p> <p>Pour changer du coup le type de champ, ou le nom de la colonne sql, il faut à la fois modifier le code de la fonction de déclaration, et éventuellement faire dans la fonction _upgrade du fichier d'administration du plugin une mise à jour du champ (sql_alter), dans le tableau souvent appelé $maj. Par exemple, là il y a <code class="spip_code spip_code_inline" dir="ltr">$maj['create']</code> : <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/champs_extras/extensions/titre_court_rubriques/trunk/titrecourt_administrations.php" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/champs_extras/extensions/titre_court_rubriques/trunk/titrecourt_administrations.php</a> qui est rempli par la fonction <code class="spip_code spip_code_inline" dir="ltr">cextras_api_upgrade</code>. Il pourrait y avoir en plus quelque chose comme <a href="http://zone.spip.org/trac/spip-zone/browser/_plugins_/contacts_et_organisations/trunk/contacts_administrations.php#L34" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/browser/_plugins_/contacts_et_organisations/trunk/contacts_administrations.php#L34</a> , en pensant aussi à modifier le schema du paquet.xml, qui correspond au numéro de dernière mise à jour de la base par le plugin.</p> Champs Extras 3 - API et créations 2015-02-04T21:16:43Z https://files.spip.net/Champs-Extras-API-et-creations#comment479245 2015-02-04T21:16:43Z <p>Bonsoir,<br class="autobr"> je teste...<br class="autobr"> Après avoir déclaré un certain nombre de champs extra a travers la fonction : function xx_declarer_champs_extras<br class="autobr"> je constate que mes champs sont bien créés en base, qu'en plus le formulaire natif de l objet (ici auteur) permet d administrer ces nouveaux champs sans problème et sans une ligne de code. Du coup je suis content, très même...<br class="autobr"> Par contre, je m'attendais, benoîtement sans doute, a ce que mes nouveaux champs extras soient également considérés comme tel par l'interface (champs_extras_edit&objet=auteur)<br class="autobr"> et que je pourrais continuer à les modifier, déplacer, changer de type... comme les champs extras créés via l interface<small class="fine d-inline"> </small>? Mais je me trompe, une fois créés par la fonction declarer_champs_extras ces champs deviennent comme les champs natifs de l'objet, immodifiables par l interface, c'est bien ca<small class="fine d-inline"> </small>?<br class="autobr"> Un grand merci pour ce magnifique plugin de plus...<br class="autobr"> amicalement</p> Champs Extras 3 - API et créations 2014-09-16T09:34:37Z https://files.spip.net/Champs-Extras-API-et-creations#comment476965 2014-09-16T09:34:37Z <p>Bonjour,</p> <p>Je me permets un petit up sur ce sujet, je patine toujours dans la choucroute. L'idée générale est bien d'autoriser un champ extra pour une organisation en fonction de son appartenance à un annuaire.<br class="autobr"> Donc un truc qui ressemblerait plutot à :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>function autoriser_organisation_voirextra_champextra1_dist($objetutilisantchamp, $nomchampextra, $idobjetcontenantobjetutilisantchamp, $objetcontenantobjetutilisantchamp) { //c'est ici que ça se corse ... }</code></pre></div> <p>Ai-je bon déjà à ce niveau<small class="fine d-inline"> </small>? dans l'ordre de ma fonction on aurait ('organisation', 'nomduchamparestreindre', 5, 'annuaire') pour restreindre le champ 'nomduchamparestreindre' sur les organisations appartenant à l'annuaire n°5 ...<br class="autobr"> Ensuite je ne suis pas sûr de ce que doit retourner la fonction ... un true/false simple<small class="fine d-inline"> </small>?</p> <p>Merci d'avance<small class="fine d-inline"> </small>?<br class="autobr"> Pierre</p> Champs Extras 3 - API et créations 2014-08-12T09:46:24Z https://files.spip.net/Champs-Extras-API-et-creations#comment476472 2014-08-12T09:46:24Z <p>Ciao</p> <p>J'ai un début de solution :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code> $champs['spip_articles']["fieldset_01"] = array( 'saisie' => 'fieldset',//Type du champ (voir plugin Saisies) 'options' => array( 'nom' => 'fieldset_01', 'label' => 'fieldset 01', ), 'saisies' => array( $champs['spip_articles']['test'] = array( 'saisie' => 'input',//Type du champ (voir plugin Saisies) 'options' => array( 'nom' => 'test', 'label' => 'test', 'sql' => "varchar(30) NOT NULL DEFAULT ''", 'defaut' => '',// Valeur par défaut 'restrictions' => array( 'rubrique' => '3' ), ) ), );</code></pre></div> <p>Dans ce cas de figure nous avons bien un fieldset contenant un champ test.<br class="autobr"> Le truc c'est qu'il doublonne le champ test en raison de l'affectation à <strong>$champ</strong></p> Champs Extras 3 - API et créations 2014-07-28T13:17:33Z https://files.spip.net/Champs-Extras-API-et-creations#comment476338 2014-07-28T13:17:33Z <p>Bonjour,</p> <p>J'ai créé des saisies que j'utilise en champs extras sur des organisations qui appartiennent à des annuaires ... Je souhaiterai restreindre l'apparition de ces champs extras à certains annuaires, je suis en train de m'emmêler les pinceaux :-)</p> <p>Je dois donc créer dans un mes_fonctions.php quelque chose du genre :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>include_spip('inc/cextras_autoriser'); restreindre_extras('organisation', array('champextra1', 'champextra2'), 1, 'annuaire');</code></pre></div> <p>Si j'ai bien lu la doc, ça ne marche pas car <code class="spip_code spip_code_inline" dir="ltr">restreindre_extras()</code> s'il peut s'appliquer à l'objet « organisation », il va chercher à restreindre l'affichage dans des rubriques/secteur/groupemot, mais pas dans des annuaires ... je dois donc écrire une fonction spéciale genre pour autoriser champextra1 dans l'annuaire avec l'id 1 :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>function autoriser_annuaire_voirextra_champextra1_dist() { return in_array($qui['id_annuaire'], 1); }</code></pre></div> <p>et idem pour champextra2 et ensuite à doubler avec « modifierextra » ...</p> <p>Est-ce que j'ai bon jusque là<small class="fine d-inline"> </small>? (j'en doute, si je pose la question c'est que ça ne marche pas ... :-)<br class="autobr"> Merci pour vos lumières<small class="fine d-inline"> </small>!</p> <p>Pierre</p> Champs Extras 3 - API et créations 2014-05-25T17:58:32Z https://files.spip.net/Champs-Extras-API-et-creations#comment475529 2014-05-25T17:58:32Z <p>J'utilise SPIP SPIP 3.0.16 et Champs Extras 3.2.7 .</p> <p>J'ai créé un plugin en suivant les exemples ici pour définir un set de champs extra pour les articles. À l'installation du plugin les champs sont bien déclarés dans la base de donnée avec les types souhaités mais ils ne s'affichent pas dans l'espace privé.<br class="autobr"> Si j'installe le plugin champs_extra_interface les champs déclarés via l'API apparaissent comme non gérés. Je ne souhaite pas utiliser le plugin interface si possible.</p> <p>Dois-je modifier des squelettes de l'espace privé pour que les champs extra déclarés via l'API soient éditables<small class="fine d-inline"> </small>?</p> <p>Merci</p> Champs Extras 3 - API et créations 2014-02-25T12:15:19Z https://files.spip.net/Champs-Extras-API-et-creations#comment474041 2014-02-25T12:15:19Z <p>Effectivement, j'ai exactement la même chose. Avec en prime en cas de vérification de la date le message suivant ==> Le format de la date n'est pas accepté.</p> Champs Extras 3 - API et créations 2013-11-24T04:47:42Z https://files.spip.net/Champs-Extras-API-et-creations#comment472371 2013-11-24T04:47:42Z <p>Bonjour,</p> <p>Très belle application que j'utilise avec bonheur depuis longtemps mais actuellement je n'arrive pas à vraiment utiliser les fonctions de restriction sur des auteurs.<br class="autobr"> Je veux restreindre l'utilisation d'un champ pour quelques auteurs bien spécifiques et j'ai écrit dans mes_fonction.php :</p> <blockquote class="spip"><pre><code style="color:#000000;"><span style="color:#0000BB;"><?php include_spip</span><span style="color:#007700;">(</span><span style="color:#DD0000;">'inc/cextras_autoriser'</span><span style="color:#007700;">); </span><span style="color:#FF8000;">// restreindre le champ 'mon_champ' des auteurs sur les auteurs 1,6,7,10 </span><span style="color:#0000BB;">restreindre_extras</span><span style="color:#007700;">(</span><span style="color:#DD0000;">'auteur'</span><span style="color:#007700;">, </span><span style="color:#DD0000;">'mon_champ'</span><span style="color:#007700;">, array(</span><span style="color:#0000BB;">1</span><span style="color:#007700;">,</span><span style="color:#0000BB;">6</span><span style="color:#007700;">,</span><span style="color:#0000BB;">7</span><span style="color:#007700;">,</span><span style="color:#0000BB;">10</span><span style="color:#007700;">)); </span><span style="color:#0000BB;">?></span></code></pre></blockquote> <p>Et cela ne fonctionne pas et fait disparaître la saisie du champ sur tous les auteurs.</p> <p>Si je comprend bien maintenant, le troisième argument de restreindre_extras doit uniquement concerner les rubriques et non les auteurs, ici, comme je le voudrais<small class="fine d-inline"> </small>?</p> <p>Comment faire<small class="fine d-inline"> </small>?</p> <p>Je suis en S<strong>PIP 1.3.13</strong> avec la dernière version de <strong>Champs extra 3</strong></p> Champs Extras 3 - API et créations 2013-09-23T10:04:17Z https://files.spip.net/Champs-Extras-API-et-creations#comment470936 2013-09-23T10:04:17Z <p>Bonjour,</p> <p>Comment fait-on pour créer un fieldset et les saisies associées<small class="fine d-inline"> </small>? <br class="autobr"> Malgré mes tests, je n'arrive pas à créer en base mes champs extras pour articles...</p> <p>Je tourne en rond actuellement.</p> Champs Extras 3 - API et créations 2013-05-16T10:08:40Z https://files.spip.net/Champs-Extras-API-et-creations#comment467978 2013-05-16T10:08:40Z <p>bonjour à tous,<br class="autobr"> j'ai un petit problème avec ce plugins car sur mon local tout fonctionne bien mais pas sur la preprod. Quand je souhaite modifier un champ , tout disparais sauf le bouton enregistrer.<br class="autobr"> Merci d'avance</p> Champs Extras 3 - API et créations 2013-04-28T14:42:33Z https://files.spip.net/Champs-Extras-API-et-creations#comment467544 2013-04-28T14:42:33Z <p>Bonjour et merci de votre réponse, alors non je me suis trompé de page, je n'utilise pas l'api mais bien l'interface graphique du plugin champ extra, par défaut dans spip 3.08 il y a déjà le plugin « verifier » j'ai vu que sur spip contrib il y a une version plus récente du plugin « vérifier » donc je l'ai installé. j'ai tester à nouveau et toujours le même message d'erreur.</p> <p>Je vous joins une capture d'écran, j'ai simplement ajouter un champ de type date avec heure et j'ai laisser les autres paramètres par défaut. Impossible d'enregistrer l'article.</p> <p>Quels précisions de plus avez vous besoin pour identifier ce qui pose problème<small class="fine d-inline"> </small>?</p> <p>Merci d'avance et bon dimanche<small class="fine d-inline"> </small>!</p> Champs Extras 3 - API et créations 2013-04-28T08:54:07Z https://files.spip.net/Champs-Extras-API-et-creations#comment467540 2013-04-28T08:54:07Z <p>Oui, plein d'idées.</p> <p>Déjà, tu es ici sur l'article qui présente les API, je suppose que c'est parce que tu les utilises (et donc que ce n'est pas via l'interface graphique que tu crées tes champs).</p> <p>Si c'est par l'interface graphique : la simple présence du plugin «<small class="fine d-inline"> </small>verifier<small class="fine d-inline"> </small>» devrait normalement être suffisant pour gérer correctement la date.</p> <p>Si c'est par les API, il faut non seulement le plugin «<small class="fine d-inline"> </small>verifier<small class="fine d-inline"> </small>» actif, mais déclarer aussi une «<small class="fine d-inline"> </small>normalisation<small class="fine d-inline"> </small>» telle que présente dans l'exemple de la partie «<small class="fine d-inline"> </small>Un autre exemple...<small class="fine d-inline"> </small>» de cette page pour le champ de type date :</p> <div class="precode"><pre class="spip_code spip_code_block language-php" dir="ltr" style="text-align:left;" data-language="php"><code> $champs['spip_articles']['date_creation'] = array( 'saisie' => 'date', // Type du champs (voir plugin Saisies) 'options' => array( 'nom' => 'date_creation', 'label' => _T('grainepc:info_date_creation'), 'sql' => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL", 'defaut' => '',// Valeur par défaut ), 'verifier' => array( 'type' => 'date', 'options' => array( 'normaliser' => 'datetime', ) ));</code></pre></div> Champs Extras 3 - API et créations 2013-04-25T20:22:21Z https://files.spip.net/Champs-Extras-API-et-creations#comment467476 2013-04-25T20:22:21Z <p>Bonjour à tous, d'abord merci pour ce plugin qui est d'une grande utilité.</p> <p>Je rencontre un bug lorsque je souhaite utilisé un champ extra de type date, mon article ne s'enregistre pas et j'ai l'erreur suivante : <br class="autobr"> « Une erreur technique a empêché l'enregistrement correct du champ 'date_debut','date_fin'. »</p> <p>Je suis sur spip 3.08 avec la dernière version du plugin champ extra à jour.</p> <p>Avez vous une idée<small class="fine d-inline"> </small>? Je suis bloqué<small class="fine d-inline"> </small>?</p> <p>Merci d'avance.</p> Champs Extras 3 - API et créations 2013-03-05T22:03:59Z https://files.spip.net/Champs-Extras-API-et-creations#comment465882 2013-03-05T22:03:59Z <p>Je crois que <a href="http://zone.spip.org/trac/spip-zone/changeset/70444" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/changeset/70444</a> répare<small class="fine d-inline"> </small>!</p> <p>J'espère du moins :)</p> <p>Mes tests fonctionnent (api ou interface).</p> Champs Extras 3 - API et créations 2013-03-05T21:47:38Z https://files.spip.net/Champs-Extras-API-et-creations#comment465881 2013-03-05T21:47:38Z <p>Je me demande si y a pas un bug :/</p> <p>/me qui arrive en retard ^^</p> Champs Extras 3 - API et créations 2013-03-01T09:30:14Z https://files.spip.net/Champs-Extras-API-et-creations#comment465793 2013-03-01T09:30:14Z <p>Bonjour, <br class="autobr"> J'aimerai savoir s'il existe un moyen de lister les champs extra (et afficher leur valeur) d'un objet dans un squelette coté public<small class="fine d-inline"> </small>?<br class="autobr"> C'est fait coté privé, mais je me demande par quel moyen on peut arriver a cela via un boucle DATA par exemple sur un squelette public.<br class="autobr"> Merci d'avance au eventuelle réponses<small class="fine d-inline"> </small>!<small class="fine d-inline"> </small>;)</p> Champs Extras 3 - API et créations 2012-10-15T10:15:29Z https://files.spip.net/Champs-Extras-API-et-creations#comment462219 2012-10-15T10:15:29Z <p>Bonjour,</p> <p>Est-ce quelqu'un à une idée comment limiter les restrictions à des rubriques en excluant ses sous-rubriques<small class="fine d-inline"> </small>?</p> <p>Je reformule :</p> <p>dans le cadre d'une déclaration de champs extras depuis un plugin, Est-ce qu'il es possible de limiter l'affichage à des rubriques sans ses sous-rubriques, donc pour<br class="autobr"> 'restrictions'=>array(<br class="autobr"> 'rubrique' => '3:2', <br class="autobr"> ),<br class="autobr"> )</p> <p>le champ ne devrait uniquement s'afficher dans les rubriques 2 et 3 et pas dans ses sous-rubriques. Mais il s'affiche également dans ses sous-rubriques</p> <p>Est-ce que la fonction restreindre_extras() fonctionne bien si les champs sont déclarés via la pipeline «<small class="fine d-inline"> </small>declarer_champs_extras<small class="fine d-inline"> </small>». Dans mon cas cela ne fonctionne pas. J'ai mis <br class="autobr"> if(function_exists('restreindre_extras'))restreindre_extras('article', array('guidance','how_to_analyse_context','how_to_analyse_org_aspects','suggested_objectives','activities','in_practice','voices','other_ressources'), array(2,3))<small class="fine d-inline"> </small>;</p> <p>dans les fichier mes_fonctions.php du plugin et également dans le squelette d'un site, aucun effet. Merci pour votre aide</p> <p>Rainer</p> Champs Extras 3 - API et créations 2012-10-15T10:14:45Z https://files.spip.net/Champs-Extras-API-et-creations#comment462218 2012-10-15T10:14:45Z <p>Bonjour,</p> <p>Est-ce quelqu'un à une idée comment limiter les restrictions à des rubriques en excluant ses sous-rubriques<small class="fine d-inline"> </small>?</p> <p>Je reformule :</p> <p>dans le cadre d'une déclaration de champs extras depuis un plugin, Est-ce qu'il es possible de limiter l'affichage à des rubriques sans ses sous-rubriques, donc pour</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>'restrictions'=>array( 'rubrique' => '3:2', ), )</code></pre></div> <p>le champ ne devrait uniquement s'afficher dans les rubriques 2 et 3 et pas dans ses sous-rubriques. Mais il s'affiche également dans ses sous-rubriques</p> <p>Est-ce que la fonction restreindre_extras() fonctionne bien si les champs sont déclarés via la pipeline « declarer_champs_extras ». Dans mon cas cela ne fonctionne pas. J'ai mis <br class="autobr"> <code class="spip_code spip_code_inline" dir="ltr">if(function_exists('restreindre_extras'))restreindre_extras('article', array('guidance','how_to_analyse_context','how_to_analyse_org_aspects','suggested_objectives','activities','in_practice','voices','other_ressources'), array(2,3)) ;</code></p> <p>dans les fichier mes_fonctions.php du plugin et également dans le squelette d'un site, aucun effet. Merci pour votre aide</p> <p>Rainer</p> Champs Extras 3 - API et créations 2012-10-05T14:47:06Z https://files.spip.net/Champs-Extras-API-et-creations#comment461911 2012-10-05T14:47:06Z <p>Bonjour,</p> <p>j'essaie de restreindre l'utilisation d'un champ à une seule rubrique et ne pas l'afficher dans ces sous-rubriques</p> <p>selon la doc, il me semble que la déclaration suivante devrait le faire</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code> $champs['spip_articles']['guidance'] = array( 'saisie' => 'textarea',//Type du champ (voir plugin Saisies) 'options' => array( 'nom' => 'guidance', 'label' => _T('wiki_cso:guidance'), 'sql' => "text NOT NULL DEFAULT ''", 'versionner' => true, 'traitements' => '_TRAITEMENT_TYPO', 'recherche' => true, 'restrictions'=>array( 'rubrique' => '3:2', 'voir' => array('auteur' => ''), 'modifier' => array('auteur' => ''), ), ) ); </code></pre></div> <p>j'ai égalment essayé <br class="autobr"> <code><br class="autobr"> if(function_exists('restreindre_extras'))restreindre_extras('article', array('guidance','how_to_analyse_context','how_to_analyse_org_aspects','suggested_objectives','activities','in_practice','voices','other_ressources'), array(2,3))<small class="fine d-inline"> </small>;<br class="autobr"> </code<</code></p> <p>dans les deux cas, les champs sont également affiché dans les sous-rubriques, comment arriver à limiter l'affichage aux deux rubriques 2 et 3<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2012-09-06T05:18:05Z https://files.spip.net/Champs-Extras-API-et-creations#comment460943 2012-09-06T05:18:05Z <p>Super merci</p> Champs Extras 3 - API et créations 2012-09-05T16:45:26Z https://files.spip.net/Champs-Extras-API-et-creations#comment460934 2012-09-05T16:45:26Z <p>Brillant<small class="fine d-inline"> </small>!</p> Champs Extras 3 - API et créations 2012-09-05T16:26:15Z https://files.spip.net/Champs-Extras-API-et-creations#comment460931 2012-09-05T16:26:15Z <p>Demande exaucée par <a href="http://zone.spip.org/trac/spip-zone/changeset/65577" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/changeset/65577</a></p> Champs Extras 3 - API et créations 2012-09-05T11:44:40Z https://files.spip.net/Champs-Extras-API-et-creations#comment460918 2012-09-05T11:44:40Z <p>Ça m'intéresse également de savoir comment obtenir le versionnage</p> Champs Extras 3 - API et créations 2012-07-04T16:47:54Z https://files.spip.net/Champs-Extras-API-et-creations#comment459020 2012-07-04T16:47:54Z <p>Bonjour,<br class="autobr"> Une petite question en passant : est-ce que le versionnage est géré<small class="fine d-inline"> </small>?<br class="autobr"> Par exemple, puis-je utiliser ça : <strong>'versionner' => 'true'</strong> comme option pour un champ extra<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2012-05-10T20:34:09Z https://files.spip.net/Champs-Extras-API-et-creations#comment457068 2012-05-10T20:34:09Z <p>Quelque ne semble pas tourner rond sur le plugin «<small class="fine d-inline"> </small>API de vérification<small class="fine d-inline"> </small>» - il génére un message d'erreur quand on essaye de l'activer dans le back-office Spip 3 RC avec Champs Extras (Interface) 3.0.3 ...</p> Champs Extras 3 - API et créations 2012-04-22T02:30:40Z https://files.spip.net/Champs-Extras-API-et-creations#comment456468 2012-04-22T02:30:40Z <p>Mathieu, je t'ai déjà dis que tu cartonnais<small class="fine d-inline"> </small>? ^^</p> Champs Extras 3 - API et créations 2012-03-30T07:38:54Z https://files.spip.net/Champs-Extras-API-et-creations#comment455852 2012-03-30T07:38:54Z <p>Bonjour :)<br class="manualbr">Tout d'abord merci pour la « magie » qu'offre cette nouvelle version<small class="fine d-inline"> </small>!</p> <p>J'ai peut être une question bête, mais je n'ai pas trouvé encore la réponse alors je tente ma chance :</p> <p>Les champs extra reposent sur #SAISIE, on créé donc des champs extras via saisie sur les objets. Lors de la création ceux-ci s'affiche pour l'objet complet dans « champs_extras_edit&objet=mon_objet ».</p> <p>Coté public je suis sur la réalisation d'une fiche perso pour un auteur. Mais je ne cherche pas forcément à lui faire modifier tout les champs extra définis. Je souhaiterai permettre l'édition au cas par cas de mes #CHAMPS_EXTRA. Donc, exsisterai t'il un moyen, une balise, qui soit du genre #SAISIR_CHAMPS_EXTRA<i>monchamp_extra</i><small class="fine d-inline"> </small>?</p> <p>Pour l'instant je passe par <code class="spip_code spip_code_inline" dir="ltr">[(#SAISIE{input, monchamps, label=[(#CHAMP_EXTRA{monchamps, label}) : ], obligatoire=oui,defaut=#MONCHAMP})]</code><br class="manualbr">La création d'une nouvelle balise pourrait être utile pour cela<small class="fine d-inline"> </small>?</p> <p>Question supplémentaire, si c'est la bonne methode, comment fournir sous forme d'#ARRAY pour datas (boutons radio, checkbox) de #SAISIE avec #LISTER_VALEURS et #LISTER_CHOIX (car c'est soir l'un soit l'autre à priori).</p> <p>Et enfin, existe t il une option (pas vu) qui permette d'afficher un #CHAMP_EXTRA en fonction de la valeur d'un Champs précédent : exemple type -> boutons radio • Particulier | • société qui afficherai un champs « Fonction » si société est sélectionné, sinon serait caché.</p> <p>Voila :) merci beaucoup pour vos éclaircissements</p> Champs Extras 3 - API et créations 2012-03-28T18:03:32Z https://files.spip.net/Champs-Extras-API-et-creations#comment455806 2012-03-28T18:03:32Z <p>Bonjour,</p> <p>Vue personnalisée : il est précisé dans l'article <a href='https://files.spip.net/Champs-Extras-Interface' class="spip_in" rel='nofollow'>Champs Extras (Interface)</a> que l'on peut créer ses propres saisies. Je souhaite personnaliser la vue d'un champ de type input.</p> <p>J'ai deux questions à ce sujet :<br class="autobr"> (1) je n'ai pas trouvé le fichier input.html dans le répertoire saisies-vues du plugin saisies. Quel est le fichier à modifier<small class="fine d-inline"> </small>?<br class="autobr"> (2) où le fichier input.html doit-il être enregistré (dans le dossier saisies-vues du plugin ajoutant les champs extras)<small class="fine d-inline"> </small>?</p> <p>Merci pour vos réponses, <br>— Olivier</p> Champs Extras 3 - API et créations 2012-03-28T10:07:21Z https://files.spip.net/Champs-Extras-API-et-creations#comment455783 2012-03-28T10:07:21Z <p>En effet, ça change tout<small class="fine d-inline"> </small>;-)<small class="fine d-inline"> </small>!</p> <p>Merci, <br>— Olivier</p> <p>P.S. : les champs extras avec un souligné fonctionnent normalement.</p> Champs Extras 3 - API et créations 2012-03-27T17:49:31Z https://files.spip.net/Champs-Extras-API-et-creations#comment455767 2012-03-27T17:49:31Z <p>Bien bien bien, petite erreur de frappe dans la doc :)</p> <p><a href="http://zone.spip.org/trac/spip-zone/changeset/59831" class="spip_url spip_out auto" rel="nofollow external">http://zone.spip.org/trac/spip-zone/changeset/59831</a></p> <p>MM.</p> Champs Extras 3 - API et créations 2012-03-27T17:16:48Z https://files.spip.net/Champs-Extras-API-et-creations#comment455766 2012-03-27T17:16:48Z <p>Quelque soit le nom du champ (avec / sans souligné)<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2012-03-27T16:58:22Z https://files.spip.net/Champs-Extras-API-et-creations#comment455764 2012-03-27T16:58:22Z <p>SPIP 3.0.0-beta2 [19139]<br class="autobr"> Champs Extras 3.0.6 SVN [59573]</p> <p>L'interface privée ne semble pas tenir compte des restrictions (pas de fonction spécifique dans mes_fonctions.php). Exemple :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>'restriction' => array( 'voir' => array('auteur'=>'admin'), 'modifier' => array('auteur'=>'admin'))</code></pre></div> <p>Connecté en temps que rédacteur, je peux voir le champ (ma fiche et celle des autres auteurs) et je peux modifier ce champs de ma fiche. J'ai essayé avec webmestre ou 0minirezo : même résultat.</p> <p>Reproduis-tu le même comportement<small class="fine d-inline"> </small>?</p> Champs Extras 3 - API et créations 2012-03-27T13:29:04Z https://files.spip.net/Champs-Extras-API-et-creations#comment455756 2012-03-27T13:29:04Z <p>1) oui, cela fait doublon. En fait c'est pour éviter d'avoir à déclarer des fonctions lorsque les restrictions sont des cas courants (on a le même principe avec le plugin d'interface).</p> <p>2) attention : les fonctions ne sont plus nommées comme avec l'api pour SPIP 2.1. Il faut donc mettre à jour leur noms pour cette API là. et 2bis) les underscore devraient passer.<br class="autobr"> Si c'est pas le cas, c'est un bug.</p> Champs Extras 3 - API et créations 2012-03-27T13:15:09Z https://files.spip.net/Champs-Extras-API-et-creations#comment455754 2012-03-27T13:15:09Z <p>Bonjour Mathieu,</p> <p>Merci pour cet article. J'en ai profité pour mettre à jour mon plugin d'extension des champs auteurs pour Spip 3 / Champs Extra.</p> <p>Je bute toutefois sur les fonctions d'autorisations qui ne sont pas opérantes chez moi. Deux questions :<br class="autobr"> (1) à quoi servent les autorisations autorisations voir/modifier définies pour chaque champ dans le plugin par rapports aux fonctions définies dans squelettes/mes_fonctions.php<small class="fine d-inline"> </small>? Cela fait-il doublon<small class="fine d-inline"> </small>?<br class="autobr"> (2) malgré la définition des fonctions ad hoc dans mes_fonctions.php, un auteur peut modifier des champs réservés aux seuls admin. Est-ce que le nom des champs extras peut accepter un underscore (asso_prenom)<small class="fine d-inline"> </small>?</p> <p>Merci, <br>— Olivier</p> Champs Extras 3 - API et créations 2012-03-23T14:31:35Z https://files.spip.net/Champs-Extras-API-et-creations#comment455640 2012-03-23T14:31:35Z <p>Super<small class="fine d-inline"> </small>!! Merci</p>