Skip to content

Commit

Permalink
Merge pull request #360 from awood/master
Browse files Browse the repository at this point in the history
Fix broken links to assets.  Fixes #359.
  • Loading branch information
Zachary Scott committed Mar 23, 2016
2 parents 23efe97 + cfde4f9 commit deb68c8
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 25 deletions.
3 changes: 2 additions & 1 deletion lib/rdoc/generator/template/darkfish/_head.rhtml
Expand Up @@ -3,7 +3,8 @@
<title><%= h @title %></title>

<script type="text/javascript">
var rdoc_rel_prefix = "<%= rel_prefix %>/";
var rdoc_rel_prefix = "<%= asset_rel_prefix %>/";
var index_rel_prefix = "<%= rel_prefix %>/";
</script>

<script src="<%= asset_rel_prefix %>/js/jquery.js"></script>
Expand Down
12 changes: 6 additions & 6 deletions lib/rdoc/generator/template/darkfish/css/fonts.css
Expand Up @@ -17,7 +17,7 @@
font-weight: 400;
src: local("Source Code Pro"),
local("SourceCodePro-Regular"),
url("fonts/SourceCodePro-Regular.ttf") format("truetype");
url("../fonts/SourceCodePro-Regular.ttf") format("truetype");
}

@font-face {
Expand All @@ -26,7 +26,7 @@
font-weight: 700;
src: local("Source Code Pro Bold"),
local("SourceCodePro-Bold"),
url("fonts/SourceCodePro-Bold.ttf") format("truetype");
url("../fonts/SourceCodePro-Bold.ttf") format("truetype");
}

/*
Expand All @@ -46,7 +46,7 @@
font-weight: 300;
src: local("Lato Light"),
local("Lato-Light"),
url("fonts/Lato-Light.ttf") format("truetype");
url("../fonts/Lato-Light.ttf") format("truetype");
}

@font-face {
Expand All @@ -55,7 +55,7 @@
font-weight: 300;
src: local("Lato Light Italic"),
local("Lato-LightItalic"),
url("fonts/Lato-LightItalic.ttf") format("truetype");
url("../fonts/Lato-LightItalic.ttf") format("truetype");
}

@font-face {
Expand All @@ -64,7 +64,7 @@
font-weight: 700;
src: local("Lato Regular"),
local("Lato-Regular"),
url("fonts/Lato-Regular.ttf") format("truetype");
url("../fonts/Lato-Regular.ttf") format("truetype");
}

@font-face {
Expand All @@ -73,7 +73,7 @@
font-weight: 700;
src: local("Lato Italic"),
local("Lato-Italic"),
url("fonts/Lato-RegularItalic.ttf") format("truetype");
url("../fonts/Lato-RegularItalic.ttf") format("truetype");
}

/*
Expand Down
14 changes: 7 additions & 7 deletions lib/rdoc/generator/template/darkfish/js/darkfish.js
Expand Up @@ -59,7 +59,7 @@ function hookSearch() {
var html = '';

// TODO add relative path to <script> per-page
html += '<p class="search-match"><a href="' + rdoc_rel_prefix + result.path + '">' + this.hlt(result.title);
html += '<p class="search-match"><a href="' + index_rel_prefix + result.path + '">' + this.hlt(result.title);
if (result.params)
html += '<span class="params">' + result.params + '</span>';
html += '</a>';
Expand Down Expand Up @@ -121,9 +121,9 @@ function highlightClickTarget( event ) {
};
};

function loadAsync(path, success) {
function loadAsync(path, success, prefix) {
$.ajax({
url: rdoc_rel_prefix + path,
url: prefix + path,
dataType: 'script',
success: success,
cache: true
Expand Down Expand Up @@ -154,8 +154,8 @@ $(document).ready( function() {
});
}

loadAsync('js/navigation.js', search_success_function('navigation_loaded'));
loadAsync('js/search.js', search_success_function('search_loaded'));
loadAsync('js/search_index.js', search_success_function('search_index_loaded'));
loadAsync('js/searcher.js', search_success_function('searcher_loaded'));
loadAsync('js/navigation.js', search_success_function('navigation_loaded'), rdoc_rel_prefix);
loadAsync('js/search.js', search_success_function('search_loaded'), rdoc_rel_prefix);
loadAsync('js/search_index.js', search_success_function('search_index_loaded'), index_rel_prefix);
loadAsync('js/searcher.js', search_success_function('searcher_loaded'), rdoc_rel_prefix);
});
6 changes: 3 additions & 3 deletions lib/rdoc/servlet.rb
Expand Up @@ -116,8 +116,8 @@ def do_GET req, res
case req.path
when '/' then
root req, res
when '/rdoc.css', '/js/darkfish.js', '/js/jquery.js', '/js/search.js',
%r%^/images/% then
when '/js/darkfish.js', '/js/jquery.js', '/js/search.js',
%r%^/css/%, %r%^/images/%, %r%^/fonts/% then
asset :darkfish, req, res
when '/js/navigation.js', '/js/searcher.js' then
asset :json_index, req, res
Expand Down Expand Up @@ -204,7 +204,7 @@ def error exception, req, res
<title>Error - #{ERB::Util.html_escape exception.class}</title>
<link type="text/css" media="screen" href="#{@mount_path}/rdoc.css" rel="stylesheet">
<link type="text/css" media="screen" href="#{@mount_path}/css/rdoc.css" rel="stylesheet">
</head>
<body>
<h1>Error</h1>
Expand Down
19 changes: 11 additions & 8 deletions test/test_rdoc_servlet.rb
Expand Up @@ -66,14 +66,15 @@ def teardown

def test_asset
temp_dir do
now = Time.now
FileUtils.mkdir 'css'

open 'rdoc.css', 'w' do |io| io.write 'h1 { color: red }' end
File.utime now, now, 'rdoc.css'
now = Time.now
open 'css/rdoc.css', 'w' do |io| io.write 'h1 { color: red }' end
File.utime now, now, 'css/rdoc.css'

@s.asset_dirs[:darkfish] = '.'

@req.path = 'rdoc.css'
@req.path = '/css/rdoc.css'

@s.asset :darkfish, @req, @res

Expand All @@ -95,11 +96,12 @@ def test_do_GET

def test_do_GET_asset_darkfish
temp_dir do
FileUtils.touch 'rdoc.css'
FileUtils.mkdir 'css'
FileUtils.touch 'css/rdoc.css'

@s.asset_dirs[:darkfish] = '.'

@req.path = '/rdoc.css'
@req.path = '/css/rdoc.css'

@s.do_GET @req, @res

Expand Down Expand Up @@ -136,11 +138,12 @@ def test_do_GET_mount_path
@s = RDoc::Servlet.new @server, @stores, @cache, '/mount/path'

temp_dir do
FileUtils.touch 'rdoc.css'
FileUtils.mkdir 'css'
FileUtils.touch 'css/rdoc.css'

@s.asset_dirs[:darkfish] = '.'

@req.path = '/mount/path/rdoc.css'
@req.path = '/mount/path/css/rdoc.css'

@s.do_GET @req, @res

Expand Down

0 comments on commit deb68c8

Please sign in to comment.