コード例 #1
0
ファイル: projects.php プロジェクト: hdragomir/ProjectsLounge
 public function edit($id)
 {
     $user = User_Model::current();
     $project = ORM::factory('project', $id);
     if (!$user->loaded && $project->user_can($user, 'edit')) {
         return $this->template->content = 'oh, come on!';
     }
     if ($post = $this->input->post('project')) {
         $validation = Projects_utils::projects_edit_validation($post);
         if (!$project->validate($validation, true)) {
             return $this->template->content = Kohana::debug($validation->errors());
         }
         if ($additional_user_emails = $this->input->post('additional_user_emails')) {
             $additional_user_roles = $this->input->post('additional_user_roles');
             foreach ($additional_user_emails as $email) {
                 Profiles_utils::reserve_email_if_available($email);
             }
             $additional_users = array_combine($additional_user_emails, $additional_user_roles);
             $project->add_user_roles($additional_users);
         }
         url::redirect($project->local_url);
     } else {
         HTMLPage::add_style('forms');
         $this->template->content = View::factory('projects/edit')->bind('project_types', Projects_utils::get_project_types_dropdown_array())->bind('project', $project)->bind('user', $user);
     }
 }