Page 2 of 2

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 4:37 pm
by Tata
cmb wrote:Hm, die Seite zeigt mehrere Deprecated-Warnings an, was nicht sein sollte, siehe https://cmsimpleforum.com/viewtopic.php?f=2&t=12456.
Genau den Code hatte in der index.php gehabt und doch wurden die "Deprecated" da. Jetzt habe ich die Seite geöffnet, und sie sind schon weg.
Mit dem Rest, gehe ich sofort spielen.
Vielan Dank.

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 5:33 pm
by Tata
cmb wrote:Wirklich lesbar wird's aber erst, wenn man entsprechende Funktionen definiert, so dass man etwa schreiben könnte:

Code: Select all

} elseif (isMenuTime($time) && !isWeekend()) {
Klar, das wage ich zu versuchen erst nachdem ich PHP Universität absolviert habe :lol: .
Übrigens, bedeuten diese zwei Abfragen nicht das gleiche? Ist die Letzte nich überföüssig?

Code: Select all

!$plugin_cf['sitr']['weekend'] || !in_array(date('w'), array(0, 6)) 
Und wovon weisst dann der Skript, wass 'weekend' eigentlich bedeutet?
Falls ich ein Variable 'free_day' in config.php definieren würde, etwa

Code: Select all

$plugin_cf['sitr']['free_day_1']] = "2017-02-28";
$plugin_cf['sitr']['free_day_2'] = "2017-03-01"; 
oder irgendwie mit array

Code: Select all

$plugin_cf['sitr']['free_days'] = "2017-02-28", "2017-03-01", "2017-03-02", "2017-03-04"; 
,dann wäre es noch mehr flexible.
In meinem Fall nur ganz theoretisch und unumsetzbar :oops: .

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 6:23 pm
by cmb
Tata wrote:Übrigens, bedeuten diese zwei Abfragen nicht das gleiche? Ist die Letzte nich überföüssig?

Code: Select all

!$plugin_cf['sitr']['weekend'] || !in_array(date('w'), array(0, 6))
Ich muss zugeben, dass $plugin_cf['sitr']['weekend'] nicht gerade selbsterklärend ist. Gemeint ist damit ein Boolescher Wert (true oder false), der angibt, ob Wochenenden besonders berücksichtigt werden. Ist dieser nicht gesetzt, dann wird der zweite Ausdruck gar nicht erst ausgewertet. Ist er aber gesetzt, dann kommt es nur auf den zweiten Ausdruck an (das ist dann so wie vor dieser Änderung).
Tata wrote:Falls ich ein Variable 'free_day' in config.php definieren würde, etwa
[…]
,dann wäre es noch mehr flexible.
Ja, auf jeden Fall.
Tata wrote:In meinem Fall nur ganz theoretisch und unumsetzbar :oops:.
Das ist eigentlich gar nicht so schwer. Am einfachsten geht es mit

Code: Select all

$plugin_cf['sitr']['free_days']="2017-02-28,2017-03-01,2017-03-02,2017-03-04";
Das müsste zunächst in ein echtes Array konvertiert werden:

Code: Select all

$freeDays = explode(',', $plugin_cf['sitr']['free_days']);
$freeDays = array_map('trim', $freeDays); // entfernt überflüssige Leerzeichen     
Dann müsstest Du Dir das aktuelle Datum in entsprechendem Format liefern lassen:

Code: Select all

$today = date('Y-m-d'); 
Und dann einfach prüfen, ob das aktuelle Datum in der Liste vorkommt:

Code: Select all

in_array($today, $freeDays) 
Wenn das true ergibt, dann wird das Menü nicht angezeigt.

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 7:28 pm
by Tata
Scheint zu funktionieren. Die Seite wurde aktualisiert, aber die "DEPRECATED" sind wieder da, obwohl die index.php hat die Einstellung

Code: Select all

<?php

/**
 * @version $Id: index.php 1479 2015-01-25 20:05:20Z cmb69 $
 */

ini_set('display_errors', 0);

