enjoy_cms 0.3.7.4 → 0.4.0.beta3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/.ruby-version +1 -1
- data/Gemfile.lock +62 -111
- data/app/assets/javascripts/{enjoy_cms → enjoy/cms}/flash.coffee +0 -0
- data/app/assets/javascripts/enjoy/cms/init.coffee +1 -0
- data/app/assets/javascripts/{enjoy_cms → enjoy/cms}/map.coffee +0 -0
- data/app/assets/javascripts/enjoy/cms.coffee +11 -0
- data/app/assets/javascripts/enjoy/rails_admin/cms.ui.coffee +26 -0
- data/app/assets/javascripts/{enjoy_cms → enjoy}/rails_admin/custom/ui.coffee +0 -0
- data/app/assets/javascripts/rails_admin/custom/ui.coffee +2 -2
- data/app/assets/stylesheets/{enjoy_cms → enjoy/cms}/flash.sass +0 -0
- data/app/assets/stylesheets/{enjoy_cms → enjoy/cms}/normalize.scss +0 -0
- data/app/assets/stylesheets/{enjoy_cms → enjoy/cms}/powered.sass +0 -0
- data/app/assets/stylesheets/{enjoy_cms.sass → enjoy/cms.sass} +3 -1
- data/app/assets/stylesheets/enjoy/rails_admin/cms.ui.sass +117 -0
- data/{lib/enjoy/controllers/sitemap_data.rb → app/assets/stylesheets/enjoy/rails_admin/custom/ui.sass} +0 -0
- data/app/assets/stylesheets/rails_admin/custom/theming.sass +2 -0
- data/app/controllers/concerns/enjoy/errors.rb +1 -1
- data/app/controllers/enjoy/registrations_controller.rb +20 -0
- data/app/controllers/enjoy/sessions_controller.rb +19 -0
- data/app/helpers/enjoy/home_helper.rb +2 -0
- data/app/helpers/enjoy/powered_helper.rb +1 -1
- data/app/models/concerns/enjoy/html_field.rb +3 -0
- data/app/views/blocks/_favicon.html.slim +60 -21
- data/app/views/devise/registrations/edit.html.slim +2 -2
- data/app/views/devise/registrations/new.html.slim +9 -3
- data/app/views/devise/sessions/new.html.slim +8 -2
- data/app/views/devise/shared/_links.html.slim +4 -4
- data/app/views/{errors → enjoy/errors}/_base.html.slim +0 -0
- data/app/views/{errors → enjoy/errors}/error_403.html.slim +0 -0
- data/app/views/{errors → enjoy/errors}/error_404.html.slim +0 -0
- data/app/views/{errors → enjoy/errors}/error_500.html.slim +0 -0
- data/app/views/{simple_captcha → enjoy/simple_captcha}/_simple_captcha.html.slim +0 -0
- data/app/views/layouts/application.html.slim +8 -4
- data/app/views/layouts/enjoy/devise/confirmations.html.slim +27 -0
- data/app/views/layouts/enjoy/devise/passwords.html.slim +27 -0
- data/app/views/layouts/enjoy/devise/registrations.html.slim +27 -0
- data/app/views/layouts/enjoy/devise/sessions.html.slim +27 -0
- data/app/views/layouts/enjoy/devise/unlocks.html.slim +27 -0
- data/app/views/rails_admin/main/_setting_value.html.haml +104 -0
- data/app/views/shared/_messages.html.slim +1 -1
- data/config/initializers/simple_captcha.rb +29 -20
- data/config/locales/en.enjoy.yml +1 -1
- data/config/locales/ru.enjoy.yml +0 -7
- data/config/locales/ru.models.yml +2 -39
- data/enjoy_cms.gemspec +7 -20
- data/lib/enjoy/configuration.rb +24 -40
- data/lib/enjoy/controller.rb +5 -3
- data/lib/enjoy/engine.rb +28 -28
- data/lib/enjoy/migration.rb +0 -19
- data/lib/enjoy/model.rb +5 -2
- data/lib/enjoy/rails_admin_ext/config.rb +112 -0
- data/lib/enjoy/rails_admin_ext/enjoy_hash.rb +0 -2
- data/lib/enjoy/rails_admin_ext/enjoy_slugs.rb +31 -0
- data/lib/enjoy/rails_admin_ext/group_patch.rb +2 -1
- data/lib/enjoy/rails_admin_settings_patch.rb +7 -0
- data/lib/enjoy/routes.rb +1 -26
- data/lib/enjoy/version.rb +1 -1
- data/lib/enjoy_cms.rb +25 -71
- data/lib/filename_to_slug.rb +20 -22
- data/lib/generators/enjoy/{ability_generator.rb → cms/ability_generator.rb} +3 -3
- data/lib/generators/enjoy/{admin_generator.rb → cms/admin_generator.rb} +2 -2
- data/lib/generators/enjoy/cms/application_generator.rb +14 -0
- data/lib/generators/enjoy/cms/assets_generator.rb +35 -0
- data/lib/generators/enjoy/{config/install_generator.rb → cms/config_generator.rb} +3 -3
- data/lib/generators/enjoy/cms/gemfile_generator.rb +13 -0
- data/lib/generators/enjoy/{layout_generator.rb → cms/layout_generator.rb} +2 -2
- data/lib/generators/enjoy/cms/paperclip_optimizer_generator.rb +13 -0
- data/lib/generators/enjoy/cms/rack_generator.rb +12 -0
- data/lib/generators/enjoy/cms/robots_generator.rb +12 -0
- data/lib/generators/enjoy/cms/scripts_generator.rb +25 -0
- data/lib/generators/enjoy/cms/templates/Gemfile.erb +69 -0
- data/lib/generators/enjoy/cms/templates/ability.erb +45 -0
- data/lib/generators/enjoy/{templates → cms/templates}/admin.erb +5 -26
- data/lib/generators/enjoy/cms/templates/application.erb +42 -0
- data/lib/generators/enjoy/cms/templates/assets/javascripts/application.coffee.erb +1 -0
- data/lib/generators/enjoy/cms/templates/assets/stylesheets/application.sass.erb +15 -0
- data/lib/generators/enjoy/cms/templates/assets/stylesheets/enjoy/rails_admin/custom/ui.sass.erb +106 -0
- data/lib/generators/enjoy/cms/templates/enjoy_cms.erb +28 -0
- data/lib/generators/enjoy/cms/templates/paperclip_optimizer.erb +80 -0
- data/lib/generators/enjoy/cms/templates/rack.erb +15 -0
- data/lib/generators/enjoy/cms/templates/robots.txt.erb +4 -0
- data/lib/generators/enjoy/cms/templates/scripts/assets_precompile.sh +3 -0
- data/lib/generators/enjoy/cms/templates/scripts/bundle_production.sh +4 -0
- data/lib/generators/enjoy/cms/templates/scripts/db_dump.sh.erb +3 -0
- data/lib/generators/enjoy/cms/templates/scripts/db_restore.sh +3 -0
- data/lib/generators/enjoy/cms/templates/scripts/full_assets_precompile.sh +4 -0
- data/lib/generators/enjoy/cms/templates/scripts/restart_thru_kill.sh +3 -0
- data/lib/generators/enjoy/cms/templates/scripts/send_hup.sh +3 -0
- data/lib/generators/enjoy/cms/templates/scripts/send_usr2.sh +3 -0
- data/lib/generators/enjoy/cms/templates/unicorn.erb +57 -0
- data/lib/generators/enjoy/cms/templates/unicorn.god.erb +59 -0
- data/lib/generators/enjoy/cms/unicorn_god_generator.rb +15 -0
- data/lib/generators/enjoy/{utils.rb → cms/utils.rb} +1 -1
- data/lib/rails_admin/custom_show_in_app.rb +13 -13
- data/template.rb +197 -543
- metadata +73 -325
- data/app/assets/javascripts/enjoy_cms/contacts.coffee +0 -11
- data/app/assets/javascripts/enjoy_cms/rails_admin/cms.ui.coffee +0 -6
- data/app/assets/javascripts/enjoy_cms.coffee +0 -7
- data/app/controllers/concerns/enjoy/blocksetable.rb +0 -37
- data/app/controllers/concerns/enjoy/decorators/contacts.rb +0 -5
- data/app/controllers/concerns/enjoy/decorators/news.rb +0 -5
- data/app/controllers/concerns/enjoy/decorators/pages.rb +0 -5
- data/app/controllers/concerns/enjoy/decorators/search.rb +0 -5
- data/app/controllers/concerns/enjoy/nav_menu.rb +0 -91
- data/app/controllers/concerns/enjoy/seo_pages.rb +0 -90
- data/app/controllers/enjoy/contacts_controller.rb +0 -7
- data/app/controllers/enjoy/news_controller.rb +0 -7
- data/app/controllers/enjoy/pages_controller.rb +0 -7
- data/app/controllers/enjoy/search_controller.rb +0 -8
- data/app/mailers/enjoy/contact_mailer.rb +0 -17
- data/app/models/concerns/enjoy/connectable.rb +0 -36
- data/app/models/concerns/enjoy/decorators/contact_message.rb +0 -5
- data/app/models/concerns/enjoy/decorators/embedded_gallery_image.rb +0 -5
- data/app/models/concerns/enjoy/decorators/gallery.rb +0 -5
- data/app/models/concerns/enjoy/decorators/gallery_image.rb +0 -5
- data/app/models/concerns/enjoy/decorators/menu.rb +0 -5
- data/app/models/concerns/enjoy/decorators/news.rb +0 -5
- data/app/models/concerns/enjoy/decorators/page.rb +0 -5
- data/app/models/concerns/enjoy/decorators/page_block.rb +0 -5
- data/app/models/concerns/enjoy/decorators/page_blockset.rb +0 -5
- data/app/models/concerns/enjoy/decorators/seo.rb +0 -5
- data/app/models/concerns/enjoy/decorators/sitemap_data.rb +0 -5
- data/app/models/concerns/enjoy/mongoid_paperclip.rb +0 -51
- data/app/models/concerns/enjoy/seoable.rb +0 -36
- data/app/models/concerns/enjoy/sitemap_data_field.rb +0 -17
- data/app/models/enjoy/contact_message.rb +0 -16
- data/app/models/enjoy/embedded_gallery_image.rb +0 -16
- data/app/models/enjoy/gallery.rb +0 -13
- data/app/models/enjoy/gallery_image.rb +0 -13
- data/app/models/enjoy/menu.rb +0 -16
- data/app/models/enjoy/news.rb +0 -16
- data/app/models/enjoy/page.rb +0 -16
- data/app/models/enjoy/page_block.rb +0 -13
- data/app/models/enjoy/page_blockset.rb +0 -13
- data/app/models/enjoy/seo.rb +0 -16
- data/app/models/enjoy/sitemap_data.rb +0 -16
- data/app/views/enjoy/contact_mailer/new_message_email.html.slim +0 -15
- data/app/views/enjoy/contacts/_form.html.slim +0 -7
- data/app/views/enjoy/contacts/_form_with_wrapper.html.slim +0 -2
- data/app/views/enjoy/contacts/_success.html.slim +0 -3
- data/app/views/enjoy/contacts/index.html.slim +0 -4
- data/app/views/enjoy/contacts/new.html.slim +0 -4
- data/app/views/enjoy/contacts/sent.html.slim +0 -3
- data/app/views/enjoy/news/index.html.slim +0 -9
- data/app/views/enjoy/news/show.html.slim +0 -8
- data/app/views/enjoy/pages/show.html.slim +0 -1
- data/app/views/enjoy/search/index.html.slim +0 -19
- data/app/views/rails_admin/main/_enjoy_connectable.html.slim +0 -56
- data/config/locales/ru.kaminari.yml +0 -17
- data/config/locales/ru.simple_captcha.yml +0 -3
- data/config/locales/ru.simple_form.yml +0 -9
- data/lib/enjoy/admin/contact_message.rb +0 -42
- data/lib/enjoy/admin/embedded_gallery_image.rb +0 -38
- data/lib/enjoy/admin/gallery.rb +0 -44
- data/lib/enjoy/admin/gallery_image.rb +0 -31
- data/lib/enjoy/admin/menu.rb +0 -27
- data/lib/enjoy/admin/news.rb +0 -89
- data/lib/enjoy/admin/page.rb +0 -96
- data/lib/enjoy/admin/page_block.rb +0 -49
- data/lib/enjoy/admin/page_blockset.rb +0 -50
- data/lib/enjoy/admin/seo.rb +0 -41
- data/lib/enjoy/admin/sitemap_data.rb +0 -29
- data/lib/enjoy/controllers/contacts.rb +0 -86
- data/lib/enjoy/controllers/news.rb +0 -36
- data/lib/enjoy/controllers/pages.rb +0 -22
- data/lib/enjoy/controllers/search.rb +0 -62
- data/lib/enjoy/elastic_search.rb +0 -31
- data/lib/enjoy/models/active_record/contact_message.rb +0 -14
- data/lib/enjoy/models/active_record/menu.rb +0 -17
- data/lib/enjoy/models/active_record/news.rb +0 -26
- data/lib/enjoy/models/active_record/page.rb +0 -20
- data/lib/enjoy/models/active_record/seo.rb +0 -17
- data/lib/enjoy/models/active_record/sitemap_data.rb +0 -11
- data/lib/enjoy/models/contact_message.rb +0 -41
- data/lib/enjoy/models/embedded_gallery_image.rb +0 -13
- data/lib/enjoy/models/gallery.rb +0 -21
- data/lib/enjoy/models/gallery_image.rb +0 -19
- data/lib/enjoy/models/menu.rb +0 -23
- data/lib/enjoy/models/mongoid/contact_message.rb +0 -23
- data/lib/enjoy/models/mongoid/embedded_gallery_image.rb +0 -24
- data/lib/enjoy/models/mongoid/gallery.rb +0 -32
- data/lib/enjoy/models/mongoid/gallery_image.rb +0 -29
- data/lib/enjoy/models/mongoid/menu.rb +0 -20
- data/lib/enjoy/models/mongoid/news.rb +0 -37
- data/lib/enjoy/models/mongoid/page.rb +0 -49
- data/lib/enjoy/models/mongoid/page_block.rb +0 -56
- data/lib/enjoy/models/mongoid/page_blockset.rb +0 -20
- data/lib/enjoy/models/mongoid/seo.rb +0 -35
- data/lib/enjoy/models/mongoid/sitemap_data.rb +0 -25
- data/lib/enjoy/models/news.rb +0 -58
- data/lib/enjoy/models/page.rb +0 -92
- data/lib/enjoy/models/page_block.rb +0 -22
- data/lib/enjoy/models/page_blockset.rb +0 -24
- data/lib/enjoy/models/seo.rb +0 -17
- data/lib/enjoy/models/sitemap_data.rb +0 -17
- data/lib/enjoy/rails_admin_ext/enjoy_connectable.rb +0 -33
- data/lib/enjoy/rails_admin_ext/menu.rb +0 -147
- data/lib/generators/enjoy/capify_generator.rb +0 -39
- data/lib/generators/enjoy/config/templates/enjoy_cms.erb +0 -27
- data/lib/generators/enjoy/migration_generator.rb +0 -18
- data/lib/generators/enjoy/templates/Capfile +0 -17
- data/lib/generators/enjoy/templates/ability.erb +0 -48
- data/lib/generators/enjoy/templates/deploy.erb +0 -47
- data/lib/generators/enjoy/templates/dl.erb +0 -30
- data/lib/generators/enjoy/templates/migration_contact_messages.rb +0 -15
- data/lib/generators/enjoy/templates/migration_news.rb +0 -26
- data/lib/generators/enjoy/templates/migration_pages.rb +0 -45
- data/lib/generators/enjoy/templates/migration_seos.rb +0 -14
- data/lib/generators/enjoy/templates/production.erb +0 -8
- data/lib/generators/enjoy/templates/unicorn.erb +0 -66
@@ -1,17 +0,0 @@
|
|
1
|
-
# Load DSL and Setup Up Stages
|
2
|
-
require 'capistrano/setup'
|
3
|
-
|
4
|
-
# Includes default deployment tasks
|
5
|
-
require 'capistrano/deploy'
|
6
|
-
|
7
|
-
require 'rvm1/capistrano3'
|
8
|
-
require 'capistrano/bundler'
|
9
|
-
require 'capistrano/rails/assets'
|
10
|
-
#require "whenever/capistrano"
|
11
|
-
|
12
|
-
require 'capistrano/unicorn'
|
13
|
-
|
14
|
-
# require 'capistrano/rails/console'
|
15
|
-
|
16
|
-
# Loads custom tasks from `lib/capistrano/tasks' if you have any defined.
|
17
|
-
Dir.glob('lib/capistrano/tasks/*.cap').each { |r| import r }
|
@@ -1,48 +0,0 @@
|
|
1
|
-
class Ability
|
2
|
-
include CanCan::Ability
|
3
|
-
|
4
|
-
def initialize(user)
|
5
|
-
if !user.nil? and (user.admin? or user.manager?)
|
6
|
-
can :read, :all
|
7
|
-
can :access, :rails_admin # grant access to rails_admin
|
8
|
-
can :dashboard # grant access to the dashboard
|
9
|
-
|
10
|
-
can :comments, :all #RailsAdminComments
|
11
|
-
|
12
|
-
if user.admin?
|
13
|
-
admin_ui(user)
|
14
|
-
elsif user.manager?
|
15
|
-
manager_ui(user)
|
16
|
-
end
|
17
|
-
|
18
|
-
cannot [:new, :create], Enjoy::Seo
|
19
|
-
cannot [:new, :create], Enjoy::SitemapData
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
def admin_ui(user)
|
24
|
-
can :manage, :all
|
25
|
-
end
|
26
|
-
|
27
|
-
def manager_ui(user)
|
28
|
-
cannot :manage, Enjoy::Menu
|
29
|
-
cannot [:edit, :destroy, :new, :create], User
|
30
|
-
can :edit, user
|
31
|
-
|
32
|
-
manager_models.each do |model|
|
33
|
-
can manager_actions, model
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
def manager_actions
|
38
|
-
[:edit, :new, :create, :nested_set, :sort_embedded]
|
39
|
-
end
|
40
|
-
|
41
|
-
def manager_models
|
42
|
-
[
|
43
|
-
Enjoy::Page, Enjoy::News,
|
44
|
-
Enjoy::Seo, Enjoy::SitemapData,
|
45
|
-
RailsAdminSettings::Setting
|
46
|
-
]
|
47
|
-
end
|
48
|
-
end
|
@@ -1,47 +0,0 @@
|
|
1
|
-
set :user, "<%= app_name.downcase %>"
|
2
|
-
set :application, '<%= app_name.downcase %>'
|
3
|
-
set :scm, :git
|
4
|
-
set :repo_url, 'git@rscz.ru:rocket-science/<%= app_name.downcase %>.git'
|
5
|
-
|
6
|
-
set :branch, ENV["REVISION"] || "master"
|
7
|
-
|
8
|
-
set :deploy_to, "<%= deploy_to %>"
|
9
|
-
|
10
|
-
# require 'hipchat/capistrano'
|
11
|
-
# set :hipchat_token, ""
|
12
|
-
# set :hipchat_room_name, "<%= app_name %>"
|
13
|
-
# set :hipchat_announce, false
|
14
|
-
|
15
|
-
set :rvm_type, :user
|
16
|
-
set :rvm_ruby_version, "2.2.1@#{fetch :application}"
|
17
|
-
set :use_sudo, false
|
18
|
-
|
19
|
-
set :keep_releases, 20
|
20
|
-
|
21
|
-
set :linked_files, %w{config/mongoid.yml config/secrets.yml}
|
22
|
-
set :linked_dirs, %w{log tmp vendor/bundle public/assets public/system public/uploads public/ckeditor_assets public/sitemap}
|
23
|
-
|
24
|
-
namespace :db do
|
25
|
-
desc "Create the indexes defined on your mongoid models"
|
26
|
-
task :create_mongoid_indexes do
|
27
|
-
on roles(:app) do
|
28
|
-
execute :rake, "db:mongoid:create_indexes"
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
namespace :deploy do
|
34
|
-
task :restart do
|
35
|
-
end
|
36
|
-
desc "Update the crontab"
|
37
|
-
task :update_crontab do
|
38
|
-
on roles(:app) do
|
39
|
-
execute "cd #{release_path}; #{fetch(:tmp_dir)}/#{fetch :application}/rvm-auto.sh . bundle exec whenever --update-crontab #{fetch :user} --set \'environment=#{fetch :stage}¤t_path=#{release_path}\'; true"
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
after 'deploy:publishing', 'deploy:restart'
|
45
|
-
after 'deploy:restart', 'unicorn:duplicate'
|
46
|
-
#before "deploy:update_crontab", 'rvm1:hook'
|
47
|
-
#after "deploy:restart", "deploy:update_crontab"
|
@@ -1,30 +0,0 @@
|
|
1
|
-
require 'cloner'
|
2
|
-
|
3
|
-
class Dl < Cloner::Base
|
4
|
-
no_commands do
|
5
|
-
def rails_path
|
6
|
-
File.expand_path("../../../config/environment", __FILE__)
|
7
|
-
end
|
8
|
-
def ssh_host
|
9
|
-
'<%= domain %>'
|
10
|
-
end
|
11
|
-
def ssh_user
|
12
|
-
'<%= app_name.downcase %>'
|
13
|
-
end
|
14
|
-
def remote_dump_path
|
15
|
-
'<%= tmp_path %>'
|
16
|
-
end
|
17
|
-
def remote_app_path
|
18
|
-
'<%= deploy_to %>/current'
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
desc "download", "clone files and DB from production"
|
23
|
-
def download
|
24
|
-
load_env
|
25
|
-
clone_db
|
26
|
-
rsync_public("ckeditor_assets")
|
27
|
-
rsync_public("system")
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
@@ -1,15 +0,0 @@
|
|
1
|
-
class EnjoyCreateContactMessages < ActiveRecord::Migration
|
2
|
-
def change
|
3
|
-
create_table :contact_messages do |t|
|
4
|
-
t.string :name
|
5
|
-
t.string :email
|
6
|
-
t.string :phone
|
7
|
-
t.text :content
|
8
|
-
t.timestamps
|
9
|
-
end
|
10
|
-
|
11
|
-
add_index :contact_messages, :created_at
|
12
|
-
add_index :contact_messages, :updated_at
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
@@ -1,26 +0,0 @@
|
|
1
|
-
class EnjoyCreateNews < ActiveRecord::Migration
|
2
|
-
def change
|
3
|
-
create_table :news do |t|
|
4
|
-
t.boolean :enabled, default: true, null: false
|
5
|
-
t.timestamp :time, null: false
|
6
|
-
|
7
|
-
if Enjoy.config.localize
|
8
|
-
t.column :name_translations, 'hstore', default: {}
|
9
|
-
t.column :excerpt_translations, 'hstore', default: {}
|
10
|
-
t.column :content_translations, 'hstore', default: {}
|
11
|
-
else
|
12
|
-
t.string :name, null: false
|
13
|
-
t.text :excerpt
|
14
|
-
t.text :content
|
15
|
-
end
|
16
|
-
|
17
|
-
t.string :slug, null: false
|
18
|
-
t.attachment :image
|
19
|
-
t.timestamps
|
20
|
-
end
|
21
|
-
|
22
|
-
add_index :news, :slug, unique: true
|
23
|
-
add_index :news, [:enabled, :time]
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
@@ -1,45 +0,0 @@
|
|
1
|
-
class EnjoyCreatePages < ActiveRecord::Migration
|
2
|
-
def change
|
3
|
-
create_table :menus do |t|
|
4
|
-
|
5
|
-
if Enjoy.config.localize
|
6
|
-
t.column :name_translations, 'hstore'
|
7
|
-
else
|
8
|
-
t.string :name, null: false
|
9
|
-
end
|
10
|
-
t.string :slug, null: false
|
11
|
-
t.timestamps
|
12
|
-
end
|
13
|
-
add_index :menus, :slug, unique: true
|
14
|
-
|
15
|
-
create_table :pages do |t|
|
16
|
-
t.boolean :enabled, default: true, null: false
|
17
|
-
t.integer :parent_id
|
18
|
-
t.integer :lft
|
19
|
-
t.integer :rgt
|
20
|
-
t.integer :depth
|
21
|
-
|
22
|
-
if Enjoy.config.localize
|
23
|
-
t.column :name_translations, 'hstore', default: {}
|
24
|
-
t.column :content_translations, 'hstore', default: {}
|
25
|
-
else
|
26
|
-
t.string :name, null: false
|
27
|
-
t.text :content
|
28
|
-
end
|
29
|
-
|
30
|
-
t.string :slug, null: false
|
31
|
-
t.string :regexp
|
32
|
-
t.string :redirect
|
33
|
-
t.string :fullpath, null: false
|
34
|
-
t.timestamps
|
35
|
-
end
|
36
|
-
add_index :pages, :slug, unique: true
|
37
|
-
add_index :pages, [:enabled, :lft]
|
38
|
-
|
39
|
-
create_join_table :menus, :pages
|
40
|
-
|
41
|
-
add_foreign_key(:menus_pages, :menus, dependent: :delete)
|
42
|
-
add_foreign_key(:menus_pages, :pages, dependent: :delete)
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
@@ -1,14 +0,0 @@
|
|
1
|
-
class EnjoyCreateSeos < ActiveRecord::Migration
|
2
|
-
def change
|
3
|
-
create_table :seos do |t|
|
4
|
-
t.boolean :enabled, default: true, null: false
|
5
|
-
t.integer :seoable_id
|
6
|
-
t.string :seoable_type
|
7
|
-
Enjoy::Migration.seo_fields(t)
|
8
|
-
t.timestamps
|
9
|
-
end
|
10
|
-
|
11
|
-
add_index :seos, [:seoable_id, :seoable_type], unique: true
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
@@ -1,66 +0,0 @@
|
|
1
|
-
rails_env = ENV['RAILS_ENV'] || 'production'
|
2
|
-
|
3
|
-
deploy_to = '<%= deploy_to %>'
|
4
|
-
rails_root = "#{deploy_to}/current"
|
5
|
-
|
6
|
-
tmp_dir = "#{deploy_to}/shared/tmp"
|
7
|
-
pid_dir = "#{tmp_dir}/pids"
|
8
|
-
if File.directory?(tmp_dir) && !File.directory?(pid_dir)
|
9
|
-
puts "creating pid dir #{pid_dir}"
|
10
|
-
Dir.mkdir(pid_dir)
|
11
|
-
end
|
12
|
-
pid_file = "#{pid_dir}/unicorn.pid"
|
13
|
-
|
14
|
-
log_file = "#{deploy_to}/shared/log/unicorn.log"
|
15
|
-
err_log_file = "#{deploy_to}/shared/log/unicorn.error.log"
|
16
|
-
|
17
|
-
old_pid_file = pid_file + '.oldbin'
|
18
|
-
|
19
|
-
worker_processes 1
|
20
|
-
working_directory rails_root
|
21
|
-
|
22
|
-
timeout 120
|
23
|
-
|
24
|
-
# Specify path to socket unicorn listens to,
|
25
|
-
# we will use this in our nginx.conf later
|
26
|
-
|
27
|
-
listen "127.0.0.1:<%= port %>"
|
28
|
-
|
29
|
-
pid pid_file
|
30
|
-
|
31
|
-
# Set log file paths
|
32
|
-
stderr_path err_log_file
|
33
|
-
stdout_path log_file
|
34
|
-
|
35
|
-
# http://tech.tulentsev.com/2012/03/deploying-with-sinatra-capistrano-unicorn/
|
36
|
-
# NOTE: http://unicorn.bogomips.org/SIGNALS.html
|
37
|
-
preload_app true
|
38
|
-
|
39
|
-
# make sure that Bundler finds the Gemfile
|
40
|
-
before_exec do |server|
|
41
|
-
ENV['BUNDLE_GEMFILE'] = File.join( rails_root, 'Gemfile' )
|
42
|
-
end
|
43
|
-
|
44
|
-
before_fork do |server, worker|
|
45
|
-
# при использовании preload_app = true здесь должно быть закрытие всех открытых сокетов
|
46
|
-
|
47
|
-
# Mongoid сам заботится о переконнекте
|
48
|
-
# http://two.mongoid.org/docs/upgrading.html
|
49
|
-
|
50
|
-
# http://stackoverflow.com/a/9498372/2041969
|
51
|
-
# убиваем параллельный старый-процесс просле старта нового
|
52
|
-
if File.exists?( old_pid_file )
|
53
|
-
begin
|
54
|
-
Process.kill( "QUIT", File.read( old_pid_file ).to_i )
|
55
|
-
rescue Errno::ENOENT, Errno::ESRCH
|
56
|
-
puts "Old master alerady dead"
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
after_fork do |server, worker|
|
62
|
-
# pid-ы дочерних процессов
|
63
|
-
child_pid_file = server.config[:pid].sub(".pid", ".#{worker.nr}.pid")
|
64
|
-
system("echo #{Process.pid} > #{child_pid_file}")
|
65
|
-
end
|
66
|
-
|