mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-10-06 02:02:24 +02:00
various syncml fixes
This commit is contained in:
parent
b3dbb91d80
commit
117fd9d31b
@ -26,23 +26,25 @@
|
|||||||
'call' => 'NEEDS-ACTION',
|
'call' => 'NEEDS-ACTION',
|
||||||
'will-call' => 'IN-PROCESS',
|
'will-call' => 'IN-PROCESS',
|
||||||
);
|
);
|
||||||
|
|
||||||
var $vtodo2status = array(
|
var $vtodo2status = array(
|
||||||
'NEEDS-ACTION' => 'not-started',
|
'NEEDS-ACTION' => 'not-started',
|
||||||
'IN-PROCESS' => 'ongoing',
|
'IN-PROCESS' => 'ongoing',
|
||||||
'COMPLETED' => 'done',
|
'COMPLETED' => 'done',
|
||||||
'CANCELLED' => 'cancelled',
|
'CANCELLED' => 'cancelled',
|
||||||
);
|
);
|
||||||
|
|
||||||
function exportVTODO($_taskID, $_version)
|
function exportVTODO($_taskID, $_version)
|
||||||
{
|
{
|
||||||
$taskData = $this->read($_taskID);
|
$taskData = $this->read($_taskID);
|
||||||
|
|
||||||
$taskData = $GLOBALS['egw']->translation->convert($taskData,$GLOBALS['egw']->translation->charset(),'UTF-8');
|
$taskData = $GLOBALS['egw']->translation->convert($taskData, $GLOBALS['egw']->translation->charset(), 'UTF-8');
|
||||||
|
|
||||||
//_debug_array($taskData);
|
//_debug_array($taskData);
|
||||||
|
|
||||||
$taskGUID = $GLOBALS['phpgw']->common->generate_uid('infolog_task',$_taskID);
|
$taskGUID = $GLOBALS['egw']->common->generate_uid('infolog_task',$_taskID);
|
||||||
#print "<br>";
|
#print "<br>";
|
||||||
#print $GLOBALS['phpgw']->contenthistory->getTSforAction($eventGUID,'add');
|
#print $GLOBALS['egw']->contenthistory->getTSforAction($eventGUID,'add');
|
||||||
#print "<br>";
|
#print "<br>";
|
||||||
|
|
||||||
$vcal = &new Horde_iCalendar;
|
$vcal = &new Horde_iCalendar;
|
||||||
@ -63,8 +65,8 @@
|
|||||||
if($taskData['info_datecompleted'])
|
if($taskData['info_datecompleted'])
|
||||||
$vevent->setAttribute('COMPLETED',$taskData['info_datecompleted']);
|
$vevent->setAttribute('COMPLETED',$taskData['info_datecompleted']);
|
||||||
$vevent->setAttribute('DTSTAMP',time());
|
$vevent->setAttribute('DTSTAMP',time());
|
||||||
$vevent->setAttribute('CREATED',$GLOBALS['phpgw']->contenthistory->getTSforAction($eventGUID,'add'));
|
$vevent->setAttribute('CREATED',$GLOBALS['egw']->contenthistory->getTSforAction($eventGUID,'add'));
|
||||||
$vevent->setAttribute('LAST-MODIFIED',$GLOBALS['phpgw']->contenthistory->getTSforAction($eventGUID,'modify'));
|
$vevent->setAttribute('LAST-MODIFIED',$GLOBALS['egw']->contenthistory->getTSforAction($eventGUID,'modify'));
|
||||||
$vevent->setAttribute('UID',$taskGUID);
|
$vevent->setAttribute('UID',$taskGUID);
|
||||||
$vevent->setAttribute('CLASS',$taskData['info_access'] == 'public' ? 'PUBLIC' : 'PRIVATE');
|
$vevent->setAttribute('CLASS',$taskData['info_access'] == 'public' ? 'PUBLIC' : 'PRIVATE');
|
||||||
$vevent->setAttribute('STATUS',isset($this->status2vtodo[$taskData['info_status']]) ?
|
$vevent->setAttribute('STATUS',isset($this->status2vtodo[$taskData['info_status']]) ?
|
||||||
@ -95,8 +97,14 @@
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($_taskID>0)
|
if($_taskID > 0) {
|
||||||
$taskData['info_id'] = $_taskID;
|
$taskData['info_id'] = $_taskID;
|
||||||
|
}
|
||||||
|
|
||||||
|
// we suppose that a not set status in a vtodo means that the task did not started yet
|
||||||
|
if(empty($taskData['info_status'])) {
|
||||||
|
$taskData['info_status'] = 'not-started';
|
||||||
|
}
|
||||||
|
|
||||||
#_debug_array($taskData);exit;
|
#_debug_array($taskData);exit;
|
||||||
return $this->write($taskData);
|
return $this->write($taskData);
|
||||||
@ -107,23 +115,22 @@
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#unset($egwData['info_priority']);
|
||||||
|
|
||||||
$filter = array('col_filter' => $egwData);
|
$filter = array('col_filter' => $egwData);
|
||||||
if($foundItems = $this->search($filter)) {
|
if($foundItems = $this->search($filter)) {
|
||||||
if(count($foundItems) > 0) {
|
if(count($foundItems) > 0) {
|
||||||
#error_log(__LINE__);
|
|
||||||
#error_log(print_r($foundItems, true));
|
|
||||||
$itemIDs = array_keys($foundItems);
|
$itemIDs = array_keys($foundItems);
|
||||||
#error_log($itemIDs[0]);
|
|
||||||
return $itemIDs[0];
|
return $itemIDs[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function vtodotoegw($_vcalData) {
|
function vtodotoegw($_vcalData) {
|
||||||
$vcal = &new Horde_iCalendar;
|
$vcal = &new Horde_iCalendar;
|
||||||
if(!$vcal->parsevCalendar($_vcalData))
|
if(!$vcal->parsevCalendar($_vcalData)) {
|
||||||
{
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -180,7 +187,9 @@
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$taskData = $GLOBALS['egw']->translation->convert($taskData, 'UTF-8');
|
# the horde ical class does already convert in parsevCalendar
|
||||||
|
# do NOT convert here
|
||||||
|
//$taskData = $GLOBALS['egw']->translation->convert($taskData, 'UTF-8');
|
||||||
|
|
||||||
return $taskData;
|
return $taskData;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user