Les avertissements suivants se sont produits :
Warning [2] Undefined array key 0 - Line: 1640 - File: showthread.php PHP 8.2.18 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/showthread.php 1640 errorHandler->error_callback
/showthread.php 915 buildtree




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Résolu] Cgcalendar:trier les résultats dans le foreach de $events
#11
Réunion: Reportée :-)

Voilà le code. Le but était simple, comme vous l'aviez bien résumé, afficher des entraînements du jour + afficher un message "Pas d'entraînement" s'il n'y en a pas ou s'il n'y en a plus.

Le code est celui fourni par le template "Evénements à venir" (orig_upcominglist_template.tpl). J'ai simplement ajouté votre solution.
C'est un site que je fais bénévolement et je commente/traduis toujours les changements apportés pour un éventuel repreneur du site.

Je ne peux malheureusement pas encore vous le montrer à la demande du club

Encore merci pour votre aide

Code :
[== Indéfini ==]
<div class="cal-upcominglist">

{$training=0} /* Initialisation de la variable $training qui va nous permettre de savoir s'il y a des entraînements. Statut actuel: pas d'entraînement */

{foreach from=$events key=key item=event}

{if $event.event_date_start|date_format:"%Y-%m-%d" == $smarty.now|date_format:"%Y-%m-%d"}{*Test pour vérifier s'il y a des entraînements le jour courant. Conservez bien le date_format="%Y-%m-%d"*}

{$training=1}{*Il y au moins 1 entraînement, donc variable $training passe en statut : entraînement aujourd'hui*}

    <div class="calendar-event">
    <div class="training-title">{$event.event_title}</div>

    {if $event.event_date_start == $event.event_date_end || $event.event_date_end == 0}
<div class="date-terrain">
    <div class="calendar-date-from"><span class="calendar-date-title">{$lang.date}: </span>{$event.event_date_start|date_format:'%e %B %Y'} </div>
    {else}
    {if $event.event_date_start|date_format:"%d%m%Y" == $event.event_date_end|date_format:"%d%m%Y"}
<div class="date-terrain">
    <div class="calendar-date-from"><img src="/uploads/images/layout/****.png" width="32" height="16" align="absmiddle" /> &nbsp; de {$event.event_date_start|date_format:'%H:%M'} à {*$lang.to*} {$event.event_date_end|date_format:"%H:%M"}</div>
    
    {/if}
    {/if}
    
      {if isset($event.fields)}{*Récupération des champs supplémentaires: dans quelle salle se donne l'entraînement*}
    <div class="calendar-fields">
      {foreach $event.fields as $fieldname => $fieldrec}
        {*$fieldname*}<!--:&nbsp;--><img src="/uploads/images/layout/****.png" width="32" height="16" aligne="absmiddle" /> &nbsp; {$fieldrec.field_value}<br/>
      {/foreach}
    </div>
  {/if}
</div>
    </div>


{/if}{* Fin du test "entraînement aujourd'hui?" *}
{/foreach}
{if !$training} {*Vérification de l'existence de la variable $training. Sa valeur est-elle = zéro (en d'autres mots, elle n'existe pas) alors pas d'entraînement alors affichage du message*}

Plus d'entrainement aujourd'hui

{/if}
</div>


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)