Skip to content

Commit ef51085

Browse files
awwaiidkhiga8
andauthored
Kh add partner specific info fixes (#5270)
* Database migration * feat: add frontend form field and controller changes * update frontend view for partner * update label copy * add test + run linter * Inline tiny partial into main show * Fix model annotation and whitespace * Add info for the bank to see on the partner show page Fix layout on the partner's dashboard * Handle empty-string bank-partner-info, and improve header --------- Co-authored-by: Kate Higa <[email protected]>
1 parent 3b2c5c4 commit ef51085

File tree

12 files changed

+48
-11
lines changed

12 files changed

+48
-11
lines changed

app/assets/stylesheets/resources/partners.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ div#partner-notes {
4949
padding: 0px 20px;
5050
}
5151

52+
div#info-for-partner {
53+
padding: 0px 20px;
54+
}
55+
5256
div#approve-application-button {
5357
position: fixed;
5458

app/controllers/partners_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ def validate_user_role
182182

183183
def partner_params
184184
params.require(:partner).permit(:name, :email, :send_reminders, :quota,
185-
:notes, :partner_group_id, :default_storage_location_id, documents: [])
185+
:notes, :partner_group_id, :default_storage_location_id, :info_for_partner, documents: [])
186186
end
187187

188188
helper_method \

app/models/partner.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#
55
# id :integer not null, primary key
66
# email :string
7+
# info_for_partner :text
78
# name :string
89
# notes :text
910
# quota :integer

app/views/partners/_form.html.erb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@
4646
<%= f.input :notes, label: "Notes", wrapper: :input_group do %>
4747
<%= f.input_field :notes, class: "form-control" %>
4848
<% end %>
49+
<%= f.input :info_for_partner, label: "Partner specific information (500 characters)", wrapper: :input_group do %>
50+
<%= f.input_field :info_for_partner, class: "form-control", "aria-describedby": "info-for-partner-note", maxlength: 500 %>
51+
<% end %>
52+
<p class="form-text" id="info-for-partner-note">Note: The partner can see, but cannot change this information.</p>
4953
<%= f.input :documents, label: "Documents", wrapper: :input_group do %>
5054
<% if @partner.documents.present? %>
5155
<ul class="list-unstyled w-100">

app/views/partners/dashboards/show.html.erb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,16 @@
66
</header>
77

88
<main>
9+
<% if @partner.info_for_partner.present? %>
10+
<section class="container mx-auto my-5">
11+
<h2 class="font-weight-bold">Information from <%= @parent_org.name %></h2>
12+
13+
<div class="rounded-3 w-100 shadow-lg p-2 bg-white">
14+
<%= @partner.info_for_partner %>
15+
</div>
16+
</section>
17+
<% end %>
18+
919
<%= render partial: '/partners/requests/request_options_card' if @partner.approved? %>
1020

1121
<section class="container mx-auto my-5">

app/views/partners/show.html.erb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,23 @@
186186
</div>
187187
</section>
188188

189+
<section class="card card-info card-outline">
190+
<div class="card-header">
191+
<h2 class="card-title fs-3">Partner Specific Information</h2>
192+
</div>
193+
<div class="card-body p-2">
194+
<div class="row">
195+
<div class="col-xs-12 col-sm-12" id="info-for-partner">
196+
<% if @partner.info_for_partner %>
197+
<p><%= simple_format(@partner.info_for_partner) %></p>
198+
<% else %>
199+
<p> None provided </p>
200+
<% end %>
201+
</div>
202+
</div>
203+
</div>
204+
</section>
205+
189206
<section class="card card-info card-outline" id='partner-information'>
190207
<div class="card-header">
191208
<div class="clearfix">
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
class AddInfoForPartnerToPartner < ActiveRecord::Migration[8.0]
2+
def change
3+
add_column :partners, :info_for_partner, :text
4+
end
5+
end

db/schema.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -631,6 +631,7 @@
631631
t.integer "quota"
632632
t.bigint "partner_group_id"
633633
t.bigint "default_storage_location_id"
634+
t.text "info_for_partner"
634635
t.index ["default_storage_location_id"], name: "index_partners_on_default_storage_location_id"
635636
t.index ["organization_id"], name: "index_partners_on_organization_id"
636637
t.index ["partner_group_id"], name: "index_partners_on_partner_group_id"

spec/factories/kits.rb

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,6 @@
1111
# updated_at :datetime not null
1212
# organization_id :integer not null
1313
#
14-
# id :bigint not null, primary key
15-
# active :boolean default(TRUE)
16-
# name :string not null
17-
# value_in_cents :integer default(0)
18-
# visible_to_partners :boolean default(TRUE), not null
19-
# created_at :datetime not null
20-
# updated_at :datetime not null
21-
# organization_id :integer not null
22-
2314
FactoryBot.define do
2415
factory :kit do
2516
sequence(:name) { |n| "#{n} - Dont test this" }

spec/factories/partners.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#
55
# id :integer not null, primary key
66
# email :string
7+
# info_for_partner :text
78
# name :string
89
# notes :text
910
# quota :integer

0 commit comments

Comments
 (0)