Seite 113 von 130
Re: [0.6.1] Simple Calendar
Verfasst: 07.10.2009 12:51
von BB-BF-BM
Hallo!
Darf eine der beiden Zeiten fest gewählt werden?
Also z.B. dass man auf jeden Fall zwei Tage vorher benachrichtigt wird und wahlweise auch zu einem anderen Zeitpunkt?
oder müssen beide Zeitabstände vom Benutzer individuell festgelegt werden können?
Re: [0.6.1] Simple Calendar
Verfasst: 14.10.2009 00:59
von einfachkarl
schlect wäre es nicht wenn man es wählen könnte, aber im grunde ist es egal. solange der admin (ich) es einstellen kann wann der eine fixtermin ist ist es ok.
Re: [0.6.1] Simple Calendar
Verfasst: 18.10.2009 14:16
von BB-BF-BM
Guten Tag!
Wenn einer der Termine fest eingestellt wird, ist nur eine kleine Änderung nötig:
/calendar/cronjob.php
Davor einfügen:
Code: Alles auswählen
$check_time = $now + 3 * 86400;
$day = cal_days::get_day_by_time($check_time);
echo $day->get_dmY()."<br />\n";
if ($dates = $day->get_dates())
{
foreach (cal_users::$users as $_user)
{
echo "<br />\n".$_user->name.": <br />\n";
if (!$_user->notify_mode)
{
continue;
}
$date_num = 0;
$_dates = $_dates_bbc = array();
foreach ($dates as $date)
{
echo "+ ".$date->name."<br />\n";
if (!$_user->is_invited_to_date($date))
{
continue;
}
if (!$_user->gets_notified_of_date($date))
{
continue;
}
echo "| - notify<br />\n";
++$date_num;
$_dates[] = '* "' . $date->name . '"'."\n"
. '<' . $date->url->get_built(false, true) . '>';
$_dates_bbc[] = '[*]"[url=' . $date->url->get_built(false, true) . ']' . $date->name . '[/url]"';
}
if (!$date_num)
{
continue;
}
$vars = array(
'DATES' => implode("\n\n", $_dates),
'DATES_BBC' => '[list]' . implode("\n", $_dates_bbc) . '[/list]',
'NOTIFY_DAYS' => $_user->notify_days,
'NOTIFY_DAY' => $day->get_format($_user->day_format)
);
cal_notify::add_msg($_user, 'notify', $vars, false);
echo "notify user<br />\n";
}
}
In der ersten hinzugefügten Zeile
gibt die 2 die Anzahl der Tage bis zu einem Termin an, damit man benachrichtigt wird. Im Moment wird man also auf jeden Fall zwei Tage vor einem Termin benachrichtigt. Diesen Fixtermin kannst du natürlich auch ändern. Von dieser Zeitspanne unabhängig kann jeder Benutzer weiterhin einen weiteren Termin festlegen, wann er benachrichtigt werden möchte.
Re: [0.6.1] Simple Calendar
Verfasst: 18.10.2009 21:47
von einfachkarl
grüße,
da sag ich doch mal herzlich danke!
habs grad eingebaut und werde dir rückmeldung geben ob alles funzt.
dankeschön.
Re: [0.6.1] Simple Calendar
Verfasst: 19.10.2009 09:46
von BB-BF-BM
Hallo!
Mir ist gerade ein kleiner Fehler aufgefallen: Mit dieser Änderung würden möglicherweise zwei Benachrichtigungen versendet.
Ersetze den eingefügten Code gegen:
Code: Alles auswählen
$_notify_days = 2;
$check_time = $now + $_notify_days * 86400;
$day = cal_days::get_day_by_time($check_time);
echo $day->get_dmY()."<br />\n";
if ($dates = $day->get_dates())
{
foreach (cal_users::$users as $_user)
{
echo "<br />\n".$_user->name.": <br />\n";
if (!$_user->notify_mode)
{
continue;
}
if ($_user->notify_days == $_notify_days)
{
continue;
}
$date_num = 0;
$_dates = $_dates_bbc = array();
foreach ($dates as $date)
{
echo "+ ".$date->name."<br />\n";
if (!$_user->is_invited_to_date($date))
{
continue;
}
if (!$_user->gets_notified_of_date($date))
{
continue;
}
echo "| - notify<br />\n";
++$date_num;
$_dates[] = '* "' . $date->name . '"'."\n"
. '<' . $date->url->get_built(false, true) . '>';
$_dates_bbc[] = '[*]"[url=' . $date->url->get_built(false, true) . ']' . $date->name . '[/url]"';
}
if (!$date_num)
{
continue;
}
$vars = array(
'DATES' => implode("\n\n", $_dates),
'DATES_BBC' => '[list]' . implode("\n", $_dates_bbc) . '[/list]',
'NOTIFY_DAYS' => $_user->notify_days,
'NOTIFY_DAY' => $day->get_format($_user->day_format)
);
cal_notify::add_msg($_user, 'notify', $vars, false);
echo "notify user<br />\n";
}
}
Um den Fix-Zeitpunkt der Benachrichtigung einzustellen, kannst du in der ersten Zeile
die 2 gegen eine beliebige andere Zahl ersetzen.
Re: [0.6.1] Simple Calendar
Verfasst: 19.10.2009 23:15
von einfachkarl
oki, danke dir.
ich habs mal geändert... müßte eigentlich morgen eine mail bekommen wenn das alles hinhaut.
Re: [0.6.1] Simple Calendar
Verfasst: 20.10.2009 17:22
von Fabian
Hallo,
der Kalender-Mod ist wirklich gut gelungen!
Ein kleines Problem habe ich noch.
[ externes Bild ]
Für den Text wäre eigentlich genug Platz, trotzdem wird umgebrochen und das letzte Wort erscheint in einer neuen Zeile. Geht es auch, dass es einzeilig erscheint?
Gruß,
Fabian
Re: [0.6.1] Simple Calendar
Verfasst: 20.10.2009 17:46
von BB-BF-BM
Hallo Fabian!
Folgende Änderungen sollten ausreichen:
/styles/prosilver/theme/calendar.css
Code: Alles auswählen
#search_results .dates dd
{
position: relative;
left: 9em;
width: 21em;
display: block;
text-indent: -2em;
padding-left: 2em;
margin-bottom: 4px;
clear: left;
overflow: visible;
}
ersetzen gegen:
Code: Alles auswählen
#search_results .dates dd
{
position: relative;
left: 9em;
width: 33em;
display: block;
text-indent: -2em;
padding-left: 2em;
margin-bottom: 4px;
clear: left;
overflow: visible;
}
Code: Alles auswählen
html>body #dates_list li.day dd.events li dt
{
display: block;
text-indent: -2em;
clear: left;
padding-left: 2em;
margin-top: 1px;
width: 21em;
height: auto;
}
ersetzen gegen:
Code: Alles auswählen
html>body #dates_list li.day dd.events li dt
{
display: block;
text-indent: -2em;
clear: left;
padding-left: 2em;
margin-top: 1px;
width: 33em;
height: auto;
}
Re: [0.6.1] Simple Calendar
Verfasst: 20.10.2009 19:20
von Fabian
Danke für die schnelle Antwort!
Leider haben die Veränderungen nichts gebracht - den Forum-Cache hatte ich geleert. Zu meinem Verblüffen hat es auch keine Auswirkungen, wenn ich die Datei calendar.css komplett lösche (und den Cache leere). Ich habe nur einen Style, das heißt ich habe nicht an einem falschen Style verändert.
Was mache ich da denn falsch?
Kann ich eigentlich - bei zwei Terminen am Tag - die Reihenfolge verändern? Bisher sind nämlich häufig später folgende Ereignisse vornestehend (weil ich sie zuerst eingetragen hatte).
Mit freundlichem Gruß,
Fabian
Re: [0.6.1] Simple Calendar
Verfasst: 20.10.2009 19:43
von BB-BF-BM
Hallo Fabian!
Da es sich um eine Änderung am Theme handelt, musst du den Theme-Cache löschen.
BB-BF-BM hat geschrieben:- ...
- Theme-Cache:
- ACP
- Reiter: "Styles"
- Style-Komponenten: Themes
- Vorgänge: Aktualisieren
- "Ja"
Eine Änderung der Reihenfolge, in der die Termine angezeigt werden, ist zur Zeit nicht möglich.