push_type_core 0.7.0 → 0.8.0.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/controllers/concerns/push_type/application_controller_methods.rb +1 -2
- data/app/controllers/front_end_controller.rb +16 -0
- data/app/fields/push_type/wysiwyg_field.rb +19 -0
- data/app/models/concerns/push_type/unexposable.rb +1 -2
- data/db/migrate/20160201150228_drop_legacy_push_type_taxonomies.rb +13 -0
- data/lib/push_type/config.rb +0 -4
- data/lib/push_type/core.rb +0 -4
- data/lib/push_type/rails/routes.rb +1 -7
- data/lib/push_type/testing/common_rake.rb +0 -2
- data/lib/push_type/testing/factories.rb +0 -5
- data/lib/push_type/testing/setup.rb +1 -1
- data/lib/push_type/version.rb +1 -1
- data/test/controllers/{nodes_front_end_controller_test.rb → front_end_controller_test.rb} +1 -1
- data/test/dummy/config/initializers/push_type.rb +1 -1
- data/test/dummy/config/secrets.yml +2 -2
- data/test/dummy/db/migrate/20160206155139_drop_legacy_push_type_taxonomies.push_type.rb +14 -0
- data/test/dummy/db/schema.rb +1 -21
- data/test/dummy/log/test.log +8013 -8654
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0ANSDcZJu9gPyqtYPIW729qm1kriQ29Vn9LU8T2SGQU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_d65qW7wxRtKVSYpmfSenECz5QUWVI9pppUgV7TA1Rk.cache +0 -0
- data/test/dummy/tmp/generators/app/presenters/page_presenter.rb +12 -0
- data/test/fields/push_type/wysiwyg_field_test.rb +23 -0
- data/test/lib/push_type/core_test.rb +0 -27
- metadata +38 -71
- data/app/controllers/nodes_front_end_controller.rb +0 -21
- data/app/controllers/taxonomies_front_end_controller.rb +0 -25
- data/app/models/push_type/taxonomy.rb +0 -44
- data/db/migrate/20150310115933_create_push_type_taxonomies.rb +0 -18
- data/db/migrate/20150310123230_create_push_type_taxonomy_hierarchies.rb +0 -16
- data/lib/generators/push_type/taxonomy/USAGE +0 -8
- data/lib/generators/push_type/taxonomy/taxonomy_generator.rb +0 -13
- data/lib/generators/push_type/taxonomy/templates/taxonomy.html.erb +0 -3
- data/lib/generators/push_type/taxonomy/templates/taxonomy.rb +0 -7
- data/test/controllers/taxonomies_front_end_controller_test.rb +0 -58
- data/test/dummy/app/models/category.rb +0 -7
- data/test/dummy/app/views/taxonomies/category.html.erb +0 -3
- data/test/dummy/db/migrate/20160122151528_create_push_type_taxonomies.push_type.rb +0 -19
- data/test/dummy/db/migrate/20160122151529_create_push_type_taxonomy_hierarchies.push_type.rb +0 -17
- data/test/dummy/tmp/generators/config/initializers/push_type.rb +0 -50
- data/test/dummy/tmp/generators/config/routes.rb +0 -59
- data/test/lib/generators/push_type/taxonomy_generator_test.rb +0 -17
- data/test/models/push_type/taxonomy_test.rb +0 -37
- /data/test/dummy/db/migrate/{20160122151524_create_push_type_users.push_type.rb → 20160206155134_create_push_type_users.push_type.rb} +0 -0
- /data/test/dummy/db/migrate/{20160122151525_create_push_type_nodes.push_type.rb → 20160206155135_create_push_type_nodes.push_type.rb} +0 -0
- /data/test/dummy/db/migrate/{20160122151526_create_push_type_node_hierarchies.push_type.rb → 20160206155136_create_push_type_node_hierarchies.push_type.rb} +0 -0
- /data/test/dummy/db/migrate/{20160122151527_create_push_type_assets.push_type.rb → 20160206155137_create_push_type_assets.push_type.rb} +0 -0
- /data/test/dummy/db/migrate/{20160122151530_add_field_store_default_values.push_type.rb → 20160206155138_add_field_store_default_values.push_type.rb} +0 -0
- /data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/{A0UfNVcNn48aSCOiAvcHrJ1BASyXJCELidVIQ6drqQM.cache → BXXMCMRu7JahLHdf-HLwTSs6u6Pfn4DhDNK5wg5hgy0.cache} +0 -0
- /data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/{RLSLZQ8zubBDFwRzJo2WPXEPjX3gpp-T1h5FK-UnAYo.cache → TUwu9oRcnc80mNVFDhhX5AqieKa5hmp5Ro9HIoQjdA4.cache} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 736fd951736c5f385dab1cc64436cc1ee814803d
|
4
|
+
data.tar.gz: d1f4e9137d3be16efb3ab35ace1e2ded80a3e014
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 38b1f4ad6d34d5dbe7aec1ea6803bfa5e82cc6eecadc637a35f1a0d9bba24b40098415a5f4b6e489aa88b1d97bc2779da7aa1ef2601d2748eb72b55580c9e72b
|
7
|
+
data.tar.gz: dc61b1b66d2166be460287c81c9ed4e80c9b21441b98d848acc86330fc7417e256b7051f26fff3c3814a19e331eb98a9e889dde7df97d0947e144b1e6c07be0c
|
@@ -3,8 +3,7 @@ module PushType
|
|
3
3
|
extend ActiveSupport::Concern
|
4
4
|
|
5
5
|
FILTERS = [
|
6
|
-
:before_node_load_filters, :before_node_action_filters, :after_node_action_filters
|
7
|
-
:before_taxonomy_load_filters, :before_taxonomy_action_filters, :after_taxonomy_action_filters
|
6
|
+
:before_node_load_filters, :before_node_action_filters, :after_node_action_filters
|
8
7
|
]
|
9
8
|
|
10
9
|
included do
|
@@ -2,6 +2,13 @@ class FrontEndController < ApplicationController
|
|
2
2
|
|
3
3
|
include PushType::Filterable
|
4
4
|
|
5
|
+
before_action :load_node, only: :show
|
6
|
+
hooks_for :node, only: :show
|
7
|
+
|
8
|
+
def show
|
9
|
+
render *@node.template_args
|
10
|
+
end
|
11
|
+
|
5
12
|
private
|
6
13
|
|
7
14
|
def root_path?
|
@@ -16,4 +23,13 @@ class FrontEndController < ApplicationController
|
|
16
23
|
end
|
17
24
|
end
|
18
25
|
|
26
|
+
def load_node
|
27
|
+
@node = PushType::Node.exposed.published.find_by_path permalink_path
|
28
|
+
if @node
|
29
|
+
instance_variable_set "@#{ @node.type.underscore }", @node.present!(view_context)
|
30
|
+
else
|
31
|
+
raise_404
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
19
35
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module PushType
|
2
|
+
class WysiwygField < PushType::FieldType
|
3
|
+
|
4
|
+
options template: 'wysiwyg', toolbar: 'full'
|
5
|
+
|
6
|
+
def form_helper
|
7
|
+
:text_area
|
8
|
+
end
|
9
|
+
|
10
|
+
def toolbar
|
11
|
+
@opts[:toolbar]
|
12
|
+
end
|
13
|
+
|
14
|
+
def html_options
|
15
|
+
super.merge(:'v-froala' => true, :'froala-toolbar' => toolbar)
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class DropLegacyPushTypeTaxonomies < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
if ActiveRecord::Base.connection.table_exists? :push_type_taxonomies
|
4
|
+
drop_table :push_type_taxonomies
|
5
|
+
end
|
6
|
+
if ActiveRecord::Base.connection.table_exists? :push_type_taxonomy_hierarchies
|
7
|
+
drop_table :push_type_taxonomy_hierarchies
|
8
|
+
end
|
9
|
+
if ActiveRecord::Base.connection.column_exists? :push_type_assets, :tags
|
10
|
+
remove_column :push_type_assets, :tags
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/push_type/config.rb
CHANGED
@@ -18,10 +18,6 @@ module PushType
|
|
18
18
|
mattr_accessor :unexposed_nodes
|
19
19
|
@@unexposed_nodes = []
|
20
20
|
|
21
|
-
# Taxonomy types that are not exposed to the front end
|
22
|
-
mattr_accessor :unexposed_taxonomies
|
23
|
-
@@unexposed_taxonomies = []
|
24
|
-
|
25
21
|
# Hash of geometry strings used for resizing images
|
26
22
|
mattr_accessor :media_styles
|
27
23
|
@@media_styles = {
|
data/lib/push_type/core.rb
CHANGED
@@ -27,10 +27,6 @@ module PushType
|
|
27
27
|
subclasses_from_list(:node, config.unexposed_nodes)
|
28
28
|
end
|
29
29
|
|
30
|
-
def unexposed_taxonomies
|
31
|
-
subclasses_from_list(:taxonomy, config.unexposed_taxonomies)
|
32
|
-
end
|
33
|
-
|
34
30
|
def subclasses_from_list(scope, types = nil)
|
35
31
|
return [] unless types
|
36
32
|
descendants = "push_type/#{ scope }".camelcase.constantize.descendants.map { |c| c.name.underscore }
|
@@ -6,8 +6,7 @@ module ActionDispatch::Routing
|
|
6
6
|
path: '/push_type',
|
7
7
|
home: PushType.config.home_slug,
|
8
8
|
actions: {
|
9
|
-
node:
|
10
|
-
taxonomy: 'taxonomies_front_end#show',
|
9
|
+
node: 'front_end#show'
|
11
10
|
}
|
12
11
|
}.deep_merge!(options)
|
13
12
|
|
@@ -21,11 +20,6 @@ module ActionDispatch::Routing
|
|
21
20
|
asset.media params[:style]
|
22
21
|
}, as: 'media'
|
23
22
|
|
24
|
-
# Taxonomies
|
25
|
-
get ":taxonomy/*permalink" => opts[:actions][:taxonomy], as: 'taxonomy', constraints: ->(params, req) {
|
26
|
-
PushType::Taxonomy.descendants(exposed: true).map(&:base_slug).include? params[:taxonomy]
|
27
|
-
}
|
28
|
-
|
29
23
|
# A catch-all root for the nodes
|
30
24
|
get '*permalink' => opts[:actions][:node], as: 'node'
|
31
25
|
root to: opts[:actions][:node], permalink: opts[:home]
|
@@ -1,7 +1,6 @@
|
|
1
1
|
require 'generators/push_type/dummy/dummy_generator'
|
2
2
|
require 'generators/push_type/install/install_generator'
|
3
3
|
require 'generators/push_type/node/node_generator'
|
4
|
-
require 'generators/push_type/taxonomy/taxonomy_generator'
|
5
4
|
require 'generators/push_type/structure/structure_generator'
|
6
5
|
|
7
6
|
namespace :common do
|
@@ -18,7 +17,6 @@ namespace :common do
|
|
18
17
|
system 'bundle exec rake db:drop db:create'
|
19
18
|
PushType::InstallGenerator.start ['--quiet']
|
20
19
|
PushType::NodeGenerator.start ['page', '--quiet']
|
21
|
-
PushType::TaxonomyGenerator.start ['category', '--quiet']
|
22
20
|
PushType::StructureGenerator.start ['location', '--quiet']
|
23
21
|
end
|
24
22
|
end
|
@@ -42,10 +42,5 @@ FactoryGirl.define do
|
|
42
42
|
file { Rack::Test::UploadedFile.new(PushType::Core::Engine.root.join('test', 'files/document.pdf')) }
|
43
43
|
end
|
44
44
|
end
|
45
|
-
|
46
|
-
factory :taxonomy, class: 'PushType::Taxonomy' do
|
47
|
-
title { generate :title }
|
48
|
-
slug { generate :slug }
|
49
|
-
end
|
50
45
|
|
51
46
|
end
|
data/lib/push_type/version.rb
CHANGED
@@ -45,6 +45,6 @@ PushType.setup do |config|
|
|
45
45
|
# secret_access_key: ENV['SECRET_ACCESS_KEY_ID']
|
46
46
|
# }
|
47
47
|
|
48
|
-
# config.dragonfly_secret = '
|
48
|
+
# config.dragonfly_secret = 'cddb3d46c0d8274b6211613824e13c3240acf6b873554e91622c5c3dc9b71479'
|
49
49
|
|
50
50
|
end
|
@@ -11,10 +11,10 @@
|
|
11
11
|
# if you're sharing your code publicly.
|
12
12
|
|
13
13
|
development:
|
14
|
-
secret_key_base:
|
14
|
+
secret_key_base: d149cd01c6eee217b8287d12912221801883ca082c1ba1c3511b1a5081338da74422e2b029ef2019336ffc4786be44e6b1cf6b6c7452d8ccdd62a1a5416682e6
|
15
15
|
|
16
16
|
test:
|
17
|
-
secret_key_base:
|
17
|
+
secret_key_base: 599444d947e59bb318b4083a4b8dcdfa6a214b3b677e99dd4354558de92c3d0ddbe8870375b729b874a82d1bc1dc7e80cb17acbc0db4e62ffe542f78ed94fb90
|
18
18
|
|
19
19
|
# Do not keep production secrets in the repository,
|
20
20
|
# instead read values from the environment.
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# This migration comes from push_type (originally 20160201150228)
|
2
|
+
class DropLegacyPushTypeTaxonomies < ActiveRecord::Migration
|
3
|
+
def up
|
4
|
+
if ActiveRecord::Base.connection.table_exists? :push_type_taxonomies
|
5
|
+
drop_table :push_type_taxonomies
|
6
|
+
end
|
7
|
+
if ActiveRecord::Base.connection.table_exists? :push_type_taxonomy_hierarchies
|
8
|
+
drop_table :push_type_taxonomy_hierarchies
|
9
|
+
end
|
10
|
+
if ActiveRecord::Base.connection.column_exists? :push_type_assets, :tags
|
11
|
+
remove_column :push_type_assets, :tags
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/test/dummy/db/schema.rb
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
14
|
+
ActiveRecord::Schema.define(version: 20160206155139) do
|
15
15
|
|
16
16
|
# These are extensions that must be enabled in order to support this database
|
17
17
|
enable_extension "plpgsql"
|
@@ -28,7 +28,6 @@ ActiveRecord::Schema.define(version: 20160122151530) do
|
|
28
28
|
t.datetime "created_at", null: false
|
29
29
|
t.datetime "updated_at", null: false
|
30
30
|
t.datetime "deleted_at"
|
31
|
-
t.string "tags", array: true
|
32
31
|
end
|
33
32
|
|
34
33
|
create_table "push_type_node_hierarchies", id: false, force: :cascade do |t|
|
@@ -57,25 +56,6 @@ ActiveRecord::Schema.define(version: 20160122151530) do
|
|
57
56
|
t.datetime "deleted_at"
|
58
57
|
end
|
59
58
|
|
60
|
-
create_table "push_type_taxonomies", id: :uuid, default: "uuid_generate_v4()", force: :cascade do |t|
|
61
|
-
t.string "type"
|
62
|
-
t.string "title"
|
63
|
-
t.string "slug"
|
64
|
-
t.uuid "parent_id"
|
65
|
-
t.integer "sort_order"
|
66
|
-
t.datetime "created_at", null: false
|
67
|
-
t.datetime "updated_at", null: false
|
68
|
-
end
|
69
|
-
|
70
|
-
create_table "push_type_taxonomy_hierarchies", id: false, force: :cascade do |t|
|
71
|
-
t.uuid "ancestor_id", null: false
|
72
|
-
t.uuid "descendant_id", null: false
|
73
|
-
t.integer "generations", null: false
|
74
|
-
end
|
75
|
-
|
76
|
-
add_index "push_type_taxonomy_hierarchies", ["ancestor_id", "descendant_id", "generations"], name: "taxonomy_anc_desc_idx", unique: true, using: :btree
|
77
|
-
add_index "push_type_taxonomy_hierarchies", ["descendant_id"], name: "taxonomy_desc_idx", using: :btree
|
78
|
-
|
79
59
|
create_table "push_type_users", id: :uuid, default: "uuid_generate_v4()", force: :cascade do |t|
|
80
60
|
t.string "name"
|
81
61
|
t.string "email"
|