|
24 | 24 | $this_section = SECTION_PLATFORM_ADMIN; |
25 | 25 | $_SESSION['this_section']=$this_section; |
26 | 26 |
|
| 27 | +$action = isset($_GET['action']) ? $_GET['action'] : null; |
| 28 | + |
27 | 29 | // Access restrictions |
28 | 30 | api_protect_admin_script(true); |
29 | 31 |
|
|
33 | 35 | $tool_name = null; |
34 | 36 |
|
35 | 37 | if (empty($_GET['lang'])) { |
36 | | - $_GET['lang'] = $_SESSION['user_language_choice']; |
| 38 | + $_GET['lang'] = isset($_SESSION['user_language_choice']) ? $_SESSION['user_language_choice'] : null; |
37 | 39 | } |
38 | 40 |
|
39 | | -if (isset($_GET['action'])) { |
| 41 | +if (!empty($action)) { |
40 | 42 | $interbreadcrumb[] = array ("url" => "system_announcements.php", "name" => get_lang('SystemAnnouncements')); |
41 | | - if ($_GET['action'] == 'add') { |
| 43 | + if ($action == 'add') { |
42 | 44 | $interbreadcrumb[] = array ("url" => '#', "name" => get_lang('AddAnnouncement')); |
43 | 45 | } |
44 | | - if ($_GET['action'] == 'edit') { |
| 46 | + if ($action == 'edit') { |
45 | 47 | $interbreadcrumb[] = array ("url" => '#', "name" => get_lang('Edit')); |
46 | 48 | } |
47 | 49 | } else { |
|
51 | 53 | // Displaying the header. |
52 | 54 | Display :: display_header($tool_name); |
53 | 55 |
|
54 | | -if ($_GET['action'] != 'add' && $_GET['action'] != 'edit') { |
| 56 | +if ($action != 'add' && $action != 'edit') { |
55 | 57 | echo '<div class="actions">'; |
56 | 58 | echo '<a href="?action=add">'.Display::return_icon('add.png', get_lang('AddAnnouncement'), array(), 32).'</a>'; |
57 | 59 | echo '</div>'; |
|
96 | 98 | // Set default time window: NOW -> NEXT WEEK |
97 | 99 | $values['start'] = date('Y-m-d H:i:s',api_strtotime(api_get_local_time())); |
98 | 100 | $values['end'] = date('Y-m-d H:i:s',api_strtotime(api_get_local_time()) + (7 * 24 * 60 * 60)); |
| 101 | + |
| 102 | + $values['range'] = |
| 103 | + substr(api_get_local_time(api_get_local_time()), 0, 16).' / '. |
| 104 | + substr(api_get_local_time(api_get_local_time()) + (7 * 24 * 60 * 60), 0, 16); |
99 | 105 | $action_todo = true; |
100 | 106 | break; |
101 | 107 | case 'edit': |
|
106 | 112 | $values['content'] = $announcement->content; |
107 | 113 | $values['start'] = api_get_local_time($announcement->date_start); |
108 | 114 | $values['end'] = api_get_local_time($announcement->date_end); |
| 115 | + |
| 116 | + $values['range'] = |
| 117 | + substr(api_get_local_time($announcement->date_start), 0, 16).' / '. |
| 118 | + substr(api_get_local_time($announcement->date_end), 0, 16); |
| 119 | + |
109 | 120 | $values['visible_teacher'] = $announcement->visible_teacher; |
110 | 121 | $values['visible_student'] = $announcement->visible_student ; |
111 | 122 | $values['visible_guest'] = $announcement->visible_guest ; |
|
139 | 150 | } else { |
140 | 151 | $form->add_html_editor('content', get_lang('Content'), true, false, array('ToolbarSet' => 'PortalNews', 'Width' => '100%', 'Height' => '300')); |
141 | 152 | } |
142 | | - $form->add_timewindow('start','end',get_lang('StartTimeWindow'),get_lang('EndTimeWindow')); |
| 153 | + $form->addDateRangePicker('range', get_lang('StartTimeWindow'), true, array('id' => 'date_range')); |
| 154 | + |
143 | 155 | $group = array(); |
144 | 156 |
|
145 | 157 | $group[]= $form->createElement('checkbox', 'visible_teacher', null, get_lang('Teacher')); |
|
151 | 163 | $form->addElement('hidden', 'id'); |
152 | 164 |
|
153 | 165 | $group_list = GroupPortalManager::get_groups_list(); |
154 | | - $group_list[0] = get_lang('All'); |
155 | | - $form->addElement('select', 'group',get_lang('AnnouncementForGroup'),$group_list); |
| 166 | + $group_list[0] = get_lang('All'); |
| 167 | + $form->addElement( |
| 168 | + 'select', |
| 169 | + 'group', |
| 170 | + get_lang('AnnouncementForGroup'), |
| 171 | + $group_list |
| 172 | + ); |
156 | 173 | $values['group'] = isset($values['group']) ? $values['group'] : '0'; |
157 | 174 |
|
158 | 175 | $form->addElement('checkbox', 'send_mail', null, get_lang('SendMail')); |
|
161 | 178 | $form->addElement('checkbox', 'add_to_calendar', null, get_lang('AddToCalendar')); |
162 | 179 | $text=get_lang('AddNews'); |
163 | 180 | $class='add'; |
164 | | - $form->addElement('hidden', 'action','add'); |
| 181 | + $form->addElement('hidden', 'action', 'add'); |
165 | 182 |
|
166 | | - } elseif (isset($_REQUEST['action']) && $_REQUEST['action']=='edit') { |
| 183 | + } elseif (isset($_REQUEST['action']) && $_REQUEST['action'] == 'edit') { |
167 | 184 | $text=get_lang('EditNews'); |
168 | 185 | $class='save'; |
169 | | - $form->addElement('hidden', 'action','edit'); |
| 186 | + $form->addElement('hidden', 'action', 'edit'); |
170 | 187 | } |
171 | 188 |
|
172 | 189 | $form->addElement('checkbox', 'send_email_test', null, get_lang('SendOnlyAnEmailToMySelfToTest')); |
173 | 190 |
|
174 | | - $form->addElement('style_submit_button', 'submit', $text,'class="'.$class.'"'); |
| 191 | + $form->addElement('style_submit_button', 'submit', $text, 'class="'.$class.'"'); |
175 | 192 | if (api_get_setting('wcag_anysurfer_public_pages') == 'true') { |
176 | 193 | $values['content'] = WCAG_Rendering::HTML_to_text($values['content']); |
177 | 194 | } |
178 | 195 | $form->setDefaults($values); |
| 196 | + |
179 | 197 | if ($form->validate()) { |
180 | 198 | $values = $form->exportValues(); |
181 | 199 | if ( !isset($values['visible_teacher'])) { |
|
193 | 211 | if (api_get_setting('wcag_anysurfer_public_pages') == 'true') { |
194 | 212 | //$values['content'] = WCAG_Rendering::text_to_HTML($values['content']); |
195 | 213 | } |
| 214 | + |
| 215 | + $sendMail = isset($values['send_mail']) ? $values['send_mail'] : null; |
| 216 | + |
196 | 217 | switch ($values['action']) { |
197 | 218 | case 'add': |
198 | 219 | $announcement_id = SystemAnnouncementManager::add_announcement( |
199 | 220 | $values['title'], |
200 | 221 | $values['content'], |
201 | | - $values['start'], |
202 | | - $values['end'], |
| 222 | + $values['range_start'], |
| 223 | + $values['range_end'], |
203 | 224 | $values['visible_teacher'], |
204 | 225 | $values['visible_student'], |
205 | 226 | $values['visible_guest'], |
206 | 227 | $values['lang'], |
207 | | - $values['send_mail'], |
| 228 | + $sendMail, |
208 | 229 | $values['add_to_calendar'], |
209 | 230 | $values['send_email_test'] |
210 | 231 | ); |
|
222 | 243 | $values['id'], |
223 | 244 | $values['title'], |
224 | 245 | $values['content'], |
225 | | - $values['start'], |
226 | | - $values['end'], |
| 246 | + $values['range_start'], |
| 247 | + $values['range_end'], |
227 | 248 | $values['visible_teacher'], |
228 | 249 | $values['visible_student'], |
229 | 250 | $values['visible_guest'], |
230 | 251 | $values['lang'], |
231 | | - $values['send_mail'], |
| 252 | + $sendMail, |
232 | 253 | $values['send_email_test'] |
233 | 254 | ) |
234 | 255 | ) { |
|
0 commit comments