Submitted by Pierre Varlet on
Bonjour
J'ai suivi à la lettre http://drupal.org/node/1479460 : "Signing up for events with CCK Signup (Drupal 7)"
La création d'évènements se passe bien.
Mais l'inscription à un évènement, si elle s'effectue, retourne un message d'erreur :
Notice : Undefined index: fr dans _cck_signup_validate_signup_node() (ligne 102 dans /var/www/clients/client109/web170/web/sites/all/modules/cck_signup/cck_signup.module)
La ligne 102 est la dernière de la séquence suivante :
function cck_signup_validate_signup_node($form, &$form_state) {
$values = $form_state['values'];
$type = $values['type'];
$field_name = variable_get('cck_signup_signup_type' . $type, FALSE);
$override = user_access('override cck signup restrictions');
$event = FALSE;
$language = $values['language'];
if (!$event = node_load($values[$field_name][$language][0]['nid'])) {
return;
}
Est-ce que cela peut expliquer des comportements inattendus ensuite lorsqu'on supprime des évènements ou qu'on cancelle des inscriptions? La base de données est-elle corrompue ?
Que faut-il corriger pour supprimer ces messages d'erreur ?
Cordialement
Pierre
Je ne crois pas qu’il y ait
Permalien Soumis par hles le 3 Juillet, 2012 - 16:49
Je ne crois pas qu'il y ait de gros problème; votre erreur est de type "notice". Malgré tout, il est préférable de la régler.
A priori, vous soumettez dans votre formulaire des valeurs dont la langue serait 'fr', alors que votre contenu "Event" auquel elle se rapporte ne le serait pas. Du coup,
$values[$field_name][$language]
(en remplaçant $language par 'fr') n'est pas trouvé et vous avez un "undefined index".C'est peut être un manque de contrôle de la part de CCK Signup, mais vous pouvez peut être résoudre le problème en checkant les langues de vos nodes "Event".
Je vous dis tout ça a vue de nez, je me trompe peut-être et il faudra peut-être aller plus loin dans le debuggage.
Effectivement et grand
Permalien Soumis par Pierre Varlet le 3 Juillet, 2012 - 23:01
Effectivement et grand merci !
Cette piste m'a siffit pour résoudre le problème :
J'ai activé "gestion multilingue" dans "options de publications" des types de contenu "event" et "signup".
Très cordialement
Pierre