lib/generators/chaltron/install_generator.rb in chaltron-1.1.7 vs lib/generators/chaltron/install_generator.rb in chaltron-2.0.0

- old
+ new

@@ -13,10 +13,31 @@ if options.interactive? exit unless yes?('Are you sure you want to continue? [yes/NO]') end end + def add_gem_dependencies + gem 'devise' + gem 'omniauth' + gem 'omniauth-rails_csrf_protection' + gem 'gitlab_omniauth-ldap' + gem 'cancancan' + + gem 'bootstrap' + gem 'autoprefixer-rails' + gem 'font-awesome-sass' + + gem 'jquery-rails' + gem 'jquery-datatables' + gem 'ajax-datatables-rails' + + gem 'bootstrap_form' + gem 'nprogress-rails' + gem 'simple-navigation' + gem 'rails-i18n' + end + def db_migrations rake 'chaltron_engine:install:migrations' end def db_seed @@ -37,23 +58,57 @@ def apply_layout # html remove_file 'app/views/layouts/application.html.erb' directory 'app/views/layouts' directory 'app/assets/images' - # javascript - inject_into_file 'app/assets/javascripts/application.js', - "//= require chaltron\n", before: '//= require_tree .' end + def add_javascript + dependencies =<<EOF +//= require jquery +//= require popper +//= require bootstrap +//= require datatables/jquery.dataTables +//= require datatables/dataTables.bootstrap4 +//= require datatables/extensions/Responsive/dataTables.responsive +//= require datatables/extensions/Responsive/responsive.bootstrap4 +//= require nprogress +//= require nprogress-turbolinks +//= require nprogress-ajax +//= require chaltron +EOF + + inject_into_file 'app/assets/javascripts/application.js', dependencies, before: '//= require_tree .' + + javascript =<<JS + + +document.addEventListener('DOMContentLoaded', function(event) { + Chaltron.locale = $('body').data('locale'); +}); + +NProgress.configure({ + showSpinner: false, +}); + +JS + inject_into_file 'app/assets/javascripts/application.js', javascript, after: '//= require_tree .' + end + + def add_stylesheets + copy_file 'app/assets/stylesheets/chaltron_custom.scss' + copy_file 'app/assets/stylesheets/datatables.scss' + end + def create_index_controller generate 'controller home index' route "root to: 'home#index'" # controller, views and assets replacement copy_file 'app/controllers/home_controller.rb', force: true directory 'app/views/home/', force: true - copy_file 'app/assets/javascripts/home.js.coffee', force: true + copy_file 'app/assets/javascripts/home.coffee', force: true copy_file 'app/assets/stylesheets/home.scss', force: true Array(1..10).each do |x| route "get 'home/test#{x}'" end @@ -63,10 +118,9 @@ copy_file 'config/navigation.rb' end def setup_chaltron copy_file 'config/initializers/chaltron.rb' - copy_file 'app/assets/stylesheets/chaltron_custom.scss' end def setup_authorization copy_file 'app/models/ability.rb' end