Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 05. Mai 2011 12:28
- rage_all
- kennt CMS/ms
- Ort: Augsburg
- Registriert: 09. März 2011
- Beiträge: 288
[GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Hallo deutsche CMSMS-Gemeinde!
Dies ist mein erster Post auf der deutschen Plattform, in den letzten Jahren habe ich (unter demselben Nick) nur auf der .org gepostet. Ich will jetzt nicht altes Zeug aufwärmen (das evtl. auch schon wieder längst gegessen ist - wer weiß), jedenfalls hoffe ich hier mehr Feedback auf meine gelegentlichen Fragen zu bekommen und selbst Antworten geben zu dürfen...
In diesem Sinne, hier bin ich
Seit einiger Zeit suche ich generell nach einer Art "Öffnungszeiten-Script". Mir hätte das gar nicht CMSMS-Spezifisch sein müssen, allerdings konnte ich gar nicht wirklich etwas finden, dass zu dem von mir gewünschten Ergebnis führt. Deswegen erstmal die beabsichtigte Lösung / Produkt - damit es nachvollziehbar wird:
Wenn ein User auf die Internetseite kommt, soll in einem Feld / DIV / Content-Block / etc. etwas angezeigt werden (falls ein Modul draus würde, wollte ich das so flexibel wie möglich halten (Grafik, Text, HTML, PHP, JS, etc.)), und zwar nach Serverdatum und Server-Uhrzeit.
Sprich: Montag morgens um 9.31 Uhr z.B. "Ja, wir haben geöffnet", wo noch um 9.29 Uhr stand "Zurzeit geschlossen" oder "Wir sind ab 9.30 Uhr gerne für Sie da...".
Natürlich könnte man das Ganze zu einem riesigen Teil aufblasen, wofür der geneigte User schon studiert haben müsste um es überhaupt einrichten zu können (an Tagen vor Feiertagen haben wir bis XY geöffnet, etc.). So weit will ich gar nicht gehen.
Montag: Ab X.oo Uhr, bis Y.oo Uhr, evtl. noch (damit es auch für andere Sinn macht) mit Mittagspausen - fettisch.
Dienstag: Ab X.oo Uhr, bis Y.oo Uhr
Mittwoch:
...
Würde sich das Modul an Beliebtheit erfreuen (und da ich bisher nichts dergleichen gefunden habe, fürchte ich leider, dass es das nicht wird), könnte man das ja noch immer so erweitern, dass es z.B. bei einer Feiertagsdatenbank des Landes X nachfragt und an den gesetzlichen Feiertagen eine entsprechend andere Meldung bringt, oder in einer iCal-Datei auf dem eigenen Server die Daten ausliest, etc.
Überhaupt: Im Grunde könnte es für den Anfang sogar Text-Basiert sein (z.B. Text-Datei öffnen via fopen()) und ohne Backend auskommen... Es ist im Prinzip ja "nur" eine if-then Sache ... nur mit Wochentagen und Uhrzeiten etwas komplizierter...
Meine Kenntnisse reichen hierfür leider kein Stück.
Wenn jemand Lust hätte, sich die Arbeit zu machen, übersetze ich es gerne ins Englische (oder anderes ins Deutsche ) oder sehe, was ich sonst tun kann.
Wenn auch Du das nun liest, und auch nicht programmieren könntest, aber Verwendung für ein solches Teil hättest, schließe Dich mit Deinem Beitrag hier mit an - ich bin auch sehr neugierig ob ich ganz alleine mit solchen "verrückten" Ideen bin oder noch mehrere hierfür Verwendung fänden...
Schöne Grüße
Mike
Offline
#2 05. Mai 2011 12:43
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Hallo Mike
Dies ist mein erster Post auf der deutschen Plattform, in den letzten Jahren habe ich (unter demselben Nick) nur auf der .org gepostet.
Schön, dass du auch hierher gefunden hast!
Seit einiger Zeit suche ich generell nach einer Art "Öffnungszeiten-Script".
Mal um die Ecke gedacht - eine Öffnungszeit ist doch nix anderes als eine wiederkehrende Veranstaltung (im weitesten Sinne). Ich hab die Umsetzung zwar noch nicht zu Ende gedacht, aber möglicherweise könnte dich eine Kalender-Lösung weiterbringen (CGCalendar) ...
Offline
#3 05. Mai 2011 13:18
- nicmare
- Server-Pate
- Registriert: 15. Dezember 2010
- Beiträge: 1.314
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
versteh jetzt nicht ganz das problem oder ich unterschätze das.
was spricht gegen $smarty.now?
{assign var=thehour value=$smarty.now|date_format:'%H'}
{if $thehour > 0 AND $thehour < 11}
mach irgendwas vormittags
{/if}
Beitrag geändert von nicmare (05. Mai 2011 13:18)
Meine Projekte:
Dashcam-Test | Babyphone-Testberichte | Türspionkameras
Offline
#4 05. Mai 2011 13:26
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Dagegen spricht, dass nicht nur die Stunden abgedeckt werden sollen, sondern auch Wochenenden, Feiertage, Firmenausflüge etc. - diese gigantische if-Batterie möchte ich nicht bearbeiten .
Offline
#5 05. Mai 2011 14:20
- owr_web
- Server-Pate
- Registriert: 16. Dezember 2010
- Beiträge: 543
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Ich hoffe man verzeiht mir das Fremdgehen , aber ich hätte da was gefunden, dass nicht wirklich viel Arbeit macht und eventuell ohne Modul oder sonstwas auskommt. Sieht mir recht übersichtlich aus:
http://www.xtc-modified.org/forum/topic.php?id=8620
Und mich wundert grad - die gurgelei mit den Suchwörtern "Smarty" und "Feiertage" brachte mir dies als erstes Ergebnis - ich hab mich schon auf Seite 20 aufwärts eingestellt
Wenns weiterhilft haben sich gleich mindestens zwei gefreut (ich wegen Zufallstreffer)
Offline
#6 05. Mai 2011 18:24
- Wurst2008
- Gast
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Damit hättes Du aber auch das Problem was Cyberman angesprochen hat.
#7 06. Mai 2011 07:02
- owr_web
- Server-Pate
- Registriert: 16. Dezember 2010
- Beiträge: 543
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
naja von gigantisch kann ja bei dem Script keine Rede mehr sein. Insbesondere, da ja nicht viel anzupassen ist.
Andererseits wäre dieses Modul von Jos ein Ansatz:
http://dev.cmsmadesimple.org/projects/holidays
Bei Durchsicht ist mir auch aufgefallen, dass es ja eine "System-Veriable" für easter_date gibt, somit kann man eigentlich die Feiertage alle abfangen, die nicht am selben Tag sind, denn die sind ja in Abhängigkeit des Ostersonntags.
Beitrag geändert von owr_web (06. Mai 2011 07:03)
Offline
#8 06. Mai 2011 07:31
- Connie
- Server-Pate
- Ort: Gribow
- Registriert: 12. Dezember 2010
- Beiträge: 216
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
also ich hab mal ein UDT gemacht, das die nächsten 4 Dienstage ausgibt (Sendetermine)
mit diesen Datumsfunktionen (ganz einfaches PHP) kann man etliches anrichten
als Orientierung:
[== PHP ==]
//function
function nextWeeksDay($date_begin,$nbrweek)
{
$nextweek=array();
for($i = 1; $i <= $nbrweek; $i++) {
$nextweek[$i]=date('d.m.Y', strtotime('+'.$i.' week',$date_begin));
}
return $nextweek;
}
/// end function
echo "<p>Die wöchentliche Radio-Sendung des Jazzbüro Hamburg<br />";
echo"Die nächsten Sende-Termine:<br />";
$date_begin = strtotime('last Tuesday');
$nbrweek=4;
// call function
$result=nextWeeksDay($date_begin,$nbrweek);
// Preview
for($i = 1; $i <= $nbrweek; $i++) {
echo ' '.$result[$i].'<br />';
}
echo "jeweils von 23:00 bis 01:00 Uhr auf <b>Tide 96.0!</b></p>";
und jetzt wißt Ihr auch gleich, wann es wieder gute Musik zu hören gibt (auch per Internet-Stream)!
Cheers, Connie
Offline
#9 08. Mai 2011 12:03
- rage_all
- kennt CMS/ms
- Ort: Augsburg
- Registriert: 09. März 2011
- Beiträge: 288
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Hej!
Ich seh schon, ganz so easy wie gedacht, ist es wohl doch nicht...
Vor einigen Jahren hab ich mal was gebastelt, auf Datumsbasis. Wir wollten wie Google immer wieder das Logo grafisch modifiziert zeigen, ohne dass sich jemand übers Osterwochenende über den Content machen muss.
Also Script --> Suche in Ordner XY nach einer "datum().jpg"-Datei. Wenn Du eine gefunden hast, nimm diese, sonst die standard.jpg.
So ähnlich dachte ich mir das hier auch, nur eben mit 0 (Montag), 1 (Dienstag), etc. über fopen() oder read() (oder so ähnlich )
Im Prinzip mit den Variablen X, Y und Z:
X = Tag
Y = Start-Zeit
Z = End-Zeit
if jetzt(hour) > "Y" AND < "Z" THEN ... ELSE - nochmal, komplett Sinnfrei und Ahnungslos...
@owr_web: Vielen Dank! Das hab ich nicht gefunden, ist aber genau der Ansatz den ich suche. Wenn ich es schaffe das zu portieren, geb ich nochmal Bescheid und stelle es zur Verfügung.
Ein anderes Ding über dem ich gerade sitze, ist CSS-Änderung auf Uhrzeit- oder Tageszeit-Basis. Endprodukt wäre eine Website auf der die Sonne auf- und untergeht, bzw. der Mond, je nach Uhrzeit. Aber das geht mit JS ja relativ simpel und mein letzter Stand war, dass CSS in CMSMS nicht mit PHP-Tags arbeitet (oder ist das überholt?).
Vielen Dank für Eure Antworten!
Schöne Grüße
Mike
Offline
#10 08. Mai 2011 13:01
- uniqu3
- Server-Pate
- Ort: Feldkirchen in Kärnten
- Registriert: 20. November 2010
- Beiträge: 305
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Bezüglich css schrieb Around so eine kleine Anleitung im Niederländisch .org bereich.
http://forum.cmsmadesimple.org/viewtopi … 52&t=45363
CSS müsste aber eher direkt im template eingebunden werden oder {cms_stylesheet} switchen statt wie er es gezeigt hat im Stylesheet. Stylesheet wird ja gecacht daher bin ich ja nicht davon überzeugt das es mit seiner methode im Stylesheet funktionieren würde, ausser man leert Cache automatisch nach zeit.
Ausserdem gabs ja mal so eine Yahoo API verbunden mit wetter Daten, müsste ich aber danach in meinem Bookmark chaos graben.
Offline
#11 09. Mai 2011 07:17
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
So ähnlich dachte ich mir das hier auch, nur eben mit 0 (Montag), 1 (Dienstag),
Das klingt nun wieder nach Nicmares $smarty.now Vorschlag - z.Bsp.
[== HTML ==]
<img src="uploads/images/{$smarty.now|date_format:'%A'}.jpg" />
Dann musst du nur noch Montag.jpg, Dienstag.jpg usw. erstellen ...
Offline
#12 09. Mai 2011 07:33
- nockenfell
- Moderator
- Ort: Gontenschwil, Schweiz
- Registriert: 09. November 2010
- Beiträge: 2.934
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Die reinen Feiertage lassen sich in der Schweiz und wahrscheinlich auch in Deutschland problemlos ausrechnen:
function getHolidays($year=0){
if($year == 0){$year = date("Y");}
//Feiertage
$holidays = array();
$holidays["neujahr"] = mktime(0,0,0,1,1,$year);
$holidays["berchtoldstag"] = mktime(0,0,0,1,2,$year);
$holidays["karfreitag"] = easter_date($year)-(2*86400);
$holidays["ostermontag"] = easter_date($year)+(1*86400);
$holidays["auffahrt"] = easter_date($year)+(39*86400);
$holidays["pfingstmontag"] = easter_date($year)+(50*86400);
$holidays["ersteraugust"] = mktime(0,0,0,8,1,$year);
$holidays["weihnachtspause1"] = mktime(0,0,0,12,23,$year);
$holidays["heiligabend"] = mktime(0,0,0,12,24,$year);
$holidays["weihnachten"] = mktime(0,0,0,12,25,$year);
$holidays["stephanstag"] = mktime(0,0,0,12,26,$year);
$holidays["weihnachtspause2"] = mktime(0,0,0,12,27,$year);
$holidays["weihnachtspause3"] = mktime(0,0,0,12,28,$year);
$holidays["weihnachtspause4"] = mktime(0,0,0,12,29,$year);
$holidays["weihnachtspause5"] = mktime(0,0,0,12,30,$year);
$holidays["silvester"] = mktime(0,0,0,12,31,$year);
//return
return $holidays;
}//function
[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog / Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox
Offline
#13 10. Mai 2011 14:36
- rage_all
- kennt CMS/ms
- Ort: Augsburg
- Registriert: 09. März 2011
- Beiträge: 288
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Hej!
Wie schon angedeutet, im ersten Schritt wäre es mir noch gar nicht um die Feiertage gegangen (aber sicher, das für später im Auge zu behalten wäre keine schlechte Idee gewesen...).
Was ich eigentlich vermeiden wollte, war diesen ganzen Block (@owr_web: Vielen Dank für den Link! Der hat's gebracht... ) im Template zu haben:
[== Smarty ==]
{assign var=today value=$smarty.now|date_format:"%d.%m"}
{assign var=thetime value=$smarty.now|date_format:"%H%M"}
{assign var=weekday value=$smarty.now|date_format:"%w"}
{assign var=year value=$smarty.now|date_format:"%y"}
{* Tage an denen geschlossen ist: 01.01, 01.05, 03.10, 25.12, 26.12(NI) Statische Feiertage *}
{if $today neq "01.01" and $today neq "01.05" and $today neq "03.10" and $today neq "25.12" and $today neq "26.12" }
{* Osterfeiertage an denen geschlossen ist, vom Jahr abhängig *}
{* 2010: 02.04, 05.04, 13.05, 24.05 - 2011: 22.04, 25.04, 02.06, 13.06 - 2012: 06.04, 09.04, 17.05, 28.05 *}
{if $year eq "2010" and $today neq "02.04" and $today neq "05.04" and $today neq "13.05" and $today neq "24.05" }
{elseif $year eq "2011" and $today neq "22.04" and $today neq "25.04" and $today neq "02.06" and $today neq "13.06" }
{elseif $year eq "2012" and $today neq "06.04" and $today neq "09.04" and $today neq "17.05" and $today neq "28.05" }
{else}
{* Öffnungszeiten: Mo-Fr von 10.00Uhr bis 18.00 Uhr *}
{if $weekday gt "1" and $weekday lt "6" and ( ( $thetime gt "0900" and $thetime lt "1800" ) ) }
{global_content name="freecall"}
{/if}
{* Am Samstag von 10.00Uhr bis um 13.00 Uhr *}
{if $weekday eq "6" and $thetime gt "1000" and $thetime lt "1300"}
{global_content name="freecall"}
{/if}
{/if}
{/if}
Daher die Idee mit der TXT-Datei oder UDT (hab das mit UDT nicht hinbekommen ... kann UDT kein Smarty?).
Na, nu isses drin und funktioniert hervorragend... Deswegen an dieser Stelle ein herzliches
Dankeschön!
Wer neugierig ist, was daraus geworden ist, kann hier nachgucken...
Es ist der div "Jetzt Termin vereinbaren", der nur während der Öffnungszeiten sichtbar sein sollte...
Mit der Basis kann ich vielleicht auch an der anderen Seite basteln, wo ich aber fünferlei Öffnungszeiten habe...
Schöne Grüße
Michael
Edit:
@nockenfell: Sag mal, tippst Du sowas mal nebenbei ... oder hattest Du das noch aus einer Arbeit herumliegen?
Beitrag geändert von rage_all (10. Mai 2011 14:37)
Offline
#14 10. Mai 2011 14:49
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
kann UDT kein Smarty?
Nein.
Das ist ein grundlegendes Verständnisproblem.
UDT = PHP
Template = (X)HTML und Smarty - um HTML und PHP Code voneinander trennen zu können.
(Smarty macht am Ende auch nichts weiter als unter der Haube PHP Code auszuführen. Ist sozusagen ein Wrapper, um PHP Code aus dem Layout rauszuhalten. Du kannst also im Template mit Hilfe von Smarty den PHP Code eines UDT ausführen lassen, ohne den PHP Code zu kennen. Bzw. umgekehrt, den PHP Code im UDT ändern, ohne das Layout anzufassen.)
Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)
Offline
#15 11. Mai 2011 08:09
- owr_web
- Server-Pate
- Registriert: 16. Dezember 2010
- Beiträge: 543
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
wobei wenn du es mit smarty machst ja noch die Möglichkeit ist, das ganze in den global content "freecall" einzufügen.
dann also den Inhalt des jetzigen GCB (zweimal) direkt dort drinnen stehen haben wo du jetzt den GCB aufrufst. Dann hast du das ganze auch aus dem Template draußen und musst dort nur mehr den GCB aufrufen
Oder vielleicht funktionierts auch so, dass du ihn nur einmal eintragen musst (bin mir aber nicht ganz sicher mit den Klammersetzungen !! )
{if ( $weekday gt "1" and $weekday lt "6" and ( ( $thetime gt "0900" and $thetime lt "1800" ) ) ) or ( $weekday eq "6" and $thetime gt "1000" and $thetime lt "1300" )}
Inhalt des jetzigen GCB
{/if}
sind eigentlich um die thetime 0900 und 1800 zwei Klammern notwendig, imho eher nicht - oder liege ich da falsch?
Beitrag geändert von owr_web (11. Mai 2011 08:11)
Offline
#16 11. Mai 2011 13:17
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Nöö, liegst du nicht ...
Offline
#17 04. Juli 2011 10:39
- rage_all
- kennt CMS/ms
- Ort: Augsburg
- Registriert: 09. März 2011
- Beiträge: 288
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Hab ich das doch fast wieder vergessen... *ooops*
Erstmal vielen Dank für Eure Hilfe!
Das Problem ist gelöst und ich möchte natürlich die passende Lösung den nächsten nicht vorenthalten...
Also, die erstrebte Lösung war einen Block "kostenlos anrufen über den Dienst XY" auf der Seite anzuzeigen, aber natürlich nur, wenn auch jemand ans Telefon ginge (also nur innerhalb der regulären Öffnungszeiten).
Diesen Block habe ich in das Template, an der Stelle wo der Button erscheinen soll:
[== Smarty ==]
{assign var=today value=$smarty.now|date_format:"%d.%m"}
{assign var=thetime value=$smarty.now|date_format:"%H%M"}
{assign var=weekday value=$smarty.now|date_format:"%w"}
{assign var=year value=$smarty.now|date_format:"%y"}
{* Tage an denen geschlossen ist: 01.01, 01.05, 03.10, 25.12, 26.12(NI) Statische Feiertage *}
{if $today neq "01.01" and $today neq "01.05" and $today neq "03.10" and $today neq "25.12" and $today neq "26.12" }
{* Osterfeiertage an denen geschlossen ist, vom Jahr abhängig *}
{* 2010: 02.04, 05.04, 13.05, 24.05 - 2011: 22.04, 25.04, 02.06, 13.06 - 2012: 06.04, 09.04, 17.05, 28.05 *}
{if $year eq "2010" and $today neq "02.04" and $today neq "05.04" and $today neq "13.05" and $today neq "24.05" }
{elseif $year eq "2011" and $today neq "22.04" and $today neq "25.04" and $today neq "02.06" and $today neq "13.06" }
{elseif $year eq "2012" and $today neq "06.04" and $today neq "09.04" and $today neq "17.05" and $today neq "28.05" }
{else}
{* Öffnungszeiten: Mo-Fr von 10.00Uhr bis um 13.15 Uhr und 15.10 bis 18.00 Uhr *}
{if $weekday gt "1" and $weekday lt "6" and ( ( $thetime gt "0900" and $thetime lt "1800" ) ) }
{global_content name="freecall"}
{/if}
{* Am Samstag von 10.00 Uhr bis um 14.00 Uhr *}
{if $weekday eq "6" and $thetime gt "1000" and $thetime lt "1300"}
{global_content name="freecall"}
{/if}
{/if}
{/if}
Lieber wäre mir gewesen, im Template nur einen Aufruf liegen zu haben - z.B. über Smarty. Wie von NaN geschrieben ist das aber ja mit Smarty nicht möglich - zum umstricken nach PHP fehlen mir aber die Kenntnisse, insbesondere damit es später noch mit CMSms harmoniert (einen Snippet rein auf PHP krieg ich vielleicht noch hin, hab aber immer Angst, dass ich mir im CMSms was zerschieße mit einer falschen Variable, etc...).
Der Größte Teil des Block ist aus dem Xtc-Forum - Vielen Dank an owr_web für den nützlichen Link!
In dem globalen Inhaltsblock ist dann der Aufruf über die Seite des Dienstanbieters, der den Anruf ermöglicht. Interessehalber hier der Inhalt dessen:
[== HTML ==]
<div class="freecall">
<h2>Jetzt Termin vereinbaren...</h2>
<p><a onclick="window.open('http://www.stadtbranchenbuch.com/callout/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/callnumber.html','Kostenlos anrufen','width=800,height=600,left='+(screen.availWidth/2-400)+',top='+(screen.availHeight/2-300)+'');return false;" href="http://www.stadtbranchenbuch.com/callout/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/callnumber.html">
<img src="http://de.static.opendi.com/images/call_for_free.png" alt="kostenlos anrufen" /> </a> <br />
<a href="http://www.stadtbranchenbuch.com/">Ein Service von<br /> stadtbranchenbuch.com</a></p>
</div><!-- eof freecall -->
Wichtig: Wer sich dasselbe überlegt, sollte einen kurzen Blick in die Nutzungsbedingungen werfen - der Dienstbetreiber möchte natürlich genannt werden...
Wer das Ergebnis ansehen möchte, kann das gerne hier tun. Zum Vergleich eben einmal innerhalb und einmal außerhalb der Öffnungszeiten (kurz vor neun / nach neun, bzw. achtzehn Uhr ist an den meisten Wochentagen sicher ganz gut).
Also, nochmals Vielen lieben Dank für Eure Hilfe!
Thema ist gelöst und die Lösung ist hoffentlich einem anderen noch nützlich...
Schöne Grüße
Michael
Offline
#18 04. Juli 2011 20:22
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Danke für deine Lösung!
Offline
#19 01. März 2012 00:16
- rage_all
- kennt CMS/ms
- Ort: Augsburg
- Registriert: 09. März 2011
- Beiträge: 288
Re: [GELÖST] Business Hours - Wir haben geöffnet ... oder so ähnlich
Ich markiere grad meine ganzen Beiträge als "gelöst" (jetzt, wie ich herausgefunden hab wie das geht ).
Dabei ist mir noch was eingefallen...
Ich habe ein UDT für Öffnungszeiten gebaut, was ich gerne mit Euch teilen möchte.
Es ist rudimentär, es könnte viel effektiver sein, gaaanz sicher.
Und trotzdem: Ich fühle mich wie Tom Hanks in "Cast away - Verschollen" als er schrie "ICH HABE FEUER GEMACHT!!!"
Los geht's:
[== php / UDT ==]
$weekday = strftime("%u");
$hour = strftime("%H");
switch ($weekday) {
case "1":
if ($hour >=10) { $open=true; } else { $open=false; }
//Startzeit Montag und Endzeit Sonntagnacht
break;
case "2":
if (($hour >=10) or ($hour<1)) { $open=true; } else { $open=false; }
//Startzeit Dienstag und Endzeit Montagnacht
break;
case "3": if (($hour >=10) or ($hour<1)) { $open=true; } else { $open=false; }
//Startzeit Mittwoch und Endzeit Dienstagnacht
break;
case "4": if (($hour >=10) or ($hour<1)) { $open=true; } else { $open=false; }
//Startzeit Donnerstag und Endzeit Mittwochnacht
break;
case "5": if (($hour >=10) or ($hour<1)) { $open=true; } else { $open=false; }
//Startzeit Freitag und Endzeit Donnerstagnacht
break;
case "6": if (($hour >=16) or ($hour<2)) { $open=true; } else { $open=false; }
//Startzeit Samstag und Endzeit Freitagnacht
break;
case "7": if (($hour >=15) or ($hour<2)) { $open=true; } else { $open=false; }
//Startzeit Sonntag und Endzeit Samstagnacht
break;
default: $open = false;
}
if ($open == true) {
echo "<div style=\"margin:0 0 2em; text-align:center;\">
<img src=\"template/mronions/sign_open.jpg\" alt=\"Ja, wir haben geöffnet\" title=\"Jetzt haben wir für Dich Geöffnet!\" /> </div>";
} else {
echo "<div style=\"margin:0 0 2em; text-align:center;\"> <img src=\"template/mronions/sign_closed.jpg\" alt=\"Wir haben leider zu\" title=\"Geschlossen\" /> </div>";
}
?>
<p>Damit Ihr hoffentlich nie ganz umsonst vor unserer Türe steht, findet Ihr hier unsere aktuellen Öffnungszeiten:</p>
<table cellspacing="5" cellpadding="5" id="opening-hours">
<tr<? if($weekday==1) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td width="65%"><? if($weekday==1) {echo "Heute";} else { echo "Montag";} ?></td>
<td width="15%" align="right">10.00</td>
<td width="5%" align="center">-</td>
<td width="15%">01.00</td>
</tr>
<tr<? if($weekday==2) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td><? if($weekday==2) {echo "Heute";} else { echo "Dienstag";} ?></td>
<td align="right">10.00</td>
<td align="center">-<br /></td>
<td>01.00</td>
</tr>
<tr<? if($weekday==3) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td><? if($weekday==3) {echo "Heute";} else { echo "Mittwoch";} ?><br /></td>
<td align="right">10.00</td>
<td align="center">-<br /></td>
<td>01.00</td>
</tr>
<tr<? if($weekday==4) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td><? if($weekday==4) {echo "Heute";} else { echo "Donnerstag";} ?></td>
<td align="right">10.00<br /></td>
<td align="center">-<br /></td>
<td>01.00</td>
</tr>
<tr<? if($weekday==5) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td><? if($weekday==5) {echo "Heute";} else { echo "Freitag";} ?></td>
<td align="right">10.00<br /></td>
<td align="center">-<br /></td>
<td>02.00</td>
</tr>
<tr<? if($weekday==6) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td><? if($weekday==6) {echo "Heute";} else { echo "Samstag";} ?></td>
<td align="right">16.00</td>
<td align="center">-</td>
<td>02.00</td>
</tr>
<tr<? if($weekday==7) { echo " class=\"today\""; } else { echo " onmouseover=\"this.style.fontSize='120%'\" onmouseout=\"this.style.fontSize='100%'\""; } ?>>
<td><? if($weekday==7) {echo "Heute";} else { echo "Sonntag";} ?></td>
<td align="right">15.00</td>
<td align="center">-<br /></td>
<td>00.00</td>
</tr>
</table>
<? $heute = date("D M j G:i:s T Y"); // Sat Mar 19 17:16:18 MST 2011
echo "<!-- current server time is " . $heute . " and the hour value is " . $hour . " -->";
echo "<!-- current weekday is " . $weekday ." and the open status is " . $open . " -->";
Wer das Ergebnis des Codes im Wildlife sehen möchte, schaut mal auf die Öffnungszeiten vom Mr. Onions.
Ich weiß, auf der Seite ist nicht alles 100% optimal, vor allem PageSpeed. Aber chic isse, mehr sollte sie gar nicht sein. Und bei so viel chic, darf sie auch länger brauchen ... oder nicht?
Offline
Seiten: 1