Skip to content

Commit a3fd21f

Browse files
committed
provides Prototype and Scriptaculous via the assets pipeline
1 parent 63fbf49 commit a3fd21f

File tree

10 files changed

+9405
-28
lines changed

10 files changed

+9405
-28
lines changed

README

+15-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,20 @@
1-
RJS is being extracted here for Rails 3.1.
1+
prototype-rails provides Prototype, Scriptaculous, and RJS for Rails 3.1.
22

3-
New applications using this may want to add
3+
Prototype and Scriptaculous are provided via the asset pipeline and you
4+
do *not* need to copy their files into your application. Rails will get
5+
them from prototype-rails automatically.
6+
7+
You may want to add them to you app/assets/javascripts/application.js:
8+
9+
//= require prototype
10+
//= require prototype_ujs
11+
//= require effects
12+
//= require dragdrop
13+
//= require controls
14+
15+
New applications using this may also want to add
416

517
config.action_view.debug_rjs = true
618

719
to their config/environments/development.rb.
20+

lib/prototype-rails.rb

+12-25
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,17 @@
1-
ActiveSupport.on_load(:action_controller) do
2-
require 'prototype-rails/selector_assertions'
3-
require 'prototype-rails/renderers'
4-
end
1+
require 'rails'
2+
require 'active_support'
53

6-
ActiveSupport.on_load(:action_view) do
7-
require 'action_view/helpers/prototype_helper'
8-
require 'action_view/helpers/scriptaculous_helper'
9-
require 'action_view/template/handlers/rjs'
10-
require 'prototype-rails/javascript_helper'
11-
require 'prototype-rails/rendering'
12-
13-
ActionView::Base.class_eval do
14-
cattr_accessor :debug_rjs
15-
self.debug_rjs = false
16-
end
4+
module PrototypeRails
5+
class Engine < Rails::Engine
6+
initializer 'prototype-rails.initialize' do
7+
ActiveSupport.on_load(:action_controller) do
8+
require 'prototype-rails/on_load_action_controller'
9+
end
1710

18-
ActionView::Base.class_eval do
19-
include ActionView::Helpers::PrototypeHelper
20-
include ActionView::Helpers::ScriptaculousHelper
11+
ActiveSupport.on_load(:action_view) do
12+
require 'prototype-rails/on_load_action_view'
13+
end
14+
end
2115
end
22-
23-
ActionView::TestCase.class_eval do
24-
include ActionView::Helpers::PrototypeHelper
25-
include ActionView::Helpers::ScriptaculousHelper
26-
end
27-
28-
ActionView::Template.register_template_handler :rjs, ActionView::Template::Handlers::RJS.new
2916
end
3017

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
require 'prototype-rails/selector_assertions'
2+
require 'prototype-rails/renderers'
+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
require 'action_view/helpers/prototype_helper'
2+
require 'action_view/helpers/scriptaculous_helper'
3+
require 'action_view/template/handlers/rjs'
4+
require 'prototype-rails/javascript_helper'
5+
require 'prototype-rails/rendering'
6+
7+
ActionView::Base.class_eval do
8+
cattr_accessor :debug_rjs
9+
self.debug_rjs = false
10+
end
11+
12+
ActionView::Base.class_eval do
13+
include ActionView::Helpers::PrototypeHelper
14+
include ActionView::Helpers::ScriptaculousHelper
15+
end
16+
17+
ActionView::TestCase.class_eval do
18+
include ActionView::Helpers::PrototypeHelper
19+
include ActionView::Helpers::ScriptaculousHelper
20+
end
21+
22+
ActionView::Template.register_template_handler :rjs, ActionView::Template::Handlers::RJS.new

test/abstract_unit.rb

+2-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@
1818
require 'action_view'
1919
require 'action_view/testing/resolvers'
2020

21-
require 'prototype-rails'
21+
require 'prototype-rails/on_load_action_controller'
22+
require 'prototype-rails/on_load_action_view'
2223

2324
FIXTURE_LOAD_PATH = File.join(File.dirname(__FILE__), 'fixtures')
2425
FIXTURES = Pathname.new(FIXTURE_LOAD_PATH)

0 commit comments

Comments
 (0)