[SPIP Zone] plugin mots_partout

Bonjour à tous,

J'essaye d'utiliser le plugin mots_partout pour le plugin spip-lettres et
je rencontre un pb avec le formulaire des mots-clés.

J'ai déclaré $choses_possibles['lettres'] dans mots_choses_partout.php
(provisoire, je veux que ça marche dans un premier temps, je déplacerais
le code dans le plugin spip-lettres ensuite)

J'ai aussi utilisé la page de configuration pour ajouter les mots sur mon
objet "lettres" et créé un groupe de mot-clé en activant l'ajout aux
lettres.

Voici ma déclaration (placée après $choses_possibles['articles']) :
<?
$choses_possibles['lettres'] = array(
'titre_chose' => 'lettres',
'id_chose' => 'id_lettre',
'table_principale' => 'spip_lettres',
'table_auth' => 'spip_auteurs_lettres',
'tables_limite' => array(
  'lettres' => array(
    'table' => 'spip_lettres',
    'nom_id' => 'id_lettre'),
  'rubriques' => array(
    'table' => 'spip_lettres',
    'nom_id' => 'id_rubrique'),
  'documents' => array(
    'table' => 'spip_documents_lettres',
    'nom_id' => 'id_document'),
  'auteurs' => array(
    'table' => 'spip_auteurs_lettres',
    'nom_id' => 'id_auteur')
)
);
?>

J'appelle ensuite formulaire_mots depuis une page de l'espace privé
afin d'obtenir le formulaire d'association de mot-clé pour mon objet
"lettre":
<?
echo formulaire_mots('lettre', $id_lettre, $cherche_mot, $select_groupe,
true);
?>

Il s'affiche correctement, mais la sélection d'un mot-clé puis la
validation du formulaire ne me retourne rien, je n'ai pas d'association
lettre / mot-clé. Aussi j'ai remarqué dans le code que cela utilise ajax
(et c'est vrai que je n'ai pas la petite animation ajax avant le
formulaire) donc je ne devrais pas voir le rechargement du formulaire.
Faut-il que je crée une fonction ajax quelque
part, car ma dernière idée : c'est qu'il ne trouve pas une certaine
fonction. Je suis un peu perdu dès qu'on passe dans AjaxSqueeze() je
ne m'y connais pas trop en ajax...

Pouvez-vous m'aiguiller SVP ?

Cordialement.

Pierre Basson

Pierre Basson a écrit :

Bonjour à tous,

J'essaye d'utiliser le plugin mots_partout pour le plugin spip-lettres et
je rencontre un pb avec le formulaire des mots-clés.
  

quelle version de Spip et quelle version de mots_partout ?

J'ai déclaré $choses_possibles['lettres'] dans mots_choses_partout.php
(provisoire, je veux que ça marche dans un premier temps, je déplacerais
le code dans le plugin spip-lettres ensuite)

J'ai aussi utilisé la page de configuration pour ajouter les mots sur mon
objet "lettres" et créé un groupe de mot-clé en activant l'ajout aux
lettres.

Voici ma déclaration (placée après $choses_possibles['articles']) :
<?
$choses_possibles['lettres'] = array(
'titre_chose' => 'lettres',
'id_chose' => 'id_lettre',
'table_principale' => 'spip_lettres',
'table_auth' => 'spip_auteurs_lettres',
'tables_limite' => array(
  'lettres' => array(
    'table' => 'spip_lettres',
    'nom_id' => 'id_lettre'),
  'rubriques' => array(
    'table' => 'spip_lettres',
    'nom_id' => 'id_rubrique'),
  'documents' => array(
    'table' => 'spip_documents_lettres',
    'nom_id' => 'id_document'),
  'auteurs' => array(
    'table' => 'spip_auteurs_lettres',
    'nom_id' => 'id_auteur')
)
);
?>

J'appelle ensuite formulaire_mots depuis une page de l'espace privé
afin d'obtenir le formulaire d'association de mot-clé pour mon objet
"lettre":
<?
echo formulaire_mots('lettre', $id_lettre, $cherche_mot, $select_groupe,
true);
?>
  

jusque la en tous cas, c'est tout bon.

Il s'affiche correctement, mais la sélection d'un mot-clé puis la
validation du formulaire ne me retourne rien, je n'ai pas d'association
lettre / mot-clé. Aussi j'ai remarqué dans le code que cela utilise ajax
(et c'est vrai que je n'ai pas la petite animation ajax avant le
formulaire) donc je ne devrais pas voir le rechargement du formulaire.
  

