netzke-basepack 0.1.2.1 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,9 @@
1
+ v0.1.3
2
+ Path to javascript for grid filters corrected
3
+ Bug with creating new records in the grid fixed
4
+ Optimized away redundant sql queries when calling Grid#get_columns (sort of memoization)
5
+ README updated
6
+
1
7
  v0.1.2.1
2
8
  Meta: trying to succeed publishing on RubyForge
3
9
 
data/README.mdown CHANGED
@@ -3,12 +3,15 @@ A pack of basic Rails/ExtJS widgets, as a part of Netzke framework.
3
3
 
4
4
  # Prerequisites
5
5
  1. Rails >= 2.2
6
- 2. ExtJS >= 2.0: its root *must* be accessible as RAILS_ROOT/public/extjs (you may symlink your ExtJS library here)
6
+ 2. ExtJS >= 2.0: its root *must* be accessible as RAILS_ROOT/public/extjs. You may symlink your ExtJS library to here, like this (from your app folder): `cd public && ln -s ~/Developer/extjs/ext-2.2 extjs`
7
+ 3. `acts_as_list` plugin must be installed: `./script/plugin install git://github.com/rails/acts_as_list.git`
7
8
 
8
9
  # Installation
9
- gem install skozlov-netzke-basepack --source http://gems.github.com
10
-
10
+ Install the gem:
11
+ `gem install netzke-basepack`
11
12
 
13
+ Include it into environment.rb:
14
+ `config.gem "netzke-basepack"`
12
15
 
13
16
  # Usage
14
17
  First, run the generators to have the necessary migrations (if not done so already):
data/Rakefile CHANGED
@@ -5,7 +5,7 @@ Echoe.new("netzke-basepack") do |p|
5
5
  p.email = "sergei@writelesscode.com"
6
6
  p.summary = "Base Netzke widgets - grid, form, tree, and more"
7
7
  p.url = "http://writelesscode.com"
8
- p.runtime_dependencies = ["searchlogic >=1.6.2", "netzke-core >= 0.1.1.1"]
8
+ p.runtime_dependencies = ["searchlogic >=1.6.2", "netzke-core >= 0.1.2"]
9
9
  p.development_dependencies = []
10
10
  p.test_pattern = 'test/**/*_test.rb'
11
11
 
data/init.rb CHANGED
@@ -1 +1 @@
1
- # require 'netzke-basepack'
1
+ require 'netzke-basepack'
data/lib/netzke/grid.rb CHANGED
@@ -45,10 +45,13 @@ module Netzke
45
45
 
46
46
  ## Data for properties grid
47
47
  def properties__columns__get_data(params = {})
48
- columns_widget = aggregatee_instance(:properties__columns)
49
-
48
+ # add extra filter to show only the columns for the current grid (filtered by layout_id)
50
49
  layout_id = layout_manager_class.by_widget(id_name).id
51
- columns_widget.interface_get_data(params.merge(:filters => {:layout_id => layout_id}))
50
+ params[:filter] ||= {}
51
+ params[:filter].merge!(:extra_conditions => {:field => 'layout_id', :data => {:type => 'numeric', :value => layout_id}})
52
+
53
+ columns_widget = aggregatee_instance(:properties__columns)
54
+ columns_widget.interface_get_data(params)
52
55
  end
53
56
 
54
57
  def properties__general__load_source(params = {})
@@ -82,6 +85,7 @@ module Netzke
82
85
 
83
86
  # get columns from layout manager
84
87
  def get_columns
88
+ @columns ||=
85
89
  if layout_manager_class
86
90
  layout = layout_manager_class.by_widget(id_name)
87
91
  layout ||= column_manager_class.create_layout_for_widget(self)
@@ -62,12 +62,14 @@ module Netzke::GridInterface
62
62
  klass = config[:data_class_name].constantize
63
63
  modified_records = 0
64
64
  data.each do |record_hash|
