public function save($data) { if ($data['id'] > 0) { $modelExecutors = new Executors(); if (is_array($data['executors']) && count($data['executors']) > 0) { $modelExecutors->setWhere(array('projects_id' => $data['id'])); $modelExecutors->delete(); foreach ($data['executors'] as $item) { $modelExecutors->insert(array('users_id' => $item, 'projects_id' => $data['id'])); } } else { $modelExecutors->setWhere(array('projects_id' => $data['id'])); $modelExecutors->delete(); } unset($data['executors']); $this->update($data, array('id' => $data['id'])); } else { if ($data['id'] == 0) { $session = SessionRegistry::instance(); $data['initiator'] = $session->getCurrentUser()->id; $data['date_added'] = date('Y-m-d'); $data['project_status_id'] = 1; $data['id'] = $this->insert($data); } } return $data['id']; }