case 'make_visible':
 case 'make_invisible':
     $status = false;
     if ($action == 'make_visible') {
         $status = true;
     }
     SystemAnnouncementManager::set_visibility($_GET['id'], $_GET['person'], $status);
     break;
 case 'delete':
     // Delete an announcement.
     SystemAnnouncementManager::delete_announcement($_GET['id']);
     Display::display_confirmation_message(get_lang('AnnouncementDeleted'));
     break;
 case 'delete_selected':
     foreach ($_POST['id'] as $index => $id) {
         SystemAnnouncementManager::delete_announcement($id);
     }
     Display::display_confirmation_message(get_lang('AnnouncementDeleted'));
     $action_todo = false;
     break;
 case 'add':
     // Add an announcement.
     $values['action'] = 'add';
     // Set default time window: NOW -> NEXT WEEK
     $values['start'] = date('Y-m-d H:i:s', api_strtotime(api_get_local_time()));
     $values['end'] = date('Y-m-d H:i:s', api_strtotime(api_get_local_time()) + 7 * 24 * 60 * 60);
     $values['range'] = substr(api_get_local_time(time()), 0, 16) . ' / ' . substr(api_get_local_time(time() + 7 * 24 * 60 * 60), 0, 16);
     $action_todo = true;
     break;
 case 'edit':
     // Edit an announcement.