From 91dafb19ec171e747d9976cf738606759bde3aae Mon Sep 17 00:00:00 2001 From: msquare Date: Thu, 29 Sep 2016 10:53:17 +0200 Subject: prohibit inline control structures on pages --- includes/pages/admin_import.php | 146 ++++++++++++++++++++++------------------ 1 file changed, 82 insertions(+), 64 deletions(-) (limited to 'includes/pages/admin_import.php') diff --git a/includes/pages/admin_import.php b/includes/pages/admin_import.php index d9244ab5..e533819f 100644 --- a/includes/pages/admin_import.php +++ b/includes/pages/admin_import.php @@ -14,8 +14,9 @@ function admin_import() { 'input', 'check', 'import' - ])) + ])) { $step = $_REQUEST['step']; + } if ($test_handle = fopen('../import/tmp', 'w')) { fclose($test_handle); @@ -30,11 +31,13 @@ function admin_import() { $add_minutes_end = 15; $shifttypes_source = ShiftTypes(); - if ($shifttypes_source === false) + if ($shifttypes_source === false) { engelsystem_error('Unable to load shifttypes.'); + } $shifttypes = []; - foreach ($shifttypes_source as $shifttype) + foreach ($shifttypes_source as $shifttype) { $shifttypes[$shifttype['id']] = $shifttype['name']; + } switch ($step) { case 'input': @@ -43,23 +46,23 @@ function admin_import() { if (isset($_REQUEST['submit'])) { $ok = true; - if (isset($_REQUEST['shifttype_id']) && isset($shifttypes[$_REQUEST['shifttype_id']])) + if (isset($_REQUEST['shifttype_id']) && isset($shifttypes[$_REQUEST['shifttype_id']])) { $shifttype_id = $_REQUEST['shifttype_id']; - else { + } else { $ok = false; error(_('Please select a shift type.')); } - if (isset($_REQUEST['add_minutes_start']) && is_numeric(trim($_REQUEST['add_minutes_start']))) + if (isset($_REQUEST['add_minutes_start']) && is_numeric(trim($_REQUEST['add_minutes_start']))) { $add_minutes_start = trim($_REQUEST['add_minutes_start']); - else { + } else { $ok = false; error(_("Please enter an amount of minutes to add to a talk's begin.")); } - if (isset($_REQUEST['add_minutes_end']) && is_numeric(trim($_REQUEST['add_minutes_end']))) + if (isset($_REQUEST['add_minutes_end']) && is_numeric(trim($_REQUEST['add_minutes_end']))) { $add_minutes_end = trim($_REQUEST['add_minutes_end']); - else { + } else { $ok = false; error(_("Please enter an amount of minutes to add to a talk's end.")); } @@ -89,14 +92,14 @@ function admin_import() { _('File Upload') . mute(glyph('arrow-right')) . mute(_('Validation')) . mute(glyph('arrow-right')) . mute(_('Import')) ]) . div('row', [ div('col-md-offset-3 col-md-6', [ - form(array( + form([ form_info('', _("This import will create/update/delete rooms and shifts by given FRAB-export file. The needed file format is xcal.")), form_select('shifttype_id', _('Shifttype'), $shifttypes, $shifttype_id), form_spinner('add_minutes_start', _("Add minutes to start"), $add_minutes_start), form_spinner('add_minutes_end', _("Add minutes to end"), $add_minutes_end), form_file('xcal_file', _("xcal-File (.xcal)")), form_submit('submit', _("Import")) - )) + ]) ]) ]); } @@ -108,23 +111,23 @@ function admin_import() { redirect(page_link_to('admin_import')); } - if (isset($_REQUEST['shifttype_id']) && isset($shifttypes[$_REQUEST['shifttype_id']])) + if (isset($_REQUEST['shifttype_id']) && isset($shifttypes[$_REQUEST['shifttype_id']])) { $shifttype_id = $_REQUEST['shifttype_id']; - else { + } else { error(_('Please select a shift type.')); redirect(page_link_to('admin_import')); } - if (isset($_REQUEST['add_minutes_start']) && is_numeric(trim($_REQUEST['add_minutes_start']))) + if (isset($_REQUEST['add_minutes_start']) && is_numeric(trim($_REQUEST['add_minutes_start']))) { $add_minutes_start = trim($_REQUEST['add_minutes_start']); - else { + } else { error(_("Please enter an amount of minutes to add to a talk's begin.")); redirect(page_link_to('admin_import')); } - if (isset($_REQUEST['add_minutes_end']) && is_numeric(trim($_REQUEST['add_minutes_end']))) + if (isset($_REQUEST['add_minutes_end']) && is_numeric(trim($_REQUEST['add_minutes_end']))) { $add_minutes_end = trim($_REQUEST['add_minutes_end']); - else { + } else { error(_("Please enter an amount of minutes to add to a talk's end.")); redirect(page_link_to('admin_import')); } @@ -146,32 +149,32 @@ function admin_import() { ]) ]), '

' . _("Shifts to create") . '

', - table(array( + table([ 'day' => _("Day"), 'start' => _("Start"), 'end' => _("End"), 'shifttype' => _('Shift type'), 'title' => _("Title"), 'room' => _("Room") - ), shifts_printable($events_new, $shifttypes)), + ], shifts_printable($events_new, $shifttypes)), '

' . _("Shifts to update") . '

', - table(array( + table([ 'day' => _("Day"), 'start' => _("Start"), 'end' => _("End"), 'shifttype' => _('Shift type'), 'title' => _("Title"), 'room' => _("Room") - ), shifts_printable($events_updated, $shifttypes)), + ], shifts_printable($events_updated, $shifttypes)), '

' . _("Shifts to delete") . '

', - table(array( + table([ 'day' => _("Day"), 'start' => _("Start"), 'end' => _("End"), 'shifttype' => _('Shift type'), 'title' => _("Title"), 'room' => _("Room") - ), shifts_printable($events_deleted, $shifttypes)), + ], shifts_printable($events_deleted, $shifttypes)), form_submit('submit', _("Import")) ], page_link_to('admin_import') . '&step=import&shifttype_id=' . $shifttype_id . "&add_minutes_end=" . $add_minutes_end . "&add_minutes_start=" . $add_minutes_start); break; @@ -182,26 +185,27 @@ function admin_import() { redirect(page_link_to('admin_import')); } - if (! file_exists($import_file)) + if (! file_exists($import_file)) { redirect(page_link_to('admin_import')); + } - if (isset($_REQUEST['shifttype_id']) && isset($shifttypes[$_REQUEST['shifttype_id']])) + if (isset($_REQUEST['shifttype_id']) && isset($shifttypes[$_REQUEST['shifttype_id']])) { $shifttype_id = $_REQUEST['shifttype_id']; - else { + } else { error(_('Please select a shift type.')); redirect(page_link_to('admin_import')); } - if (isset($_REQUEST['add_minutes_start']) && is_numeric(trim($_REQUEST['add_minutes_start']))) + if (isset($_REQUEST['add_minutes_start']) && is_numeric(trim($_REQUEST['add_minutes_start']))) { $add_minutes_start = trim($_REQUEST['add_minutes_start']); - else { + } else { error(_("Please enter an amount of minutes to add to a talk's begin.")); redirect(page_link_to('admin_import')); } - if (isset($_REQUEST['add_minutes_end']) && is_numeric(trim($_REQUEST['add_minutes_end']))) + if (isset($_REQUEST['add_minutes_end']) && is_numeric(trim($_REQUEST['add_minutes_end']))) { $add_minutes_end = trim($_REQUEST['add_minutes_end']); - else { + } else { error(_("Please enter an amount of minutes to add to a talk's end.")); redirect(page_link_to('admin_import')); } @@ -209,33 +213,38 @@ function admin_import() { list($rooms_new, $rooms_deleted) = prepare_rooms($import_file); foreach ($rooms_new as $room) { $result = Room_create($room, true, true); - if ($result === false) + if ($result === false) { engelsystem_error('Unable to create room.'); + } $rooms_import[trim($room)] = sql_id(); } - foreach ($rooms_deleted as $room) + foreach ($rooms_deleted as $room) { sql_query("DELETE FROM `Room` WHERE `Name`='" . sql_escape($room) . "' LIMIT 1"); + } list($events_new, $events_updated, $events_deleted) = prepare_events($import_file, $shifttype_id, $add_minutes_start, $add_minutes_end); foreach ($events_new as $event) { $result = Shift_create($event); - if ($result === false) + if ($result === false) { engelsystem_error('Unable to create shift.'); + } } foreach ($events_updated as $event) { $result = Shift_update_by_psid($event); - if ($result === false) + if ($result === false) { engelsystem_error('Unable to update shift.'); + } } foreach ($events_deleted as $event) { $result = Shift_delete_by_psid($event['PSID']); - if ($result === false) + if ($result === false) { engelsystem_error('Unable to delete shift.'); + } } - engelsystem_log("Pentabarf import done"); + engelsystem_log("Frab import done"); unlink($import_file); @@ -258,30 +267,31 @@ function prepare_rooms($file) { $data = read_xml($file); // Load rooms from db for compare with input - $rooms = sql_select("SELECT * FROM `Room` WHERE `FromPentabarf`='Y'"); - $rooms_db = array(); - $rooms_import = array(); + $rooms = sql_select("SELECT * FROM `Room`"); + $rooms_db = []; + $rooms_import = []; foreach ($rooms as $room) { $rooms_db[] = (string) $room['Name']; $rooms_import[$room['Name']] = $room['RID']; } $events = $data->vcalendar->vevent; - $rooms_pb = array(); + $rooms_pb = []; foreach ($events as $event) { $rooms_pb[] = (string) $event->location; - if (! isset($rooms_import[trim($event->location)])) + if (! isset($rooms_import[trim($event->location)])) { $rooms_import[trim($event->location)] = trim($event->location); + } } $rooms_pb = array_unique($rooms_pb); $rooms_new = array_diff($rooms_pb, $rooms_db); $rooms_deleted = array_diff($rooms_db, $rooms_pb); - return array( + return [ $rooms_new, $rooms_deleted - ); + ]; } function prepare_events($file, $shifttype_id, $add_minutes_start, $add_minutes_end) { @@ -289,17 +299,18 @@ function prepare_events($file, $shifttype_id, $add_minutes_start, $add_minutes_e $data = read_xml($file); $rooms = sql_select("SELECT * FROM `Room`"); - $rooms_db = array(); - foreach ($rooms as $room) + $rooms_db = []; + foreach ($rooms as $room) { $rooms_db[$room['Name']] = $room['RID']; + } $events = $data->vcalendar->vevent; - $shifts_pb = array(); + $shifts_pb = []; foreach ($events as $event) { $event_pb = $event->children("http://pentabarf.org"); $event_id = trim($event_pb->{ 'event-id' }); - $shifts_pb[$event_id] = array( + $shifts_pb[$event_id] = [ 'shifttype_id' => $shifttype_id, 'start' => DateTime::createFromFormat("Ymd\THis", $event->dtstart)->getTimestamp() - $add_minutes_start * 60, 'end' => DateTime::createFromFormat("Ymd\THis", $event->dtend)->getTimestamp() + $add_minutes_end * 60, @@ -307,41 +318,47 @@ function prepare_events($file, $shifttype_id, $add_minutes_start, $add_minutes_e 'title' => trim($event->summary), 'URL' => trim($event->url), 'PSID' => $event_id - ); + ]; } $shifts = sql_select("SELECT * FROM `Shifts` WHERE `PSID` IS NOT NULL ORDER BY `start`"); - $shifts_db = array(); - foreach ($shifts as $shift) + $shifts_db = []; + foreach ($shifts as $shift) { $shifts_db[$shift['PSID']] = $shift; + } $shifts_new = []; $shifts_updated = []; - foreach ($shifts_pb as $shift) - if (! isset($shifts_db[$shift['PSID']])) + foreach ($shifts_pb as $shift) { + if (! isset($shifts_db[$shift['PSID']])) { $shifts_new[] = $shift; - else { + } else { $tmp = $shifts_db[$shift['PSID']]; - if ($shift['shifttype_id'] != $tmp['shifttype_id'] || $shift['title'] != $tmp['title'] || $shift['start'] != $tmp['start'] || $shift['end'] != $tmp['end'] || $shift['RID'] != $tmp['RID'] || $shift['URL'] != $tmp['URL']) + if ($shift['shifttype_id'] != $tmp['shifttype_id'] || $shift['title'] != $tmp['title'] || $shift['start'] != $tmp['start'] || $shift['end'] != $tmp['end'] || $shift['RID'] != $tmp['RID'] || $shift['URL'] != $tmp['URL']) { $shifts_updated[] = $shift; + } } + } - $shifts_deleted = array(); - foreach ($shifts_db as $shift) - if (! isset($shifts_pb[$shift['PSID']])) + $shifts_deleted = []; + foreach ($shifts_db as $shift) { + if (! isset($shifts_pb[$shift['PSID']])) { $shifts_deleted[] = $shift; + } + } - return array( + return [ $shifts_new, $shifts_updated, $shifts_deleted - ); + ]; } function read_xml($file) { global $xml_import; - if (! isset($xml_import)) + if (! isset($xml_import)) { $xml_import = simplexml_load_file($file); + } return $xml_import; } @@ -351,9 +368,9 @@ function shifts_printable($shifts, $shifttypes) { uasort($shifts, 'shift_sort'); - $shifts_printable = array(); - foreach ($shifts as $shift) - $shifts_printable[] = array( + $shifts_printable = []; + foreach ($shifts as $shift) { + $shifts_printable[] = [ 'day' => date("l, Y-m-d", $shift['start']), 'start' => date("H:i", $shift['start']), 'shifttype' => ShiftType_name_render([ @@ -363,7 +380,8 @@ function shifts_printable($shifts, $shifttypes) { 'title' => shorten($shift['title']), 'end' => date("H:i", $shift['end']), 'room' => $rooms[$shift['RID']] - ); + ]; + } return $shifts_printable; } -- cgit v1.2.3-54-g00ecf