aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/bbcode.php9
-rw-r--r--include/event.php16
2 files changed, 22 insertions, 3 deletions
diff --git a/include/bbcode.php b/include/bbcode.php
index 2e201344c..66b63d395 100644
--- a/include/bbcode.php
+++ b/include/bbcode.php
@@ -950,14 +950,21 @@ function bbcode($Text, $preserve_nl = false, $tryoembed = true, $cache = false)
// start which is always required). Allow desc with a missing summary for compatibility.
if ((x($ev,'desc') || x($ev,'summary')) && x($ev,'start')) {
+
$sub = format_event_html($ev);
+ $sub = str_replace('$',"\0",$sub);
+
+ $Text = preg_replace("/\[event\-start\](.*?)\[\/event\-start\]/ism",$sub,$Text);
+
$Text = preg_replace("/\[event\-summary\](.*?)\[\/event\-summary\]/ism",'',$Text);
$Text = preg_replace("/\[event\-description\](.*?)\[\/event\-description\]/ism",'',$Text);
- $Text = preg_replace("/\[event\-start\](.*?)\[\/event\-start\]/ism",$sub,$Text);
$Text = preg_replace("/\[event\-finish\](.*?)\[\/event\-finish\]/ism",'',$Text);
$Text = preg_replace("/\[event\-location\](.*?)\[\/event\-location\]/ism",'',$Text);
$Text = preg_replace("/\[event\-adjust\](.*?)\[\/event\-adjust\]/ism",'',$Text);
+
+ $Text = str_replace("\0",'$',$Text);
+
}
// Unhide all [noparse] contained bbtags unspacefying them
diff --git a/include/event.php b/include/event.php
index 2796ea712..4393e6854 100644
--- a/include/event.php
+++ b/include/event.php
@@ -18,6 +18,7 @@ function format_event_html($ev) {
if(! ((is_array($ev)) && count($ev)))
return '';
+
$bd_format = t('l F d, Y \@ g:i A') ; // Friday January 18, 2011 @ 8:01 AM
$o = '<div class="vevent">' . "\r\n";
@@ -165,7 +166,18 @@ function bbtoevent($s) {
$match = '';
if(preg_match("/\[event\-adjust\](.*?)\[\/event\-adjust\]/is",$s,$match))
$ev['adjust'] = $match[1];
- $ev['nofinish'] = (((x($ev, 'start') && $ev['start']) && (!x($ev, 'finish') || !$ev['finish'])) ? 1 : 0);
+ if(array_key_exists('start',$ev)) {
+ if(array_key_exists('finish',$ev)) {
+ if($ev['finish'] === $ev['start'])
+ $ev['nofinish'] = 1;
+ elseif($ev['finish'])
+ $ev['nofinish'] = 0;
+ else
+ $ev['nofinish'] = 1;
+ }
+ else
+ $ev['nofinish'] = 1;
+ }
return $ev;
}
@@ -483,7 +495,7 @@ function event_import_ical($ical, $uid) {
$ev['private'] = 1;
$ev['allow_cid'] = '<' . $channel['channel_hash'] . '>';
-// logger('storing event: ' . print_r($ev,true), LOGGER_ALL);
+ logger('storing event: ' . print_r($ev,true), LOGGER_ALL);
$event = event_store_event($ev);
if($event) {
$item_id = event_store_item($ev,$event);