Znowu kalendarz! Oznaczenie daty, w której są wydarzenia
|
tomaszziemann |
Dodany dnia 27.01.2006 20:31:56
|
Początkujący
Postów: 165 Pomógł: 2
v7.02.03 Data rejestracji: 11.12.2005 14:56
|
Czy możecie podpowiedzieć, co należy zmienić, aby data w kalendarzu nie była podmieniana przez grafikę (ten zielony kwadracik), tylko zmieniała swój kolor na inny (np. czerwony), kiedy w jakimś dniu dodane jest wydarzenie.
Trzeba przyznać, że trochę dziwnie wygląda kalendarz, w którym do wielu dni jest przypisane jakies wydarzenie, bo wtedy zamiast dat mam same kwadraciki.
Pozdrawiam.
Co możesz zrobić dziś, zrób jutro.
|
|
|
|
Wścibski Gość |
Dodany dnia 23.12.2024 11:25:39
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
Shaolin |
Dodany dnia 27.01.2006 21:53:05
|
Bywalec
Postów: 888
Data rejestracji: 23.10.2004 14:59
|
Rzuć kod kalendarza...
Z fusów/gwiazd nie wróżę, bez tego trudno będzie Ci pomóc...
working
|
|
|
|
tomaszziemann |
Dodany dnia 27.01.2006 22:07:42
|
Początkujący
Postów: 165 Pomógł: 2
v7.02.03 Data rejestracji: 11.12.2005 14:56
|
No chyba kod jest w Laboratorium MOD-ułów, nie? Nie chciałem zbytnio ubarwiać tematu, no ale skoro tak, prosze bardzo. Korzystam z infusiona event_calendar_panel.
<?php
/*---------------------------------------------------
| Event Calendar Infusion v1.00
| © Giuseppe Nichelini (nick56) 2004
| http://www.nichelini.it
|
---------------------------------------------------*/
if (!defined("IN_FUSION")) { header("Location:../../index.php"); exit; }
echo "<link rel='stylesheet' href='".INFUSIONS."event_calendar_panel/css/styles.css' type='text/css'>";
if (file_exists(INFUSIONS."event_calendar_panel/locale/".$settings['locale'].".php")) {
// Load the locale file matching the current site locale setting.
include INFUSIONS."event_calendar_panel/locale/".$settings['locale'].".php";
} else {
// Load the infusion's default locale file.
include INFUSIONS."event_calendar_panel/locale/English.php";
}
openside($locale['Cal100']);
if (isnum($dd)&& isnum($mm) && isnum($yy)) {
if ((substr($dd,0,1) <> "0") AND ($dd < 10)) { $dd = "0".$dd; }
$data = $yy."/".$mm."/".$dd;
$timestamp = mktime(0,0,0,intval($mm),intval($dd),intval($yy));
}
else {
$data = date("Y/m/d",time());
$datatmp = explode("/",$data);
$timestamp = mktime(0,0,0,intval($datatmp[1]),intval($datatmp[2]),intval($datatmp[0]));
$dd = $datatmp[2];
$mm = $datatmp[1];
$yy = $datatmp[0];
}
ModCalendar($dd, $mm, $yy);
@closeside();
function ModCalendar($dd, $mm, $yy)
{
global $lo_tmois,$lo_tjours,$tdaysBR,$db_prefix;
$tmois = $lo_tmois;
$tjours = $lo_tjours;
$today = getdate();
$month = $mm;
$year = $yy;
$monthday = 1;
$prevyear = ($month==1) ? $year-1 : $year;
$prevmonth = ($month==1) ? 12 : $month-1;
$nextyear = ($month==12) ? $year+1 : $year;
$nextmonth = ($month==12) ? 1 : $month+1;
$firstday = getdate(mktime(0, 0, 0, $month, $monthday, $year));
$lastday = date("t", mktime(0, 0, 0, $month, $monthday, $year));
$dbqueryCal = "SELECT DAYOFMONTH(event_data) FROM ".$db_prefix."events WHERE YEAR(event_data)='$year' AND MONTH(event_data)='$month' AND event_deleted='NO'";
$qCal = mysql_query($dbqueryCal) OR die($dbqueryCal);
$entries = array();
for ($i=0;$i<mysql_num_rows($qCal);$i++) {
list($entry_date) = mysql_fetch_row($qCal);
$entries[] = $entry_date;
}
echo "<table width='100%' cellpadding='0' cellspacing='0' class='tableBorders'>\n";
echo "<tr><td align=\"center\" height=20 valign=\"middle\" width=\"20\">\n";
echo "<a href=\"".FUSION_SELF."?dd=$dd&mm=$prevmonth&yy=$prevyear\"><img src=".INFUSIONS."event_calendar_panel/images/left.gif border='0'></a>";
echo "</td>\n";
echo "<td height=20 width=\"100\" align=\"center\" valign=\"middle\" colspan='5'><b>".$tmois[$month-1]." ".$year."</b></td>\n";
echo "<td align=\"center\" height=20 valign=\"middle\" width=\"20\">\n";
echo "<a href=\"".FUSION_SELF."?dd=$dd&mm=$nextmonth&yy=$nextyear\"><img src=".INFUSIONS."event_calendar_panel/images/right.gif border='0'></a>";
echo "</td></tr>\n";
echo "<tr><td align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[1]."</b></td>
<td height=20 align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[2]."</b></td>
<td height=20 align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[3]."</b></td>
<td height=20 align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[4]."</b></td>
<td height=20 align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[5]."</b></td>
<td height=20 align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[6]."</b></td>
<td height=20 align=\"center\" valign=\"middle\" width=\"20\"><b>".$tdaysBR[0]."</b></td></tr>\n";
while ($monthday <= $lastday)
{
echo "<tr height=\"14\">\n";
for ($i=0;$i<7;$i++)
{
$Cal_class = "tdday";
$fday = $firstday['wday'] == 0 ? 6 : $firstday['wday'] - 1;
if (($i >= $fday && $monthday <= 7) ||
($monthday <= $lastday && $monthday > (7-$fday)))
{
if ($monthday == $today["mday"])
{
if ($month == $today["mon"])
{
if ($monthday == $dd) { $Cal_class = "tddaysel"; }
else { $Cal_class = "tdoggi"; }
}
elseif ($i == 5 || $i == 6)
{
if ($monthday == $dd) { $Cal_class = "tddaysel"; }
else { $Cal_class = "tdweekend"; }
}
elseif ($monthday == $dd) { $Cal_class = "tddaysel"; }
else
{
if ($monthday == $dd) { $Cal_class = "tddaysel"; }
else { $Cal_class = "tdday"; }
}
}
elseif ($i == 6)
{
if ($monthday == $dd) { $Cal_class = "tddaysel"; }
else { $Cal_class = "tdweekend"; }
}
elseif ($monthday == $dd) { $Cal_class = "tddaysel"; }
else { $Cal_class = "tdday"; }
$dayway = INFUSIONS."event_calendar_panel/event_calendar.php?yy=".$year."&mm=".$month."&dd=".$monthday;
$eventway = INFUSIONS."event_calendar_panel/event_calendar.php?yy=".$year."&mm=".$month."&dd=".$monthday;
if (in_array($monthday, $entries))
{echo "<td height=20 align=\"center\" valign=\"middle\" width=\"20\" class=\"".$Cal_class."\"><b><a href=\"".$eventway."\"><img src=\"".INFUSIONS."event_calendar_panel/images/calbullet.gif\" border=0></a></b></td>\n"; }
else { echo "<td height=20 align=\"center\" valign=\"middle\" width=\"20\" class=\"".$Cal_class."\"><b><a href=\"".$dayway."\">".$monthday."</a></b></td>\n"; }
$monthday++;
$Cal_class = "tdday";
}
else { echo "<td height=20 valign=\"middle\" width=\"20\" class=\"".$Cal_class."\"> </td>\n"; }
}
echo "</tr>\n";
$Cal_class = "tdday";
}
echo "</table>\n";
}
?>
Co możesz zrobić dziś, zrób jutro.
|
|
|
|
Shaolin |
Dodany dnia 27.01.2006 22:17:05
|
Bywalec
Postów: 888
Data rejestracji: 23.10.2004 14:59
|
Powinieneś mieć do tego jeszcze arkusz stylów - w samym skrypcie nie ma prawie rzadnych obrazków, są tylko odwołania do klas tabeli przy poszczególnych wydarzeniach.
//edit: matko... jak ja piszę...
//powinno być oczywiście żadnych...
Edytowane przez Shaolin dnia 27.01.2006 22:19:12
working
|
|
|
|
tomaszziemann |
Dodany dnia 27.01.2006 22:23:47
|
Początkujący
Postów: 165 Pomógł: 2
v7.02.03 Data rejestracji: 11.12.2005 14:56
|
Tak? A co powiesz o fragmencie końcowym kodu w tym pliku?
if (in_array($monthday, $entries))
{echo "<td height=20 align=\"center\" valign=\"middle\" width=\"20\" class=\"".$Cal_class."\"><b><a href=\"".$eventway."\"><img src=\"".INFUSIONS."event_calendar_panel/images/calbullet.gif\" border=0></a></b></td>\n"; }
else { echo "<td height=20 align=\"center\" valign=\"middle\" width=\"20\" class=\"".$Cal_class."\"><b><a href=\"".$dayway."\">".$monthday."</a></b></td>\n"; }
$monthday++;
Bo wydaje mi się, że to będzie własnie tutaj, ale nie mam pojęcia jak to zmienić. No ale dobra, podaję zawartość CSSa
@charset "iso-8859-1";
/*******************************************************/
/* AGENDA TD */
/*******************************************************/
.tableAgenda {
border-spacing:0px;
border-collapse:collapse;
}
.tdoggi {
background-color:#B7C2C9;
font-family:Verdana,Tahoma,Arial,Sans-Serif;
font-size:11px;
color:#000000;
font-weight:bold;
text-align:center;
text-decoration:none;
border:1px
solid #000066;
}
.tdweekend {
background-color:#B7C2C9;
font-family:Verdana,Tahoma,Arial,Sans-Serif;
font-size:11px;
color:#000000;
font-weight:bold;
text-align:center;
text-decoration:none;
}
/*.tdday {
background-color:#FFFFFF;
font-family:Tahoma,Helvetica;
font-size:11px;
color:#115E94;
font-weight:bold;
text-align:center;
text-decoration:none;
}*/
.tddaysel {
background-color:#BCE0FA;
font-family:Verdana,Tahoma,Arial,Sans-Serif;
font-size:11px;
font-weight:bold;
text-align:center;
text-decoration:none;
border:1px solid #000066;
}
Co możesz zrobić dziś, zrób jutro.
|
|
|
|
Shaolin |
Dodany dnia 27.01.2006 22:36:14
|
Bywalec
Postów: 888
Data rejestracji: 23.10.2004 14:59
|
Tak, rzeczywiście - wydarzenia oznaczone są calbullet.gif, czyli chodzi o fragment kodu, który podałeś...
Spróbuj zamienić to:
<a href=\"".$eventway."\"><img src=\"".INFUSIONS."event_calendar_panel/images/calbullet.gif\" border=0></a>
Na to:
<a href=\"".$eventway."\" style=\"color: red;\">".$monthday."</a>
Nie testowane, ale powinno działać :-).
working
|
|
|
|
tomaszziemann |
Dodany dnia 27.01.2006 22:49:43
|
Początkujący
Postów: 165 Pomógł: 2
v7.02.03 Data rejestracji: 11.12.2005 14:56
|
Kłaniam się i życzę udanego weekendu. Za tę pomoc należy się!
A tak serio to działa i dzięki.
Co możesz zrobić dziś, zrób jutro.
|
|
|
|
Shaolin |
Dodany dnia 27.01.2006 23:51:53
|
Bywalec
Postów: 888
Data rejestracji: 23.10.2004 14:59
|
Spoko . Nie ma za co .
Rozumiem, że mogę już zamknąć temat .
working
|
|
|