65
- record = operation == :create ? klass.create : klass.find(record_hash.delete('id'))
65
+ id = record_hash.delete('id')
66
+ record = operation == :create ? klass.create : klass.find(id)
66
67
  logger.debug { "!!! record: #{record.inspect}" }
67
68
  success = true
68
69
  exception = nil
69
70
 
70
71
  # process all attirubutes for the same record (OPTIMIZE: we can use update_attributes separately for regular attributes to speed things up)
72
+ logger.debug { "!!! record_hash: #{record_hash.inspect}" }
71
73
  record_hash.each_pair do |k,v|
72
74
  begin
73
75
  record.send("#{k}=",v)
@@ -15,7 +15,7 @@ end
15
15
  Netzke::Base.config[:javascripts] << "#{File.dirname(__FILE__)}/../javascripts/basepack.js"
16
16
 
17
17
  # TODO: implement configurable loading of JS, to spare the traffic at the initial loading
18
- extjs_dir = "#{File.dirname(RAILS_ROOT)}/netzke_tutorial/public/extjs"
18
+ extjs_dir = "#{RAILS_ROOT}/public/extjs"
19
19
  Netzke::Base.config[:javascripts] << "#{extjs_dir}/examples/grid-filtering/menu/EditableItem.js"
20
20
  Netzke::Base.config[:javascripts] << "#{extjs_dir}/examples/grid-filtering/menu/RangeMenu.js"
21
21
  Netzke::Base.config[:javascripts] << "#{extjs_dir}/examples/grid-filtering/grid/GridFilters.js"
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{netzke-basepack}
5
- s.version = "0.1.2.1"
5
+ s.version = "0.1.3"
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
- s.date = %q{2009-01-01}
9
+ s.date = %q{2009-01-02}
10
10
  s.description = %q{Base Netzke widgets - grid, form, tree, and more}
11
11
  s.email = %q{sergei@writelesscode.com}
12
12
  s.extra_rdoc_files = ["CHANGELOG", "lib/app/models/netzke_grid_column.rb", "lib/netzke/accordion.rb", "lib/netzke/ar_ext.rb", "lib/netzke/column.rb", "lib/netzke/container.rb", "lib/netzke/grid.rb", "lib/netzke/grid_interface.rb", "lib/netzke/grid_js_builder.rb", "lib/netzke/preference_grid.rb", "lib/netzke/properties_tool.rb", "lib/netzke/property_grid.rb", "lib/netzke-basepack.rb", "LICENSE", "README.mdown", "tasks/netzke_basepack_tasks.rake"]
@@ -26,13 +26,13 @@ Gem::Specification.new do |s|
26
26
 
27
27
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
28
28
  s.add_runtime_dependency(%q<searchlogic>, [">= 1.6.2"])
29
- s.add_runtime_dependency(%q<netzke-core>, [">= 0", "= 0.1.1.1"])
29
+ s.add_runtime_dependency(%q<netzke-core>, [">= 0", "= 0.1.2"])
30
30
  else
31
31
  s.add_dependency(%q<searchlogic>, [">= 1.6.2"])
32
- s.add_dependency(%q<netzke-core>, [">= 0", "= 0.1.1.1"])
32
+ s.add_dependency(%q<netzke-core>, [">= 0", "= 0.1.2"])
33
33
  end
34
34
  else
35
35
  s.add_dependency(%q<searchlogic>, [">= 1.6.2"])
36
- s.add_dependency(%q<netzke-core>, [">= 0", "= 0.1.1.1"])
36
+ s.add_dependency(%q<netzke-core>, [">= 0", "= 0.1.2"])
37
37
  end
38
38
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netzke-basepack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2.1
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergei Kozlov
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-01-01 00:00:00 -06:00
12
+ date: 2009-01-02 00:00:00 -06:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: "0"
34
34
  - - "="
35
35
  - !ruby/object:Gem::Version
36
- version: 0.1.1.1
36
+ version: 0.1.2
37
37
  version:
38
38
  description: Base Netzke widgets - grid, form, tree, and more
39
39
  email: sergei@writelesscode.com