radiant-fabulator-extension 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +27 -0
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/app/models/fabulator_page.rb +0 -10
- data/fabulator_extension.rb +8 -5
- data/lib/fabulator/radiant/actions.rb +3 -4
- metadata +8 -9
- data/app/models/fabulator_context.rb +0 -36
- data/lib/fabulator/radiant/actions/require_auth.rb +0 -9
data/History.txt
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
=== 0.0.4 2010-09-07
|
2
|
+
|
3
|
+
* 1 major enhancement:
|
4
|
+
* New Fabulator pages should save without requiring a blank page first
|
5
|
+
|
6
|
+
* 1 minor enhancement:
|
7
|
+
* Bumped required version of Fabulator to 0.0.7
|
8
|
+
|
9
|
+
=== 0.0.3 2010-08-17
|
10
|
+
|
11
|
+
* 2 minor enhancement:
|
12
|
+
* Fix truth logic for choose:when radiant tag
|
13
|
+
* Add 'as' attribute for for-each radiant tag - aliases the current
|
14
|
+
topic with the variable named by the 'as' attribute
|
15
|
+
* The form radiant tag now correctly communicates to the template engine
|
16
|
+
the path to the base node for adding default values to a form
|
17
|
+
|
18
|
+
=== 0.0.2 2010-08-10
|
19
|
+
|
20
|
+
* 1 major enhancement:
|
21
|
+
* Cleanup a few things that came up in a clean install
|
22
|
+
|
23
|
+
=== 0.0.1 2010-02-23
|
24
|
+
|
25
|
+
* 1 major enhancement:
|
26
|
+
* Initial release
|
27
|
+
|
data/Rakefile
CHANGED
@@ -7,7 +7,7 @@ begin
|
|
7
7
|
gem.email = "jgsmith@tamu.edu"
|
8
8
|
gem.homepage = "http://github.com/jgsmith/radiant-fabulator"
|
9
9
|
gem.authors = ["James Smith"]
|
10
|
-
gem.add_dependency('fabulator', '>= 0.0.
|
10
|
+
gem.add_dependency('fabulator', '>= 0.0.7')
|
11
11
|
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
12
12
|
end
|
13
13
|
rescue LoadError
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.4
|
@@ -21,19 +21,11 @@ class FabulatorPage < Page
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def find_by_url(url, live = true, clean = false)
|
24
|
-
#Rails.logger.info("find_by_url(#{url}, #{live}, #{clean})")
|
25
|
-
#Rails.logger.info("invoking super")
|
26
24
|
p = super
|
27
|
-
#Rails.logger.info("returning from super")
|
28
|
-
#Rails.logger.info("Found #{p}")
|
29
25
|
return p if !p.nil? && !p.is_a?(FileNotFoundPage)
|
30
|
-
#Rails.logger.info("Seeing if we have a resource")
|
31
26
|
|
32
27
|
url = clean_url(url) if clean
|
33
|
-
#Rails.logger.info("Our url: #{self.url}")
|
34
|
-
#Rails.logger.info("Target url: #{url}")
|
35
28
|
if url =~ %r{^#{ self.url }([-_0-9a-zA-Z]+)/?$}
|
36
|
-
#Rails.logger.info("resource: #{$1}")
|
37
29
|
self.resource_ln = $1
|
38
30
|
return self
|
39
31
|
else
|
@@ -42,12 +34,10 @@ class FabulatorPage < Page
|
|
42
34
|
end
|
43
35
|
|
44
36
|
def url
|
45
|
-
#Rails.logger.info("Getting url")
|
46
37
|
u = super
|
47
38
|
if !self.resource_ln.nil?
|
48
39
|
u = u + '/' + self.resource_ln
|
49
40
|
end
|
50
|
-
#Rails.logger.info("Returning '#{u}' as url")
|
51
41
|
u
|
52
42
|
end
|
53
43
|
|
data/fabulator_extension.rb
CHANGED
@@ -28,9 +28,11 @@ class FabulatorExtension < Radiant::Extension
|
|
28
28
|
end
|
29
29
|
|
30
30
|
PagePart.class_eval do
|
31
|
-
|
32
|
-
|
33
|
-
|
31
|
+
after_save :compile_xml
|
32
|
+
|
33
|
+
# validates_each :content do |record, attr, value|
|
34
|
+
# record.compile_xml
|
35
|
+
# end
|
34
36
|
|
35
37
|
def compile_xml
|
36
38
|
if self.page.class_name == 'FabulatorPage' &&
|
@@ -40,12 +42,13 @@ class FabulatorExtension < Radiant::Extension
|
|
40
42
|
self.page.compiled_xml = nil
|
41
43
|
else
|
42
44
|
# compile
|
43
|
-
#isa = Fabulator::
|
45
|
+
#isa = Fabulator::TagLib.get_local_attr(doc.root, Fabulator::FAB_NS, 'is-a')
|
44
46
|
isa = nil
|
45
47
|
sm = nil
|
46
48
|
if isa.nil?
|
47
49
|
begin
|
48
|
-
sm = Fabulator::Core::StateMachine.new
|
50
|
+
sm = Fabulator::Core::StateMachine.new
|
51
|
+
sm.compile_xml(self.content)
|
49
52
|
rescue => e
|
50
53
|
self.errors.add(:content, "Compiling the XML application resulted in the following error: #{e}")
|
51
54
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'fabulator/
|
1
|
+
require 'fabulator/tag_lib'
|
2
2
|
#require 'fabulator/radiant/actions/require_auth'
|
3
3
|
|
4
4
|
module Fabulator
|
@@ -9,10 +9,9 @@ module Fabulator
|
|
9
9
|
|
10
10
|
module Radiant
|
11
11
|
module Actions
|
12
|
-
class Lib
|
13
|
-
include Fabulator::ActionLib
|
12
|
+
class Lib < Fabulator::TagLib
|
14
13
|
|
15
|
-
|
14
|
+
namespace RADIANT_NS
|
16
15
|
|
17
16
|
#action 'require-auth', Fabulator::Radiant::Actions::RequireAuth
|
18
17
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: radiant-fabulator-extension
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 23
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 4
|
10
|
+
version: 0.0.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- James Smith
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-
|
18
|
+
date: 2010-09-07 00:00:00 +00:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -26,12 +26,12 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
29
|
+
hash: 17
|
30
30
|
segments:
|
31
31
|
- 0
|
32
32
|
- 0
|
33
|
-
-
|
34
|
-
version: 0.0.
|
33
|
+
- 7
|
34
|
+
version: 0.0.7
|
35
35
|
type: :runtime
|
36
36
|
version_requirements: *id001
|
37
37
|
description: Creates a Fabulator page type allowing applications to be built using the fabulator engine.
|
@@ -44,17 +44,16 @@ extra_rdoc_files:
|
|
44
44
|
- README.rdoc
|
45
45
|
files:
|
46
46
|
- COPYING.markdown
|
47
|
+
- History.txt
|
47
48
|
- README.rdoc
|
48
49
|
- Rakefile
|
49
50
|
- VERSION
|
50
|
-
- app/models/fabulator_context.rb
|
51
51
|
- app/models/fabulator_page.rb
|
52
52
|
- db/migrate/001_add_fabulator_fields.rb
|
53
53
|
- db/migrate/002_create_fabulator_contexts_table.rb
|
54
54
|
- fabulator_extension.rb
|
55
55
|
- lib/fabulator/radiant.rb
|
56
56
|
- lib/fabulator/radiant/actions.rb
|
57
|
-
- lib/fabulator/radiant/actions/require_auth.rb
|
58
57
|
- lib/radiant-fabulator-extension.rb
|
59
58
|
has_rdoc: true
|
60
59
|
homepage: http://github.com/jgsmith/radiant-fabulator
|
@@ -1,36 +0,0 @@
|
|
1
|
-
class FabulatorContext < ActiveRecord::Base
|
2
|
-
#serialize :context
|
3
|
-
belongs_to :page
|
4
|
-
belongs_to :user
|
5
|
-
|
6
|
-
def self.find_by_page(p)
|
7
|
-
if p.request.session[:user_id].blank?
|
8
|
-
c = self.first(:conditions => [
|
9
|
-
'page_id = ? AND session = ? AND (user_id IS NULL OR user_id=0)',
|
10
|
-
p.id, p.request.session[:session_id]
|
11
|
-
] )
|
12
|
-
else
|
13
|
-
c = self.first(:conditions => [
|
14
|
-
'page_id = ? AND session = ? AND user_id = ?',
|
15
|
-
p.id, p.request.session[:session_id], p.request.session[:user_id]
|
16
|
-
] )
|
17
|
-
end
|
18
|
-
if c.nil? && !p.request.session[:user_id].blank?
|
19
|
-
c = self.first(:conditions => [
|
20
|
-
'page_id = ? AND session = ?',
|
21
|
-
p.id, p.request.session[:session_id]
|
22
|
-
] )
|
23
|
-
if !c.nil? && c.user.nil?
|
24
|
-
c.update_attribute(:user_id, p.request.session[:user_id])
|
25
|
-
end
|
26
|
-
end
|
27
|
-
p.fabulator_context = c.context unless c.nil?
|
28
|
-
return c unless c.nil?
|
29
|
-
self.new(
|
30
|
-
:context => YAML::dump(p.fabulator_context),
|
31
|
-
:page_id => p.id,
|
32
|
-
:user_id => p.request.session[:user_id],
|
33
|
-
:session => p.request.session[:session_id]
|
34
|
-
)
|
35
|
-
end
|
36
|
-
end
|