diff --git a/app/controllers/pages_controller.rb b/app/controllers/pages_controller.rb index 0caef1f..a61308b 100644 --- a/app/controllers/pages_controller.rb +++ b/app/controllers/pages_controller.rb @@ -276,6 +276,7 @@ class PagesController < ApplicationController partials = [] subparts.each do |subpart| if subpart.kind == "module_widget" + OrbitHelper.set_current_widget subpart OrbitHelper.set_widget_data_count subpart.data_count OrbitHelper.set_widget_categories subpart.categories OrbitHelper.set_widget_module_app subpart.module diff --git a/app/helpers/orbit_helper.rb b/app/helpers/orbit_helper.rb index e87e788..0c3c627 100644 --- a/app/helpers/orbit_helper.rb +++ b/app/helpers/orbit_helper.rb @@ -177,9 +177,38 @@ module OrbitHelper @url_to_plugin_show = "#{page.url}/#{slug}" rescue "#" end + + def self.override_widget_module_app(module_app) + self.set_widget_module_app module_app + @url_widget_for_show = "" + pages = Page.where(:module => module_app) + widget_categories = self.get_current_widget.categories + finalpage = nil + pages.each do |p| + if p.categories == widget_categories + finalpage = p + end + break if !finalpage.nil? + end + if finalpage.nil? + pages.each do |p| + if self.array_include(p.categories, widget_categories) + finalpage = p + end + break if !finalpage.nil? + end + end + finalpage = pages.first if finalpage.nil? + if !finalpage.nil? + @url_widget_for_show = "/#{@site_locale.to_s}#{finalpage.url}" + end + + end + def self.set_widget_item_url(widget) @url_widget_for_show = "" module_app = widget.module + module_app = self.widget_module_app.key if module_app.nil? pages = Page.where(:module => module_app) widget_categories = widget.categories finalpage = nil @@ -255,6 +284,14 @@ module OrbitHelper @controller_name = name end + def self.set_current_widget(widget) + @current_widget = widget + end + + def self.get_current_widget + @current_widget + end + def get_item_module_infos(page) if page.parent_page_id.nil? ["Home","icons-house"] diff --git a/app/templates/orbit_bootstrap/widgets/announcement_link_widget/_widget1.html.erb b/app/templates/orbit_bootstrap/widgets/announcement_link_widget/_widget1.html.erb new file mode 100644 index 0000000..9bdf3b8 --- /dev/null +++ b/app/templates/orbit_bootstrap/widgets/announcement_link_widget/_widget1.html.erb @@ -0,0 +1,37 @@ + diff --git a/built_in_extensions.rb b/built_in_extensions.rb index 9006f5f..daeee7c 100644 --- a/built_in_extensions.rb +++ b/built_in_extensions.rb @@ -20,6 +20,7 @@ gem 'personal_research', git: 'http://gitlab.tp.rulingcom.com/saurabh/personal-r #widgets gem "site_menu_widget", git: 'http://gitlab.tp.rulingcom.com/saurabh/site-menu-widget.git' gem "breadcrumb_widget", git: "http://gitlab.tp.rulingcom.com/saurabh/breadcrumb-widget.git" +gem "announcement_link_widget", git: "http://gitlab.tp.rulingcom.com/harry/announcement-link-widget.git" #desktop gem "orbit_4_5_desktop", git: 'http://gitlab.tp.rulingcom.com/ray/orbit-4-5-desktop.git'