From 74eb7642776fd7b17ee3326dab88f768a03a4ffe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E5=8D=9A=E4=BA=9E?= Date: Wed, 17 Apr 2024 21:48:24 +0800 Subject: [PATCH] Fix show_widget. --- app/controllers/announcements_controller.rb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/app/controllers/announcements_controller.rb b/app/controllers/announcements_controller.rb index f3b01ef..4d06053 100644 --- a/app/controllers/announcements_controller.rb +++ b/app/controllers/announcements_controller.rb @@ -945,10 +945,11 @@ class AnnouncementsController < ApplicationController else @categories = params[:categories] end - begin - params[:url] = Page.first.find_page(:module=>"announcement",:enabled_for=>I18n.locale.to_s).first.url rescue Page.where(:module=>"announcement",:enabled_for=>I18n.locale.to_s).first.url - rescue - end + root_page = Page.root + annc_params = {:module=>"announcement", :enabled_for=>I18n.locale.to_s} + annc_page = (root_page.respond_to?(:find_page) ? root_page.find_page(annc_params).first : Page.where(annc_params).first) + OrbitHelper.set_page(annc_page) if OrbitHelper.respond_to?(:set_page) + params[:url] = (annc_page ? annc_page.url : nil) OrbitHelper.set_site_locale(I18n.locale) OrbitHelper.set_current_widget_module("announcement") OrbitHelper.set_params(params,current_user)