merb-admin 0.7.6 → 0.8.0

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/Gemfile ADDED
@@ -0,0 +1,21 @@
1
+ # dependencies are generated using a strict version, don't forget to edit the dependency versions when upgrading.
2
+ merb_gems_version = "1.1.0"
3
+
4
+ # If you did disable json for Merb, comment out this line.
5
+ # If you want use json gem just change it.
6
+ # Don't use json gem version lower than 1.1.7! Older versions has security bug!
7
+ gem "json_pure", ">= 1.1.7", :require => "json"
8
+ gem "merb-core", merb_gems_version
9
+ gem "builder", "~> 2.1.2"
10
+
11
+ group :test do
12
+ gem "activerecord", "~> 2.3.5", :require => "active_record"
13
+ gem "dm-core", "~> 0.10.2"
14
+ gem "dm-aggregates", "~> 0.10.2"
15
+ gem "dm-validations", "~> 0.10.2"
16
+ gem "data_objects", "~> 0.10.1"
17
+ gem "do_sqlite3", "~> 0.10.1.1"
18
+ gem "sequel", "~> 3.10.0"
19
+ gem "sqlite3-ruby", "~> 1.2.5", :require => "sqlite3"
20
+ gem "webrat", "~> 0.7.0"
21
+ end
data/README.rdoc CHANGED
@@ -13,7 +13,7 @@ http://github.com/sferik/merb-admin/raw/master/screenshots/edit.png
13
13
  == Installation
14
14
  $ gem install merb-admin -s http://gemcutter.org
15
15
  In your app, add the following dependency to <tt>config/dependencies.rb</tt>:
16
- dependency "merb-admin", "0.7.6"
16
+ dependency "merb-admin", "0.8.0"
17
17
  Add the following route to <tt>config/router.rb</tt>:
18
18
  add_slice(:merb_admin, :path_prefix => "admin")
19
19
  Then, run the following rake task:
data/Rakefile CHANGED
@@ -7,7 +7,7 @@ AUTHOR = "Erik Michaels-Ober"
7
7
  EMAIL = "sferik@gmail.com"
8
8
  HOMEPAGE = "http://github.com/sferik/merb-admin"
9
9
  SUMMARY = "MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data."
10
- MERB_GEM_VERSION = "1.0.15"
10
+ MERB_GEM_VERSION = "1.1"
11
11
 
12
12
  begin
13
13
  require 'jeweler'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.6
1
+ 0.8.0
@@ -3,12 +3,12 @@ require File.join( File.dirname(__FILE__), '..', '..', 'lib', 'abstract_model' )
3
3
  class MerbAdmin::Main < MerbAdmin::Application
4
4
  include Merb::MerbAdmin::MainHelper
5
5
 
6
- before :get_models, :only => ['index']
7
6
  before :get_model, :exclude => ['index']
8
7
  before :get_object, :only => ['edit', 'update', 'delete', 'destroy']
9
8
  before :get_attributes, :only => ['create', 'update']
10
9
 
11
10
  def index
11
+ @abstract_models = MerbAdmin::AbstractModel.all
12
12
  render(:layout => 'dashboard')
13
13
  end
14
14
 
@@ -45,7 +45,7 @@ class MerbAdmin::Main < MerbAdmin::Application
45
45
  if @object.save && update_all_associations
46
46
  redirect_on_success
47
47
  else
48
- render_error
48
+ render_error(:new)
49
49
  end
50
50
  end
51
51
 
@@ -57,7 +57,7 @@ class MerbAdmin::Main < MerbAdmin::Application
57
57
  if @object.update_attributes(@attributes) && update_all_associations
58
58
  redirect_on_success
59
59
  else
60
- render_error
60
+ render_error(:edit)
61
61
  end
62
62
  end
63
63
 
@@ -75,17 +75,9 @@ class MerbAdmin::Main < MerbAdmin::Application
75
75
 
76
76
  private
77
77
 
78
- def get_models
79
- @abstract_models = MerbAdmin::AbstractModel.all
80
- end
81
-
82
78
  def get_model
83
79
  model_name = to_model_name(params[:model_name])
84
80
  @abstract_model = MerbAdmin::AbstractModel.new(model_name)
85
- get_properties
86
- end
87
-
88
- def get_properties
89
81
  @properties = @abstract_model.properties
90
82
  end
91
83
 
@@ -190,10 +182,10 @@ class MerbAdmin::Main < MerbAdmin::Application
190
182
  end
191
183
  end
192
184
 
193
- def render_error
185
+ def render_error(template)
194
186
  action = params[:action]
195
187
  message[:error] = "#{@abstract_model.pretty_name} failed to be #{action}d"
