#27 ical export, link explained

This commit is contained in:
Philip Häusler 2011-10-11 22:18:36 +02:00
parent 304af8e8f0
commit f8ec85e4c6
3 changed files with 23 additions and 4 deletions

View File

@ -44,7 +44,7 @@ function user_myshifts() {
header("Location: " . page_link_to('user_myshifts')); header("Location: " . page_link_to('user_myshifts'));
} }
$shifts = sql_select("SELECT * FROM `ShiftEntry` JOIN `Shifts` ON (`ShiftEntry`.`SID` = `Shifts`.`SID`) JOIN `Room` ON (`Shifts`.`RID` = `Room`.`RID`) WHERE `UID`=" . sql_escape($user['UID']) . " ORDER BY `start`"); $shifts = sql_select("SELECT * FROM `ShiftEntry` JOIN `Shifts` ON (`ShiftEntry`.`SID` = `Shifts`.`SID`) JOIN `Room` ON (`Shifts`.`RID` = `Room`.`RID`) WHERE `UID`=" . sql_escape($user['UID']) . " ORDER BY `start`");
$html = ""; $html = "";
foreach ($shifts as $shift) { foreach ($shifts as $shift) {
if (time() > $shift['end']) if (time() > $shift['end'])
@ -66,10 +66,17 @@ function user_myshifts() {
if ($html == "") if ($html == "")
$html = '<tr><td>Keine...</td><td></td><td></td><td></td><td></td><td>Gehe zum <a href="' . page_link_to('user_shifts') . '">Schichtplan</a> um Dich für Schichten einzutragen.</td></tr>'; $html = '<tr><td>Keine...</td><td></td><td></td><td></td><td></td><td>Gehe zum <a href="' . page_link_to('user_shifts') . '">Schichtplan</a> um Dich für Schichten einzutragen.</td></tr>';
if ($user['ical_key'] == "") {
$user['ical_key'] = md5($user['Nick'] . time() . rand());
sql_query("UPDATE `User` SET `ical_key`='" . sql_escape($user['ical_key']) . "' WHERE `UID`='" . sql_escape($user['UID']) . "' LIMIT 1");
}
return template_render('../templates/user_myshifts.html', array ( return template_render('../templates/user_myshifts.html', array (
'h' => $LETZTES_AUSTRAGEN, 'h' => $LETZTES_AUSTRAGEN,
'shifts' => $html, 'shifts' => $html,
'msg' => $msg 'msg' => $msg,
'ical_link' => page_link_to_absolute('ical') . '&key=' . $user['ical_key'],
'reset_link' => page_link_to('user_myshifts') . '&reset'
)); ));
} }
?> ?>

View File

@ -3,6 +3,10 @@ function page_link_to($page) {
return '?p=' . $page; return '?p=' . $page;
} }
function page_link_to_absolute($page) {
return (isset ($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . preg_replace("/\?.*$/", '', $_SERVER['REQUEST_URI']) . page_link_to($page);
}
function make_navigation() { function make_navigation() {
global $p; global $p;
global $privileges; global $privileges;

View File

@ -1,9 +1,10 @@
<p> <p>
Hier sind Deine Schichten. Hier sind Deine Schichten.
<br/> <br/>
Versuche bitte <b>15 Minuten</b> vor Schichtbeginn anwesend zu sein! Versuche bitte <b>15 Minuten</b>
vor Schichtbeginn anwesend zu sein!
<br/> <br/>
Du kannst Dich %h% Stunden vor Schichtbeginn noch aus Schichten wieder austragen. Du kannst Dich %h% Stunden vor Schichtbeginn noch aus Schichten wieder austragen.
</p> </p>
%msg% %msg%
<table> <table>
@ -33,3 +34,10 @@
%shifts% %shifts%
</tbody> </tbody>
</table> </table>
<hr />
<h2>iCal Export</h2>
<p>
Zum abonnieren in Deiner Kalender-Software benutze folgenden öffentlichen Link (daher bitte geheimhalten, im Notfall Deinen <a href="%reset_link%">Key zurücksetzen</a>):
<br/>
<a href="%ical_link%">%ical_link%</a>
</p>