From 2f31f65af271494316eca8f77298663e4474e701 Mon Sep 17 00:00:00 2001 From: 24c02 <163450896+24c02@users.noreply.github.com> Date: Fri, 21 Feb 2025 19:07:29 -0500 Subject: [PATCH 1/2] add emojis --- app/models/user.rb | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/app/models/user.rb b/app/models/user.rb index 718c60f..2af6cf3 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -32,14 +32,40 @@ class User < ApplicationRecord return unless uses_slack_status? current_project = heartbeats.order(time: :desc).first&.project - current_project_duration = Heartbeat.duration_simple(heartbeats.today.where(project: current_project)) + current_project_heartbeats = heartbeats.today.where(project: current_project) + current_project_duration = Heartbeat.duration_seconds(current_project_heartbeats) + current_project_duration_formatted = Heartbeat.duration_simple(current_project_heartbeats) + + status_emoji = case current_project_duration + when 0...30.minutes + %w[thinking cat-on-the-laptop loading-tumbleweed rac-yap] + when 30.minutes...1.hour + %w[working-parrot meow_code] + when 1.hour...2.hours + %w[working-parrot meow-code] + when 2.hours...3.hours + %w[working-parrot cat-typing bangbang] + when 3.hours...5.hours + %w[cat-typing meow-code laptop-fire bangbang] + when 5.hours...8.hours + %w[cat-typing laptop-fire hole-mantelpiece_clock keyboard-fire bangbang bangbang] + when 8.hours...15.hours + %w[laptop-fire bangbang bangbang rac_freaking rac_freakinghole-mantelpiece_clock] + when 15.hours...20.hours + %w[bangbang bangbang rac_freaking hole-mantelpiece_clock] + else + %w[areyousure time-to-stop] + end.sample + + status_emoji = ":#{status_emoji}:" + status_text = "#{current_project_duration_formatted} spent on #{current_project} today" # Update the user's status HTTP.auth("Bearer #{slack_access_token}") .post("https://slack.com/api/users.profile.set", form: { profile: { - status_text: "#{current_project_duration} spent on #{current_project} today", - status_emoji: ":thinking_face:" + status_text:, + status_emoji: } }) end From 81f68ae68d8d032b3ff463e9470736a940592d99 Mon Sep 17 00:00:00 2001 From: Max Wofford Date: Fri, 21 Feb 2025 20:12:45 -0500 Subject: [PATCH 2/2] Rubocop fixes --- app/models/user.rb | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/app/models/user.rb b/app/models/user.rb index 2af6cf3..b8f124c 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -36,26 +36,27 @@ class User < ApplicationRecord current_project_duration = Heartbeat.duration_seconds(current_project_heartbeats) current_project_duration_formatted = Heartbeat.duration_simple(current_project_heartbeats) - status_emoji = case current_project_duration - when 0...30.minutes - %w[thinking cat-on-the-laptop loading-tumbleweed rac-yap] - when 30.minutes...1.hour - %w[working-parrot meow_code] - when 1.hour...2.hours - %w[working-parrot meow-code] - when 2.hours...3.hours - %w[working-parrot cat-typing bangbang] - when 3.hours...5.hours - %w[cat-typing meow-code laptop-fire bangbang] - when 5.hours...8.hours - %w[cat-typing laptop-fire hole-mantelpiece_clock keyboard-fire bangbang bangbang] - when 8.hours...15.hours - %w[laptop-fire bangbang bangbang rac_freaking rac_freakinghole-mantelpiece_clock] - when 15.hours...20.hours - %w[bangbang bangbang rac_freaking hole-mantelpiece_clock] - else - %w[areyousure time-to-stop] - end.sample + status_emoji = + case current_project_duration + when 0...30.minutes + %w[thinking cat-on-the-laptop loading-tumbleweed rac-yap] + when 30.minutes...1.hour + %w[working-parrot meow_code] + when 1.hour...2.hours + %w[working-parrot meow-code] + when 2.hours...3.hours + %w[working-parrot cat-typing bangbang] + when 3.hours...5.hours + %w[cat-typing meow-code laptop-fire bangbang] + when 5.hours...8.hours + %w[cat-typing laptop-fire hole-mantelpiece_clock keyboard-fire bangbang bangbang] + when 8.hours...15.hours + %w[laptop-fire bangbang bangbang rac_freaking rac_freakinghole-mantelpiece_clock] + when 15.hours...20.hours + %w[bangbang bangbang rac_freaking hole-mantelpiece_clock] + else + %w[areyousure time-to-stop] + end.sample status_emoji = ":#{status_emoji}:" status_text = "#{current_project_duration_formatted} spent on #{current_project} today"