Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 30. April 2014 06:55

sven411
hat von CMS/ms gehört
Registriert: 26. April 2014
Beiträge: 9

[GELÖST] if-Bedingung in Template

Guten Morgen,

unter Version 1.9.4.1 lief in Verbindung mit dem CGCalendar 1.6.1 folgendes Template.

<!-- EM-Detail -->

{*--- Abfrage ob Entries: 1. Variable setzen  ---*}
{assign var="entries" value="1"}

<div class="cal-detail">
    <div class="calendar-event">
        {assign var=month_number value=$event.event_date_start|date_format:"%m"}
        {assign var=end_month_number value=$event.event_date_end|date_format:"%m"}
        {if $event.event_date_start == $event.event_date_end || $event.event_date_end == 0}
            {* --- Kalenderblatt-Look --- *}
            <div class="calendar-date-from">
                <span class="day">{$event.event_date_start|date_format:"%d"}</span>
                <span class="month">{$event.event_date_start|date_format:"%b"}</span>
                <span class="year">{$event.event_date_start|date_format:"%Y"}</span>
             {* <span class="time">{$event.event_date_start|date_format:"%R"}</span> *}
            </div>
        {else}
            {* wiederkehrend oder mit abw. Enddatum *}
            {if $event.event_date_start|date_format:"%d%m%Y" == $event.event_date_end|date_format:"%d%m%Y"}
   
                <div class="calendar-date-from">
                    <span class="day">{$event.event_date_start|date_format:"%d"}</span>
                    <span class="month">{$event.event_date_start|date_format:"%b"}</span>
                    <span class="year">{$event.event_date_start|date_format:"%Y"}</span>
                 {* <span class="time">{$event.event_date_start|date_format:"%R"}</span> *}   
                 {* ### to-Date AUS ... {$lang.to} {$event.event_date_end|date_format:"%H:%M"} ... ### *}</div>
            {else}
                {* mit Enddatum (das Endatum wird anders angezeigt. Siehe unten.)*}
                <div class="calendar-date-from">
                     <span class="day">{$event.event_date_start|date_format:"%d"}</span>
                     <span class="month">{$event.event_date_start|date_format:"%b"}</span>
                     <span class="year">{$event.event_date_start|date_format:"%Y"}</span>
                    {* <span class="time">{$event.event_date_start|date_format:"%R"}</span> *}
                </div>
            {/if}
        {/if}

        {* ### Check ob Eintrag mit abweichendem End-Datum ### *}
        {if $event.event_date_start == $event.event_date_end || $event.event_date_end != 0}
   
            {* ### Das "BIS-Datum" speziell gestyled ### *}
            <div class="to-date">
                <div>{$event.event_date_start|date_format:"%A"} {$event.event_date_start|date_format:"%d"}. {$month_names[$month_number]}</div>
                <div class="to">{$lang.to}</div>
                <div>{$event.event_date_end|date_format:"%A"} {$event.event_date_end|date_format:"%d"}. {$month_names[$end_month_number]}</div>
           
                {* ### mein custom field "Zeit" ### *}
                {if $event.fields.Zeit}
                    <div class="zeit">{$event.fields.Zeit}</div>
                {/if}
            </div>
            <div class="clearer"></div>
        {else}
            {* ### Wochentag als ganzes Wort ### *}
            <div class="weekday">{$event.event_date_start|date_format:"%A"}</div>
      
            {* ### mein custom field "Zeit" ### *}
            {if $event.fields.Zeit}
                <div class="zeit">{$event.fields.Zeit}</div>
            {/if}
        {/if}

        <h1 class="cal-entrytitle {if $event.fields.Zeit}mit-zeit{/if}">{$event.event_title}</h1>
        {* ### Zusammmenfassung auf der Detailsseite AUS ....
            {if $event.event_summary !="" && $event.event_details ==""}
                <div class="calendar-summary">{$event.event_summary}</div>
            {/if}
        ....### *}
        {if $event.event_details !="" && $event.event_details != "<br/>"}
            <div class="calendar-details">{eval var=$event.event_details}</div>
        {/if}
   
        {* --- Formbuilder Reservierung ------------------------ *}
        <div class="reservierung">
            {foreach from=$categories key=category item=item}
                {* Achtung beim Umbenennen der Kategorie *}
                {if $item.category_name <> "mit Reservierungsformular"}
                    {assign var="eventDatum" value=$event.event_date_start|date_format:"%d.%m.%Y"}
                    {assign var="datum_und_titel" value="`$eventDatum`, `$event.event_title`"}
                    {FormBuilder form='brunch-reservierung' value_fld77=$datum_und_titel}
                {/if}
            {/foreach}
        </div>
        {* --- / Formbuilder Reservierung ------------------------ *}
    </div>
    <div class="calendar-returnlink bulletlinkback">{$return_link}</div>
</div>

Jetzt habe ich die 1.11.10 mit dem CGCCalender 1.13.4 laufen.

Im unteren Abschnitt befindet sich eine if-Abfrage, die in der Vorherigen Version bewirkt hat, dass ein Reservierungsformular angezeigt wurde, wenn das Kalenderevent dies erforderte. Allerdings wird mir das Formular wie auch der Backlink nicht mehr angezeigt. Wisst ihr einen Rat?

Offline

#2 30. April 2014 07:12

Tranquillius
probiert CMS/ms aus
Ort: Leipzig
Registriert: 10. September 2013
Beiträge: 52

Re: [GELÖST] if-Bedingung in Template

Ich würde mal schauen, was in der Variable $categories steht.

{$categories|print_r} hilft dir hier beim Debuggen.

Ich vermute Key category_name existiert nicht, bzw. die {if}-Bedingung schlägt fehl. Was für ein Operator soll eigentlich "<>" sein? Meinst du hier eventuell "==", falls du Prüfen willst, ob $item.category_name den Wert "mit Reservierungsformular" hat?

Offline

#3 30. April 2014 07:19

sven411
hat von CMS/ms gehört
Registriert: 26. April 2014
Beiträge: 9

Re: [GELÖST] if-Bedingung in Template

Wenn ich "{$categories|print_r}" einfüge, spuckt er mir nur "1" aus, auf der alten Seite jedoch:

Array ( [category_id] => 6 [category_name] => mit Reservierungsformular [category_order] => 50 ) Array


Das "<>" habe ich nur probiert und vergessen wieder in "==" zu ändern. Dachte das bedeutet wie bei PHP "ungleich" und kehrt somit die Bedingung um.

Beitrag geändert von sven411 (30. April 2014 07:23)

Offline

#4 30. April 2014 07:21

Tranquillius
probiert CMS/ms aus
Ort: Leipzig
Registriert: 10. September 2013
Beiträge: 52

Re: [GELÖST] if-Bedingung in Template

Was spuckt denn {$categories|print_r} aus?

Offline

#5 30. April 2014 07:55

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] if-Bedingung in Template

Ist CGCalendar ein aktualisiertes Modul?

Falls ja, aktuelles Template und auf "Auf programmseitige Voreinstellungen zurück setzen" klicken.

Hintergrund ist der, dass sich Variablen
geändert haben (wenn ich mich recht entsinne wink) .

Offline

#6 01. Mai 2014 13:38

Cherry
arbeitet mit CMS/ms
Registriert: 15. Dezember 2010
Beiträge: 529

Re: [GELÖST] if-Bedingung in Template

Der CGCalendar wurde mit der Version 1.11.4 grundlegend geändert. Unter anderem fiel z.B. der return Link unter den Tisch, weil er ( laut release notes) nicht richtig funktionierte. Ich habe meine Kalender Module noch nicht geupdatet. Bei mir tun noch die aus der Serie 1.10.x ihre Dienste. Sie funktionieren auch mit CMSms 1.11.x noch. CGExtensions sollten dann aber dazu passen, also auch hier keine topaktuelle Version haben (bei mir 1.34)

Offline

#7 01. Mai 2014 15:34

sven411
hat von CMS/ms gehört
Registriert: 26. April 2014
Beiträge: 9

Re: [GELÖST] if-Bedingung in Template

Ich konnte es wie folgt lösen:

{* --- Formbuilder Reservierung ------------------------ *}
        <div class="reservierung">
            {foreach from=$categories key=category item=item}
              {* Achtung beim Umbenennen der Kategorie *}
                {if $item.category_name <> "mit Reservierungsformular"}
                {if $event.category_names == "mit Reservierungsformular"}
                   {assign var="eventDatum" value=$event.event_date_start|date_format:"%d.%m.%Y"}
                    {assign var="datum_und_titel" value="`$eventDatum`, `$event.event_title`"}
                    {FormBuilder form='brunch-reservierung' value_fld77=$datum_und_titel}
                {/if}
            {/foreach}
        </div>
        {* --- / Formbuilder Reservierung ------------------------ *}

Vielen Dank für eure Unterstützung.

Sven

Offline