diff --git a/app/policies/acquired_media_release_policy.rb b/app/policies/acquired_media_release_policy.rb
index f2e5108..e947756 100644
--- a/app/policies/acquired_media_release_policy.rb
+++ b/app/policies/acquired_media_release_policy.rb
@@ -12,7 +12,7 @@ class AcquiredMediaReleasePolicy < ApplicationPolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def tag_multiple?
diff --git a/app/policies/appearance_release_policy.rb b/app/policies/appearance_release_policy.rb
index b49287b..1cec72f 100644
--- a/app/policies/appearance_release_policy.rb
+++ b/app/policies/appearance_release_policy.rb
@@ -16,7 +16,7 @@ class AppearanceReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def tag_multiple?
diff --git a/app/policies/location_release_policy.rb b/app/policies/location_release_policy.rb
index 66e2114..e372806 100644
--- a/app/policies/location_release_policy.rb
+++ b/app/policies/location_release_policy.rb
@@ -16,7 +16,7 @@ class LocationReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def edit_photos?
diff --git a/app/policies/material_release_policy.rb b/app/policies/material_release_policy.rb
index 4c834f7..6934bb1 100644
--- a/app/policies/material_release_policy.rb
+++ b/app/policies/material_release_policy.rb
@@ -16,7 +16,7 @@ class MaterialReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def edit_photos?
diff --git a/app/policies/medical_release_policy.rb b/app/policies/medical_release_policy.rb
index 8866337..087f087 100644
--- a/app/policies/medical_release_policy.rb
+++ b/app/policies/medical_release_policy.rb
@@ -12,7 +12,7 @@ class MedicalReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def edit_photos?
diff --git a/app/policies/misc_release_policy.rb b/app/policies/misc_release_policy.rb
index 06bae3b..99b40e3 100644
--- a/app/policies/misc_release_policy.rb
+++ b/app/policies/misc_release_policy.rb
@@ -12,7 +12,7 @@ class MiscReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def edit_photos?
diff --git a/app/policies/music_release_policy.rb b/app/policies/music_release_policy.rb
index 14d0224..89ce948 100644
--- a/app/policies/music_release_policy.rb
+++ b/app/policies/music_release_policy.rb
@@ -12,7 +12,7 @@ class MusicReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def tag_multiple?
diff --git a/app/policies/talent_release_policy.rb b/app/policies/talent_release_policy.rb
index 5d3a308..2cfe659 100644
--- a/app/policies/talent_release_policy.rb
+++ b/app/policies/talent_release_policy.rb
@@ -12,7 +12,7 @@ class TalentReleasePolicy < ReleasePolicy
end
def destroy?
- user.manager? || user.account_manager?
+ true
end
def edit_photos?
diff --git a/app/views/broadcasts/show.html.erb b/app/views/broadcasts/show.html.erb
index 42b83a7..4d6e507 100644
--- a/app/views/broadcasts/show.html.erb
+++ b/app/views/broadcasts/show.html.erb
@@ -33,7 +33,7 @@
<%= link_to "Switch View", "#", class: "btn btn-light border dropdown-toggle", role: "button", id: "dropdownMenuLink", data: { toggle: "dropdown" }, aria: { haspopup: "true", expanded: "false" } %>
-
+
diff --git a/db/structure.sql b/db/structure.sql
index 0a9c5d0..ebddc51 100644
--- a/db/structure.sql
+++ b/db/structure.sql
@@ -9,6 +9,20 @@ SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
+--
+-- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -
+--
+
+CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog;
+
+
+--
+-- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner: -
+--
+
+COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
+
+
--
-- Name: fuzzystrmatch; Type: EXTENSION; Schema: -; Owner: -
--
@@ -290,7 +304,7 @@ ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage
CREATE TABLE public.appearance_releases (
id bigint NOT NULL,
person_name_old character varying,
- person_address_street1 character varying,
+ person_address_old character varying,
person_phone character varying,
project_id bigint,
created_at timestamp without time zone NOT NULL,
@@ -319,6 +333,7 @@ CREATE TABLE public.appearance_releases (
guardian_last_name character varying,
identifier character varying,
guardian_email character varying,
+ person_address_street1 character varying,
person_address_street2 character varying,
person_address_city character varying,
person_address_state character varying,
@@ -1378,7 +1393,6 @@ CREATE TABLE public.settings (
--
CREATE SEQUENCE public.settings_id_seq
- AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
@@ -1414,7 +1428,6 @@ CREATE TABLE public.taggings (
--
CREATE SEQUENCE public.taggings_id_seq
- AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
@@ -1445,7 +1458,6 @@ CREATE TABLE public.tags (
--
CREATE SEQUENCE public.tags_id_seq
- AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
@@ -3808,6 +3820,7 @@ INSERT INTO "schema_migrations" (version) VALUES
('20200612121539'),
('20200615131722'),
('20200615133602'),
+('20200615140920'),
('20200616124214'),
('20200619081446'),
('20200619085823'),
diff --git a/spec/features/user_managing_broadcasts_spec.rb b/spec/features/user_managing_broadcasts_spec.rb
index ab3d71f..a5b7f08 100644
--- a/spec/features/user_managing_broadcasts_spec.rb
+++ b/spec/features/user_managing_broadcasts_spec.rb
@@ -54,6 +54,46 @@ feature "User managing broadcasts" do
expect(page).to have_content(recording.download_file_name)
end
+ scenario "user can go back and forth between live session and previous sessions", js: true do
+ broadcast = create(:broadcast, :with_stream, :with_files, project: project)
+ recording = create(:broadcast_recording, broadcast: broadcast)
+
+ visit project_broadcast_path(project, broadcast)
+
+ expect(page).to have_content broadcast.name.titleize, count: 1
+ expect(page).to have_content recording.download_file_name, count: 0
+
+ click_on switch_view_dropdown
+ expect(page).to have_content broadcast.name.titleize, count: 2
+ expect(page).to have_content recording.download_file_name, count: 1
+
+ live_stream_nav_item = page.find(".dropdown-item", text: broadcast.name.titleize)
+ recording_nav_item = page.find(".dropdown-item", text: recording.download_file_name)
+
+ expect(live_stream_nav_item[:class].include?("active")).to eq true
+ expect(recording_nav_item[:class].include?("active")).to eq false
+
+ click_on recording.download_file_name
+
+ expect(page).to have_content broadcast.name.titleize, count: 1
+ expect(page).to have_content recording.download_file_name, count: 0
+ expect(live_stream_nav_item[:class].include?("active")).to eq false
+ expect(recording_nav_item[:class].include?("active")).to eq true
+
+ click_on switch_view_dropdown
+ click_on broadcast.name.titleize
+
+ expect(page).to have_content broadcast.name.titleize, count: 1
+ expect(page).to have_content recording.download_file_name, count: 0
+
+ # Page is reloaded, we need to get dropdown items again
+ live_stream_nav_item = page.find(".dropdown-item", text: broadcast.name.titleize, visible: :all)
+ recording_nav_item = page.find(".dropdown-item", text: recording.download_file_name, visible: :all)
+
+ expect(live_stream_nav_item[:class].include?("active")).to eq true
+ expect(recording_nav_item[:class].include?("active")).to eq false
+ end
+
scenario "form will not submit if user clicks Add files without selected files", js: true do
broadcast = create(:broadcast, :with_stream, :with_files, project: project)
@@ -74,9 +114,9 @@ feature "User managing broadcasts" do
new_window = window_opened_by { click_link "Multi-View" }
within_window new_window do
- expect(page).to have_content("Switch View")
+ expect(page).to have_content switch_view_dropdown
- click_on "Switch View"
+ click_on switch_view_dropdown
expect(page).to have_link("Broadcast 1")
expect(page).to have_link("Broadcast 2")
@@ -106,4 +146,8 @@ feature "User managing broadcasts" do
all('input[type="checkbox"]')[0].click
all('input[type="checkbox"]')[1].click
end
+
+ def switch_view_dropdown
+ "Switch View"
+ end
end
diff --git a/spec/policies/acquired_media_release_policy_spec.rb b/spec/policies/acquired_media_release_policy_spec.rb
index 3f366a5..ad580fc 100644
--- a/spec/policies/acquired_media_release_policy_spec.rb
+++ b/spec/policies/acquired_media_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe AcquiredMediaReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -25,14 +24,6 @@ describe AcquiredMediaReleasePolicy do
end
permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
+ it { is_expected.to permit(:destroy) }
end
end
diff --git a/spec/policies/appearance_release_policy_spec.rb b/spec/policies/appearance_release_policy_spec.rb
index a9f474c..64920a4 100644
--- a/spec/policies/appearance_release_policy_spec.rb
+++ b/spec/policies/appearance_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe AppearanceReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -25,14 +24,6 @@ describe AppearanceReleasePolicy do
end
permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
+ it { is_expected.to permit(:destroy) }
end
end
diff --git a/spec/policies/location_release_policy_spec.rb b/spec/policies/location_release_policy_spec.rb
index cc5a84a..d98916f 100644
--- a/spec/policies/location_release_policy_spec.rb
+++ b/spec/policies/location_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe LocationReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -24,6 +23,10 @@ describe LocationReleasePolicy do
end
end
+ permissions :destroy? do
+ it { is_expected.to permit(:destroy) }
+ end
+
permissions :edit_photos? do
it { is_expected.to permit(:edit_photos) }
end
@@ -31,16 +34,4 @@ describe LocationReleasePolicy do
permissions :update_photos? do
it { is_expected.to permit(:update_photos) }
end
-
- permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
- end
end
diff --git a/spec/policies/material_release_policy_spec.rb b/spec/policies/material_release_policy_spec.rb
index f3e675a..85042a9 100644
--- a/spec/policies/material_release_policy_spec.rb
+++ b/spec/policies/material_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe MaterialReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -24,6 +23,10 @@ describe MaterialReleasePolicy do
end
end
+ permissions :destroy? do
+ it { is_expected.to permit(:destroy) }
+ end
+
permissions :edit_photos? do
it { is_expected.to permit(:edit_photos) }
end
@@ -31,16 +34,4 @@ describe MaterialReleasePolicy do
permissions :update_photos? do
it { is_expected.to permit(:update_photos) }
end
-
- permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
- end
end
diff --git a/spec/policies/medical_release_policy_spec.rb b/spec/policies/medical_release_policy_spec.rb
index 4f7e1ff..8b79891 100644
--- a/spec/policies/medical_release_policy_spec.rb
+++ b/spec/policies/medical_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe MedicalReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -24,6 +23,10 @@ describe MedicalReleasePolicy do
end
end
+ permissions :destroy? do
+ it { is_expected.to permit(:destroy) }
+ end
+
permissions :edit_photos? do
it { is_expected.to permit(:edit_photos) }
end
@@ -31,16 +34,4 @@ describe MedicalReleasePolicy do
permissions :update_photos? do
it { is_expected.to permit(:update_photos) }
end
-
- permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
- end
end
diff --git a/spec/policies/misc_release_policy_spec.rb b/spec/policies/misc_release_policy_spec.rb
index 2b2a9f7..3105adb 100644
--- a/spec/policies/misc_release_policy_spec.rb
+++ b/spec/policies/misc_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe MiscReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -20,6 +19,10 @@ describe MiscReleasePolicy do
end
end
+ permissions :destroy? do
+ it { is_expected.to permit(:destroy) }
+ end
+
permissions :edit_photos? do
it { is_expected.to permit(:edit_photos) }
end
@@ -27,16 +30,4 @@ describe MiscReleasePolicy do
permissions :update_photos? do
it { is_expected.to permit(:update_photos) }
end
-
- permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
- end
end
diff --git a/spec/policies/music_release_policy_spec.rb b/spec/policies/music_release_policy_spec.rb
index d03c13d..e84b556 100644
--- a/spec/policies/music_release_policy_spec.rb
+++ b/spec/policies/music_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
RSpec.describe MusicReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -19,14 +18,6 @@ RSpec.describe MusicReleasePolicy do
end
permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
+ it { is_expected.to permit(:destroy) }
end
end
diff --git a/spec/policies/talent_release_policy_spec.rb b/spec/policies/talent_release_policy_spec.rb
index 9dc2e86..22f025e 100644
--- a/spec/policies/talent_release_policy_spec.rb
+++ b/spec/policies/talent_release_policy_spec.rb
@@ -1,8 +1,7 @@
require "rails_helper"
describe TalentReleasePolicy do
- let(:user) { create(:user, :manager) }
- let(:user_context) { build(:user_context, user: user, account: user.primary_account) }
+ let(:user_context) { build(:user_context) }
subject { described_class }
@@ -24,6 +23,10 @@ describe TalentReleasePolicy do
end
end
+ permissions :destroy? do
+ it { is_expected.to permit(:destroy) }
+ end
+
permissions :edit_photos? do
it { is_expected.to permit(:edit_photos) }
end
@@ -31,16 +34,4 @@ describe TalentReleasePolicy do
permissions :update_photos? do
it { is_expected.to permit(:update_photos) }
end
-
- permissions :destroy? do
- it { is_expected.to permit(user_context, :destroy) }
- end
-
- context "for an associate" do
- let(:user) { create(:user, :associate) }
-
- permissions :destroy? do
- it { is_expected.not_to permit(user_context, :destroy) }
- end
- end
end