je me suis arreté juste quand le formulaire est passé en ajax, et comme je crois etre le seul à utiliser cet aspect avec spipcarto, il est possible que ca n'ai jamais été testé...

Faut-il que je crée une fonction ajax quelque
part, car ma dernière idée : c'est qu'il ne trouve pas une certaine
fonction. Je suis un peu perdu dès qu'on passe dans AjaxSqueeze() je
ne m'y connais pas trop en ajax...

Pouvez-vous m'aiguiller SVP ?
  

pour voir les appels ajax, firebug !
tu verras ce qui sort et ce qui revient

Regarde aussi dans ton spip.log, il y a peut etre des erreurs sur autoriser_action
@++

désolé pour le bruit, c'est parce que le formulaire ajax était
encastré dans un autre formulaire... je n'ai pas regardé au bon
endroit. ça marche maintenant.

merci de l'aide

pierre

2006/12/12, spipcarto <spipcarto@gmail.com>:

Pierre Basson a écrit :
> Bonjour à tous,
>
> J'essaye d'utiliser le plugin mots_partout pour le plugin spip-lettres et
> je rencontre un pb avec le formulaire des mots-clés.
>
quelle version de Spip et quelle version de mots_partout ?
> J'ai déclaré $choses_possibles['lettres'] dans mots_choses_partout.php
> (provisoire, je veux que ça marche dans un premier temps, je déplacerais
> le code dans le plugin spip-lettres ensuite)
>
> J'ai aussi utilisé la page de configuration pour ajouter les mots sur mon
> objet "lettres" et créé un groupe de mot-clé en activant l'ajout aux
> lettres.
>
> Voici ma déclaration (placée après $choses_possibles['articles']) :
> <?
> $choses_possibles['lettres'] = array(
> 'titre_chose' => 'lettres',
> 'id_chose' => 'id_lettre',
> 'table_principale' => 'spip_lettres',
> 'table_auth' => 'spip_auteurs_lettres',
> 'tables_limite' => array(
> 'lettres' => array(
> 'table' => 'spip_lettres',
> 'nom_id' => 'id_lettre'),
> 'rubriques' => array(
> 'table' => 'spip_lettres',
> 'nom_id' => 'id_rubrique'),
> 'documents' => array(
> 'table' => 'spip_documents_lettres',
> 'nom_id' => 'id_document'),
> 'auteurs' => array(
> 'table' => 'spip_auteurs_lettres',
> 'nom_id' => 'id_auteur')
> )
> );
> ?>
>
> J'appelle ensuite formulaire_mots depuis une page de l'espace privé
> afin d'obtenir le formulaire d'association de mot-clé pour mon objet
> "lettre":
> <?
> echo formulaire_mots('lettre', $id_lettre, $cherche_mot, $select_groupe,
> true);
> ?>
>
jusque la en tous cas, c'est tout bon.
> Il s'affiche correctement, mais la sélection d'un mot-clé puis la
> validation du formulaire ne me retourne rien, je n'ai pas d'association
> lettre / mot-clé. Aussi j'ai remarqué dans le code que cela utilise ajax
> (et c'est vrai que je n'ai pas la petite animation ajax avant le
> formulaire) donc je ne devrais pas voir le rechargement du formulaire.
>
je me suis arreté juste quand le formulaire est passé en ajax, et comme
je crois etre le seul à utiliser cet aspect avec spipcarto, il est
possible que ca n'ai jamais été testé...

> Faut-il que je crée une fonction ajax quelque
> part, car ma dernière idée : c'est qu'il ne trouve pas une certaine
> fonction. Je suis un peu perdu dès qu'on passe dans AjaxSqueeze() je
> ne m'y connais pas trop en ajax...
>
> Pouvez-vous m'aiguiller SVP ?
>
pour voir les appels ajax, firebug !
tu verras ce qui sort et ce qui revient

Regarde aussi dans ton spip.log, il y a peut etre des erreurs sur
autoriser_action
@++
_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

On 13 Dec, 2006, at 12:06, Pierre Basson wrote:

désolé pour le bruit, c'est parce que le formulaire ajax était
encastré dans un autre formulaire... je n'ai pas regardé au bon
endroit. ça marche maintenant.

