forked from extern/egroupware
patch from christian binder
class.boical.inc.php 285: handle exceptions field on export (delimiter changed to ";") 295: handle TRANSP value (0 or 1) on export 554: handle exceptions field on import 568: handle TRANSP value (0 or 1) on import 774-777: set supported fields for recur_exceptions and non_blocking added support for handling non blocking events for vcal(1.0) and ical(2.0)
This commit is contained in:
parent
325b1f09ee
commit
7251eee8b8
@ -282,7 +282,7 @@
|
|||||||
{
|
{
|
||||||
$days[] = date('Ymd',$day);
|
$days[] = date('Ymd',$day);
|
||||||
}
|
}
|
||||||
$attributes['EXDATE'] = implode(',',$days);
|
$attributes['EXDATE'] = implode(';',$days);
|
||||||
$parameters['EXDATE']['VALUE'] = 'DATE';
|
$parameters['EXDATE']['VALUE'] = 'DATE';
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -292,7 +292,11 @@
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 'TRANSP':
|
case 'TRANSP':
|
||||||
$attributes['TRANSP'] = $event['non_blocking'] ? 'TRANSPARENT' : 'OPAQUE';
|
if ($version == '1.0') {
|
||||||
|
$attributes['TRANSP'] = $event['non_blocking'] ? 1 : 0;
|
||||||
|
} else {
|
||||||
|
$attributes['TRANSP'] = $event['non_blocking'] ? 'TRANSPARENT' : 'OPAQUE';
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'CATEGORIES':
|
case 'CATEGORIES':
|
||||||
@ -361,11 +365,13 @@
|
|||||||
$_vcalData = preg_replace("/[\r\n]+ /",'',$_vcalData);
|
$_vcalData = preg_replace("/[\r\n]+ /",'',$_vcalData);
|
||||||
|
|
||||||
$vcal = &new Horde_iCalendar;
|
$vcal = &new Horde_iCalendar;
|
||||||
if(!$vcal->parsevCalendar($_vcalData))
|
if(!$vcal->parsevCalendar($_vcalData))
|
||||||
{
|
{
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$version = $vcal->getAttribute('VERSION');
|
||||||
|
|
||||||
if(!is_array($this->supportedFields))
|
if(!is_array($this->supportedFields))
|
||||||
{
|
{
|
||||||
$this->setSupportedFields();
|
$this->setSupportedFields();
|
||||||
@ -551,7 +557,7 @@
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'EXDATE':
|
case 'EXDATE':
|
||||||
// ToDo: $vcardData['recur_exception'] = ...
|
$vcardData['recur_exception'] = $attributes['value'];
|
||||||
break;
|
break;
|
||||||
case 'SUMMARY':
|
case 'SUMMARY':
|
||||||
$vcardData['title'] = $attributes['value'];
|
$vcardData['title'] = $attributes['value'];
|
||||||
@ -565,7 +571,11 @@
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'TRANSP':
|
case 'TRANSP':
|
||||||
$vcardData['non_blocking'] = $attributes['value'] == 'TRANSPARENT';
|
if($version = '1.0') {
|
||||||
|
$vcardData['non_blocking'] = $attributes['value'] == 1;
|
||||||
|
} else {
|
||||||
|
$vcardData['non_blocking'] = $attributes['value'] == 'TRANSPARENT';
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'PRIORITY':
|
case 'PRIORITY':
|
||||||
$vcardData['priority'] = (int) $this->priority_ical2egw[$attributes['value']];
|
$vcardData['priority'] = (int) $this->priority_ical2egw[$attributes['value']];
|
||||||
@ -771,7 +781,10 @@
|
|||||||
switch(strtolower($_productName))
|
switch(strtolower($_productName))
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
$this->supportedFields = $defaultFields;
|
$this->supportedFields = $defaultFields + array(
|
||||||
|
'recur_exception' => 'recur_exception',
|
||||||
|
'non_blocking' => 'non_blocking',
|
||||||
|
);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -941,7 +954,7 @@
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'EXDATE':
|
case 'EXDATE':
|
||||||
// ToDo: $vcardData['recur_exception'] = ...
|
$vcardData['recur_exception'] = $attributes['value'];
|
||||||
break;
|
break;
|
||||||
case 'SUMMARY':
|
case 'SUMMARY':
|
||||||
$vcardData['title'] = $attributes['value'];
|
$vcardData['title'] = $attributes['value'];
|
||||||
|
Loading…
Reference in New Issue
Block a user