From 01cdc7da7f94e7a201bf19cf2d71671a4330a296 Mon Sep 17 00:00:00 2001 From: evazion Date: Sun, 26 Sep 2021 08:06:01 -0500 Subject: [PATCH] media assets: add status column. --- app/models/media_asset.rb | 7 +++++++ .../20210926125826_add_status_to_media_assets.rb | 6 ++++++ db/structure.sql | 13 +++++++++++-- 3 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20210926125826_add_status_to_media_assets.rb diff --git a/app/models/media_asset.rb b/app/models/media_asset.rb index be6b7db14..44e01a7f1 100644 --- a/app/models/media_asset.rb +++ b/app/models/media_asset.rb @@ -3,6 +3,13 @@ class MediaAsset < ApplicationRecord delegate :metadata, to: :media_metadata delegate :is_animated?, :is_animated_gif?, :is_animated_png?, :is_non_repeating_animation?, :is_greyscale?, :is_rotated?, to: :metadata + enum status: { + processing: 100, + active: 200, + deleted: 300, + expunged: 400, + } + def self.search(params) q = search_attributes(params, :id, :created_at, :updated_at, :md5, :file_ext, :file_size, :image_width, :image_height) q = q.apply_default_order(params) diff --git a/db/migrate/20210926125826_add_status_to_media_assets.rb b/db/migrate/20210926125826_add_status_to_media_assets.rb new file mode 100644 index 000000000..0d3160ab4 --- /dev/null +++ b/db/migrate/20210926125826_add_status_to_media_assets.rb @@ -0,0 +1,6 @@ +class AddStatusToMediaAssets < ActiveRecord::Migration[6.1] + def change + add_column :media_assets, :status, :integer, null: false, default: 200, if_not_exists: true + add_index :media_assets, :status, where: "status != 200" + end +end diff --git a/db/structure.sql b/db/structure.sql index 93f5a42f7..33f4df101 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -2474,7 +2474,8 @@ CREATE TABLE public.media_assets ( file_size integer NOT NULL, image_width integer NOT NULL, image_height integer NOT NULL, - duration double precision + duration double precision, + status integer DEFAULT 200 NOT NULL ); @@ -7199,6 +7200,13 @@ CREATE INDEX index_media_assets_on_image_width ON public.media_assets USING btre CREATE INDEX index_media_assets_on_md5 ON public.media_assets USING btree (md5); +-- +-- Name: index_media_assets_on_status; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_media_assets_on_status ON public.media_assets USING btree (status) WHERE (status <> 200); + + -- -- Name: index_media_assets_on_updated_at; Type: INDEX; Schema: public; Owner: - -- @@ -8438,6 +8446,7 @@ INSERT INTO "schema_migrations" (version) VALUES ('20210908015203'), ('20210921164936'), ('20210921170444'), -('20210926123414'); +('20210926123414'), +('20210926125826');