site_logic 1.9.0 → 1.9.1

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 CHANGED
@@ -6,7 +6,7 @@ gem 'carrierwave-mongoid', :require => 'carrierwave/mongoid'
6
6
  gem 'ckeditor', :git => 'git://github.com/Bantik/rails-ckeditor.git', :branch => 'rails3_mongoid'
7
7
  gem 'mongoid', '>= 2.0.0.beta.17'
8
8
  gem 'mongoid-tree', :require => 'mongoid/tree'
9
- gem 'rails', '>= 3.0.1'
9
+ gem 'rails', '3.0.10'
10
10
  gem 'rmagick', '2.12.2' # version compatible with heroku
11
11
  gem 'scaffold_logic', '>= 1.0.3'
12
12
  gem 'SystemTimer'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.9.0
1
+ 1.9.1
@@ -26,14 +26,14 @@ class Admin::PagesController < ApplicationController
26
26
 
27
27
  def create
28
28
  if params[:commit] == 'Preview'
29
- @page = @site.pages.new(params[:page])
29
+ @page = @site.pages.new params[:page]
30
30
  render :action => 'preview', :layout => @site.layout
31
31
  else
32
- @page = @site.pages.create(params[:page])
32
+ @page = @site.pages.create params[:page]
33
33
  if @page.valid?
34
34
  @page.publish! if params[:page][:state] == 'Published'
