scribble_cms 0.6 → 0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 417706a2e5c1f05f6907232662bea318abcf0981
4
- data.tar.gz: c18425befd5a6f054e79f47f6945128ade015d34
3
+ metadata.gz: 6eea813b6d779270fd95f07d7667801fdae47b3f
4
+ data.tar.gz: 1852321d6672d2948dd4096b81110ac07106bcaf
5
5
  SHA512:
6
- metadata.gz: db9640381f3dc7cc5d578502e5c22ca0d62d17b8174aa948a003025732b531767c1c80de84343428c93c0fdae5fe04f5157fb8caba8e6bf4075728ad8ba6c28c
7
- data.tar.gz: 18a3a823e58b39d3d80e22bef44a023da2f3873ed9bf2374c9fe7a32bc8d28284467110b237ebc178f8355829295115aad658cf6a79eac0dd32eb98919948c12
6
+ metadata.gz: a5f4d09b451abc6bfee20339e338afff0ee5482cdd38adc57c825c90b41646692b8e4cb25d385fe50ddfe77dacc9148050d90cdd12c3b2e97485e82ccbca177b
7
+ data.tar.gz: 64c93fc8640a74504a7f73ed3d30ea07f2cf944a8b78a31b255f660a18cedbb0912ce2d3de2862def9eefa42cc906c07469b7419b33c22c08637ef1bb269e9f1
@@ -1,5 +1,5 @@
1
1
  module ScribblerContentHelper
2
-
2
+
3
3
  def scribbler_container(container_name, options = {}, &block)
4
4
  container_name = "#{container_name}-#{options[:element].page.name}-#{options[:element].id}" if options[:element]
5
5
  q = {:name => container_name, :scaleable => (options[:scaleable].nil? ? false : options[:scaleable]), :element_id => (options[:element] ? options[:element].id : nil)}
@@ -7,28 +7,28 @@ module ScribblerContentHelper
7
7
  container.update_attributes(:scaleable => options[:scaleable]) if options[:scaleable] && container.scaleable != options[:scaleable]
8
8
  yield(container)
9
9
  end
10
-
10
+
11
11
  def scribbler_group(container, group, &block)
12
12
  scribbler_container(container) do |c|
13
13
  c.scribbler_group(group) do |g|
14
14
  yield(g)
15
- end
16
- end
15
+ end
16
+ end
17
17
  end
18
-
18
+
19
19
  def scribbler_element(container, group, type, name, options = {}, &block)
20
20
  if block_given?
21
21
  options[:default] = capture(&block).html_safe.strip.force_encoding("UTF-8")
22
- end
23
-
22
+ end
23
+
24
24
  scribbler_group(container.to_s, group.to_s) do |g|
25
25
  v = g.send(type.to_s, name.to_s, options)
26
26
  if v.blank? && options[:default]
27
27
  options[:default]
28
- else
28
+ else
29
29
  return v
30
- end
30
+ end
31
31
  end
32
- end
33
-
34
- end
32
+ end
33
+
34
+ end
@@ -1,10 +1,10 @@
1
1
  module Scribbler
2
2
  class Engine < Rails::Engine
3
-
3
+
4
4
  engine_name 'scribbler'
5
-
5
+
6
6
  initializer "dragonfly.scribbler" do
7
-
7
+
8
8
  # Pictures
9
9
  Dragonfly.app(:scribbler).configure do
10
10
  plugin :imagemagick
@@ -12,9 +12,8 @@ module Scribbler
12
12
  url_format "/s/static/pictures/:job/:name.:format"
13
13
  secret Digest::SHA1.hexdigest(Rails.root.to_s)
14
14
  end
15
-
16
-
17
- end
18
-
15
+ end
16
+
19
17
  end
20
- end
18
+ end
19
+
@@ -0,0 +1,36 @@
1
+ class ScribblerContentCreator
2
+
3
+ include ::ScribblerContentHelper
4
+
5
+ attr_reader :scribbler_element_instance
6
+
7
+ def initialize(container_name, group_name, type, name)
8
+ scribbler_element(container_name, group_name, type, name)
9
+
10
+ # find what the element is, by searching throug the levels of scribbler
11
+ container = ScribblerContainer.find_by_name(container_name)
12
+ group = ScribblerGroup.find_by(name: group_name, container_id: container.id)
13
+ opts = { name: name, released: true, group_id: group.id }
14
+ element_type = case type.to_sym
15
+ when :link
16
+ ScribblerLink
17
+ when :row
18
+ opts.merge!(plain: true)
19
+ ScribblerText
20
+ when :text
21
+ opts.merge!(plain: false)
22
+ ScribblerText
23
+ when :image
24
+ ScribblerImage
25
+ when :var
26
+ ScribblerVar
27
+ end
28
+
29
+ @scribbler_element_instance = element_type.find_by(opts)
30
+ end
31
+
32
+ def update_instance!(data = {})
33
+ @scribbler_element_instance.update_attributes(data)
34
+ end
35
+
36
+ end
data/lib/scribble_cms.rb CHANGED
@@ -1,26 +1,27 @@
1
1
  require "scribble_cms/engine"
2
- require 'scribble_cms/scribbler_controller_plugin'
2
+ require 'scribble_cms/scribbler_controller_plugin'
3
3
  require 'scribble_cms/scribbler_element_setup'
4
+
4
5
  require 'dragonfly'
5
6
  require "smart_search"
6
7
 
7
8
  module ScribbleCms
8
9
  mattr_accessor :tiny_mce_css, :tiny_mce_js
9
-
10
+
10
11
  self.tiny_mce_css = "default_tinymce"
11
12
  self.tiny_mce_js = "Alchemy.Tinymce.initAll();"
12
- end
13
+ end
13
14
 
14
15
  ActionController::Base.send(:include, ScribbleCms::ScribblerControllerPlugin)
15
16
 
16
17
  String.class_eval do
17
-
18
+
18
19
  def replace_scribbler_vars(vars = {})
19
20
  r = self
20
21
  vars.each do |var_name, var_content|
21
22
  r = r.gsub("*#{var_name}*", var_content.to_s)
22
23
  end
23
- return r
24
- end
25
-
26
- end
24
+ return r
25
+ end
26
+
27
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scribble_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.6'
4
+ version: '0.7'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Eck
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-23 00:00:00.000000000 Z
11
+ date: 2016-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: friendly_extensions
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.2'
19
+ version: 0.2.4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.2'
26
+ version: 0.2.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: dragonfly
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.0.78
47
+ version: 0.0.79
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.0.78
54
+ version: 0.0.79
55
55
  description: Easy-to-use tool for placing user-editable content in your pages
56
56
  email:
57
57
  - florian.eck@el-digital.de
@@ -89,6 +89,7 @@ files:
89
89
  - db/migrate/20140313012637_create_scribblers.rb
90
90
  - lib/scribble_cms.rb
91
91
  - lib/scribble_cms/engine.rb
92
+ - lib/scribble_cms/scribbler_content_creator.rb
92
93
  - lib/scribble_cms/scribbler_controller_plugin.rb
93
94
  - lib/scribble_cms/scribbler_element_setup.rb
94
95
  homepage: http://www.el-digital.de
@@ -110,7 +111,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
111
  version: '0'
111
112
  requirements: []
112
113
  rubyforge_project:
113
- rubygems_version: 2.4.6
114
+ rubygems_version: 2.4.5.1
114
115
  signing_key:
115
116
  specification_version: 4
116
117
  summary: Easy-to-use tool for placing user-editable content in your pages