Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Event im Minikalender hervorheben
#1
Hallo!

Ich verwende im Portal den standardmäßigen Minikalender (Monatsübersicht).
Hier wird das Kästchen mit dem aktuellen Tag in einer anderen Farbe dargestellt. Smile

Nun möchte ich, dass auch die Tage an denen ein Event eingetragen ist, auch farblich hervorgehoben werden, damit man gleich sieht, dass an diesem Tag Einträge & Events vorhanden sind.

Wo kann ich dies ändern?
Bitte um Hilfe!

Danke!


Gruß!
Fatmax
#2
Dazu braucht man wahrscheinlich ein Plugin.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#3
Hmmm?
Aber der aktuelle Tag wird ja auch hervorgehoben!
#4
Wenn du kein Problem damit hast, php-dateien zu ändern, dann kannst du folgendes machen:

Öffne die calendar.php und suche die Zeile:

Code:
            eval("\$day_bits .= \"".$templates->get("calendar_weekrow_day")."\";");

darüber fügst du folgendes ein:

Code:
                if(is_array($events_cache) && array_key_exists("{$day}-{$calendar_month}-{$calendar_year}", $events_cache))
            {
                $total_events = count($events_cache["$day-$calendar_month-$calendar_year"]);
                
                    foreach($events_cache["$day-$calendar_month-$calendar_year"] as $event)
                    {
                        
                        if($event['private'] == 1)
                        {
                            $day_class = " private_cal_event";
                            break;
                        }
                        else
                        {
                            $day_class = " public_cal_event";
                        }
                        
                    }
                
            }

zusätzlich musst du in der global.css deines Themes noch die zwei styles definieren

Code:
.private_cal_event {background-color:lightgreen}
.public_cal_event {background-color:lightblue}

Damit wird es im Standard-Kalender farblich hervorgehoben. Ein Privates Event habe ich dabei stärker gewichtet und wenn ein solches vorhanden ist, wird die Farbe des öffentlichen Events "überschrieben"    
#5
Hallo!
Erstmal Danke für die Hilfe.

Habe alles gemacht wie beschrieben, jedoch wird im Kalender keine Farbe angezeigt.
Tage mit einem Event werden Weiß hinterlegt, obwohl die Klassen im global.css eingetragen sind.

Hier mein derzeitiger Code:

PHP-Code:
//
            
if(is_array($events_cache) && array_key_exists("{$day}-{$calendar_month}-{$calendar_year}"$events_cache))
            {
                
$total_events count($events_cache["$day-$calendar_month-$calendar_year"]);
                
                    foreach(
$events_cache["$day-$calendar_month-$calendar_year"] as $event)
                    {
                        
                        if(
$event['private'] == 1)
                        {
                            
$day_class "private_cal_event";
                            break;
                        }
                        else
                        {
                            
$day_class "public_cal_event";
                        }
                        
                    }
                
            }
            
//
            
eval("\$day_bits .= \"".$templates->get("calendar_weekrow_day")."\";"); 


2. Frage:
Wie kann ich im Minikalender dies auch farblich hervorheben?

Danke für die Hilfe!

Fatmax
#6
hast du mal einen Link zum kalender in deinem Forum?
#7
versuche mal diese css klasse so funzt es bei mir.

PHP-Code:
.private_cal_event {
background-color:lightgreen;
}
.
public_cal_event {
background-color:lightblue;

#8
(28.07.2011, 20:09)sonic1978 schrieb: versuche mal diese css klasse so funzt es bei mir.

PHP-Code:
.private_cal_event {
background-color:lightgreen;
}
.
public_cal_event {
background-color:lightblue;


Wo muss dies hinein?
RedParkz hat ja auch dies angegeben, jedoch funktioniert dies nicht im Minikalender!
#9
Das Problem liegt ja auch am minikalender selbst. Dieser identifiziert die Events nicht richtig. Zumindest die Version diebisch gefunden hatte. Habes das Plugin aber mal ein wenig umgeschrieben sodass es soweit in der tetumgebung klappt. Bin nur noch nicht dazu gekommen e hier zu Posten. Wenn ich weder einen Festnetz DSL Anschluss habe, dann schien ih es hier aber gerne nach
#10
(29.07.2011, 08:42)Fatmax schrieb:
(28.07.2011, 20:09)sonic1978 schrieb: versuche mal diese css klasse so funzt es bei mir.

PHP-Code:
.private_cal_event {
background-color:lightgreen;
}
.
public_cal_event {
background-color:lightblue;


Wo muss dies hinein?
RedParkz hat ja auch dies angegeben, jedoch funktioniert dies nicht im Minikalender!

in der global.css deines Themes


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Foren besonders hervorheben darki 7 2.480 29.11.2011, 18:42
Letzter Beitrag: darki