35
- flash[:notice] = "Successfully created the page."
36
- if params[:page][:create_navigation_item] == "true"
35
+ flash[:notice] = 'Successfully created the page.'
36
+ if params[:page][:create_navigation_item] == 'true'
37
37
  redirect_to new_admin_site_nav_item_path(
38
38
  @site,
39
39
  :nav_item => {
@@ -44,7 +44,7 @@ class Admin::PagesController < ApplicationController
44
44
  :creating_page => true
45
45
  )
46
46
  else
47
- redirect_to admin_site_pages_path(@site)
47
+ redirect_after_write
48
48
  end
49
49
  else
50
50
  render :action => 'new'
@@ -57,14 +57,14 @@ class Admin::PagesController < ApplicationController
57
57
 
58
58
  def update
59
59
  if params[:commit] == 'Preview'
60
- @page = @site.pages.new(params[:page])
60
+ @page = @site.pages.new params[:page]
61
61
  render :action => 'preview', :layout => @page.site.layout
62
62
  else
63
- if @page.update_attributes(params[:page])
63
+ if @page.update_attributes params[:page]
64
64
  @page.publish! if params[:page][:state] == 'Published'
65
65
  @page.unpublish! if params[:page][:state] == 'Draft'
66
- flash[:notice] = "Successfully updated the page."
67
- redirect_to admin_site_pages_path(@site)
66
+ flash[:notice] = 'Successfully updated the page.'
67
+ redirect_after_write
68
68
  else
69
69
  render :action => 'edit'
70
70
  end
@@ -73,23 +73,26 @@ class Admin::PagesController < ApplicationController
73
73
 
74
74
  def destroy
75
75
  @page.destroy
76
- flash[:notice] = "Successfully destroyed the page."
77
- redirect_to admin_site_pages_path(@site)
76
+ flash[:notice] = 'Successfully destroyed the page.'
77
+ redirect_after_write
78
78
  end
79
79
 
80
80
  def preview
81
- @page = @site.pages.new(params[:page])
81
+ @page = @site.pages.new params[:page]
82
82
  render :layout => @page.site.layout
83
83
  end
84
84
 
85
85
  private
86
86
 
87
+ def redirect_after_write
88
+ redirect_to Site.count > 1 ? admin_site_path(@site) : admin_site_pages_path(@site)
89
+ end
90
+
87
91
  def scope_site
88
- @site = Site.find(params[:site_id])
92
+ @site = Site.find params[:site_id]
89
93
  end
90
94
 
91
95
  def scope_page
92
- @page = @site.pages.find(params[:id])
96
+ @page = @site.pages.find params[:id]
93
97
  end
94
-
95
- end
98
+ end
data/app/models/page.rb CHANGED
@@ -71,7 +71,7 @@ class Page
71
71
  end
72
72
 
73
73
  def path
74
- self.slug == '' ? '/' : "/#{self.slug}/".gsub(/\/\//,'/').gsub(/\/\//,'/')
74
+ self.slug == '' ? '/' : "/#{self.slug}".gsub(/\/\//,'/').gsub(/\/\//,'/')
75
75
  end
76
76
 
77
77
  def publish!
data/site_logic.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "site_logic"
8
- s.version = "1.9.0"
8
+ s.version = "1.9.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Bantik"]
12
- s.date = "2011-09-26"
12
+ s.date = "2011-09-27"
13
13
  s.description = "An engine for search-engine-optimized content management."
14
14
  s.email = "corey@seologic.com"
15
15
  s.extra_rdoc_files = [
@@ -832,7 +832,7 @@ Gem::Specification.new do |s|
832
832
  s.add_runtime_dependency(%q<ckeditor>, [">= 0"])
833
833
  s.add_runtime_dependency(%q<mongoid>, [">= 2.0.0.beta.17"])
834
834
  s.add_runtime_dependency(%q<mongoid-tree>, [">= 0"])
835
- s.add_runtime_dependency(%q<rails>, [">= 3.0.1"])
835
+ s.add_runtime_dependency(%q<rails>, ["= 3.0.10"])
836
836
  s.add_runtime_dependency(%q<rmagick>, ["= 2.12.2"])
837
837
  s.add_runtime_dependency(%q<scaffold_logic>, [">= 1.0.3"])
838
838
  s.add_runtime_dependency(%q<SystemTimer>, [">= 0"])
@@ -845,7 +845,7 @@ Gem::Specification.new do |s|
845
845
  s.add_dependency(%q<ckeditor>, [">= 0"])
846
846
  s.add_dependency(%q<mongoid>, [">= 2.0.0.beta.17"])
847
847
  s.add_dependency(%q<mongoid-tree>, [">= 0"])
848
- s.add_dependency(%q<rails>, [">= 3.0.1"])
848
+ s.add_dependency(%q<rails>, ["= 3.0.10"])
849
849
  s.add_dependency(%q<rmagick>, ["= 2.12.2"])
850
850
  s.add_dependency(%q<scaffold_logic>, [">= 1.0.3"])
851
851
  s.add_dependency(%q<SystemTimer>, [">= 0"])
@@ -859,7 +859,7 @@ Gem::Specification.new do |s|
859
859
  s.add_dependency(%q<ckeditor>, [">= 0"])
860
860
  s.add_dependency(%q<mongoid>, [">= 2.0.0.beta.17"])
861
861
  s.add_dependency(%q<mongoid-tree>, [">= 0"])
862
- s.add_dependency(%q<rails>, [">= 3.0.1"])
862
+ s.add_dependency(%q<rails>, ["= 3.0.10"])
863
863
  s.add_dependency(%q<rmagick>, ["= 2.12.2"])
864
864
  s.add_dependency(%q<scaffold_logic>, [">= 1.0.3"])
865
865
  s.add_dependency(%q<SystemTimer>, [">= 0"])
@@ -1,19 +1,17 @@
1
1
  require File.dirname(__FILE__) + '/../spec_helper'
2
2
 
3
3
  describe Page do
4
-
5
4
  before :all do
6
5
  Site.destroy_all
7
6
  @site = Site.make
8
7
  end
9
8
 
10
- describe "initialization" do
11
-
12
- it "should be invalid without required values" do
9
+ describe 'initialization' do
10
+ it 'should be invalid without required values' do
13
11
  @site.pages.new.valid?.should be_false
14
12
  end
15
13
 
16
- it "should be valid with required values" do
14
+ it 'should be valid with required values' do
17
15
  @site.pages.new(
18
16
  :page_title => 'Home',
19
17
  :desired_slug => 'home',
@@ -21,7 +19,7 @@ describe Page do
21
19
  ).should be_valid
22
20
  end
23
21
 
24
- it "should not allow duplicate slugs" do
22
+ it 'should not allow duplicate slugs' do
25
23
  @site.pages.create(
26
24
  :page_title => 'Foo',
27
25
  :slug => 'foo',
@@ -41,11 +39,9 @@ describe Page do
41
39
  it 'defaults its state to Draft' do
42
40
  @site.pages.new.status.should == 'Draft'
43
41
  end
44
-
45
42
  end
46
43
 
47
44
  describe 'publishing lifecycle' do
48
-
49
45
  it 'defaults a new page to draft status' do
50
46
  page = @site.pages.new
51
47
  page.draft?.should be_true
@@ -75,11 +71,9 @@ describe Page do
75
71
  page.draft?.should be_true
76
72
  page.publication_date.should be_nil
77
73
  end
78
-
79
74
  end
80
75
 
81
76
  describe 'slug' do
82
-
83
77
  it 'is generated based on the desired_slug' do
84
78
  page = @site.pages.create(
85
79
  :page_title => 'Snakes',
@@ -106,31 +100,27 @@ describe Page do
106
100
  )
107
101
  page.slug.should == 'sinews-really'
108
102
  end
109
-
110
103
  end
111
104
 
112
- describe 'humanizes its path' do
113
-
105
+ describe 'normalizes its path' do
114
106
  it 'defaulting to root' do
115
- Page.new(:slug => nil).humanize_path.should == '/'
107
+ Page.new(:slug => nil).path.should == '/'
116
108
  end
117
109
 
118
110
  it 'handling no slashes' do
119
- Page.new(:slug => 'foo').humanize_path.should == '/foo/'
111
+ Page.new(:slug => 'foo').path.should == '/foo'
120
112
  end
121
113
 
122
114
  it 'handling leading slash' do
123
- Page.new(:slug => '/foo').humanize_path.should == '/foo/'
115
+ Page.new(:slug => '/foo').path.should == '/foo'
124
116
  end
125
117
 
126
118
  it 'handling trailing slash' do
127
- Page.new(:slug => 'foo/').humanize_path.should == '/foo/'
119
+ Page.new(:slug => 'foo/').path.should == '/foo/'
128
120
  end
129
121
 
130
122
  it 'handling all kindsa slash action' do
131
- Page.new(:slug => '/foo/').humanize_path.should == '/foo/'
123
+ Page.new(:slug => '/foo/').path.should == '/foo/'
132
124
  end
133
-
134
125
  end
135
-
136
- end
126
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: site_logic
3
3
  version: !ruby/object:Gem::Version
4
- hash: 51
4
+ hash: 49
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 9
9
- - 0
10
- version: 1.9.0
9
+ - 1
10
+ version: 1.9.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Bantik
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-09-26 00:00:00 Z
18
+ date: 2011-09-27 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: bson_ext
@@ -97,14 +97,14 @@ dependencies:
97
97
  requirement: &id006 !ruby/object:Gem::Requirement
98
98
  none: false
99
99
  requirements:
100
- - - ">="
100
+ - - "="
101
101
  - !ruby/object:Gem::Version
102
- hash: 5
102
+ hash: 19
103
103
  segments:
104
104
  - 3
105
105
  - 0
106
- - 1
107
- version: 3.0.1
106
+ - 10
107
+ version: 3.0.10
108
108
  type: :runtime
109
109
  version_requirements: *id006
110
110
  - !ruby/object:Gem::Dependency