Class: Trackington::ProjectRepository

Inherits:
Object
  • Object
show all
Defined in:
lib/trackington/app/projects.rb

Instance Method Summary collapse

Instance Method Details

#all(user_id) ⇒ Object



29
30
31
# File 'lib/trackington/app/projects.rb', line 29

def all(user_id)
  get_projects(user_id: user_id)
end

#create(user_id, project_information) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/trackington/app/projects.rb', line 5

def create(user_id, project_information)
  project = Models::Project.new(project_information)
  project.save

  project_role = Models::ProjectRole.new(user_id: user_id,
                                         project_id: project.id,
                                         role_type: :owner)
  project_role.save

  sprint = Models::Sprint.new(project_id: project.id, is_backlog: true)
  sprint.save

  project.id
end

#get(project_id) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/trackington/app/projects.rb', line 20

def get(project_id)
  db_project = Models::Project.find(project_id)

  Project.new(db_project.id,
              db_project.title,
              db_project.description,
              db_project.public)
end

#publicObject



33
34
35
# File 'lib/trackington/app/projects.rb', line 33

def public
  get_projects(public: true)
end