if (!isset($values['visible_teacher'])) {
     $values['visible_teacher'] = false;
 }
 if (!isset($values['visible_student'])) {
     $values['visible_student'] = false;
 }
 if (!isset($values['visible_guest'])) {
     $values['visible_guest'] = false;
 }
 if ($values['lang'] == 'all') {
     $values['lang'] = null;
 }
 $sendMail = isset($values['send_mail']) ? $values['send_mail'] : null;
 switch ($values['action']) {
     case 'add':
         $announcement_id = SystemAnnouncementManager::add_announcement($values['title'], $values['content'], $values['range_start'], $values['range_end'], $values['visible_teacher'], $values['visible_student'], $values['visible_guest'], $values['lang'], $sendMail, empty($values['add_to_calendar']) ? false : true, empty($values['send_email_test']) ? false : true);
         if ($announcement_id !== false) {
             SystemAnnouncementManager::announcement_for_groups($announcement_id, array($values['group']));
             Display::display_confirmation_message(get_lang('AnnouncementAdded'));
         } else {
             $show_announcement_list = false;
             $form->display();
         }
         break;
     case 'edit':
         $sendMailTest = isset($values['send_email_test']) ? $values['send_email_test'] : null;
         if (SystemAnnouncementManager::update_announcement($values['id'], $values['title'], $values['content'], $values['range_start'], $values['range_end'], $values['visible_teacher'], $values['visible_student'], $values['visible_guest'], $values['lang'], $sendMail, $sendMailTest)) {
             SystemAnnouncementManager::announcement_for_groups($values['id'], array($values['group']));
             Display::display_confirmation_message(get_lang('AnnouncementUpdated'));
         } else {
             $show_announcement_list = false;
 }
 if (!isset($values['visible_student'])) {
     $values['visible_student'] = false;
 }
 if (!isset($values['visible_guest'])) {
     $values['visible_guest'] = false;
 }
 if ($values['lang'] == 'all') {
     $values['lang'] = null;
 }
 if (api_get_setting('wcag_anysurfer_public_pages') == 'true') {
     $values['content'] = WCAG_Rendering::text_to_HTML($values['content']);
 }
 switch ($values['action']) {
     case 'add':
         $announcement_id = SystemAnnouncementManager::add_announcement($values['title'], $values['content'], $values['start'], $values['end'], $values['visible_teacher'], $values['visible_student'], $values['visible_guest'], $values['lang'], $values['send_mail'], $values['add_to_calendar']);
         if ($announcement_id !== false) {
             SystemAnnouncementManager::announcement_for_groups($announcement_id, array($values['group']));
             Display::display_confirmation_message(get_lang('AnnouncementAdded'));
         } else {
             $show_announcement_list = false;
             $form->display();
         }
         break;
     case 'edit':
         if (SystemAnnouncementManager::update_announcement($values['id'], $values['title'], $values['content'], $values['start'], $values['end'], $values['visible_teacher'], $values['visible_student'], $values['visible_guest'], $values['lang'], $values['send_mail'])) {
             SystemAnnouncementManager::announcement_for_groups($values['id'], array($values['group']));
             Display::display_confirmation_message(get_lang('AnnouncementUpdated'));
         } else {
             $show_announcement_list = false;
             $form->display();