196
- render(:new, :layout => 'form')
188
+ render(template, :layout => 'form')
197
189
  end
198
190
 
199
191
  end
data/lib/merb-admin.rb CHANGED
@@ -2,7 +2,6 @@ if defined?(Merb::Plugins)
2
2
 
3
3
  $:.unshift File.dirname(__FILE__)
4
4
 
5
- dependency 'merb-slices', :immediate => true
6
5
  Merb::Plugins.add_rakefiles "merb-admin/merbtasks", "merb-admin/slicetasks", "merb-admin/spectasks"
7
6
 
8
7
  # Register the Slice for the current host application
@@ -24,7 +23,7 @@ if defined?(Merb::Plugins)
24
23
 
25
24
  # Slice metadata
26
25
  self.description = "MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data."
27
- self.version = "0.7.6"
26
+ self.version = "0.8.0"
28
27
  self.author = "Erik Michaels-Ober"
29
28
 
30
29
  # Stub classes loaded hook - runs before LoadClasses BootLoader
data/merb-admin.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{merb-admin}
8
- s.version = "0.7.6"
8
+ s.version = "0.8.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Erik Michaels-Ober"]
12
- s.date = %q{2009-12-19}
12
+ s.date = %q{2010-04-20}
13
13
  s.description = %q{MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data.}
14
14
  s.email = %q{sferik@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -18,6 +18,7 @@ Gem::Specification.new do |s|
18
18
  ]
19
19
  s.files = [
20
20
  ".gitignore",
21
+ "Gemfile",
21
22
  "LICENSE",
22
23
  "README.rdoc",
23
24
  "Rakefile",
@@ -170,7 +171,7 @@ Gem::Specification.new do |s|
170
171
  }
171
172
  s.rdoc_options = ["--charset=UTF-8"]
172
173
  s.require_paths = ["lib"]
173
- s.rubygems_version = %q{1.3.5}
174
+ s.rubygems_version = %q{1.3.6}
174
175
  s.summary = %q{MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data.}
