Пример #1
0
 /**
  * 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));
 }
Пример #2
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;
 }