public function destroy($id)
 {
     try {
         //Buscando dados do Projeto
         $projects = new Project();
         $p = $projects->where('client_id', $id)->get();
         //removendo notas do projeto
         $notes = new ProjectNote();
         foreach ($p as $project) {
             $notes->where('project_id', $project->id)->delete();
         }
         //removendo projeto
         $projects->where('client_id', $id)->delete();
         //removendo client
         $this->repository->find($id)->delete();
         return json_encode(['success' => 'user removed']);
     } catch (\Exception $e) {
         return json_encode(['error' => 'Project not found', 'msg' => $e->getMessage()]);
     }
 }
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     $note_id = $request->note;
     $user_id = \Authorizer::getResourceOwnerId();
     $note = ProjectNote::find($note_id);
     if (is_null($note)) {
         return Errors::invalidId($note_id);
     }
     if (!$this->repository->isMember($note->project_id, $user_id)) {
         return Errors::basic('Acesso negado! Você não é membro do projeto desta nota.');
     }
     return $next($request);
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     Eloquent::unguard();
     /*Desativa chave etrangeira*/
     DB::statement('SET FOREIGN_KEY_CHECKS=0;');
     \CodeProject\Entities\ProjectTask::truncate();
     \CodeProject\Entities\ProjectMember::truncate();
     \CodeProject\Entities\ProjectNote::truncate();
     \CodeProject\Entities\Project::truncate();
     \CodeProject\Entities\Client::truncate();
     \CodeProject\Entities\User::truncate();
     $this->call(UserTableSeeder::class);
     $this->call(ClientTableSeeder::class);
     $this->call(ProjectTableSeeder::class);
     $this->call(ProjectNoteTableSeeder::class);
     $this->call(ProjectMembersTableSeeder::class);
     $this->call(ProjectTasksTableSeeder::class);
     /*ativa chave estrangeira*/
     DB::statement('SET FOREIGN_KEY_CHECKS=1;');
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     Model::unguard();
     DB::statement('SET FOREIGN_KEY_CHECKS=0;');
     Project::truncate();
     User::truncate();
     Client::truncate();
     ProjectNote::truncate();
     ProjectTask::truncate();
     ProjectMember::truncate();
     OauthClient::truncate();
     DB::statement('SET FOREIGN_KEY_CHECKS=1;');
     $this->call(ClientTableSeeder::class);
     $this->call(UserTableSeeder::class);
     $this->call(ProjectTableSeeder::class);
     $this->call(ProjectNoteTableSeeder::class);
     $this->call(ProjectTaskTableSeeder::class);
     $this->call(ProjectMemberTableSeeder::class);
     $this->call(OauthClientSeeder::class);
     Model::reguard();
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     Model::unguard();
     DB::statement('SET foreign_key_checks = 0');
     ProjectNote::truncate();
     ProjectTask::truncate();
     ProjectMember::truncate();
     ProjectFile::truncate();
     Project::truncate();
     Client::truncate();
     User::truncate();
     OAuthClient::truncate();
     DB::statement('SET foreign_key_checks = 1');
     $this->call(UserTableSeeder::class);
     $this->call(ClientTableSeeder::class);
     $this->call(ProjectTableSeeder::class);
     $this->call(ProjectNoteTableSeeder::class);
     $this->call(ProjectMemberTableSeeder::class);
     $this->call(ProjectTaskTableSeeder::class);
     $this->call(OAuthClientTableSeeder::class);
     Model::reguard();
 }
 public function includeProject(ProjectNote $projectNote)
 {
     return $this->collection($projectNote->project()->get(), new ProjectTransformer());
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     ProjectNote::truncate();
     factory(ProjectNote::class, 50)->create();
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     \CodeProject\Entities\ProjectNote::truncate();
     factory(\CodeProject\Entities\ProjectNote::class, 50)->create();
 }
 public function delete($note_id)
 {
     $note = ProjectNote::find($note_id);
     if (is_null($note)) {
         return Errors::invalidId($note_id);
     }
     $user_id = \Authorizer::getResourceOwnerId();
     if (!$this->projectRepository->isMember($note->project_id, $user_id)) {
         return Errors::basic('Acesso negado. Você não é membro do projeto desta nota.');
     }
     $this->repository->delete($note_id);
     return ['message' => "Registro deletado!"];
 }
 public function transform(ProjectNote $model)
 {
     return ['id' => $model->id, 'project_id' => $model->project_id, 'title' => $model->title, 'note' => $model->note, 'created_at' => $model->getCreatedAt(), 'updated_at' => $model->getUpdatedAt()];
 }