aboutsummaryrefslogtreecommitdiffstats
path: root/mod/events.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/events.php')
-rwxr-xr-xmod/events.php22
1 files changed, 18 insertions, 4 deletions
diff --git a/mod/events.php b/mod/events.php
index a89bbb760..0af81278f 100755
--- a/mod/events.php
+++ b/mod/events.php
@@ -13,6 +13,20 @@ function events_post(&$a) {
if(! local_channel())
return;
+ if(($_FILES) && array_key_exists('userfile',$_FILES) && intval($_FILES['userfile']['size'])) {
+ $src = $_FILES['userfile']['tmp_name'];
+ if($src) {
+ $result = parse_ical_file($src,local_channel());
+ if($result)
+ info( t('Calendar entries imported.') . EOL);
+ else
+ notice( t('No calendar entries found.') . EOL);
+ @unlink($src);
+ }
+ goaway(z_root() . '/events');
+ }
+
+
$event_id = ((x($_POST,'event_id')) ? intval($_POST['event_id']) : 0);
$event_hash = ((x($_POST,'event_hash')) ? $_POST['event_hash'] : '');
@@ -148,10 +162,9 @@ function events_post(&$a) {
}
}
else {
- // Note: do not set `private` field for self-only events. It will
- // keep even you from seeing them!
$str_contact_allow = '<' . $channel['channel_hash'] . '>';
$str_group_allow = $str_contact_deny = $str_group_deny = '';
+ $private_event = true;
}
}
@@ -451,6 +464,7 @@ function events_content(&$a) {
if($export) {
header('Content-type: text/calendar');
+ header('content-disposition: attachment; filename="' . t('calendar') . '-' . $channel['channel_address'] . '.ics"' );
echo ical_wrapper($r);
killme();
}
@@ -477,8 +491,8 @@ function events_content(&$a) {
'$export' => array($a->get_baseurl()."/events/$y/$m/export",t('Export'),'',''),
'$calendar' => cal($y,$m,$links, ' eventcal'),
'$events' => $events,
-
-
+ '$upload' => t('Upload'),
+ '$submit' => t('Submit')
));
if (x($_GET,'id')){ echo $o; killme(); }