if (is_readable('./cmsimple/userprelude.php')) {
    include './cmsimple/userprelude.php';
}
include('./cmsimple/cms.php'); 
Was aber noch schlimmer ist, beim Pagemanageraufruf bekomme ich
Error: Invalid XML: <br />
<b>Deprecated</b>: Methods with the same name as their class will not be constructors in a future version of PHP; Filebrowser_Controller has a deprecated constructor in <b>/www/c/m/u13296/public_html/_sub/sitr_plugin/plugins/filebrowser/classes/Filebrowser_Controller.php</b> on line <b>31</b><br />
<br />
<b>Deprecated</b>: Methods with the same name as their class will not be constructors in a future version of PHP; Filebrowser_View has a deprecated constructor in <b>/www/c/m/u13296/public_html/_sub/sitr_plugin/plugins/filebrowser/classes/Filebrowser_View.php</b> on line <b>28</b><br />
<br />
<b>Deprecated</b>: Methods with the same name as their class will not be constructors in a future version of PHP; XH_Pages has a deprecated constructor in <b>/www/c/m/u13296/public_html/_sub/sitr_plugin/cmsimple/classes/Pages.php</b> on line <b>28</b><br />
<br />
<b>Deprecated</b>: Methods with the same name as their class will not be constructors in a future version of PHP; Pagemanager_Controller has a deprecated constructor in <b>/www/c/m/u13296/public_html/_sub/sitr_plugin/plugins/pagemanager/classes/Controller.php</b> on line <b>26</b><br />
<root><item id="pagemanager-0" title="Welcome" data-pdattr="1"><content><name>Welcome</name></content></item><item id="pagemanager-1" title="Change Log" data-pdattr="1"><content><name>Change Log</name></content></item><item id="pagemanager-2" title="Show Content in Time Range" data-pdattr="1"><content><name>Show Content in Time Range</name></content></item><item id="pagemanager-3" title="Content before Start Time" data-pdattr="1"><content><name>Content before Start Time</name></content></item><item id="pagemanager-4" title="Content in Time" data-pdattr="1"><content><name>Content in Time</name></content></item><item id="pagemanager-5" title="Content after Stop Time" data-pdattr="1"><content><name>Content after Stop Time</name></content></item><item id="pagemanager-6" title="Content on Weekend" data-pdattr="1"><content><name>Content on Weekend</name></content></item></root>
und der Pagemanager unendlich versucht zu loaden.
Und also im Adminmodus
NOTICE: Undefined variable: plugin_tx
/www/c/m/u13296/public_html/_sub/sitr_plugin/cmsimple/functions.php:2640
NOTICE: Undefined variable: o
/www/c/m/u13296/public_html/_sub/sitr_plugin/plugins/sitr/index.php:30

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 7:34 pm
by Tata
Ich habe XHdebug ausgeschalltet und die NOTICEN sind weg. Ich verstehe aber nicht, wieso die da waren auch wenn ich nicht eingelogget war.

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 10:23 pm
by cmb
Tata wrote:Ich habe XHdebug ausgeschalltet und die NOTICEN sind weg. Ich verstehe aber nicht, wieso die da waren auch wenn ich nicht eingelogget war.
Kannst Du bitte mal ausprobieren, was passiert wenn Du den Debug-Modus wieder aktivierst?

Re: Restaurant mit TagesMenu

Posted: Mon Feb 13, 2017 11:36 pm
by Tata
Noch - nachdem ich dem Plugin auf ainer Seite nutzen wollte - habe ich noch einige Typos gefunden, and auch habe ich mit tem Code gespielt und bisschen erweitert. Neue Version ist auf der Seite zum [url=http://sitr_plugin.cmsimple.sk/userfiles/downloads/sitr_XH_v03a.zip]DOWNLOAD[/url] bereit.

Nachdem XHdebug eingeschaltet ist, sind auch die Notizen wieder da und Pagemanager wird nicht föllig geladen.

Re: Restaurant mit TagesMenu

Posted: Tue Feb 14, 2017 9:03 am
by isometric
Ich habe das Plugin geladen und die menutime.html in ein template reinkopiert. da läuft alles Problemlos durch und erzeugt folgende Ausgabe:

Code: Select all

<div class="heading">
     </div>     
                    
<div class="day-time">
     Tuesday,  hod.</div>

<div class="in">
     
     <div align="center">
          <div class="actual" id="actual">
               <br>
          </div> o 01:00
     </div></div>

<div class="menu_footer">
           <br>          <br>      01:00 - 01:00 hod. 
     <br>     
</div>

Re: Restaurant mit TagesMenu

Posted: Tue Feb 14, 2017 9:22 am
by Tata
Die datei menutime.html sollte eigentlich nicht dabei sein. Die kann man löschen, ich nehme sie aus. Es war nur der Code rausgenommen aus der template.htm auf der Seite, wo der Code direkt im template geschrieben war.
Jetzt praucht man den PluginAufruf auf die Seite stellen und im template dann die Seite in normalen Newsbox aufrufen. Im Content braucht man dann noch die nötige Seiten erstellen (schau in config.php an).
Wenn ich Zeit finde, schreibe ich auch Hilfedatei dazu.

Re: Restaurant mit TagesMenu

Posted: Thu Feb 16, 2017 11:20 am
by Tata
Demo page and new download is made at [url]http://sitr_plugin.cmsimple.sk[/url]