Wochenanzeige

Fragen, Antworten zum Forum.
Benutzeravatar
Simon
Schlüsselmeister
Beiträge: 185
Registriert: 17. Juni 2007 17:38

Wochenanzeige

Beitrag von Simon » 22. April 2010 19:21

Hey, könnte man nicht irgendwo ein Anzeige im Forum einblenden, die sagt, ob der nächste Mittwoch Woche A oder Woche B ist?
Make it so!

Tesarion
Cultist
Beiträge: 21
Registriert: 21. April 2010 22:17
Wohnort: Elmshorn
Kontaktdaten:

Re: Wochenanzeige

Beitrag von Tesarion » 22. April 2010 22:12

Also vom Programmieraufwand ist es eigentlich recht einfach du läßt dir von date() die Kalenderwochennummer geben. Das Modulo 2 und dann schauen ob 0 oder 1 wobei das eine für A und das andere für B steht.

Wen du das auf der jeweiligen Seite einbaust kannst da den ein A oder B erscheinen lassen.

Gruß

Marcus

Benutzeravatar
0mark
Plot Device
Beiträge: 82
Registriert: 13. März 2007 11:29
Wohnort: 53.62205, 10.104911
Kontaktdaten:

Re: Wochenanzeige

Beitrag von 0mark » 23. April 2010 21:02

Done.

@Matthias: in whatweek.txt steht wo zu suchen ist wenn was zu ändern ist.

Tesarion
Cultist
Beiträge: 21
Registriert: 21. April 2010 22:17
Wohnort: Elmshorn
Kontaktdaten:

Re: Wochenanzeige

Beitrag von Tesarion » 23. April 2010 22:53

Hab trotz rotem A es erst nach ein wenig suchen Gefunden.

Würd es evtl. etwas größer machen, weis ja nicht wieviel Platz da ist, bevor es sich mit dem Layout beisst?

Benutzeravatar
Simon
Schlüsselmeister
Beiträge: 185
Registriert: 17. Juni 2007 17:38

Re: Wochenanzeige

Beitrag von Simon » 23. April 2010 23:28

Ja, ein bisschen auffälliger müsste es schon sein, und am Besten sollte da was stehen wie "Am xx.xx. ist Woche Y."
Wenn sich das jemand anguckt, dann will er ja in der Regel wissen, was am nächsten Mittwoch ist, nicht, was am letzten Mittwoch war.
Make it so!

Tesarion
Cultist
Beiträge: 21
Registriert: 21. April 2010 22:17
Wohnort: Elmshorn
Kontaktdaten:

Re: Wochenanzeige

Beitrag von Tesarion » 24. April 2010 10:11

Glaub so müßte es gehen:

Code: Alles auswählen

$KW = date(W);
$Wochentag = date(N); //1 = Mo,.., 7 =  So 
$ungeradeWoche = $KW % 2;
$Wochenbuchstabe = '';

if $ungeradeWoche
{
  switch ($Wochentag) {
    case 1,2,3: $Wochenbuchstabe = 'B';
      break;
    case 4,5,6,7: $Wochenbuchstabe = 'A';
      break;
  }
}
else
{
  switch ($Wochentag) {
    case 1,2,3: $Wochenbuchstabe = 'A';
      break;
    case 4,5,6,7: $Wochenbuchstabe = 'B';
      break;
  }
}

if ($Wochentag == 3) // Wenn heute Mittwoch ist
{
  print ("Heute ist $Wochenbuchstabe Woche");
}
else // Sonst nächsten Mittwoch
{
  $Datum = strftime('%d.%m.%Y',strtotime('next Wednesday'));
  print ("Am Mittwoch den $Datum ist $Wochenbuchstabe Woche");
}

Benutzeravatar
0mark
Plot Device
Beiträge: 82
Registriert: 13. März 2007 11:29
Wohnort: 53.62205, 10.104911
Kontaktdaten:

Re: Wochenanzeige

Beitrag von 0mark » 24. April 2010 10:45

