From cf589edda048ea204007604337a67faee171f301 Mon Sep 17 00:00:00 2001
From: Manuel Bustillo <bustikiller@bustikiller.com>
Date: Sun, 26 Jan 2025 12:39:25 +0100
Subject: [PATCH] Mark unexpired distributions as valid

---
 app/controllers/tables_arrangements_controller.rb | 9 ++++++++-
 spec/requests/tables_arrangements_spec.rb         | 3 ++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/app/controllers/tables_arrangements_controller.rb b/app/controllers/tables_arrangements_controller.rb
index c09d453..356343d 100644
--- a/app/controllers/tables_arrangements_controller.rb
+++ b/app/controllers/tables_arrangements_controller.rb
@@ -4,7 +4,14 @@
 
 class TablesArrangementsController < ApplicationController
   def index
-    render json: TablesArrangement.order(discomfort: :asc).limit(3).as_json(only: %i[id name discomfort])
+    current_digest = Tables::Distribution.digest(current_tenant)
+
+    render json: TablesArrangement
+      .order(discomfort: :asc)
+      .select(:id, :name, :discomfort)
+      .select("digest = '#{current_digest}'::uuid as valid")
+      .limit(3)
+      .as_json(only: %i[id name discomfort valid])
   end
 
   def show
diff --git a/spec/requests/tables_arrangements_spec.rb b/spec/requests/tables_arrangements_spec.rb
index 4e87cb2..98fe74f 100644
--- a/spec/requests/tables_arrangements_spec.rb
+++ b/spec/requests/tables_arrangements_spec.rb
@@ -18,7 +18,8 @@ RSpec.describe 'tables_arrangements' do
                  properties: {
                    id: { type: :string, format: :uuid },
                    name: { type: :string },
-                   discomfort: { type: :integer }
+                   discomfort: { type: :integer },
+                   valid: { type: :boolean }
                  }
                }
         xit