Skip to content

Commit

Permalink
improved javascript and stylesheet helpers to not generate type attri…
Browse files Browse the repository at this point in the history
…butes
  • Loading branch information
kraih committed Sep 25, 2012
1 parent 0387018 commit c89b8bc
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 29 deletions.
2 changes: 2 additions & 0 deletions Changes
@@ -1,5 +1,7 @@

3.44 2012-09-25
- Improved javascript and stylesheet helpers to not generate type
attributes.
- Improved documentation.

3.43 2012-09-22
Expand Down
23 changes: 9 additions & 14 deletions lib/Mojolicious/Plugin/TagHelpers.pm
Expand Up @@ -131,10 +131,7 @@ sub _javascript {
# URL
my $src = @_ % 2 ? $self->url_for(shift) : undef;

# Attributes
my %attrs = (@_, $src ? (src => $src) : ());

return _tag('script', type => 'text/javascript', %attrs, $cb);
return _tag('script', @_, $src ? (src => $src) : (), $cb);
}

sub _link_to {
Expand Down Expand Up @@ -209,12 +206,10 @@ sub _stylesheet {
# URL
my $href = @_ % 2 ? $self->url_for(shift) : undef;

# "style" tag
return _tag('style', type => 'text/css', @_, $cb) unless $href;

# "link" tag
my %attrs = (href => $href, type => 'text/css', media => 'screen', @_);
return _tag('link', rel => 'stylesheet', %attrs);
# "link" or "style" tag
return $href
? _tag('link', rel => 'stylesheet', href => $href, media => 'screen', @_)
: _tag('style', @_, $cb);
}

sub _submit_button {
Expand Down Expand Up @@ -411,8 +406,8 @@ picked up and shown as default.
Generate portable script tag for C<Javascript> asset.
<script src="/script.js" type="text/javascript" />
<script type="text/javascript"><![CDATA[
<script src="/script.js" />
<script><![CDATA[
var a = 'b';
]]></script>
Expand Down Expand Up @@ -501,8 +496,8 @@ automatically get picked up and shown as default.
Generate portable style or link tag for C<CSS> asset.
<link href="/foo.css" media="screen" rel="stylesheet" type="text/css" />
<style type="text/css"><![CDATA[
<link href="/foo.css" media="screen" rel="stylesheet" />
<style><![CDATA[
body {color: #000}
]]></style>
Expand Down
14 changes: 7 additions & 7 deletions t/mojo/dom.t
Expand Up @@ -171,7 +171,7 @@ is_deeply \@div, $ids, 'found all div elements';

# Script tag
$dom = Mojo::DOM->new->parse(<<EOF);
<script type="text/javascript" charset="utf-8">alert('lalala');</script>
<script charset="utf-8">alert('lalala');</script>
EOF
is $dom->at('script')->text, "alert('lalala');", 'right script content';

Expand Down Expand Up @@ -1419,9 +1419,9 @@ $dom = Mojo::DOM->new->parse(<<EOF);
<html>
<head>
<title>Foo</title>
<script type="text/javascript" src="/js/one.js"></script>
<script type="text/javascript" src="/js/two.js"></script>
<script type="text/javascript" src="/js/three.js"></script>
<script src="/js/one.js"></script>
<script src="/js/two.js"></script>
<script src="/js/three.js"></script>
</head>
<body>Bar</body>
</html>
Expand All @@ -1442,9 +1442,9 @@ $dom = Mojo::DOM->new->parse(<<EOF);
<html>
<head>
<title>Foo</title>
<script type="text/javascript" src="/js/one.js"></script>
<script type="text/javascript" src="/js/two.js"></script>
<script type="text/javascript" src="/js/three.js">
<script src="/js/one.js"></script>
<script src="/js/two.js"></script>
<script src="/js/three.js">
</head>
<body>Bar</body>
</html>
Expand Down
8 changes: 4 additions & 4 deletions t/mojolicious/rebased_lite_app.t
Expand Up @@ -49,7 +49,7 @@ my $t = Test::Mojo->new;
$t->get_ok('/')->status_is(200)->header_is('X-Route' => 'root')
->content_is(<<EOF);
<base href="http://kraih.com/rebased/" />
<script src="/rebased/js/jquery.js" type="text/javascript"></script>
<script src="/rebased/js/jquery.js"></script>
<img src="/rebased/images/test.png" />
http://kraih.com/rebased/foo
/rebased/foo
Expand All @@ -62,7 +62,7 @@ EOF
$t->get_ok('/foo')->status_is(200)->header_is('X-Route' => 'foo')
->content_is(<<EOF);
<base href="http://kraih.com/rebased/" />
<link href="/rebased/b.css" media="test" rel="stylesheet" type="text/css" />
<link href="/rebased/b.css" media="test" rel="stylesheet" />
<img alt="Test" src="/rebased/images/test.png" />
http://kraih.com/rebased
/rebased
Expand All @@ -80,7 +80,7 @@ ok $t->ua->cookie_jar->find($t->ua->app_url->path('/foo')), 'session cookie';
# GET /foo (with flash message)
$t->get_ok('/foo')->status_is(200)->content_is(<<EOF);
<base href="http://kraih.com/rebased/" />works!too!
<link href="/rebased/b.css" media="test" rel="stylesheet" type="text/css" />
<link href="/rebased/b.css" media="test" rel="stylesheet" />
<img alt="Test" src="/rebased/images/test.png" />
http://kraih.com/rebased
/rebased
Expand All @@ -92,7 +92,7 @@ EOF
$t->get_ok('/baz')->status_is(200)->header_is('X-Route' => 'baz')
->content_is(<<EOF);
<base href="http://kraih.com/rebased/" />
<script src="/rebased/js/jquery.js" type="text/javascript"></script>
<script src="/rebased/js/jquery.js"></script>
<img src="/rebased/images/test.png" />
http://kraih.com/rebased/foo
/rebased/foo
Expand Down
8 changes: 4 additions & 4 deletions t/mojolicious/tag_helper_lite_app.t
Expand Up @@ -96,8 +96,8 @@ EOF

# GET /script
$t->get_ok('/script')->status_is(200)->content_is(<<EOF);
<script src="/script.js" type="text/javascript"></script>
<script type="text/javascript">//<![CDATA[
<script src="/script.js"></script>
<script>//<![CDATA[
var a = 'b';
Expand All @@ -111,8 +111,8 @@ EOF

# GET /style
$t->get_ok('/style')->status_is(200)->content_is(<<EOF);
<link href="/foo.css" media="screen" rel="stylesheet" type="text/css" />
<style type="text/css">/*<![CDATA[*/
<link href="/foo.css" media="screen" rel="stylesheet" />
<style>/*<![CDATA[*/
body {color: #000}
Expand Down

0 comments on commit c89b8bc

Please sign in to comment.