Skip to content

Commit f72c2f3

Browse files
author
Eric Berry
authored
Use Metabase Admin Dashboard on admin dashboard page (#1222)
* Use Metabase Admin Dashboard on admin dashboard page * StandardRb
1 parent 5a839d6 commit f72c2f3

File tree

3 files changed

+14
-30
lines changed

3 files changed

+14
-30
lines changed

.env-example

+1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ export MAX_REQUESTS_PER_PROPERTY_PER_MIN=600
3636
export METABASE_CAMPAIGN_DASHBOARD_ID=
3737
export METABASE_PROPERTY_DASHBOARD_ID=
3838
export METABASE_ADVERTISER_DASHBOARD_ID=
39+
export METABASE_ADMINISTRATOR_DASHBOARD_ID=
3940
export METABASE_SECRET_KEY=
4041
export METABASE_SITE_URL=
4142
export METABASE_URL=
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,14 @@
11
class AdministratorDashboardsController < ApplicationController
2-
include Sortable
3-
42
before_action :authenticate_user!
53
before_action :authenticate_administrator!
64

7-
set_default_sorted_by :end_date
8-
set_default_sorted_direction :desc
9-
105
def show
11-
campaigns = Campaign.active.premium.includes(:organization).order(order_by)
12-
@pagy, @campaigns = pagy(campaigns, page: @page)
13-
end
14-
15-
protected
6+
payload = {
7+
resource: {dashboard: ENV["METABASE_ADMINISTRATOR_DASHBOARD_ID"].to_i},
8+
params: {}
9+
}
10+
token = JWT.encode payload, ENV["METABASE_SECRET_KEY"]
1611

17-
def set_sortable_columns
18-
@sortable_columns ||= %w[
19-
start_date
20-
end_date
21-
name
22-
updated_at
23-
created_at
24-
hourly_budget_cents
25-
daily_budget_cents
26-
total_budget_cents
27-
]
12+
@iframe_url = ENV["METABASE_SITE_URL"] + "/embed/dashboard/" + token + "#bordered=false&titled=false"
2813
end
2914
end

app/views/administrator_dashboards/show.html.erb

+7-9
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,11 @@
22
<%= render "/shared/page_heading_with_subtitle",
33
title: "Administrator Dashboard",
44
datepicker: false %>
5-
6-
<div class="page-section">
7-
<%= render "/administrator_dashboards/sortable_dropdown" %>
8-
<%= card do %>
9-
<%= card_body padding: "p-0" do %>
10-
<%= render "/administrator_dashboards/table", campaigns: @campaigns, pagy: @pagy %>
11-
<% end %>
12-
<% end %>
13-
</div>
5+
<iframe
6+
src="<%= @iframe_url %>"
7+
title="Administrator Dashboard"
8+
class="metabase-card border rounded"
9+
height="2000"
10+
scrolling="no"
11+
allowtransparency></iframe>
1412
</div>

0 commit comments

Comments
 (0)