Haha, tres interessant d'entendre cela, il va falloir que je test pour voir où on peut porter mots_partout avec les points d'entrée donc...

peut être à Noel, on me fera le cadeau du temps :wink:

Pierre

en fait j'ai crié victoire trop vite : ça marche sur l'espace privé
mais tous les {titre_mot=xxx} cassent dans les squelettes

2006/12/13, Pierre Andrews <pierre.andrews@gmail.com>:

On 13 Dec, 2006, at 12:06, Pierre Basson wrote:

> désolé pour le bruit, c'est parce que le formulaire ajax était
> encastré dans un autre formulaire... je n'ai pas regardé au bon
> endroit. ça marche maintenant.

Haha, tres interessant d'entendre cela, il va falloir que je test
pour voir où on peut porter mots_partout avec les points d'entrée
donc...

peut être à Noel, on me fera le cadeau du temps :wink:

Pierre

On 13 Dec, 2006, at 13:54, Pierre Basson wrote:

en fait j'ai crié victoire trop vite : ça marche sur l'espace privé
mais tous les {titre_mot=xxx} cassent dans les squelettes

ils cassent dans quel sens (erreur squelette, boucle vide, plantage du serveur, explosion de ton ordinateur ;))?

si tu utilises id_mot, ça marche? j'ai modifié des choses là dessus ce WE (mais pas testé avec titre_mot), tu as fait quand la dernière mise à jour du plugin? tu es repassé par l'espace de gestion des plugins apres?

Pierre

voici mon diff pour que ça marche :

fichier motspartout_options.php
- $tables_jointures[$table_principale]= 'mots';
+ $tables_jointures[$table_principale]=
str_replace('spip_','mots_',$table_principale);

hop

2006/12/13, Pierre Andrews <pierre.andrews@gmail.com>:

On 13 Dec, 2006, at 13:54, Pierre Basson wrote:

> en fait j'ai crié victoire trop vite : ça marche sur l'espace privé
> mais tous les {titre_mot=xxx} cassent dans les squelettes

ils cassent dans quel sens (erreur squelette, boucle vide, plantage
du serveur, explosion de ton ordinateur ;))?

si tu utilises id_mot, ça marche? j'ai modifié des choses là dessus
ce WE (mais pas testé avec titre_mot), tu as fait quand la dernière
mise à jour du plugin? tu es repassé par l'espace de gestion des
plugins apres?

Pierre

On 13 Dec, 2006, at 14:55, Pierre Basson wrote:

voici mon diff pour que ça marche :

fichier motspartout_options.php
- $tables_jointures[$table_principale]= 'mots';
+ $tables_jointures[$table_principale]=
str_replace('spip_','mots_',$table_principale);

excuses moi, je ne peux pas tester actuellement, mais il me semble que tu devrais garder la ligne:
$tables_jointures[$table_principale]= 'mots';

mais aussi ajouter la nouvelle ligne:
$tables_jointures[$table_principale]= str_replace('spip_','mots_',$table_principale);

sinon, titre_mot ne marchera pas, non?

(je dis cela apres avoir observé ecrire/inc/interface.php)

tu peux me dire si ça va pour toi et je ferais un commit et les tests ce soir (probablement).

Pierre

Pierre Basson wrote:

voici mon diff pour que ça marche :

fichier motspartout_options.php
- $tables_jointures[$table_principale]= 'mots';
+ $tables_jointures[$table_principale]=
str_replace('spip_','mots_',$table_principale);

hop

C'est compatible avec $table_prefix ça ?

--

Olivier G.
http://www.lespacedunmatin.info/blog/

On 14 Dec, 2006, at 00:10, Olivier G. wrote:

Pierre Basson wrote:

voici mon diff pour que ça marche :

fichier motspartout_options.php
- $tables_jointures[$table_principale]= 'mots';
+ $tables_jointures[$table_principale]=
str_replace('spip_','mots_',$table_principale);

hop

C'est compatible avec $table_prefix ça ?

normalement oui, c'est pas le vrai nom de la table, c'est l'alias pour spip avec spip_ qui sera remplacé plus tard.

enfin, c'est ce que j'ai compris en regardans ecrire/public/interface.php, mais ya pas vraiment de documentation à priori.
Mais je n'ai rien pour tester, alors je vous laisse confirmer ou infirmer.

Pierre