From c6cb6fa64d5c950f01eebd80ced1c5873fd7c039 Mon Sep 17 00:00:00 2001 From: Trevor Vallender Date: Wed, 22 Nov 2023 20:11:25 +0000 Subject: [PATCH] =?UTF-8?q?Let=20subprojects=20view=20their=20parents?= =?UTF-8?q?=E2=80=99=20jobs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/jobs_controller.rb | 2 +- app/models/job.rb | 1 + app/views/jobs/_form.html.erb | 1 - app/views/timelogs/_edit_form_bottom.html.erb | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/jobs_controller.rb b/app/controllers/jobs_controller.rb index f080bcb..6e2bc41 100644 --- a/app/controllers/jobs_controller.rb +++ b/app/controllers/jobs_controller.rb @@ -3,7 +3,7 @@ class JobsController < ApplicationController before_action :set_job, only: [:show, :edit, :update, :destroy] def index - @jobs = Job.all + @jobs = Job.project_or_parent(@project) end def show diff --git a/app/models/job.rb b/app/models/job.rb index aa36573..ff6ad68 100644 --- a/app/models/job.rb +++ b/app/models/job.rb @@ -10,6 +10,7 @@ class Job < ActiveRecord::Base has_many :time_entries scope :project, ->(project) { where(project_id: project.id) } + scope :project_or_parent, ->(project) { where(project_id: [project.id, project.parent.id]) } def total_time_logged TimeEntry.where(job_id: id) diff --git a/app/views/jobs/_form.html.erb b/app/views/jobs/_form.html.erb index bb2a46f..46a7a26 100644 --- a/app/views/jobs/_form.html.erb +++ b/app/views/jobs/_form.html.erb @@ -34,5 +34,4 @@ <%= f.submit %> - <%= link_to "Cancel", job_path(@job, project_id: @project.id) %> <% end %> diff --git a/app/views/timelogs/_edit_form_bottom.html.erb b/app/views/timelogs/_edit_form_bottom.html.erb index 130c458..8194e58 100644 --- a/app/views/timelogs/_edit_form_bottom.html.erb +++ b/app/views/timelogs/_edit_form_bottom.html.erb @@ -1,4 +1,4 @@

<%= form.label :job_id %> -<%= form.collection_select :job_id, Job.project(@project), :id, :name %> +<%= form.collection_select :job_id, Job.project_or_parent(@project), :id, :name %>