diff --git a/application/models/experiment.php b/application/models/experiment.php index e0c4608..42aa772 100644 --- a/application/models/experiment.php +++ b/application/models/experiment.php @@ -215,22 +215,22 @@ class Experiment extends CI_Model { $this->db->where('projects.id', $projectId); } - if ($searchAll) { - $query = $this->db->like('name', $needle)->get('experiments'); - } else { - $this->db->select('experiments.*')->from('experiments'); + $this->db->select('experiments.*')->from('experiments'); + + if (!$searchAll) { $this->db->join('projects', 'projects.id = experiments.project_id', 'left'); $this->db->join('shares', 'shares.project_id = projects.id', 'left'); $this->db->where("(`shares`.`user_id` = " . $this->db->escape($this->session->userdata('user_id')) . " OR `projects`.`owner` = " . $this->db->escape($this->session->userdata('user_id')) . " OR `projects`.`public` = 1)"); - - $this->db->like('experiments.name', $needle); - - $query = $this->db->get(); } + $this->db->like('experiments.name', $needle); + $this->db->or_like('experiments.id', $needle); + + $query = $this->db->get(); + return $query->result_array(); } } diff --git a/application/models/project.php b/application/models/project.php index fa210c5..cb2242d 100644 --- a/application/models/project.php +++ b/application/models/project.php @@ -172,21 +172,21 @@ class Project extends CI_Model { * @return array Returns an array of all found projects. */ public function search($needle, $searchAll = false) { - if ($searchAll) { - $query = $this->db->like('name', $needle)->get('projects'); - } else { - $this->db->select('projects.*')->from('projects'); + + $this->db->select('projects.*')->from('projects'); + + if (!$searchAll) { $this->db->join('shares', 'shares.project_id = projects.id', 'left'); $this->db->where("(`shares`.`user_id` = " . $this->db->escape($this->session->userdata('user_id')) . " OR `projects`.`owner` = " . $this->db->escape($this->session->userdata('user_id')) . " OR `projects`.`public` = 1)"); - - $this->db->like('projects.name', $needle); - - $query = $this->db->get(); } + $this->db->like('projects.name', $needle); + $this->db->or_like('projects.id', $needle); + $query = $this->db->get(); + return $this->addShortNames($query->result_array()); }