Probleme d'affichage avec Calendar sur D7

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour à tous!
Je suis sur D7 depuis quelques semaines. Et je me suis attaqué au module Calendar, mais j'ai un problème d'affichage au niveau de la vue du jour. Je m'explique :
J'ai créer un content type Manifestation avec une date de début et un date de fin. Jusque là tout va bien, mais lorsqu'il faut afficher la manifestation dans le calendar ça se gatte. Il affiche bien le premier et le dernier jour de ma manifestation, mais les dates entre ne s'affiche pas sur la vue du jour alors que sur la vue de la semaine ou du mois, ou même de l'année elles apparaissent. Pourtant le "contextual filter" sont les mêmes pour le jour, le mois et l'année ( c'est peut-être de là que vient le problème? ).
Quelqu'un pour m'éclaircir les idées ou me donner une petite piste car là je bloque totalement!

Forum : 
Version de Drupal : 

Bonjour,

Moi aussi je n'arrive pas à créer un événement sur D7.
lorque je crée un événement, il s'affiche à la date du jour de création de l'événement (c'est à dire aujourd'hui le 14/06/2011) alors que j'aimerais que l'événement s'affiche le jour de l'événement (c'est à dire à une date future).
S'il te plait, peux-tu m'aider au cas où tu aurait la solution, en me donnant les (pas à pas) les différentes étapes pour que ça marche...

Merci par avance

Pour l'affichage au bon jour il faut ajouter un "contextual filter" (dans les paramètres avancés) sur la date "field date" (pour moi) des "contents".
Je sias pas si ça t'aide vraiment, car je suis pas très doué pour les explications...

Alors pour être un peu plus clair, dans structure ->views->calendar->edit :
de la tu peux gérer les filtres et l'affichage.
Tu va dans l'onglet advanced puis contextual filter.
Ensuite tu ajoute le nouveau contextual filter -> "Content: Date (field_date) "
Chez moi je prend le "field_date" car j'ai crée un type de contenu avec un champ "date", après je sais pas comment toi tu as fait ça donc je peux pas te dire lequel il faut que tu prenne où si c'est celui là.
J'espère que c'est plus clair.

Je peux pas tellement t'aider... Désolé. En plus il faut que je finnisse mon affichage et j'ai pas vraiment le temps de me pencher sur ton problèeme. J'espère que tu travail sur des copies. Si c'est le cas tu reprend ta dernière instal et tu vois ce qui allais pas et tu fais des test. C'est comme ça que je fais quand je code, ça peut peut-être marcher aussi pour les configurations manuelles.

Bonjour,

Je débute aussi sous Drupal 7.

Je suis en train de mettre Calendar, et j'ai bien suivi cette procédure : je choisis bien Content : Date (field_date) sauf qu'après je n'ai pas field_date dans la liste j'ai créé aussi un champ "date".

Quelqu'un peut m'aider ?

merci d'avance

Apparemment ça ne serait pas le content : date qu'il faut prendre mais le node date, après il y a le choix entre "date value" et "date value2" et il faut en choisir un des deux mais pas les deux sinon il affiche en double l’évènement sur le calendrier.

Et si je choisi le "node date". Alors on le place à quel endroit? Et dans ce cas , on doit supprimer l'ancienne valeur qui se trouvait à cet endroit, et ne laisser que le "node date" ?
Autre question : As-tu essayé, et ça marche chez toi ?

Le node date c'est toujours dans le contextual filter, et oui il faut supprimer l'ancien.

Chez moi ça marche, mais pour les intervalles de date de plus de 2 jours ça plante au niveau de l'affichage sur la vue du jour et de la semaine...
J'ai fais quelques lignes de code pour résoudre le problème, le truc c'est que ça marche très bien hors drupal, mais une fois qu'il faut l'incorporer dedans c'est une autre affaire... Surtout que pour l'enregistrement de valeur dans la BDD Drupal fait appel à pas mal de fonction pour mettre les valeurs à sa sauce. Donc je galère un peu...

Alors, j'ai trouvé un moyen de contourner le problème d'affichage, le seul truc c'est que je ne sais pas quelle fonction appeler pour faire mes insert...

Pour expliquer un peu comment je procède pour ne plus avoir le problème d'affichage sur plusieurs jour, voilà comment je fais :
j'ai décomposer l'intervalle de date par date unique ( ce qui fais que la BDD est bien remplie =S ), je récupère le nid puis je fais mes insert. Le problème c'est que pour faire mes insert, pour le moment, je dois passer par PHPMyAdmin et écrire directement les requêtes...
Quelqu'un pourrait m'aider?
Si vous voulez je posterais le script pour décomposer l'intervalle de date.

Une autre solution que je suis en train d'affiner, c'est de faire des filtre sur les dates ( au niveau des filter criteria). Le seul truc c'est que j'arrive pas à afficher comme il le faut. Mais J'arrive à afficher sur plusieurs jours avec cette technique. Faudrait que quelqu'un voit aussi de son côté, pour voir si il arrvie à afficher correctement.
Voilà mes dernières avancées. Je sais pas si ça vous aide...

Merci pour tes avancées, c'est cool de me tenir au courant.
Moi aussi, de mon côté, je cherche, mais je n'ai pas encore trouvé.
S'il te plait, n'oublie pas de me tenir au courant de tes différentes étapes si tu réussis finalement.

merci d'avance

J'ai abandonné le projet du calendrier... Ça ne convenait pas à mon supérieur...
Je suis désolé, du coup je n'est pas résolu le problème d'affichage et est réaliser autre chose à la place, qui s'apparente plus à une liste ordonné par jour, style Agenda.
Si ça vous intéresse dites le moi.

Bonjour,

Oui ça m'interesse.

Peux-tu m'envoyer s'il te plait les différentes étapes(pas à pas, car je suis débutant sur Drupal 7) que tu as fait pour réaliser ça ?

Merci

Alors d'abord j'ai récupéré quelques parties de code déjà existantes d'autres module, pour pouvoir avoir une base pour mon module ( comme le hook_menu, hook_theme, hook_page, hook_view ), ensuite j'ai remplacé le "hook" par le nom de mon module.
Et puis j'ai réalisé l'affichage de mon "Agenda" dans le hook_page_callback. J'ai fait un tableau avec les dates, les titres, les body, les catégories et un lien pour chaque manifestations vers l'article correspondant.

Le plus long à réalisé c'est d'abord de comprendre comment marche drupal pour l'affichage sur la page et comprendre son langage. Une fois que c'est fait, c'est plus que du simple PHP.

Si tu veux je pourrais t'envoyer mon code une fois que j'aurais fini de le débugger.
Je rajouterai des commentaires pour t'éguiller un peu sur mes démarches et à quoi sert chaque morceaux.

Bonjour et merci pour ta gentillesse

Oui je voudrais bien avoir ton code quand tu auras fini complètement et commenter chaque morceau du programme pour que je comprenne. En plus, je ne comprends pas quand tu me parles des hook. Mais j'espere que tu me l'expliqueras tout ça (pas à pas, car je débute sur Drupal 7).

Merci

Je débute aussi sur drupal. Ça fait moins d'un mois que je suis dessus...
Et j'espère que tu aime le code parce que je suis déjà à plus de 250 lignes et j'ai pas encore totalement résolu le problème de l'affichage sur plusieurs jours...

PS: le "hook" c'est le nom de ton module.

Ca y est!!! Module fini!!!
Juste un problème avec les villes car elles ne sont pas dans la base de donnée.
Je sais pas comment Drupal récupère les valeurs des liste pré-enregistrées.
Si quelqu'un sait, je suis preneur!