Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
7d9ed8ee
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7d9ed8ee
编写于
1月 30, 2010
作者:
J
Joshua Peek
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Include prototype ujs adapter with new apps
上级
db49c706
变更
4
显示空白变更内容
内联
并排
Showing
4 changed file
with
89 addition
and
9 deletion
+89
-9
actionpack/lib/action_view/helpers/asset_tag_helper.rb
actionpack/lib/action_view/helpers/asset_tag_helper.rb
+1
-1
actionpack/test/template/asset_tag_helper_test.rb
actionpack/test/template/asset_tag_helper_test.rb
+7
-8
railties/Rakefile
railties/Rakefile
+4
-0
railties/lib/generators/rails/app/templates/public/javascripts/rails.js
...enerators/rails/app/templates/public/javascripts/rails.js
+77
-0
未找到文件。
actionpack/lib/action_view/helpers/asset_tag_helper.rb
浏览文件 @
7d9ed8ee
...
...
@@ -140,7 +140,7 @@ module AssetTagHelper
:stylesheets_dir
=>
"
#{
assets_dir
}
/stylesheets"
,
}
JAVASCRIPT_DEFAULT_SOURCES
=
[
'prototype'
,
'effects'
,
'dragdrop'
,
'controls'
].
freeze
unless
const_defined?
(
:JAVASCRIPT_DEFAULT_SOURCES
)
JAVASCRIPT_DEFAULT_SOURCES
=
[
'prototype'
,
'effects'
,
'dragdrop'
,
'controls'
,
'rails'
].
freeze
unless
const_defined?
(
:JAVASCRIPT_DEFAULT_SOURCES
)
# Returns a link tag that browsers and news readers can use to auto-detect
# an RSS or ATOM feed. The +type+ can either be <tt>:rss</tt> (default) or
...
...
actionpack/test/template/asset_tag_helper_test.rb
浏览文件 @
7d9ed8ee
...
...
@@ -86,11 +86,11 @@ def teardown
%(javascript_include_tag("bank.js"))
=>
%(<script src="/javascripts/bank.js" type="text/javascript"></script>)
,
%(javascript_include_tag("bank", :lang => "vbscript"))
=>
%(<script lang="vbscript" src="/javascripts/bank.js" type="text/javascript"></script>)
,
%(javascript_include_tag("common.javascript", "/elsewhere/cools"))
=>
%(<script src="/javascripts/common.javascript" type="text/javascript"></script>\n<script src="/elsewhere/cools.js" type="text/javascript"></script>)
,
%(javascript_include_tag(:defaults))
=>
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
%(javascript_include_tag(:defaults))
=>
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/
rails.js" type="text/javascript"></script>\n<script src="/javascripts/
application.js" type="text/javascript"></script>)
,
%(javascript_include_tag(:all))
=>
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>\n<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/robber.js" type="text/javascript"></script>\n<script src="/javascripts/version.1.0.js" type="text/javascript"></script>)
,
%(javascript_include_tag(:all, :recursive => true))
=>
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>\n<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/robber.js" type="text/javascript"></script>\n<script src="/javascripts/subdir/subdir.js" type="text/javascript"></script>\n<script src="/javascripts/version.1.0.js" type="text/javascript"></script>)
,
%(javascript_include_tag(:defaults, "bank"))
=>
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
%(javascript_include_tag("bank", :defaults))
=>
%(<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
%(javascript_include_tag(:defaults, "bank"))
=>
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/
rails.js" type="text/javascript"></script>\n<script src="/javascripts/
bank.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
%(javascript_include_tag("bank", :defaults))
=>
%(<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/
rails.js" type="text/javascript"></script>\n<script src="/javascripts/
application.js" type="text/javascript"></script>)
,
%(javascript_include_tag("http://example.com/all"))
=>
%(<script src="http://example.com/all" type="text/javascript"></script>)
,
%(javascript_include_tag("http://example.com/all.js"))
=>
%(<script src="http://example.com/all.js" type="text/javascript"></script>)
,
...
...
@@ -235,7 +235,7 @@ def test_javascript_include_tag_with_missing_source
def
test_javascript_include_tag_with_given_asset_id
ENV
[
"RAILS_ASSET_ID"
]
=
"1"
assert_dom_equal
(
%(<script src="/javascripts/prototype.js?1" type="text/javascript"></script>\n<script src="/javascripts/effects.js?1" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js?1" type="text/javascript"></script>\n<script src="/javascripts/controls.js?1" type="text/javascript"></script>\n<script src="/javascripts/application.js?1" type="text/javascript"></script>)
,
javascript_include_tag
(
:defaults
))
assert_dom_equal
(
%(<script src="/javascripts/prototype.js?1" type="text/javascript"></script>\n<script src="/javascripts/effects.js?1" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js?1" type="text/javascript"></script>\n<script src="/javascripts/controls.js?1" type="text/javascript"></script>\n<script src="/javascripts/
rails.js?1" type="text/javascript"></script>\n<script src="/javascripts/
application.js?1" type="text/javascript"></script>)
,
javascript_include_tag
(
:defaults
))
end
def
test_javascript_include_tag_is_html_safe
...
...
@@ -246,14 +246,14 @@ def test_javascript_include_tag_is_html_safe
def
test_register_javascript_include_default
ENV
[
"RAILS_ASSET_ID"
]
=
""
ActionView
::
Helpers
::
AssetTagHelper
::
register_javascript_include_default
'bank'
assert_dom_equal
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
javascript_include_tag
(
:defaults
)
assert_dom_equal
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/
rails.js" type="text/javascript"></script>\n<script src="/javascripts/
bank.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
javascript_include_tag
(
:defaults
)
end
def
test_register_javascript_include_default_mixed_defaults
ENV
[
"RAILS_ASSET_ID"
]
=
""
ActionView
::
Helpers
::
AssetTagHelper
::
register_javascript_include_default
'bank'
ActionView
::
Helpers
::
AssetTagHelper
::
register_javascript_include_default
'robber'
,
'/elsewhere/cools.js'
assert_dom_equal
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/robber.js" type="text/javascript"></script>\n<script src="/elsewhere/cools.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
javascript_include_tag
(
:defaults
)
assert_dom_equal
%(<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/
rails.js" type="text/javascript"></script>\n<script src="/javascripts/
bank.js" type="text/javascript"></script>\n<script src="/javascripts/robber.js" type="text/javascript"></script>\n<script src="/elsewhere/cools.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
javascript_include_tag
(
:defaults
)
end
def
test_custom_javascript_expansions
...
...
@@ -265,7 +265,7 @@ def test_custom_javascript_expansions
def
test_custom_javascript_expansions_and_defaults_puts_application_js_at_the_end
ENV
[
"RAILS_ASSET_ID"
]
=
""
ActionView
::
Helpers
::
AssetTagHelper
::
register_javascript_expansion
:robbery
=>
[
"bank"
,
"robber"
]
assert_dom_equal
%(<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/bank.js" type="text/javascript"></script>\n<script src="/javascripts/robber.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
javascript_include_tag
(
'controls'
,
:defaults
,
:robbery
,
'effects'
)
assert_dom_equal
%(<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/prototype.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/dragdrop.js" type="text/javascript"></script>\n<script src="/javascripts/controls.js" type="text/javascript"></script>\n<script src="/javascripts/
rails.js" type="text/javascript"></script>\n<script src="/javascripts/
bank.js" type="text/javascript"></script>\n<script src="/javascripts/robber.js" type="text/javascript"></script>\n<script src="/javascripts/effects.js" type="text/javascript"></script>\n<script src="/javascripts/application.js" type="text/javascript"></script>)
,
javascript_include_tag
(
'controls'
,
:defaults
,
:robbery
,
'effects'
)
end
def
test_custom_javascript_expansions_with_undefined_symbol
...
...
@@ -965,6 +965,5 @@ def test_asset_host_without_protocol_should_use_request_protocol_even_if_path_pr
def
test_assert_css_and_js_of_the_same_name_return_correct_extension
assert_dom_equal
(
%(/collaboration/hieraki/javascripts/foo.js)
,
javascript_path
(
"foo"
))
assert_dom_equal
(
%(/collaboration/hieraki/stylesheets/foo.css)
,
stylesheet_path
(
"foo"
))
end
end
railties/Rakefile
浏览文件 @
7d9ed8ee
...
...
@@ -64,6 +64,10 @@ task :generate_guides do
ruby
"guides/rails_guides.rb"
end
task
:update_prototype_ujs
do
system
"curl http://github.com/rails/prototype-ujs/raw/master/src/rails.js > lib/generators/rails/app/templates/public/javascripts/rails.js"
end
# Generate documentation ------------------------------------------------------------------
Rake
::
RDocTask
.
new
{
|
rdoc
|
...
...
railties/lib/generators/rails/app/templates/public/javascripts/rails.js
0 → 100644
浏览文件 @
7d9ed8ee
document
.
observe
(
"
dom:loaded
"
,
function
()
{
function
handleRemote
(
element
)
{
var
method
,
url
,
params
;
if
(
element
.
tagName
.
toLowerCase
()
==
'
form
'
)
{
method
=
element
.
readAttribute
(
'
method
'
)
||
'
post
'
;
url
=
element
.
readAttribute
(
'
action
'
);
params
=
element
.
serialize
(
true
);
}
else
{
method
=
element
.
readAttribute
(
'
data-method
'
)
||
'
get
'
;
// TODO: data-url support is going away, just use href
url
=
element
.
readAttribute
(
'
data-url
'
)
||
element
.
readAttribute
(
'
href
'
);
params
=
{};
}
var
event
=
element
.
fire
(
"
ajax:before
"
);
if
(
event
.
stopped
)
return
false
;
new
Ajax
.
Request
(
url
,
{
method
:
method
,
parameters
:
params
,
asynchronous
:
true
,
evalScripts
:
true
,
onLoading
:
function
(
request
)
{
element
.
fire
(
"
ajax:loading
"
,
{
request
:
request
});
},
onLoaded
:
function
(
request
)
{
element
.
fire
(
"
ajax:loaded
"
,
{
request
:
request
});
},
onInteractive
:
function
(
request
)
{
element
.
fire
(
"
ajax:interactive
"
,
{
request
:
request
});
},
onComplete
:
function
(
request
)
{
element
.
fire
(
"
ajax:complete
"
,
{
request
:
request
});
},
onSuccess
:
function
(
request
)
{
element
.
fire
(
"
ajax:success
"
,
{
request
:
request
});
},
onFailure
:
function
(
request
)
{
element
.
fire
(
"
ajax:failure
"
,
{
request
:
request
});
}
});
element
.
fire
(
"
ajax:after
"
);
}
$
(
document
.
body
).
observe
(
"
click
"
,
function
(
event
)
{
var
element
=
event
.
findElement
(
"
a[data-remote=true]
"
);
if
(
element
)
{
handleRemote
(
element
);
event
.
stop
();
}
});
$
(
document
.
body
).
observe
(
"
ajax:before
"
,
function
(
event
)
{
var
message
=
event
.
element
().
readAttribute
(
'
data-confirm
'
);
if
(
message
&&
!
confirm
(
message
))
event
.
stop
();
});
// TODO: I don't think submit bubbles in IE
$
(
document
.
body
).
observe
(
"
submit
"
,
function
(
event
)
{
var
inputs
=
event
.
element
().
select
(
"
input[type=submit][data-disable-with]
"
);
inputs
.
each
(
function
(
input
)
{
input
.
disabled
=
true
;
input
.
writeAttribute
(
'
data-original-value
'
,
input
.
value
);
input
.
value
=
input
.
readAttribute
(
'
data-disable-with
'
);
});
var
element
=
event
.
findElement
(
"
form[data-remote=true]
"
);
if
(
element
)
{
handleRemote
(
element
);
event
.
stop
();
}
});
$
(
document
.
body
).
observe
(
"
ajax:complete
"
,
function
(
event
)
{
var
element
=
event
.
element
();
if
(
element
.
tagName
.
toLowerCase
()
==
'
form
'
)
{
var
inputs
=
element
.
select
(
"
input[type=submit][disabled=true][data-disable-with]
"
);
inputs
.
each
(
function
(
input
)
{
input
.
value
=
input
.
readAttribute
(
'
data-original-value
'
);
input
.
writeAttribute
(
'
data-original-value
'
,
null
);
input
.
disabled
=
false
;
});
}
});
});
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录