mirror of
https://github.com/Growstuff/growstuff.git
synced 2026-10-31 03:09:06 -04:00
44 lines
2.6 KiB
Plaintext
44 lines
2.6 KiB
Plaintext
.notepad-job{ class: ('done' if job.finished), draggable: 'true', data: { url: job_path(job), id: job.id } }
|
|
- label = t(job.finished ? 'jobs.pad.uncross' : 'jobs.pad.cross_off', job: job.name)
|
|
= button_to '', job_path(job), method: :patch, params: { job: { finished: job.finished ? 0 : 1 } },
|
|
class: ['notepad-box', ('checked' if job.finished)], form_class: 'notepad-tick', title: label, 'aria-label': label
|
|
%span.notepad-name{ data: { edit_label: t('jobs.pad.edit_label') } }= job.name
|
|
%span.notepad-edit-hint{ hidden: true }= t('jobs.pad.edit_hint')
|
|
- if job.garden && !local_assigns[:in_garden]
|
|
= link_to garden_path(job.garden), class: 'notepad-chip garden' do
|
|
%span.kind= t('jobs.pad.garden')
|
|
= job.garden.name
|
|
- case job.jobbable
|
|
- when Planting
|
|
= link_to planting_path(job.jobbable), class: 'notepad-chip' do
|
|
%span.kind= t('jobs.pad.planting')
|
|
= job.jobbable.crop_name
|
|
- if job.garden.blank? && job.jobbable.garden
|
|
%span.in= t('jobs.pad.in_garden', garden: job.jobbable.garden.name)
|
|
- when Seed
|
|
= link_to seed_path(job.jobbable), class: 'notepad-chip' do
|
|
%span.kind= t('jobs.pad.seeds')
|
|
= job.jobbable.crop.name
|
|
- when Crop
|
|
= link_to crop_path(job.jobbable), class: 'notepad-chip' do
|
|
%span.kind= t('jobs.pad.crop')
|
|
= job.jobbable.name
|
|
- date_label = job_date_label(job)
|
|
- PhotoAssociation::LABELS['Job'].index_with { |moment| job.photo_at(moment) }.compact.each do |moment, photo|
|
|
= link_to photo_path(photo), class: 'notepad-photo', title: t("jobs.pad.photo_of_#{moment}", title: photo.title) do
|
|
= image_tag photo.thumbnail_url, alt: t("jobs.pad.photo_of_#{moment}", title: photo.title)
|
|
%span.notepad-photo-moment= t("jobs.pad.#{moment}")
|
|
- if job.finished
|
|
- if date_label
|
|
%span.notepad-due{ class: ('late' if job_overdue?(job)) }= date_label
|
|
- elsif can?(:edit, job)
|
|
-# The day is a menu: move the job to a day, or pick one from a calendar.
|
|
.dropdown.notepad-day
|
|
%a.notepad-due{ href: '#', role: 'button', class: [('late' if job_overdue?(job)), ('unset' unless date_label)], 'aria-haspopup': 'true', 'aria-expanded': 'false',
|
|
title: t('jobs.pad.change_day'), data: { 'bs-toggle': 'dropdown' } }= date_label || t('jobs.pad.set_day')
|
|
.dropdown-menu.dropdown-menu-end= render 'jobs/reschedule', job:, inline_edit: true
|
|
%input.notepad-date-input{ type: 'date', value: job.due_date&.to_fs(:ymd), tabindex: -1, 'aria-label': t('jobs.pad.change_date') }
|
|
- elsif date_label
|
|
%span.notepad-due{ class: ('late' if job_overdue?(job)) }= date_label
|
|
.notepad-menu= render 'jobs/actions', job:, inline_edit: true
|