Oder so:
( (date('N')>3) ? ((date('W')%2)?'A':'B') : ((date('W')%2)?'B':'A') )

Einen besonderen Text für Mittwoch finde ich nicht nötig. Die nächste Runde am Mittwoch ist bis 21:15 die gleiche wie am Dienstag. Nach 21 Uhr vernachlässigen wir mal.

PS: Wo ich gerade drüber nachdenke, das mit den letzten 2.75 Stunden lässt sich ja auch leicht lösen...
( (date('N', time()+2.75*60*60)>3) ? ((date('W')%2)?'A':'B') : ((date('W')%2)?'B':'A') )

PPS: So sichtbar genug?

PPS: Oder soll die umschaltung mit Beginn der Runde stattfinden? (also +6*60*60)

Tesarion
Cultist
Beiträge: 21
Registriert: 21. April 2010 22:17
Wohnort: Elmshorn
Kontaktdaten:

Re: Wochenanzeige

Beitrag von Tesarion » 24. April 2010 10:48

Viel besser 8)

Und ja die trinären Operatoren und die auch noch verschachtelt geht natürlich auch, bin etwas aus der Übung :(

Benutzeravatar
0mark
Plot Device
Beiträge: 82
Registriert: 13. März 2007 11:29
Wohnort: 53.62205, 10.104911
Kontaktdaten:

Re: Wochenanzeige

Beitrag von 0mark » 24. April 2010 10:50

Niemals Zeilen verschwenden, lesbarkeit ist für Warmduscher :twisted:
(Die Template Engine wird mit mit Hashtables gefüttert, und ich habe die Zeile einfach in die Funktion reinkopiert die den Header füllt. Wollte da nicht all zu sehr rummüllen.)

Benutzeravatar
Simon
Schlüsselmeister
Beiträge: 185
Registriert: 17. Juni 2007 17:38

Re: Wochenanzeige

Beitrag von Simon » 24. April 2010 16:24

Ich glaube, wenn man einfach das Datum dazu schriebe, wäre es garnicht so erheblich, wann genau die Umschaltung statt fände.
Make it so!

Benutzeravatar
0mark
Plot Device
Beiträge: 82
Registriert: 13. März 2007 11:29
Wohnort: 53.62205, 10.104911
Kontaktdaten:

Re: Wochenanzeige

Beitrag von 0mark » 24. April 2010 16:56

Du meinst in der Art:

Die nächste Runde am xx.yy liegt in Block B

?

Benutzeravatar
Simon
Schlüsselmeister
Beiträge: 185
Registriert: 17. Juni 2007 17:38

Re: Wochenanzeige

Beitrag von Simon » 25. April 2010 11:45

Ja, so was.
Make it so!

ellen
Redshirt
Beiträge: 1
Registriert: 18. April 2007 23:40

Re: Wochenanzeige

Beitrag von ellen » 25. April 2010 21:38

…ferner finde ich, dass die Wochenanzeige, wenn sie schon da oben steht, zumindest stimmen sollte. Das tut sie momentan nämlich nicht. Neustartwoche war A, am 28. ist Runde B!

gez. Simon (an Ellens PC)

Benutzeravatar
0mark
Plot Device
Beiträge: 82
Registriert: 13. März 2007 11:29
Wohnort: 53.62205, 10.104911
Kontaktdaten:

Re: Wochenanzeige

Beitrag von 0mark » 26. April 2010 17:18

Es zeigt an welche Runde als nächstes spielt, in diesem Fall also Woche B.

*edit* Das mit dem Datum ist jetzt auch eingebaut.

Benutzeravatar
Simon
Schlüsselmeister
Beiträge: 185
Registriert: 17. Juni 2007 17:38

Re: Wochenanzeige

Beitrag von Simon » 29. April 2010 19:03

Ein Punkt noch und ich bin happy!

*edit* Äähm, kann das sein, dass das Datum krass falsch ist? Der 2.5. ist ein Sonntag. Wie spielen am 5.5. … dann immerhin in Woche A.
Make it so!

Antworten