[15-min-fix] Add org id to admin listings form (#14162)

* Add organization ID to admin listings form

* Add local: true to form heh...
This commit is contained in:
Andy Zhao 2021-07-08 09:23:10 -04:00 committed by GitHub
parent 4d7d9c7d08
commit 3e425344ef
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 3 deletions

View file

@ -2,7 +2,7 @@ module Admin
class ListingsController < Admin::ApplicationController
include ListingsToolkit
ALLOWED_PARAMS = %i[
published body_markdown title category listing_category_id tag_list action
published body_markdown title category listing_category_id tag_list action organization_id
].freeze
layout "admin"

View file

@ -15,7 +15,7 @@
</header>
<div class="crayons-card p-6">
<%= form_with model: [:admin, @listing], method: :patch do |form| %>
<%= form_with model: [:admin, @listing], method: :patch, local: true do |form| %>
<div class="form-group">
<%= form.label :title %>
<%= form.text_field :title, size: 100, maxlength: 128, class: "form-control" %>
@ -29,6 +29,10 @@
<i class="fs-s">Comma separated, one space, 8 tags max</i>
<%= form.text_field :tag_list, value: @listing.cached_tag_list, size: 100, class: "form-control" %>
</div>
<div class="form-group">
<%= form.label :organization_id, "Organization ID (Optional)" %>
<%= form.text_field :organization_id, value: @listing.organization_id, class: "form-control" %>
</div>
<div class="form-group">
<%= form.label :listing_category_id %>
<%= form.select :listing_category_id, select_options_for_categories %>

View file

@ -1,6 +1,6 @@
require "rails_helper"
RSpec.describe "/admin/app/listings", type: :request do
RSpec.describe "/admin/apps/listings", type: :request do
let(:admin) { create(:user, :super_admin) }
let!(:listing) { create(:listing, user_id: admin.id) }
@ -18,6 +18,15 @@ RSpec.describe "/admin/app/listings", type: :request do
expect(EdgeCache::BustListings).to have_received(:call)
end
it "updates the organization ID" do
org = create(:organization)
put admin_listing_path(id: listing.id), params: {
listing: { organization_id: org.id }
}
sidekiq_perform_enqueued_jobs
expect(listing.reload.organization_id).to eq org.id
end
describe "GET /admin/app/listings" do
let!(:unpublished_listing) { create(:listing, published: false) }