public function update($section_id) { $section = Section::find($section_id, 'id'); $section->name = $_POST['name']; $section->slug = Functions::URLSafe($_POST['name']); $section->save(); // delete fields not in the POST data foreach ($section->fields() as $field) { $del = true; if (isset($_POST['field-id'])) { for ($f = 1; $f < count($_POST['field-id']); $f++) { if (intval($field->id) == intval($_POST['field-id'][$f])) { $del = false; } } } if ($del) { $field->delete(); } } // add/update fields in the POST data if (count($_POST['field-name']) > 1) { for ($f = 0; $f < count($_POST['field-id']); $f++) { $field = new Field(); $field->id = $_POST['field-id'][$f] != '' ? $_POST['field-id'][$f] : null; $field->section = $section->id; $field->name = $_POST['field-name'][$f]; $field->type = $_POST['field-type'][$f]; $field->order = $_POST['field-order'][$f]; $field->list = $_POST['field-list'][$f]; $field->slug = $_POST['field-slug'][$f]; $field->save(); } } Functions::redirect(Settings::cloutURL() . '/settings/sections/' . $section->id); }