merb-admin 0.7.6 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
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.