175
176
  s.test_files = [
176
177
  "spec/controllers/main_spec.rb",
@@ -208,22 +209,22 @@ Gem::Specification.new do |s|
208
209
  s.specification_version = 3
209
210
 
210
211
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
211
- s.add_runtime_dependency(%q<merb-slices>, [">= 1.0.15"])
212
- s.add_runtime_dependency(%q<merb-assets>, [">= 1.0.15"])
213
- s.add_runtime_dependency(%q<merb-helpers>, [">= 1.0.15"])
212
+ s.add_runtime_dependency(%q<merb-slices>, [">= 1.1"])
213
+ s.add_runtime_dependency(%q<merb-assets>, [">= 1.1"])
214
+ s.add_runtime_dependency(%q<merb-helpers>, [">= 1.1"])
214
215
  s.add_runtime_dependency(%q<builder>, [">= 2.1.2"])
215
216
  s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
216
217
  else
217
- s.add_dependency(%q<merb-slices>, [">= 1.0.15"])
218
- s.add_dependency(%q<merb-assets>, [">= 1.0.15"])
219
- s.add_dependency(%q<merb-helpers>, [">= 1.0.15"])
218
+ s.add_dependency(%q<merb-slices>, [">= 1.1"])
219
+ s.add_dependency(%q<merb-assets>, [">= 1.1"])
220
+ s.add_dependency(%q<merb-helpers>, [">= 1.1"])
220
221
  s.add_dependency(%q<builder>, [">= 2.1.2"])
221
222
  s.add_dependency(%q<rspec>, [">= 1.2.9"])
222
223
  end
223
224
  else
224
- s.add_dependency(%q<merb-slices>, [">= 1.0.15"])
225
- s.add_dependency(%q<merb-assets>, [">= 1.0.15"])
226
- s.add_dependency(%q<merb-helpers>, [">= 1.0.15"])
225
+ s.add_dependency(%q<merb-slices>, [">= 1.1"])
226
+ s.add_dependency(%q<merb-assets>, [">= 1.1"])
227
+ s.add_dependency(%q<merb-helpers>, [">= 1.1"])
227
228
  s.add_dependency(%q<builder>, [">= 2.1.2"])
228
229
  s.add_dependency(%q<rspec>, [">= 1.2.9"])
229
230
  end
@@ -8,6 +8,10 @@ given "a draft exists" do
8
8
  @draft = MerbAdmin::AbstractModel.new("Draft").create(:player_id => rand(99999), :team_id => rand(99999), :date => Date.today, :round => rand(50), :pick => rand(30), :overall => rand(1500))
9
9
  end
10
10
 
11
+ given "a league exists" do
12
+ @league = MerbAdmin::AbstractModel.new("League").create(:name => "League 1")
13
+ end
14
+
11
15
  given "two players exist" do
12
16
  @players = []
13
17
  (1..2).each do |number|
@@ -22,35 +26,13 @@ given "three teams exist" do
22
26
  end
23
27
  end
24
28
 
25
- given "a player exists and a draft exists" do
26
- @player = MerbAdmin::AbstractModel.new("Player").create(:team_id => rand(99999), :number => 1, :name => "Player 1")
27
- @draft = MerbAdmin::AbstractModel.new("Draft").create(:player_id => rand(99999), :team_id => rand(99999), :date => Date.today, :round => rand(50), :pick => rand(30), :overall => rand(1500))
28
- end
29
-
30
- given "a player exists and three teams exist" do
31
- @player = MerbAdmin::AbstractModel.new("Player").create(:team_id => rand(99999), :number => 1, :name => "Player 1")
32
- @teams = []
33
- (1..3).each do |number|
34
- @teams << MerbAdmin::AbstractModel.new("Team").create(:league_id => rand(99999), :division_id => rand(99999), :name => "Team #{number}", :manager => "Manager #{number}", :founded => 1869 + rand(130), :wins => (wins = rand(163)), :losses => 162 - wins, :win_percentage => ("%.3f" % (wins.to_f / 162)).to_f)
35
- end
36
- end
37
-
38
- given "a player exists and three teams with no name exist" do
39
- @player = MerbAdmin::AbstractModel.new("Player").create(:team_id => rand(99999), :number => 1, :name => "Player 1")
29
+ given "three teams with no name exist" do
40
30
  @teams = []
41
31
  (1..3).each do |number|
42
32
  @teams << MerbAdmin::AbstractModel.new("Team").create(:league_id => rand(99999), :division_id => rand(99999), :manager => "Manager #{number}", :founded => 1869 + rand(130), :wins => (wins = rand(163)), :losses => 162 - wins, :win_percentage => ("%.3f" % (wins.to_f / 162)).to_f)
43
33
  end
44
34
  end
45
35
 
46
- given "a league exists and three teams exist" do
47
- @league = MerbAdmin::AbstractModel.new("League").create(:name => "League 1")
48
- @teams = []
49
- (1..3).each do |number|
50
- @teams << MerbAdmin::AbstractModel.new("Team").create(:league_id => rand(99999), :division_id => rand(99999), :name => "Team #{number}", :manager => "Manager #{number}", :founded => 1869 + rand(130), :wins => (wins = rand(163)), :losses => 162 - wins, :win_percentage => ("%.3f" % (wins.to_f / 162)).to_f)
51
- end
52
- end
53
-
54
36
  given "twenty players exist" do
55
37
  @players = []
56
38
  (1..20).each do |number|
@@ -371,7 +353,7 @@ describe "MerbAdmin" do
371
353
  end
372
354
  end
373
355
 
374
- describe "new with missing label", :given => "a player exists and three teams with no name exist" do
356
+ describe "new with missing label", :given => ["a player exists", "three teams with no name exist"] do
375
357
  before(:each) do
376
358
  @response = visit(url(:merb_admin_new, :model_name => "player"))
377
359
  end
@@ -533,7 +515,7 @@ describe "MerbAdmin" do
533
515
  end
534
516
  end
535
517
 
536
- describe "edit with has-one association", :given => "a player exists and a draft exists" do
518
+ describe "edit with has-one association", :given => ["a player exists", "a draft exists"] do
537
519
  before(:each) do
538
520
  @response = visit(url(:merb_admin_edit, :model_name => "player", :id => @player.id))
539
521
  end
@@ -547,7 +529,7 @@ describe "MerbAdmin" do
547
529
  end
548
530
  end
549
531
 
550
- describe "edit with has-many association", :given => "a player exists and three teams exist" do
532
+ describe "edit with has-many association", :given => ["a player exists", "three teams exist"] do
551
533
  before(:each) do
552
534
  @response = visit(url(:merb_admin_edit, :model_name => "player", :id => @player.id))
553
535
  end
@@ -571,7 +553,7 @@ describe "MerbAdmin" do
571
553
  end
572
554
  end
573
555
 
574
- describe "edit with missing label", :given => "a player exists and three teams with no name exist" do
556
+ describe "edit with missing label", :given => ["a player exists", "three teams with no name exist"] do
575
557
  before(:each) do
576
558
  @response = visit(url(:merb_admin_edit, :model_name => "player", :id => @player.id))
577
559
  end
@@ -644,7 +626,7 @@ describe "MerbAdmin" do
644
626
  end
645
627
  end
646
628
 
647
- describe "update with has-one association", :given => "a player exists and a draft exists" do
629
+ describe "update with has-one association", :given => ["a player exists", "a draft exists"] do
648
630
  before(:each) do
649
631
  visit(url(:merb_admin_edit, :model_name => "player", :id => @player.id))
650
632
  fill_in "Name", :with => "Jackie Robinson"
@@ -668,7 +650,7 @@ describe "MerbAdmin" do
668
650
  end
669
651
  end
670
652
 
671
- describe "update with has-many association", :given => "a league exists and three teams exist" do
653
+ describe "update with has-many association", :given => ["a league exists", "three teams exist"] do
672
654
  before(:each) do
673
655
  visit(url(:merb_admin_edit, :model_name => "league", :id => @league.id))
674
656
  fill_in "Name", :with => "National League"
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: merb-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.6
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 8
8
+ - 0
9
+ version: 0.8.0
5
10
  platform: ruby
6
11
  authors:
7
12
  - Erik Michaels-Ober
@@ -9,59 +14,76 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2009-12-19 00:00:00 -08:00
17
+ date: 2010-04-20 00:00:00 -07:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
21
+ version_requirements: &id001 !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ segments:
26
+ - 1
27
+ - 1
28
+ version: "1.1"
16
29
  name: merb-slices
30
+ requirement: *id001
31
+ prerelease: false
17
32
  type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
33
+ - !ruby/object:Gem::Dependency
34
+ version_requirements: &id002 !ruby/object:Gem::Requirement
20
35
  requirements:
21
36
  - - ">="
22
37
  - !ruby/object:Gem::Version
23
- version: 1.0.15
24
- version:
25
- - !ruby/object:Gem::Dependency
38
+ segments:
39
+ - 1
40
+ - 1
41
+ version: "1.1"
26
42
  name: merb-assets
43
+ requirement: *id002
44
+ prerelease: false
27
45
  type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
46
+ - !ruby/object:Gem::Dependency
47
+ version_requirements: &id003 !ruby/object:Gem::Requirement
30
48
  requirements:
31
49
  - - ">="
32
50
  - !ruby/object:Gem::Version
33
- version: 1.0.15
34
- version:
35
- - !ruby/object:Gem::Dependency
51
+ segments:
52
+ - 1
53
+ - 1
54
+ version: "1.1"
36
55
  name: merb-helpers
56
+ requirement: *id003
57
+ prerelease: false
37
58
  type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- version: 1.0.15
44
- version:
45
59
  - !ruby/object:Gem::Dependency
46
- name: builder
47
- type: :runtime
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
60
+ version_requirements: &id004 !ruby/object:Gem::Requirement
50
61
  requirements:
51
62
  - - ">="
52
63
  - !ruby/object:Gem::Version
64
+ segments:
65
+ - 2
66
+ - 1
67
+ - 2
53
68
  version: 2.1.2
54
- version:
69
+ name: builder
70
+ requirement: *id004
71
+ prerelease: false
72
+ type: :runtime
55
73
  - !ruby/object:Gem::Dependency
56
- name: rspec
57
- type: :development
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
74
+ version_requirements: &id005 !ruby/object:Gem::Requirement
60
75
  requirements:
61
76
  - - ">="
62
77
  - !ruby/object:Gem::Version
78
+ segments:
79
+ - 1
80
+ - 2
81
+ - 9
63
82
  version: 1.2.9
64
- version:
83
+ name: rspec
84
+ requirement: *id005
85
+ prerelease: false
86
+ type: :development
65
87
  description: MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data.
66
88
  email: sferik@gmail.com
67
89
  executables: []
@@ -73,6 +95,7 @@ extra_rdoc_files:
73
95
  - README.rdoc
74
96
  files:
75
97
  - .gitignore
98
+ - Gemfile
76
99
  - LICENSE
77
100
  - README.rdoc
78
101
  - Rakefile
@@ -234,18 +257,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
234
257
  requirements:
235
258
  - - ">="
236
259
  - !ruby/object:Gem::Version
260
+ segments:
261
+ - 0
237
262
  version: "0"
238
- version:
239
263
  required_rubygems_version: !ruby/object:Gem::Requirement
240
264
  requirements:
241
265
  - - ">="
242
266
  - !ruby/object:Gem::Version
267
+ segments:
268
+ - 0
243
269
  version: "0"
244
- version:
245
270
  requirements: []
246
271
 
247
272
  rubyforge_project:
248
- rubygems_version: 1.3.5
273
+ rubygems_version: 1.3.6
249
274
  signing_key:
250
275
  specification_version: 3
251
276
  summary: MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data.