CC-1985: Automatic rebroadcast of recorded content
populates rebroadcast show instances now, added a new table cc_show_rebroadcast, added columns record, rebroadcast, instance_id, file_id to cc_show_instances table. added column record to cc_show_days.
This commit is contained in:
parent
eb2caf0adc
commit
6ef4169315
36 changed files with 4776 additions and 155 deletions
|
@ -185,6 +185,10 @@ CREATE TABLE "cc_show_instances"
|
|||
"starts" TIMESTAMP NOT NULL,
|
||||
"ends" TIMESTAMP NOT NULL,
|
||||
"show_id" INTEGER NOT NULL,
|
||||
"record" INT2,
|
||||
"rebroadcast" INT2,
|
||||
"instance_id" INTEGER,
|
||||
"file_id" INTEGER,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
|
@ -210,12 +214,33 @@ CREATE TABLE "cc_show_days"
|
|||
"repeat_type" INT2 NOT NULL,
|
||||
"next_pop_date" DATE,
|
||||
"show_id" INTEGER NOT NULL,
|
||||
"record" INT2,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
COMMENT ON TABLE "cc_show_days" IS '';
|
||||
|
||||
|
||||
SET search_path TO public;
|
||||
-----------------------------------------------------------------------------
|
||||
-- cc_show_rebroadcast
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
DROP TABLE "cc_show_rebroadcast" CASCADE;
|
||||
|
||||
|
||||
CREATE TABLE "cc_show_rebroadcast"
|
||||
(
|
||||
"id" serial NOT NULL,
|
||||
"day_offset" VARCHAR(255) NOT NULL,
|
||||
"start_time" TIME NOT NULL,
|
||||
"show_id" INTEGER NOT NULL,
|
||||
PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
COMMENT ON TABLE "cc_show_rebroadcast" IS '';
|
||||
|
||||
|
||||
SET search_path TO public;
|
||||
-----------------------------------------------------------------------------
|
||||
-- cc_show_hosts
|
||||
|
@ -469,8 +494,14 @@ ALTER TABLE "cc_perms" ADD CONSTRAINT "cc_perms_subj_fkey" FOREIGN KEY ("subj")
|
|||
|
||||
ALTER TABLE "cc_show_instances" ADD CONSTRAINT "cc_show_fkey" FOREIGN KEY ("show_id") REFERENCES "cc_show" ("id") ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE "cc_show_instances" ADD CONSTRAINT "cc_original_show_instance_fkey" FOREIGN KEY ("instance_id") REFERENCES "cc_show_instances" ("id") ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE "cc_show_instances" ADD CONSTRAINT "cc_recorded_file_fkey" FOREIGN KEY ("file_id") REFERENCES "cc_files" ("id") ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE "cc_show_days" ADD CONSTRAINT "cc_show_fkey" FOREIGN KEY ("show_id") REFERENCES "cc_show" ("id") ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE "cc_show_rebroadcast" ADD CONSTRAINT "cc_show_fkey" FOREIGN KEY ("show_id") REFERENCES "cc_show" ("id") ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE "cc_show_hosts" ADD CONSTRAINT "cc_perm_show_fkey" FOREIGN KEY ("show_id") REFERENCES "cc_show" ("id") ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE "cc_show_hosts" ADD CONSTRAINT "cc_perm_host_fkey" FOREIGN KEY ("subjs_id") REFERENCES "cc_subjs" ("id") ON DELETE CASCADE;
|
||||
|
|
|
@ -22,22 +22,3 @@ CREATE FUNCTION calculate_position() RETURNS trigger AS
|
|||
CREATE TRIGGER calculate_position AFTER INSERT OR DELETE ON cc_playlistcontents
|
||||
FOR EACH ROW EXECUTE PROCEDURE calculate_position();
|
||||
|
||||
----------------------------------------------------------------------------------
|
||||
--show_content()
|
||||
----------------------------------------------------------------------------------
|
||||
DROP FUNCTION show_content() CASCADE;
|
||||
|
||||
CREATE FUNCTION show_content() RETURNS trigger AS
|
||||
'
|
||||
BEGIN
|
||||
IF(TG_OP=''DELETE'') THEN
|
||||
UPDATE cc_show_schedule SET position = (position - 1)
|
||||
WHERE (instance_id = old.instance_id AND position > old.position);
|
||||
END IF;
|
||||
RETURN NULL;
|
||||
END;
|
||||
'
|
||||
LANGUAGE 'plpgsql';
|
||||
|
||||
CREATE TRIGGER show_content AFTER INSERT OR DELETE ON cc_show_schedule
|
||||
FOR EACH ROW EXECUTE PROCEDURE show_content();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue