From 0c949183f3f9a3eb59e59f5da3c22b87e1f1cbaf Mon Sep 17 00:00:00 2001 From: Zita Nemeckova Date: Thu, 12 Apr 2018 16:41:29 +0200 Subject: [PATCH] Fix widget_footer Replace one partial call with widget-footer component, move lightbox-panel on same level as notification-app, move last_run and next_run to helper(no duplication of code) and fix same id warnings --- app/helpers/dashboard_helper.rb | 8 ++++++++ app/views/dashboard/_widget.html.haml | 11 +++++------ app/views/dashboard/_zoomed_chart.html.haml | 5 ++++- app/views/layouts/_header.html.haml | 5 ++--- 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/app/helpers/dashboard_helper.rb b/app/helpers/dashboard_helper.rb index 149f145ccc9..7fb04ae3373 100644 --- a/app/helpers/dashboard_helper.rb +++ b/app/helpers/dashboard_helper.rb @@ -3,4 +3,12 @@ def ext_auth?(auth_option = nil) return false unless ::Settings.authentication.mode == 'httpd' auth_option ? ::Settings.authentication[auth_option] : true end + + def last_next_run(widget) + last_run_on = widget.last_run_on_for_user(current_user) + next_run_on = widget.next_run_on + last_run = last_run_on ? format_timezone(last_run_on, session[:user_tz], "widget_footer") : _('Never') + next_run = next_run_on ? format_timezone(next_run_on, session[:user_tz], "widget_footer") : _('Unknown') + [last_run, next_run] + end end diff --git a/app/views/dashboard/_widget.html.haml b/app/views/dashboard/_widget.html.haml index 486bac58d9d..0921e5d80ac 100644 --- a/app/views/dashboard/_widget.html.haml +++ b/app/views/dashboard/_widget.html.haml @@ -1,14 +1,13 @@ -%div{:id => "w_#{presenter.widget.id}"} - - last_run_on = presenter.widget.last_run_on_for_user(current_user) - - next_run_on = presenter.widget.next_run_on +%div{:id => "ww_#{presenter.widget.id}"} + - last_run, next_run = last_next_run(presenter.widget) - widget_blank = presenter.widget.content_type == 'menu' ? false : presenter.widget.contents_for_user(current_user).blank? %widget-wrapper{"widget-id" => presenter.widget.id, "widget-type" => presenter.widget.content_type, "widget-buttons" => presenter.widget_buttons, "widget-blank" => widget_blank, - "widget-last-run" => last_run_on ? format_timezone(last_run_on, session[:user_tz], "widget_footer") : _('Never'), - "widget-next-run" => next_run_on ? format_timezone(next_run_on, session[:user_tz], "widget_footer") : _('Unknown'), + "widget-last-run" => last_run, + "widget-next-run" => next_run, "widget-title" => presenter.widget.title} :javascript - miq_bootstrap("#w_#{presenter.widget.id}"); + miq_bootstrap("#ww_#{presenter.widget.id}"); diff --git a/app/views/dashboard/_zoomed_chart.html.haml b/app/views/dashboard/_zoomed_chart.html.haml index 7c3c657e8f7..ea4e8a92df2 100644 --- a/app/views/dashboard/_zoomed_chart.html.haml +++ b/app/views/dashboard/_zoomed_chart.html.haml @@ -1,6 +1,7 @@ -# Parameters: widget -- MiqWidget object +- last_run, next_run = last_next_run(widget) #zoomed_chart_div .card-pf .card-pf-heading @@ -11,4 +12,6 @@ %i.fa.fa-close.pull-right .card-pf-body = chart_remote('dashboard', :id => 'my_chart', :zoomed => true) - = render :partial => 'widget_footer', :locals => {:widget => widget} + %widget-footer{:id => "zoomed_chart_footer_#{widget.id}", 'widget-last-run' => last_run, 'widget-next-run' => next_run} +:javascript + miq_bootstrap("#zoomed_chart_footer_#{widget.id}"); diff --git a/app/views/layouts/_header.html.haml b/app/views/layouts/_header.html.haml index ac4878edc09..c89ff7de2b8 100644 --- a/app/views/layouts/_header.html.haml +++ b/app/views/layouts/_header.html.haml @@ -31,12 +31,11 @@ = _(menu_item.name) = render :partial => "layouts/user_options" - - = render :partial => "layouts/spinner" - = render :partial => "layouts/lightbox_panel" = render :partial => "layouts/notifications_drawer" = render :partial => "layouts/toast_list" += render :partial => "layouts/spinner" += render :partial => "layouts/lightbox_panel" :javascript miq_bootstrap('#notification-app', 'miq.notifications');