/** * Create a new department * * @since 0.1 * * @return void */ public function department_create() { $this->verify_nonce('erp-new-dept'); // @TODO: check permission $title = isset($_POST['title']) ? trim(strip_tags($_POST['title'])) : ''; $desc = isset($_POST['dept-desc']) ? trim(strip_tags($_POST['dept-desc'])) : ''; $dept_id = isset($_POST['dept_id']) ? intval($_POST['dept_id']) : 0; $lead = isset($_POST['lead']) ? intval($_POST['lead']) : 0; $parent = isset($_POST['parent']) ? intval($_POST['parent']) : 0; // on update, ensure $parent != $dept_id if ($dept_id == $parent) { $parent = 0; } $dept_id = erp_hr_create_department(array('id' => $dept_id, 'title' => $title, 'description' => $desc, 'lead' => $lead, 'parent' => $parent)); if (is_wp_error($dept_id)) { $this->send_error($dept_id->get_error_message()); } $this->send_success(array('id' => $dept_id, 'title' => $title, 'lead' => $lead, 'parent' => $parent, 'employee' => 0)); }
public function setup_step_departments_save() { check_admin_referer('erp-setup'); $departments = array_map('sanitize_text_field', $_POST['departments']); if ($departments) { foreach ($departments as $department) { if (!empty($department)) { erp_hr_create_department(['title' => $department]); } } } wp_redirect(esc_url_raw($this->get_next_step_link())); exit; }