kuhsaft 1.4.3 → 1.5.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.
@@ -3,11 +3,11 @@ module Kuhsaft
3
3
  respond_to :html
4
4
 
5
5
  def show
6
- @url = "#{params[:locale]}/#{params[:url]}" if params[:url].present? && params[:locale].present?
7
- @page = Kuhsaft::Page.find_by_url(@url)
8
- if @page.present?
9
- respond_with @page
10
- else
6
+ url = locale.to_s
7
+ url += "/#{params[:url]}" if params[:url].present?
8
+ @page = Kuhsaft::Page.find_by_url(url)
9
+
10
+ unless @page.present?
11
11
  if respond_to?(:handle_404)
12
12
  handle_404
13
13
  else
data/config/routes.rb CHANGED
@@ -9,5 +9,8 @@ Kuhsaft::Engine.routes.draw do
9
9
  root :to => 'pages#index'
10
10
  end
11
11
 
12
- match '/:locale/*url' => 'pages#show'
12
+ scope ":locale", :locale => /#{I18n.available_locales.join('|')}/ do
13
+ resources :pages, :only => [:index]
14
+ match '*url' => 'pages#show'
15
+ end
13
16
  end
@@ -1,3 +1,3 @@
1
1
  module Kuhsaft
2
- VERSION = "1.4.3"
2
+ VERSION = "1.5.0"
3
3
  end
@@ -0,0 +1,30 @@
1
+ require 'spec_helper'
2
+
3
+ describe Kuhsaft::PagesController do
4
+ subject { described_class }
5
+
6
+ describe '#show' do
7
+ context 'without url' do
8
+ before do
9
+ @page = FactoryGirl.create(:page, :url_de => 'de')
10
+ end
11
+
12
+ context 'with matching locale' do
13
+ it 'sets the corresponding page' do
14
+ I18n.with_locale(:de) do
15
+ get(:show, { :use_route => :kuhsaft })
16
+ end
17
+ assigns(:page).should eq(@page)
18
+ end
19
+ end
20
+
21
+ context 'without matching locale' do
22
+ it 'raises a routing error' do
23
+ I18n.with_locale(:en) do
24
+ expect { get(:show, { :use_route => :kuhsaft }) }.to raise_error(ActionController::RoutingError)
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kuhsaft
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.3
4
+ version: 1.5.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -467,6 +467,7 @@ files:
467
467
  - lib/templates/kuhsaft/translations/add_translation.html.erb
468
468
  - Rakefile
469
469
  - README.md
470
+ - spec/controllers/kuhsaft/pages_controller_spec.rb
470
471
  - spec/dummy/Rakefile
471
472
  - spec/dummy/app/assets/images/spec-image.png
472
473
  - spec/dummy/app/assets/javascripts/application.js
@@ -541,7 +542,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
541
542
  version: '0'
542
543
  segments:
543
544
  - 0
544
- hash: -429433574673147014
545
+ hash: 1500188424572130827
545
546
  required_rubygems_version: !ruby/object:Gem::Requirement
546
547
  none: false
547
548
  requirements:
@@ -550,7 +551,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
550
551
  version: '0'
551
552
  segments:
552
553
  - 0
553
- hash: -429433574673147014
554
+ hash: 1500188424572130827
554
555
  requirements: []
555
556
  rubyforge_project: kuhsaft
556
557
  rubygems_version: 1.8.24
@@ -558,6 +559,7 @@ signing_key:
558
559
  specification_version: 3
559
560
  summary: A tool that helps you to manage your content within your app.
560
561
  test_files:
562
+ - spec/controllers/kuhsaft/pages_controller_spec.rb
561
563
  - spec/dummy/Rakefile
562
564
  - spec/dummy/app/assets/images/spec-image.png
563
565
  - spec/dummy/app/assets/javascripts/application.js