Line 0
Link Here
|
|
|
1 |
--- inc/iCalendar.php.old 2011-02-28 14:10:05.863011862 +0100 |
2 |
+++ inc/iCalendar.php 2011-02-28 14:10:54.276562796 +0100 |
3 |
@@ -233,7 +233,7 @@ |
4 |
function RenderParameters() { |
5 |
$rendered = ""; |
6 |
foreach( $this->parameters AS $k => $v ) { |
7 |
- $escaped = preg_replace( "/([;:\"])/", '\\\\$1', $v); |
8 |
+ $escaped = preg_replace( "/([;:])/", '\\\\$1', $v); |
9 |
$rendered .= sprintf( ";%s=%s", $k, $escaped ); |
10 |
} |
11 |
return $rendered; |
12 |
@@ -273,7 +273,7 @@ |
13 |
default: |
14 |
$escaped = str_replace( '\\', '\\\\', $escaped); |
15 |
$escaped = preg_replace( '/\r?\n/', '\\n', $escaped); |
16 |
- $escaped = preg_replace( "/([,;\"])/", '\\\\$1', $escaped); |
17 |
+ $escaped = preg_replace( "/([,;])/", '\\\\$1', $escaped); |
18 |
} |
19 |
$property = sprintf( "%s%s:", $this->name, $this->RenderParameters() ); |
20 |
if ( (strlen($property) + strlen($escaped)) <= 72 ) { |
21 |
@@ -786,7 +786,7 @@ |
22 |
*/ |
23 |
function CloneConfidential() { |
24 |
$confidential = clone($this); |
25 |
- $keep_properties = array( 'DTSTAMP', 'DTSTART', 'RRULE', 'DURATION', 'DTEND', 'UID', 'CLASS', 'TRANSP' ); |
26 |
+ $keep_properties = array( 'DTSTAMP', 'DTSTART', 'RRULE', 'DURATION', 'DTEND', 'DUE', 'UID', 'CLASS', 'TRANSP', 'CREATED', 'LAST-MODIFIED' ); |
27 |
$resource_components = array( 'VEVENT', 'VTODO', 'VJOURNAL' ); |
28 |
$confidential->MaskComponents(array( 'VTIMEZONE', 'VEVENT', 'VTODO', 'VJOURNAL' )); |
29 |
$confidential->MaskProperties($keep_properties, $resource_components ); |
30 |
@@ -822,6 +822,7 @@ |
31 |
foreach( $this->components AS $v ) { $rendered .= $v->Render(); } |
32 |
$rendered .= "END:$this->type\r\n"; |
33 |
|
34 |
+ $rendered = preg_replace('{(?<!\r)\n}', '\r\n', $rendered); |
35 |
if ( $unrestricted ) $this->rendered = $rendered; |
36 |
|
37 |
return $rendered; |