parent
8aea1f768a
commit
ec95888700
@ -0,0 +1,7 @@ |
||||
.bundle/ |
||||
log/*.log |
||||
pkg/ |
||||
test/dummy/db/*.sqlite3 |
||||
test/dummy/db/*.sqlite3-journal |
||||
test/dummy/log/*.log |
||||
test/dummy/tmp/ |
@ -0,0 +1,14 @@ |
||||
source 'https://rubygems.org' |
||||
|
||||
# Declare your gem's dependencies in grids.gemspec. |
||||
# Bundler will treat runtime dependencies like base dependencies, and |
||||
# development dependencies will be added by default to the :development group. |
||||
gemspec |
||||
|
||||
# Declare any dependencies that are still in development here instead of in |
||||
# your gemspec. These might include edge Rails or gems from your path or |
||||
# Git. Remember to move these dependencies to your gemspec before releasing |
||||
# your gem to rubygems.org. |
||||
|
||||
# To use a debugger |
||||
# gem 'byebug', group: [:development, :test] |
@ -0,0 +1,3 @@ |
||||
# Grids |
||||
Short description and motivation. |
||||
|
@ -0,0 +1,36 @@ |
||||
begin |
||||
require 'bundler/setup' |
||||
rescue LoadError |
||||
puts 'You must `gem install bundler` and `bundle install` to run rake tasks' |
||||
end |
||||
|
||||
require 'rdoc/task' |
||||
|
||||
RDoc::Task.new(:rdoc) do |rdoc| |
||||
rdoc.rdoc_dir = 'rdoc' |
||||
rdoc.title = 'Grids' |
||||
rdoc.options << '--line-numbers' |
||||
rdoc.rdoc_files.include('README.md') |
||||
rdoc.rdoc_files.include('lib/**/*.rb') |
||||
end |
||||
|
||||
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__) |
||||
load 'rails/tasks/engine.rake' |
||||
|
||||
|
||||
load 'rails/tasks/statistics.rake' |
||||
|
||||
|
||||
|
||||
require 'bundler/gem_tasks' |
||||
|
||||
require 'rake/testtask' |
||||
|
||||
Rake::TestTask.new(:test) do |t| |
||||
t.libs << 'test' |
||||
t.pattern = 'test/**/*_test.rb' |
||||
t.verbose = false |
||||
end |
||||
|
||||
|
||||
task default: :test |
@ -0,0 +1,14 @@ |
||||
#!/usr/bin/env ruby |
||||
# This command will automatically be run when you run "rails" with Rails gems |
||||
# installed from the root of your application. |
||||
|
||||
ENGINE_ROOT = File.expand_path('../..', __FILE__) |
||||
ENGINE_PATH = File.expand_path('../../lib/grids/engine', __FILE__) |
||||
APP_PATH = File.expand_path('../../test/dummy/config/application', __FILE__) |
||||
|
||||
# Set up gems listed in the Gemfile. |
||||
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__) |
||||
require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE']) |
||||
|
||||
require 'rails/all' |
||||
require 'rails/engine/commands' |
@ -0,0 +1,14 @@ |
||||
$:.push File.expand_path("../lib", __FILE__) |
||||
|
||||
# Maintain your gem's version: |
||||
require "grids/version" |
||||
|
||||
# Describe your gem and declare its dependencies: |
||||
Gem::Specification.new do |s| |
||||
s.name = "grids" |
||||
s.version = Grids::VERSION |
||||
s.authors = ["OpenProject"] |
||||
s.summary = "OpenProject Grids." |
||||
|
||||
s.files = Dir["{app,config,db,lib}/**/*", "Rakefile"] |
||||
end |
@ -0,0 +1,5 @@ |
||||
require "grids/engine" |
||||
|
||||
module Grids |
||||
# Your code goes here... |
||||
end |
@ -0,0 +1,5 @@ |
||||
module Grids |
||||
class Engine < ::Rails::Engine |
||||
isolate_namespace Grids |
||||
end |
||||
end |
@ -0,0 +1,5 @@ |
||||
require 'open_project/version' |
||||
|
||||
module Grids |
||||
VERSION = ::OpenProject::VERSION.to_semver |
||||
end |
@ -0,0 +1,6 @@ |
||||
# Add your own tasks in files placed in lib/tasks ending in .rake, |
||||
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. |
||||
|
||||
require_relative 'config/application' |
||||
|
||||
Rails.application.load_tasks |
@ -0,0 +1,5 @@ |
||||
|
||||
//= link_tree ../images
|
||||
//= link_directory ../javascripts .js
|
||||
//= link_directory ../stylesheets .css
|
||||
//= link grids_manifest.js
|
@ -0,0 +1,13 @@ |
||||
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
||||
// listed below.
|
||||
//
|
||||
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
||||
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
||||
//
|
||||
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
||||
// compiled file. JavaScript code in this file should be added after the last require_* statement.
|
||||
//
|
||||
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
|
||||
// about supported directives.
|
||||
//
|
||||
//= require_tree .
|
@ -0,0 +1,13 @@ |
||||
// Action Cable provides the framework to deal with WebSockets in Rails.
|
||||
// You can generate new channels where WebSocket features live using the `rails generate channel` command.
|
||||
//
|
||||
//= require action_cable
|
||||
//= require_self
|
||||
//= require_tree ./channels
|
||||
|
||||
(function() { |
||||
this.App || (this.App = {}); |
||||
|
||||
App.cable = ActionCable.createConsumer(); |
||||
|
||||
}).call(this); |
@ -0,0 +1,15 @@ |
||||
/* |
||||
* This is a manifest file that'll be compiled into application.css, which will include all the files |
||||
* listed below. |
||||
* |
||||
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, |
||||
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path. |
||||
* |
||||
* You're free to add application-wide styles to this file and they'll appear at the bottom of the |
||||
* compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS |
||||
* files in this directory. Styles in this file should be added after the last require_* statement. |
||||
* It is generally better to create a new file per style scope. |
||||
* |
||||
*= require_tree . |
||||
*= require_self |
||||
*/ |
@ -0,0 +1,4 @@ |
||||
module ApplicationCable |
||||
class Channel < ActionCable::Channel::Base |
||||
end |
||||
end |
@ -0,0 +1,4 @@ |
||||
module ApplicationCable |
||||
class Connection < ActionCable::Connection::Base |
||||
end |
||||
end |
@ -0,0 +1,3 @@ |
||||
class ApplicationController < ActionController::Base |
||||
protect_from_forgery with: :exception |
||||
end |
@ -0,0 +1,2 @@ |
||||
module ApplicationHelper |
||||
end |
@ -0,0 +1,2 @@ |
||||
class ApplicationJob < ActiveJob::Base |
||||
end |
@ -0,0 +1,4 @@ |
||||
class ApplicationMailer < ActionMailer::Base |
||||
default from: 'from@example.com' |
||||
layout 'mailer' |
||||
end |
@ -0,0 +1,3 @@ |
||||
class ApplicationRecord < ActiveRecord::Base |
||||
self.abstract_class = true |
||||
end |
@ -0,0 +1,14 @@ |
||||
<!DOCTYPE html> |
||||
<html> |
||||
<head> |
||||
<title>Dummy</title> |
||||
<%= csrf_meta_tags %> |
||||
|
||||
<%= stylesheet_link_tag 'application', media: 'all' %> |
||||
<%= javascript_include_tag 'application' %> |
||||
</head> |
||||
|
||||
<body> |
||||
<%= yield %> |
||||
</body> |
||||
</html> |
@ -0,0 +1,13 @@ |
||||
<!DOCTYPE html> |
||||
<html> |
||||
<head> |
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
||||
<style> |
||||
/* Email styles need to be inline */ |
||||
</style> |
||||
</head> |
||||
|
||||
<body> |
||||
<%= yield %> |
||||
</body> |
||||
</html> |
@ -0,0 +1 @@ |
||||
<%= yield %> |
@ -0,0 +1,3 @@ |
||||
#!/usr/bin/env ruby |
||||
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__) |
||||
load Gem.bin_path('bundler', 'bundle') |
@ -0,0 +1,4 @@ |
||||
#!/usr/bin/env ruby |
||||
APP_PATH = File.expand_path('../config/application', __dir__) |
||||
require_relative '../config/boot' |
||||
require 'rails/commands' |
@ -0,0 +1,4 @@ |
||||
#!/usr/bin/env ruby |
||||
require_relative '../config/boot' |
||||
require 'rake' |
||||
Rake.application.run |
@ -0,0 +1,38 @@ |
||||
#!/usr/bin/env ruby |
||||
require 'pathname' |
||||
require 'fileutils' |
||||
include FileUtils |
||||
|
||||
# path to your application root. |
||||
APP_ROOT = Pathname.new File.expand_path('../../', __FILE__) |
||||
|
||||
def system!(*args) |
||||
system(*args) || abort("\n== Command #{args} failed ==") |
||||
end |
||||
|
||||
chdir APP_ROOT do |
||||
# This script is a starting point to setup your application. |
||||
# Add necessary setup steps to this file. |
||||
|
||||
puts '== Installing dependencies ==' |
||||
system! 'gem install bundler --conservative' |
||||
system('bundle check') || system!('bundle install') |
||||
|
||||
# Install JavaScript dependencies if using Yarn |
||||
# system('bin/yarn') |
||||
|
||||
|
||||
# puts "\n== Copying sample files ==" |
||||
# unless File.exist?('config/database.yml') |
||||
# cp 'config/database.yml.sample', 'config/database.yml' |
||||
# end |
||||
|
||||
puts "\n== Preparing database ==" |
||||
system! 'bin/rails db:setup' |
||||
|
||||
puts "\n== Removing old logs and tempfiles ==" |
||||
system! 'bin/rails log:clear tmp:clear' |
||||
|
||||
puts "\n== Restarting application server ==" |
||||
system! 'bin/rails restart' |
||||
end |
@ -0,0 +1,29 @@ |
||||
#!/usr/bin/env ruby |
||||
require 'pathname' |
||||
require 'fileutils' |
||||
include FileUtils |
||||
|
||||
# path to your application root. |
||||
APP_ROOT = Pathname.new File.expand_path('../../', __FILE__) |
||||
|
||||
def system!(*args) |
||||
system(*args) || abort("\n== Command #{args} failed ==") |
||||
end |
||||
|
||||
chdir APP_ROOT do |
||||
# This script is a way to update your development environment automatically. |
||||
# Add necessary update steps to this file. |
||||
|
||||
puts '== Installing dependencies ==' |
||||
system! 'gem install bundler --conservative' |
||||
system('bundle check') || system!('bundle install') |
||||
|
||||
puts "\n== Updating database ==" |
||||
system! 'bin/rails db:migrate' |
||||
|
||||
puts "\n== Removing old logs and tempfiles ==" |
||||
system! 'bin/rails log:clear tmp:clear' |
||||
|
||||
puts "\n== Restarting application server ==" |
||||
system! 'bin/rails restart' |
||||
end |
@ -0,0 +1,11 @@ |
||||
#!/usr/bin/env ruby |
||||
VENDOR_PATH = File.expand_path('..', __dir__) |
||||
Dir.chdir(VENDOR_PATH) do |
||||
begin |
||||
exec "yarnpkg #{ARGV.join(" ")}" |
||||
rescue Errno::ENOENT |
||||
$stderr.puts "Yarn executable was not detected in the system." |
||||
$stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install" |
||||
exit 1 |
||||
end |
||||
end |
@ -0,0 +1,5 @@ |
||||
# This file is used by Rack-based servers to start the application. |
||||
|
||||
require_relative 'config/environment' |
||||
|
||||
run Rails.application |
@ -0,0 +1,18 @@ |
||||
require_relative 'boot' |
||||
|
||||
require 'rails/all' |
||||
|
||||
Bundler.require(*Rails.groups) |
||||
require "grids" |
||||
|
||||
module Dummy |
||||
class Application < Rails::Application |
||||
# Initialize configuration defaults for originally generated Rails version. |
||||
config.load_defaults 5.1 |
||||
|
||||
# Settings in config/environments/* take precedence over those specified here. |
||||
# Application configuration should go into files in config/initializers |
||||
# -- all .rb files in that directory are automatically loaded. |
||||
end |
||||
end |
||||
|
@ -0,0 +1,5 @@ |
||||
# Set up gems listed in the Gemfile. |
||||
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__) |
||||
|
||||
require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE']) |
||||
$LOAD_PATH.unshift File.expand_path('../../../lib', __dir__) |
@ -0,0 +1,10 @@ |
||||
development: |
||||
adapter: async |
||||
|
||||
test: |
||||
adapter: async |
||||
|
||||
production: |
||||
adapter: redis |
||||
url: redis://localhost:6379/1 |
||||
channel_prefix: dummy_production |
@ -0,0 +1,25 @@ |
||||
# SQLite version 3.x |
||||
# gem install sqlite3 |
||||
# |
||||
# Ensure the SQLite 3 gem is defined in your Gemfile |
||||
# gem 'sqlite3' |
||||
# |
||||
default: &default |
||||
adapter: sqlite3 |
||||
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> |
||||
timeout: 5000 |
||||
|
||||
development: |
||||
<<: *default |
||||
database: db/development.sqlite3 |
||||
|
||||
# Warning: The database defined as "test" will be erased and |
||||
# re-generated from your development database when you run "rake". |
||||
# Do not set this db to the same as development or production. |
||||
test: |
||||
<<: *default |
||||
database: db/test.sqlite3 |
||||
|
||||
production: |
||||
<<: *default |
||||
database: db/production.sqlite3 |
@ -0,0 +1,5 @@ |
||||
# Load the Rails application. |
||||
require_relative 'application' |
||||
|
||||
# Initialize the Rails application. |
||||
Rails.application.initialize! |
@ -0,0 +1,54 @@ |
||||
Rails.application.configure do |
||||
# Settings specified here will take precedence over those in config/application.rb. |
||||
|
||||
# In the development environment your application's code is reloaded on |
||||
# every request. This slows down response time but is perfect for development |
||||
# since you don't have to restart the web server when you make code changes. |
||||
config.cache_classes = false |
||||
|
||||
# Do not eager load code on boot. |
||||
config.eager_load = false |
||||
|
||||
# Show full error reports. |
||||
config.consider_all_requests_local = true |
||||
|
||||
# Enable/disable caching. By default caching is disabled. |
||||
if Rails.root.join('tmp/caching-dev.txt').exist? |
||||
config.action_controller.perform_caching = true |
||||
|
||||
config.cache_store = :memory_store |
||||
config.public_file_server.headers = { |
||||
'Cache-Control' => "public, max-age=#{2.days.seconds.to_i}" |
||||
} |
||||
else |
||||
config.action_controller.perform_caching = false |
||||
|
||||
config.cache_store = :null_store |
||||
end |
||||
|
||||
# Don't care if the mailer can't send. |
||||
config.action_mailer.raise_delivery_errors = false |
||||
|
||||
config.action_mailer.perform_caching = false |
||||
|
||||
# Print deprecation notices to the Rails logger. |
||||
config.active_support.deprecation = :log |
||||
|
||||
# Raise an error on page load if there are pending migrations. |
||||
config.active_record.migration_error = :page_load |
||||
|
||||
# Debug mode disables concatenation and preprocessing of assets. |
||||
# This option may cause significant delays in view rendering with a large |
||||
# number of complex assets. |
||||
config.assets.debug = true |
||||
|
||||
# Suppress logger output for asset requests. |
||||
config.assets.quiet = true |
||||
|
||||
# Raises error for missing translations |
||||
# config.action_view.raise_on_missing_translations = true |
||||
|
||||
# Use an evented file watcher to asynchronously detect changes in source code, |
||||
# routes, locales, etc. This feature depends on the listen gem. |
||||
# config.file_watcher = ActiveSupport::EventedFileUpdateChecker |
||||
end |
@ -0,0 +1,91 @@ |
||||
Rails.application.configure do |
||||
# Settings specified here will take precedence over those in config/application.rb. |
||||
|
||||
# Code is not reloaded between requests. |
||||
config.cache_classes = true |
||||
|
||||
# Eager load code on boot. This eager loads most of Rails and |
||||
# your application in memory, allowing both threaded web servers |
||||
# and those relying on copy on write to perform better. |
||||
# Rake tasks automatically ignore this option for performance. |
||||
config.eager_load = true |
||||
|
||||
# Full error reports are disabled and caching is turned on. |
||||
config.consider_all_requests_local = false |
||||
config.action_controller.perform_caching = true |
||||
|
||||
# Attempt to read encrypted secrets from `config/secrets.yml.enc`. |
||||
# Requires an encryption key in `ENV["RAILS_MASTER_KEY"]` or |
||||
# `config/secrets.yml.key`. |
||||
config.read_encrypted_secrets = true |
||||
|
||||
# Disable serving static files from the `/public` folder by default since |
||||
# Apache or NGINX already handles this. |
||||
config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? |
||||
|
||||
# Compress JavaScripts and CSS. |
||||
config.assets.js_compressor = :uglifier |
||||
# config.assets.css_compressor = :sass |
||||
|
||||
# Do not fallback to assets pipeline if a precompiled asset is missed. |
||||
config.assets.compile = false |
||||
|
||||
# `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb |
||||
|
||||
# Enable serving of images, stylesheets, and JavaScripts from an asset server. |
||||
# config.action_controller.asset_host = 'http://assets.example.com' |
||||
|
||||
# Specifies the header that your server uses for sending files. |
||||
# config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache |
||||
# config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX |
||||
|
||||
# Mount Action Cable outside main process or domain |
||||
# config.action_cable.mount_path = nil |
||||
# config.action_cable.url = 'wss://example.com/cable' |
||||
# config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ] |
||||
|
||||
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies. |
||||
# config.force_ssl = true |
||||
|
||||
# Use the lowest log level to ensure availability of diagnostic information |
||||
# when problems arise. |
||||
config.log_level = :debug |
||||
|
||||
# Prepend all log lines with the following tags. |
||||
config.log_tags = [ :request_id ] |
||||
|
||||
# Use a different cache store in production. |
||||
# config.cache_store = :mem_cache_store |
||||
|
||||
# Use a real queuing backend for Active Job (and separate queues per environment) |
||||
# config.active_job.queue_adapter = :resque |
||||
# config.active_job.queue_name_prefix = "dummy_#{Rails.env}" |
||||
config.action_mailer.perform_caching = false |
||||
|
||||
# Ignore bad email addresses and do not raise email delivery errors. |
||||
# Set this to true and configure the email server for immediate delivery to raise delivery errors. |
||||
# config.action_mailer.raise_delivery_errors = false |
||||
|
||||
# Enable locale fallbacks for I18n (makes lookups for any locale fall back to |
||||
# the I18n.default_locale when a translation cannot be found). |
||||
config.i18n.fallbacks = true |
||||
|
||||
# Send deprecation notices to registered listeners. |
||||
config.active_support.deprecation = :notify |
||||
|
||||
# Use default logging formatter so that PID and timestamp are not suppressed. |
||||
config.log_formatter = ::Logger::Formatter.new |
||||
|
||||
# Use a different logger for distributed setups. |
||||
# require 'syslog/logger' |
||||
# config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name') |
||||
|
||||
if ENV["RAILS_LOG_TO_STDOUT"].present? |
||||
logger = ActiveSupport::Logger.new(STDOUT) |
||||
logger.formatter = config.log_formatter |
||||
config.logger = ActiveSupport::TaggedLogging.new(logger) |
||||
end |
||||
|
||||
# Do not dump schema after migrations. |
||||
config.active_record.dump_schema_after_migration = false |
||||
end |
@ -0,0 +1,42 @@ |
||||
Rails.application.configure do |
||||
# Settings specified here will take precedence over those in config/application.rb. |
||||
|
||||
# The test environment is used exclusively to run your application's |
||||
# test suite. You never need to work with it otherwise. Remember that |
||||
# your test database is "scratch space" for the test suite and is wiped |
||||
# and recreated between test runs. Don't rely on the data there! |
||||
config.cache_classes = true |
||||
|
||||
# Do not eager load code on boot. This avoids loading your whole application |
||||
# just for the purpose of running a single test. If you are using a tool that |
||||
# preloads Rails for running tests, you may have to set it to true. |
||||
config.eager_load = false |
||||
|
||||
# Configure public file server for tests with Cache-Control for performance. |
||||
config.public_file_server.enabled = true |
||||
config.public_file_server.headers = { |
||||
'Cache-Control' => "public, max-age=#{1.hour.seconds.to_i}" |
||||
} |
||||
|
||||
# Show full error reports and disable caching. |
||||
config.consider_all_requests_local = true |
||||
config.action_controller.perform_caching = false |
||||
|
||||
# Raise exceptions instead of rendering exception templates. |
||||
config.action_dispatch.show_exceptions = false |
||||
|
||||
# Disable request forgery protection in test environment. |
||||
config.action_controller.allow_forgery_protection = false |
||||
config.action_mailer.perform_caching = false |
||||
|
||||
# Tell Action Mailer not to deliver emails to the real world. |
||||
# The :test delivery method accumulates sent emails in the |
||||
# ActionMailer::Base.deliveries array. |
||||
config.action_mailer.delivery_method = :test |
||||
|
||||
# Print deprecation notices to the stderr. |
||||
config.active_support.deprecation = :stderr |
||||
|
||||
# Raises error for missing translations |
||||
# config.action_view.raise_on_missing_translations = true |
||||
end |
@ -0,0 +1,8 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# ActiveSupport::Reloader.to_prepare do |
||||
# ApplicationController.renderer.defaults.merge!( |
||||
# http_host: 'example.org', |
||||
# https: false |
||||
# ) |
||||
# end |
@ -0,0 +1,14 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# Version of your assets, change this if you want to expire all your assets. |
||||
Rails.application.config.assets.version = '1.0' |
||||
|
||||
# Add additional assets to the asset load path. |
||||
# Rails.application.config.assets.paths << Emoji.images_path |
||||
# Add Yarn node_modules folder to the asset load path. |
||||
Rails.application.config.assets.paths << Rails.root.join('node_modules') |
||||
|
||||
# Precompile additional assets. |
||||
# application.js, application.css, and all non-JS/CSS in the app/assets |
||||
# folder are already added. |
||||
# Rails.application.config.assets.precompile += %w( admin.js admin.css ) |
@ -0,0 +1,7 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces. |
||||
# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ } |
||||
|
||||
# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code. |
||||
# Rails.backtrace_cleaner.remove_silencers! |
@ -0,0 +1,5 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# Specify a serializer for the signed and encrypted cookie jars. |
||||
# Valid options are :json, :marshal, and :hybrid. |
||||
Rails.application.config.action_dispatch.cookies_serializer = :json |
@ -0,0 +1,4 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# Configure sensitive parameters which will be filtered from the log file. |
||||
Rails.application.config.filter_parameters += [:password] |
@ -0,0 +1,16 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# Add new inflection rules using the following format. Inflections |
||||
# are locale specific, and you may define rules for as many different |
||||
# locales as you wish. All of these examples are active by default: |
||||
# ActiveSupport::Inflector.inflections(:en) do |inflect| |
||||
# inflect.plural /^(ox)$/i, '\1en' |
||||
# inflect.singular /^(ox)en/i, '\1' |
||||
# inflect.irregular 'person', 'people' |
||||
# inflect.uncountable %w( fish sheep ) |
||||
# end |
||||
|
||||
# These inflection rules are supported but not enabled by default: |
||||
# ActiveSupport::Inflector.inflections(:en) do |inflect| |
||||
# inflect.acronym 'RESTful' |
||||
# end |
@ -0,0 +1,4 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# Add new mime types for use in respond_to blocks: |
||||
# Mime::Type.register "text/richtext", :rtf |
@ -0,0 +1,14 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# This file contains settings for ActionController::ParamsWrapper which |
||||
# is enabled by default. |
||||
|
||||
# Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array. |
||||
ActiveSupport.on_load(:action_controller) do |
||||
wrap_parameters format: [:json] |
||||
end |
||||
|
||||
# To enable root element in JSON for ActiveRecord objects. |
||||
# ActiveSupport.on_load(:active_record) do |
||||
# self.include_root_in_json = true |
||||
# end |
@ -0,0 +1,33 @@ |
||||
# Files in the config/locales directory are used for internationalization |
||||
# and are automatically loaded by Rails. If you want to use locales other |
||||
# than English, add the necessary files in this directory. |
||||
# |
||||
# To use the locales, use `I18n.t`: |
||||
# |
||||
# I18n.t 'hello' |
||||
# |
||||
# In views, this is aliased to just `t`: |
||||
# |
||||
# <%= t('hello') %> |
||||
# |
||||
# To use a different locale, set it with `I18n.locale`: |
||||
# |
||||
# I18n.locale = :es |
||||
# |
||||
# This would use the information in config/locales/es.yml. |
||||
# |
||||
# The following keys must be escaped otherwise they will not be retrieved by |
||||
# the default I18n backend: |
||||
# |
||||
# true, false, on, off, yes, no |
||||
# |
||||
# Instead, surround them with single quotes. |
||||
# |
||||
# en: |
||||
# 'true': 'foo' |
||||
# |
||||
# To learn more, please read the Rails Internationalization guide |
||||
# available at http://guides.rubyonrails.org/i18n.html. |
||||
|
||||
en: |
||||
hello: "Hello world" |
@ -0,0 +1,56 @@ |
||||
# Puma can serve each request in a thread from an internal thread pool. |
||||
# The `threads` method setting takes two numbers: a minimum and maximum. |
||||
# Any libraries that use thread pools should be configured to match |
||||
# the maximum value specified for Puma. Default is set to 5 threads for minimum |
||||
# and maximum; this matches the default thread size of Active Record. |
||||
# |
||||
threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 } |
||||
threads threads_count, threads_count |
||||
|
||||
# Specifies the `port` that Puma will listen on to receive requests; default is 3000. |
||||
# |
||||
port ENV.fetch("PORT") { 3000 } |
||||
|
||||
# Specifies the `environment` that Puma will run in. |
||||
# |
||||
environment ENV.fetch("RAILS_ENV") { "development" } |
||||
|
||||
# Specifies the number of `workers` to boot in clustered mode. |
||||
# Workers are forked webserver processes. If using threads and workers together |
||||
# the concurrency of the application would be max `threads` * `workers`. |
||||
# Workers do not work on JRuby or Windows (both of which do not support |
||||
# processes). |
||||
# |
||||
# workers ENV.fetch("WEB_CONCURRENCY") { 2 } |
||||
|
||||
# Use the `preload_app!` method when specifying a `workers` number. |
||||
# This directive tells Puma to first boot the application and load code |
||||
# before forking the application. This takes advantage of Copy On Write |
||||
# process behavior so workers use less memory. If you use this option |
||||
# you need to make sure to reconnect any threads in the `on_worker_boot` |
||||
# block. |
||||
# |
||||
# preload_app! |
||||
|
||||
# If you are preloading your application and using Active Record, it's |
||||
# recommended that you close any connections to the database before workers |
||||
# are forked to prevent connection leakage. |
||||
# |
||||
# before_fork do |
||||
# ActiveRecord::Base.connection_pool.disconnect! if defined?(ActiveRecord) |
||||
# end |
||||
|
||||
# The code in the `on_worker_boot` will be called if you are using |
||||
# clustered mode by specifying a number of `workers`. After each worker |
||||
# process is booted, this block will be run. If you are using the `preload_app!` |
||||
# option, you will want to use this block to reconnect to any threads |
||||
# or connections that may have been created at application boot, as Ruby |
||||
# cannot share connections between processes. |
||||
# |
||||
# on_worker_boot do |
||||
# ActiveRecord::Base.establish_connection if defined?(ActiveRecord) |
||||
# end |
||||
# |
||||
|
||||
# Allow puma to be restarted by `rails restart` command. |
||||
plugin :tmp_restart |
@ -0,0 +1,3 @@ |
||||
Rails.application.routes.draw do |
||||
mount Grids::Engine => "/grids" |
||||
end |
@ -0,0 +1,32 @@ |
||||
# Be sure to restart your server when you modify this file. |
||||
|
||||
# Your secret key is used for verifying the integrity of signed cookies. |
||||
# If you change this key, all old signed cookies will become invalid! |
||||
|
||||
# Make sure the secret is at least 30 characters and all random, |
||||
# no regular words or you'll be exposed to dictionary attacks. |
||||
# You can use `rails secret` to generate a secure secret key. |
||||
|
||||
# Make sure the secrets in this file are kept private |
||||
# if you're sharing your code publicly. |
||||
|
||||
# Shared secrets are available across all environments. |
||||
|
||||
# shared: |
||||
# api_key: a1B2c3D4e5F6 |
||||
|
||||
# Environmental secrets are only available for that specific environment. |
||||
|
||||
development: |
||||
secret_key_base: 73f120228e9a0eb3a227404a4f79cbddc14e8d830e818c4a1fff8a5b6749c7d2c81836e8c7e113dc87243b713a82962f0a8afb1fea696e1142bf9a4d638669e7 |
||||
|
||||
test: |
||||
secret_key_base: 80f44ea759b4a80dcad11fd675687678efffb8f3437f54f7746ef38e7ae94ef8a7766899cf1ca260399662592e2bb722c393154b08d374d1a5911d7342e22667 |
||||
|
||||
# Do not keep production secrets in the unencrypted secrets file. |
||||
# Instead, either read values from the environment. |
||||
# Or, use `bin/rails secrets:setup` to configure encrypted secrets |
||||
# and move the `production:` environment over there. |
||||
|
||||
production: |
||||
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> |
@ -0,0 +1,6 @@ |
||||
%w( |
||||
.ruby-version |
||||
.rbenv-vars |
||||
tmp/restart.txt |
||||
tmp/caching-dev.txt |
||||
).each { |path| Spring.watch(path) } |
@ -0,0 +1,5 @@ |
||||
{ |
||||
"name": "dummy", |
||||
"private": true, |
||||
"dependencies": {} |
||||
} |
@ -0,0 +1,67 @@ |
||||
<!DOCTYPE html> |
||||
<html> |
||||
<head> |
||||
<title>The page you were looking for doesn't exist (404)</title> |
||||
<meta name="viewport" content="width=device-width,initial-scale=1"> |
||||
<style> |
||||
.rails-default-error-page { |
||||
background-color: #EFEFEF; |
||||
color: #2E2F30; |
||||
text-align: center; |
||||
font-family: arial, sans-serif; |
||||
margin: 0; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog { |
||||
width: 95%; |
||||
max-width: 33em; |
||||
margin: 4em auto 0; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog > div { |
||||
border: 1px solid #CCC; |
||||
border-right-color: #999; |
||||
border-left-color: #999; |
||||
border-bottom-color: #BBB; |
||||
border-top: #B00100 solid 4px; |
||||
border-top-left-radius: 9px; |
||||
border-top-right-radius: 9px; |
||||
background-color: white; |
||||
padding: 7px 12% 0; |
||||
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17); |
||||
} |
||||
|
||||
.rails-default-error-page h1 { |
||||
font-size: 100%; |
||||
color: #730E15; |
||||
line-height: 1.5em; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog > p { |
||||
margin: 0 0 1em; |
||||
padding: 1em; |
||||
background-color: #F7F7F7; |
||||
border: 1px solid #CCC; |
||||
border-right-color: #999; |
||||
border-left-color: #999; |
||||
border-bottom-color: #999; |
||||
border-bottom-left-radius: 4px; |
||||
border-bottom-right-radius: 4px; |
||||
border-top-color: #DADADA; |
||||
color: #666; |
||||
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17); |
||||
} |
||||
</style> |
||||
</head> |
||||
|
||||
<body class="rails-default-error-page"> |
||||
<!-- This file lives in public/404.html --> |
||||
<div class="dialog"> |
||||
<div> |
||||
<h1>The page you were looking for doesn't exist.</h1> |
||||
<p>You may have mistyped the address or the page may have moved.</p> |
||||
</div> |
||||
<p>If you are the application owner check the logs for more information.</p> |
||||
</div> |
||||
</body> |
||||
</html> |
@ -0,0 +1,67 @@ |
||||
<!DOCTYPE html> |
||||
<html> |
||||
<head> |
||||
<title>The change you wanted was rejected (422)</title> |
||||
<meta name="viewport" content="width=device-width,initial-scale=1"> |
||||
<style> |
||||
.rails-default-error-page { |
||||
background-color: #EFEFEF; |
||||
color: #2E2F30; |
||||
text-align: center; |
||||
font-family: arial, sans-serif; |
||||
margin: 0; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog { |
||||
width: 95%; |
||||
max-width: 33em; |
||||
margin: 4em auto 0; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog > div { |
||||
border: 1px solid #CCC; |
||||
border-right-color: #999; |
||||
border-left-color: #999; |
||||
border-bottom-color: #BBB; |
||||
border-top: #B00100 solid 4px; |
||||
border-top-left-radius: 9px; |
||||
border-top-right-radius: 9px; |
||||
background-color: white; |
||||
padding: 7px 12% 0; |
||||
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17); |
||||
} |
||||
|
||||
.rails-default-error-page h1 { |
||||
font-size: 100%; |
||||
color: #730E15; |
||||
line-height: 1.5em; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog > p { |
||||
margin: 0 0 1em; |
||||
padding: 1em; |
||||
background-color: #F7F7F7; |
||||
border: 1px solid #CCC; |
||||
border-right-color: #999; |
||||
border-left-color: #999; |
||||
border-bottom-color: #999; |
||||
border-bottom-left-radius: 4px; |
||||
border-bottom-right-radius: 4px; |
||||
border-top-color: #DADADA; |
||||
color: #666; |
||||
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17); |
||||
} |
||||
</style> |
||||
</head> |
||||
|
||||
<body class="rails-default-error-page"> |
||||
<!-- This file lives in public/422.html --> |
||||
<div class="dialog"> |
||||
<div> |
||||
<h1>The change you wanted was rejected.</h1> |
||||
<p>Maybe you tried to change something you didn't have access to.</p> |
||||
</div> |
||||
<p>If you are the application owner check the logs for more information.</p> |
||||
</div> |
||||
</body> |
||||
</html> |
@ -0,0 +1,66 @@ |
||||
<!DOCTYPE html> |
||||
<html> |
||||
<head> |
||||
<title>We're sorry, but something went wrong (500)</title> |
||||
<meta name="viewport" content="width=device-width,initial-scale=1"> |
||||
<style> |
||||
.rails-default-error-page { |
||||
background-color: #EFEFEF; |
||||
color: #2E2F30; |
||||
text-align: center; |
||||
font-family: arial, sans-serif; |
||||
margin: 0; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog { |
||||
width: 95%; |
||||
max-width: 33em; |
||||
margin: 4em auto 0; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog > div { |
||||
border: 1px solid #CCC; |
||||
border-right-color: #999; |
||||
border-left-color: #999; |
||||
border-bottom-color: #BBB; |
||||
border-top: #B00100 solid 4px; |
||||
border-top-left-radius: 9px; |
||||
border-top-right-radius: 9px; |
||||
background-color: white; |
||||
padding: 7px 12% 0; |
||||
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17); |
||||
} |
||||
|
||||
.rails-default-error-page h1 { |
||||
font-size: 100%; |
||||
color: #730E15; |
||||
line-height: 1.5em; |
||||
} |
||||
|
||||
.rails-default-error-page div.dialog > p { |
||||
margin: 0 0 1em; |
||||
padding: 1em; |
||||
background-color: #F7F7F7; |
||||
border: 1px solid #CCC; |
||||
border-right-color: #999; |
||||
border-left-color: #999; |
||||
border-bottom-color: #999; |
||||
border-bottom-left-radius: 4px; |
||||
border-bottom-right-radius: 4px; |
||||
border-top-color: #DADADA; |
||||
color: #666; |
||||
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17); |
||||
} |
||||
</style> |
||||
</head> |
||||
|
||||
<body class="rails-default-error-page"> |
||||
<!-- This file lives in public/500.html --> |
||||
<div class="dialog"> |
||||
<div> |
||||
<h1>We're sorry, but something went wrong.</h1> |
||||
</div> |
||||
<p>If you are the application owner check the logs for more information.</p> |
||||
</div> |
||||
</body> |
||||
</html> |
Loading…
Reference in new issue