netzke-core 0.1.3 → 0.1.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/CHANGELOG +6 -0
- data/Manifest +2 -1
- data/generators/netzke_core/netzke_core_generator.rb +0 -4
- data/javascripts/core.js +5 -0
- data/lib/netzke-core.rb +13 -3
- data/lib/netzke/action_view_ext.rb +25 -0
- data/lib/netzke/base.rb +4 -3
- data/lib/netzke/controller_extensions.rb +18 -10
- data/lib/netzke/routing.rb +9 -0
- data/netzke-core.gemspec +3 -3
- metadata +5 -2
- data/generators/netzke_core/templates/netzke.html.erb +0 -10
data/CHANGELOG
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
v0.1.4
|
2
|
+
Helpers added to facilitate ExtJS/netzke.js inclusion
|
3
|
+
The route defined for netzke_controller
|
4
|
+
netzke.html.erb-layout is not needed anymore, so not produced by the generator
|
5
|
+
Now compliant with Rails' forgery protection
|
6
|
+
|
1
7
|
v0.1.3
|
2
8
|
Generators fixed
|
3
9
|
|
data/Manifest
CHANGED
@@ -2,7 +2,6 @@ CHANGELOG
|
|
2
2
|
generators/netzke_core/netzke_core_generator.rb
|
3
3
|
generators/netzke_core/templates/create_netzke_layouts.rb
|
4
4
|
generators/netzke_core/templates/create_netzke_preferences.rb
|
5
|
-
generators/netzke_core/templates/netzke.html.erb
|
6
5
|
generators/netzke_core/USAGE
|
7
6
|
init.rb
|
8
7
|
install.rb
|
@@ -10,10 +9,12 @@ javascripts/core.js
|
|
10
9
|
lib/app/controllers/netzke_controller.rb
|
11
10
|
lib/app/models/netzke_layout.rb
|
12
11
|
lib/app/models/netzke_preference.rb
|
12
|
+
lib/netzke/action_view_ext.rb
|
13
13
|
lib/netzke/base.rb
|
14
14
|
lib/netzke/controller_extensions.rb
|
15
15
|
lib/netzke/core_ext.rb
|
16
16
|
lib/netzke/js_class_builder.rb
|
17
|
+
lib/netzke/routing.rb
|
17
18
|
lib/netzke-core.rb
|
18
19
|
lib/vendor/facets/hash/recursive_merge.rb
|
19
20
|
LICENSE
|
@@ -2,10 +2,6 @@
|
|
2
2
|
class NetzkeCoreGenerator < Rails::Generator::Base
|
3
3
|
def manifest
|
4
4
|
record do |m|
|
5
|
-
# m.directory "public/javascripts/netzke"
|
6
|
-
# m.file 'netzke.js', "public/javascripts/netzke/netzke.js"
|
7
|
-
m.file 'netzke.html.erb', "app/views/layouts/netzke.html.erb"
|
8
|
-
|
9
5
|
# FIXME: how do we avoid getting the same migration timestamps?
|
10
6
|
# m.migration_template 'create_netzke_preferences.rb', "db/migrate", {:migration_file_name => "create_netzke_preferences"}
|
11
7
|
# m.migration_template 'create_netzke_layouts.rb', "db/migrate", {:migration_file_name => "create_netzke_layouts"}
|
data/javascripts/core.js
CHANGED
@@ -3,6 +3,11 @@ Ext.componentCache = {};
|
|
3
3
|
|
4
4
|
Ext.namespace('Ext.netzke');
|
5
5
|
|
6
|
+
// to comply with Rails' forgery protection
|
7
|
+
Ext.Ajax.extraParams = {
|
8
|
+
'authenticity_token': Ext.authenticityToken
|
9
|
+
};
|
10
|
+
|
6
11
|
// helper method to do multiple Ext.apply's
|
7
12
|
Ext.chainApply = function(objectArray){
|
8
13
|
var res = {};
|
data/lib/netzke-core.rb
CHANGED
@@ -1,12 +1,15 @@
|
|
1
1
|
# NetzkeCore
|
2
2
|
require 'netzke/js_class_builder'
|
3
3
|
require 'netzke/base'
|
4
|
-
require 'netzke/
|
4
|
+
require 'netzke/action_view_ext'
|
5
5
|
require 'netzke/controller_extensions'
|
6
|
+
require 'netzke/core_ext'
|
7
|
+
require 'netzke/routing'
|
6
8
|
|
7
9
|
# Vendor
|
8
10
|
require 'vendor/facets/hash/recursive_merge'
|
9
11
|
|
12
|
+
# Load models and controllers from lib/app
|
10
13
|
%w{ models controllers }.each do |dir|
|
11
14
|
path = File.join(File.dirname(__FILE__), 'app', dir)
|
12
15
|
$LOAD_PATH << path
|
@@ -14,12 +17,19 @@ require 'vendor/facets/hash/recursive_merge'
|
|
14
17
|
ActiveSupport::Dependencies.load_once_paths.delete(path)
|
15
18
|
end
|
16
19
|
|
20
|
+
# Provide controllers with netzke_widget class method
|
17
21
|
ActionController::Base.class_eval do
|
18
22
|
include Netzke::ControllerExtensions
|
19
23
|
end
|
20
24
|
|
21
|
-
# Make this plugin
|
25
|
+
# Make this plugin auto-reloaded for easier development
|
22
26
|
ActiveSupport::Dependencies.load_once_paths.delete(File.join(File.dirname(__FILE__)))
|
23
27
|
|
24
28
|
# Include the javascript
|
25
|
-
Netzke::Base.config[:javascripts] << "#{File.dirname(__FILE__)}/../javascripts/core.js"
|
29
|
+
Netzke::Base.config[:javascripts] << "#{File.dirname(__FILE__)}/../javascripts/core.js"
|
30
|
+
|
31
|
+
# Include the route to netzke controller
|
32
|
+
ActionController::Routing::RouteSet::Mapper.send :include, Netzke::Routing::MapperExtensions
|
33
|
+
|
34
|
+
# Helpers to be put into layouts
|
35
|
+
ActionView::Base.send :include, Netzke::ActionViewExt
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Netzke
|
2
|
+
module ActionViewExt
|
3
|
+
|
4
|
+
def netzke_js_include
|
5
|
+
res = ""
|
6
|
+
|
7
|
+
if ENV['RAILS_ENV'] == 'development'
|
8
|
+
res << javascript_include_tag("/extjs/adapter/ext/ext-base.js", "/extjs/ext-all-debug.js")
|
9
|
+
else
|
10
|
+
res << javascript_include_tag("/extjs/build/adapter/ext/ext-base-min.js", "/extjs/ext-all.js")
|
11
|
+
end
|
12
|
+
res << javascript_tag( "Ext.authenticityToken = '#{form_authenticity_token}'") # forgery protection
|
13
|
+
res << javascript_include_tag("/netzke/netzke.js")
|
14
|
+
|
15
|
+
res
|
16
|
+
end
|
17
|
+
|
18
|
+
def netzke_css_include(theme_name = :default)
|
19
|
+
res = stylesheet_link_tag("/extjs/resources/css/ext-all.css")
|
20
|
+
res << stylesheet_link_tag("/extjs/resources/css/xtheme-#{theme_name}.css") unless theme_name == :default
|
21
|
+
res
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
data/lib/netzke/base.rb
CHANGED
@@ -1,6 +1,10 @@
|
|
1
1
|
require 'json'
|
2
|
+
|
2
3
|
module Netzke
|
3
4
|
class Base
|
5
|
+
# client-side code (generates JS-classes of the widgets)
|
6
|
+
include Netzke::JsClassBuilder
|
7
|
+
|
4
8
|
# Global Netzke configuration
|
5
9
|
def self.config
|
6
10
|
@@config ||= {
|
@@ -27,9 +31,6 @@ module Netzke
|
|
27
31
|
end
|
28
32
|
end
|
29
33
|
|
30
|
-
# client-side code (generates JS-classes of the widgets)
|
31
|
-
include Netzke::JsClassBuilder
|
32
|
-
|
33
34
|
attr_accessor :config, :server_confg, :parent, :logger, :id_name, :permissions
|
34
35
|
attr_reader :pref
|
35
36
|
|
@@ -77,16 +77,24 @@ module Netzke
|
|
77
77
|
# add controller action which will render a simple HTML page containing the widget
|
78
78
|
define_method("#{name}_test") do
|
79
79
|
@widget_name = name
|
80
|
-
render :inline =>
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
80
|
+
render :inline => <<-HTML
|
81
|
+
<head>
|
82
|
+
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
83
|
+
<title><%= @widget_name %></title>
|
84
|
+
<%= netzke_js_include %>
|
85
|
+
<%= netzke_css_include %>
|
86
|
+
<script type="text/javascript" charset="utf-8">
|
87
|
+
<%= #{name}_class_definition %>
|
88
|
+
Ext.onReady(function(){
|
89
|
+
<%= #{name}_widget_instance %>
|
90
|
+
#{name.to_js}.render("#{name.to_s.split('_').join('-')}");
|
91
|
+
})
|
92
|
+
</script>
|
93
|
+
</head>
|
94
|
+
<body>
|
95
|
+
<div id="#{name.to_s.split('_').join('-')}"></div>
|
96
|
+
</body>
|
97
|
+
HTML
|
90
98
|
end
|
91
99
|
end
|
92
100
|
end
|
data/netzke-core.gemspec
CHANGED
@@ -2,15 +2,15 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{netzke-core}
|
5
|
-
s.version = "0.1.
|
5
|
+
s.version = "0.1.4"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Sergei Kozlov"]
|
9
9
|
s.date = %q{2009-01-02}
|
10
10
|
s.description = %q{Build ExtJS/Rails widgets with minimum effort}
|
11
11
|
s.email = %q{sergei@writelesscode.com}
|
12
|
-
s.extra_rdoc_files = ["CHANGELOG", "lib/app/controllers/netzke_controller.rb", "lib/app/models/netzke_layout.rb", "lib/app/models/netzke_preference.rb", "lib/netzke/base.rb", "lib/netzke/controller_extensions.rb", "lib/netzke/core_ext.rb", "lib/netzke/js_class_builder.rb", "lib/netzke-core.rb", "lib/vendor/facets/hash/recursive_merge.rb", "LICENSE", "README.mdown", "tasks/netzke_core_tasks.rake"]
|
13
|
-
s.files = ["CHANGELOG", "generators/netzke_core/netzke_core_generator.rb", "generators/netzke_core/templates/create_netzke_layouts.rb", "generators/netzke_core/templates/create_netzke_preferences.rb", "generators/netzke_core/
|
12
|
+
s.extra_rdoc_files = ["CHANGELOG", "lib/app/controllers/netzke_controller.rb", "lib/app/models/netzke_layout.rb", "lib/app/models/netzke_preference.rb", "lib/netzke/action_view_ext.rb", "lib/netzke/base.rb", "lib/netzke/controller_extensions.rb", "lib/netzke/core_ext.rb", "lib/netzke/js_class_builder.rb", "lib/netzke/routing.rb", "lib/netzke-core.rb", "lib/vendor/facets/hash/recursive_merge.rb", "LICENSE", "README.mdown", "tasks/netzke_core_tasks.rake"]
|
13
|
+
s.files = ["CHANGELOG", "generators/netzke_core/netzke_core_generator.rb", "generators/netzke_core/templates/create_netzke_layouts.rb", "generators/netzke_core/templates/create_netzke_preferences.rb", "generators/netzke_core/USAGE", "init.rb", "install.rb", "javascripts/core.js", "lib/app/controllers/netzke_controller.rb", "lib/app/models/netzke_layout.rb", "lib/app/models/netzke_preference.rb", "lib/netzke/action_view_ext.rb", "lib/netzke/base.rb", "lib/netzke/controller_extensions.rb", "lib/netzke/core_ext.rb", "lib/netzke/js_class_builder.rb", "lib/netzke/routing.rb", "lib/netzke-core.rb", "lib/vendor/facets/hash/recursive_merge.rb", "LICENSE", "Manifest", "netzke-core.gemspec", "Rakefile", "README.mdown", "tasks/netzke_core_tasks.rake", "test/app_root/app/controllers/application.rb", "test/app_root/config/boot.rb", "test/app_root/config/database.yml", "test/app_root/config/environment.rb", "test/app_root/config/environments/in_memory.rb", "test/app_root/config/environments/mysql.rb", "test/app_root/config/environments/postgresql.rb", "test/app_root/config/environments/sqlite.rb", "test/app_root/config/environments/sqlite3.rb", "test/app_root/config/routes.rb", "test/app_root/script/console", "test/core_ext_test.rb", "test/netzke_core_test.rb", "test/test_helper.rb", "uninstall.rb"]
|
14
14
|
s.has_rdoc = true
|
15
15
|
s.homepage = %q{http://writelesscode.com}
|
16
16
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Netzke-core", "--main", "README.mdown"]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: netzke-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergei Kozlov
|
@@ -24,10 +24,12 @@ extra_rdoc_files:
|
|
24
24
|
- lib/app/controllers/netzke_controller.rb
|
25
25
|
- lib/app/models/netzke_layout.rb
|
26
26
|
- lib/app/models/netzke_preference.rb
|
27
|
+
- lib/netzke/action_view_ext.rb
|
27
28
|
- lib/netzke/base.rb
|
28
29
|
- lib/netzke/controller_extensions.rb
|
29
30
|
- lib/netzke/core_ext.rb
|
30
31
|
- lib/netzke/js_class_builder.rb
|
32
|
+
- lib/netzke/routing.rb
|
31
33
|
- lib/netzke-core.rb
|
32
34
|
- lib/vendor/facets/hash/recursive_merge.rb
|
33
35
|
- LICENSE
|
@@ -38,7 +40,6 @@ files:
|
|
38
40
|
- generators/netzke_core/netzke_core_generator.rb
|
39
41
|
- generators/netzke_core/templates/create_netzke_layouts.rb
|
40
42
|
- generators/netzke_core/templates/create_netzke_preferences.rb
|
41
|
-
- generators/netzke_core/templates/netzke.html.erb
|
42
43
|
- generators/netzke_core/USAGE
|
43
44
|
- init.rb
|
44
45
|
- install.rb
|
@@ -46,10 +47,12 @@ files:
|
|
46
47
|
- lib/app/controllers/netzke_controller.rb
|
47
48
|
- lib/app/models/netzke_layout.rb
|
48
49
|
- lib/app/models/netzke_preference.rb
|
50
|
+
- lib/netzke/action_view_ext.rb
|
49
51
|
- lib/netzke/base.rb
|
50
52
|
- lib/netzke/controller_extensions.rb
|
51
53
|
- lib/netzke/core_ext.rb
|
52
54
|
- lib/netzke/js_class_builder.rb
|
55
|
+
- lib/netzke/routing.rb
|
53
56
|
- lib/netzke-core.rb
|
54
57
|
- lib/vendor/facets/hash/recursive_merge.rb
|
55
58
|
- LICENSE
|
@@ -1,10 +0,0 @@
|
|
1
|
-
<head>
|
2
|
-
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
3
|
-
<title><%= @widget_name %></title>
|
4
|
-
<%= javascript_include_tag("/extjs/adapter/ext/ext-base.js", "/extjs/ext-all-debug.js") %>
|
5
|
-
<%= javascript_include_tag("/netzke/netzke.js") %>
|
6
|
-
<%= stylesheet_link_tag("/extjs/resources/css/ext-all.css") %>
|
7
|
-
</head>
|
8
|
-
<body id="">
|
9
|
-
<%= yield %>
|
10
|
-
</body>
|