1. You can now delete an event.

2. I have added notification  - The event was deleted successfully
3. I have added "Tenatative" on Free/busy dialog
4. I have changed Sensitivity to Privacy and Show as -> show me as
This commit is contained in:
Bogomil Shopov 2011-06-14 14:52:20 +03:00
parent 712bffc9cb
commit feae471289
4 changed files with 39 additions and 9 deletions

View file

@ -49,7 +49,7 @@ class kolab_calendar
{
if ($imap_folder)
$this->imap_folder = $imap_folder;
write_log('err_log',$imap_folder);
// ID is derrived from folder name
$this->id = strtolower(asciiwords(strtr($this->imap_folder, '/.', '--')));
@ -212,11 +212,30 @@ class kolab_calendar
return $updated;
}
/**
* Delete an event record
*
* @see Driver:remove_event()
* @return boolean True on success, False on error
*/
public function delete_event($event)
{
return true;
$deleted = false;
$deleteme = $this->storage->delete($event['id']);
if (PEAR::isError($deleteme)) {
raise_error(array(
'code' => 600, 'type' => 'php',
'file' => __FILE__, 'line' => __LINE__,
'message' => "Error saving contact object to Kolab server:" . $deleteme->getMessage()),
true, false);
}
else {
$deleted = true;
}
return $deleted;
}
@ -311,7 +330,7 @@ class kolab_calendar
'alarms' => $alarm_value . $alarm_unit,
'categories' => $rec['categories'],
'free_busy' => $rec['show-time-as'],
'priority' => 1, // normal
'priority' => $rec['priority'], // normal
'sensitivity' => $sensitivity_map[$rec['sensitivity']],
'calendar' => $this->id,
);
@ -335,12 +354,13 @@ class kolab_calendar
'end-date'=>$event['end'],
'sensitivity'=>$this->sensitivity_map[$event['sensitivity']],
'show-time-as' => $event['free_busy'],
'priority' => $event['priority']
);
//handle alarms
if ($event['alarms'])
{
if ($event['alarms']) {
//get the value
$alarmbase = explode(":",$event['alarms']);
@ -367,4 +387,6 @@ class kolab_calendar
return $object;
}
}

View file

@ -64,7 +64,7 @@ class kolab_driver extends calendar_driver
}
else {
foreach ($folders as $c_folder) {
$calendar = new kolab_calendar($c_folder->name);
$calendar = new kolab_calendar($c_folder->name);
$this->folders[$calendar->id] = $calendar;
if ($calendar->ready) {
$this->calendars[$calendar->id] = array(
@ -128,7 +128,7 @@ class kolab_driver extends calendar_driver
*/
public function edit_calendar($prop)
{
return false;
return false;
}
/**
@ -138,6 +138,7 @@ class kolab_driver extends calendar_driver
*/
public function remove_calendar($prop)
{
return false;
}
@ -207,6 +208,10 @@ class kolab_driver extends calendar_driver
*/
public function remove_event($event)
{
if (($storage = $this->_get_storage($event['calendar'])) && ($ev = $storage->get_event($event['id'])))
$rt = $storage->delete_event($event + $ev);
if($rt==true)
$this->rc->output->show_message('calendar.successremoval', 'success'); return $rt;
return false;
}

View file

@ -190,6 +190,7 @@ class calendar_ui
$select->add($this->calendar->gettext('free'), 'free');
$select->add($this->calendar->gettext('busy'), 'busy');
$select->add($this->calendar->gettext('outofoffice'), 'outofoffice');
$select->add($this->calendar->gettext('tentative'), 'tentative');
return $select->show(null);
}

View file

@ -40,12 +40,13 @@ $labels['date'] = 'Date';
$labels['start'] = 'Start';
$labels['end'] = 'End';
$labels['choose_date'] = 'Choose date';
$labels['freebusy'] = 'Show as';
$labels['freebusy'] = 'Show me as';
$labels['free'] = 'Free';
$labels['busy'] = 'Busy';
$labels['outofoffice'] = 'Out of Office';
$labels['tentative'] = 'Tentative';
$labels['priority'] = 'Priority';
$labels['sensitivity'] = 'Sensitivity';
$labels['sensitivity'] = 'Privacy';
$labels['public'] = 'public';
$labels['private'] = 'private';
$labels['confidential'] = 'confidential';
@ -98,6 +99,7 @@ $labels['operationfailed'] = "The requested operation failed";
$labels['invalideventdates'] = "Invalid dates entered! Please check your input.";
$labels['invalidcalendarproperties'] = "Invalid calendar properties! Please set a valid name.";
$labels['searchnoresults'] = 'No events found in the selected calendars';
$labels['successremoval'] = "The event was deleted successfully";
// recurrence form
$labels['repeat'] = 'Repeat';