From 0c00bf589533fdf5f96aaec15281092bb5a2a988 Mon Sep 17 00:00:00 2001 From: Nicolas Florentin Date: Wed, 11 May 2016 09:40:04 +0200 Subject: [PATCH] Plugin::Instance can register a stylesheets, enable to import it in application.scss dynamically --- app/assets/stylesheets/application.scss.erb | 6 +++++- lib/plugin/instance.rb | 4 ++++ plugins/navi_gami/assets/stylesheets/navi_gami.scss | 3 +++ plugins/navi_gami/plugin.rb | 2 ++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/app/assets/stylesheets/application.scss.erb b/app/assets/stylesheets/application.scss.erb index 5f73aabc5..48e8888f8 100644 --- a/app/assets/stylesheets/application.scss.erb +++ b/app/assets/stylesheets/application.scss.erb @@ -35,4 +35,8 @@ @import "app.responsive"; -@import "navi_gami"; // change it to be dynamic !!! +<% FabManager.plugins.each do |plugin| %> + <% plugin.styles.each do |style| %> + <%= "@import '#{style}';" %> + <% end %> +<% end %> diff --git a/lib/plugin/instance.rb b/lib/plugin/instance.rb index 40b337789..8a04e6c5e 100644 --- a/lib/plugin/instance.rb +++ b/lib/plugin/instance.rb @@ -62,6 +62,10 @@ module Plugin assets << [full_path, opts] end + def register_css(style) + styles << style + end + def after_initialize(&block) initializers << block end diff --git a/plugins/navi_gami/assets/stylesheets/navi_gami.scss b/plugins/navi_gami/assets/stylesheets/navi_gami.scss index e69de29bb..cb798b04c 100644 --- a/plugins/navi_gami/assets/stylesheets/navi_gami.scss +++ b/plugins/navi_gami/assets/stylesheets/navi_gami.scss @@ -0,0 +1,3 @@ +#nav > section > section { + background: black; +} diff --git a/plugins/navi_gami/plugin.rb b/plugins/navi_gami/plugin.rb index 986d90e2d..575c1902f 100644 --- a/plugins/navi_gami/plugin.rb +++ b/plugins/navi_gami/plugin.rb @@ -1,6 +1,8 @@ register_asset "stylesheets/navi_gami.scss" register_asset "javascripts/navi_gami.coffee.erb" +register_css('navi_gami') + PLUGIN_NAME ||= "navi_gami".freeze